Private-Key

為什麼私鑰有範圍限制?

  • February 19, 2022

我正在閱讀有關ECDSA的資訊,我發現私鑰必須在(0,n), with 中n = FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFE BAAEDCE6 AF48A03B BFD25E8C D0364141

secp256k1n曲線上的點總數是多少?(加上0分)

以及如何n限制私鑰的範圍?

如果私鑰大於n怎麼辦?

n 是曲線上的點數(包括無窮遠點)。私鑰是介於 1 和 n-1 之間的數字,包括 1 和 n-1。0 不是有效的私鑰,因為它的對應點是無窮遠點。

如果您天真地嘗試計算與私鑰 d 和私鑰 d+n 對應的公鑰,您將獲得相同的公鑰。這意味著私鑰 n 的公鑰也將是無窮大(與私鑰 0 相同)。

出於這個原因,私鑰被限制在 1 到 n-1 的範圍內:這保證了曲線上的每個非無窮大點都只有一個私鑰。

如果您選擇一個鍵 > N,它將映射到 (0, N) 範圍內的另一個鍵。例如,對於所有效果和目的,N + 100 是與 100 完全相同的私鑰。這就是模運算的工作原理

引用自:https://bitcoin.stackexchange.com/questions/112499