DS5250微控制器評(píng)估(EV)板是經(jīng)過(guò)驗(yàn)證的用于評(píng)估這款高速微控制器的平臺(tái),本應(yīng)用筆記介紹了如何設(shè)置評(píng)估板,并根據(jù)應(yīng)用的位長(zhǎng)需要產(chǎn)生RSA密鑰的方法。采用Keil μVision2?編譯器開(kāi)發(fā)庫(kù)文件和例程。利用微控制器工具箱(MTK)在評(píng)估板上裝載程序并觀察結(jié)果。
引言
本應(yīng)用筆記介紹了DS5250安全微控制器評(píng)估(EV)板的設(shè)置(如需購(gòu)買該評(píng)估板,請(qǐng)聯(lián)系技術(shù)支持)。本文介紹了如何使用微控制器的庫(kù)文件產(chǎn)生RSA密鑰。
評(píng)估板包括DS5250微控制器、1MB電池備份SRAM、1MB閃存存儲(chǔ)器和穩(wěn)壓器、兩個(gè)DB-9串口連接器以及用于控制、顯示電路板工作狀態(tài)的開(kāi)關(guān)和LED。增加一個(gè)電源和連接個(gè)人計(jì)算機(jī)的RS-232電纜,即可得到一個(gè)功能完備的DS5250評(píng)估系統(tǒng)。
產(chǎn)生RSA密鑰
如需獲得用于產(chǎn)生RSA密鑰例程的二進(jìn)制碼(rsa.hex)和程序代碼,請(qǐng)聯(lián)系技術(shù)支持。按照下文中的為DS5250-KIT評(píng)估板裝載應(yīng)用例程部分裝載并運(yùn)行程序。
安裝并運(yùn)行產(chǎn)生RSA密鑰的C語(yǔ)言應(yīng)用程序序要使用Keil μVision2 IDE。
安裝Keil μVision2 IDE。
打開(kāi)項(xiàng)目rsa.uv2
點(diǎn)擊Project產(chǎn)生rsa.hex文件。
為DS5250-KIT評(píng)估板裝載應(yīng)用例程
利用微控制器工具箱(MTK)將應(yīng)用程序裝載到評(píng)估板,最新版本的MTK應(yīng)用軟件可從網(wǎng)站下載。安裝MTK,運(yùn)行安裝文件并按照指令操作。完成安裝后,菜單上將會(huì)添加一個(gè)新的選項(xiàng):Start——All Programs——Dallas Semiconductor MTK。運(yùn)行MTK后,可以看到一個(gè)類似于圖1的對(duì)話框。
圖1. 啟動(dòng)時(shí)的MTK選項(xiàng)
選擇DS5250選項(xiàng)與評(píng)估板通信。從MTK菜單,Options——Configure Serial Port,選擇您所使用的COM口并選擇115200數(shù)據(jù)速率。然后選擇Target——Open COMx port at 115200 baud選項(xiàng)和Target——Connect to Loader,對(duì)評(píng)估板進(jìn)行復(fù)位。DS5250裝載器應(yīng)該輸出以下類似信息:
DS5250 SECURE LOADER VERSION 1.0 COPYRIGHT (C) 2002 DALLAS SEMICONDUCTOR LID: 62E9490700000071 8284 >
發(fā)送以下命令至裝載器可以對(duì)評(píng)估板的存儲(chǔ)器進(jìn)行配置:
W MSIZE 12*1 W MCON 812
1W MSIZE 12定義外部程序和數(shù)據(jù)存儲(chǔ)器尺寸為512Kb。
1W MCON 81定義存儲(chǔ)器為分區(qū)模式。
從File菜單,選擇Load HEX File,然后選擇所創(chuàng)建的rsa.hex文件。
選擇Target——Disconnect from Loader將程序裝載到評(píng)估板,提示信息如圖2所示。
輸入所要產(chǎn)生密鑰的位長(zhǎng):
輸入數(shù)字(例如1024)并等待顯示結(jié)果,該應(yīng)用程序的運(yùn)行狀態(tài)如圖2所示。產(chǎn)生一個(gè)1024位的RSA密鑰,加密并解密隨機(jī)信息大約需要60秒的時(shí)間。每次運(yùn)行時(shí)間可能有所差異,表1列出了產(chǎn)生一個(gè)不同位長(zhǎng)的RSA密鑰所需時(shí)間的最小值、最大值以及平均值。
圖2. 應(yīng)用例程的執(zhí)行狀況和結(jié)果
利用RSA密鑰庫(kù)文件開(kāi)發(fā)一個(gè)簡(jiǎn)單應(yīng)用
庫(kù)文件提供了四個(gè)簡(jiǎn)單易用的C接口函數(shù),用來(lái)產(chǎn)生密鑰或利用私鑰/公鑰對(duì)用戶信息進(jìn)行加密/解密。請(qǐng)參考rsalib.h文件查看這些接口的原型設(shè)計(jì)。本應(yīng)用筆記提供的設(shè)計(jì)實(shí)例用來(lái)說(shuō)明這些接口函數(shù)的使用:
rsa_generateKeySet(...) rsa_bignumModExp(...) rsa_newNum() rsa_freeNum()
以下給出了不同位長(zhǎng)情況下的典型測(cè)試結(jié)果。
RSA Bit Length Generated | Number of Tests Run |
Minimum Time Taken for the Test (in seconds) |
Maximum Time Taken for the Test (in seconds) |
Average Time Taken per Test (in seconds) |
256 | 60 | 3.4 | 10.3 | 4.8 |
512 | 60 | 6.1 | 21.0 | 10.76 |
1024 | 60 | 13.5 | 62.0 | 26.6 |
2048 | 60 | 36.6 | 313.2 | 122.4 |
3072 | 30 | 102.7 | 731.9 | 369.8 |
結(jié)論
Maxim提供的用于產(chǎn)生RSA密鑰的庫(kù)文件能夠使C程序?qū)S5250微控制的硬件功能及性能進(jìn)行評(píng)估,所產(chǎn)生的RSA密鑰可以達(dá)到4096位。
審核編輯:郭婷
-
微控制器
+關(guān)注
關(guān)注
48文章
7336瀏覽量
150100 -
穩(wěn)壓器
+關(guān)注
關(guān)注
24文章
4163瀏覽量
92990 -
存儲(chǔ)器
+關(guān)注
關(guān)注
38文章
7366瀏覽量
163091
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論