利用DS5250产生RSA密钥

描述

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位。

审核编辑:郭婷

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分