產(chǎn)生復(fù)雜碼序列的新LFSR基電路
用線性反饋移位寄存器(LFSR)產(chǎn)生碼序列對(duì)于流加密/解密是有用的。然而,這涉及冗長(zhǎng)的LFSR,而且所產(chǎn)生的碼對(duì)防止竊聽還不夠復(fù)雜。
本文給出一個(gè)產(chǎn)生冗長(zhǎng)和復(fù)雜碼序列的非常簡(jiǎn)單的技術(shù),適合于采用較小長(zhǎng)度LFSR的密碼應(yīng)用。
保密通信
現(xiàn)在,保密通信不僅僅軍事系統(tǒng)需要,而且已進(jìn)入商業(yè)市場(chǎng)。然而,一些商業(yè)應(yīng)用所需要的密級(jí)可能不如軍事和其他應(yīng)用所要求的高。因此,保密和可靠通信的一些簡(jiǎn)單和低成本系統(tǒng),采用擴(kuò)頻調(diào)制方法和密碼技術(shù),適合于非軍事領(lǐng)域的商業(yè)應(yīng)用?,F(xiàn)在,人們正在積極地加快研究和開發(fā)低成本保密消息通信。
對(duì)于發(fā)射器和接收器中的加密和擴(kuò)頻技術(shù),1個(gè)隨機(jī)或類噪聲碼是必須的。然而,因?yàn)榻邮掌髦须S機(jī)碼(具有精確同步)完全拷貝的實(shí)際限制和必然性,所以發(fā)送和接收方采用偽隨機(jī)或偽噪聲(PN)序列使能保密消息通信。
PN序列表示為具有一定參數(shù)的1和0序列,通常分為兩類:(1)周期序列,(2)非周期序列。擴(kuò)頻通信中所用的序列類型通常為周期序列。
有很多種周期序列,流行的周期序列有:
最大長(zhǎng)度線性移位寄存器序列(m序列);
二次剩余序列(q-r序列);
霍爾序列;
雙素?cái)?shù)序列。
在這些序列中,最常用的是m序列。m序列已經(jīng)廣泛用于軍事應(yīng)用和其他單用戶擴(kuò)頻系統(tǒng)。不過,基于互相關(guān)要求的原因,在某些個(gè)人通信CDMA系統(tǒng)中,一些另外的PN序列(如Kasami序列,Walsh序列或Gold序列)是所希望的。
用相對(duì)較少級(jí)數(shù)的LFSR很容易產(chǎn)生m序列(圖1)。
圖1 普通的m序列產(chǎn)生器
一個(gè)LFSR由1個(gè)移位寄存器和1個(gè)反饋網(wǎng)絡(luò)(或1個(gè)奇偶)組成,反饋網(wǎng)絡(luò)僅由模2加法器(XOR門)組成。反饋網(wǎng)絡(luò)輸出加到移位寄存器輸入。當(dāng)輸入的偶數(shù)是邏輯0時(shí)反饋網(wǎng)絡(luò)提供輸出邏輯0,當(dāng)輸入奇數(shù)是邏輯1時(shí)反饋網(wǎng)絡(luò)產(chǎn)生邏輯1。觸發(fā)器數(shù)和連接到反饋網(wǎng)絡(luò)的觸發(fā)器輸出選擇確定所產(chǎn)生PN序列的長(zhǎng)度和特性。移位寄存器的所有觸發(fā)器由同一時(shí)鐘驅(qū)動(dòng)。除硬件復(fù)雜性之外,在達(dá)到碼同步(發(fā)射器和接收器之間)時(shí)這些序列運(yùn)行良好。
m序列長(zhǎng)度(N)由下式給出:
N=2m-1
其中m是移位寄存器的級(jí)數(shù)(也稱之為寄存器長(zhǎng)度)。
圖2示出具有3級(jí)(m=3)的m序列工作。由Q1,Q2,和Q3表示3個(gè)觸發(fā)器的狀態(tài),從圖中可見反饋和等Q1和Q3的模2和。每一個(gè)觸發(fā)器的輸出連接到下一個(gè)觸發(fā)器的輸入。在每個(gè)時(shí)鐘脈沖,每個(gè)觸發(fā)器的狀態(tài)移位到下一個(gè)。
圖2 普通的級(jí)m序列產(chǎn)生器
基于LFSR的流密碼給出良好的數(shù)據(jù)保密性,所提供的移位寄存器的長(zhǎng)度是長(zhǎng)的。盡管軟件實(shí)現(xiàn)是不經(jīng)濟(jì)的,但結(jié)果表明硬件實(shí)現(xiàn)容易和簡(jiǎn)單。對(duì)于低成本保密系統(tǒng)的開發(fā),這種電路是相當(dāng)有吸引力的。有各種采用LFSR的流密碼方法,各有其優(yōu)缺點(diǎn)。在各種方法中,與未加密電文同步產(chǎn)生PN序列是重要的。在發(fā)射器中,所產(chǎn)生的PN序列(用做密鑰Key)與未加密電文XOR產(chǎn)生密碼電文。在接收器,同樣的PN序列或Key與密碼電文XOR重新產(chǎn)生原來的未加密電文。
用LFSR產(chǎn)生的m序列碼不適合較低長(zhǎng)度LFSR保密。假若用具有一些反饋支路的n位移位寄存器產(chǎn)生長(zhǎng)度(2n-1)位的m序列碼,若知道碼字的2n位,則可以定位反饋支路。這種情況下竊聽變得容易?,F(xiàn)已開發(fā)出一些新穎技術(shù)改善PN序列保密性,并有一些專利發(fā)布。
然而,這些新穎技術(shù)的大多數(shù)的LFSR反饋電路是固定的,因此容易發(fā)現(xiàn)密碼或干擾機(jī)。本文給出一種更保密的m序列產(chǎn)生器,其反饋支路保持在偽隨機(jī)狀態(tài)下變化,使得所產(chǎn)生的碼相當(dāng)復(fù)雜。除產(chǎn)生的碼復(fù)雜外,電路的簡(jiǎn)單性使此電路吸引著低成本、保密消息通信應(yīng)用。
電路描述
圖3示出所提出的電路。用一個(gè)8位LFSR產(chǎn)生255位碼序列的16個(gè)不同的集合,這依賴于16個(gè)有效反饋支路集合:{8,4,3,2},{8,6,5,4},{8,6,5,3},{8,5,3,2},{8,6,5,2},{8,6,3,2},{8,5,3,1},{8,7,4,3},{8,6,5,1},{8,7,3,2},{8,7,6,1},{8,7,2,1},{8,7,6,5,2,1},{8,7,6,3,2,1},{8,6,4,3,2,1},{8,7,6,5,3,2}。
圖3 新的m序列產(chǎn)生器
一次可以用這些反饋支路集合的任一個(gè),這樣,LFSR輸出的一個(gè)特定組合,經(jīng)1個(gè)模2加法器連接回到其輸入。因此,根據(jù)所選反饋保持連接的時(shí)間,在某一時(shí)刻可以選擇上面所述反饋連接的任一種連接產(chǎn)生部分或全部相應(yīng)的碼序列。
若這些反饋連接在隨機(jī)狀態(tài)下同步改變,則輸出序列(圖3的Y)也相應(yīng)改變。這可用圖3所示電路實(shí)現(xiàn)。為了說明簡(jiǎn)單化,在此僅選用7個(gè)反饋連接集合:{8,4,3,2},{8,6,5,4},{8,6,5,3},{8,5,3,2},{8,6,5,2},{8,6,3,2}和{8,6,5,1}。XOR LFSR的不同輸出得到這些反饋連接集合,這借助于另一個(gè)PN序列產(chǎn)生的3位字控制的8:1多路轉(zhuǎn)換器(MUX)(見圖3)。
由于避免000做為MUX控制字,所以,根據(jù)控制字僅選擇MUX的7個(gè)輸入。因此,隨機(jī)變化反饋支路,在某一時(shí)間選擇出7個(gè)不同集合中的1個(gè)。根據(jù)N值(電路中分頻因數(shù))、碼產(chǎn)生器初始狀態(tài)和MUX初始狀態(tài),可以產(chǎn)生復(fù)雜碼序列并在輸出Y得到(圖3)。
用下列IC可組裝圖3所示電路:用IC74151做多路轉(zhuǎn)換器,IC7486做為實(shí)現(xiàn)反饋網(wǎng)絡(luò)的XOR門,IC74LS76(J-K觸發(fā)器)與IC7400(NAND門)組合做為移位寄存器和N分頻計(jì)數(shù)器。
電路所需的輸入時(shí)鐘信號(hào)來自函數(shù)發(fā)生器。從此電路的反饋移位寄存器的不同級(jí)可獲得PN碼信號(hào)。
圖4 反饋網(wǎng)絡(luò)
結(jié)語(yǔ)
采用具有隨機(jī)變化反饋連接的LFSR設(shè)計(jì)PN序列的方法對(duì)于流加密/解密是非常有用的。N計(jì)數(shù)分頻決定LFSR輸出的1個(gè)特定PN序列(對(duì)應(yīng)特定選擇的反饋支路集合)的長(zhǎng)度。N最大值是255。也可以采用4位PN序列(替代3位PN序列)為MUX提供控制字,這將增強(qiáng)復(fù)雜性,從而產(chǎn)生碼字保密。此種情況下,采用16:1 MUX,在其輸入有16個(gè)可能的反饋組合的集合。