信息安全技术SM3密码杂凑算法(GB-T 32905-2016).docx
《信息安全技术SM3密码杂凑算法(GB-T 32905-2016).docx》由会员分享,可在线阅读,更多相关《信息安全技术SM3密码杂凑算法(GB-T 32905-2016).docx(19页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、ICS35.040L80中华人民共和国国家标准GB/T XXXXXXXXX信息安全技术 SM3密码杂凑算法Information security techniques - SM3 cryptographic Hash algorithm点击此处添加与国际标准一致性程度的标识XXXX - XX - XX发布XXXX - XX - XX实施目次前言IV1 范围12 术语和定义13 符号14 常数与函数24.1 初始值24.2 常量24.3 布尔函数24.4 置换函数25 算法描述25.1 概述25.2 填充35.3 迭代压缩35.4 输出杂凑值4附录A(资料性附录)运算示例5A.1 示例15A.
2、2 示例27前言本标准按照GB/T 1.1-2009给出的规则起草。本标准由国家密码管理局提出。本标准由全国信息安全标准化技术委员会(SAC/TC260)归口。本标准起草单位:清华大学、国家密码管理局商用密码检测中心、解放军信息工程大学、中国科学院数据与通信保护研究教育中心。本标准主要起草人:王小云、李 峥、王永传、于红波、谢永泉、张 超、罗 鹏、吕述望。11GB/T 信息安全技术 SM3密码杂凑算法1 范围本标准规定了SM3密码杂凑算法的计算方法和计算步骤,并给出了运算示例。本标准适用于商用密码应用中的数字签名和验证、消息认证码的生成与验证以及随机数的生成,可满足多种密码应用的安全需求。2
3、术语和定义下列术语和定义适用于本文件。2.1比特串 bit string具有0或1值的二进制数字序列。2.2大端 big-endian数据在内存中的一种表示格式,规定左边为高有效位,右边为低有效位。即数的高阶字节放在存储器的低地址,数的低阶字节放在存储器的高地址。2.3消息 message任意有限长度的比特串,本标准中消息作为杂凑算法的输入数据。2.4杂凑值 hash value杂凑算法作用于一条消息时输出的消息摘要(比特串)。2.5字 word长度为32比特的组(串)。3 符号下列符号适用于本文件。ABCDEFGH:8个字寄存器或它们的值的串连B(i):第i个消息分组 CF:压缩函数FFj:
4、布尔函数,随j的变化取不同的表达式GGj:布尔函数,随j的变化取不同的表达式IV:初始值,用于确定压缩函数寄存器的初态P0:压缩函数中的置换函数P1:消息扩展中的置换函数Tj:算法常量,随j的变化取不同的值m:消息m:填充后的消息mod:模运算n:消息分组个数:32比特与运算:32比特或运算:32比特异或运算:32比特非运算:mod 232比特算术加运算:32比特循环左移比特运算:左向赋值运算符4 常数与函数4.1 初始值=7380166f 4914b2b9 172442d7 da8a0600 a96f30bc 163138aa e38dee4d b0fb0e4e4.2 常量4.3 布尔函数其
5、中,为字。4.4 置换函数其中为字。5 算法描述5.1 概述SM3密码杂凑算法的输入为长度为比特的消息,经过填充、迭代压缩,生成杂凑值,杂凑值输出长度为256比特。运算示例参见附录A。5.2 填充假设消息的长度为比特,则首先将比特“1”添加到消息的末尾,再添加个“0”,是满足的最小的非负整数。然后再添加一个64位比特串,该比特串是长度的二进制表示。填充后的消息的比特长度为512的倍数。例如:对消息:01100001 01100010 01100011,其长度,经填充得到比特串:5.3 迭代压缩5.3.1 迭代过程将填充后的消息按512比特进行分组: ,其中。对按下列方式迭代:FOR TO EN
6、DFOR其中是压缩函数,为256比特初始值,为填充后的消息分组,迭代压缩结果为。5.3.2 消息扩展将消息分组按以下方法扩展生成132个消息字,用于压缩函数:第一步,将消息分组划分为16个字。第二步,FOR TO 67ENDFOR第三步,FOR TO 63ENDFOR5.3.3 压缩函数令为字寄存器,为中间变量,压缩函数,。计算过程描述如下:FOR TO ENDFOR其中,字的存储为大端(big-endian),左边为高有效位,右边为低有效位。5.4 输出杂凑值输出256比特的杂凑值。附录A (资料性附录)运 算 示 例A.1 示例1A.1.1 输入十六进制数据 616263A.1.2 填充后
7、的消息61626380000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000018A.1.3 扩展后的消息616263800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000189092e20000000000000c0606719c7
8、0ed000000008001801f939f7da9000000002c6fa1f9adaaef14000000000001801e9a965f894971004823ce86a1b2d12f1be1dae338f8061807055d68be86cfd4811f447d83d9023dbf185898e0e0061807050df55ccde0104ca5b9c955a7df01846e46cd08e3babdf870caa4220353af50a92dbca15f33cfd2e16f6e89f70fe941ca5462dc85a9015276af6296c922bdb268378cf59
9、75853440900872386faee742ab908b04a64bc50864e6e08f07e6590325c8f78accb8011e11db9ddb99c05456162638000000000000000000000000000000000000000000000000000000000000000000000000000000000000000189092e20000000000000c0606719c70f59092e2008001801f93937baf719c70ed2c6fa1f92dab6f0b939f7da90001801eb6f9fe70e4dbef5c23ce8
10、6a1b2d0af057b4cbcb1b177184f2693ee1f341efb9afe9e9ebb210425b81d05f05e66c9cc861a4988df14e22df3bde151b547d919836b4b38542e5aadb4d5736d77a48caed4c76b71a9bc89722a91a5caabf45c46116379de7dda9ace8097c00c1f3e2d54f3a263ee2912f152167fafe5b54fd853c6428e8445dd3cef148f4ee92b76848be418e587c8e6af3c416753d7d549e260d5A
11、.1.4 迭代压缩中间值jABCDEFGH7380166f4914b2b9172442d7da8a0600a96f30bc163138aae38dee4db0fb0e4e0b9edc12b7380166f29657292172442d7b2ad29f4a96f30bcc550b189e38dee4d1ea52428cb9edc12b002cdee729657292ac353a23b2ad29f485e54b79c550b1892609f2850ea52428cdb825773002cdee7d33ad5fbac353a234fa5956985e54b79335037e59609f2850a48
12、519d4db825773b8204b5fd33ad5fbd11d61a94fa5956941f99576635037e593e50a0c1a48519d48ad212eab8204b5fafde99d6d11d61a95374a0ca71f99576606fcb26a3e50a0c1acf0f6398ad212ea5afdc102afde99d6633130100374a0ca732aecc3f06fcb26a3391ec8aacf0f639975456905afdc10271022ac973313010094194e6e32aecc3f367250a13391ec8ab1cd6787975
13、456908d47caf4c1022ac972602006694194e6e6ad473a4367250a164519c8fb1cd6787959c2744bd47caf4c45592e2026020066c6a3ceae6ad473a48509b39264519c8f10481ba2a059c2744bf95e99a845592e2002afb727c6a3ceae9d2356a38509b39211694a3d09481ba2a084e896b3f95e99a89dd1b58c02afb7277576351e9d2356a31289cbcd58694a3d093745409084e896b
14、36370db629dd1b58cb938157d7576351e1324c95abc89cbcd58947a12d2374540901a4a25546370db62ac64ee8db938157d147c52977824c95abc979ab113947a12d23ee959331a4a2554db131b86ac64ee8d1534d1691e7c52977892b57849979ab11361f996463ee959332aa0d251db131b8616796afab134d1691ea52ef0f892b57849067550f561f99646c999f74a2aa0d251177
15、d27cc0e796afab1a2d23c69a52ef0f8b3c8669b067550f5b2330fccc999f74a18d7820ad17d27cc0ed5f562f2a2d23c69575c37d8b3c8669b87a833aab2330fcc19f84fd372d7820ad14f981cfad5f562f2a5dceaf1575c37d834dd9e4387a833aa2002c57896f84fd3720415a3af4f981cfa74576681a5dceaf1bec2bae134dd9e43214d0c2fcd02c578969fa6e5f00415a3af576f1
16、d0974576681578d2ee7bec2bae122eeeec41a4d0c2fcd8af12c059fa6e5f0b5523911576f1d09340ba2bb578d2ee723f368da78eeeec41a185f9a9a8af12c056a879032b5523911e84abb78340ba2bb2415ce1286f368da78dd8835dd185f9a9a620633546a879032c88daa91e84abb7825c3fd31c215ce1286d1b4f1e6dd8835dd4db58f43620633548193543cc88daa91266243be5
17、ec3fd31c29c250c2bd1b4f1e6131152fe4db58f439aa310318193543c27a549beaa6243be5efa6385879c250c2bcf65e309131152fe7a1a6dac9aa3103128e11eb847a549beaa877cbcc4fa638587e5b64e96cf65e30997f0988a7a1a6dac29ff9bac9de11eb847937d554a877cbcc49811b46de5b64e96184e7b2f97f0988a30a5a4a2b3ff9bac9d3d708fc2937d554ae92df4ea981
18、1b46d74b72db2184e7b2f3189a13e59a5a4a2b337593bff3d708fc20a1ff572e92df4eaa36cc08d74b72db2323720bd4e89a13e594945674b37593bffcf7d16830a1ff572a757496fa36cc08d339ccd089c3720bd4e427cb3134945674bda8c835fcf7d1683ab9050ffa757496f34c7a0744d9ccd089c417a9c6e427cb3130958ff1bda8c835fb41e7be8ab9050ff35d955c3edc7a07
19、44d9a113939417a9c6ec533f0ff0958ff1b1afed464b41e7be836e142d72bd955c3ed40e89b8f9a113939d4509586c533f0fff8d84ac71afed46437e7250598e142d72bab87dbb240e89b8fc7f93fd3d450958687fe299ff8d84ac7382f13c4ade725059885ae57c2ab87dbb21a6cabc9c7f93fd3ac36a28487fe299f3919f363f92f13c4ad4a0b31ce85ae57c2c302badb1a6cabc9f
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 信息安全技术SM3密码杂凑算法GB-T 32905-2016 信息 安全技术 SM3 密码 杂凑 算法 GB 32905 2016
限制150内