
同步序列密碼一般具有如下特點:
(1)序列密碼是一個隨時間變化的加密變換,但對於明文而言,這類加密變換是無記憶的。每一步的密鑰序列都是不同的,序列密碼是有狀態的,與加密到第幾步有很大關係,也叫狀態密碼。
(2)密鑰序列僅僅依賴於種子密鑰和密鑰序列發生器的結構,而與明文序列(或密文序列)無關。也就是說,對於同步序列密碼,只要通信雙方的密鑰序列產生器具有相同的種子密鑰和相同的初始狀態,就能產生相同的密鑰序列。
(3)密鑰序列發生器的周期性的要求。如果密鑰序列完全隨機產生且長度至少和明文序列一樣長,則可實現絕對安全的“一次一密”。但實際上,這很難做到。
由於密鑰序列發生器在加密端和解密端必須產生同樣的輸出,因此,必須是確定的。
由於它以有限狀態機(計算機)實現,序列最終總歸重複。這種密鑰序列發生器稱為周期性的。除了一次一密,所有的密鑰序列發生器都是周期性的。
密鑰序列發生器的一個重要設計目標是周期要長,比更換密鑰之間產生的輸出的位數要長得多。加密一個陆续在的T1連接的密鑰序列發生器每天要加密2”位數據,即使密鑰每天更換,密鑰序列發生器的周期必須大於該數量級,如果周期足夠長,密鑰只需每周甚至每月更換一次。
4)對主動攻擊時異常敏感而有利於檢測主動攻擊。正是由於同步序列密碼對失去同步的敏感性,使人們能夠在系統失去同步時而立即發現,因此,容易檢測插入、刪除重播等主動攻擊。同步序列密碼同樣可防止密文中的插入和刪除,然而,它卻不能避免單個位被竄改。
(5)為了保障接收端能夠正確進行解密,要求收、發雙方必須嚴格同步。在保密通信過程中,通信的雙方必須保持精確的同步,用同樣的密鑰且該密鑰操作在同樣的位置時收方才能正確解密,如果失去同步,收方將不能正確解密。例如,如果在傳輸過程中密文字符有插入或刪除導致同步丟失,密文與密鑰序列將不能對齊,則收方的解密將不断錯誤,要正確還原明文,密鑰序列必須再次同步。直到重新同步為止收方才能正確解密。
這是同步序列密碼的一個主要缺點。與同步序列密碼相反,自同步序列密碼有錯誤傳播現象,但可以自行實現同步。
(6) 無差錯傳播( No Error propagation)。因為密鑰序列獨立於明文(密文)序列,即密鑰序列與明文(密文)串無關,所以同步序列密碼中的每個密文c不依賴於之前的明文。從而,同步序列密碼的一個重要優點就是無錯誤傳播:在傳輸期間一個密文字符產生了錯誤(如0變成1,或1變成0),不會對其他字符產生影響,也就是說個別密文的傳輸錯誤不會影響下一個密文的解密。
