24小时服务热线
效率高速
品质保障
厂家直供
售后保障
行业新闻
当前位置:行业新闻>

一种生成消息认证码的方法专利

发布时间:2026-06-12

【摘要】 本发明公开了一种生成消息认证码的方法,属于密钥算法领域。所述方法包括:对缓冲区和字变量进行初始化,通过多次循环计算中间量和字变量,并根据中间量和字变量得到消息认证码。本发明不需要在密钥生成设备内部单独分配RAM,用于全局缓存密钥的填充、数据流的补位、补长度等操作,不需要在整个散列函数运算中全局缓存,大大降低了在运算过程中所需的RAM资源,能够广泛应用于RAM资源很少的低成本密钥生成设备中,有利地降低设备成本,提高了设备应用的竞争力。 【专利类型】发明授权 【申请人】北京飞天诚信科技有限公司 【申请人类型】企业 【申请人地址】100083 北京市海淀区学院路40号研7楼5层 【申请人地区】中国 【申请人城市】北京市 【申请人区县】海淀区 【申请号】CN200810057285.7 【申请日】2008-01-31 【申请年份】2008 【公开公告号】CN101227286B 【公开公告日】2010-04-14 【公开公告年份】2010 【授权公告号】CN101227286B 【授权公告日】2010-04-14 【授权公告年份】2010.0 【IPC分类号】H04L9/32; H04L29/06; H04L12/56 【发明人】陆舟; 于华章 【主权项内容】一种生成消息认证码的方法,其特征在于,所述方法包括:步骤A1:把数据流存入中间数据流缓冲区,用预先规定的常量分别初始化字变量1、字变量2、字变量3、字变量4和字变量5;步骤A2:将所述字变量1、字变量2、字变量3、字变量4和字变量5分别赋给预先设定的字变量6、字变量7、字变量8、字变量9和字变量10;步骤A3:对于计数变量取值0到79,循环计算中间量、字变量6、字变量7、字变量8、字变量9和字变量10;其中,所述计数变量的初始值为0,每循环计算一次,所述计数变量加1;每循环一次,根据当前中间量按照预设规则修改所述字变量6、字变量7、字变量8、字变量9和字变量10;所述中间量分如下两步计算:1)如果所述计数变量取值0到15,根据预设共享密钥、所述共享密钥的长度、预设常数1和所述计数变量,计算所述中间量,具体过程如下:步骤B1:如果计数变量的取值大于等于0且小于所述共享密钥的长度的四分之一时,把所述共享密钥分成多个字,所述多个字的个数为所述共享密钥的长度的四分之一对应的值,则当前中间量为所述多个字中所述计数变量的当前值对应的字;如果计数变量等于所述共享密钥的长度的四分之一且所述共享密钥的长度是4的整数倍,则当前中间量为0;如果计数变量等于所述共享密钥的长度的四分之一且所述共享密钥的长度不是4的整数倍,在所述共享密钥的尾部补0,使所述共享密钥的长度能够被4整除,则当前中间量为补0后的共享密钥的最后一个字;如果计数变量取值大于所述共享密钥的长度的四分之一且小于等于15,则当前中间量为0;步骤B2:把当前中间量的每一个字节与预设常量1相异或,结果赋给当前中间量;2)如果所述计数变量取值16到79,根据待计算的当前中间量的前16个中间量,计算所述当前中间量,具体过程如下;步骤B1′:在中间缓冲区中缓存当前中间量的前16个中间量,依次从0至15编号,提取所述中间缓冲区中的第0、2、8、13个编号对应的中间量;步骤B2′:对提取出的中间量进行异或运算,对异或运算的结果做循环左移1位运算,将运算后的结果作为当前中间量;步骤B3′:用所述当前中间量更新所述中间缓冲区,使其缓存所述当前中间量及所述当前中间量的前15个中间量;步骤A4:所述计数变量等于80时,根据如下公式:字变量1=字变量1+字变量6,字变量2=字变量2+字变量7,字变量3=字变量3+字变量8,字变量4=字变量4+字变量9,字变量5=字变量5+字变量10;计算当前字变量1、字变量2、字变量3、字变量4和字变量5,并将所述计数变量归0;步骤A5:将当前的字变量1、字变量2、字变量3、字变量4和字变量5分别赋给所述字变量6、字变量7、字变量8、字变量9和字变量10;步骤A6:对于计数变量取值0到79,循环计算中间量、字变量6、字变量7、字变量8、字变量9和字变量10;其中,所述中间量分如下两步计算:1)如果所述计数变量取值0到15,根据所述中间数据流缓冲区中的中间数据流、所述中间数据流的长度和所述计数变量,计算所述中间量,具体如下:如果计数变量的取值大于等于0且小于所述中间数据流的长度的四分之一时,把所述中间数据流分成多个字,所述多个字的个数为所述中间数据流的长度的四分之一对应的值,则当前中间量为所述多个字中所述计数变量的当前值对应的字;如果计数变量等于所述中间数据流的长度的四分之一且所述中间数据流的长度是4的整数倍,则当前中间量为0X80000000;如果计数变量等于所述中间数据流的长度的四分之一且所述中间数据流的长度不是4的整数倍,在所述中间数据流的尾部先补1,再补0,使所述中间数据流的长度能够被4整除,则当前中间量为补位后的中间数据流的最后一个字;如果计数变量取值大于所述中间数据流的长度的四分之一且小于15,则当前中间量为0;如果计数变量取值等于15,则当前中间量为所述中间数据流的长度乘以8加上512的结果;2)如果所述计数变量取值16到79,根据待计算的当前中间量的前16个中间量,计算所述当前中间量,具体过程如下;步骤B1′:在中间缓冲区中缓存当前中间量的前16个中间量,依次从0至15编号,提取所述中间缓冲区中的第0、2、8、13个编号对应的中间量;步骤B2′:对提取出的中间量进行异或运算,对异或运算的结果做循环左移1位运算,将运算后的结果作为当前中间量;步骤B3′:用所述当前中间量更新所述中间缓冲区,使其缓存所述当前中间量及所述当前中间量的前15个中间量;步骤A7:所述计数变量等于80时,根据所述步骤A1中计算出的字变量1、字变量2、字变量3、字变量4和字变量5,以及所述步骤A6中计算出的字变量6、字变量7、字变量8、字变量9和字变量10,根据如下公式:字变量1=字变量1+字变量6,字变量2=字变量2+字变量7,字变量3=字变量3+字变量8,字变量4=字变量4+字变量9,字变量5=字变量5+字变量10;计算当前字变量1、字变量2、字变量3、字变量4和字变量5;并将所述计数变量归0;步骤A8:将当前的字变量1、字变量2、字变量3、字变量4和字变量5分别装载到所述中间数据流缓冲区,用所述预先规定的常量分别初始化当前的字变量1、字变量2、字变量3、字变量4和字变量5;步骤A9:将当前的字变量1、字变量2、字变量3、字变量4和字变量5分别赋给所述字变量6、字变量7、字变量8、字变量9和字变量10;步骤A10:对于计数变量取值0到79,循环计算中间量、字变量6、字变量7、字变量8、字变量9和字变量10;其中,所述中间量分如下两步计算:1)如果所述计数变量取值0到15,根据预设共享密钥、所述共享密钥的长度、预设常数2和所述计数变量,计算所述中间量,具体过程如下:步骤B1″:如果计数变量的取值大于等于0且小于所述共享密钥的长度的四分之一时,把所述共享密钥分成多个字,所述多个字的个数为所述共享密钥的长度的四分之一对应的值,则当前中间量为所述多个字中所述计数变量的当前值对应的字;如果计数变量等于所述共享密钥的长度的四分之一且所述共享密钥的长度是4的整数倍,则当前中间量为0;如果计数变量等于所述共享密钥的长度的四分之一且所述共享密钥的长度不是4的整数倍,在所述共享密钥的尾部补0,使所述共享密钥的长度能够被4整除,则当前中间量为补0后的共享密钥的最后一个字;如果计数变量取值大于所述共享密钥的长度的四分之一且小于等于15,则当前中间量为0;步骤B2″:把当前中间量的每一个字节与预设常量2相异或,结果赋给当前中间量;2)如果所述计数变量取值16到79,根据待计算的当前中间量的前16个中间量,计算所述当前中间量具体过程如下;步骤B1′:在中间缓冲区中缓存当前中间量的前16个中间量,依次从0至15编号,提取所述中间缓冲区中的第0、2、8、13个编号对应的中间量;步骤B2′:对提取出的中间量进行异或运算,对异或运算的结果做循环左移1位运算,将运算后的结果作为当前中间量;步骤B3′:用所述当前中间量更新所述中间缓冲区,使其缓存所述当前中间量及所述当前中间量的前15个中间量;步骤A11:所述计数变量等于80时,根据所述步骤A1中计算出的字变量1、字变量2、字变量3、字变量4和字变量5,以及所述步骤A10中计算出的字变量6、字变量7、字变量8、字变量9和字变量10,根据如下公式:字变量1=字变量1+字变量6,字变量2=字变量2+字变量7,字变量3=字变量3+字变量8,字变量4=字变量4+字变量9,字变量5=字变量5+字变量10;计算当前字变量1、字变量2、字变量3、字变量4和字变量5;并将所述计数变量归0;步骤A12:将当前的字变量1、字变量2、字变量3、字变量4和字变量5分别赋给所述字变量6、字变量7、字变量8、字变量9和字变量10;步骤A13:重复执行所述步骤A6;步骤A14:所述计数变量等于80时,根据所述步骤A1中计算出的字变量1、字变量2、字变量3、字变量4和字变量5,以及所述步骤A13中计算出的字变量6、字变量7、字变量8、字变量9和字变量10,根据如下公式:字变量1=字变量1+字变量6,字变量2=字变量2+字变量7,字变量3=字变量3+字变量8,字变量4=字变量4+字变量9,字变量5=字变量5+字变量10;计算当前字变量1、字变量2、字变量3、字变量4和字变量5;步骤A15:将当前的字变量1、字变量2、字变量3、字变量4和字变量5作为消息认证码。 【当前权利人】飞天诚信科技股份有限公司 【当前专利权人地址】北京市海淀区学清路9号汇智大厦B楼17层 【引证次数】5.0 【他引次数】5.0 【家族引证次数】5.0 【家族被引证次数】16

  • 【摘要】本发明涉及一种汽车模具自润滑复合金属凹凸V型导板的制造方法。采用低碳钢精密铸造成的基体衬层,在铜合金粉中加入6~11%的石墨粉混合均匀后,布覆在凹凸V型导板基体衬背层的两个斜面上,并送入有保护气氛的烧结炉中进行烧结,摆辗机上的摆头模
  • 【摘要】本发明涉及纳米加工技术领域,公开了一种在厚负性高分辨率电子束 抗蚀剂HSQ上制作密集图形的方法,包括:A.对衬底进行表面清洁及热 处理;B.在衬底上涂敷负性高分辨率电子束抗蚀剂HSQ厚胶层;C.对 涂敷了HSQ厚胶层的衬底进行前烘;
  • 【摘要】本发明提供一种收视率数据的发送、显示方法及装置,所述的收视率数据的发送方法包括:将收视率数据插入到SI数据中;发送包含收视率数据的SI数据。所述的收视率数据的显示方法包括:获取包含收视率数据的SI数据;对所述的包含收视率数据的SI数
  • 【摘要】本发明手动刷头冲洗总成,口腔护理装置是一种刷牙、洗牙,按摩牙龈的为 一体的口腔护理中心,它不仅省去刷牙时挤压膏的麻烦,而且还防止牙膏、泡沫 从口腔内飞溅出。刷毛边做三维全方位运动的同时还对牙面喷射活氧水,并能 深入于难刷部位,改变了
  • 【摘要】一种声波促长富硒菠菜的生产方法,属于声波农业工程技术与生物转化技术,在白色农业技术领域的应用研究;它由已知菠菜生产设施、施用富硒微量元素肥料技术、声波促长机三部分组成;所说的菠菜生产设施是指菠菜生产大棚或露天菜地;所说的富硒微量元素
  • 【摘要】本发明的香皂组方(重量%)如下: LM无机防霉抗菌剂1%, 无机发泡剂0.5~1%, 香精与色料适量, 皂基余量。 它的制造工艺流程是: 水浴加热熔化皂基并搅拌使其混合均匀→加入抗菌剂搅拌均匀→加入无机发 泡剂、色料和香精搅拌均匀→