Zk-SNARKs: Difference between revisions

From IT Wiki
(새 문서: 분류:보안분류:알고리즘 ;Zero-Knowledge Succinct Non-Interactive Argument of Knowledge ;기존의 영지식 증명을 좀 더 간결하고(succinct) 비상호적...)
 
No edit summary
Line 1: Line 1:
[[분류:보안]][[분류:알고리즘]]
[[분류:보안]][[분류:알고리즘]]
;Zero-Knowledge Succinct Non-Interactive Argument of Knowledge
;Zero-Knowledge Succinct Non-Interactive Argument of Knowledge
;기존의 [[영지식 증명]]을 좀 더 간결하고(succinct) 비상호적인 환경(non-interactive)에서 적용 가능하도록 변형한 기술
;기존의 [[영지식 증명]]을 좀 더 간결하고(Succinct) 비상호적인 환경(Non-Interactive)에서 적용 가능하도록 변형한 기술
* 지캐시(Zcash)에서 시작
* 지캐시(Zcash)에서 시작
== 특징 ==
* 가벼움(Succinct): Non-interactive ZKP의 계산 과부하 해소
* 확장성(Scalability): append-only 블록체인의 용량 감소 가능
* 타원곡선(ECC): 비대칭키를 이용한 수학적 증명
== 절차 ==
* Keygen: Key Generator를 이용해 Key Pair (P<sub>k</sub>, V<sub>k</sub>)를 생성하는 과정
* Prove: Prover가 Proof 를 생성하는 과정
* Verify: Verifier가 Proof를 Verifying하는 과정
== 활용 ==
* 지캐시: zk-SNARKs를 이용하여 익명 코인 실현
** Shielded Address와 Transparent Address 사용
* 코다: zk-SNARKs사용하여 원본 검증 생략, 확장성 도모
* 이더리움: 익명성, 확장성을 위해 zk-SNARKs 적용 연구 중
== 한계 ==
* 신뢰 기관(Trusted Party)의 존재
* 증명 생성을 위한 부하
* 양자컴퓨팅에 취약

Revision as of 22:54, 24 November 2019

Zero-Knowledge Succinct Non-Interactive Argument of Knowledge
기존의 영지식 증명을 좀 더 간결하고(Succinct) 비상호적인 환경(Non-Interactive)에서 적용 가능하도록 변형한 기술
  • 지캐시(Zcash)에서 시작

특징

  • 가벼움(Succinct): Non-interactive ZKP의 계산 과부하 해소
  • 확장성(Scalability): append-only 블록체인의 용량 감소 가능
  • 타원곡선(ECC): 비대칭키를 이용한 수학적 증명

절차

  • Keygen: Key Generator를 이용해 Key Pair (Pk, Vk)를 생성하는 과정
  • Prove: Prover가 Proof 를 생성하는 과정
  • Verify: Verifier가 Proof를 Verifying하는 과정

활용

  • 지캐시: zk-SNARKs를 이용하여 익명 코인 실현
    • Shielded Address와 Transparent Address 사용
  • 코다: zk-SNARKs사용하여 원본 검증 생략, 확장성 도모
  • 이더리움: 익명성, 확장성을 위해 zk-SNARKs 적용 연구 중

한계

  • 신뢰 기관(Trusted Party)의 존재
  • 증명 생성을 위한 부하
  • 양자컴퓨팅에 취약