1 / 13

Zero Knowledge Proofs

Zero Knowledge Proofs. Zero Knowledge Proof (ZKP). Alice 는 비밀에 대한 어떤 정보도 밝히지 않으면서 자신이 비밀을 갖고 있다는 것을 증명하기를 원한다 . Bob 은 Alice 가 비밀을 알고 있다는 것을 증명해야 한다 . 자신은 비밀에 대한 어떤 정보를 얻지 못하더라도 . 과정은 확률에 기반을 두고 있다 . Bob 은 Alice 가 비밀을 알고 있을 확률이 아주 높다는 것으로 증명할 수 있다 .

alexia
Download Presentation

Zero Knowledge Proofs

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Zero Knowledge Proofs Chapter 9 Simple Authentication protocols

  2. Zero Knowledge Proof (ZKP) • Alice는 비밀에 대한 어떤 정보도 밝히지 않으면서 자신이 비밀을 갖고 있다는 것을 증명하기를 원한다. • Bob은 Alice가 비밀을 알고 있다는 것을 증명해야 한다. • 자신은 비밀에 대한 어떤 정보를 얻지 못하더라도. • 과정은 확률에 기반을 두고 있다. • Bob은 Alice가 비밀을 알고 있을 확률이 아주 높다는 것으로 증명할 수 있다. • 대화식 증명 시스템(interactive proof system) Chapter 9 Simple Authentication protocols

  3. Bob의 동굴 • Alice는 R과 S 사이의 문을 열수 있는 비밀 주문을 알고 있다고 주장한다. (“열려라 참깨!”) • 과연 Alice는 Bob에게 비밀 주문을 밝히지 않고 자신이 이 비밀을 알고 있다고 확신시킬 수 있을까? P Q R S Chapter 9 Simple Authentication protocols

  4. Bob’s Cave • Bob: “Alice는 S쪽으로 나와라!” P • Alice (조용히): “열려라 참깨” Q • 만약 Alice가 비밀을 모른다면, R S • Alic가 운 좋게 맞는 쪽으로 나올 확률은 ½이다. • 만약 Bob이 이것을 n번 계속했을 때, Alice가 운 좋게 매번 맞는 쪽으로 나올 확률은1/2n이다. • 따라서 Bob은 매번 Alice가 맞는 쪽으로 나왔다면 Alice는 문을 여는 비밀을 알고 있다고 확신할 수 있다.(매우 높은 확률을 가지므로) Chapter 9 Simple Authentication protocols

  5. Fiat-Shamir Protocol • 동굴에 기반을 둔 프로토콜은 매우 불편하다. • 동굴 없이 동일한 결과를 얻을 수 있을까? • modulo N의 제곱근을 찾는 것은 힘들다고 알려져 있다. • 소인수 분해와 비슷: N = pq, p와 q는 소수 • Alice는 비밀값S를 갖고 있다. • N과 v (= S2 mod N)은 공개됨, S는 비밀값 • v를 알더라도 S는 찾을 수 없다. • Alice는 S에 대한 어떤 정보도 제공하지 않으면서 Bob에게 자신이 S를 갖고 있다는 것을 확신시켜야 한다. Chapter 9 Simple Authentication protocols

  6. Fiat-Shamir • 공개:N과 v (= S2 mod N) • Alice는 랜덤값 r을 선택한다. • Bob은 e를 선택한다. e  {0,1} • Bob은 다음을 검증한다. • y2 = r2S2e = r2(S2)e = xve mod N 비밀값 S 랜덤값 r x = r2 mod N e  {0,1} y = rSe mod N Bob Alice Chapter 9 Simple Authentication protocols

  7. Fiat-Shamir: e = 1 • 공개:N과 v (= S2 mod N) • Alice는 랜덤값 r을 선택한다. • 만약 Bob이 e =1을 선택했다면, • Bob은 다음의 식을 검증한다. • y2 = xv mod N • 이 경우 Alice는 S를 알고 있음이 틀림없다. 비밀값 S 랜덤값 r x = r2 mod N e = 1 y = rS mod N Alice Bob Chapter 9 Simple Authentication protocols

  8. Fiat-Shamir: e = 0 • 공개:N과 v (= S2 mod N) • Alice는 랜덤값 r을 선택한다. • 만약 Bob이 e = 0를 선택했다면, • Bob은 다음의 식을 검증해야 한다. • y2 = x mod N • 이 경우 Alice는 S를 알고 있을 필요는 없다. 비밀값 S 랜덤값 r x = r2 mod N e = 0 y = r mod N Alice Bob Chapter 9 Simple Authentication protocols

  9. Fiat-Shamir • 공개:N과 v (= S2 mod N) • 비밀: Alice는 S를 안다. • Alice의 약속(commit) • 랜덤값r을 선택하고x (= r2 mod N)을 보낸다. • Bob의 도전(challenge) • e  {0,1}를 Alice에게 보낸다. • Alice의 응답(response) • Alice는y (= rSe mod N)를 Bob에게 보낸다. • Bob의 확인(check) • y2 = xve mod N Chapter 9 Simple Authentication protocols

  10. Fiat-Shamir는 맞는가? • 수학은 맞는다. • 공개: v = S2 • Alice to Bob:x = r2과 y = rSe • Bob의 검증: y2 = xve mod N • Trudy는 Bob이 자신이 Alice라고 속일 수 없을까? • 만약 Trudy가e = 0를 예측한다면, 메시지1에 x = r2을, 메시지3에 y = r을 보낸다. (프로토콜에 따라서) • 만약 e = 1을 예측한다면, 메시지1에 x = r2v1을 보내고 메시지3에 y = r을 보낸다. • 만약에 Bob이e  {0,1}의 값을 랜덤으로 선택한다면, Trudy가 Bob을 속일 수 있을 확률은½이다. Chapter 9 Simple Authentication protocols

  11. Fiat-Shamir Facts • Trudy는 ½의 확률로 Bob을 속일 수 있다. • 하지만 n번 반복했을 때 Trudy가 Bob을 속일 확률은 1/2n이다. • Bob의 동굴과 같다! • Bob의 선택, e  {0,1}는 예측할 수 없어야 한다. • Alice는 매번 새로운 r을사용해야 한다. 그렇지 않으면, • If e = 0, Alice는 r전송 (메시지 3) • If e = 1, Alice는 rS전송 (메시지 3) • r과rS에서 S를 찾을 수 있다. Chapter 9 Simple Authentication protocols

  12. 현실 세계에서의 ZKP • 공개키는 사용자를 밝히게 된다. • 공개키를 전송할 때 익명성이 보장되지 않는다. • ZKP는 자신의 존재를 드러내지 않고 인증을 할 수 있는 방법을 제공한다. • ZKP는Microsoft’s Next Generation Secure Computing Base (NGSCB)에서 사용 • ZKP는 단지 수학자들의 재미와 게임 만은 아니다! Chapter 9 Simple Authentication protocols

  13. 최적의 인증 프로토콜은? • 여러가지 요인에 달려있다… • 적용하는 응용의 성격 • 허용할 수 있는 지연 시간 • 허용할 수 있는 비용 • 사용할 수 있는 암호화 알고리즘 • 공개키, 대칭키, 해쉬 함수 • 상호 인증이 필요한가? • 세션키가 필요한가? • PFS는? • 익명성은?, 등등. Chapter 9 Simple Authentication protocols

More Related