Feige-Fiat-Shamir가 부호 비트가없는 제로 지식이 아닌 이유는 무엇입니까?


12

에서 HAC (10.4.2)의 10 장 , 우리는 제곱근이 요인 어려운 복합 모듈로 추출 (추정) 어려움을 사용하여 영 지식 증명을 기반으로 잘 알려진 Feige - 피아트 - 샤미르 식별 프로토콜을 참조하십시오. 나는 그 계획을 내 자신의 말로 줄 것이다.

더 간단한 체계로 시작합시다 : 은 팩토링이 난해 할 정도로 충분히 큰 크기 의 Blum 정수 ( n = p qpq 는 각각 3 mod 4)입니다. 이후 , n은 블럼 정수의 요소 절반 Z * N 이 야 코비 기호 +1, 다른 절반이 -1. +1 요소의 경우, 절반은 제곱근을 가지며, 제곱근을 갖는 각 요소는 4 개를 가지며, 정확히 하나는 자체가 정사각형입니다.nn=pqpqnZn

이제 Peggy는 Z * n 에서 임의의 요소 를 선택하고 v = s 2로 설정합니다 . 그런 다음 v 를 Victor 에게 보냅니다 . 다음은 프로토콜 : 빅터는 페기의 제곱근을 알고 있는지 확인하고자 과 페기에 대해 아무것도 누설하지 않고 그에게 그것을 증명하고자하는 그녀가 그러한 알고있는 사실을 넘어 .sZnv=s2vvss

  1. Peggy 는 Z * n 에서 임의의 을 선택하고 r 2 를 Victor 에게 보냅니다 .rZnr2
  2. Victor는 아마도 또는 b = 1 을 Peggy로 다시 보냅니다 .b=0b=1
  3. Peggy는 를 Victor 에게 보냅니다 .rsb

Victor는 Peggy가받는 것을 제곱하고 올바른 결과와 비교하여 정답을 보냈 음을 확인할 수 있습니다. 물론 Peggy가 운이 좋은 추측 일 가능성을 줄이기 위해이 상호 작용을 반복합니다. 이 프로토콜은 ZK라고 주장합니다. 다양한 장소에서 증거를 찾을 수 있습니다 (예 : Boaz Barak 강의 노트 ).

ks1skt1=±1,tk=±1v1=t1s12,,vk=tksk2vi

  1. Peggy 는 Z * n 에서 임의의 r 을 선택하고 r 2 를 Victor 에게 보냅니다 rZnr2
  2. kbi{0,1}
  3. rΠi=1ksibi

ti

그녀가 표지판을 생략하면 Peggy에서 아무것도 추출하는 공격을 찾을 수 없습니다.

답변:


8

FFS (Feige-Fiat-Shamir) 식별 프로토콜은 PoK ( Proof of Knowledge )이며, 증명 (Peggy)은 검증 자 (Victor)에 대한 주어진 입력의 제곱근을 지식으로 증명합니다.

FFS 는 언어 구성원 자격 증명과 PoK를 구별하려고합니다. Peggy는 입력에 일부 속성이 있음을 증명합니다 (보다 공식적으로 입력은 특정 언어에 속함).

음수 부호를 사용하지 않으면 입력 값에 제곱근이 없을 수 있습니다. 예를 들어, 숫자 20에는 제곱근 mod 21이 없습니다. 제곱과 비 제곱을 구별하는 것은 유명한 어려운 문제 이므로 FFS는 입력을 일부 제곱의 플러스 또는 마이너스로 허용하여이를 피합니다. 에서 자신의 단어 (약간 변경) :

vivi +1modnsivi

하여 지식의 입력 제한 영 지식 증명 , 그들은 그 언어 회원 증명서에 대응하는 사소한 ZK POK 의미; 즉, V는 (자코비 기호를 확인함으로써) 입력이 어떤 사각형의 플러스 또는 마이너스인지 스스로 결정할 수 있습니다.


답변 주셔서 감사합니다,하지만 난 여전히 따르지 않습니다 : 징후없이 Jacobi 기호는 +1입니다. 표시가있는 Jacobi 기호는 +1입니다. "음수 부호를 사용하지 않으면 입력 값에 제곱근이 없을 수 있습니다." 어떻게 가능합니까? 검증 자의 입력은 (정직한 프로 버를 가정 할 때) 항상 제곱근을 갖는 제곱의 목록입니다.
Fixee

두 번째 질문 : 당신은 그 증거가 증거를 통과하기 위해 존재한다고 말하는가? 아니면 생략하면 실제 공격이 있습니까?
Fixee

vivisivi
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.