Hash

使用 SECT233R1 驗證 ECDSA 簽名時的 Mod 操作

  • November 22, 2022

我正在嘗試在硬體中執行 ECDSA 驗證。我使用的是 SECT233R1 曲線 (NIST B-233)。我對這樣做時使用的散列函式有疑問。

我想在簽名和驗證時使用 SHA256 雜湊函式。在這種情況下,雜湊函式將具有比橢圓曲線有限域元素(233 位)更大的消息長度(256 位)。

我有同樣的問題。在較低的 233 位上執行是否足夠?

提前致謝!

對(SHA-256 雜湊的)低 233 位進行操作是否足夠?

。這不是我對實際參考的解讀:sec1v2 的 ECDSA 聲明,第 5 節(第 5.2 節的第二種情況適用),以及SHA-256的字節順序規範。

當使用曲線sect233r1和 SHA-256對每個 ECDSA 進行簽名時,應該保留 SHA-256 雜湊的最左邊/第一/高位 233 位,並將其視為每個 big-endian 約定的整數。

即保留 32 個字節中的前 29 個,以及第 30個字節的高位。後面的位將是整數的奇偶校驗 $ e $ 在接下來的步驟中使用。

引用自:https://crypto.stackexchange.com/questions/102906