《電子技術(shù)應(yīng)用》
您所在的位置:首頁(yè) > 可編程邏輯 > 設(shè)計(jì)應(yīng)用 > 基于FPGA的LFSR異步加解密系統(tǒng)
基于FPGA的LFSR異步加解密系統(tǒng)
2016年電子技術(shù)應(yīng)用第6期
潘必韜,聶小龍,王祖強(qiáng)
山東大學(xué) 信息科學(xué)與工程學(xué)院,山東 濟(jì)南250100
摘要: 線性反饋移位寄存器(LFSR)偽隨機(jī)序列作為流密碼的一種,具有原理清晰、不可預(yù)測(cè)性強(qiáng)的特點(diǎn),被廣泛應(yīng)用于各種加解密場(chǎng)合。針對(duì)目前基于LFSR的加解密系統(tǒng)只能應(yīng)用于同步工作模式的局限性,設(shè)計(jì)了一種可配置的LFSR異步加解密系統(tǒng),并對(duì)其進(jìn)行了基于FPGA的硬件實(shí)現(xiàn)。實(shí)驗(yàn)結(jié)果顯示,其既具備LFSR序列的優(yōu)秀性能,又可以實(shí)現(xiàn)異步加解密,具有一定的實(shí)際應(yīng)用價(jià)值。
關(guān)鍵詞: LFSR FPGA 異步加解密
中圖分類(lèi)號(hào): TN918
文獻(xiàn)標(biāo)識(shí)碼: A
DOI:10.16157/j.issn.0258-7998.2016.06.015
中文引用格式: 潘必韜,聶小龍,王祖強(qiáng). 基于FPGA的LFSR異步加解密系統(tǒng)[J].電子技術(shù)應(yīng)用,2016,42(6):56-58.
英文引用格式: Pan Bitao,Nie Xiaolong,Wang Zuqiang. Asynchronous LFSR encryption system based on FPGA[J].Application of Electronic Technique,2016,42(6):56-58.
Asynchronous LFSR encryption system based on FPGA
Pan Bitao,Nie Xiaolong,Wang Zuqiang
School of Information Science and Engineering,Shandong University,Jinan 250100,China
Abstract: As a kind of stream cipher, linear feedback shift register(LFSR) pseudo random binary sequence(PRBS) has widely applied in many encryption occasions with characters like succinct principle and strong unpredictability, to solve the limitation that encryption system based on LFSR can only work in synchronous condition, this paper proposed a asynchronous configurable LFSR encryption system, and has implemented the system in hardware based on FPGA. The experiment results shows it not only applied the LFSR sequence′s outstanding performance but also implemented asynchronous encryption. It has a certain value of practical application.
Key words : LFSR;FPGA;asynchronous encryption

0 引言

    隨著信息技術(shù)的不斷發(fā)展,信息安全已成為全世界的熱門(mén)研究課題,而數(shù)據(jù)的有效加解密則顯得尤為重要。雖然國(guó)內(nèi)外研究者在軟件加密層面上做了大量的工作,但仍存在著信息易被竊取等問(wèn)題。相對(duì)而言,硬件加密因?yàn)槠浼咏饷苓^(guò)程在硬件中執(zhí)行,加解密信息均存儲(chǔ)于專用硬件之中[1],使得其更具安全性。因此,研究加解密系統(tǒng)的硬件實(shí)現(xiàn)更具有現(xiàn)實(shí)意義。

    LFSR偽隨機(jī)序列作為一種成熟流密碼,其優(yōu)點(diǎn)突出,且非常適合于硬件高速實(shí)現(xiàn)[2]。FPGA采用流水線和并行運(yùn)算,在數(shù)據(jù)處理中具有靈活高效的特點(diǎn),很適合于硬件加解密系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[3]

    雖然利用LFSR序列進(jìn)行加解密的硬件實(shí)現(xiàn)已有大量實(shí)例,但其均為同步加解密,具有很大的局限性。本文所提出的異步LFSR加解密系統(tǒng)即是針對(duì)這一問(wèn)題而作出的改進(jìn)。首先對(duì)LFSR偽隨機(jī)序列產(chǎn)生的基本原理進(jìn)行了闡述;然后分析了一種基于LFSR偽隨機(jī)序列的同步加解密系統(tǒng);在此基礎(chǔ)之上,提出了可配置的LFSR異步加解密系統(tǒng)的設(shè)計(jì)及其利用FPGA的實(shí)現(xiàn),最后對(duì)全文進(jìn)行了總結(jié)。

1 LFSR原理簡(jiǎn)介

    一個(gè)m位的線性移位寄存器(LFSR)可以由m個(gè)寄存器以及決定序列狀態(tài)轉(zhuǎn)換的反饋結(jié)構(gòu)組成。用于硬件實(shí)現(xiàn)的LFSR的拓?fù)浣Y(jié)構(gòu)如圖1所示。

qrs2-t1.gif

    該拓?fù)浣Y(jié)構(gòu)中g(shù)m代表反饋系數(shù),其值為1表示連接,0表示未連接。每一時(shí)刻的各位寄存器的輸出則為當(dāng)前的序列輸出值,下一時(shí)刻的輸出由當(dāng)前狀態(tài)和反饋支路決定。其數(shù)學(xué)抽象形式可以表示為GF(2m)上的一個(gè)多項(xiàng)式,反饋系數(shù)則抽象成為其多項(xiàng)式的系數(shù)。如果反饋系數(shù)選取得當(dāng),使得其抽象多項(xiàng)式為GF(2m)上的本原多項(xiàng)式時(shí),由m個(gè)寄存器組成的序列發(fā)生器可以有2m-1個(gè)不同狀態(tài)[4]。所以,當(dāng)m的值增大時(shí),該偽隨機(jī)序列發(fā)生器的周期增長(zhǎng)是非??捎^的,在一個(gè)周期之內(nèi),其序列輸出值不可預(yù)測(cè),保證了其安全性,從而確保了加密效果。

2 現(xiàn)有的同步LFSR加解密系統(tǒng)

    現(xiàn)有的這方面的一個(gè)典型系統(tǒng)工作原理[5]如圖2所示。該系統(tǒng)設(shè)計(jì)用LFSR偽隨機(jī)序列來(lái)加解密輸入模擬信號(hào)。其基本原理是將輸入待加密的明文信號(hào)與LFSR序列進(jìn)行兩次異或來(lái)加解密,用m、k、c分別來(lái)表示明文、密鑰、密文,則由于:

     qrs2-2-x1.gif

所以第一次異或?qū)⒚魑男畔⒓用?,而第二次異或則將密文解密,得出明文信號(hào)。整個(gè)過(guò)程的關(guān)鍵在于時(shí)序的控制使其達(dá)到嚴(yán)格同步。該系統(tǒng)結(jié)構(gòu)清晰,原理明確。但有幾點(diǎn)缺陷:

    (1)系統(tǒng)只在同步時(shí)可以進(jìn)行工作,然而大多數(shù)情況之下這種即時(shí)加解密的方法不能滿足需求。而需要先加密,傳輸,之后再解密。

    (2)由于系統(tǒng)的加解密結(jié)構(gòu),使得一幀數(shù)據(jù)加解密工作要在一個(gè)LFSR序列信號(hào)周期內(nèi)完成,將限制時(shí)鐘頻率、降低效率。

    (3)由于該系統(tǒng)需要加解密序列嚴(yán)格同步,所以容錯(cuò)率低,且只要出現(xiàn)一位的偏移將影響整個(gè)系統(tǒng)。

    對(duì)于以上問(wèn)題,本文提出了一種可配置LFSR序列異步加解密系統(tǒng),將在下文討論。

qrs2-t2.gif

3 可配置的LFSR序列加解密系統(tǒng)

    針對(duì)現(xiàn)有LFSR同步加解密系統(tǒng)所存在的問(wèn)題,設(shè)計(jì)了一種異步加解密系統(tǒng)。該系統(tǒng)將在加密之前對(duì)LFSR進(jìn)行配置,設(shè)置其初值和反饋結(jié)構(gòu)。傳輸數(shù)據(jù)時(shí)將初值信號(hào)與反饋的配置信息封裝于密文之前,解密時(shí)再根據(jù)其接收到的密文中的配置信息進(jìn)行解密端配置,然后進(jìn)行解密。整個(gè)過(guò)程將實(shí)現(xiàn)異步加解密,其結(jié)構(gòu)如圖3所示。

qrs2-t3.gif

    其中最關(guān)鍵的部分為可配置LFSR序列發(fā)生器,其總體結(jié)構(gòu)如圖4所示。

qrs2-t4.gif

    對(duì)于m位的LFSR序列產(chǎn)生器,其整體的配置模塊為m個(gè)單個(gè)配置結(jié)構(gòu)的并聯(lián)。單個(gè)寄存器的配置器如圖5所示。其中初值賦值部分為寄存器賦初值,而反饋系數(shù)賦值部分則用來(lái)配置反饋網(wǎng)絡(luò)。

qrs2-t5.gif

    其中初值配置模塊如圖6所示。它接收初值信號(hào),當(dāng)初值為1,即input為1時(shí),prn輸出0,clrn輸出1,完成寄存器的置1設(shè)置。反之,當(dāng)初值為0時(shí),clrn輸出0,prn輸出1,完成寄存器的置0設(shè)置。

    其中反饋結(jié)構(gòu)配置模塊如圖7所示。其接收到的輸入信號(hào)為Qm與gi,且當(dāng)gi為1時(shí),表示連接,output輸出Qm的值,當(dāng)gi為0時(shí),表示未連接,則output輸出為0,因?yàn)閤qrs2-t6-7-x1.gif0=x,與無(wú)連接的效果一樣。

qrs2-t6-7.gif

4 加解密系統(tǒng)控制流程

    基于前文所述的硬件結(jié)構(gòu),設(shè)計(jì)了整個(gè)加解密系統(tǒng)的工作流程,其加密與解密流程相對(duì)稱,分別如圖8和圖9所示。

qrs2-t8-9.gif

5 系統(tǒng)仿真及測(cè)試結(jié)果

5.1 系統(tǒng)仿真時(shí)序圖

    圖10為可配置LFSR加解密裝置的加密過(guò)程仿真時(shí)序圖。仿真所用的LFSR生成器為8位,其最大周期為255。選用的反饋系數(shù)為g(8)=01110001(由于g0默認(rèn)為1,故從g1開(kāi)始配置)。

qrs2-t10.gif

    Reset信號(hào)觸發(fā)之后,EN為初始配置信號(hào)變?yōu)橛行?,其占?個(gè)時(shí)鐘周期,完成的工作為將初始的配置信息中的Q0=10011100(156)與g(8)=01110001(q的ASCII碼)存入輸出信號(hào)cout,并配置LFSR生成器。當(dāng)配置結(jié)束后,加密工作開(kāi)始進(jìn)行。輸出密文c為明文m與LFSR輸出密鑰k的異或,最終輸出cout為加入配置信息的密文。相應(yīng)地,其解密過(guò)程的仿真時(shí)序圖如圖11所示。

qrs2-t11.gif

    Reset信號(hào)觸發(fā)之后,初始配置信號(hào)EN變?yōu)橛行В湔加?個(gè)時(shí)鐘周期,完成的工作為將接收到密文c中的前兩幀數(shù)據(jù)讀出,并配置LFSR生成器。當(dāng)配置結(jié)束后,解密工作開(kāi)始進(jìn)行,解密輸出的明文從EN無(wú)效后開(kāi)始。由圖10、圖11所示,其加解密過(guò)程都可以完美運(yùn)行。

5.2 實(shí)際加解密測(cè)試結(jié)果

    用上述加解密裝置對(duì)一幅512×512的灰度圖像進(jìn)行加密、解密可得其結(jié)果分別如圖12、圖13所示??梢?jiàn)加解密效果完美,可以實(shí)際使用。

qrs2-t12-13.gif

6 結(jié)語(yǔ)

    本文設(shè)計(jì)了一種可配置的LFSR序列生成器以及其所應(yīng)用的異步加解密裝置。在對(duì)原始LFSR加解密系統(tǒng)進(jìn)行了闡述與分析后,提出了一種可配置的LFSR異步加解密系統(tǒng),并對(duì)其進(jìn)行了基于FPGA的硬件實(shí)現(xiàn)。觀察實(shí)驗(yàn)結(jié)果可知,其不僅具有異步加解密的實(shí)用性,又具有LFSR序列的可靠性。

參考文獻(xiàn)

[1] 賈立愷,黃國(guó)慶,趙敬,等.基于FPGA的PCI硬件加解密卡設(shè)計(jì)[J].電子設(shè)計(jì)工程,2010,18(5):142-145.

[2] 胡向東.應(yīng)用密碼學(xué)[M].北京:電子工業(yè)出版社,2011.

[3] 劉景亞,季曉勇.基于FPGA的CPRS混沌加解密算法高效實(shí)現(xiàn)[J].電子測(cè)量技術(shù),2008,31(11):175-177.

[4] WADE TRAPPE(美).密碼學(xué)與編碼理論(第2版)[M].北京:人民郵電出版社,2008.

[5] 劉衛(wèi)玲,常曉明,王云才.基于FPGA和PSoC的混沌音頻加解密系統(tǒng)[J].電子技術(shù)應(yīng)用,2014,40(7):54-57.

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。