Random-Number-Generator

是否曾在任何早期的加密算法中使用過線性全等生成器?

  • August 10, 2016

線性全等隨機數生成器是最簡單的一種偽隨機數生成器。我知道它現在早就壞了。但我很好奇——它是否曾在任何早期的加密算法中使用過,比如 70 年前?或者它從第一天起就被用於基本的統計模擬。我在某處讀到它用於舊的 IBM-360 電腦。我很好奇它是用來做什麼的。

確實,線性同餘生成器在早期被用於加密目的——或者至少被建議使用。以下是三個範例,但可能還有更多範例。

1982 年,Vahle 和 Tolendino破解了基於線性同餘生成器的加密方案。但是,沒有提供有關在何處使用此加密的詳細資訊。

1965 年,Maclaren 和 Marsaglia提出了一種生成器,它結合了兩個同餘生成器,在他們的具體實例中是

$$ \begin{align} x_{i+1} &= (2^{17} + 3)x_i \bmod 2^{35}, \text{and}\ y_{i+1} &= (2^7 + 1)y_i + 1 \bmod 2^{35}, \end{align} $$ 之後的輸出 $ z_i $ 計算為 $ y_{x_{i \bmod 128}} $ . 然而,這並不是其作者的密碼系統。儘管如此,在 1984 年,Retter確實在Data General發現了該系統用於加密現實世界的數據,並進一步通過將其強度降低到僅一個生成器來破壞它。他還發現另一個系統,CSI-10 密碼單元,使用相同的加密方案。 也許更著名的是,1980 年Knuth設計了一種方法來破壞截斷的線性同餘生成器。論文開頭說

因此,有人建議這種序列的前導位可能對加密數據有用。

沒有相關的引用,但推斷這是當時流行的想法並非沒有道理。對 LCG 的其他當代攻擊包括ReedsPlumstead

在此期間非常流行的另一類隨機數生成器是基於LFSR的隨機數生成器,它們對硬體更加友好。60 年代和 70 年代出現了許多基於 LFSR 的方案,其中絕大多數最終都失敗了。Ritter 的調查,從 Twigg 生成器開始,是一個很好的起點。

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