描述:
808协议部标1024位RSA加解密算法
我最近在开发一个车载定位设备,要实现交通部的通讯协议,其中涉及到RSA算法。我到网上下了一套RSA的代码,并成功移植到了工程里面,测试初步确认代码正确,是在128位的情况下实现的,128位的情况下生成密钥所花费的时间大概在10秒内。但是《部标协议》要求实现1024位的RSA加密,经过实测,设备要生成1024位的密钥简直是做梦!设备是LPC系列的芯片,主频100M,想向大家讨教下有经验的人事,随机生成1024位的密钥在你们的设备上可行吗?
另外,熟悉《部标协议》的朋友我想请教下,RSA加密一定要实现?
解决方案1:
基本都是1024的。180MHZ的处理器用过,没问题。
解决方案2: 实际上,RSA 密钥生成的大量时间是花在随机生成的 P 和 Q 参数的素性检验和重新生成上了。
如果你的存储空间够大,可以事先存一些筛选过的素数。
我现在也在做这方面 也是嵌入式LPC ,可以参考一下你的代码吗,或者你下载的移植前代码,谢谢, 我的邮箱honcing@163.com
解决方案4:用fpga试试
解决方案5:楼主。。。我现在也在找这方面的东西。。。能不能把你下载代码的地址给我。。。我找了很久都没有找到。。。
解决方案6: 一定要在设备中生成密钥对吗?
如果不是这样,可以用主机通过加密机在初始化时将外部生成的密钥下载到设备中。
如果规定私钥不能出设备,那就只好外挂加密芯片或直接选择有硬件加密功能的 SOC 芯片了。北京宏思的 HSC32K1 芯片生成 RSA-1024 密钥对,平均时间典型值 0.5 秒;生成 RSA-2048 密钥对,典型值 4 秒。
stm32f4有型号自带这个功能
解决方案8:RAS算法起码的1000位,否则没有加密强度
解决方案9:带一个智能卡吧,生成1024的在10秒内,2048的1分钟内。