資源描述:
《序列密碼的編碼層次》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫。
1、序列密碼的編碼層次及幾個(gè)序列密碼算法量子密碼研究室王濱2005年4月6日序列密碼的編碼層次一、編碼層次前饋邏輯、時(shí)序邏輯、篩選邏輯和控制邏輯(一)前饋邏輯主要由初始亂源發(fā)生器(線性或非線性的反饋移位寄存器等),抽頭的變換以及前饋函數(shù)三部分組成。21、初始亂源發(fā)生器:為前饋函數(shù)f(x)提供具有良好統(tǒng)計(jì)特性的輸入序列。在應(yīng)用中,以線性反饋移位寄存器作為初始亂源發(fā)生器是最常見的,給一個(gè)n級(jí)本原線性移存器注入n比特初態(tài),便可以產(chǎn)生周期為2n-1的二元序列,“代價(jià)”是非常低的,但低廉的代價(jià),同時(shí)也導(dǎo)致了序列比特間“強(qiáng)烈的”線性制約關(guān)系,對(duì)于n級(jí)本原移存器只需截收到2n個(gè)連續(xù)
2、信號(hào)就可求出唯一解。因此它不能直接作為密鑰(亂數(shù))輸出使用。利用非線性前饋函數(shù)f(x)就可以“破壞”這種線性制約性,起到提高序列線性復(fù)雜度的作用。32、抽頭變換:3、前饋函數(shù):r個(gè)抽頭l1,l2,…,lr作為前饋函數(shù)f(x)的輸入,它可以由密鑰因素來控制,起到增加密鑰變化量的作用,它與前饋函數(shù)一起構(gòu)成一個(gè)前饋網(wǎng)絡(luò)。前饋函數(shù)f(x)是一個(gè)非線性布爾函數(shù)或多輸出的非線性布爾函數(shù),它一方面“破壞”輸入序列連續(xù)比特的線性制約關(guān)系,即提高輸入序列的線性復(fù)雜度;另一方面,f(x)又不能破壞輸入序列良好的偽隨機(jī)特性,同時(shí)還要考慮到輸入信息在輸出序列中的泄漏。非線性變換應(yīng)滿足:能將
3、LFSR序列的良好統(tǒng)計(jì)特性傳遞給所生成的密鑰序列,使輸出序列的周期足夠大;輸出序列能抗線性逼近,且不能泄露LFSR的結(jié)構(gòu)和狀態(tài)。4(二)、時(shí)序邏輯時(shí)序邏輯是一種有記憶變換,使輸出不僅與當(dāng)前時(shí)刻的輸入因素有關(guān),而且與以前時(shí)刻的輸入和輸出因素有關(guān),從而實(shí)現(xiàn)輸入信息的縱向擴(kuò)散。1、累加器變換輸入為:;輸出為:累加器變換定義為:;且可以看出:52、實(shí)數(shù)和序列(R.Rueppel于1985年提出)設(shè)輸入序列為a、b,定義實(shí)數(shù)和序列z如下:其中s稱為進(jìn)位序列,假設(shè)。則實(shí)數(shù)和序列實(shí)現(xiàn)數(shù)據(jù)的由低位向高位的擴(kuò)散,即高位不僅受當(dāng)前輸入的影響,而且受以前輸入的影響。6M3、調(diào)換存儲(chǔ)變換調(diào)
4、換存儲(chǔ)區(qū)M包含個(gè)存儲(chǔ)單元,a是輸入序列,b是輸出序列,c是k路控制序列。工作過程如下:在第i時(shí)刻,由序列c的k比特確定M中存儲(chǔ)單元的地址,從該地址中讀出的數(shù)據(jù)即為輸出,然后把a(bǔ)中相應(yīng)的值置入該存儲(chǔ)單元中。7(三)、篩選邏輯篩選邏輯的作用就是破壞二元序列比特間的跟隨關(guān)系,增加算法的復(fù)雜性。自控采樣:就是控制序列對(duì)其自身進(jìn)行采樣,當(dāng)它的某一位為1時(shí),走兩步輸出;為0時(shí),走一步輸出。例如:控制序列為:11111000110111010100001001...得到的輸出序列為:11100101111000101...8(四)、控制邏輯作用:控制算法中的各個(gè)編碼環(huán)節(jié),例如控制
5、源移存器的不等距采樣、抽頭位置的選取、前饋函數(shù)的選擇等??刂七壿嫳旧磉€起到了增加密鑰變化量,提高算法復(fù)雜性的作用。9模擬的序列密碼算法注:所謂n階拉丁方陣,是一個(gè)僅含有n個(gè)不同元素的方陣,且方陣的每行和每列正好包括每個(gè)元素各一次。前饋函數(shù)f(x)調(diào)換存儲(chǔ)控制移存器抽頭10線性移位寄存器L-c是控制移存器,抽頭c-g控制源移存器L-o的動(dòng)作,如c-g為0時(shí),L-o走一步輸出;為1時(shí)走兩步輸出。抽頭c-i控制從源移存器的抽頭,即前饋函數(shù)f(x)的輸入,如c-i為0時(shí)取L-o的第1,3,5,7,...位置上的抽頭;為1時(shí)取L-o的第2,4,6,8,...位置上的抽頭。a為
6、前饋函數(shù)f(x)的輸出序列(若干路),它與L-c的輸出序列c-m’(若干路)通過拉丁方變換得到序列c-m,以它作為調(diào)換存儲(chǔ)M的地址序列。b序列即為最后的輸出序列(密鑰序列)。上圖中,從線性控制移存器L-c抽出的各抽頭序列,起到了控制作用,屬于控制邏輯;源移存器L-o、抽頭s以及前饋函數(shù)f(x)構(gòu)成前饋邏輯;調(diào)換存儲(chǔ)M起到了打亂序列時(shí)序的作用,屬于時(shí)序邏輯;從L-c抽出的抽頭c-g控制源移存器L-o的動(dòng)作,對(duì)其產(chǎn)生的序列進(jìn)行不等距采樣,屬于篩選邏輯。11A5/2算法密鑰發(fā)生器12A5/2算法密鑰發(fā)生器13A5/2算法密鑰發(fā)生器14A5/1算法密鑰發(fā)生器LFSR1LFS
7、R2LFSR3鐘控b15A5/1算法密鑰發(fā)生器16A5/1算法密鑰發(fā)生器17作業(yè)P121-6.1,6.2,6.6作業(yè)文檔中的題目18