0
Schnorr 식별 프로토콜을 구현 중입니다. 본인은 "적용된 암호화 핸드북"예제 10.37을 가지고 있습니다. 모든 것이 한 가지없이 작동합니다.BigInteger (ae + r) mod q 계산 방법
(p = 48731, q = 433, B = 11444) - public params.
v = 7355 - public Key.
a = 357 - privateKey.
t = 8 - identification certanity,
프로토콜 동작
그래서A choses r = 274 and sends to B x = B^r mod p = 37123.
B sends to A e (1 <=e <= 2^t), e = 129.
A sends to B y = (ae + r) mod q. - this doesn't work. should be 255.
B comutes z = ((B^y)(V^e)) mod p. if z == x then identity is ok.
, 난 (AE + R) 개조 Q,해야 255 문제가 나는가 429 번호 :
BigInteger ae = a.multiply(e);
ae = ae.mod(q);
y = ae.add(r);
y = y.mod(q);
결과 Y = 429 계산할 경우
BigInteger ae = a.multiply(e);
y = ae.add(r);
y = y.mod(q);
결과는 같습니다.
도와주세요. 감사합니다. .
255를 제공해야한다는 것을 어떻게 알 수 있습니까? 나는 계산기로 계산을 실행했고 당신이 올린 값으로 429를 얻는다. 어떻게 그것이 255 일 수 있습니까? – Tudor