admin 管理员组

文章数量: 887021


2023年12月17日发(作者:安装jdk下一句直接消失)

第39卷 第1期 计算机工程 2013年1月 Vol-39 NO.1 Computer Engineering January 2013 ・安全技术・ 文章■号・1000—l3428(2013)01—0144—-o5 文献标识码l A 中圈分类号:TP309・2 基于多比特输出点函数混淆器的消息认证码 龚高翔 ,袁征 ,李超 (1.西安电子科技大学通信工程学院,西安710071;2.北京电子科技学院,北京100070) 摘要:大多数消息认证码的安全性只依赖于Hash函数,但部分Hash函数未被证明是安全的。为此,提出一种基于多比 特输出点函数混淆器的消息认证方案,在此基础上,利用带多比特输出点函数混淆器和带密钥的Hash函数构造一个新的消 息认证码方案。分析结果表明,该方案的安全性同时依赖于Hash函数和多比特输出点函数混淆器,可以更好地保证数据传 输的完整性。 关健词:消息认证码;混淆器;虚拟灰盒混淆;带密钥的Hash函数;对称加密;嵌套MAC Message Authentication Code Based 0n Point Function Obfuscator with Multi..bit 0utputs GoNG Gao—xiang ,YUAN Zheng‘,LI Chao (1.School ofTelecommunications Engineering,Xidian University,Xi’all 710071,China; 2.Beijing Electronic Science&Technology Institute,Beijing 1 00070,China) [Abstract]Security of most message authentication codes depends on Hash function,but some Hash functions have not been proved safe.This paper presents a new kind of message authentication scheme based on point function obfuscator with multi—bit outputs and a Message Authentication Code(MAC)construction scheme including a point ufnction obfuscator with multi bit outputs and Hash function with key.Analysis results demonstrate securiyt of the scheme depends on the Hash function and point function obfuscator with multi—bit outputs,SO it Can better guarantee the integrity of hte data transmission. [Key words]Message Authentication Code(MAC);obfuscator;Virtual Grey Box(VGB)obfuscation;Hash function wiht key; symmetric encryption;nested MAC DOI:10.3969/j.issn.1000—3428.2013.O1.031 1概述 的构造方法,充分利用了Hash函数的优点。Hash函 数可把一种任意长度的消息压缩为某一固定长度的 随着网络技术的快速发展,尤其是电子商务的不 消息摘要,还具有抵抗碰撞等性质。 断进步,信息的完整性问题变得越来越重要,特别是 在不安全信道通信的双方,需要有一种方法来保证发 由于混淆的数据难以识别(即不容易认识理解), 送者发送的数据能被接收者验证其真伪,以防止数据 因此本文根据黑盒混淆的一种放松形式一一虚拟灰 在没有授权的情况下被恶意篡改。常用的方法是通过 盒(Virtual Grey Box,VGB)混淆 J,通过添加一定的条 构造消息认证码(Message Authentication Code,MAC) 件,构造一个多比特输出点函数混淆器,使其可以抵 来保证数据的完整性,它是信息安全的基本标准之 抗多种攻击。再将混淆和带密钥的Hash函数相结合,  得到一种更加安全的消息认证方法。 一,可以有效地防止数据未经授权就被篡改。构造MAC的方法很多,可以归纳为3种类型¨J: 2虚拟黑盒混淆 基于带密钥的Hash函数的构造方法,基于分组密码 对于回路C,一个概率多项式时间O是一个虚拟 的构造方法,自定义的构造方法。第l类是目前常用 黑盒混淆器,它满足以下3个条件: 基金项目:国家自然科学基金资助项I ̄I(61070250);北京市自然科学基金资助项I ̄l(4102055) 作者倚介:龚高翔(1986--),男,硕士研究生,主研方向:密码学;袁征,教授;李超,硕士研究生 收稿日期:2012-03-20 1|}回日期:2012-05-12 E-mail:550711210@qq.com 

第39卷第1期 龚高翔,袁征,李超:基于多比特输出点函数混淆器的消息认证码 145 (1)功能性 对于任意刀∈N,c∈Cn,o(c)是一个回路,与C 计算相同的功能。 (2)多项式减缓 存在一个多项式q,其对任意n∈N,c∈Cn,有 lD(c)l≤q(IcI)。 (3)虚拟黑盒 对于任意PPT(Probabilistic Polynomial Time)敌 手 和多项式P,存在一个PPT模拟器 ,对于所有 满足足够大的n∈N和C∈ : Pr EA(0(c))=1卜Pr[Sc( )= 如果此混淆器运行在多项式时间内,那这个混淆器0 是有效的。 黑盒混淆中多项式减缓性能展现了混淆后回路 的复杂度,并且其中的虚拟黑盒性能也为混淆后回路 的安全提供了强有力的保障,混淆后的回路就像一个 “黑盒”,从某种意义上说,除了输入输出行为外, 它不泄露关于回路的任何信息。更加确切地说,任何 可以访问一个混淆回路的有效攻击者只能通过一个 只有预言机通道进入方案的有效模拟器进行模拟。由 于黑盒混淆的要求严格,因此对于许多混淆任务都不 能完成,而黑盒混淆的2种放松形式一一最可能混淆 和不可辨别混淆,在无边界模拟器的无限Oracle访问 下也是不安全的。相对而言,虚拟灰盒混淆的安全性 要比它们高,而且也能完成许多黑盒混淆不能完成的 任务,在一定的条件下,能构造出多比特输出点函数 混淆器。 3多比特输出点函数混淆器 定义多比特输出点函数混淆器 设O是一个点混淆器,对于具有m-比特输出的 点回路,定义一个概率多项式混淆器0 J。对于一个 点 ∈ 和输出Y=YlY2…Ym∈{0,1) ,选择一个随 机 ∈ -{x),并定义 =(a0,al,…,am)。a0= , 对于任意i∈[m】,如果Yf=1,Cli: ,其他情况下, =S。这个混淆器的输出是: 0 ’( )=c(D( ),D( ),…,o(c ̄m)) 其中,C是一个回路。在输入z时,c首先检测a0=z 是否成立,如果不成立,则返回上;如果发现所有其 他坐标都为cti=z,则输出YlY2… ,其中,YJ=1; 其他情况则输出0 J。 命题如果0是一个f +1).可组合点混淆器,然 后Dl驯(已经由定义构造出)是一个对于m-比特点回 路的虚拟黑盒混淆器。此外,对于任意的分解性能 +1=,×fm。+1)0f ’)是一个虚拟灰盒的,-可组合 的多比特的点回路混淆器。 本文利用此混淆器的优点【4J,将其与带密钥的 Hash函数相结合,得到一种新的消息认证码。 4基于多比特输出点函数混淆器的MAC 传统方法构造的MAC实质上是将消息m和双方 共享的密钥值k作为输入函数,如果将函数值记为 MA (m),这个函数值就是一个认证标记,一般用 表示。而基于带密钥的Hash函数设计MAC【J 的基本 思路是:利用Hash函数能把较长的消息变换成较短 的消息摘要并且具有抵抗碰撞等良好的性质,通过在 函数中加入密钥,保证消息的完整性,然后对Hash 函数和密钥做特殊构造后作为消息认证码。 本文将上述设计中的Hash函数和密钥以及多比 特可组合虚拟灰盒的点混淆器相结合,从而构造出一 个基于多比特输出点函数混淆器的MAC。 本文构造MAC的思路如下:先把消息利用带密 钥的Hash函数进行处理,随后产生的结果通过多比 特输出点函数混淆器进行混淆,使结果难以识别,最 后把混淆后的结果再一次通过带密钥的Hash函数进 行处理。假定( , ,K,G)和(C,D L, )是Hash族, f ,C,O)是混淆器族。这些Hash族与混淆器族复合 成为( ,D,M,GoOoH),其中,M=KxL。 构造方法具体如下: (1)基于密钥的Hash函数经过特殊的构造可得: b=g (a) 其中,b∈ ;a∈ ;g∈G;k∈K。 (2)对第(1)步产生的结果b,在多比特输出点函数 混淆器下进行混淆: C=o(b) 其中,b∈B;C∈c;O∈O。 (3)对上一步结果通过第2个Hash族处理得: d= (c) 其中,d∈D;CE c;h∈ ;,∈L。 根据以上3步的综合结果为: d=(g。0。 ) (口)=ht(O(gk( ))) 在这个结构中,a是任意输入长度的消息;C、D 是使lCl≥IDl的有限集;A是有限或者无限的集合, 如果 是有限的,则有 ≥JBI;k和,是一定长度的 密钥;b=g (a)是基于带密钥Hash函数的一种特殊 构造算法;D J是 一比特输出点函数混淆器。由 第(3)步中得到的认证标记d=ht(o(g (口)))产生一 

计算机工程 2013年1月15日 个二元有效对(口,d)。对于第(1)步和第(3)步中的Hash 函数,因为各个Hash函数都具有自身的优点,所以 最好使用2种不同的函数。如果这2个Hash族和多 比特输出点函数混淆器族是在满足合理的安全要求 的情况下构造的,则可以保证本文构造的MAC是安 全的。 下面以HMAC(Hash Message Authentication Code)为例进行改进,改进思路是在2个Hash函数族 之间添加一个多比特输出点函数混淆器。以下将对该 构造方法进行描述: 构造方法的表达式如下: MAC= HI(K 。 )IlDl Hl(K ④ d)llM… 算法的运行过程描述如下: (1)对 左填充0以产生一个b比特长的 (例如 的长为256比特,b=512,则需填充32个零字节 0x00)。 (2) 与ipad逐一比特异或,以产生b比特长的 分组 。 (3)将 链接到 之后。 (4)对第(3)步产生的数据流做Hash函数运算。 (5)对第(4)步得到的数据流,利用此混淆器O进 行混淆。 (6)K 与opad逐一比特异或,以产生b比特的分 组 。 (7)将第(5)步得到的混淆值链接在 后。 (8)将Hash作用于第(7)步产生的数据流并输出最 终的结果。 注意,K 与ipad逐比特异或和与opad逐比特异 或的结果是将 中的一半,然后比特取反,但是取反 2次的比特的位置不同。而Si和 通过杂凑函数中压 缩函数的处理,相当于以伪随机方式由 产生了2 个密钥。该算法避免了MAC的安全性只归结到所使 用的Hash函数上,也依赖于混淆器的安全性。这样 可以显著增强MAC的安全性。 目前通常是在传输消息后,并在此消息后附加关 于此消息通过MAC构造的认证标记,一般一方传给 另一方的是( , ),然后另一方根据这一消息使用 MAC算法和共享密钥k计算出的结果来判断消息是 否被篡改。而本文构造MAC的方法能够更加可靠地 保证一方发送的数据能被另一方验证其真伪性,方法 如下:首先网络通信的双方之间秘密共享一对密钥 ( ,f),在通信时,参加通信的一个实体向参加通信 的另一个实体发送一个消息a,并将此消息使用MAC 算法和以上秘密共享的一对密钥( ,,)计算出一个 值,这个值就是认证标记d,然后将这个值附加在消 息a之后传送给另一个实体。另一个实体在接收到该 消息后使用同样的方法计算出接收消息的认证标记, 并和他接收到的认证标记作比较:如果计算的认证标 记和接收到的认证标记相同,则认为消息a在由对方 传送到自己的过程中没有被篡改;如果不同,就认为 消息在传送过程中被修改了。 5安全性分析 对于以上构造出的消息认证方法安全性分析,可 以分成4步: (1)对最里层带密钥的Hash函数的安全性分析。 (2)对 .比特输出点函数混淆器0 J的安全性 分析。 (3)对最外层带密钥的Hash函数的安全性分析。 (4)对此认证的组合构造方法的安全性分析。 第(1)步和第(3)步都可以归结为对带密钥的Hash 函数的安全性分析。 5.1带密钥的Hash函数安全性分析 假设给定一个固定的(未知的)密钥,( , , ,G) 是碰撞稳定的,给定一个固定的(未知的)密钥,作为 MAC,fC,D,L,H)安全的。这一步的安全性主要依 赖于Hash函数和它经过的特殊构造。 Hash函数的优点包括: (1)Hash函数可以将任意长度的消息压缩为某一 固定长度的消息摘要的函数。 (2)Hash函数具有抵抗碰撞的良好性质,从而可 以抵抗敌手的伪造攻击。 (3)具有迭代结构的Hash函数(如MD5、SHA)可 以反复使用压缩函数将长消息映射为短消息,这样也 可以加固经过Hash函数处理的消息的完整性。 (4)免费性,即Hash函数不受法律限制,可以免 费使用。 (5)黑盒性,即可以将底层的Hash函数看成是一 个模块,根据需要随时方便地进行更换。 带密钥的Hash函数与不带密钥的Hash函数在保 证数据完整性方面的区别如下: (1)使用不带密钥的Hash函数时,消息摘要必须 被安全存放,不能被篡改。 (2)如果由通信双方来确定所使用的Hash函数, 他们可以在不安全的信道中同时传送消息和认证 标签。 由此可知,在目前的网络通信中,通信双方往往 处于不安全的信道上,基于带密钥的Hash函数所构 建的MAC更实用。而且在软件实现中,这种MAC 

第39卷第1期 龚高翔,袁征,李超:基于多比特输出点函数混淆器的消息认证码 147 比使用分组密码构造的MAC运行速度快,效率特 别高。 加密特性以及对称加密自身的特征、性能,将3层组 合构造方法的安全性分析转化为2层组合构造方法的 安全性分析。 由于,z-比特输出点函数混淆器D J具有对称加 5.2 -比特输出点西数混淆器安全性分析 这一步的安全性主要依赖于混淆器的安全性,因 此,下面主要从4个方面分析,z-比特输出点函数混淆 器D J的安全性: 密的功能,因此对称加密的加解密使用相同的算法, (1)由于混淆后的函数难以识别,这给敌手攻击增 加了难度,因此该混淆器可以增强安全性。 (2)虚拟灰盒混淆虽然允许有无限的计算能力,但 对称加密算法具有公开、计算量小、加密速度快、加 密效率高等优点,在此3层构造方法中,此混淆器进 行的操作只是把B通过混淆器混淆转化为C: C=o(b),其中,b∈ c∈c;0∈0。在整个结构中 只是把 转化为c,而且对称加密自身具有效率高和 是限制了预言机的访问次数,从而保证了混淆的安 全性。 (3)可组合混淆可以同时对多个回路进行串行作 用,这样可以大大提高在MAC构造中的运行速度, 从而为另一实体验证消息的真伪性节约时间,因此, 该混淆器具有快速性。 (4)在文献[4・5]中,多比特输出点函数混淆暗示了 非常强的对称加密,对于密钥依赖消息和随机弱密钥 是安全的。 以上,?-比特输出点函数混淆器 到对称加密 的表示如下: (m)=0 J( 卅) (c)=c(七) 其中,C为一个多比特点回路,以及k属于密钥空间 的一个密钥。 文献[6】给出了关于两者关系的定理: (1)对于独立消息,存在一个具有 ( 1.熵安全的 MBPF(Multi-bit Point Function)混淆器,其充分必要条 件是对于tz(n)一弱密钥,存在具有错误密钥检测的语 义安全对称加密方案。 (2)对于独立消息,存在一个具有 ( ).熵安全的 自我可组合的MBPF混淆器,其充分必要条件是对于 ( )-弱密钥,存在CPA(Chosen Plain Attack)安全加 密方案和具有错误密钥检测性能。 (3)对于独立消息的标准概念,存在具有 (即)- 熵安全的MBPF混淆器,其充分必要条件是存在具有 ( )・弱密钥和错误密钥检测性能的语义安全的 KDM(Key Dependent Message)]J1]密方案。 文献[6]还将上述定理扩展应用到多比特输出点 函数混淆器中,保证了这类混淆器的安全性。 定理1对于m・比特点回路,0是一个多比特输 出点函数混淆器,则加密方案(E0,D01是(m,t).多密 钥消息安全的 J。 5.3 消息认证的组合构造方法安全性分析 下面利用多比特输出点函数混淆器具有的对称 速度快的优点,所以,此混淆器对于整个构造的安全 性影响很小,可以忽略不计。因此,这里只须考虑 2个带密钥的Hash函数进行嵌套的安全性分析 J。 忽略此混淆器在整个组合构造中的影响,此组合 构造在本质上是一个嵌套MAC,即如果嵌套MAC 满足如下2个条件,则嵌套MAC是安全的: (1)给定一个固定的(未知的)密钥(C,D,L, ),其 作为MAC是安全的。 (2)给定固定的(未知的)密钥(A,B,K,G),其是碰 撞稳定的。 下面对嵌套MAC、外层MAC和当密钥保密时对 Hash族的碰撞3种Hash族的某些攻击的相对难度进 行比较,由此证明该构造的安全性。 由于概率至少为 ,因此嵌套MAC最多向嵌套 预言机查询q次后就能输出有效的二元对( ,Z)。设 X1, 2,…, 为攻击者查询,Z1,z2,…, 为预言机做出 的响应应答。在攻击者执行完查询后,可以得到有效 二元对(X1, ),( ,z2),…,( ,Zq)以及可能的有效二 元对( ,Z)。假定现在取出X1,X2,…, 和 ,向Hash 预言机做q+1次查询,从而有: .y1= (X1) Y2=gk( ) Yq=gk(Xq) Y=gk( ) 如果 ∈{Yl,.y2,…,Yq},例如 =Yi,则有一对 ,X,成为碰撞的解。这是一次成功的未知密钥碰撞攻 击。如果 {Yl,Y2,…,Yq},则可以输出二元对(J,,z), 这可能是外层MAC的有效对。从q个外层MAC查 询中得到q个响应回答,也就是( 1,z ), (Y2,Z2),…,Yq,Zq)可构成一个假冒。假定任何未知密 钥的碰撞攻击最多有 的成功率,而嵌套MAC攻击 者至少有£的成功率,则( ,z)为有效二元对,并且 

148 计算机工程 2013年1月15 Et 因为 {Yl,Y2,…,Yg}的概率至少是 一 ,任何外层 MAC攻击成功的概率最多是£7,而上述外层MAC 攻击成功的概率至少是£一el,所以有s≤el+e2。 [2】Barak B,Goldreich O,Impagliazzo R,et a1.On the (Im)possibility of Obfuscating Program[C]//Proc.of CRYPTO’01.[S.1.]:Springer,2001:1-18. [3] Cane ̄i R,Dakdouk R R.Obfuscating Point Functions with Multibit Output[C]//Proc.ofEUROCRYPT’08-[S.1.]: Springer,2008:489-508. 定理2对于上述嵌套MAC,若 是保密的,假 定随机选择的g ∈G不存在(q,g+1)-碰撞攻击,随 机选择的hL∈H不存在( ,q)一假冒(其中,£是保密 的),并且随机选择的(g。 )r 1∈G。 对于嵌套 …一, [4 Bi4]tansky N,Cane ̄i R.On Strong Simulation and Composable Point Obfuscation[C]//Proc.of the 30th Annual Cryptology Conference.Santa Barbara,USA: MAC存在(£,g)一假冒,则E≤E1+£2。与最里层的 Hash函数相比,可以保持嵌套Hash函数的最初性能, 【S.n.】,2010:520-537. [5]Haitner I,Holenstein On the(Im)possibility of Key 不会因为嵌套以及混淆器在一起作用而降低Hash函 数的性能。 带密钥的Hash函数的构造等同于一个MAC的 构造,HMAC、UMAC等嵌套MAC构造方法都给出 了安全性证明,具体见文献[9.10]。 Dependent Encryption[C]//Proc.of TCC’09.[S.1.]: Springer-Verlag,2009:202-219. [6] Canetti R,Kalai Y T’Varia M,et a1.On Symmetric Encryption and Point Obfuscation[C]//Proc.of TCC’10. Heidelberg,Germany:Springer,201 0. 6结束语 目前构造出的MAC其安全性主要依赖于底层的 Hash函数,而所使用的Hash函数中有些没有安全性 证明,因此,不能保证MAC的安全。为此,本文利 【7]Bitansky N,Canetti R.On Strong Simulation and Composable Point Obfuscation[EB/OL].[201 1-10—201. http://eprint.iacr.org. 用多比特输出点函数混淆器,提出一种构造MAC的 新方法。该混淆器不仅可以提高MAC的运行速度, [8]Stinson D R.密码学原理与实践[M].冯登国,译.北京: 电子工业出版社,2003. [9] Black J,Halevi S,Krawczyk H,et a1.UMAC:Fast and Secure Message Authentication[C]//Proc.of CRYPTO’99. Heidelberg,Germany:Springer-Verlag,1999:216—245. 与基于带密钥的Hash函数构造的MAC相比,还进 一步保证了安全性。 参考文献 [10】于洪波.杂凑函数以及HMAC/NMAC的安全性分析[D】. 济南:山东大学,2007. 编辑张帆 【1]王大印,林东岱,吴文玲.消息认证码研究[J].通讯和 计算机,2005,2(10):76.80. (上接第143页) 【3】Tan Zuowen.An Enhanced Three-party Authentication Key Exchange Protocol for Mobile Commerce 【7】Zhao Jianjie,Gu Dawu.Provably Secure Three—party Password—based Authenticated Key Exchange Protocol[J]. Environments[J].Journal of Communications,2010,5(5): 436.443. Inform ̄ion Sciences,2012,184(1):310-323. [8]隋爱芬,杨义先,钮心忻,等.基于椭圆曲线密码的可 Security Weaknesses of Authenticated Key [4]Nose 认证密钥协商协议的研究[J].北京邮电大学学报,2004, 27(3):28-32. Agreement Protocols[J].Information Processing Letters, 2011,l11(14):687—696. 【5】Tan Zuowen.An Improvement on A Three ̄party Authentication Key Exchange Protocol Using Elliptic [9]Chang Tingyi,Hwang Min-Shiang,Yang Weipang.A Communication・-eficient Thfree-・party Password Authenti-- cated Key Exchange Protocol[J].Information Sciences, 2011,181(1):217-226. Curve Cryptography[J]. Journal of Convergence Inform ̄ion Technology,2010,5(4):120—121. [1 0]Tan Zuowen.Eficifent Identity-based Authenticated Multiple Key Exchange Protocol[J].Computers and Electrical Engineering,2011,37(2):191—198. [6]陈建熊,孙乐昌.认证测试对分析重放攻击的缺陷[J]. 计算机应用研究,2009,26(2):739-741. 编辑张帆 


本文标签: 混淆 消息 函数 密钥 输出