自在自线亚洲а∨天堂在线-中文字幕一区视频播放-扒开双腿猛进入喷水高潮叫声-欧美日本亚洲一区二区-老熟妇高潮偷拍一区二区-国产精品高清一区二区不卡-午夜色福利视频一区二区三区-亚洲国产成人精品福利在线观看-亚洲欧美成人一区二区在线电影

機(jī)電之家資源網(wǎng)
單片機(jī)首頁|單片機(jī)基礎(chǔ)|單片機(jī)應(yīng)用|單片機(jī)開發(fā)|單片機(jī)文案|軟件資料下載|音響制作|電路圖下載 |嵌入式開發(fā)
培訓(xùn)信息
贊助商
DES加密算法的FPGA實(shí)現(xiàn)
DES加密算法的FPGA實(shí)現(xiàn)
 更新時(shí)間:2008-8-3 15:55:23  點(diǎn)擊數(shù):6
【字體: 字體顏色


    

1 引 言

隨著通信技術(shù)和網(wǎng)絡(luò)技術(shù)的飛速發(fā)展,對(duì)于數(shù)據(jù)傳輸安全性的要求也隨之增強(qiáng),因此人們提出了很多數(shù)據(jù)加密算法。基本加密算法有兩種:對(duì)稱密鑰加密、非對(duì)稱密鑰加密。其中,對(duì)稱密鑰加密也叫秘密/專用密鑰加密,即發(fā)送和接收數(shù)據(jù)的雙方必須使用相同的/對(duì)稱的密鑰對(duì)明文進(jìn)行加密和解密運(yùn)算。最著名的對(duì)稱密鑰加密標(biāo)準(zhǔn)是數(shù)據(jù)加密標(biāo)準(zhǔn)DES。DES是一種使用56個(gè)數(shù)據(jù)位的密鑰來操作64位數(shù)據(jù)塊的塊加密算法,由IBM公司推出,可同時(shí)對(duì)大量數(shù)據(jù)進(jìn)行快速加密。

DES的實(shí)現(xiàn)方法通常分為軟件實(shí)現(xiàn)和硬件實(shí)現(xiàn)兩種。軟件實(shí)現(xiàn)時(shí)速度較慢,軟件實(shí)現(xiàn)DES算法的最快速度不到150 Mb/s,在某些高速數(shù)據(jù)傳輸?shù)膱?chǎng)合,數(shù)據(jù)傳輸速率達(dá)到1 Gb/s以上,用軟件實(shí)現(xiàn)算法是無法滿足要求的;同時(shí),軟件實(shí)現(xiàn)DES算法在安全性方面也存在隱患,因此必須采用硬件實(shí)現(xiàn)。DES算法全部是邏輯運(yùn)算,用硬件實(shí)現(xiàn)時(shí)速度很快,通?梢赃_(dá)到軟件實(shí)現(xiàn)速度的幾十倍。FPGA(現(xiàn)場(chǎng)可編程門陣列)在實(shí)現(xiàn)算法方面具有靈活性、物理安全性和比軟件更高的速度性能,已成為硬件實(shí)現(xiàn)DES算法的最好選擇。

2 DES算法原理

DES算法是一種分組加密算法,他以64位的分組數(shù)據(jù)進(jìn)行加解密,數(shù)據(jù)加密和解密使用相同的算法結(jié)構(gòu),只是密鑰的使用順序不同。蜜鑰通常為64位,但每個(gè)第8位都用作奇偶校驗(yàn),實(shí)際密鑰長(zhǎng)度為56位。DES算法的保密性取決于密鑰,但只有極少數(shù)的密鑰被認(rèn)為是弱密鑰,所以在實(shí)際的應(yīng)用中可以很容易避免。圖1為DES算法的流程圖。

DES算法的基本流程如下:首先,輸入明文通過初始置換,將其分成左、右各為32位的兩個(gè)部分,然后進(jìn)行16輪完全相同的運(yùn)算。經(jīng)過16輪運(yùn)算后,左、右半部分合并在一起經(jīng)過一個(gè)末置換(初始置換的逆置換),于是整個(gè)算法結(jié)束。

在每一輪運(yùn)算中,密鑰位移位,然后再?gòu)拿荑的56位中選取48位。通過一個(gè)擴(kuò)展置換,將數(shù)據(jù)的右半部分?jǐn)U展為48位,并通過一個(gè)異或操作與一個(gè)48位密鑰結(jié)合,通過8個(gè)S盒將這48位替代成新的32位數(shù)據(jù),再通過一級(jí)置換操作。這四步操作即為圖1中的函數(shù)f。圖2給出了函數(shù)f的計(jì)算流程圖。

假設(shè)Bi是第i次迭代的結(jié)果,Li和Ri為Bi的左半部分和右半部分,Ki是第i輪的48位密鑰,那么每一輪就是:

3具體硬件實(shí)現(xiàn)

DES算法的硬件實(shí)現(xiàn)以圖1為基礎(chǔ),其中的初始置換和末置換的實(shí)現(xiàn)比較簡(jiǎn)單,具體可參考文獻(xiàn)[1]。硬件實(shí)現(xiàn)的關(guān)鍵在于如何實(shí)現(xiàn)函數(shù)f和每一輪迭代中密鑰。本文重點(diǎn)研究了DES算法中函數(shù)f的實(shí)現(xiàn)方法,并給出了 實(shí)際代碼。

函數(shù)f的實(shí)現(xiàn)參照?qǐng)D2,首先將數(shù)據(jù)的右半部分?jǐn)U展為48位數(shù)據(jù),該操作的目的是產(chǎn)生與密鑰同長(zhǎng)度的數(shù)據(jù)以進(jìn)行異或操作。異或操作的結(jié)果(48位)進(jìn)行S盒替代,將數(shù)據(jù)壓縮為32位。每個(gè)S盒都有6位的輸入,4位的輸出,48位的輸入被分為8個(gè)6位的分組,每一個(gè)分組對(duì)應(yīng)一個(gè)S盒替代操作。每個(gè)S盒是一個(gè)4行、16列的表,輸入位以一種特殊的方式確定S盒中的項(xiàng)。假定將S盒的6位輸入標(biāo)記為x0,x1,x2,x3,x4,x5。則x0和x5組合成2位的數(shù),從0~3,對(duì)應(yīng)表中的一行,x2~x5構(gòu)成一個(gè)4位的數(shù),從0~15,對(duì)應(yīng)表中的一列。限于篇幅,本文僅給出S1盒的置換,具體如表1所示。

整個(gè)模塊的實(shí)現(xiàn)代碼如下:


在函數(shù)f的實(shí)現(xiàn)中,我們使用例化調(diào)用了S box1~8。S盒是DES中的非線性模塊,直接決定DES算法的安全性。根據(jù)表1,我們使用CASE語句可以方便地實(shí)現(xiàn)S盒。S盒的實(shí)現(xiàn)方法相同,本文只給出S1盒第0行的實(shí)現(xiàn)。參考文獻(xiàn)[1-3]的S盒替代函數(shù),根據(jù)本文給出的方法,可以方便地實(shí)現(xiàn)函數(shù)f。


4測(cè)試仿真及結(jié)果

DES模塊在QuartusⅡ5.1版本中,綜合結(jié)果表明:該DES模塊耗費(fèi)4362LE,該模塊下載到EP1S10B672C6芯片中,最高工作頻率可達(dá)106.85 MHz。由于本設(shè)計(jì)采用16級(jí)流水總線設(shè)計(jì),所以最高數(shù)據(jù)編碼/解碼速率可達(dá)6 Gb/s。在Quartus中的仿真結(jié)果如圖3所示。其中,de-crypt為加密/解密模式選擇信號(hào),低電平為加密模式,高電平為解密模式。desIn為輸入信號(hào),desOut為輸出信號(hào),key為密鑰。根據(jù)文獻(xiàn)[4],采用675A69675E5A6B5A作為明文,5B5A57676A56676E作為密鑰,加密后的密文應(yīng)為974AFFBF86022D1F。因此,我們采用以上的數(shù)據(jù)作為測(cè)試向量,對(duì)設(shè)計(jì)進(jìn)行了測(cè)試。測(cè)試結(jié)果表明:本設(shè)計(jì)的加密/解密功能完全正確。



[1] [2]  下一頁
  • 上一篇: 線性匹配獨(dú)立電流源與傳統(tǒng)白光LED驅(qū)動(dòng)器解決方案之間的對(duì)比
  • 下一篇: 雙Nios II軟核在嵌入式系統(tǒng)中的應(yīng)用
  • 發(fā)表評(píng)論   告訴好友   打印此文  收藏此頁  關(guān)閉窗口  返回頂部
    熱點(diǎn)文章
     
    推薦文章
     
    相關(guān)文章
    網(wǎng)友評(píng)論:(只顯示最新5條。)
    關(guān)于我們 | 聯(lián)系我們 | 廣告合作 | 付款方式 | 使用幫助 | 機(jī)電之家 | 會(huì)員助手 | 免費(fèi)鏈接

    點(diǎn)擊這里給我發(fā)消息66821730(技術(shù)支持)點(diǎn)擊這里給我發(fā)消息66821730(廣告投放) 點(diǎn)擊這里給我發(fā)消息41031197(編輯) 點(diǎn)擊這里給我發(fā)消息58733127(審核)
    本站提供的機(jī)電設(shè)備,機(jī)電供求等信息由機(jī)電企業(yè)自行提供,該企業(yè)負(fù)責(zé)信息內(nèi)容的真實(shí)性、準(zhǔn)確性和合法性。
    機(jī)電之家對(duì)此不承擔(dān)任何保證責(zé)任,有侵犯您利益的地方請(qǐng)聯(lián)系機(jī)電之家,機(jī)電之家將及時(shí)作出處理。
    Copyright 2007 機(jī)電之家 Inc All Rights Reserved.機(jī)電之家-由機(jī)電一體化網(wǎng)更名-聲明
    電話:0571-87774297 傳真:0571-87774298
    杭州濱興科技有限公司提供技術(shù)支持

    主辦:杭州市高新區(qū)(濱江)機(jī)電一體化學(xué)會(huì)
    中國(guó)行業(yè)電子商務(wù)100強(qiáng)網(wǎng)站

    網(wǎng)站經(jīng)營(yíng)許可證:浙B2-20080178-1