中华人民共和国国家标准代替信息技术安全技术消息鉴别码第部分采用分组密码的机制报批稿本稿完成日期年月日发布实施目次前言引言范围规范性引用文件术语和定义符号代号和缩略语符号和代号缩略语用户要求算法的模型一般模型密钥诱导第步概述密钥诱导方法密钥诱导方法消息填充第步概述填充方法填充方法填充方法填充方法数据分割第步初始变换第步概述初始变换初始变换初始变换迭代应用分组密码第步最终迭代第步概述最终迭代最终迭代最终迭代最终迭代输出变换第步概述输出变换输出变换输出变换截断操作第步概述截断操作截断操作算法概述算法算法算法算法算法算法算法算法附录资料性附录测试向量概述算法算法算法算法算法算法算法算法附录资料性附录算法的安全性分析参考文献前言信息技术安全技术消息鉴别码由如下部分组成第部分采用分组密码的机制第部分采用专用杂凑函数的机制第部分采用泛杂凑函数的机制本部分是的第部分本部分按照标准化工作导则第部分标准的结构和编写和标准化工作指南第部分采用国际标准给出的规则起草本部分代替本部分与相比主要技术变化如下删除了消息鉴别码算法用途的说明见的第章增加了算法的常用名称指代见引言第章第章参见附录附录增加了规范性引用文件见第章修改了术语和定义的条目顺序见第章的第章增加了个符号修改了个符号见的第章增加了缩略语见修改了第章的标题将要求改为用户要求修改了用户选择密钥诱导方法的要求见第章的第章增加了使用算法时数据串长度的要求增加了使用算法时的长度要求见第章修改了算法的一般模型增加了密钥诱导和最终迭代操作并修改了算法模型图见的第章增加了密钥诱导操作的概述与方法最终迭代操作的概述与方法见增加了填充方法初始变换见修改了迭代应用分组密码操作见增加了截断操作的概述和截断操作见修改了算法替换为见的修改了算法替换为见的增加了算法和见修改了附录例子的标题为测试向量修改了使用的分组密码算法将修改为分组密码算法修改了明文密钥结果参见附录的附录增加了算法和的测试向量参见修改了表中序号为和的算法效率增加了算法和的安全性说明算法的特性安全强度估计参见附录本部分修改采用信息技术安全技术消息鉴别码第部分采用分组密码的机制本部分与国际标准的主要技术差异如下增加了算法的常用名称指代见引言第章第章参见附录附录删除了密钥管理机制和对象标识符的说明见的第章增加了规范性引用文件将替换为见第章的第章增加了初始变换等个符号和代号见增加了缩略语见修改了用户选择密钥诱导方法的要求见第章的第章修改了算法的一般模型增加了初始变换操作并修改了算法模型图见的增加了填充方法初始变换见修改了迭代应用分组密码操作见的增加了截断操作的概述和截断操作见增加了算法和见删除了附录对象标识符参见的附录修改了附录例子的标题为测试向量修改了使用的分组密码算法明文密钥结果参见附录的附录增加了算法和的测试向量参见修改了表中序号为和的算法效率参见附录的附录增加了算法和的安全性说明算法的特性安全强度估计参见附录删除了获得高安全性强度的算法的方法及建议参见的删除了附录与以前的算法标准的比较参见的附录请注意本部分的某些内容可能涉及专利本部分的发布机构不承担识别这些专利的责任本部分由全国信息安全标准化技术委员会提出并归口本部分起草单位中国科学院软件研究所成都卫士通信息产业股份有限公司桂林电子科技大学国家密码管理局商用密码检测中心本部分主要起草人吴文玲眭晗张立廷张蕾韦永壮毛颖颖郑雅菲涂彬彬刘仁章丁勇王玉珏张众引言本部分定义了八种采用比特分组密码的消息鉴别码算法算法本部分定义的第一个算法通常被称作其余七个算法是的变种算法和在操作的末尾应用了特殊的变换算法在操作的起始和末尾各应用了一个特殊的变换算法在截取值时使用特殊的规则当算法的密钥长度是分组密码密钥长度的两倍的时候建议使用算法算法和使用加密的次数最少算法只需要一次分组密码密钥设置但需要一个较长的中间密钥算法是算法的可选变种算法和不需要中间密钥和密钥设置当存储空间受限时建议使用算法和本部分凡涉及密码算法的相关内容按国家有关法规实施凡涉及到采用密码技术解决保密性完整性真实性抗抵赖性需求的须遵循密码相关国家标准和行业标准信息技术安全技术消息鉴别码第部分采用分组密码的机制范围的本部分定义了八种采用分组密码的消息鉴别码算法规定了这八种算法的用户使用要求和一般模型提供了测试向量和安全性分析本部分适用于安全体系结构过程及应用的安全服务规范性引用文件下列文件对于本文件的应用是必不可少的凡是注日期的引用文件仅注日期的版本适用于本文件凡是不注日期的引用文件其最新版本包括所有的修改单适用于本文件信息处理系统开放系统互联基本参考模型第部分安全体系结构信息技术安全技术实体鉴别第部分总则信息安全技术分组密码算法的工作模式信息安全技术分组密码算法术语和定义下列术语和定义适用于本文件分组长度为的比特串密钥控制密码变换操作的符号序列注密码变换操作如加密解密密码校验函数计算签名生成签名验证明文未加密的信息密文为隐藏信息内容进行变换后的数据分组密码密钥控制分组密码运算的密钥比特分组密码分组长度为比特的分组密码加密为隐藏数据信息通过密码算法对数据进行的一种可逆变换过程并产生密文解密一个相应的加密过程的逆过程数据完整性数据未被非授权地修改或破坏的性质消息鉴别码利用对称密码技术以密钥为参数由消息导出的数据项任何持有这一密钥的实体都可利用消息鉴别码检查消息的完整性和始发者注一个有时也称作一个密码校验值消息鉴别码算法消息鉴别码算法简称算法其输入为密钥和消息输出为一个固定长度的比特串满足下面两个性质对于任何密钥和消息算法都能够快速有效地计算对于任何固定的密钥攻击者在没有获得密钥信息的情况下即使获得了一些消息对对任何新的消息预测其在计算上是不可行的注一个算法有时也称作一个密码校验函数注计算不可行性依赖于使用者具体的安全要求及其环境消息鉴别码算法密钥用于控制消息鉴别码算法运算的密钥初始变换消息鉴别码算法起始时所应用的函数输出变换应用在算法中对迭代操作的输出所进行的变换符号代号和缩略语符号和代号本部分使用下列符号约定整数的比特的二进制表示输入算法的数据比特串填充和分割操作后分割自数据比特串的分组使用分组密码和密钥对密文进行解密使用分组密码和密钥对明文进行加密最终迭代输出变换的结果输出变换将分组映射到分组元素个数为的有限域算法运算中的中间变量初始变换分组密码的秘密密钥长度为比特秘密掩码密钥长度为比特分组密码密钥的比特长度算法密钥的比特长度填充方法中表示长度的分组等价于输入消息长度的二进制数据比特串的比特长度值的比特长度分组密码的分组长度上的次不可约多项式即没有非平凡因子的多项式长度为的比特串包含不可约多项式最右侧的个系数表示经左侧填充得到比特分组对应于对于对于经过填充和分割操作之后数据比特串的分组个数长度为的秘密比特串长度为的秘密比特串不小于的最小整数比特串最右侧比特串比特串最左侧比特串长度为的比特串上的操作记作其中是有限域上的元素将与的单项式相乘计算如下其中表示的最左侧的比特当时当时比特串和的异或值按顺序将比特串和连接所构成的比特串个零比特组成的比特串算法定义中使用的赋值符号有限域乘法在多项式表达式中的每个元素可由次数小于的二进制多项式表示更明确地比特串映射到二进制多项式有限域中的乘法记作等价于两个多项式的乘积模一个次不可约多项式即是经和相乘后除以所得的次数不大于的余式其中选具有最少非零系数的次不可约多项式中按字典序排列的第一个多项式对于比特串左移位得到的比特串如果的长度是比特则表示的最右侧比特比特串循环左移位得到的比特串比特串循环右移位得到的比特串缩略语下列缩略语适用于本文件分组密码链接计数器模式消息鉴别码用户要求使用本部分中给出的算法的用户需要选择符合国家管理要求的分组密码算法从中选取一种填充方法从中选取一个算法的比特长度一个通用的密钥诱导方法算法需要此方法算法和也可能需要的比特长度应是一个正整数并且不大于分组长度如果使用填充方法那么数据串的比特长度应小于如果使用算法那么数据串填充中的分组数应不小于即如果使用算法那么的比特长度应小于对于具体分组密码填充方法算法的值以及密钥诱导方法如果需要的选择超出了本部分所规定的范围注上述选择影响算法的安全强度具体参见附录生成和验证应使用相同的密钥当数据比特串也被加密则算法使用的密钥应不同于用作加密的密钥注关于密钥管理的信息参见本部分中给出的算法的安全性严重依赖于管理密钥所遵循的程序和方法算法计算过程中泄露中间值可能造成伪造和或密钥恢复攻击参见附录算法的模型一般模型算法的应用需要如下八步操作第步密钥诱导可选第步消息填充第步数据分割第步初始变换第步迭代应用分组密码第步最终迭代第步输出变换第步截断操作其中第步至第步如图所示图密钥诱导第步概述算法的第和步操作算法使用密钥诱导算法由一个分组密码密钥诱导得到两个掩码密钥算法和可能需要使用密钥诱导算法由一个分组密码密钥诱导得到两个分组密码密钥本部分规定了两种密钥诱导算法密钥诱导算法可被用在本部分所规定的算法和中密钥诱导算法被用在本部分所规定的算法中密钥诱导方法密钥诱导方法由一个分组密码密钥计算得到两个比特的分组密码密钥和密钥诱导方法使用中定义的计数器模式操作如下定义整数为不小于的最小正整数定义计数器为在整数的二进制表示左侧填充得到的比特分组尽可能少填充甚至不填充计算长度为的比特串使其等于并定义计算长度为的比特串使其等于并定义密钥诱导方法密钥诱导方法由一个分组密码密钥计算得到两个比特的掩码密钥和操作如下首先计算比特的秘密比特串其次由计算得到掩码密钥最后由计算得到掩码密钥消息填充第步概述在这一步骤中用额外的比特串作为前缀或后缀对数据比特串进行填充使得填充后的数据比特串的长度是的整数倍根据选择的填充方法填充比特串只用来计算所以这些填充比特串不必随原消息存储或发送的验证者应知道填充比特串是否已经被存储或发送以及使用的是何种填充方法本部分规定了四种填充方法填充方法和可被用在本部分所规定的算法和中填充方法被用在本部分所规定的算法和中填充方法在数据比特串的右侧填充尽可能少填充甚至不填充使填充后比特串的长度是的正整数倍注面对简单伪造攻击使用填充方法的算法可能是不安全的具体参见附录注如果数据比特串是空串那么填充方法规定对其填充个填充方法在数据比特串的右侧填充一个比特然后在所得到的比特串右侧填充尽可能少填充甚至不填充使填充后的比特串的长度是的正整数倍注如果数据比特串是空串那么填充方法规定对其填充一个然后在其右侧填充个填充方法在数据比特串的右侧填充尽可能少填充甚至不填充使填充后比特串的长度是的正整数倍然后在所得到的数据比特串左侧填充一个分组分组由尽可能少的和数据比特串的长度的二进制表示组成其中位于二进制表示的左侧的尽可能少且使的长度为比特最右端的比特和的二进制表示中的最低位相对应注如果在计算之前不知数据比特串的长度则填充方法不适用注如果数据比特串是空串那么填充方法规定对其填充个然后在其左侧填充一个由个组成的分组填充方
GB-T 15852.1-2020 信息技术 安全技术 消息鉴别码 第1部分:采用分组密码的机制
文档预览
中文文档
42 页
50 下载
1000 浏览
0 评论
0 收藏
3.0分
温馨提示:本文档共42页,可预览 3 页,如浏览全部内容或当前文档出现乱码,可开通会员下载原始文档
本文档由 路人甲 于 2022-05-24 14:08:10上传分享