Zero-Knowledge Proof (ZKP)

Wiki Powered byIconIQ
Zero-Knowledge Proof (ZKP)

IQ AI를 발표했습니다.

확인해보세요

Zero-Knowledge Proof (ZKP)

**영지식 증명(ZKP)**은 한 당사자(증명자)가 다른 당사자(검증자)에게 명제 자체의 진실성 외의 추가 정보를 공개하지 않고 명제의 유효성을 확신시킬 수 있도록 하는 암호화 도구입니다. ZKP는 수학적 퍼즐로, 올바르게 풀리면 수신자가 진짜임을 증명합니다. 이는 개인 정보 보호를 강화하고 다양한 응용 프로그램의 보안을 향상시키는 데 유용한 도구입니다.[1]

개요

지식 증명은 "증명자"가 "검증자"에게 특정 정보를 알고 있음을 확신시키는 암호화 증명입니다. 증명자는 암호화 증명을 생성하는 개체 또는 프로그램입니다. 검증자는 증명의 내용을 확인하는 개체 또는 프로그램입니다. 지식 증명에는 완전성과 건전성이라는 두 가지 기본적인 특징이 있으며, 지식 증명(PoK)과 영지식 증명(ZKP)의 주요 차이점은 영지식입니다. 명제가 참이라면, 검증자는 명제가 참이라는 것 외에는 증명자로부터 아무것도 배우지 못합니다.[8][12]

ZPK의 개념은 1985년 Shafi Goldwasser, , 그리고 Charles Rackoff가 발표한 논문 "The Knowledge Complexity of Interactive Proof-Systems"에서 소개되었습니다.[12]

증명자는 자신이 값 X를 알고 있다는 것을 검증자에게 값 X 자체가 아닌 그 사실만을 알려 증명할 수 있습니다. 이 개념의 핵심은 정보를 공개하지 않고 지식의 소유를 증명하는 것입니다. 여기서 주요 과제는 X가 무엇인지 또는 다른 정보를 말하지 않고 값 X에 대한 지식을 보여주는 것입니다.[2]

영지식 증명(ZKP)은 역설적인 개념이지만 암호화, 기술 및 개인 정보 보호 시스템을 포함한 다양한 분야에서 응용 가능성이 매우 높습니다.

영지식 증명의 종류

각각 고유한 강점과 약점을 가진 여러 유형의 ZKP가 있습니다. 가장 일반적인 유형 중 일부는 다음과 같습니다.

  • 대화형 ZKP: 증명자와 검증자 간의 일련의 질문과 응답이 포함됩니다.[4][5]
  • 비대화형 ZKP: 증명자에서 검증자로 단일 메시지만 필요합니다.[5][6]
  • 시그마 프로토콜: 효율성과 다양성으로 알려진 특정 유형의 ZKP입니다.[7]
  • : 특히 효율적이며 계산의 유효성에 대한 명제를 증명하는 데 사용할 수 있는 비대화형 ZKP입니다. [9][8]
  • ZK-STARK: ZK-SNARK보다 효율성이 훨씬 뛰어나지만 구성이 더 복잡한 비대화형 ZKP입니다.[10][8]

영지식 증명의 잠재적 응용 분야

ZKP는 다음을 포함한 광범위한 잠재적 응용 분야를 가지고 있습니다.

  • 개인 정보 보호 인증: 사용자는 개인 정보를 공개하지 않고 웹사이트 또는 서비스에 자신의 신원을 증명할 수 있습니다.
  • 안전한 투표: 유권자는 자신의 신원이나 투표를 공개하지 않고 투표할 자격이 있음을 증명할 수 있습니다.
  • 익명 자격 증명: 사용자는 자신의 신원을 공개하지 않고 자격 증명을 얻고 사용할 수 있습니다.
  • 블록체인 확장성: ZKP는 기본 데이터를 공개하지 않고 트랜잭션을 검증하는 데 사용되어 블록체인에 저장된 데이터 양을 줄이고 확장성을 향상시킬 수 있습니다.
  • 영지식 지식 증명: 이는 지식 자체를 공개하지 않고 특정 지식의 소유를 증명하는 데 사용할 수 있습니다.

ZKP의 주요 특성

  • 완전성: 명제가 참이고 증명자가 프로토콜을 올바르게 따르면 검증자는 항상 확신하게 됩니다.
  • 건전성: 명제가 거짓이면, 어떤 부정행위 증명자도 무시할 수 있는 확률보다 큰 확률로 검증자를 확신시킬 수 없습니다.
  • 영지식: 검증자는 명제의 유효성 외에는 아무것도 배우지 못합니다.

예시

  • Schnorr 서명: 사용자가 키 자체를 공개하지 않고 개인 키를 소유하고 있음을 증명할 수 있도록 하는 암호화 서명 방식입니다. 를 활용하는 알고리즘으로 단순성으로 유명하며, Schnorr 서명은 의 기술 로드맵에 디지털 서명 알고리즘(ECDSA)의 업그레이드로 포함될 것으로 제안되었습니다. Schnorr는 단순성, 증명 가능한 보안 및 선형성으로 인해 종종 주목받습니다. Schnorr는 ECDSA보다 계산이 적게 필요하므로 트랜잭션에 적합한 것으로 간주됩니다.[11]
  • ZK-SNARK: 고급 암호화를 사용하여 복잡한 명제를 효율적으로 증명하는 비대화형 ZKP 유형입니다. 약어 는 영지식 간결 비대화형 지식 증명(Zero-Knowledge Succinct Non-Interactive Argument of Knowledge)을 의미하며, 비밀 키와 같은 특정 정보의 소유를 증명할 수 있지만 그 정보를 공개하지 않고 증명자와 검증자 간의 상호 작용 없이 증명할 수 있는 증명 구성을 말합니다. 는 zk-SNARK의 최초의 광범위한 응용 프로그램이며, 새로운 형태의 영지식 암호화입니다. Zcash의 강력한 개인 정보 보호 보장은 Zcash의 차폐된 트랜잭션이 에서 완전히 암호화될 수 있지만 zk-SNARK 증명을 사용하여 네트워크의 합의 규칙에 따라 유효한 것으로 검증될 수 있다는 사실에서 비롯됩니다. [9][13]
  • ZK-STARK: 다항식 커밋먼트를 기반으로 하며 ZK-SNARK보다 확장성이 뛰어난 또 다른 비대화형 ZKP입니다. 은 네트워크에서 개인 트랜잭션 및 검증을 가능하게 하기 위해 zk-SNARK 및 zk-STARK와 같은 ZKP 프로토콜도 지원합니다. [10][15]
  • Bulletproofs: 는 최근 Bulletproofs ZKP 시스템의 코드를 새롭게 개선된 Bulletproof+ ZKP 솔루션으로 업그레이드했습니다. Bulletproofs는 지불 금액이 실제 금액을 공개하지 않고 양수임을 증명하는 비대화형 ZKP입니다. 이를 통해 는 관련 당사자를 제외하고는 누구도 각 트랜잭션의 발신자, 수신자 또는 금액을 추적할 수 없도록 합니다. [14]

ZKP의 과제

ZKP는 상당한 이점을 제공하지만 계산 복잡성, 표준화 부족, 보안 취약성과 같은 몇 가지 과제에도 직면합니다.[7]

참고 문헌.

카테고리순위이벤트용어집