序列密碼

序列密碼

序列密碼也稱流密碼,加密是按明文序列和密鑰序列逐位模2相加(即異或操作XOR)進行,解密也是按密文序列和密鑰序列逐位模2相加進行。

基本介紹


序列密碼也稱為流密碼(Stream Cipher),它是對稱密碼演演算法的一種。序列密碼具有實現簡單、便於硬體實施、加解密處理速度快、沒有或只有有限的錯誤傳播等特點,因此在實際應用中,特別是專用或機密機構中保持著優勢,典型的應用領域包括無線通信、外交通信。 1949年Shannon證明了只有一次一密的密碼體制是絕對安全的,這給序列密碼技術的研究以強大的支持,序列密碼方案的發展是模仿一次一密系統的嘗試,或者說“一次一密”的密碼方案是序列密碼的雛形。如果序列密碼所使用的是真正隨機方式的、與消息流長度相同的密鑰流,則此時的序列密碼就是一次一密的密碼體制。若能以一種方式產生一隨機序列(密鑰流),這一序列由密鑰所確定,則利用這樣的序列就可以進行加密,即將密鑰、明文表示成連續的符號或二進位,對應地進行加密。
序列密碼與分組密碼的對比
分組密碼已一定大小作為每次處理的基本單元,而序列密碼則是以一個元素(一個字母或一個比特)作為基本的處理單元。
序列密碼是一個隨時間變化的加密變換,具有轉換速度快、低錯誤傳播的優點,硬體實現電路更簡單;其缺點是:低擴散(意味著混亂不夠)、插入及修改的不敏感性。
分組密碼使用的是一個不隨時間變化的固定變換,具有擴散性好、插入敏感等優點;其缺點是:加解密處理速度慢、存在錯誤傳播。
序列密碼涉及到大量的理論知識,提出了眾多的設計原理,也得到了廣泛的分析,但許多研究成果並沒有完全公開,這也許是因為序列密碼目前主要應用于軍事和外交等機密部門的緣故。目前,公開的序列密碼演演算法主要有RC4、SEAL等。