基于CycloneII和MSP430的網(wǎng)絡數(shù)據(jù)加密實現(xiàn)
1 引言
隨著信息技術和網(wǎng)絡化進程的發(fā)展,網(wǎng)絡通信安全問題日益突出?,F(xiàn)場可編程門陣列(FPGA)以其自身設計靈活、可靠性高的優(yōu)點廣泛應用于加密領域。硬件實現(xiàn)的加密算法不占用計算機資源.加密過程完全與外部總線隔離,具有較高的數(shù)據(jù)保護能力。算法可靈活改變,具有較強的獨立性。加密機由單片機,FPGA和El通信接口組成。FPGA內部算法由VHDL語言編寫。該系統(tǒng)適用于要求數(shù)據(jù)安全較高的場合,其終端可為計算機,銀行POS機等,提供數(shù)據(jù)傳輸?shù)陌踩院捅C苄浴?/P>
2 流加密解密原理及算法
2.1 流加密解密原理
流密碼由密鑰和密碼算法兩部分組成,密鑰一般存儲在加解密設備內部,在數(shù)據(jù)傳輸前已設置完成。密碼算法在較長時間內是不變的。在同步流密碼中,只要發(fā)送端和接收端有相同的密鑰和內部狀態(tài),就能產(chǎn)生相同的密鑰流。
數(shù)據(jù)傳輸時,加密端和解密端使用同一個初始密鑰,加密時密碼流與明文相異或得到密文,同時每隔一定時間加入同步數(shù)據(jù);解密時以同步模式產(chǎn)生的密文與密碼流進行異或得到明文,同步模式采用63位Gold碼。整個加解密過程與發(fā)送數(shù)據(jù)格式如圖1所示。在發(fā)送密文中加入初始同步碼,接收端利用Gold碼的三值特性檢測Gold碼實現(xiàn)同步數(shù)據(jù)。對接收數(shù)據(jù)流和Gold碼做互相關運算,相關結果滿足Gold碼的三值特性,說明當前數(shù)據(jù)流是發(fā)送端加入的同步Gold碼.標志為密文的起始,然后調用解密算法對后續(xù)的密文解密,恢復傳輸?shù)臄?shù)據(jù)。
2.2 A5/1算法原理
A5/1引是GSM移動通信中數(shù)據(jù)傳輸?shù)牧髅艽a加密算法。A5/1密碼流產(chǎn)生器生成的密碼與明文數(shù)據(jù)幀的每一位相異或得到密文序列。A5/1算法由3個不同長度的線性反饋移位寄存器R1,R2,R3組成,其長度分別為19,22,23位,其反饋特征方程分別為:x18+x17+x16+x13+1,x22+x21+x20+x7+1。算法的初始密鑰是64位向量。密碼流輸出位為3個移位寄存器的異或輸出。移位寄存器的使能由多數(shù)函數(shù)控制。Rl的第8位、R2的第10位、R3的第10位為多數(shù)函數(shù)數(shù)據(jù)輸入,它們決定3個移位寄存器的移位狀況。在這3個數(shù)據(jù)位中,如果有兩個或兩個以上的都為0,多數(shù)函數(shù)值就為0;如果有兩個或兩個以上的都為1,多數(shù)函數(shù)值就為1。多數(shù)函數(shù)輸入的3個數(shù)據(jù)位中與多數(shù)函數(shù)值相同,相應的移位寄存器就移位。A5/1的硬件實現(xiàn)原理如圖2所示。密碼流的產(chǎn)生分兩個階段.第一階段給寄存器裝人64位初始值;第二階段則根據(jù)時鐘節(jié)拍和使能控制產(chǎn)生密碼流。
2.3 W7算法原理
W7H算法與A5/1算法在結構原理上有相似之處。W7算法由8個類似于A5/1算法硬件結構模塊并行組成,每一個模塊都包含3個線性反饋移位寄存器和多數(shù)函數(shù)。不同的是w7算法是128位的初始密鑰,線性反饋移位寄存器的長度圖2 A5/1算法的硬件實現(xiàn)原理和反饋結構都不同于A5/1算法。3個線性反饋移位寄存器長度分別為38、43、47位。8個并行模塊采用同一初始密鑰。但反饋結構和多數(shù)函數(shù)的輸入位均各不相同。8個模塊的輸出組成8位密碼流,加密效率更高。各線性移位寄存器由固定數(shù)據(jù)位通過邏輯與產(chǎn)生1位數(shù)據(jù),再將該位數(shù)據(jù)與最高位輸出異或,最后將3個移位寄存器輸出再異或輸出作為本并行塊的密碼位輸出。由于有8個并行塊,最后總的輸出8 bit,即1字節(jié)。設計時,每隔8個時鐘周期輸出一次,保證數(shù)據(jù)速率的一致性。
pos機相關文章:pos機原理
評論