스타크웨어

해시넷
218.146.11.28 (토론)님의 2018년 8월 29일 (수) 13:50 판
이동: 둘러보기, 검색
파일:Starkware logo.jpg
스타크웨어 인더스트리(Starkware Industries)로고

스타크웨어 인더스트리(Starkware Industries)(이하 스타크웨어)는 이스라엘의 스타트업 테크니온(Technion)에서 스타크기술을 활용하여 만든 확장 가능한 개인정보 블록체인이다. 스타크 기술은 영지식증명을 변형하여 간결성과 투명성을 유지하고 양자컴퓨터도 해독할 수 없는 보안성을 갖는 독창적인 암호화 솔루션인 ZK(Zero knowledge) 증명 시스템을 만들었다. 스타크웨어는 빠르고 안정적인 트랜잭션과 계산 무결성 증명의 검증을 지원할 수 있는 소프트웨어하드웨어를 포함한 전체 검증 스택을 개발할 예정이다.[1]

요약

영지식증명(이하 영지식스타크: ZK-STARK: Zero Knowledge Scalable Transparent Argument of Knowledge) 솔루션은 대량의 정보를 “스타크(stark)”라고 부르는 작은 증명으로 압축할 수 있는 방안을 제시하고, 영지식(zero knowledge)증명을 활용하여 해당 정보 자체의 기밀도 유지할 수 있다. 또한 효율적이고 투명하며, 양자 컴퓨팅 공격에도 안전성을 제공한다. 창립자인 엘리 벤 사손(Eli Ben Sasson)과 알레산드로 치에사(Alessandro Chiesa), 우리 콜로드니(Uri Kolodny), 마이클 리아브제브(Michael Riabzev)의 스타크웨어는 신기술을 실제 블록체인에 제공하는 대가로 자산을 받는 이른바 “테크-토큰 교환 모델”을 도입하였다. 스타크웨어는 암호화폐에 스타크 기반 기술을 제공하고, 해당 화폐로 책정된 요금을 부과할 예정이다. 그 결과로 시가총액이 올라가면, 스타크웨어도 이익을 얻는 구조다.[2]

블록체인과 신뢰(Trust)

신뢰란 특히 거래에 있어서 매우 중요한 요소이다. 만약 내가 100개가 넘는 비트코인을 가지고 있다 하면 여러분은 제가 정확히 몇 개의 비트코인을 가지고 있는지 모르며 유통되고 있는 비트코인 중 어느 것이 내가 가지고 있는 비트코인인지 알 수 없다. 따라서 내 말을 믿으려면 결국 "신뢰"가 구축되어야 하며 여태까지 거래에 있어 신뢰는 중요한 역할을 했다. 하지만 해킹이나 사기처럼 신뢰가 어긋나는 일들이 계속해서 생겨 이 문제를 해결하고자 비트코인이 생겼다. 비트코인은 공공원장(Public Ledger)을 통해 모든 정보를 공개하고 따라서 "신뢰" 자체를 무의미하게 만들고자 했다. 왜냐하면 애초에 모든 것이 공개되면 신뢰를 할 필요가 없기 때문이다. 따라서 비트코인과 공공원장은 신뢰를 높이는 것이 아니라 신뢰를 요구하지 않는 "무신뢰(Trustless)"를 만든다. 이러한 결과는 계산무결성(Computational Integrity), 즉 공공원장이 모든 것을 보여주니 계산이 틀릴 수 없다는 개념을 만들었다. 공공원장의 모든 것을 공개해버리니 금융개인정보보호(Financial Privacy) 문제가 수면으로 올랐다. 공개원장은 투명성에 있어서 좋지만 금융 거래에 있어 개인정보보호를 요구하는 사람들한테는 좋지 않은 소식이었다. 특히 금융 거래 특성상 모든 것을 공개하는 것은 꼭 좋은 것은 아니었으며, 공공원장을 바탕으로 소위 "돈 많은 사람"을 추적해 납치 등 개인 신변에 있어서 위험을 노출했다. 따라서 계산무결성을 지키기 위해 금융 개인 정보 보호를 포기해야 했으며, 금융개인정보를 보호하자니 계산무결성을 포기해야 하는 모순이 생겼다. 계산무결성(Computational Integrity)과 금융개인정보보호(Financial Privacy)의 딜레마를 해결하고자 시작된 프로젝트가 스타크웨어이다. 하지만 최초로 이 딜레마를 제기한 곳은 스타크웨어의 파트너사인 지캐시(ZCASH)이다.[3]

영지식스타크 (ZK-STARK: Zero Knowledge Scalable Transparent Argument of Knowledge)

영지식스타크에 앞서 f(x)=y 라고 입증하는 것은 큰 문제가 아니다. 현존하는 컴퓨터 성능으로 알고리즘을 풀어 증명이 가능하기 때문이다. 지캐시의 영지식증명(ZK-SNARK)은 유효성(validity)보다는 유효성을 더 빨리 입증하는 간결함(Succint)이 더 중요하다고 한다. 왜냐하면 유효성을 계산하는 그 시간 동안 해킹이 발생할 수 있기 때문이다. 신뢰할 수 있는 초기설정이 이뤄지지 않으면 영지식 증명은 소용없게 된다는 말과도 통한다. 이 부분에서 영지식스타크(ZK-STARK: Zero Knowledge Scalable Transparent Argument of Knowledge)는 유효성을 조금 더 간결하게 하는 방법을 중점으로 두고 있다.[4]

스타크웨어 다항식 곡선(Polynomialgraph)

예시)

0 < P(x) < 9를 만족하는 x를 찾는다고 가정해보겠다. x가 1-1,000,000 사이의 정수라면 앞에 범위를 만족하는 x 를 찾는 방법은 1에서 1,000,000까지 다 풀어보는 방식이 있다. 이런 방식을 사용하면 알고리즘을 백만 번(1에서 1,000,000까지) 돌려야 한다. 영지식스타크의 핵심은 백만 번보다 더 적은 횟수로 유효성을 입증하는 것이다. 알고리즘을 한 번만 적게 돌려도 절약하는 에너지와 시간은 무시할 수 없다. 제아무리 계속 유효한 값이 나와도 하나가 틀리면 전체가 뒤틀릴 수 있다. 영지식스타크는 다항식(Polynomial) 개념과 연관 지어 살펴보면 조금 더 쉽게 이해할 수 있다. 단 하나의 오류도 바로 잡아낼 수 있도록 하는 것이 핵심이라고 한다. 따라서 오류를 최소화하면서도 오류가 생기면 즉시 발견될 수 있는 시스템이다. 예를 들어, 하나의 x 값이 틀리면 위처럼 다항식이 곧바로 눈에 띄게 변동돼 바로 알 수 있는 구조인 것이다. 영지식스타크는 제약 조건 다항식(Constraint checking polynomial)이 큰 역할을 한다. 범위를 설정해 제약을 함으로써 알고리즘을 일일이 다 풀어볼 필요 없이 오차 범위를 줄이는 데에만 집중할 수 있는 셈이다. 제약 조건 다항식을 C(x)라 설정해보겠다. C(x)=0, C(x): x * (x-1) * (x-2) * (x-3) * ... (x-1000000)이라고 설정하면, 기본적인 수학 논리에 의해 C(x)=0으로 만드는 x 값은 유효한 값임을 알 수 있다. 여기에 Z(x)에 추가를 해보겠다. Z(x)=(x-1) * (x-2) * (x-3) * ... (x-1000000)라고 설정하고 C(x)=Z(x) * D(x)라는 공식을 추가하겠다. 따라서 C(x)와 Z(x)를 알고 있으면 단순한 나눗셈을 통해 D(x)를 구할 수 있다. 여기서 C(x)의 범위는 설정할 수 있고 Z(x)는 주어진 정보, 즉 퍼블릭 키(Public Key)와 같은 개념이다. 따라서 트랜잭션을 검증해야 하는 사람, 즉 검증자(Verifier)는 올바른 D(x) 값을 나타내는 x 값만 사용해보면 되는 것이다. 현재 16개의 임의 x 값만 사용해도 틀린 P(x) 값이 나올 확률은 1 - 10^32%(99.99999999999999999999999999999999)라고 한다. 영지식스타크는 이렇게 다항식 원리를 사용해서 무결성을 단축된 방법으로 보여준다. 영지식스타크는 마지막 하나까지도 검증하는 방식을 사용하고 있다.[5]

개발진행 현황

스타크웨어 수석 개발자 엘리 벤 사손(Eli Ben Sasson)에 의하면 이러한 방식으로 1,000,000번을 돌려야 하는 증명을 400번 안에 끝낼 수 있다고 한다. 트랜잭션 데이터의 용량은 40MB이며, 증명에 관한 용량은 1MB 정도라고 한다. 특히 용량과 관련해서 스타크웨어의 영지식증명은 너무 큰 용량의 증명 데이터를 생성하기 때문에 현재 스타크웨어 팀은 이 용량을 줄이는데 노력하고 있다. 또한 프로세서가 알고리즘을 푸는데 걸리는 사이클을 T 라고 하면 증명하는데 걸리는 시간은 (log T)^2 해당 알고리즘의 복잡성은 T*(log T)^2로 나타낼 수 있다고 한다. 공식은 큰 의미가 없지만 log 함수로 계산되는 것은 그만큼 데이터/시간 양이 더 줄어든다고 생각하면 된다. 그리고 영지식스타크를 FBI DNA 데이터베이스를 사용해 실험해 봤다고 한다. 아래 결과를 보면 영지식증명이 모든 분야에서 제일 좋게 나왔으며, 지캐시의 영지식증명보다 몇 배 빠르게 나온 것을 볼 수 있다.[6]

파일:Comparision to other systems.jpg
스타크웨어 성능비교(Starkware comparison)

테스트 단계에서 월등한 성적을 보여주고 있는 영지식스타크(ZK-STARK)]- 수치가 낮을수록 뛰어난 성능을 가지고 있다.]

투자 현황

스타크웨어는 세계 최고의 투자사들과 기존 플랫폼 코인의 창업자들로부터 600만 달러(약 70억)을 투자 받았다. 스타크웨어에 참여한 투자사는 2017년 투자 수익이 1만%를 넘었다고 하는 판테라 (PANTERA), 판테라의 자회사 폴리체인 캐피탈, 2010년 설립 후 1천개 이상의 스타트업 투자를 진행한 나발 라비칸트(Naval Ravikant), 비트메인의 우지한, 지캐시, 네오다홍페이, 테조스아서 등이 있다. 그리고 비탈릭 부테린이 처음으로 투자하는 암화화폐 프로젝트이다. 스타크웨어는 ICO를 하지 않는다고 한다.[7]

각주

  1. 코인데스크 “진짜 혁신기술 있다면 ICO 왜 하나?” 어느 스타트업의 자신감
  2. [스타크웨어 백서 - https://eprint.iacr.org/2018/046.pdf]
  3. [미디움 스타크웨어 소개 - https://medium.com/@quantalysus/what-is-starkware-industries-a0f81e60377e]
  4. [ICO of KOREA 블로그 - https://m.blog.naver.com/seonggi159/221306449988 - 스타크웨어, Starkware ICO 분석 / 99.9%도 위험하다]
  5. [비탈릭 부테린 블로그 - https://vitalik.ca/general/2017/11/09/starks_part_1.html part1, https://vitalik.ca/general/2017/11/22/starks_part_2.html]
  6. [유튜브 Prof. Eli Ben-Sasson - https://www.youtube.com/watch?v=kYmnXxs9kUM Towards Transparent and Scalable Computational Integrity and Privacy]
  7. 블록체인허브 - https://www.blockchainhub.kr/bbs/board.php?bo_table=bcgarage&wr_id=165 스타크웨어 평가

참고자료

영어
영어 동영상
한글

같이 보기