검수요청.png검수요청.png

스타크웨어

해시넷
Asadal (토론 | 기여)님의 2019년 6월 3일 (월) 23:19 판 (같이 보기)
이동: 둘러보기, 검색
스타크웨어(Starkware) 로고
스타크웨어(Starkware) 로고와 글자
테크니온(Technion)

스타크웨어(Starkware)는 익명성을 보장하기 위해 영지식 스타크 기술을 사용하여 만든 프라이버시 보호 기술이다. 이스라엘의 테크니온(Technion) 대학교 스타트업이 개발했다. 스타크웨어의 개발자는 익명성 기반의 프라이버시 코인인 지캐시(Zcash) 개발자 출신들이 주축이 되어 있다. 초기 투자자로 비탈릭 부테린, 아서 브라이트만, 다홍페이 등 암호화폐 창시자들과 지캐시 회사, 우지한이 이끄는 비트메인 회사, 판테라캐피탈 등 쟁쟁한 투자자들이 대거 참여했다. 스타크웨어는 기존 지캐시의 영지식증명 기술을 한층 더 발전시켜 완벽한 익명성과 개인 프라이버시를 보호할 수 있을 뿐 아니라, 양자컴퓨터로도 해독할 수 없는 완벽한 보안을 자랑하는 영지식 스타크(zk-STARK) 기술을 개발·적용했다. 스타크웨어는 별도의 ICO를 진행하지 않았으며, 자체 암호화폐를 발행하기보다는 차라리 여러 블록체인 및 암호화폐에 필요한 보안 기술을 제공하고 그 대가로 코인을 받는 사업 모델을 가지고 있다.

개요

스타크 기술은 영지식증명을 변형하여 간결성과 투명성을 유지하고 양자컴퓨터도 해독할 수 없는 보안성을 갖는 독창적인 암호화 솔루션인 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][3]

주요 인물

엘리 벤-사손(Eli Ben-Sasson)

스타크웨어의 주요 개발자는 엘리 벤-사손(Eli Ben-Sasson), 알렉산드로 키에사(Alessandro Chiesa), 우리 코로드니(Uri Kolodny), 마이클 리아브제프(Michael Riabzev) 등이 있다. 이들은 익명성 기반의 암호화폐인 지캐시의 개발자 출신들로서, 스타크웨어를 통해 기존 지캐시의 영지식증명 기술을 한 단계 업그레이드했다.

특징

스타크웨어(Starkware)

블록체인과 신뢰

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

영지식스타크

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

예시1)

0 < P(x) < 9를 만족하는 x를 찾는다고 가정해보겠다. x가 1-1,000,000 사이의 정수라면 앞에 범위를 만족하는 x 를 찾는 방법은 1에서 1,000,000까지 다 풀어보는 방식이 있다. 이런 방식을 사용하면 알고리즘을 백만 번(1에서 1,000,000까지) 돌려야 한다. 영지식스타크의 핵심은 백만 번보다 더 적은 횟수로 유효성을 입증하는 것이다. 알고리즘을 한 번만 적게 돌려도 절약하는 에너지와 시간은 무시할 수 없다. 제아무리 계속 유효한 값이 나와도 하나가 틀리면 전체가 뒤틀릴 수 있다.

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

예시2)

영지식스타크는 다항식(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 값은 유효한 값임을 알 수 있다.

예시3)

여기에 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)라고 한다. 영지식스타크는 이렇게 다항식 원리를 사용해서 무결성을 단축된 방법으로 보여준다. 영지식스타크는 마지막 하나까지도 검증하는 방식을 사용하고 있다.[6]

개발진행 현황

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

스타크웨어 성능비교(Starkware comparison)

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

주요 투자자

스타크웨어는 별도의 ICO를 진행하지 않았다.[8] 그 대신 스타크웨어는 주요 벤처 캐피탈과 세계적으로 널리 알려진 암호화폐 창시자 개인들로부터 600만 달러(약 66억원)의 투자를 받았다.

스타크웨어의 주요 투자자는 지캐시(Zcash) 회사, 판테라캐피탈(Pantera Capital), 판테라의 자회사인 폴리체인캐피탈(Polychain Capital), 플러드게이트(Floodgate), 메타스테이블(MetaStable), 나발 라비칸트(Naval Ravikant), 중국 우지한이 이끄는 비트메인(Bitmain) 등이 있다. 또한 개인 투자자로 이더리움 창시자 비탈릭 부테린(Vitalik Buterin), 테조스 창시자 아서 브라이트만(Arthur Breitman), 네오 창시자 다홍페이(Da Hongfei) 등이 있다.

각주

  1. Rachel Rose O'Leary, 〈“진짜 혁신기술 있다면 ICO 왜 하나?” 어느 스타트업의 자신감〉, 《코인데스크코리아》, 2018-06-07
  2. 스타크웨어 백서 - Eli Ben-Sasson, Iddo Bentov, Yinon Horesh, Michael Riabzev, "Scalable, transparent, and post-quantum secure computational integrity", 2018-03-06
  3. TAUVOD, "Prof. Eli Ben-Sasson Technion", Youtube, 2017-07-05
  4. Quantalysus, "What is Starkware Industries", Medium, 2018-05-15
  5. ICO of Korea, 〈스타크웨어, Starkware ICO 분석 / 99.9%도 위험하다〉, 《네이버 블로그》, 2018-06-25
  6. Vitalik Buterin, "STARKs, Part II: Thank Goodness It's FRI-day", Vitalik Buterin's website, 2017-11-22
  7. SF Bitcoin Developers, "Towards Transparent and Scalable Computational Integrity and Privacy", Youtube, 2017-03-26
  8. Rachel Rose O'Leary, 〈“진짜 혁신기술 있다면 ICO 왜 하나?” 어느 스타트업의 자신감〉, 《코인데스크코리아》, 2018-06-07

참고자료

영어
한국어
동영상

같이 보기


  검수요청.png검수요청.png 이 스타크웨어 문서는 암호화폐 종류에 관한 글로서 검토가 필요합니다. 위키 문서는 누구든지 자유롭게 편집할 수 있습니다. [편집]을 눌러 문서 내용을 검토·수정해 주세요.