Hash
使用 SECT233R1 驗證 ECDSA 簽名時的 Mod 操作
我正在嘗試在硬體中執行 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 $ 在接下來的步驟中使用。