링크모음 링크세상
링크세상 링크모음 링크 애니 웹툰 링크 드라마 영화 링크 세상의모든링크

schnorr 서명 – x 전용 키에 대한 조정은 어떻게 작동하며 제가 제시한 예에서 좋지 않은 점은 무엇입니까?

Schnorr 디지털 서명 체계의 경우 일반적인 키 조정은 어떻게 작동합니까?

모든 예에서 저는 포인트 곱셈과 포인트 추가를 위해 온라인 도구를 사용하고 있습니다. (편하신 분들은 이용하시는 걸 추천드려요)

다음 곡선을 고려해 보겠습니다(secp256k1과 동일하지만 크기가 더 작습니다. Inf):

a = 2
b = 4
p = 11
G = (2, 4)

또한 두 개의 개인 키와 그에 상응하는 공개 키를 고려해 보겠습니다.

PrivK1 = 7
PrivK2 = 10
PubK1 = 7 * (2, 4) = (3, 9)
PubK2 = 10 * (2, 4) = (3, 2)

결국, 조정이 다음과 같다고 생각해 봅시다. 3 (TW).

ECDSA에서 이 주요 조정은 예상대로 작동하며 다음과 같습니다.

For the first private key (7) - public key (3, 9) pair:
(1) From the private key side:
PrivK1' = PrivK1 + TW = 7 + 3
PrviK1' = 10
PubK1' = PrivK1' * G = 10 * (2, 4)
PubK1' = (3, 2)
(2) From the public key side:
PubK1' = PubK1 + G + G + G = (3, 9) + (2, 4) + (2, 4) + (2, 4)
PubK1' = (3, 2)

(1) == (2)

For the second private key (10) - public key (3, 2) pair:
(1) From the private key side:
PrivK1' = PrivK1 + TW = 10 + 3
PrviK1' = 13
PubK1' = PrivK1' * G = 13 * (2, 4)
PubK1' = (7, 3)
(2) From the public key side:
PubK1' = PubK1 + G + G + G = (3, 2) + (2, 4) + (2, 4) + (2, 4)
PubK1' = (7, 3)

(1) == (2)

개인 키와 공개 키 쌍 모두에 대해 일치하는 항목을 얻었습니다.

그러나 Schnorr의 경우 개인 키가 ODD Y 좌표를 생성하면 일치하지 않습니다. 첫 번째 개인 키 – 공개 키 쌍의 경우가 이에 해당합니다. 다음을 살펴보세요.

For the first private key (7) - public key (3, 2) pair:
NOTE: Here the public key is not (3, 9) but (3, 2) since we take always EVEN Y coo
(1) From the private key side:
PrivK1' = PrivK1 + TW = 7 + 3
PrviK1' = 10
PubK1' = PrivK1' * G = 10 * (2, 4)
PubK1' = (3, 2)
(2) From the public key side:
PubK1' = PubK1 + G + G + G = (3, 2) + (2, 4) + (2, 4) + (2, 4)
PubK1' = (7, 3)

(1) != (2)

For the second private key (10) - public key (3, 2) pair:
(1) From the private key side:
PrivK1' = PrivK1 + TW = 10 + 3
PrviK1' = 13
PubK1' = PrivK1' * G = 13 * (2, 4)
PubK1' = (7, 3)
(2) From the public key side:
PubK1' = PubK1 + G + G + G = (3, 2) + (2, 4) + (2, 4) + (2, 4)
PubK1' = (7, 3)

(1) == (2)

따라서 조정 후의 개인 키는 홀수 Y 좌표의 경우 조정된 공개 키와 일치하지 않으므로 유효한 서명을 생성할 수 없습니다.

내가 무엇을 잘못하고 있거나 무엇을 올바르게 이해하지 못했습니까?

감사해요!!

Leave A Reply

Your email address will not be published.