还剩7页未读,继续阅读
文本内容:
一、任务来源根据国家标准化管理委员会年下达的国家标准制修订计划,国家标准《信XX息安全技术密码杂凑算法》由国家商密办负责主办标准计划号为(全SM3XXXXX国信息安全标准化技术委员会年信息安全专项)XXXX
二、编制原则
1.坚持安全、实用、美观的技术标准全面分析所制定规范的安全性,对算法的可抗攻击性进行完善分析,重点考虑实用性和其以后的推广;保证算法能够有效抵抗比特追踪法以及其他已知的分析方法算法的设计过程中,算法的符号表述尽量标准、美观
2.创新性在算法标准的设计方面分别有不同的创新
3.自主性设计自主、符合我国需求的哈希算法
4.高效性设计的杂凑算法便于软、硬件平台高效的实现在保障安全性的前提下,综合性能指标优于SHA-
2565.合法性符合国家有关法律法规和已经制定的标准规范的相关要求
三、主要工作过程
(一)密码行业标准起草工作过程
1.设计评审阶段年月日,国密办下达了“杂凑算法”研制任务的通知,算法于年20021212002月设计完成年月日,技术处对数据所研制的杂凑算法进行了算52002822SCH1法审查,并于月日至日对其余六个分别由数据所、济南得安、中科院82931DCS中心、成都卫士通、江南所和山东大学研制的进行了集中审查确定SCH2-SCH7并评审出杂凑算法SCH
42.优化检测阶段年月,国密办向研制单位中科院数据与通信保护研究教育中心下20037SCH4达了“关于对杂凑算法进行修改完善的通知”,月日杂凑算法课SCH4926“LSW题组”完成杂凑算法修改完善工作完成并形成相关技术文档年月SCH4200310日志月日,商用密码杂凑算法综合检测组在密码算法综合检测平台、271226SSR02卡汇编语言仿真检测平台、仿真检测平台上对优化后的杂凑算IC FPGA/ASIC SCH4法进行了综合检测并形成综合检测记录和检测报告
3.初稿编写及IP核实施阶段年月国密办下达杂凑算法标准编写任务月月底,中科院数200467〜10据通信与保护研究教育中心根据杂凑算法标准编写任务的要求完成商用密码杂凑算法标准,形成初稿同年月,根据国密办《关于下达杂凑算法核设计任务的通知》,国家密11IP码管理委员会办公室商用密码研究中心承担了杂凑算法、、SCH
40.35um
0.25um三种工艺核实现的设计任务,形成算法核实施方案
0.18um IPSCH4IP
4.算法修改及初稿重新修订阶段年月,针对王小云教授自主研发的比特追踪法破解等算法的情况,20053MD5国家密码管理局请专家组对算法进行了针对性分析,分析结果表明该算法不SCH4能有效抵御比特追踪法分析;随后国家密码管理局紧急组织成立了杂凑算法研SCH制攻关组,在保持基本结构的基础上,运用最先进的杂凑算法分析和设计理SCH4论对其修改,研制了算法并对初稿进行重新修订新算法采用了新颖的消息SCH扩展算法、双字介入的并行压缩结构以及混合使用不同群运算,有利于消息的扩散和混乱,便于软、硬件实现针对算法本身特点,综合运用差分抗碰撞分析、线性分析和均差分析等方法进行了深入的安全性分析,特别是针对国际上最先进的比特追踪法进行了安全设计和分析结果表明,该算法安全强度高,灵活性好,技术先进,设计上有创新,适合软硬件实现,适合卡等终端用户产品实现IC
5.征求意见稿编写阶段年月,对初稿进行修改和补充,结合各成员单位多年技术积累,反复交20055流,求同存异,在形成一致共识的基础上整理完成了规范的征求意见稿
6.送审稿编写阶段年月,依据国密局字号文件“关于下达《分组密码算法》20084
[2008]190SM1等标准文本修订任务的通知”,无锡江南信息安全工程技术中心组成了标准文本修订工作小组,开展对密码杂凑算法标准文本的修订工作工作小组遵照国家SM3密码管理局关于“精心组织、周密安排,合理使用经费”的要求采取了集中办公的方式,统筹安排、合理分工、认真编写、交流讨论等方式开展工作按照标准的规范性要求,在标准的结构、规范性要素的编写规则,尤其是密码算法的标准名称、前言、引言、范围、术语和定义、符号和缩略语、内容设置、图、表、公式表述、词语表达、符号选择、规范性引用文件和参考性文献以及规范性附录和资料性附录等方面,经多次讨论,反复修订,形成了《密码杂凑算法》标准文本SM3年月年月,国家密码管理局组织专家审查,对《算法》进行修20121〜20122改和讨论,并对送审稿进行补充完善,形成了《密码杂凑算法》送审稿SM3二国家标准工作过程
1、年月年月,在上述工作的基础上,根据信息安全国家标准制20133-20139修订工作程序,对标准文本进行完善修改,形成《信息安全技术密码杂凑算SM3法》征求意见稿,提交信安标委秘书处、年月日,信安标委秘书处组织专家对文本进行讨论修改;编制220131120组根据专家意见对标准文本进行修改完善
四、标准的主要内容及确定内容的依据
1.SM3杂凑算法流程描述杂凑算法是一种基于分组迭代结构的杂凑算法SM3杂凑算法流程描述如下SM3消息填充分组处理将输入消息比特不失一般性,限制消息串的比特长1X度小于按照特定的规定填充并分组成为固定长度整数倍的消息分组序264,列其中每一消息分组长度固定为比特,并BB=BBo...BBn-BBn-i,BBi5122且中最好比特用来指示消息的比特长度BBn-164X迭代处理从到迭代计算20n-l产3SM3Hi+CF Hi,BBi消息比特串的输出结果为是输出长度为比特的压缩函数4X Hn=SM3X256其中为-比特常量,是输出长度为比特的压缩函5Ho-IV256CF Hi,BBi256数杂凑值输出杂凑算法将以上第次迭代处理的比特输出值6SM3n256通过选裁函数个得到比特、比特或比特三种长度的杂Hn,gHn160192256凑输出值
2.SM3杂凑算法主要结构描述填充过程1假设消息%的长度为/则首先将比特添加到消息的末尾,再添加上个这“1”“0”,里%是满足/+左三的最小非负整数然后再添加一个比特长的1+448mod51264块,其值等于消息%的长度/的二进制表示产生的比特串%’的比特长度恰好为的整数倍512例如,对消息比特串应用以上填充得到比特串011000010110001001100011423640110000101W00100H000111000000-011000/=24将消息%按比特进行分组/=片°〃其中
51231......B T,〃=/+%+65/512迭代压缩算法2对每一个消息分组缶按顺序进行以下处理8VM=CFVi,Bi i=其中是压缩函数,为比特初始值CF V°256IV迭代压缩的输出为V消息扩展算法3将消息分组按以下方法扩展成个消息字叱,叱,…,也叱,…•,叫1327,3将消息分组划分为个字叫叱..明a.5G165b.FOR j=16TO67叫—叫一也一qW/T6㊉9㊉3«15©W H3«7®W J_6ENDFORc.FOR J=16TO63叫叫.1%㊉+4ENDFOR压缩函数4令人民,,£,£为字寄存器,为中间变量,压缩函6,”SSl,SS2,m,772数丫对计算过程详细描述如下ABCDEFGHFOR j=0TO63SSI—[A vv12+£+T«y]«7SS2—SSI㊉A12771—[FFA B,C+D+SS2]+W/及TT2—[GG F,G+H+SSI]+W,D~CC^B«9B^AA—THH—GG^F«\9F—EE fTT2ENDFORV/+1_ABCDEFGH㊉Vi压缩函数第/步框图如下/cc图压缩函数万加中“第步”的框图2,=C/VG,3G j选裁过程5令消息%的〃次迭代压缩输出值为长度为比特V=A3CD£FGH,256针对不同的杂凑输出值长度要求,通过选裁函数选裁产生比特、y=gV»256192比特或比特的杂凑值160比特输出a.256ABCDEFGH—V,79输出y=ABCZ£FG”比特输出b.192〃ABCDEFGH—V石/%=A㊉3㊉㊉㊉G,%第=㊉丫4=尸㊉C㊉G,,输出比特的杂凑值%,%为%%192y=比特输出c.160〃ABCDEFGH—V尸1%=C㊉G%=/4㊉㊉7y=A㊉㊉C9,,%=㊉y4㊉G输出比特的杂凑值=先,160y%%4
五、与相关法律法规及国家有关规定、国内相关标准的关系与相关法律法规及国家有关规定的关系1本标准遵守《商用密码管理条例》的各项规定,标准中定义的各项标识与GM/T《密码杂凑算法》中规定的相关密码算法的使用要求保持一致0004-2012SM3与相关国际标准的关系2本标准中的附录“商用密码领域中的相关定义”定义了国产密码算法A OID相关的标识符与国际上相关密码算法的定义不存在冲突,是对国际上密OID,OID码算法的定义的扩展OID
六、有关问题的说明
1.函数与常数初始值1IV=7380166F4914B2B9172442D7DA8A0600A96F30BC163138AA E38DEE4D B0FB0E4EJ77CC45190/15[7A879D8A16j63内部常数2A㊉B㊉C0j15FFjA、B,C=16/63AABVAACVBAC函数3£/f㊉㊉G0y15GG/E,£G=16y63一H AJTVACJ⑷置换E x=X㊉X vv9㊉X vv17[X=X㊉X v15㊉X«
232.算法特点创新的结构设计1杂凑算法的压缩函数采用置换作为加强雪崩的基本运算,结合双字介入的SM3P并行处理结构,增加了扩散和混乱的速度,在提高安全性的同时,又保证了算法的实现效率消息扩展算法采用了带置换的线性反馈移位寄存器结构,加强消息P的雪崩,增强了寻找特殊结构消息的难度()抗比特追踪法的高安全性设计2针对单向性、抗碰撞性等密码安全要求,进行了差分分析、线性分析等全面的密码分析,优化了算法相关参数,满足杂凑算法安全性需求特别是针对比特追踪法等最新杂凑算法分析方法,增加步全异或布尔函数运算,采用置换、消16P息快速扩散结构和不同群运算,首次设计出第一圈抗碰撞攻击的设计技术,进一步提高了算法抗新型分析的安全性()软硬件高速实现3杂凑算法首次采用了可并行实现的双字介入结构、提出了易于实现的带SM3循环移位的置换、采用了并行两路加法链流水设计,提高了算法的硬件效率;使P用针对字操作的混合不同群运算设计,满足了跨平台软件实现的高效性和广泛的适用性
3.与国内外同类研究技术综合比较()与的安全性比较1SM3SHA-256由于和等算法存在碰撞攻击,我们仅对压缩函数和MD5SHA-1SM3SHA-256压缩函数的安全性关键指标进行比较由于两个算法均包括步,具体指标能够64真实反映两者的安全性强度局部碰撞存在着步的局部碰撞,其概率为一杂凑算法碰撞攻SHA-2569221击的路线总是由局部碰撞路线复合而成的步局部碰撞路线结合消息SHA-2569扩展可以构成步的碰撞;而的步局部碰撞的概率为,但该步局部23SM352/85碰撞不能跟消息扩展相结合构成更多步的的碰撞SM3单圈碰撞攻击(包括所有的和系列算法)存在显然的SHA-2MDx SHAx16步(完整一圈)的概率为的碰撞攻击而经各方多次评估均未发现大1SM3SM3于的一圈的碰撞攻击2q8碰撞攻击使用比特追踪法以及其他各种攻击方法最多可对步的进行20SM3碰撞攻击,而对于目前最好的碰撞攻击结果是步SHA-25628原像攻击使用中间相遇攻击最多可对步的进行原像攻击,而对于30SM3目前最好的结论是步SHA-256,45区分攻击使用差分区分器对最多攻击到步,而对于使用SM335SHA-256,差分区分器可以攻击到步47()与的实现效率比较2SM3SHA-256杂凑算法布尔函数结构相同,各种输出长度的迭代压缩处理类似,各步结SM3构相同,采用双字介入的并行压缩结构,运算只有模算术加法、异或、循环232左移和逻辑与、或、非等基本运算,适于实现,构成的四级加法链流水线有ASIC利于硬件的优化实现智能卡实现中程序占用共占用共RAM112Bytes,ROM执行个机器周期同等条件下资源占用远远少于运算速828Bytes27567SHA-256,度大大高于SHA-256O《信息安全技术SM3密码杂凑算法》(征求意见稿)编制说明《信息安全技术SM3密码杂凑算法》(征求意见稿)编制说明《信息安全技术SM3密码杂凑算法》(征求意见稿)编制说明《信息安全技术SM3密码杂凑算法》(征求意见稿)编制说明《信息安全技术SM3密码杂凑算法》(征求意见稿)编制说明。