文獻標識碼: A
DOI: 10.19358/j.issn.2096-5133.2020.12.005
引用格式: 王明興,苗三立,朱明佳. 輕量級序列密碼研究進展[J].信息技術與網(wǎng)絡安全,2020,39(12):25-29.
0 引言
序列密碼是一種對稱密碼算法,即加密密鑰和解密密鑰是相同的。序列密碼的經(jīng)典結(jié)構包括兩個部件:驅(qū)動部件和密鑰流輸出部件,驅(qū)動部件通過迭代運算更新內(nèi)部狀態(tài),輸出部件抽取一部分內(nèi)部狀態(tài)的比特值,經(jīng)過復雜運算產(chǎn)生密鑰流。加密時,密鑰流和明文異或產(chǎn)生密文,解密時,密鑰流和密文異或產(chǎn)生明文。通俗地講,序列密碼算法可以認為是分組密碼的密鑰擴展算法。
序列密碼的一個結(jié)構特點是必然有內(nèi)部狀態(tài),這使序列密碼容易受到時間存儲折中攻擊(Time Memory Data Tradeoff,TMD),為了抵抗這種攻擊,通常要求序列密碼的內(nèi)部狀態(tài)的長度至少是密鑰長度的兩倍,例如序列密碼Grain[1]、Grain-128a[2]系列密碼算法,它們的內(nèi)部狀態(tài)是密鑰長度的兩倍,而Trivium算法[3]的內(nèi)部狀態(tài)大于密鑰長度的兩倍。這導致序列密碼在硬件實現(xiàn)時所占用的硬件資源代價過大,例如Trivium算法的硬件面積是2 580門,不適用于資源受限、低功耗、物聯(lián)網(wǎng)等新的應用場景。
為了既能抵抗TMD攻擊,又能減小內(nèi)部狀態(tài)的長度,研究人員最近幾年提出了“小狀態(tài)”輕量級序列密碼研究。那些能夠抵抗TMD攻擊且內(nèi)部狀態(tài)的長度小于密鑰長度的兩倍的輕量級序列密碼,稱為小狀態(tài)輕量級序列密碼(Small State Lightweight Stream Cipher)。
本文介紹了四個小狀態(tài)的輕量級序列密碼算法,依次是Sprout[4]、Fruit-80[5]、Plantlet[6]、Lizard[7];主要介紹它們的設計理念和最新的分析結(jié)果,來發(fā)現(xiàn)存在的問題,總結(jié)研究成果,促進小狀態(tài)的輕量級序列密碼的研究。
本文詳細內(nèi)容請下載:http://ihrv.cn/resource/share/2000003219
作者信息:
王明興1,2,苗三立1,朱明佳1
(1.中國電子信息產(chǎn)業(yè)集團有限公司第六研究所,北京102209;2.密碼科學技術國家重點實驗室,北京100878)