GB T 17964-2000 信息技术 安全技术 n位块密码算法的操作方式.pdf

上传人:卡尔 文档编号:103769 上传时间:2019-07-08 格式:PDF 页数:16 大小:425.09KB
下载 相关 举报
GB T 17964-2000 信息技术 安全技术 n位块密码算法的操作方式.pdf_第1页
第1页 / 共16页
GB T 17964-2000 信息技术 安全技术 n位块密码算法的操作方式.pdf_第2页
第2页 / 共16页
GB T 17964-2000 信息技术 安全技术 n位块密码算法的操作方式.pdf_第3页
第3页 / 共16页
GB T 17964-2000 信息技术 安全技术 n位块密码算法的操作方式.pdf_第4页
第4页 / 共16页
GB T 17964-2000 信息技术 安全技术 n位块密码算法的操作方式.pdf_第5页
第5页 / 共16页
亲,该文档总共16页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

1、中华人民共和国国家标准信息技术安全技术位块密码算法的操作方式发布 实施国家质量技术监督局 发布前言本标准等同采用国际标准 信息技术安全技术 位块密码算法的操作方式本标准描述 位块密码算法的四种操作方式 即电子密本 方式 密码块链接 方式 密码反馈 方式和输出反馈 方式本标准在技术内容上与国际标准保持一致本标准的附录 附录 附录 和附录 均是提示的附录本标准由中华人民共和国信息产业部提出本标准由中国电子技术标准化研究所归口本标准起草单位中国电子技术标准化研究所本标准主要起草人罗韧鸿向维良前言国际标准化组织 和 国际电工委员会 是世界性的标准化专门机构 国家成员体 它们都是 或 的成员国 通过国际

2、组织建立的各个技术委员会参与制定针对特定技术范围的标准和 的各技术委员会在共同感兴趣的领域内进行合作 与 和 有联系和其他官方和非官方国际组织也可参与标准的制定工作对于信息技术领域 和 建立了一个联合技术委员会 即 由联合技术委员会提出的标准草案需分发给国家成员体进行表决 发布一项标准 至少需要 的参与表决的国家成员体投票赞成国际标准 是 信息技术 联合技术委员会的 安全技术 分委员会制定的该第 版替代第 版附录 至附录 均为提示的附录中华人民共和国国家标准信息技术安全技术位块密码算法的操作方式国家质量技术监督局 批准 实施范围本标准描述 位块密码算法的四种操作方式注 附录 包含了对每一种操作

3、方式的性质的说明本标准确定了四种规定的操作方式以便在 位块密码的应用中 例如数据传输的保护 数据存储鉴别 本标准将对诸如操作方式规范和适用的参数值提供一个有用的参照定义下列定义适用于本标准块链接一种信息加密方法 每一密文块在密码上依赖于前一个密文块密文经过变换 信息内容被隐藏起来的数据密码同步加密与解密过程的协调一致解密一个相应加密过程的逆加密为了产生密文 即隐藏数据由密码算法对数据进行的 可逆变换反馈缓存用于为加密过程存储输入数据的变量 在启动点 的值为初始化值用于定义一个加密过程的启动点的值密钥控制密码变换操作 例如加密 解密的符号序列位块密码明文块和密文块的长度均为 位的块密码明文未加密

4、的信息启动变量确定操作方式的启动点的变量注 本标准未规定从初始化值导出启动变量的方法 这种方法需在操作方式的应用中描述记法加密本标准中 由块密码规定的函数关系记作其中 是明文块是密文块是密钥是使用密钥 的加密运算解密对应的解密函数记作是使用密钥 的解密运算位阵列由一个大写字母表示的变量如上面的 和 它表示一个一维的位阵列 例如和便是两个 位阵列 其位从 到 编号 所有位阵列的记法都是以下标为 的位处于最左边模 加模 加操作也称作 异或运算用符号 表示 应用到阵列 和 的运算定义为位的选择选择 的最左边 个位以产生一个 位阵列的操作记作仅当 是 中的位数时此操作才有定义移位运算移位函数 定义如下

5、已知 位变量 和 位变量 其中 移位函数 的作用是产生以下的 位变量其作用是将阵列 的各位左移 个位置舍弃 并将阵列 放置在阵列 的最右边的个位置上 当 时 其作用是用 完全取代此函数的一个特例是以全为 的 位变量 开始 并将 位变量 移到其中 结果为其中最左边的 位均为要求对于某些所描述的方式来说可能需要对明文变量进行填充 填充技术不属于本标准的范围对于密码反馈 操作方式 见第 章 定义了三个参数 和 对于输出反馈 操作方式 见第 章 定义了一个参数 当使用这些操作方式中的某一种时所有通信方都要选择并使用同样的参数值电子密本 方式用于 加密方式的变量是个明文块 所组成的序列每个块都为 位密钥

6、个密文块 所组成的结果序列每个块都为 位加密方式描述如下解密方式描述如下密码块链接 方式用于 加密方式的变量是个明文块 所组成的序列每个块都为 位密钥位启动变量个密文块 所组成的序列每个块都为 位加密方式描述如下对第 个明文块进行加密随后此过程如图 的上半部分所示 启动变量 用于产生第 个密文输出 之后在加密之前 这个密文与下一个明文进行模 加图 密码块链接 操作方式解密方式描述如下对第 个密文块进行解密随后此过程如图 的下半部分所示密码反馈 方式下列三个参数定义了 操作方式反馈缓存的大小反馈变量的大小明文变量的大小注可小于 图 示出了 的特殊情形如果 则此方式与本标准上一版本中所描述的 方式

7、兼容用于 操作方式的变量是输入变量个明文变量 所组成的序列 每个块都为 位密钥位启动变量中间结果个块密码输入块 所组成的序列每个块都为 位个块密码输出块 所组成的序列每个块都为 位个变量 所组成的序列每个块都为 位个反馈变量 所组成的序列 每个块都为 位个反馈缓存内容 所组成的序列每个块都为 位输出变量个密文变量 所组成的序列 每个块都为 位反馈缓存 的初始值置为对每个明文变量进行加密的操作采用以下六个步骤使用块密码选择最左边 位产生密文变量产生反馈变量在 上进行移位函数操作对 重复上述步骤 最后一个循环结束于式 此过程如图 的左半部分所示 块密码的输出块 的最左边 位用来通过模 加来加密 位

8、明文变量 的其他位被舍弃 明文和密文变量的各位从 到 编号通过把 个 位放到明文变量的最左边位置上 将明文变量扩展成 位反馈变量 然后将反馈缓存 的各位左移 个位置 并将 插到最右边的 个位置上就产生了新的反馈缓存 值 在此移位操作中 的最左边 位被舍弃 最左边的新的 位用作加密过程的下一个输入图 密码反馈 操作方式用于解密的变量与用于加密的变量是相同的反馈缓存 被置成初始值对每个密文变量进行解密的操作采用以下六个步骤使用块密码选择最左边 位产生明文变量产生反馈变量在 上进行移位功能操作对 重复上述步骤 最后一个循环结束于式 此过程如图 的右半部分所示 块密码的输出块 的最左边 位用来通过模

9、加来解密 位密文变量 的其他位被舍弃 明文和密文变量的各位从 到 编号通过把 个 位放到密文变量的最左边位置上 将密文变量扩展成 位反馈变量 然后将反馈缓存 的各位左移 个位置 并将 放到最右边的 个位置上就产生了新的 值 在此移位操作中 的最左边 位被舍弃 最左边的新的 位用作加密过程的下一个输入建议使用 和 的值相等的 方式 按照这种建议形式 等式 和 可以写成当输出反馈 方式操作方式由一个参数来定义 该参数为明文变量的大小用于 操作方式的变量是输入变量个明文变量 所组成的序列 每个块都为 位密钥位启动变量中间结果个块密码输入块 所组成的序列每个块都为 位个块密码输出块 所组成的序列每个块

10、都为 位个变量 所组成的序列每个块都为 位输出变量个密文变量 所组成的序列 每个块都为 位输入块 置成初始值对每个明文变量进行加密的操作采用以下四个步骤使用块密码选择最左边 位产生密文变量反馈操作对 重复上述步骤 最后一个循环结束于式 此过程如图 的左半部分所示 每次使用块密码所产生的结果 被用来反馈并成为 的下一个值即 的最左边 位用来加密输入变量图 输出反馈 操作方式用于解密的变量与用于加密的变量是相同的 反馈缓存 被置成初值对每个密文变量进行解密的操作采用以下四个步骤使用块密码选择最左边 位产生明文变量反馈操作对 重复上述步骤 最后一个循环结束于式 此过程如图 的右半部分所示 值和 与加

11、密过程中相应的值是相同的 仅有式 是不同的附录标准的附录操作方式的性质电子密本 操作方式的性质环境在各计算机之间或人与人之间所交换的二进制数据可能会有重复或是共同使用的序列 在 方式中相同的明文块对于相同的密钥 产生相同的密文块性质方式的性质有对某一块的加密或解密可独立于其他块进行对密文块的重排将导致明文块的相应重排相同的明文块 对于相同的密钥 总是产生相同的密文块这使得它容易遭受一种 字典攻击这种字典是由对应的明文和密文块构成的对于超过一个块的消息一般建议不使用 方式 对于可接受重复性或必须单独访问各个块的那些特殊使用情况 的用法可以在未来的标准中规定填充要求只有 位的倍数才能被加密或解密

12、其他长度需要被填充至 位边界差错扩散在 方式中在一个密文块中的一个或多个位差错只会影响对发生差错的那一块的解密 对于有一个或多个错误位的密文块的解密将导致对应的明文块中每个明文位出错的概率为块边界如果加密和解密之间的块边界丢失了例如由于一个位滑动 则在重新建立正确的块边界之前加密与解密操作之间将失去同步 如果块边界丢失 则所有解密操作的结果都是不正确的密码块链接 操作方式的性质环境只要使用同样的密钥和启动变量对相同的明文进行加密 方式应将产生相同的密文 关心这种性质的用户需要采用某种办法来改变明文的开始密钥或启动变量一种可能的办法是将一个唯一的标识符例如一个递增计数器 加到每个 消息的开始处

13、在对大小不能增加的记录进行加密时可采用另一种办法它使用诸如启动变量的某个值这个值能从记录中计算出来且不用知道其内容例如它的按随机访问存储方式的地址性质的性质有链接操作使得密文块依赖于当前的和所有以前的明文块因此对密文块的重新安排不会导致对相应的明文块的重新安排使用不同的 值从而防止同一明文加密成同一密文填充要求只有 位的倍数才能被加密或解密 其他长度需填充至 位边界 如果这是不可接受的 可以按一种特殊的方式来处置最后一个变量 下面给出两个特殊处理的例子第一种处理一个不完整的最后变量即一个 位的变量 其中 应大于 的可能的办法是按下面的描述的 方式对它进行加密加密解密但是如果 不是秘密的或者与同

14、一个密钥一起被多次使用 见 那么最后的变量容易受到选择明文攻击第二种办法称作 密文窃取 假设最后两个明文变量为 和 是一个 位块 是一个位的变量 应大于加密设 为使用 所描述的方法由 导出的密文块 令因此最后两个密文变量是 和解密首先需对 进行解密 从而产生变量 和 的右边 位进而得到完整的块 并且使用 所描述的方法能导出两个紧随着的变量是按逆序进行解密的 这使得这种方法不太适合于硬件实现差错扩散在 方式中在一个密文块中的一个或多个位差错将会影响对两个块 即发生差错的块和随后的块的解密第 个密文块中的一个差错对于所产生的明文有以下影响 第 个明文块每位出错的概率为 第 个明文块的差错模式与第

15、个密文块的相同 如果在一个不到 位的变量中出现差错差错扩散取决于所选择的特殊处理方法在第一个例子中被解密的较短的块中与明文中出错的位直接对应的那些位也会出错块边界如果加密和解密之间的块边界丢失了例如由于一个位滑动 则在重新建立正确的块边界之前加密与解密操作之间将失去同步 如果块边界丢失 所有解密操作的结果都是不正确的密码反馈 操作方式的性质环境只要使用同样的密钥和启动变量对相同的明文进行加密 方式应将产生相同的密文 关心这种特性的用户需要采用某种办法来改变明文的开始密钥或启动变量一种可能的办法是将一个唯一的标识符 例如一个递增计数器 加到每个 消息的开始处 在对大小不能增加的记录进行加密时可采

16、用另一种办法它使用诸如启动变量的某个值这个值能从记录中计算出来且不用知道其内容例如它的按随机访问存储方式的地址性质的性质有链接操作使得密文变量依赖于当前的和除一确定数目以外的所有以前的明文变量该数目取决于 和 的选择 见图 因此对 位密文变量的重新安排不会导致对相应的 位明文变量的重新安排使用不同的 值从而防止同一明文加密成同一密文方式的加密和解密过程都使用块密码的加密操作方式的强度依赖于 的大小 时最大以及 和 的相对大小注 将导致输入块的值重复出现的概率增加 这种重复出现将会泄露明文位之间的线性关系选择一个较小的 值对于每个明文单位将要求更多次的块密码操作因而引起更大的处理开销选择 使得能

17、对块密码进行流水线式连续操作填充要求只有 位的倍数才能被加密或解密 其他长度需填充至 位边界 但是经常对 的大小的选择是要使得其无需进行填充 例如对于明文的最后部分 能被修改差错扩散方式中任一 位密文单位的差错都将影响对随后密文的解密直到出错的位移出 反馈缓存为止 第 个密文变量中的差错对产生的明文有下列影响 第 个明文变量与第 个密文变量有相同的差错模式 在所有不正确接收的位被移出反馈缓存之前 随后的明文变量的每一位出错的概率为同步如果加密和解密之间的块边界丢失了 例如由于一个位滑动 则在 位边界重新建立的 位之后密码同步将被重新建立 如果丢失 位的倍数 则在 位之后将自动重新建立同步输出反

18、馈 操作方式的性质环境只要使用同样的密钥和启动变量对相同的明文进行加密 方式应将产生相同的密文 此外当使用相同的密钥和 时 方式中将会产生相同的密钥流 因此为了保密起见 对于一个给定的密钥 一个特定的 只应使用一次性质的性质有没有链接操作会使得 更容易受到主动的攻击使用不同的 值 通过产生不同的密钥流从而防止同一明文加密成同一密文方式的加密和解密过程都使用块密码的加密操作方式不依赖明文来产生用于对明文进行模 加的密钥流选择一个较小的 值对于每个明文单位将要求更多次的块密码操作因而引起更大的处理开销填充要求只有 位的倍数才能被加密或解密 其他长度需填充至 位边界 但是经常对 的大小的选择是要使得

19、无需进行填充 例如对于明文的最后部分 能被修改差错扩散方式不在产生的明文输出扩散密文差错 密文中每一差错位只会引起被解密的明文中出现一个差错位同步方式不是自同步的 如果加密和解密两个操作不同步系统需要重新初始化 这种同步丢失可能由于插入或丢失任何数目的密文位所引起每次重新初始化应使用一个 值 它不同于与同一个密钥一起使用的以前的 值 其原因是对于相同的参数 每次都要产生相同的位流 这将易于受到已知的明文攻击附录提示的附录有关专利的信息在编制本标准的过程中收集了有关专利的信息本标准的应用依赖于这些专利 这些相关专利属于 公司和 公司 但是 不可能提供关于专利和所有权的资料 有效性或范围的权威性的

20、或全面的信息专利拥有者已经申明 为了便于本标准的应用 只要寻求专利许可证的个人或组织同意相应进行报答 都将按合适的条件发放许可证要了解更详细的情况可与以下地址联系商业关系部工业关系部附录提示的附录操作方式举例概述本附录举例说明使用本标准所规定的操作方式对消息的加密和解密 这些例子使用下列参数使用的块密码是数据加密算法 见附录 值为密码密钥为启动值为明文是 的 位 代码 十六进制形式对于 方式明文是 的 位代码十六进制形式方式表 和表 分别给出 方式的加密和解密的例子表 方式加密明文 块密码输入块块密码输出块密文表方式解密密文 块密码输入块块密码输出块 明文方式表 和表 分别给出 方式的加密和解密的例子表 方式加密明文 块密码输入块块密码输出块 密文表 方式解密密文 块密码输入块块密码输出块 明文方式表 和表 分别给出 方式的加密和解密的例子 此例所选的参数为 且 位反馈以斜体形式给出表 方式 加密明文 块密码输入块块密码输出块密文表方式 解密密文 块密码输入块块密码输出块 明文方式表 和表 分别给出 方式的加密和解密的例子 此例所选的参数为表 方式加密明文 块密码输入块块密码输出块密文表方式解密密文 块密码输入块块密码输出块 明文附录提示的附录参考资料美国国家标准信息系统 数据加密算法

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 标准规范 > 国家标准

copyright@ 2008-2019 麦多课文库(www.mydoc123.com)网站版权所有
备案/许可证编号:苏ICP备17064731号-1