DS5250微控制器评估(EV)板是经过验证的用于评估这款高速微控制器的平台,本应用笔记介绍了如何设置评估板,并根据应用的位长需要产生RSA密钥的方法。采用Keil µVision2®编译器开发库文件和例程。利用微控制器工具箱(MTK)在评估板上装载程序并观察结果。
引言
本应用笔记介绍了DS5250安全微控制器评估(EV)板的设置(如需购买该评估板,请联系技术支持)。本文介绍了如何使用微控制器的库文件产生RSA密钥。
评估板包括DS5250微控制器、1MB电池备份SRAM、1MB闪存存储器和稳压器、两个DB-9串口连接器以及用于控制、显示电路板工作状态的开关和LED。增加一个电源和连接个人计算机的RS-232电缆,即可得到一个功能完备的DS5250评估系统。
产生RSA密钥
如需获得用于产生RSA密钥例程的二进制码(rsa.hex)和程序代码,请联系技术支持。按照下文中的为DS5250-KIT评估板装载应用例程部分装载并运行程序。
安装并运行产生RSA密钥的C语言应用程序序要使用Keil µVision2 IDE。
安装Keil µVision2 IDE。
打开项目rsa.uv2
点击Project产生rsa.hex文件。
为DS5250-KIT评估板装载应用例程
利用微控制器工具箱(MTK)将应用程序装载到评估板,最新版本的MTK应用软件可从网站下载。安装MTK,运行安装文件并按照指令操作。完成安装后,菜单上将会添加一个新的选项:Start——All Programs——Dallas Semiconductor MTK。运行MTK后,可以看到一个类似于图1的对话框。
图1. 启动时的MTK选项
选择DS5250选项与评估板通信。从MTK菜单,Options——Configure Serial Port,选择您所使用的COM口并选择115200数据速率。然后选择Target——Open COMx port at 115200 baud选项和Target——Connect to Loader,对评估板进行复位。DS5250装载器应该输出以下类似信息:
DS5250 SECURE LOADER VERSION 1.0 COPYRIGHT (C) 2002 DALLAS SEMICONDUCTOR LID: 62E9490700000071 8284 >
发送以下命令至装载器可以对评估板的存储器进行配置:
W MSIZE 12*¹ W MCON 81²
¹W MSIZE 12定义外部程序和数据存储器尺寸为512Kb。
¹W MCON 81定义存储器为分区模式。
从File菜单,选择Load HEX File,然后选择所创建的rsa.hex文件。
选择Target——Disconnect from Loader将程序装载到评估板,提示信息如图2所示。
输入所要产生密钥的位长:
输入数字(例如1024)并等待显示结果,该应用程序的运行状态如图2所示。产生一个1024位的RSA密钥,加密并解密随机信息大约需要60秒的时间。每次运行时间可能有所差异,表1列出了产生一个不同位长的RSA密钥所需时间的最小值、最大值以及平均值。
图2. 应用例程的执行状况和结果
利用RSA密钥库文件开发一个简单应用
库文件提供了四个简单易用的C接口函数,用来产生密钥或利用私钥/公钥对用户信息进行加密/解密。请参考rsalib.h文件查看这些接口的原型设计。本应用笔记提供的设计实例用来说明这些接口函数的使用:
rsa_generateKeySet(...) rsa_bignumModExp(...) rsa_newNum() rsa_freeNum()
以下给出了不同位长情况下的典型测试结果。
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 |
结论
Maxim提供的用于产生RSA密钥的库文件能够使C程序对DS5250微控制的硬件功能及性能进行评估,所产生的RSA密钥可以达到4096位。
审核编辑:郭婷
全部0条评论
快来发表一下你的评论吧 !