999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于安全加密算法的數字邏輯仿真實驗平臺

2017-06-19 19:29:48付秀偉高興泉
實驗室研究與探索 2017年5期
關鍵詞:課程設計

付秀偉, 高興泉, 付 莉

(吉林化工學院 信息與控制工程學院,吉林 吉林 132022)

基于安全加密算法的數字邏輯仿真實驗平臺

付秀偉, 高興泉, 付 莉

(吉林化工學院 信息與控制工程學院,吉林 吉林 132022)

為形成計算機專業特有的“數字邏輯”課程實驗體系以及解決硬件基礎課程之間和專業課程銜接差、課程工程實訓薄弱的問題,提出一種基于安全加密算法的數字邏輯仿真實驗平臺。以S-DES加密算法安全系統為例,介紹S-DES加密算法原理,利用Quartus II仿真軟件平臺建立圖形化加密算法模型,同時利用Visual C++開發平臺程序化實現算法,分別進行系統仿真驗證,相互校驗仿真結果。實驗表明,通過引入專業知識、以工程角度實現硬件基礎課程實驗內容,可增強實驗課程內容層次性,有效提升學生工程實踐意識。

數字邏輯; 加密算法; 實驗平臺; 仿真軟件

0 引 言

“數字電路與邏輯設計”課程是高校計算機專業必修的一門硬件基礎課程[1],也是專門為大二計算機專業學生量身定做的課程之一。其課程內容著重于邏輯抽象又應用于工程實踐[2],但又區別于其他電子類專業“數字電子技術”課程的培養要求。從計算機專業學生的培養方向而言,更立足于培養計算機專業的學生掌握邏輯器件設計到計算機系統設計的全過程,進而掌握計算機硬件系統結構、工作原理,設計數字系統中時序和組合邏輯電路[3]。在邏輯分析和電子電路兩方面[4],數字邏輯課程更側重邏輯分析,為后續“計算機組成原理”課程做良好的知識儲備。由于教學內容與數字電子技術相似度較高,實驗內容基本相同,導致無法正確培養計算機專業學生的邏輯分析能力。

隨著可編程邏輯技術的不斷發展,EDA技術也脫穎而出,將EDA技術引入數字邏輯課程實驗教學中是必然的,但也急需選擇適合于數字邏輯實驗課程學時和培養目標且具有層次性、擴展性、靈活性的實驗內容,同時設計內容要為后續硬件基礎課程及專業基礎課程打下基礎,本文以S-DES安全加密算法仿真實現為例,利用Altera公司的Quartus II仿真平臺搭建系統模型,將簡單易行的組合邏輯電路及設計模塊成功結合,從而熟練掌握EDA技術的數字系統設計方法,另外,在開放式實驗教學過程中,學生可預先利用大一學到的C語言進行算法測試及驗證,加強課程緊密性,也讓學生辨識軟件和硬件的區別[5]。

S-DES加密算法原理簡單,一直作為“計算機網絡安全”和“云計算”專業課程的一部分引入,但通過數字邏輯實驗課程引入內容后,學生既可以理解基本組合邏輯和時序邏輯功能,也可以利用邏輯電路應用于工程實踐。這種承前啟后的實驗課程內容,既簡單易實現,又依托于工程實踐,促進學生更好地理解和掌握理論知識,提升學生學習興趣和學習的滿足感,也為后續基礎和專業課程均打下基礎。

1 安全加密算法原理

安全密碼技術自古以來被人們沿用,在電子、通信、計算機發展的時代[6],加密算法作為信息安全保障的核心技術被廣泛應用。在密碼體制中有兩種類型:對稱密碼體制和非對稱密碼體制,對應的算法為對稱和非對稱加密算法。這些安全算法可有效地保密信息安全、防止信息篡改和確認身份。20世紀70年代美國公開的DES加密算法是應用最廣的對稱加密算法之一,其特點是算法的加密和解密過程使用相同密鑰且保密。算法模型框圖如圖1所示。

圖1 對稱加密模型框圖

圖1中明文P通過加密算法加密后得到密文C,傳輸給接收方,接收到的密文通過相同的安全密鑰進行解密操作,得到發送方給予的信息內容。其中雙方必須以安全通道獲取密鑰源,保障信息安全。而破譯者只能在傳輸過程中獲取密文,進行破譯得到明文和密鑰。

S-DES是具有擴展性適用于教學的一種加密算法,由Santa Clara大學的Edward Schaefer教授提出[7]。與DES加密算法基本原理基本相同且簡單易實現,其內部核心部件采用Feistal結構,常被應用于圖像處理方面。S-DES加密算法仍屬于對稱加密算法,在輸入明文后經過IP置換、Fk函數、SW交換、IP-1逆置換進行加密運算得到密文C,在此過程中密鑰源形成子密鑰,添加入Fk函數中。而接收方得到密文后同樣采用該算法以相同方式進行運算,但區別于加密過程中子密鑰的加載到Fk函數順序完全倒置。S-DES加密算法流程圖如圖2所示。

圖2 S-DES加密算法流程圖

圖2中,L和R代表數據的左、右部分各4 bit,⊕代表異或操作。IP置換是簡單的數據位置互換,按照指定規則將原有P1,P2,P3,P4,P5,P6,P7,P8位置變換成P2,P6,P3,P1,P4,P8,P5,P7;與之相對應的IP-1逆置換則將得到的數據變換為D4,D1,D3,D5,D7,D2,D8,D6。主體運算為Fk函數,基本函數為

(1)

式(1)中,L和R表示數據左右兩部分,SK是子密鑰之一,而⊕是逐位異或函數,F為其內部S-BOX與置換操作。其內部包括擴展置換E/P(左/右移位)、基于Feistal結構的S-BOX和循環左移操作,同時,擴展置換E/P后引入子密鑰,與原數據異或操作,得到數據根據矩陣行列式位置選擇S-BOX內部數據,組合得到運算結果。一輪運算后對調數據左右兩部分,再次進行Fk函數的輪運算。最后一輪運算后直接將數據組合進行IP-1逆置換得到密文C。

圖2中key1和key2表示右密鑰源生成的兩個子密鑰。子密鑰生成過程主要是左移運算,但移位數據有所不同。密鑰源同樣進行規定的置換操作,置換后數據分為左右兩部分,分別左移1位,將其組合提取其中8 bit,即為子密鑰key1。同時上述數據組合后再左移1位,重新組合提取其中8 bit,即為子密鑰key2。

2 安全加密系統仿真實驗平臺實現

根據加密算法原理邏輯性強運算流水性特點,本文利用EDA技術中Quartus II開發平臺進行系統設計,同時借助Visual C++仿真平臺進行安全系統設計結果對比驗證。該平臺的圖形化設計清晰形象,靈活性強、運算速度快,仿真驗證效果直觀,學生在有限的學時里可快速建立模型,驗證正確性,激活了學生興趣,提升學習效率和工程實踐意識。

2.1 Quartus II仿真實現

根據S-DES加密算法工作原理分析,算法加密與解密操作簡單,硬件實現快速安全、靈活性較高[8]。利用Quartus II平臺可建立圖形化模型,有利于學生分析和建模。系統結構圖如圖3所示。

圖3 S-DES系統設計結構圖

系統時鐘加載入系統中,為保證系統運行穩定,對子密鑰生成模塊輸入相對于加密/解密模塊具有較高的頻率,提前運行子密鑰生成模塊,為加密/解密模塊運行做充分準備。控制模塊可利用使能鍵進行加密和解密操作,最終輸出正確結果。

Quartus II是由Altera公司開發的一種綜合性FPGA/PLD集成仿真工具軟件[9-10]。該平臺支持多種硬件描述語言:VHDL、AHDL、Verilog HDL等,用戶可以利用Quartus II軟件的文本輸入方式、模塊輸入方式、EDA設計輸入工具等方式等進行電路描述。軟件內部支持IP核,方便調用各種成熟模塊,同時具有集成仿真工具。具有功能集成度高、界面統一、靈活性強、速度快等優點。

根據算法原理和系統結構,本文對結構圖3中各個模塊分別進行圖形化設計,其各部分電路利用Quartus II平臺內部模塊調用及硬件語言編輯合成模塊進行搭建。依據實驗室內現有開發硬件平臺具有20 MHz時鐘晶振,設定系統時鐘為20 MHz,在系統內部高性能嵌入式模擬鎖相環及VHDL語言編輯下進行分頻操作,得到相差10倍的頻率f1和f2分別輸入至子密鑰生成模塊和加密/解密模塊。

加密算法中由密鑰源生成子密鑰的過程及其重要,子密鑰為主體運算提供鑰匙,保證系統安全[11-12]。子密鑰及控制設計電路圖如圖4所示。

圖4 子密鑰及控制頂層設計電路圖

圖4中輸入按鍵有3個:RES、EN1、EN2,密鑰源輸入為key,輸出時能信號EN,輸出子密鑰key1和key2。當復位信號RES=‘1’時,密鑰源的工作停止,加密/解密操作終止;當RES=‘0’時,控制加密使能EN1或解密使能EN2控制系統。根據組合邏輯電路數據選擇器原理設計控制模塊,進行功能性選擇,控制模塊等待提前生成的子密鑰key1和key2輸入,以保證加密/解密子密鑰輸入正確順序。其中,key1和key2在兩次置換操作中進行分組循環左移1 bit和2 bit操作。為了保證結構清晰,將key1和key2設計電路利用軟件內Create Symbol Files for current File生成子模塊。

控制模塊輸出模式選擇后的子密鑰key1和key2作為主體運算電路的輸入信號,連接加密/解密運算電路圖的keyA和keyB,另外輸入分頻后頻率f2連接clk0作為參考信號,輸入加密/解密信息P,根據S-DES工作原理,通過存儲器、異或門、循環左移寄存器、右移寄存器、16選1數據選擇器共同完成頂層加解密運算,輸出解密/加密結果。加密/解密頂層設計電路圖如圖5所示。

在系統各個模塊完成后,同樣利用子模塊生成方法,將各部分頂層電路圖生成子模塊,利用圖形法搭建整體電路模型。通過Quartus II平臺自帶仿真工具Simulator對設計電路進行綜合、編譯、仿真,建立波形文件[13]。

系統時鐘周期50 ns,為了驗證系統加密/解密正確性,加密使能EN1和解密使能EN2對應提前設定輸入信息“00010111”和“00001011”,加載密鑰源“0000101101”,在運算操作下驗證系統輸出值C及子密鑰值。仿真波形圖如圖6所示。

2.2 C語言程序化仿真實現

在數字邏輯課程之前,學生大一期間已學過C語言程序設計,為了更好鏈接和驗證新知識,可利用Visual C++開發平臺進行程序驗證。該軟件類管理靈活方便、可自動生成程序框架、界面設計與代碼編寫交互方便,學生對新知識可利用已學內容進行預習或驗證,提升對知識點的理解和學習興趣。

圖5 加密/解密運算頂層設計電路圖

圖6 S-DES安全加密算法系統仿真圖

界面工作區定義明文、密文、密鑰源以及運算中間變量,根據S-DES工作原理對代碼輸入、密鑰源輸入、子密鑰生成、Fk函數、異或操作、IP和IP-1變換以及擴展置換等分別定義編輯,該算法的核心部分就是Fk函數,其內部具有非線性S-BOX,可有效保證信息安全。Fk函數運算[14]的主要程序如下:

Void fk(char sub_key[8])

{int i;

for(i=0;i<4;i++)

{ l[i]=code[i];r[i]=code[i+4];}//分離數據

for(i=0;i<8;i++)

temp[i]=XOR(r[EP[i]-1],sub_key[i]);

//擴展后異或操作

for(i=0;i<4;i++)

{ ln[i]=temp[i];rn[i]=temp[i+4];}

//左右數據分別存放

box(ln,S_a); // S-BOX0運算

temp[4]=temp[6];

temp[5]=temp[7]; //移位放置

box(rn,S_b); // S-BOX1運算

temp[0]=temp[5];temp[1]=temp[7];

temp[2]=temp[6];temp[3]=temp[4];

//P4置換

for(i=0;i<4;i++)

l[i]=XOR(temp[i],l[i]);i=0;

//左右數據再次異或

while(i<4){code[i]=l[i];i++;}

while(i<8){code[i]=r[i-4];i++;}//合并數據

通過程序編寫,編譯成功后運行程序,得到界面如圖7所示。

圖7 Visual C++加密系統仿真

通過Visual C++平臺系統仿真,可以觀察到基于軟件實現的S-DES加密算法運算過程中明文、密鑰源及密文與硬件編輯開發平臺Quartus II輸入相同的情況下,系統仿真結果完全相同。在圖形化設計與語言編輯設計兩種方式實現過程中,學生可充分理解時序邏輯電路與組合邏輯電路的系統功能,同時,以工程角度在多種設計形式下,增強學生對知識應用的靈活性。

3 結 語

基于計算機專業數字邏輯課程培養方向和目標,以安全加密算法中S-DES算法原理為基礎,利用Quartus II平臺進行圖形化設計以及在Visual C++平臺上的C程序化設計分別實現該算法,多種形式下進行系統仿真,對比實驗結果驗證其準確性。設計內容承上啟下,難度適中,靈活性強且可擴展至其他復雜的加密算法,既有助于數字邏輯課程內容理解,也為后續計算機組成原理、微機原理、云計算等課程打下良好知識基礎。該實驗平臺拓展學生數字系統設計思維,提升了學生工程實踐意識,也增強了課程學習興趣。

[1] 田淑珍,賈玉榮.仿真工具在數字邏輯實驗中的應用[J].實驗技術與管理,2015,32(1): 124-126.

[2] 李 文,黃 文,趙全友,等.Multisim仿真的數字邏輯工程素養培養[J].實驗室研究與探索,2014,33(12):62-65.

[3] 盛建倫,鞏玉璽,劉淑霞,等.計算機專業硬件基礎課程實驗教學體系的研究[J].實驗室研究與探索,2013,32(10): 387-391.

[4] 盛建倫,劉淑霞,王 勇,等.數字邏輯實驗技術改革的研究[J].實驗技術與管理,2015,32(4):216-219.

[5] 唐志強.計算機專業數字邏輯實驗的改革與創新[J].實驗室研究與探索,2013,32(10): 182-184.

[6] 鄭 東,趙慶蘭,張應輝.密碼學綜述[J].西安郵電大學學報,2013,18(6):1-10.

[7] William Stalling著.楊 明等譯.密碼編碼學與網絡安全:原理與實踐[M].3版,北京:電子工業出版社,2001:181-187.

[8] Tselepis I N,Bekakos M P. An FPGA hardware parallel implementation of the DES algorithm[J]. Neural Parallel and Scientific Computations,2004,12(4):1061-5369.

[9] 劉若鵬.電子式互感器數據采集器的研究[D].成都:西華大學,2013:31-33.

[10] 王振華.基于FPGA的超高速數據采集系統的開發[D].北京:清華大學,2006:90-99.

[11] 黃 慧,江榮榮,譚 敏,等.基于FPGA的加密算法實現[J].合肥學院學報(自然科學版),2015,25(1):35-38.

[12] 付 莉.一種基于改進DES算法的高效率FPGA硬件實現[J].桂林電子科技大學學報,2009,29(6):493-496.

[13] 易 藝,郝建衛.FPGA在數字邏輯電路教學中的應用[J].實驗科學與技術,2016,14(2):12-15.

[14] 郝 偉,曹代勇,胥 哲,等.中國煤炭特性數據庫數據加密技術研究[J].中國煤炭,2008,34(10):58-60.

·名人名言·

建立以提高教育質量為導向的管理制度和工作機制,把教育資源配置和學校工作重點集中到強化教學環節、提高教育質量上來。制定教育質量國家標準,建立健全教育質量保障體系。加強教師隊伍建設,提高教師整體素質。

——摘自《國家中長期教育改革和發展規劃綱要》

Simulation Experiment Platform for Digital Logic Based on Secure Encryption Algorithm

FUXiuwei,GAOXingquan,FULi

(College of Information & Control Engineering, Jilin Institute of Chemical Technology, Jilin 132022, Jilin, China)

In order to realize experimental teaching system of “digital logic” course for computer major and resolve the problems with poor cohesion among hardware basic courses and professional courses, and weakness in engineering training, a digital logic simulation experiment platform based on secure encryption algorithm is proposed in this paper. Taking S-DES encryption algorithm secure system as an example, the principle of S-DES is introduced, and a graphical model of encryption algorithm is built by using Quartus II. In addition, the algorithm is programmed by using Visual C++. Simulation results are compared for the two methods. Experiments show that level of experiment course content and students’ consciousness of engineering practice are enhanced by introducing professional knowledge and implementing hardware basic experimental content with project idea.

digital logic; encryption algorithm; experiment platform; simulation software

2016-09-10

吉林省教育廳項目(20140352);吉林省科技發展計劃項目(20150520114JH)

付秀偉(1983-),男,山東新泰人,碩士,講師,研究方向為嵌入式系統及電子技術。

Tel.:15044660536;E-mail:fxw7720268@163.com

TP 302

A

1006-7167(2017)05-0106-04

猜你喜歡
課程設計
《無機化學》課程教學改革
云南化工(2021年6期)2021-12-21 07:31:42
數字圖像處理課程混合式教學改革與探索
何為設計的守護之道?
現代裝飾(2020年7期)2020-07-27 01:27:42
軟件設計與開發實踐課程探索與實踐
計算機教育(2020年5期)2020-07-24 08:53:38
《豐收的喜悅展示設計》
流行色(2020年1期)2020-04-28 11:16:38
為什么要學習HAA課程?
瞞天過海——仿生設計萌到家
藝術啟蒙(2018年7期)2018-08-23 09:14:18
設計秀
海峽姐妹(2017年7期)2017-07-31 19:08:17
有種設計叫而專
Coco薇(2017年5期)2017-06-05 08:53:16
“學而時習之”的課程值得贊賞
教育與職業(2014年1期)2014-04-17 14:28:07
主站蜘蛛池模板: 国产成人乱无码视频| 综合亚洲色图| 亚洲国产日韩视频观看| 亚洲乱码精品久久久久..| 九九热在线视频| 2024av在线无码中文最新| 国产菊爆视频在线观看| 国产91导航| 色综合五月婷婷| 亚洲AV无码乱码在线观看代蜜桃| 69国产精品视频免费| 日本高清免费不卡视频| 黄片一区二区三区| 91 九色视频丝袜| 欧美中文一区| 白浆免费视频国产精品视频 | 国产H片无码不卡在线视频| AV不卡国产在线观看| 久久综合五月| 欧美成人一区午夜福利在线| 亚洲另类色| 91蜜芽尤物福利在线观看| 成人免费网站久久久| 久久精品这里只有国产中文精品| 国产人人射| 日韩成人高清无码| 亚洲一区国色天香| 91精品啪在线观看国产91| 亚洲日韩高清在线亚洲专区| 久久精品人人做人人爽电影蜜月| 91毛片网| 91丝袜乱伦| 18黑白丝水手服自慰喷水网站| 99re视频在线| 国产一二视频| 国产嫩草在线观看| 欧美69视频在线| 午夜福利亚洲精品| 理论片一区| 久久中文无码精品| 啪啪国产视频| 97久久免费视频| 国产极品美女在线观看| 天堂在线视频精品| 久久成人国产精品免费软件| 欧美成人午夜影院| 久久成人国产精品免费软件 | 国产高清国内精品福利| 久久77777| 伊人久久婷婷五月综合97色| 香蕉视频在线精品| 手机精品视频在线观看免费| 欧美区日韩区| 一级全黄毛片| 国产一区二区三区在线观看视频| 毛片在线看网站| 久久久噜噜噜| 青青草原偷拍视频| 国产91线观看| 玖玖精品在线| 国产精品va| 91探花国产综合在线精品| 日本久久久久久免费网络| 91视频区| 欧美成一级| 在线国产91| 好吊日免费视频| 最新日韩AV网址在线观看| 毛片免费观看视频| 国产日韩欧美视频| 国产福利一区二区在线观看| 欧美高清视频一区二区三区| 国产美女免费| 99视频在线观看免费| 美女被操91视频| 91色国产在线| 97精品伊人久久大香线蕉| 日韩精品一区二区三区视频免费看| 亚洲天堂视频网站| 亚洲系列无码专区偷窥无码| 免费无码网站| 色国产视频|