Including the embodiment of the invention provides a device at the same time, the realization of RSA/ECC encryption algorithm: CPU interface module, for receiving the configuration parameters and sent to the main control module, the return status parameter; the main control module is used for receiving and storing the configuration parameters, according to the configuration parameters to the complex calculation control module to send commands to calculate the state; the parameter is transmitted to the CPU interface module; receiving a read command and sent to the basic parameters calculation module; the control module is used for receiving the complicated calculation, calculation command, command according to the calculation, the generating operation command sent to the basic calculation module; signal receiving module to complete the basic calculation; the basic calculation module is used for receiving the operation command, and to the main control module sends a read command to obtain calculation parameters, calculated according to the operational commands and parameters, to complex The calculation control module sends the completed signal and sends the calculation result to the main control module.
【技术实现步骤摘要】
同时实现RSA/ECC加解密算法的装置
本专利技术涉及公钥加解密技术,尤其涉及一种同时实现RSA/ECC加解密算法的装置。
技术介绍
RSA公钥加密算法是目前最有影响力的公钥加密算法,它能够抵抗到目前为止已知的绝大多数密码攻击,已被国际标准化组织(InternationalOrganizationforStandardization,ISO)推荐为公钥数据加密标准。RSA公钥加密算法的安全性是基于大素数因式分解的困难性,随着计算机处理速度与分布式计算等理论的飞速发展,较短的RSA密钥已不再安全。目前1024位长度的密钥也可以在较短的时间内被破解,因此,为了提高RSA加密的安全强度,需要采用更高位宽的密钥。但是,随着密钥长度的增加,RSA加解密的速度将大幅降低,严重影响使用效率。椭圆曲线密码学(Ellipticcurvecryptography,ECC)加密算法的安全性是基于解决椭圆曲线离散对数问题的困难性,目前已知的公钥加密体制中,ECC加密算法是对每比特所提供加密强度最高的一种体制,即在位宽相同的情况下,ECC加密算法具有最高的安全强度。因此,在对位宽,功耗,安全性等方面有更高要求的应用场景下,ECC加密算法具有极大的优势。公钥加密算法中密钥对的生成需要若干个随机的大素数,以及一系列复杂的计算;目前绝大部分的密钥对生成是通过软件实现的;但通过软件生成公钥密钥对耗时较长,且会有被第三方窃取素数或随机因子的风险。RSA加密算法的核心为大数模幂运算,ECC加密算法的核心为椭圆点乘运算;由于计算步骤非常复杂,目前大部分加解密装置只是单一实现其中一种加密算法,而可 ...
【技术保护点】
一种同时实现RSA/ECC加解密算法的装置,其特征在于,所述装置包括:中央处理器CPU接口模块、主控模块、复杂计算控制模块和基本计算模块;其中,所述CPU接口模块,用于接收配置参数并发送给所述主控模块,返回所述主控模块中的状态参数;所述主控模块,用于接收并存储配置参数,根据所述配置参数向所述复杂计算控制模块发送计算命令;将所述状态参数发送给所述CPU接口模块;接收所述基本计算模块发送的读取命令,向所述基本计算模块发送计算参数;所述复杂计算控制模块,用于接收所述主控模块发送的计算命令,根据所述计算命令,生成运算命令发送给所述基本计算模块;接收所述基本计算模块的完成信号;所述基本计算模块,用于接收所述运算命令,并向所述主控模块发送读取命令以获取所述计算参数,根据所述运算命令以及获取的所述计算参数完成计算,向所述复杂计算控制模块发送完成信号,同时将计算结果发送给所述主控模块。
【技术特征摘要】
1.一种同时实现RSA/ECC加解密算法的装置,其特征在于,所述装置包括:中央处理器CPU接口模块、主控模块、复杂计算控制模块和基本计算模块;其中,所述CPU接口模块,用于接收配置参数并发送给所述主控模块,返回所述主控模块中的状态参数;所述主控模块,用于接收并存储配置参数,根据所述配置参数向所述复杂计算控制模块发送计算命令;将所述状态参数发送给所述CPU接口模块;接收所述基本计算模块发送的读取命令,向所述基本计算模块发送计算参数;所述复杂计算控制模块,用于接收所述主控模块发送的计算命令,根据所述计算命令,生成运算命令发送给所述基本计算模块;接收所述基本计算模块的完成信号;所述基本计算模块,用于接收所述运算命令,并向所述主控模块发送读取命令以获取所述计算参数,根据所述运算命令以及获取的所述计算参数完成计算,向所述复杂计算控制模块发送完成信号,同时将计算结果发送给所述主控模块。2.根据权利要求1所述的装置,其特征在于,所述计算命令中包含RSA/ECC计算;所述复杂计算控制模块具体用于,将接收到的所述计算命令中的RSA/ECC计算分解成一系列模乘运算,并生成与各模乘运算对应的运算命令发送给所述基本计算模块。3.根据权利要求2所述的装置,其特征在于,所述装置还包括:从机接口和主机接口;所述从机接口,用于接收所述CPU接口模块发送的所述配置参数,并将所述配置参数发送给所述主控模块;所述主机接口,用于接收所述主控模块发送的所述配置参数,并进行存储。4.根据权利要求3所述的装置,其特征在于,所述装置还包括:存储模块,用于存储明文参数、密文参数、密钥参数和所述基本计算模块的计算中间结果。5.根据权利要求4所述的装置,其特征在于,所述配置参数用于配置所述装置运行的算法为RSA算法或ECC算法、密钥位宽以及工作模式,所述工作模式包括加密模式和解密模式。6.根据权利要求5所述的装置,其特征在于,所述CPU接口模块、所述从机接口和所述主机接口均支持外围总线APB协议、系统总线AHB协议、片内总线AXI协议和ACE_Lite总线协议。7.一种同时实现RSA/ECC加解密算法的装置,其特征在于,所述装置包括:中央处理器CPU接口模块、主控模块、复杂计算控制模块、基本计算模块、直接内存存取DMA控制器、密钥生成模块、真随机数发生模块和大数乘法处理模块;其中,所述CPU接口模块,用于接收配置参数并发送给所述主控模块,返回所述主控模块中的状态参数;所述主控模块,用于接收并存储配置参数,根据所述配置参数向所述密钥生成模块发送密钥生成命令;向所述复杂计算控制模块发送计算命令;将所述状态参数发送给所述CPU接口模块;接收所...
【专利技术属性】
技术研发人员:林先萌,王永,
申请(专利权)人:深圳市中兴微电子技术有限公司,
类型:发明
国别省市:广东,44
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。