用于保护固定长度的数据结构的完整性的方法_5

文档序号:9252672阅读:来源:国知局
案、修改及变化。
【主权项】
1.一种产生验证代码的方法,其包括: 在启动处理电路或在所述处理电路上执行的会话后,预先产生包括多个不同密钥的密钥的集合; 预先产生包括多个不同掩模的掩模的集合; 获得与固定长度的数据结构相关联的多个可变输入; 将所述多个可变输入中的每一者与来自密钥的所述集合的选定对应密钥组合以获得多个暂时性值; 组合所述多个暂时性值以获得中间值;及 在所述中间值与来自掩模的所述集合的选定掩模之间执行运算以获得用于所述固定长度的数据结构的消息验证代码。2.根据权利要求1所述的方法,其中在启动所述处理电路或在所述处理电路上执行的所述会话后还预先产生掩模的所述集合。3.根据权利要求1所述的方法,其中基于随机值产生密钥的所述集合及掩模的所述集合中的至少一者。4.根据权利要求1所述的方法,其中所述多个暂时性值通过以下方式组合: 将所述多个暂时性值相加以获得经组合值,及 通过预先选定的固定质数对所述经组合值执行模运算以获得所述中间值。5.根据权利要求4所述的方法,其中密钥的所述集合中的每一密钥的所述值在零与所述预先选定的固定质数之间。6.根据权利要求4所述的方法,其中在所述中间值与所述选定掩模之间的所述运算是按位异或运算。7.根据权利要求1所述的方法,其中基于所述多个可变输入中的至少一者选择所述掩模及所述选定对应密钥中的每一者。8.根据权利要求7所述的方法,其中所述多个可变输入中的所述至少一者是与所述固定长度的数据结构相关联的存储器地址。9.根据权利要求8所述的方法,其中基于所述存储器地址选择所述选定对应密钥中的每一者。10.根据权利要求8所述的方法,其中基于所述存储器地址选择所述选定掩模。11.根据权利要求1所述的方法,其中密钥的所述集合被细分成密钥的子集且从密钥的任一单个子集选择仅密钥的一子集来计算所述消息验证代码。12.根据权利要求1所述的方法,其进一步包括: 在启动之间或会话之间的持续时间内将掩模的所述集合及密钥的所述集合中的至少一者存储在安全的存储器位置中。13.根据权利要求1所述的方法,其进一步包括: 将所述消息验证代码存储在存储器装置中的所述固定长度的数据结构内。14.根据权利要求13所述的方法,其中所述消息验证代码存储在用于所述固定长度的数据结构的标头块中。15.根据权利要求1所述的方法,其进一步包括: 从所述数据结构中获得先前存储的消息验证代码;及 将所述消息验证代码与所述先前存储的消息验证代码相比较以确认所述数据结构的完整性。16.—种装置,其包括: 存储器装置,其用以存储固定长度的数据结构; 处理电路,其耦合到所述存储器装置,所述处理电路经调适以 在启动处理电路或在所述处理电路上执行的会话后,预先产生包括多个不同密钥的密钥的集合; 预先产生包括多个不同掩模的掩模的集合; 获得与所述固定长度的数据结构相关联的多个可变输入; 将所述多个可变输入中的每一者与来自密钥的所述集合的选定对应密钥组合以获得多个暂时性值; 组合所述多个暂时性值以获得中间值;及 在所述中间值与来自掩模的所述集合的选定掩模之间执行运算以获得用于所述固定长度的数据结构的消息验证代码。17.根据权利要求16所述的装置,其中在启动所述处理电路或在所述处理电路上执行的所述会话后还预先产生掩模的所述集合。18.根据权利要求16所述的装置,其中基于随机值产生密钥的所述集合及掩模的所述集合中的至少一者。19.根据权利要求16所述的装置,其中所述多个暂时性值通过以下方式组合: 将所述多个暂时性值相加以获得经组合值,及 通过预先选定的固定质数对所述经组合值执行模运算以获得所述中间值。20.根据权利要求19所述的装置,其中密钥的所述集合中的每一密钥的所述值在零与所述预先选定的固定质数之间。21.根据权利要求19所述的装置,其中在所述中间值与所述选定掩模之间的所述运算是按位异或运算。22.根据权利要求16所述的装置,其中基于所述多个可变输入中的至少一者选择所述掩模及所述选定对应密钥中的每一者。23.根据权利要求22所述的装置,其中所述多个可变输入中的所述至少一者是与所述固定长度的数据结构相关联的存储器地址。24.根据权利要求23所述的装置,其中基于所述存储器地址选择所述选定对应密钥中的每一者。25.根据权利要求23所述的装置,其中基于所述存储器地址选择所述选定掩模。26.根据权利要求16所述的装置,其中密钥的所述集合被细分成密钥的子集且从密钥的任一单个子集选择仅密钥的一子集来计算所述消息验证代码。27.根据权利要求16所述的装置,其中所述处理电路进一步经调适以: 在启动之间或会话之间的持续时间内将掩模的所述集合及密钥的所述集合中的至少一者存储在安全的存储器位置中。28.根据权利要求16所述的装置,其中所述处理电路进一步经调适以: 将所述消息验证代码存储在存储器装置中的所述固定长度的数据结构内。29.根据权利要求28所述的装置,其中所述消息验证代码存储在用于所述固定长度的数据结构的标头块中。30.根据权利要求16所述的装置,其中所述处理电路进一步经调适以: 从所述数据结构中获得先前存储的消息验证代码;及 将所述消息验证代码与所述先前存储的消息验证代码相比较以确认所述数据结构的完整性。31.—种装置,其包括: 用于在启动处理电路或在所述处理电路上执行的会话后预先产生包括多个不同密钥的密钥的集合的装置; 用于预先产生包括多个不同掩模的掩模的集合的装置; 用于获得与固定长度的数据结构相关联的多个可变输入的装置; 用于将所述多个可变输入中的每一者与来自密钥的所述预先产生的集合的选定对应密钥组合以获得多个暂时性值的装置; 用于组合所述多个暂时性值以获得中间值的装置;及 用于在所述中间值与来自预先产生的掩模的所述集合的选定掩模之间执行运算以获得用于所述固定长度的数据结构的消息验证代码的装置。32.根据权利要求31所述的装置,其进一步包括: 用于在启动之间或会话之间的持续时间内将掩模的所述集合及密钥的所述集合中的至少一者存储在安全的存储器位置中的装置。33.根据权利要求31所述的装置,其进一步包括: 用于将所述消息验证代码存储在存储器装置中的所述固定长度的数据结构内的装置。34.根据权利要求33所述的装置,其中所述消息验证代码存储在用于所述固定长度的数据结构的标头块中。35.根据权利要求31所述的装置,其进一步包括: 用于从所述数据结构中获得先前存储的消息验证代码的装置;及用于将所述消息验证代码与所述先前存储的消息验证代码相比较以确认所述数据结构的完整性的装置。36.—种具有一或多个指令的处理器可读存储媒体,所述一或多个指令在由至少一个处理电路执行时致使所述至少一个处理电路进行以下操作: 在启动处理电路或在所述处理电路上执行的会话后,预先产生包括多个不同密钥的密钥的集合; 预先产生包括多个不同掩模的掩模的集合; 获得与固定长度的数据结构相关联的多个可变输入; 将所述多个可变输入中的每一者与来自密钥的所述集合的选定对应密钥组合以获得多个暂时性值; 组合所述多个暂时性值以获得中间值;及 在所述中间值与来自掩模的所述集合的选定掩模之间执行运算以获得用于所述固定长度的数据结构的消息验证代码。37.根据权利要求36所述的处理器可读存储媒体,其进一步具有在由至少一个处理电路执行时致使所述至少一个处理电路进行以下操作的一或多个指令: 将所述消息验证代码存储在存储器装置中的所述固定长度的数据结构内。38.根据权利要求36所述的处理器可读存储媒体,其进一步具有在由至少一个处理电路执行时致使所述至少一个处理电路进行以下操作的一或多个指令: 从所述数据结构中获得先前存储的消息验证代码;及 将所述消息验证代码与所述先前存储的消息验证代码相比较以确认所述数据结构的完整性。
【专利摘要】一个特征涉及一种用以通过使用计算高效的算法来保全数据结构的机制。在启动或起始会话后,可以预先产生多个密钥及/或掩模。通过选择所述多个预先产生的密钥的子集及/或从所述多个预先产生的掩模中选择掩模,可以针对每一数据结构(例如,存储器块或标头块)计算验证代码。所述验证代码可以存储在所述数据结构内,用于进一步检验所述数据结构的完整性。在同一周期或会话期间,用于所有验证代码(例如,用于其它数据结构)的所述密钥及/或掩模可以选自相同的多个密钥及/或掩模。
【IPC分类】H04L9/06, H04L9/32, G06F21/52
【公开号】CN104969508
【申请号】CN201480007504
【发明人】A·W·登特, C·E·阿卡尔, B·B·布伦利
【申请人】高通股份有限公司
【公开日】2015年10月7日
【申请日】2014年1月31日
【公告号】EP2954636A1, US20140223192, WO2014123779A1
当前第5页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1