지식 제로 증명
Zero-knowledge proof암호학에서 제로 지식 증명 또는 제로 지식 프로토콜은 한 당사자(프로버)가 주어진 진술이 참임을 다른 당사자(검증인)에게 증명할 수 있는 방법이며, 프로버(프로버)는 그 진술이 참이라는 사실 이외의 추가 정보를 전달하는 것을 피한다.제로 지식 증명의 본질은 단순히 정보를 공개함으로써 특정 정보에 대한 지식을 가지고 있다는 것을 증명하는 것은 사소한 일이라는 것이다; 도전은 정보 자체나 추가 [1]정보를 공개하지 않고 그러한 소유를 증명하는 것이다.
스테이트먼트를 증명하기 위해 프로바이더가 비밀정보를 보유해야 하는 경우 검증자는 비밀정보를 보유하지 않고서는 그 스테이트먼트를 다른 사람에게 증명할 수 없습니다.증명되는 진술은 증명자가 그러한 지식을 가지고 있다는 주장을 포함해야 하지만, 주장 자체에 지식 자체를 포함하거나 전달하지는 않는다.그렇지 않으면, 그 문장은 프로토콜의 종료까지 그 문장에 대한 추가 정보를 검증자에게 제공하기 때문에 제로 지식으로 증명되지 않을 것이다.지식 제로 증명은 진술이 제공자가 비밀 정보를 소유하고 있다는 사실만으로 구성될 때 특별한 경우입니다.
인터랙티브 영지식 증명은 지식을 증명하는 개인(또는 컴퓨터 시스템)과 [1]증명을 검증하는 개인 간의 상호작용을 필요로 한다.
지식 제로 증명을 구현하는 프로토콜은 반드시 검증자로부터 대화형 입력을 요구해야 한다.이 인터랙티브한 입력은 보통 하나 이상의 도전의 형태로 이루어지며, 프로버로부터의 응답은 그 진술이 참인 경우에만 검증자를 설득할 것이다. 즉, 프로버가 청구된 지식을 보유하고 있는 경우이다.그렇지 않은 경우 검증자는 프로토콜의 실행을 기록하고 이를 재생하여 다른 사람이 비밀 정보를 보유하고 있음을 확신시킬 수 있습니다.재생기가 정보를 보유하고 있거나(즉, 프로토콜이 유출된 정보를 의미하고, 따라서 제로 지식으로 증명되지 않음), 즉, 실제로 정보를 소유하지 않은 사람으로부터 수용이 승인되었기 때문에 신 당사자의 수용은 정당하다.
비인터랙티브 제로 지식 증명의 일부 형식이 [2][3]존재하지만, 증명의 유효성은 계산상의 가정(일반적으로 이상적인 암호화 해시 함수의 가정)에 의존합니다.
추상적인 예
알리바바 동굴
1990년 장 자크 퀴스퀘터와 다른 사람들이 그들의 논문 "자녀에게 제로 지식 프로토콜을 설명하는 방법"[4]에서 처음 발표한 제로 지식 증명에 대한 기본적인 아이디어를 제시하는 잘 알려진 이야기가 있다.영지식 증거에서 두 당사자를 페기(성명 작성자)와 빅터(성명 확인자)로 표기하는 것은 일반적인 관행이다.
이 이야기에서 페기는 동굴에서 마법의 문을 여는 데 사용되는 비밀 단어를 밝혀냈다.이 동굴은 반지 모양으로 되어 있는데, 입구는 한쪽에 있고 마법의 문은 반대편을 막고 있다.빅터는 페기가 그 비밀 단어를 알고 있는지 알고 싶어하지만, 매우 사적인 사람인 페기는 빅터에게 그녀의 지식(비밀 단어)을 공개하거나 그녀의 지식 사실을 세상에 알리고 싶어하지 않는다.
입구 A와 B에서 왼쪽과 오른쪽 통로에 라벨을 붙입니다.첫째, 빅터는 페기가 들어갈 때 동굴 밖에서 기다린다.페기는 A와 B 중 하나의 길을 택한다; 빅터는 그녀가 어느 길을 택하는지 볼 수 없다.그리고 나서, 빅터는 동굴에 들어가 그녀가 돌아오기 위해 사용할 길의 이름, A 또는 B를 무작위로 선택했다고 외친다.그녀가 정말로 마법의 단어를 알고 있다면, 이것은 쉽다: 그녀는 필요하다면 문을 열고 원하는 길을 따라 돌아간다.
하지만 그녀가 그 단어를 몰랐다고 가정해 보자.그리고 나서, 그녀는 빅터가 그녀가 들어갔던 경로의 이름을 알려줘야만 지정된 경로로 돌아갈 수 있을 것이다.빅터는 무작위로 A나 B를 선택하기 때문에 그녀가 정확하게 추측할 확률은 50%입니다.만약 그들이 이 속임수를 여러 번, 예를 들어 20번 연속으로 반복한다면, 그녀가 빅터의 모든 요청을 성공적으로 예상할 수 있는 가능성은 사라질20 것이다.
따라서, 만약 페기가 계속해서 빅터 이름 출구에 나타난다면, 그는 페기가 실제로 비밀 단어를 알고 있을 가능성이 매우 높다고 결론 내릴 수 있다.
제3자 관찰자에 대한 한 가지 주의사항: 빅터가 거래 전체를 기록하는 몰래카메라를 착용하고 있더라도 카메라가 기록하는 것은 빅터가 "A!"를 외치고 페기가 A에 나타나거나 빅터가 "B!"를 외치고 페기가 B에 나타나는 것뿐이다.이런 종류의 녹음은 어느 두 사람에게나 가짜가 될 수 있습니다(Peggy와 Victor가 소리칠 A와 B의 순서에 대해 사전에 합의하기만 하면 됩니다).그러한 녹음은 원래 참가자들 외에는 확실히 누구도 납득할 수 없을 것이다.사실, 원래 실험에 옵서버로 참석했던 사람조차도 납득할 수 없을 것이다. 왜냐하면 빅터와 페기는 처음부터 끝까지 모든 "실험"을 조정했을 수 있기 때문이다.
또한 빅터가 카메라에서 동전을 던져 A와 B를 선택하면 이 프로토콜은 전혀 알지 못하는 속성을 잃게 됩니다. 나중에 녹화를 시청하는 사람이라면 누구나 납득할 수 있을 것입니다.따라서, 비록 이것이 빅터에게 비밀 단어를 드러내지는 않지만, 빅터가 페기가 말한 바램과는 반대로, 페기가 그러한 지식을 가지고 있다는 것을 세상에 납득시키는 것은 가능하다.그러나 디지털 암호는 일반적으로 동전 소유자에게만 알려진 고정된 앞면과 뒷면의 패턴을 가진 동전과 유사한 의사 난수 발생기에 의존하여 동전을 던진다.만약 빅터의 동전이 이런 식으로 움직인다면, 빅터와 페기가 "실험"을 조작하는 것이 가능하기 때문에, 의사 난수 생성기를 사용하는 것은 뒤집힌 동전을 사용하는 것과 같은 방식으로 페기의 지식을 세상에 드러내지 않을 것입니다.
페기가 빅터에게 마법의 단어를 알고 있다는 것을 단 한 번의 재판으로 증명할 수 있다는 것을 주목하세요.만약 빅터와 페기가 동굴 입구로 함께 간다면, 빅터는 페기가 A를 통해 들어가고 B를 통해 나오는 것을 볼 수 있다.이것은 페기가 마법의 단어를 빅터에게 드러내지 않고 그 마법의 단어를 알고 있다는 것을 확실히 증명해 줄 것이다.그러나 그러한 증거는 제3자에 의해 관찰되거나 빅터에 의해 기록될 수 있으며 그러한 증거는 누구에게나 설득력이 있을 것이다.다시 말해, 페기는 빅터와 공모했다고 주장함으로써 그러한 증거를 반박할 수 없었고, 따라서 그녀는 더 이상 자신의 지식을 아는 사람을 통제할 수 없었다.
두 개의 공과 색맹인 친구
여러분의 친구가 적-녹색 색맹이고 여러분이 두 개의 공을 가지고 있다고 상상해 보세요: 하나는 적-녹색, 다른 하나는 동일하지만.당신의 친구에게는 그것들이 완전히 똑같아 보이고 그는 그것들이 실제로 구별될 수 있을지 회의적입니다.당신은 그에게 사실 그들이 다른 색깔이라는 것을 증명하고 싶어하지만, 다른 것은 아니다; 특히, 당신은 어떤 것이 빨간색이고 어떤 것이 녹색 공인지 밝히고 싶지 않다.
여기 증명 시스템이 있습니다.당신이 그 두 개의 공을 친구에게 주면 그는 그것을 등 뒤로 넘깁니다.그 다음, 그는 공 하나를 꺼내 등 뒤에서 꺼내어 전시합니다.그리고 나서 그는 그것을 다시 뒤로 미루고 두 개의 공 중 하나를 같은 확률로 무작위로 고르면서, 두 개의 공 중 하나만 공개하기로 선택한다.그는 당신에게 "내가 공을 바꿨어?"라고 물을 것이다.그런 다음 이 전체 절차를 필요한 만큼 자주 반복합니다.
물론 색을 보면 그가 색을 바꿨는지 아닌지를 확실히 알 수 있습니다.한편, 같은 색이라면 50% 이상의 확률로 정확하게 추측할 수 없습니다.
각 스위치/비스위치 식별에 랜덤으로 성공했을 확률은 50%이므로 모든 스위치/비스위치에서 랜덤으로 성공했을 확률은 제로("사운드니스")에 가깝습니다.만약 당신과 당신의 친구가 이 "증명"을 여러 번 반복한다면(예: 20번), 당신의 친구는 공의 색이 다르다는 것을 확신해야 한다('완전성').
당신의 친구는 어떤 공이 녹색이고 어떤 공이 빨간색인지 전혀 알지 못하기 때문에 위의 증거는 영지식이다; 그는 [5]공을 구별하는 방법을 전혀 알지 못한다.
정의.
이 섹션은 확인을 위해 추가 인용문이 필요합니다. : 제로 프루프 · · · JSTOR (2022년 7월) (이 메시지 및 ) |
일부 문장의 영지식 증명은 다음 세 가지 속성을 충족해야 합니다.
- 완전성: 만약 그 진술이 사실이라면, 정직한 검증자(즉, 프로토콜을 제대로 따르는 사람)는 정직한 검증자에 의해 이 사실을 확신하게 될 것이다.
- 건전성: 만약 그 진술이 거짓이라면, 어떤 부정행위 방지자도 그것이 진실이라는 것을 정직한 검증자에게 납득시킬 수 없다. 다만 약간의 가능성이 있다.
- 제로 지식: 스테이트먼트가 참일 경우 그 스테이트먼트가 참이라는 사실 이외에는 어떤 검증자도 학습할 수 없습니다.즉, (비밀이 아닌) 진술을 아는 것만으로도 프로버가 비밀을 알고 있다는 것을 보여주는 시나리오를 상상하기에 충분합니다.이것은 모든 검증자가 증명해야 할 진술(프로버에 대한 접근 없음)만 주어져 정직한 검증자와 문제의 검증자 사이의 상호작용처럼 보이는 스크립트를 생성할 수 있는 시뮬레이터를 가지고 있다는 것을 보여줌으로써 공식화된다.
이 중 처음 두 가지는 보다 일반적인 대화형 증명 시스템의 특성입니다.세 번째는 증거를 제로 [6]지식으로 만드는 것이다.
제로 지식 증명은 수학적인 의미에서는 증명되지 않습니다.왜냐하면 부정행위 방지자가 거짓 진술을 검증자에게 납득시킬 수 있는 약간의 확률, 건전성 오류가 있기 때문이다.즉, 영지식 증명은 결정론적 증명이라기보다는 확률론적 "증명"이다.그러나 건전성 오류를 무시할 수 있을 정도로 작은 [citation needed]값으로 줄이는 기법이 있다.
제로 지식에 대한 공식적인 정의는 어떤 계산 모델을 사용해야 하는데, 가장 일반적인 것은 튜링 기계의 계산 모델이다.PVdisplaystyle V) 및 S를 튜링 기계로 .언어(\ L에 대한 (displaystyledisplaystyle(P, V)\displaystyle(P, V)\ {V})\displaystyle(PPT V^\\{V}에 시뮬레이터 Sdisplaystyle(\ S)가 존재하는 경우 전혀 알지 못한다.
여기서 V ^ [ ( ) ( ,) displaystyle \operatorname { {는 P와 P)\x) 사이의 레코드입니다s는 무한한 계산 능력을 가진 것으로 모델링된다(실제로 PP는 으로 확률론적 튜링 기계이다).직관적으로, V {\에 대해 변환을 재현할 수 인 시뮬레이터^ {\displaystyle 가 존재하는 경우 증명 ,V ) {P, V V})은 영지식이라고 정의되어 있습니다.n 입력에 대해P(\ P와V 의 값입니다.정의의 보조 z({z})는 "사전 지식"(V 의 랜덤 동전 포함) 역할을 .이 정의는 V {이가) P {\ P와의 대화에서 정보를 추출하기 위해 사전 지식 z z을(를) 사용할 수 없음을 합니다. 왜냐하면S {\ S도 이 사전 지식을 V ^ 간의 를 재현할 수 있기 때문입니다.이전과 마찬가지로 P 스타일와 [citation needed]P(를 사용합니다
주어진 정의는 완벽한 영지식의 정의이다.계산 제로 지식은 검증자 {\{\과 시뮬레이터의 [citation needed]뷰를 보조 문자열이 주어진 경우에만 계산적으로 구분할 수 있도록 요구함으로써 얻을 수 있다.
실용적인 예
지정된 값의 이산 로그
이러한 아이디어를 보다 현실적인 암호 애플리케이션에 적용할 수 있습니다.페기는 빅터에게 자신이 주어진 [7]그룹에서 주어진 값의 이산 로그를 알고 있다는 것을 증명하려고 합니다.
예를 들어, 값(\ y 큰 p(\ p 및 (\ g가 주어지면x(\x를 밝히지 않고 p (\ g}=와 같은 값 x)를 알고 있음을 증명하려고 합니다.dge x({x})는 Peggy가 아무에게도 공개하지 않은 의값 x({x})를 하고 y x p x} {p를 하여 y y의 을 모든 pote에 배포했기 때문에 이러한 지식을 가질 수 있다는 증거로 사용할 수 있습니다.x의 지식을 증명하는 은 페기로서의 정체성을 증명하는 것과 같다
프로토콜은 다음과 같이 진행됩니다. 각 라운드에서 Peggy는 r r C을 (를) 하고 이를 Victor에게 공개합니다.는 C(\ C)를수신한 후 다음 두 가지 요구 중 하나를 랜덤으로 발행합니다.Peggy에게r(\ r ( ( -)의값을 공개하도록 요구합니다.{ + ) { \ { ( ( ( p - 1 ) }} } } }} } },,,,,,,,,, discl discl of after after after after after after , , ( after after after after 。프로토콜 한 라운드의 올바른 실행에 의해 공개된다.
Victor는 어느 쪽인가의 답변을 확인할 수 있습니다.R{ r을(를) 요구하면 p { {\{을를 하여C와 하는지 할 수 있습니다.는 g( + ) ( -) g^ { ( x + ) \ { ( p - 1 ) } { \ { p } } 를 하여 페기가x 의 값을 알고 있는 경우 C y p\ y { \ { }} 와 을 확인하는 것으로 일관됩니다.얼라이언스
Peggy가 Victor가 어떤 도전을 할 것인지 알고 있거나 예측할 수 있다면 쉽게 속이고, 모르는 경우 Victor에게 x x를 알고 있다고 설득할 수 있습니다.Victor가 rr을 요청할 을 알고 있으면 정상적으로 진행됩니다. C mo p{\ C 및 C {\ C를 빅터에게 공개하면 빅터의 도전에 응답할 수 있습니다.한편 가( r) ( - 1( x + r \ { ( p - 1 ) 을 요구하는 것을 알고 있는 경우는, 임의의 값 { \ r를 선택해, ( ) - p { C = r = r } { } { g } { r } } }을 합니다. C는 빅터가 기대하는C(\ C의 값입니다.빅터가 ( ) ( - + ){\{(을(를) 공개하도록 요구하면, rr'(\ r가 됩니다.이것에 대해, 빅터는 일관성을 검증합니다.이 행해지는 mod p{r} mod {r}(\ g {r} {r} {r} {r} {\ {r}) {\mod {{\mod}) C에 일치하는지 하기 때문입니다peggy가 곱셈 역수를 곱한 이후입니다
그러나 위의 시나리오 중 하나에서 Victor가 예상한 것과 결과를 작성한 것 이외의 과제를 발행한 경우에는 이 그룹의 개별 로그를 해결할 수 없다는 가정 하에 과제에 대응할 수 없습니다.r r을 하고 C r p C를 공개하면 {(을 할수 없습니다( + ) (p -1) { style ( + r ) { \ { ( p - 1 ) }(k r r r r r r r r r r r r k k k k k with with with with with with of of k k of of of of of of of of of of of of of of of of of of of of of of of of of of of of of of of of of of of of of of of of of ( x + r ( - 1 ){ ( x + r - 1 sty ( x + r ){ style ( x + r알려진 지수로 멱을 계산해서가 아니라
따라서 커닝 프로버는 한 라운드에서 커닝에 성공할 확률이 0.5입니다.충분한 회수를 실시함으로써 부정행위 방지자가 성공할 확률을 임의로 낮출 수 있다.
간단한 요약
Peggy는 x의 값(예를 들어 자신의 비밀번호)을 알고 있음을 증명합니다.
- Peggy와 Victor는 의곱셈군의 와 g에 합니다
- Peggy는 y p {\ y 을 계산하여 Victor에게 전송합니다.
- 다음 두 단계를 (대부분) 반복한다.
- Peggy는 임의의값 [ , p- ]{ r \ U [ 0 , p- 2]{ g^ { r {를 하여 하여 C { C를 빅터에게 전달합니다.
- Victor는 Peggy에게 값(+ ) ( - + r ){ \ { ( p - )} the the 、 r} r( {\ ( {\ ( {\ {\ {\stylestyle ( x+ )( -1 )p - 1 )\ cdisplay \ cdisplay \ cdisplay \ cdisplay \ cdisplay \ cdisplay \ \ 두 번째 예에서는 C g p \ C \ ^ { r } { \ { p}를 합니다
값( + ) ( - + r \ { p -1}{ x { \ { p - 1}}는 mod ( - )의 암호화값으로 간주할 수 있습니다 {\ display r이 0~( -2) styledisplay styledisplay style {\ bmod {\ bod {\ bmod {\ bmod {\ p-1의 경우, ( )스타일에 균등하게 x원타임패드 참조).
큰 그래프에 대한 해밀턴
다음 계획은 Manuel Blum에 [8]의한 것입니다.
이 시나리오에서 페기는 큰 그래프의 해밀턴 사이클을 알고 있습니다.Victor는 사이클을 알고 있지만 알고 있지 않습니다(예를 들어 Peggy가 생성해 그에게 공개했습니다).큰 그래프가 주어진 해밀턴 사이클을 찾는 것은 해당 결정 버전이 NP-완전인 것으로 알려져 있기 때문에 계산상 불가능하다고 여겨진다.페기는 단순히 드러내지 않고 사이클을 알고 있다는 것을 증명할 것이다(아마 빅터는 그것을 사는 데 관심이 있지만 먼저 검증을 원할 것이다, 아니면 페기만이 이 정보를 알고 빅터에게 자신의 신분을 증명하고 있을 것이다).
페기가 이 해밀턴 사이클을 알고 있다는 것을 보여주기 위해, 그녀와 빅터는 몇 라운드의 게임을 한다.
- 각 라운드의 시작 부분에서 페기는 와 동형인 그래프를 만듭니다(즉, 모든 정점이 다른 이름을 가지고 있다는 것을 제외하면 동일).알려진 동형 그래프 간에 해밀턴 사이클을 변환하는 것은 간단하기 때문에, 페기가 해밀턴 사이클을 에 대해 알고 있다면 그녀는 또한 에 대해서도 알아야 한다.
- Peggy는 에 전념한다.그녀는 암호약정 체계를 사용함으로써 그렇게 할 수 있었다.또는 의 정점에 번호를 붙일 수도 있습니다.다음으로 의 각 모서리에 대해 작은 종이에 모서리가 결합하는 두 개의 정점을 적습니다.그리고 그녀는 이 모든 종이 조각들을 테이블 위에 엎드린다.이 약속의 목적은 Peggy는 변경할 수 없지만 동시에 Victor는 에 대한 정보를 가지고 있지 않다는 것입니다.
- 그리고 나서 빅터는 페기에게 묻기 위해 두 가지 질문 중 하나를 무작위로 선택한다.그는 그녀에게 (그래프 동형 문제 참조) 사이의 동형성을 보여주도록 요청하거나 에 해밀턴 사이클을 보여주도록 요청할 수 있다.
- 페기가 두 그래프가 동일하다는 것을 보여주도록 요구받았을 경우, 페기는 먼저 (테이블에 올려놓은 모든 종이를 뒤집는 등) 모든 것을 밝혀낸 후 에 매핑되는 꼭지점 변환을 제공합니다.Victor는 그것들이 실제로 동일하다는 것을 확인할 수 있습니다.
- 페기가 에서 해밀턴 사이클을 알고 있다는 것을 증명하도록 요구받으면, 그녀는 그녀의 해밀턴 사이클을 로 변환하고 해밀턴 사이클의 가장자리만 발견합니다.이것은 빅터가 실제로 해밀턴 사이클을 포함하는 것을 확인하기에 충분합니다.
그래프에 대한 커밋은 Victor가 두 번째 케이스에서 사이클이 의 가장자리로 이루어졌음을 확인할 수 있도록 하는 것이 중요합니다.예를 들어, 모든 에지에 개별적으로 커밋(또는 이 에지가 없는 경우)함으로써 이 작업을 수행할 수 있습니다.
완전성
페기가 해밀턴 순환을 알고 있다면, 그녀는 (첫 번째 단계에서 약속했던) 그래프 동형성 또는 ( 그녀가 의 순환에 이형성을 적용하여 구성할 수 있는) 해밀턴 순환에 대한 빅터의 요구를 쉽게 충족시킬 수 있습니다.
제로 지식
Peggy의 답변은 에서 원래의 해밀턴 사이클을 나타내지 않습니다.Victor는 매 라운드마다 의 동형사상 또는 의 해밀턴 사이클만을 학습합니다.의 사이클을 검출하기 위해서는 양쪽의 답이 필요합니다.따라서, Peggy가 매 라운드 마다 다른 것을 생성할 수 있는 한, 정보는 불명확한 채로 있습니다.만약 페기가 의 해밀턴 사이클에 대해 알지 못하지만, 어떻게 해서든 빅터가 각 라운드를 보고자 할 것을 미리 알고 있다면 그녀는 컨닝을 할 수 있다.예를 들어, Peggy가 빅터가 해밀턴 순환을 볼 것을 미리 알고 있었다면 그녀는 관련이 없는 그래프에 대해 해밀턴 순환을 생성할 수 있었다.비슷하게, 만약 페기가 빅터가 동형성을 볼 것을 미리 알았다면, 그녀는 단순히 동형 그래프를 생성할 수 있었을 것이다(그녀도 해밀턴 순환을 알지 못한다).빅터는 (페기 없이) 직접 프로토콜을 시뮬레이트할 수 있었습니다. 왜냐하면 그는 무엇을 보고 싶어 할지 알고 있기 때문입니다.따라서 빅터는 각 라운드에서 밝혀진 정보로부터 해밀턴 사이클에 대한 정보를 얻지 못한다.
건전성
페기가 정보를 모르면, 그녀는 빅터가 어떤 질문을 할지 추측할 수 있고, 상관없는 그래프에 대해 그래프와 해밀턴 사이클 중 하나를 생성할 수 있지만, 그녀는 해밀턴 사이클을 알지 못하기 때문에 둘 다 할 수 없다.이 추측으로, 그녀가 빅터를 속일 확률은−n 2이고, 여기서 라운드 수는 2입니다.모든 현실적인 목적을 위해, 이런 식으로 합리적인 횟수의 라운드로 제로 지식 증거를 물리치는 것은 실행 불가능할 정도로 어렵다.
영지식의 변종
다음과 같은 방법으로 시뮬레이터의 출력이 의미하는 것에 대한 직관적인 개념을 "실증 프로토콜의 실행처럼" 공식화함으로써 영지식의 다른 변형을 정의할 수 있습니다.
- 시뮬레이터와 프루프 프로토콜에 의해 생성된 분포가 정확히 동일하게 분포되어 있다면 완벽한 제로 지식이라고 할 수 있습니다.예를 들어 위의 첫 번째 예에서는 다음과 같습니다.
- 통계적[9] 영지식은 분포가 반드시 동일하지는 않지만 통계적으로 가깝다는 것을 의미하며, 이는 통계적 차이가 무시할 수 있는 함수임을 의미합니다.
- 효율적인 알고리즘이 두 분포를 구별할 수 없는 경우, 우리는 계산 영지식을 말한다.
지식 유형 없음
- 지식의 증명: 위의 예시와 같이 지식은 지수 안에 숨겨져 있습니다.
- 페어링 기반의 암호화: f()x와 f()y가 주어지고, 및 를 모르는 사이에 f(×)xy를 계산할 수 있습니다.
- 증인을 구별할 수 없는 증거: 검증자는 어떤 증인이 증거를 제시하기 위해 사용되는지 알 수 없습니다.
- 멀티 파티 계산: 각 파티는 각자의 비밀을 지킬 수 있지만, 함께 결과를 도출합니다.
- 호출음 서명: 외부인은 서명에 사용되는 키를 모릅니다.
적용들
인증 시스템
제로 지식 증명에 대한 연구는 인증 시스템에 의해 동기부여되어 왔습니다.인증 시스템에서는, 한쪽 당사자는 비밀 정보(패스워드 등)를 사용해 자신의 신원을 제2자에게 증명하고 싶지만, 제2자가 이 비밀에 대해 아무것도 배우지 않도록 하고 있습니다.이것을 「지식 제로 증명」이라고 부릅니다.단, 비밀번호는 일반적으로 너무 작거나 랜덤하지 않아 지식 제로 증명의 많은 스킴에서 사용할 수 없습니다.제로 지식 패스워드 증명은 제한된 크기의 [citation needed]패스워드에 대처하는 특별한 종류의 제로 지식 증명입니다.
2015년 4월에는 Sigma 프로토콜(다수의 증명 중 하나)이 [10]도입되었습니다.2021년 8월 미국 웹 인프라 및 보안 업체인 Cloudflare는 벤더 [11]하드웨어를 사용한 개인 웹 검증에 대해 1대 1의 증명 메커니즘을 사용하기로 결정했습니다.
윤리적 행동
암호화 프로토콜 내에서 제로 지식 증명을 사용하는 방법 중 하나는 프라이버시를 유지하면서 정직한 행동을 강요하는 것입니다.대략적으로,[12][13] 이 아이디어는 제로 지식 증명을 사용하여 프로토콜에 따라 사용자의 동작이 올바른지 증명하도록 사용자에게 강제하는 것입니다.건전성 때문에 사용자가 정당한 증거를 제시하기 위해서는 정직하게 행동해야 한다는 것을 알고 있습니다.지식이 없기 때문에 사용자가 [citation needed]증거를 제공하는 과정에서 비밀의 프라이버시를 침해하지 않는다는 것을 알고 있습니다.
핵군축
2016년에는 프린스턴 플라즈마 물리학 연구소와 프린스턴 대학이 향후 핵 군축 회담에 적용할 수 있는 기술을 시연했다.이를 통해 조사관은 [14]비밀일 수 있는 내부 작업을 기록, 공유 또는 공개하지 않고 물체가 실제로 핵무기인지 여부를 확인할 수 있다.
블록 체인
제로 지식 증명은 Zerocoin과 Zerocash 프로토콜에 적용되어 2016년[15] Zcoin([16]2020년 Firo로 브랜드 변경)과 Zcash 암호화 화폐의 탄생에 정점을 찍었다.Zerocoin에는 [15]익명성을 확보하기 위해 피어 또는 집중형 믹싱 프로바이더를 신뢰하지 않는 내장 믹싱 모델이 있습니다.사용자는 기준 통화로 거래할 수 있으며 제로코인을 [17]출입할 수 있습니다.제로캐시 프로토콜은 거래 금액을 모호하게 할 수 있는 반면 제로캐시 프로토콜은 그렇지 않다는 점을 제외하고는 유사한 모델(비인터랙티브 제로 지식 [18]증명으로 알려진 변형)을 사용한다.Zerocash 네트워크상의 트랜잭션데이터에 큰 제한이 있기 때문에 Zerocash는 Zerocoin에 비해 프라이버시 타이밍 공격의 가능성이 낮아집니다.그러나, 이러한 사생활의 추가 레이어는, 부정 코인을 [15][19]추적할 수 없기 때문에, Zerocash 공급의 잠재적인 검출되지 않는 초인플레이션을 일으킬 수 있습니다.
2018년에는 방탄이 도입되었다.방탄은 신뢰할 수 있는 설정이 [20]필요하지 않은 비인터랙티브 제로 지식 증명보다 개선된 것입니다.이후 Mimblewimble Protocol(Green 및 Beam 암호 화폐 기반)과 Monero 암호 [21]화폐에 구현되었다.2019년 Firo는 신뢰할 수 있는 [22][10]설정이 없는 제로코인 프로토콜을 개선한 Sigma 프로토콜을 구현하였습니다.같은 해 Firo는 거래의 [23]출처와 금액을 숨기는 Sigma 프로토콜의 개선점인 Lelantus 프로토콜을 도입했다.
역사
제로 지식 증명은 1985년 샤피 골드워서, 실비오 미칼리 및 찰스 라코프가 논문 "인터랙티브 증명 시스템의 지식 복잡성"[12]에서 처음 고안했습니다.본서에서는 인터랙티브 증명 시스템의 IP 계층을 소개하고(인터랙티브 증명 시스템 참조) 지식 복잡성의 개념을 생각해냈다.이 개념은 증명에서 검증자로 전달된 증명에 대한 지식량의 측정이다.그들은 또한 구체적인 문제에 대한 최초의 0 지식 증거, 즉 2차 비잔류 모드를 결정하는 증거를 주었다.m라즐로 바바이와 슬로모 모란의 논문과 함께 이 획기적인 논문은 인터랙티브한 증명 시스템을 발명해 1993년 5명의 저자가 모두 제1회 괴델상을 수상했다.
Goldwasser, Micali 및 Rackoff는 다음과 같이 말합니다.
특히 관심사는 이 추가 지식이 본질적으로 0인 경우이며, 우리는 [그것은] 숫자가 0의 추가 지식을 방출하는 2차 비잔차 mod m이라는 것을 대화적으로 증명할 수 있다는 것을 보여준다.m의 인수분해가 주어지지 않았을 때 2차 잔차 mod m을 결정하는 효율적인 알고리즘이 알려져 있지 않기 때문에 이것은 놀라운 일이다.또한 이 문제에 대해 알려진 모든 NP 증명은 m의 소인수 분해를 나타낸다.이것은 증명 과정에 상호작용을 추가하면 정리를 증명하기 위해 전달되어야 하는 지식의 양이 줄어들 수 있음을 나타냅니다.
2차 비잔류 문제는 NP 알고리즘과 co-NP 알고리즘을 모두 가지고 있기 때문에 NP와 co-NP의 교점에 있습니다.이것은 또한 Oded Goldreich가 2-프라임 계수가 Blum [24]정수가 아님을 입증하는 미공개 증명 시스템과 같이 0 지식 증명들이 이후에 발견된 몇 가지 다른 문제에도 해당되었다.
Oded Goldreich, Silvio Micali 및 Avi Wigderson은 이를 한 걸음 더 나아가 해독 불가능한 암호화가 존재한다고 가정하면 3가지 색상으로 NP-완전 그래프 컬러링 문제에 대한 제로 지식 증명 시스템을 만들 수 있음을 보여 줍니다.NP의 모든 문제는 이 문제로 효율적으로 축소될 수 있기 때문에 이 가정 하에서 NP의 모든 문제는 제로 지식 증명을 [25]가지고 있음을 의미합니다.이러한 가정을 하는 이유는 위의 예와 같이 프로토콜에 암호화가 필요하기 때문입니다.깨지지 않는 암호화의 존재에 대해 일반적으로 언급되는 충분한 조건은 단방향 함수의 존재이지만, 어떤 물리적 수단도 그것을 달성할 수 있다고 생각할 수 있다.
여기에 그래프 동형 문제의 보완물인 그래프 비동형성 문제가 제로 지식 증명을 가지고 있다는 것도 보여주었다.이 문제는 co-NP에 있지만 현재 NP 또는 기타 실용적인 클래스에는 없는 것으로 알려져 있습니다.보다 일반적으로, Russell Impaglizzo와 Moti Yung, 그리고 Ben-Or-Or 등은 단방향 함수 또는 깨지지 않는 암호화를 가정할 때, IP = PSPACE의 모든 문제에 대한 제로 지식 증명, 즉 대화형 증명 시스템으로 입증될 수 있는 모든 것이 제로 [26][27]지식 증명될 수 있음을 보여준다.
불필요한 추측을 하는 것을 좋아하지 않는 많은 이론가들은 일방향 함수의 필요성을 없애는 방법을 찾았다.이를 위한 한 가지 방법은 멀티프로버 인터랙티브 프루프 시스템(인터랙티브 프루프 시스템 참조)을 사용하는 것으로, 검증자는 현혹되는 것을 피하기 위해 프로버를 격리하여 "교차 검사"할 수 있습니다.어떠한 난해성 가정도 없이, NP의 모든 언어는 그러한 [28]시스템에서 제로 지식 증명을 가지고 있다는 것을 보여줄 수 있다.
여러 개의 프로토콜을 동시에 실행할 수 있는 인터넷과 같은 환경에서는 제로 지식 증명을 구축하는 것이 더 어려운 것으로 나타났습니다.동시 제로 지식 증명을 조사하는 연구 라인은 Dwork, Naor 및 Sahai의 [29]연구에 의해 시작되었다.이러한 측면에서 한 가지 특별한 발전은 목격자를 구별할 수 없는 입증 프로토콜의 개발이었다.증인 식별 불능의 속성은 영지식의 특성과 관련이 있지만, 증인 식별 불능 프로토콜은 동시 [30]실행의 동일한 문제를 겪지 않는다.
영지식 증명의 또 다른 변형은 비인터랙티브 영지식 증명이다.Blum, Feldman 및 Micali는 Prover와 Verifier 간에 공유되는 공통 랜덤 문자열이 상호 [2][3]작용 없이 계산 영지식을 달성하기에 충분하다는 것을 보여주었다.
제로 지식 프루프 프로토콜
가장 일반적인 대화형 또는 비대화형 제로 지식 증명(zk-SNAK) 프로토콜은 다음 4가지 범주로 크게 분류할 수 있습니다.간결한 비인터랙티브 ARGments of Knowledge(SNARK), 스케일러블 투과적 지식(STARK), 검증 가능한 다항식 위임(VPD) 및 간결한 비인터랙티브 ARGments(SNARG).제로 지식 증명 프로토콜과 라이브러리의 목록은 투명성, 보편성, 그럴듯한 포스트 퀀텀 보안 [31]및 프로그래밍 패러다임에 기초한 비교와 함께 아래에 제공됩니다.투명 프로토콜은 신뢰할 수 있는 설정이 필요하지 않고 공개 임의성을 사용하는 프로토콜입니다.범용 프로토콜은 각 회로에 대해 별도의 신뢰할 수 있는 설정이 필요하지 않은 프로토콜입니다.마지막으로, 타당한 사후 양자 프로토콜은 양자 알고리즘과 관련된 알려진 공격에 민감하지 않은 프로토콜입니다.
ZKP 시스템 | 발행년도 | 프로토콜 | 투과적 | 유니버설 | 신뢰할 수 있는 Quantum 후 보안 | 프로그래밍 패러다임 |
---|---|---|---|---|---|---|
피노키오[32] | 2013 | zk-SNARK | 아니요. | 아니요. | 아니요. | 절차 |
제페토[33] | 2015 | zk-SNARK | 아니요. | 아니요. | 아니요. | 절차 |
타이니램[34] | 2013 | zk-SNARK | 아니요. | 아니요. | 아니요. | 절차 |
뷔페[35] | 2015 | zk-SNARK | 아니요. | 아니요. | 아니요. | 절차 |
ZoKrates[36] | 2018 | zk-SNARK | 아니요. | 아니요. | 아니요. | 절차 |
xJsnark[37] | 2018 | zk-SNARK | 아니요. | 아니요. | 아니요. | 절차 |
vRAM[38] | 2018 | zk-SNARG | 아니요. | 네. | 아니요. | 어셈블리 |
vnTinyRAM[39] | 2014 | zk-SNARK | 아니요. | 네. | 아니요. | 절차 |
신기루[40] | 2020 | zk-SNARK | 아니요. | 네. | 아니요. | 산술 회로 |
소닉[41] | 2019 | zk-SNARK | 아니요. | 네. | 아니요. | 산술 회로 |
마린[42] | 2020 | zk-SNARK | 아니요. | 네. | 아니요. | 산술 회로 |
플라스틱[43] | 2019 | zk-SNARK | 아니요. | 네. | 아니요. | 산술 회로 |
슈퍼소닉[44] | 2020 | zk-SNARK | 네. | 네. | 아니요. | 산술 회로 |
방탄[45] | 2018 | 방탄 | 네. | 네. | 아니요. | 산술 회로 |
히락스[46] | 2018 | zk-SNARK | 네. | 네. | 아니요. | 산술 회로 |
헤일로[47] | 2019 | zk-SNARK | 네. | 네. | 아니요. | 산술 회로 |
처녀자리[48] | 2020 | zk-SNARK | 네. | 네. | 네. | 산술 회로 |
리게로[49] | 2017 | zk-SNARK | 네. | 네. | 네. | 산술 회로 |
오로라[50] | 2019 | zk-SNARK | 네. | 네. | 네. | 산술 회로 |
zk-STARK[51] | 2019 | zk-STARK | 네. | 네. | 네. | 어셈블리 |
질치[31][52] | 2021 | zk-STARK | 네. | 네. | 네. | 객체 지향 |
「 」를 참조해 주세요.
레퍼런스
- ^ a b "What is a zero-knowledge proof and why is it useful?". 16 November 2017.
- ^ a b Blum, Manuel; Feldman, Paul; Micali, Silvio (1988). Non-Interactive Zero-Knowledge and Its Applications (PDF). Proceedings of the Twentieth Annual ACM Symposium on Theory of Computing (STOC 1988). pp. 103–112. doi:10.1145/62212.62222. ISBN 978-0897912648. S2CID 7282320. Archived (PDF) from the original on December 14, 2018.
- ^ a b Wu, Huixin; Wang, Feng (2014). "A Survey of Noninteractive Zero Knowledge Proof System and Its Applications". The Scientific World Journal. 2014: 560484. doi:10.1155/2014/560484. PMC 4032740. PMID 24883407.
- ^ Quisquater, Jean-Jacques; Guillou, Louis C.; Berson, Thomas A. (1990). How to Explain Zero-Knowledge Protocols to Your Children (PDF). Advances in Cryptology – CRYPTO '89: Proceedings. Lecture Notes in Computer Science. Vol. 435. pp. 628–631. doi:10.1007/0-387-34805-0_60. ISBN 978-0-387-97317-3.
- ^ Chalkias, Konstantinos. "Demonstrate how Zero-Knowledge Proofs work without using maths". CordaCon 2017. Retrieved 2017-09-13.
- ^ Feige, Uriel; Fiat, Amos; Shamir, Adi (1988-06-01). "Zero-knowledge proofs of identity". Journal of Cryptology. 1 (2): 77–94. doi:10.1007/BF02351717. ISSN 1432-1378. S2CID 2950602.
- ^ Chaum, David; Evertse, Jan-Hendrik; van de Graaf, Jeroen (1987). An Improved Protocol for Demonstrating Possession of Discrete Logarithms and Some Generalizations. Advances in Cryptology – EuroCrypt '87: Proceedings. Lecture Notes in Computer Science. Vol. 304. pp. 127–141. doi:10.1007/3-540-39118-5_13. ISBN 978-3-540-19102-5.
- ^ Blum, Manuel (1986). "How to Prove a Theorem So No One Else Can Claim It". ICM Proceedings: 1444–1451. CiteSeerX 10.1.1.469.9048.
- ^ Sahai, Amit; Vadhan, Salil (1 March 2003). "A complete problem for statistical zero knowledge" (PDF). Journal of the ACM. 50 (2): 196–249. CiteSeerX 10.1.1.4.3957. doi:10.1145/636865.636868. S2CID 218593855. Archived (PDF) from the original on 2015-06-25.
- ^ a b Groth, J; Kohlweiss, M (14 April 2015). "One-Out-of-Many Proofs: Or How to Leak a Secret and Spend a Coin". Annual International Conference on the Theory and Applications of Cryptographic Techniques. Lecture Notes in Computer Science. Berlin, Heidelberg: EUROCRYPT 2015. 9057: 253–280. doi:10.1007/978-3-662-46803-6_9. hdl:20.500.11820/f6ec5d8f-cfda-4f56-9bd0-d9222b8d9a43. ISBN 978-3-662-46802-9. S2CID 16708805.
- ^ "Introducing Zero-Knowledge Proofs for Private Web attestation with Cross/Multi-Vendor Hardware". The Cloudflare Blog. 2021-08-12. Retrieved 2021-08-18.
- ^ a b Goldwasser, S.; Micali, S.; Rackoff, C. (1989), "The knowledge complexity of interactive proof systems" (PDF), SIAM Journal on Computing, 18 (1): 186–208, doi:10.1137/0218012, ISSN 1095-7111
- ^ Abascal, Jackson; Faghihi Sereshgi, Mohammad Hossein; Hazay, Carmit; Ishai, Yuval; Venkitasubramaniam, Muthuramakrishnan (2020-10-30). "Is the Classical GMW Paradigm Practical? The Case of Non-Interactive Actively Secure 2PC". Proceedings of the 2020 ACM SIGSAC Conference on Computer and Communications Security. CCS '20. Virtual Event, USA: Association for Computing Machinery: 1591–1605. doi:10.1145/3372297.3423366. ISBN 978-1-4503-7089-9. S2CID 226228208.
- ^ "PPPL and Princeton demonstrate novel technique that may have applicability to future nuclear disarmament talks - Princeton Plasma Physics Lab". www.pppl.gov. Archived from the original on 2017-07-03.
- ^ a b c Hellwig, Daniel; Karlic, Goran; Huchzermeier, Arnd (3 May 2020). "Privacy and Anonymity". Build your own blockchain - A practical guide to distributed ledger technology. SpringerLink. p. 112. doi:10.1007/978-3-030-40142-9_5. ISBN 9783030401429. S2CID 219058406. Retrieved 3 December 2020.
- ^ Hurst, Samantha (28 October 2020). "Zcoin Announces Rebranding to New Name & Ticker "Firo"". Crowdfund Insider. Archived from the original on 30 October 2020. Retrieved 4 November 2020.
- ^ Bonneau, J; Miller, A; Clark, J; Narayanan, A (2015). "SoK: Research Perspectives and Challenges for Bitcoin and Cryptocurrencies". 2015 IEEE Symposium on Security and Privacy. San Jose, California: 104–121. doi:10.1109/SP.2015.14. ISBN 978-1-4673-6949-7. S2CID 549362.
- ^ Ben-Sasson, Eli; Chiesa, Alessandro; Garman, Christina; Green, Matthew; Miers, Ian; Tromer, Eran; Virza, Madars (18 May 2014). "Zerocash: Decentralized Anonymous Payments from Bitcoin" (PDF). IEEE. Retrieved 26 January 2016.
- ^ Orcutt, Mike. "A mind-bending cryptographic trick promises to take blockchains mainstream". MIT Technology Review. Retrieved 2017-12-18.
- ^ Bünz, B; Bootle, D; Boneh, A (2018). "Bulletproofs: Short Proofs for Confidential Transactions and More". IEEE Symposium on Security and Privacy. San Francisco, California: 315–334. doi:10.1109/SP.2018.00020. ISBN 978-1-5386-4353-2. S2CID 3337741. Retrieved 3 December 2020.
- ^ Odendaal, Hansie; Sharrock, Cayle; Heerden, SW. "Bulletproofs and Mimblewimble". Tari Labs University. Archived from the original on 29 September 2020. Retrieved 3 December 2020.
- ^ Andrew, Munro (30 July 2019). "Zcoin cryptocurrency introduces zero knowledge proofs with no trusted set-up". Finder Australia. Archived from the original on 30 July 2019. Retrieved 30 July 2019.
- ^ Aram, Jivanyan (7 April 2019). "Lelantus: Towards Confidentiality and Anonymity of Blockchain Transactions from Standard Assumptions". Cryptology ePrint Archive (Report 373). Retrieved 14 April 2019.
- ^ Goldreich, Oded (1985). "A zero-knowledge proof that a two-prime moduli is not a Blum integer". Unpublished Manuscript.
- ^ Goldreich, Oded; Micali, Silvio; Wigderson, Avi (1991). "Proofs that yield nothing but their validity". Journal of the ACM. 38 (3): 690–728. CiteSeerX 10.1.1.420.1478. doi:10.1145/116825.116852. S2CID 2389804.
- ^ Russell Impaglizzo, Moti Yung: 최소 지식 직접 계산.암호 1987: 40-51
- ^ Ben-Or, Michael; Goldreich, Oded; Goldwasser, Shafi; Hastad, Johan; Kilian, Joe; Micali, Silvio; Rogaway, Phillip (1990). "Everything provable is provable in zero-knowledge". In Goldwasser, S. (ed.). Advances in Cryptology—CRYPTO '88. Lecture Notes in Computer Science. Vol. 403. Springer-Verlag. pp. 37–56.
- ^ Ben-or, M.; Goldwasser, Shafi; Kilian, J.; Wigderson, A. (1988). "Multi prover interactive proofs: How to remove intractability assumptions" (PDF). Proceedings of the 20th ACM Symposium on Theory of Computing: 113–121.
- ^ Dwork, Cynthia; Naor, Moni; Sahai, Amit (2004). "Concurrent Zero Knowledge". Journal of the ACM. 51 (6): 851–898. CiteSeerX 10.1.1.43.716. doi:10.1145/1039488.1039489. S2CID 52827731.
- ^ Feige, Uriel; Shamir, Adi (1990). Witness Indistinguishable and Witness Hiding Protocols. Proceedings of the Twenty-Second Annual ACM Symposium on Theory of Computing (STOC). pp. 416–426. CiteSeerX 10.1.1.73.3911. doi:10.1145/100216.100272. ISBN 978-0897913614. S2CID 11146395.
- ^ a b Mouris, Dimitris; Tsoutsos, Nektarios Georgios (2021). "Zilch: A Framework for Deploying Transparent Zero-Knowledge Proofs". IEEE Transactions on Information Forensics and Security. 16: 3269–3284. doi:10.1109/TIFS.2021.3074869. ISSN 1556-6021. S2CID 222069813.
- ^ Parno, B.; Howell, J.; Gentry, C.; Raykova, M. (May 2013). "Pinocchio: Nearly Practical Verifiable Computation". 2013 IEEE Symposium on Security and Privacy: 238–252. doi:10.1109/SP.2013.47. ISBN 978-0-7695-4977-4. S2CID 1155080.
- ^ Costello, Craig; Fournet, Cedric; Howell, Jon; Kohlweiss, Markulf; Kreuter, Benjamin; Naehrig, Michael; Parno, Bryan; Zahur, Samee (May 2015). "Geppetto: Versatile Verifiable Computation". 2015 IEEE Symposium on Security and Privacy: 253–270. doi:10.1109/SP.2015.23. hdl:20.500.11820/37920e55-65aa-4a42-b678-ef5902a5dd45. ISBN 978-1-4673-6949-7. S2CID 3343426.
- ^ Ben-Sasson, Eli; Chiesa, Alessandro; Genkin, Daniel; Tromer, Eran; Virza, Madars (2013). "SNARKs for C: Verifying Program Executions Succinctly and in Zero Knowledge". Advances in Cryptology – CRYPTO 2013. Lecture Notes in Computer Science. 8043: 90–108. doi:10.1007/978-3-642-40084-1_6. hdl:1721.1/87953. ISBN 978-3-642-40083-4.
- ^ Wahby, Riad S.; Setty, Srinath; Ren, Zuocheng; Blumberg, Andrew J.; Walfish, Michael (2015). "Efficient RAM and Control Flow in Verifiable Outsourced Computation". Proceedings 2015 Network and Distributed System Security Symposium. doi:10.14722/ndss.2015.23097. ISBN 978-1-891562-38-9.
- ^ Eberhardt, Jacob; Tai, Stefan (July 2018). "ZoKrates - Scalable Privacy-Preserving Off-Chain Computations". 2018 IEEE International Conference on Internet of Things (IThings) and IEEE Green Computing and Communications (GreenCom) and IEEE Cyber, Physical and Social Computing (CPSCom) and IEEE Smart Data (SmartData): 1084–1091. doi:10.1109/Cybermatics_2018.2018.00199. ISBN 978-1-5386-7975-3. S2CID 49473237.
- ^ Kosba, Ahmed; Papamanthou, Charalampos; Shi, Elaine (May 2018). "xJsnark: A Framework for Efficient Verifiable Computation". 2018 IEEE Symposium on Security and Privacy (SP): 944–961. doi:10.1109/SP.2018.00018. ISBN 978-1-5386-4353-2.
- ^ Zhang, Yupeng; Genkin, Daniel; Katz, Jonathan; Papadopoulos, Dimitrios; Papamanthou, Charalampos (May 2018). "vRAM: Faster Verifiable RAM with Program-Independent Preprocessing". 2018 IEEE Symposium on Security and Privacy (SP): 908–925. doi:10.1109/SP.2018.00013. ISBN 978-1-5386-4353-2.
- ^ Ben-Sasson, Eli; Chiesa, Alessandro; Tromer, Eran; Virza, Madars (20 August 2014). "Succinct non-interactive zero knowledge for a von Neumann architecture". Proceedings of the 23rd USENIX Conference on Security Symposium. USENIX Association: 781–796. ISBN 9781931971157.
- ^ Kosba, Ahmed; Papadopoulos, Dimitrios; Papamanthou, Charalampos; Song, Dawn (2020). "MIRAGE: Succinct Arguments for Randomized Algorithms with Applications to Universal zk-SNARKs". Cryptology ePrint Archive.
- ^ Maller, Mary; Bowe, Sean; Kohlweiss, Markulf; Meiklejohn, Sarah (6 November 2019). "Sonic: Zero-Knowledge SNARKs from Linear-Size Universal and Updatable Structured Reference Strings". Proceedings of the 2019 ACM SIGSAC Conference on Computer and Communications Security. Association for Computing Machinery: 2111–2128. doi:10.1145/3319535.3339817. hdl:20.500.11820/739b94f1-54f0-4ec3-9644-3c95eea1e8f5. S2CID 242772913.
- ^ Chiesa, Alessandro; Hu, Yuncong; Maller, Mary; Mishra, Pratyush; Vesely, Noah; Ward, Nicholas (2020). "Marlin: Preprocessing zkSNARKs with Universal and Updatable SRS". Advances in Cryptology – EUROCRYPT 2020. Lecture Notes in Computer Science. Springer International Publishing. 12105: 738–768. doi:10.1007/978-3-030-45721-1_26. ISBN 978-3-030-45720-4. S2CID 204772154.
- ^ Gabizon, Ariel; Williamson, Zachary J.; Ciobotaru, Oana (2019). "PLONK: Permutations over Lagrange-bases for Oecumenical Noninteractive arguments of Knowledge". Cryptology ePrint Archive.
- ^ Bünz, Benedikt; Fisch, Ben; Szepieniec, Alan (2020). "Transparent SNARKs from DARK Compilers". Advances in Cryptology – EUROCRYPT 2020. Lecture Notes in Computer Science. Springer International Publishing. 12105: 677–706. doi:10.1007/978-3-030-45721-1_24. ISBN 978-3-030-45720-4. S2CID 204892714.
- ^ Bunz, Benedikt; Bootle, Jonathan; Boneh, Dan; Poelstra, Andrew; Wuille, Pieter; Maxwell, Greg (May 2018). "Bulletproofs: Short Proofs for Confidential Transactions and More". 2018 IEEE Symposium on Security and Privacy (SP): 315–334. doi:10.1109/SP.2018.00020. ISBN 978-1-5386-4353-2.
- ^ Wahby, Riad S.; Tzialla, Ioanna; Shelat, Abhi; Thaler, Justin; Walfish, Michael (May 2018). "Doubly-Efficient zkSNARKs Without Trusted Setup". 2018 IEEE Symposium on Security and Privacy (SP): 926–943. doi:10.1109/SP.2018.00060. ISBN 978-1-5386-4353-2.
- ^ Bowe, Sean; Grigg, Jack; Hopwood, Daira (2019). "Recursive Proof Composition without a Trusted Setup". Cryptology ePrint Archive.
- ^ Zhang, Jiaheng; Xie, Tiancheng; Zhang, Yupeng; Song, Dawn (May 2020). "Transparent Polynomial Delegation and Its Applications to Zero Knowledge Proof". 2020 IEEE Symposium on Security and Privacy (SP): 859–876. doi:10.1109/SP40000.2020.00052. ISBN 978-1-7281-3497-0.
- ^ Ames, Scott; Hazay, Carmit; Ishai, Yuval; Venkitasubramaniam, Muthuramakrishnan (30 October 2017). "Ligero: Lightweight Sublinear Arguments Without a Trusted Setup". Proceedings of the 2017 ACM SIGSAC Conference on Computer and Communications Security. Association for Computing Machinery: 2087–2104. doi:10.1145/3133956.3134104. ISBN 9781450349468. S2CID 5348527.
- ^ Ben-Sasson, Eli; Chiesa, Alessandro; Riabzev, Michael; Spooner, Nicholas; Virza, Madars; Ward, Nicholas P. (2019). "Aurora: Transparent Succinct Arguments for R1CS". Advances in Cryptology – EUROCRYPT 2019. Lecture Notes in Computer Science. Springer International Publishing. 11476: 103–128. doi:10.1007/978-3-030-17653-2_4. ISBN 978-3-030-17652-5. S2CID 52832327.
- ^ Ben-Sasson, Eli; Bentov, Iddo; Horesh, Yinon; Riabzev, Michael (2019). "Scalable Zero Knowledge with No Trusted Setup". Advances in Cryptology – CRYPTO 2019. Lecture Notes in Computer Science. Springer International Publishing. 11694: 701–732. doi:10.1007/978-3-030-26954-8_23. ISBN 978-3-030-26953-1. S2CID 199501907.
- ^ "Transparent Zero-Knowledge Proofs With Zilch". Medium. 2021.