【技术实现步骤摘要】
【国外来华专利技术】用于执行JH加密散列的指令
本公开涉及加密算法,且特定地涉及JH散列算法。
技术介绍
密码学是依赖于算法的工具且是保护信息的关键。算法是复杂的数学算法且密钥是位的串(stringofbits)。有两种基本类型的加密系统:秘密密钥系统和公共密钥系统。秘密密钥系统也被称为对称系统,具有由两方或更多方共享的单个密钥(“秘密密钥”)。该单个密钥既用于加密信息也用于解密信息。JH散列函数(JH)是一种加密函数,该加密函数已经针对国家标准与技术协会(NIST)散列函数竞争而提交来发展新的SHA-3函数以替代较旧的SHA-1和SHA-2。JH是基于包括四个变型(JH-224、JH-256、JH-384、和JH-512)的算法,可产生不同大小的摘要(digest)。然而,JH的每一个变型实现相同的压缩函数。目前,可在通用目的处理器上使用流SIMD扩展(SSE)或高级向量扩展(AVX)中的指令来执行JH。无论如何,这样的应用可要求实行高达30个指令来执行JH算法。附图说明可结合附图从以下详细描述中获得对本专利技术的更好理解,其中:图1是示出系统的一个实施例的框图;图2是示出处理器的一个实施例的框图;图3是示出打包数据寄存器的一个实施例的框图;图4示出所得半字节置换的一个实施例;图5是示出由指令执行的过程的一个实施例的流程图;图6是示出由指令执行的过程的一个实施例的流程图;图7示出使用指令的两轮次JH的实施例;图8是根据本专利技术的一个实施例的寄存器架构的框图;图9A是根据本专利技术的实施例的连接到管芯上互联网络且具有第二级(L2)高速缓存的本地子集的单CPU核的框图;图9B ...
【技术保护点】
一种用于在计算机处理器中执行过程的方法,包括:执行一个或多个JH_SBOX_L指令以在JH状态上执行S‑Box映射和线性(L)变换;以及一旦已经执行了S‑Box映射和L变换,就执行一个或多个JH_Permute指令来在所述JH状态上执行置换函数。
【技术特征摘要】
【国外来华专利技术】1.一种用于在计算机处理器中执行过程的方法,包括:在执行第一类型的指令前,将JH状态位存储在多个寄存器中;对所述第一类型的指令和第二类型的指令进行解码;通过以下操作来执行一个或多个第一类型的指令以在JH状态上执行S-Box映射和线性(L)变换:第一次执行第一类型的指令,以在所述JH状态的存储于第一寄存器内的第一分量上执行S-Box映射和L变换;以及第二次执行第一类型的指令,以在所述JH状态的存储于第二寄存器内的第二分量上执行S-Box映射和L变换;以及一旦已经执行了S-Box映射和L变换,就执行一个或多个第二类型的指令来在所述JH状态上执行置换函数,其中所述第一类型的指令的格式包括用于存储JH状态的一半的第一寄存器操作数,且所述第二类型的指令的格式包括用于保持所述第一类型的指令的执行结果的第二和第三寄存器操作数。2.如权利要求1所述的方法,其特征在于,所述多个寄存器是512位寄存器。3.如权利要求2所述的方法,其特征在于,一寄存器存储所述JH状态的低512位,且一个不同的寄存器存储所述JH状态的高512位。4.如权利要求1所述的方法,其特征在于,使用掩码寄存器来第一次和第二次执行第一类型的指令。5.如权利要求1所述的方法,其特征在于,进一步包括:在第一目的寄存器内将第一次执行第一类型的指令的结果存储为第一JH状态结果;以及在第二目的寄存器内将第二次执行第一类型的指令的结果存储为第二JH状态结果。6.如权利要求5所述的方法,其特征在于,执行所述第二类型的指令还包括:从所述第一和第二目的寄存器检索JH状态结果;在所述第一JH状态结果上执行第一置换函数;以及在所述第二JH状态结果上执行第二置换函数。7.一种指令处理装置,包括:多个数据寄存器,其中所述多个数据寄存器包括用于存储JH状态位的一半的寄存器以及用于存储JH状态位的另一半的寄存器;以及与所述多个数据寄存器耦合的执行单元,用于执行一个或多个第一类型的指令以在JH状态上执行S-Box映射和线性(L)变换,且一旦已经执行了S-Box映射和L变换,就执行一个或多个第二类型的指令来在JH状态上执行置换函数,其中所述第一类型的指令的格式包括用于存储JH状态的一半的第一寄存器操作数,且所述第二类型的指令的格式包括用于保持所述第一类型的指令的执行结果的第二和第三寄存器操作数,其中所述执行单元用于第一次执行第一类型的指令以在所述JH状态位的第一半部上执行S-Box映射和L变换、以及用于第二次执行第一类型的指令以在所述JH状态位的第二半部上执行S-Box映射和L变换。8.如权利要求7所述的指令处理装置,其特征在于,所述第一寄存器是512位寄存器。9.如权利要求7所述的指令处理装置,其特征在于,所述执行单元用于使用掩码寄存器来第一次和第二次执行第一类型的指令。10.如权利要求9所述的指令处理装置,其特征在于,所述执行单元用于:在第一目的寄存器内将第一次执行第一类型的指令的结果存储为第一JH状态结果,并在第二目的寄存器内将第二次执行第一类型的指令的结果存储为第二JH状态结果。11.如权利要求10所述的指令处理装置,其特征在于,所述执行单元用于通过以下步骤执行所述第二类型的指令:从所述第一和第二目的寄存器检索JH状态结果,在所述第一JH状态...
【专利技术属性】
技术研发人员:K·S·雅普,G·M·沃尔里齐,V·戈帕尔,J·D·吉尔福德,E·奥兹图科,S·M·格尔雷,W·K·费格哈利,M·G·迪克森,
申请(专利权)人:英特尔公司,
类型:发明
国别省市:美国;US
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。