【技术实现步骤摘要】
具备哈希密码算法的处理器及其处理方法
[0001]本专利技术有关于具备密码算法的处理器及其处理方法。
技术介绍
[0002]中国国家密码局发布多种密码算法,包括SM2、SM3、以及SM4
…
等密码算法,替代RSA(简写自Rivest
‑
Shamir
‑
Adleman)、SHA(简写自Secure Hash Algorithm)、AES(Advanced Encryption Standard)
…
等国际通用密码算法。
[0003]SM2密码算法为椭圆曲线公钥密码算法,但在签名、密钥交换方面不同于ECDSA(简写自Elliptic Curve Digital Signature Algorithm)、ECDH(简写自Elliptic
‑
curve Diffie
–
Hellman)
…
等国际标准,而是采取了更为安全的机制。SM2密码算法除了加、解密操作,还涉及数字签名、签名验算、密钥交换协议 />…
等。本文档来自技高网...
【技术保护点】
【技术特征摘要】
1.一种具备哈希密码算法的处理器,其特征在于:响应指令集架构的单一条哈希密码算法指令,该处理器从第一内存空间取得有限长度的输入数据,对该输入数据进行哈希密码算法,转换出特定长度的转换后哈希值。2.如权利要求1所述的具备哈希密码算法的处理器,包括:第一寄存器,储存输入数据长度;其中,该处理器根据该输入数据长度对该输入数据进行分组,生成至少一组输入消息,并对各组输入消息进行消息扩展、再进行迭代压缩,以对应各组输入消息更新哈希值,逐步转换出该转换后哈希值。3.如权利要求2所述的具备哈希密码算法的处理器,还包括:第二寄存器,储存消息填充标示;该消息填充标示显示该输入数据有填充需求时,该处理器将该输入数据填充为输入消息单组尺寸的倍数,再进行分组。4.如权利要求2所述的具备哈希密码算法的处理器,其中:当消息填充标示显示该输入数据有填充需求时,该输入数据长度为该输入数据的字节数,供该处理器用于进行填充;该消息填充标示显示该输入数据无填充需求时,该输入数据长度以N字节的数据块计数,N为正整数,N字节的数据块即该输入消息单组尺寸。5.如权利要求4所述的具备哈希密码算法的处理器,还包括:第三寄存器,储存输入数据指针,指向储存该输入数据的该第一内存空间;以及响应该单一条哈希密码算法指令,该处理器通过该第三寄存器取得该输入数据。6.如权利要求5所述的具备哈希密码算法的处理器,其中:该处理器对该输入数据进行该哈希密码算法之后,使该第三寄存器内容增加一位移量;该第二寄存器显示该输入数据有填充需求时,该位移量为该第一寄存器内容;以及该第二寄存器显示该输入数据无填充需求时,该位移量为该第一寄存器内容乘以N。7.如权利要求5所述的具备哈希密码算法的处理器,还包括:第四寄存器,储存哈希值指针,指向第二内存空间;其中:该处理器对该输入数据进行该哈希密码算法之前,该第二内存空间储存初始哈希常量;响应该单一条哈希密码算法指令,该处理器通过该第四寄存器取得该初始哈希常量,基于该输入数据将该初始哈希常量转换为该转换后哈希值,再通过该第四寄存器将该转换后哈希值写入该第二内存空间,更新该初始哈希常量。8.如权利要求5所述的具备哈希密码算法的处理器,还包括:第四寄存器;以及密码执行单元,包括执行单元内部寄存器;其中,响应该单一条哈希密码算法指令,该处理器基于该输入数据将初始哈希常量转换为该转换后哈希值,将该转换后哈希值写入该执行单元内部寄存器,并将该执行单元内部寄存器的执行单元寄存器编号填入该第四寄存器。
9.如权利要求8所述的具备哈希密码算法的处理器,其中:对该输入数据进行该哈希密码算法之前,该处理器将零填入该第四寄存器。10.如权利要求4所述的具备哈希密码算法的处理器,还包括:第三寄存器,储存信息指针,指向储存输入数据指针、以及哈希值指针的第三内存空间;该输入数据指针指向储存该输入数据的该第一内存空间;该哈希值指针指向第二内存空间;该处理器对该输入数据进行该哈希密码算法之前,该第二内存空间储存初始哈希常量;响应该单一条哈希密码算法指令,该处理器通过该第三寄存器取得该输入数据指针、以及该哈希值指针,用于取得该输入数据、以及该初始哈希常量,基于该输入数据将该初始哈希常量转换为该转换后哈希值,再通过该哈希值指针将该转换后哈希值写入该第二内存空间,更新该初始哈希常量。11.如权利要求4所述的具备哈希密码算法的处理器,其中:该哈希密码算法指令包括输入数据指针字段、以及哈希值指针字段;该输入数据指针字段载有输入数据指针、且该哈希值指针字段载有哈希值指针;该输入数据指针指向储存该输入数据的该第一内存空间;该哈希值指针指向第二内存空间;该处理器对该输入数据进行该哈希密码算法之前,该第二内存空间储存初始哈希常量;响应该单一条哈希密码算法指令,该处理器根据该输入数据指针、以及该哈希值指针,取得该输入数据、以及该初始哈希常量,基于该输入数据将该初始哈希常量转换为该转换后哈希值,再通过该哈希值指针将该转换后哈希值写入该第二内存空间,更新该初始哈希常量。12.如权利要求4所述的具备哈希密码算法的处理器,其中:对该输入数据进行该哈希密码算法之后,对应显示该输入数据有填充需求的该第二寄存器,该处理器不变化该第一寄存器内容,对应显示无填充需求的该第二寄存器,该处理器使该第一寄存器归零。13.如权利要求12所述的具备哈希密码算法的处理器,其中:该处理器对该输入数据进行该哈希密码算法之后,将显示该输入数据有填充需求的该第二寄存器更新成该第一寄存器内容,而不变化显示无填充需求的该第二寄存器。14.如权利要求1所述的具备哈希密码算法的处理器,还包括:密码执行单元;组架构寄存器;微码储存装置,储存微码;以及解码器,响应该单一条哈希密码算法指令,根据该微码解码出多条微指令;其中:该多条微指令包括访问、以及管理该组架构寄存器的内容,以及操作该密码执行单元对该输入数据进行该哈希密...
【专利技术属性】
技术研发人员:黄振华,管应炳,李艳婷,
申请(专利权)人:上海兆芯集成电路有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。