Public-Key

ECDSA/公鑰恢復技術中多達 4 個不同的點

  • July 10, 2019

在對這個問題的回答中,指出:

重新排列這個方程,你得到rP = sR - mG,或P = (s/r)R - (m/r)G。因此,我們似乎可以從消息和簽名中計算出公鑰。不幸的是,最多可以有 4 個不同的點R,其中Rx mod n = r(實際上,這個數字幾乎總是 2)。

R怎麼可能有多達 4 個不同的點?為什麼它通常是兩個不同的點?

否定一個橢圓曲線點意味著否定它的 Y 座標(模場大小p),所以*-(x,y) = (x,-y)。這意味著如果您有一個Rx mod n = k點**R*(其中n曲線階數),那麼*-R*也是如此。

此外,以可忽略的機率,RxRx + n都可能是有效的 X 座標(僅當Rx < pn 時)。在這種情況下,有 4 個可能的點((r, y1) , (r,-y1) , (r+n,y2) , (r+n,-y2))。

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