[发明专利]一种高效的公钥加密引擎有效

专利信息
申请号: 201510040249.X 申请日: 2015-01-27
公开(公告)号: CN104572021B 公开(公告)日: 2017-09-19
发明(设计)人: 刘力睿;张晨;袁世强 申请(专利权)人: 聚辰半导体(上海)有限公司
主分类号: G06F9/30 分类号: G06F9/30
代理公司: 上海信好专利代理事务所(普通合伙)31249 代理人: 张静洁,包姝晴
地址: 201203 上海市浦东*** 国省代码: 上海;31
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 一种 高效 加密 引擎
【说明书】:

技术领域

发明涉及公钥运算的相关领域,特别涉及一种高效的公钥加密引擎,采用新型的微指令优化,加载和运算技术,可实现所有已知的公钥运算。

背景技术

随着移动支付等技术的大规模应用,其面临的信息安全威胁也越来越大,应用环境的日益复杂和黑客技术的提高,使得公钥算法在各种安全相关的领域中的应用越来越重要。为了使公钥协处理器的性能能够满足各种应用的要求,目前多采用微指令技术。

典型的采用微指令技术的公钥协处理器的系统构架如图1所示。应用这类公钥协处理器的系统一般包含:非易失存储器ROM/FLASH,CPU,公钥IP控制模块和公钥IP。其中公钥IP控制模块可选,其功能完全可由软件完成。完成某项公钥运算的微指令串存储在非易失存储器中,当要进行这种公钥运算时,因为公钥运算通常比较复杂,其微指令串较长,且公钥IP中的指令序列(即,存放公钥IP当前可以连续执行的最长的微指令串),远小于完成公钥运算的微指令串的长度,因此CPU或公钥IP控制模块要分段将完成公钥运算的微指令加载到公钥IP的指令序列中以完成整个公钥运算。

这种方式有以下缺点:

1. 若没有公钥IP控制模块,则由CPU直接将微指令串分段加载到公钥IP的指令序列中。这种方式下CPU需要实时监控公钥IP的指令序列中的微指令是否执行完以加载新的微指令段,因此公钥IP每执行完指令序列中的微指令段要等待CPU将新的微指令段填入指令序列才能继续执行,对于像ECC点乘运算来说,要执行几百次相同的点加或倍点运算,这就需要反复加载同样的微指令串,严重影响了微指令的执行效率,而且CPU在公钥IP运行时不能执行其他指令。

2. 若采用公钥IP控制模块,则由CPU将微指令串加载到公钥IP控制模块中,再由公钥IP控制模块分段加载微指令段到指令序列中执行。这种方式虽然在公钥IP运行时可以将CPU部分解放出来,而且减少了一些公钥IP在等待指令序列重新加载的时间,但是不能根本缓解这种问题,在多次执行较长的微指令串时微指令执行效率的问题依然严重,而影响整个公钥运算的速度。而且公钥运算的微指令一般很长,因此公钥IP控制模块中会有很大的内存用来暂存微指令串,增大了面积和功耗。

3. 一些公钥协处理器为了缓解1和2中的问题,通过将公钥高层次的运算(例如ECC点乘运算),也编成一条微指令,这种方式看似解决了微指令加载运行效率的问题,但是同时带来了其他严重的问题。首先像ECC点乘运算这种公钥算法的核心运算有很多种算法,其速度,安全性和应用环境都不同,将点乘运算编成一条微指令这意味着只能选择某一特定的算法用硬件电路来实现点乘运算,这不但限制了公钥IP的应用领域,而且增大了硬件电路设计的复杂性和面积功耗;其次在公钥协议中仍然需要底层有限域运算,将公钥高层运算编成微指令不会减少对底层运算微指令的需求,因此导致微指令种类增多,单条微指令编码变长,公钥协处理器解析微指令变慢。

4. 集成这种公钥协处理器非常复杂,需添加额外的硬件接口电路或复杂的软件处理来完成。

因此,亟需能够提高微指令运行效率和速度的技术,解决上述公钥协处理器不能兼顾性能和灵活性的问题。

发明内容

本发明提供一种高效的公钥加密引擎,其采用微指令主动加载技术和微指令优化设计的公钥协处理器,目标在于使采用微指令串实现的公钥运算的速度接近或达到采用硬件电路直接实现的公钥运算,且可以采用微指令灵活实现各种公钥运算算法。

为了达到上述目的,本发明的一个技术方案是提供一种公钥加密引擎,其包含:

随机存取存储器,其在公钥运算的过程中存放微指令串和中间数据;

公钥协处理器,通过设置的I/O控制模块主动从所述随机存取存储器存放的微指令串中,将与公钥运算进程相匹配的微指令串分段,加载到公钥协处理器设置的指令序列中运行。

优选地,所述公钥加密引擎还包含CPU,其将与公钥运算进程相匹配的微指令串分段在随机存取存储器中的存放地址发送给公钥协处理器,以便所述公钥协处理器根据该存放地址从随机存取存储器获得相应的微指令串分段。

优选地,所述公钥加密引擎还包含最初用来存放微指令串的非易失性存储器;所述CPU在进行公钥运算之前,将非易失性存储器中存放的与公钥运算相应的微指令串,通过公钥协处理器的I/O控制模块加载到随机存取存储器中。

优选地,所述公钥协处理器还设置有微指令解析模块,将CPU向其发送的与公钥运算进程相匹配的微指令串分段在随机存取存储器中的存放地址,作为使所述公钥协处理器启动公钥运算中相应微指令运算的启动地址。

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于聚辰半导体(上海)有限公司,未经聚辰半导体(上海)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/201510040249.X/2.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top