具有更大狀態的 A5/1 會是硬體流密碼的不錯選擇嗎?
具有更大狀態的 A5/1 會是硬體流密碼的不錯選擇嗎?假設對 MAC 進行了合理的選擇,例如 GMAC,將流密碼輸出的前 128 位用作 $ H $ 接下來的 128 位用於加密 auth 標籤。
我在15 年前就曾這樣爭論過,從那以後就沒有被證明是錯誤的。基本上,A5/1,帶有 $ n $ 位狀態,提供大致的電阻 $ 2n/3 $ 一點安全感。和 $ n = 64 $ ,阻力非常低,因此不僅可以直接斷開,還可以進行各種取捨。
迄今為止發布的所有攻擊都圍繞大約 43 位的阻力水平跳舞,重點是要做到這一點,以便可以“實時”破壞實際實例:可以在相對較短的時間內完成 43 位蠻力一台現代 PC(在幾個小時內),但如果您想沉迷於實際的 GSM 間諜活動,您需要更快的休息時間,以便您可以在目標手機跳頻時跟踪它。已經提出了各種方法,將一些可能較大的預計算與等待算法處於該預計算的一部分的狀態相結合;這是原始攻擊中的想法比留科夫、沙米爾和瓦格納。根據描述攻擊的人的寫作技巧,通常可以在基本操作、位操作、CPU 操作碼和其他措施之間進行操作,以使復雜度數字盡可能低,例如降至 $ 2^{40} $ 對於 A5/1,但這只是行銷。
在其核心,時鐘序列始終存在蠻力:您需要以一種或另一種方式猜測兩個時鐘位,以注入一位已知輸出。
因此,提升到 192 位內部狀態的類似 A5/1 的設計應該提供大約“128 位”的電阻,並且據我所知,不會被嚴重破壞——據我們所知。可能需要將大小擴大一點(例如,到 210 位)以避免學術詭計導致成本攻擊 $ 2^{126.3} $ 或類似的吹毛求疵。注入密鑰後應該執行多少“空白輪”是一個懸而未決的問題(原始 A5/1 執行 100 個空白輪)。
儘管“擴展的 A5/1”可以在具有很少門的硬體中實現,但它不會得到廣泛的審查,而且經驗表明,在密碼算法的設計中,廣泛的審查不是可選的。因此,不能“按原樣”推薦。我建議您考慮改用其中一種eSTREAM 組合算法,尤其是那些遵循“硬體配置文件”的算法。特別是,MICKEY 2.0 有一個 128 位密鑰的變體。