【技术实现步骤摘要】
【国外来华专利技术】执行GROESTL散列的指令专利
本公开涉及加密算法,尤其涉及Groestl安全散列算法。
技术介绍
密码术(Cryptology)是一种依赖算法和密钥来保护信息的工具。该算法是复杂的数学算法,而密钥是位串。存在两种基本的密码术系统类型:秘密密钥系统和公开密钥系统。秘密密钥系统(也被称为对称系统)具有两方或更多方共享的单一密钥(“秘密密钥”)。该单一密钥既被用来将信息加密,也被用来将信息解密。由国家标准和技术委员会(NIST)作为联邦信息处理标准(FIPS)197发布的先进加密标准(AES)是一种秘密密钥系统。AES是能够将信息加密和解密的对称块密码(blockcipher)。Groestl算法是一种基于AES的迭代散列函数,其具有从两个固定的大的不同的置换(P和Q)构造的压缩函数。该压缩函数(f)被经由P和Q的置换来定义,使得:f(h,m)=P(hXORm)XORQ(m)XORh,其中函数P和Q是置换函数,而是hi-1是输入状态,mi是消息块输入,而hi是结果状态。加密(密码)使用该秘密密钥(密码密钥)执行一系列变换来将被称为“明文”的可理解数据变换为被称为“密文”的不可理解形式。密码中的变换可包括:(1)使用异或(XOR)运算向该状态(二维字节数组)添加轮次常数(从P函数和Q函数推出的值);(2)使用非线性字节代换表(S-Box)处理该状态;(3)将该状态的最后三行循环移位不同的偏移量;以及(4)取该状态的所有的列并将这些列的数据(彼此独立地)混合以产生新的列。解密(逆向密码)使用该密码密钥执行一系列变换来将“密文”块变换为相同大小的“明文”块。逆向密 ...
【技术保护点】
一种用于在计算机处理器中执行过程的方法,包括:执行对状态矩阵执行一个或多个与2的伽罗瓦域(GF)相乘运算的指令;以及执行用异或(XOR)函数将所述一个或多个与2的GF相乘运算的结果进行组合以生成结果矩阵的指令。
【技术特征摘要】
【国外来华专利技术】1.一种用于在计算机处理器中执行过程的方法,包括:执行对状态矩阵执行一个或多个与2的伽罗瓦域GF相乘运算的指令,其中执行所述一个或多个与2的GF相乘运算包括:将所述状态矩阵的行存储在第一寄存器中;对存储在所述第一寄存器中的每一行执行与2的GF相乘运算;以及将所述与2的GF相乘运算的结果存储在第二寄存器中;以及执行用异或XOR函数将所述一个或多个与2的GF相乘运算的结果进行组合以生成结果矩阵的指令。2.如权利要求1所述的方法,其特征在于,还包括在执行组合结果的指令前执行对所述状态矩阵第二次执行与2的GF相乘运算的指令。3.如权利要求1所述的方法,其特征在于,执行所述一个或多个与2的GF相乘运算进一步包括对于值为1的每个最高有效位执行XOR运算。4.如权利要求1所述的方法,其特征在于,执行所述一个或多个与2的GF相乘运算进一步包括:对存储在所述第二寄存器中的每一行执行与2的第二次GF相乘运算;以及将所述与2的第二次GF相乘运算的结果存储在第三寄存器中。5.如权利要求4所述的方法,其特征在于,执行组合所述一个或多个与2的GF相乘运算的结果的指令包括使用存储在所述第一寄存器、所述第二寄存器和所述第三寄存器中的数据作为源操作数来组合所述状态矩阵的因子。6.如权利要求5所述的方法,其特征在于,所述结果矩阵被存储在所述第一寄存器中。7.如权利要求4所述的方法,其特征在于,所述状态矩阵是8位条目的8x8矩阵。8.如权利要求4所述的方法,其特征在于,所述第一寄存器、所述第二寄存器和所述第三寄存器是512位寄存器。9.如权利要求2所述的方法,其特征在于,所述状态矩阵是8位条目的8x16矩阵。10.如权利要求7所述的方法,其特征在于,进一步包括:执行对所述状态矩阵的第二个一半执行与2的GF相乘运算的指令;以及执行对所述状态矩阵的所述第二个一半第二次执行与2的GF相乘运算的指令。11.一种指令处理装置,包括:多个数据寄存器;以及执行单元,与所述多个数据寄存器耦合,所述执行单元被配置为用于执行对状态矩阵执行一个或多个与2的伽罗瓦域GF相乘运算的指令以及用异或XOR函数将所述一个或多个与2的GF相乘运算的结果进行组合以生成结果矩阵的指令,其中执行所述一个或多个与2的GF相乘运算包括将所述状态矩阵的行存储在第一寄存器中,对存储在所述第一寄存器中的每一行执行与2的GF相乘运算,以及将所述与2的GF相乘运算的结果存储在第二寄存器中。12.如权利要求11所述的装置,其特征在于,在执行组合结果的指令前所述执行单元被配置为用于执行对所述状态矩阵第二次执行与2的GF相乘运算的指令。13.如权利要求11所述的装置,其特征在于,执行所述一个或多个与2的GF相乘运算进一步包括对于值为1的每个最高有效位执行XOR运算。14.如权利要求11所述的装置,其特征在于,执行所述一个或多个与2的GF相乘运算进一步包括对存储在所述第二寄存器中的每一行执行与2的第二次GF相乘运算,以及将所述与2的第二次GF相乘运算的结果存储在第三寄存器中。15.如权利要求14所述的装置,其特征在于,执行组合所述一个或多个与2的GF相乘运算的结果的指令包括使用存储在所述第一寄存器、所述第二寄存器和所述第三寄存器中的数据作为源操作数来组合所述状...
【专利技术属性】
技术研发人员:G·M·沃尔里齐,K·S·雅普,V·戈帕尔,J·D·吉尔福德,E·奥兹图科,S·M·格尔雷,W·K·费格哈利,M·G·迪克森,
申请(专利权)人:英特尔公司,
类型:发明
国别省市:美国;US
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。