Key-Size

由於 80 位 x87 寄存器而具有 80 位抗碰撞性?

  • July 19, 2019

這只是一個奇怪的問題,無論如何它可能不屬於這裡,我只是大膽地在這裡問它。

80 位過去被認為是足夠的安全級別,Skipjack 和 SHA1 被設計為 80 位安全。但為什麼是 80 位?96 位不是更好,因為它是 32 的倍數並且提供了更高的餘量嗎?

選擇 80 位是否與 8087 處理器在設計中具有 80 位浮點寄存器這一事實有關?

協處理器是為在特定情況下提高性能而設計的,在固定寬度數學的情況下,我不相信你會看到性能提高。

我很確定 80 位僅僅是因為它是 10 個 8 位字,而不是針對 FPU 中的 80 位寄存器。首先,由於指令佈局,在這種情況下使用 FPU 會很不方便。對於Skipjack或一般的 Feistel 網路,我不知道有任何簡單的方法可以在不將 FPU 中的單詞拉回 CPU 進行交換的情況下進行塊交換,因為 FPU 硬體是圍繞尾數函式設計的,而不是移位和異或。您可以將 FPU 用於中間儲存,但是因為 x87(這是特定於 x86 的特殊情況),您從堆棧中提取 10 字節序列,這比僅將其全部保存在整數單位。

另一個注意安全邊際和 Skipjack,它是為最小可行的 VLSI 實現而設計的。如果您打算在 1996 年左右在 IC 上放置一些東西,您可能會傾向於 80 位而不是 88 或 96 或更大。MPEG-1、2、4 等都有數學上次優的選擇,但解碼器 IC 需要作為 VLSI 實現可行。在會議上,這總是會出現的限制。在 NIST 8114,我們進行了討論,但我從未見過這些討論正式化。在功率受限的計算中,例如無源供電的 RFID,我仍然會做出就理想密碼學而言次優的工程選擇,因為比特需要花錢來製造、使用電力,而且我沒有增加 IC 成本或能量消耗。

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