法律状态公告日
法律状态信息
法律状态
2017-02-01
授权
授权
2016-11-30
著录事项变更 IPC(主分类):H04L9/08 变更前: 变更后: 申请日:20131101
著录事项变更
2015-02-25
著录事项变更 IPC(主分类):H04L9/08 变更前: 变更后: 申请日:20131101
著录事项变更
2014-04-09
实质审查的生效 IPC(主分类):H04L9/08 申请日:20131101
实质审查的生效
2014-03-12
公开
公开
技术领域
本发明涉及一种基于多态性密码理论的虚S- 盒内部SPN的协商构造方法,属于对称性密钥交换协议领域。
背景技术
目前电子商务中非正规场景应用的临时交易日益增多,若无长期信任关系的通信双方在 临时交易中实现密钥共享,需要交易双方快速协商不可抵赖含有签名意义会话密钥。从实际 应用考虑,基于公钥体制数字证书的密钥交换算法占用较多的计算资源,生成代价较高,其 应用场景适用于具备长期信任关系的通信伙伴,这些类型的信息安全工程因计算成本较高的 公钥密码体制而受限,无CA认证的对称性快速密钥协商机制正在成为新的研究难点。多态 性密码理论(PMC)利用单向函数集合{f1,f2,…,fn}或者安全子系统{S1,S2,…,Sn}集合,通 信双方提供随机密钥组,建立可实现的自编译密码通用模式,加密算法本身的随机迭代排列 成为其“多态性”构造思想的核心。该理论利用数量较多的简单伪随机数产生器以扩展因子 对所采集的随机数据源进行扩展,构成安全的PRNG(伪随机数产生器),输出一个周期较长 的直接和明文位进行XOR运算的置乱序列,实现对明文的加密,旨在完成对存储介质的加密 。多态性密码理论基本上属于分组密码和流密码混合,为自编译类的加密算法提供了一种新 的密码反馈模式。文献“Fast S-box security mechanism research based on the polymorphic cipher.Information Sciences,Volume178,Issue6,15March2008,Pages1603– 1610”提出的快速S- 盒的构造方法,可以由通信双方各自拥有的PRNG来共同设计,这种方法利用多态密码(PM C)设计S盒中的置换函数,所得S盒的安全性依赖于通信双方各自产生的伪随机序列周期长 度及伪随机性,可以满足S盒的严格雪崩准则、输出位独立性和高阶非线性准则。但此方法 未能有效地解决密钥协商的安全性、完整性及可验证性。目前国际上适用于非正规场景的密 钥协商理论还不完善,国内仍然是研究难点,这严重制约了短期合作伙伴的电子商务交易。 快速安全的密钥交换协议能保证短期通信双方实现高效保密的通信,SPN是对称性密钥交换 协议中的重要非线性组成部分,其性能决定密码体制的安全性,需要利用混淆和扩散性能好 ,高度非线性的算法来构造。
发明内容
本发明结合多态性密码理论,采用满足S-盒设计准则的虚S- 盒技术解决SPN的核心问题,设计出一个能够对抗差分密码分析、线性攻击和穷举攻击的双 方共享SPN及多态性散列函数。以通信方的网络数据包产生的参数启动自编译系统,可以构 造高效安全的伪随机虚迭代密码算法,利用单向函数构成的安全子系统进行交叉组合,经过 多轮迭代后,获得满足密码学特性的输出序列,以此抵抗差分密码分析和穷举攻击。本发明 目的在于提供一种无可信第三方的对称性快速密钥交换算法,其核心SPN方法能保障通信双 方的系统安全性。
本发明的技术方案是:用于对称性密钥交换协议的虚S-盒的构造方法,它的步骤如下:
(1)作为通信的双方的A和B,将自己的私钥ka、kb和从网络中所获得的ur,dr,ut,dt4个随 机参数形成私有的5元密钥组,构造含有自编译机器指令的PRNG,采用和Hash散列函数Hvif绑定的方式构造钥控安全子系统集;
(2)A采用Ka[5]为密钥组,得到虚迭代函数所需的部分参数组
A将秘密Ka[5]代入虚迭代函数VIF(x,y),经过自编译的PRNG,设计出A方的虚迭代函数:
同样,B拥有密钥组Kb[5],得到虚迭代函数所需的部分参数组
B将VIF(x[],Kb[5])发送给A;
(3)A再将ka[5]代入VIF(x[],Kb[5]),计算得到VIF(Ka[5],Kb[5]),同样B将Kb[5]代入 VIF(Ka[5],y[])得到VIF(Ka[5],Kb[5]),交互完成。
用于对称性密钥交换协议的交换方法,它的步骤如下:
(1)预先设计安全子系统集,其中Si分别为第i个安全子系统,Ka[5]∈X,Kb[5]∈Y为通信 双方所持有的5元密钥组,安全子系统Si可描述为其中pj(j=1,2,...,16)为构成第i个安全子系统的候选单向函数fij发生的概率;
(2)A和B开始进行密钥协商;
(3)结合多态性密码理论,A和B分别构造属于本部分的自编译机器指令PRNG,由于 此种PRNG基于多态性密码理论,其伪随机性由密钥组决定,在设计过程中引入了扩展因子 ,延长了序列的周期,其派生函数为哈希散列函数其中 m(i)(3)m(i)(2)m(i)(1)m(i)(0)为ur,dr,ut,dt随机序列所构成增加扩展因子的四个长周期连续 比特串;
(4)A和B分别将各自的密钥组Ka[5]∈X,Kb[5]∈Y代入安全子系统集,以长周期的 伪随机序列决定由单向函数组构成的安全子系统Si被调用的概率,将各自不具完备性的虚S- 盒发送给对方;
(5)通信双方接收到含虚函数的装置,该装置为含有对方密钥组经过编译,预留接口 的可执行程序,参数不完整不具备执行功能;
(6)A和B再次将各自的密钥组代入接收到的虚S- 盒,计算出得到共享的SPN,实现加解密装置的完全化;
(7)通信双方需要验证接收信息的完整性,由一方A或B将明文M进行Hvif得到摘要信 息m,并将M和m利用双方前期共享的完备加解密装置进行加密,将密文传送给接收方;
(8)接收方将获取的密文进行解密,利用Hvif对解密后的明文计算,经过摘要对比, 可以判断信息的完整性。
多态性虚S- 盒定义:对称性密钥协议双方在通信前各自持有含本身信息的随机参数组Pa和Pb,提供候选 安全子系统集,双方利用各自密钥组控制安全子系统分别组装出算法子集,该算法子集在未 获得另一密钥组的情况下,不具备混淆和置换能力,称为多态性虚S-盒。
虚S-盒的核心思想是利用含有自编译系统的虚迭代函数(Virtual Iterative Function)VIF(x,y)保证密钥协议双方在通信前拥有同样结构的虚迭代函数,这种虚迭代函数未 得到完整的实参,不具备密钥交换算法的功能,双方协商过程中各自将含本身随机信息的密 钥参数组Kpa和Kpb为实参的指纹信息代入VIF,利用自编译机器指令的伪随机序列产生 器构造出钥控安全子系统集合,设计出可证明高度非线性的SPN核心算法,由通信双方共同 协商设计出更加安全、快速的多态性虚S-盒,相当于A和B共享相同的密钥,即 KAB=KpaeKpb,属于对称性密码范畴,可以解决传统公钥体制在短期通信应用方面计算 成本高的难题。
本发明揭示一种使用对称性密码算法实现网络通信双方密钥共享的方法,可以解决因公 钥计算复杂度导致的临时交易场景中密钥共享瓶颈问题。延伸了多态性密码理论原有存储加 密的内涵,采用通信双方各自的伪随机序列产生器,通过密钥协议双方在通信前协商的安全 子系统集,设计出保密性、完整性的SPN核心算法,共同构造出更加安全、快速的虚迭代S- 盒,以对称性密码机制实现公钥密码学特性的秘密分割技术。进一步使多态性虚S- 盒的算法在密码学特性上达到满足密码学安全特性,弥补了传统密钥交换算法在身份认证、 阻塞性拒绝服务攻击和假冒攻击三个方面的不足,可用于解决对称性密码学中的密钥交换问 题和短期通信伙伴的密钥管理机制难题。
附图说明
图1为多态性虚S-盒简易模型;
图2为双方共同构造多态性虚S-盒步骤;
图3为快速密钥交换协议流程图。
具体实施方式
虚S-盒的核心思想是利用含有自编译系统的虚迭代函数(Virtual Iterative Function)VIF(x,y)保证密钥协议双方在通信前拥有同样结构的虚迭代函数,这种虚迭代函数未 得到完整的实参,不具备密钥交换算法的功能,双方协商过程中各自将含本身随机信息的密 钥参数组Kpa和Kpb为实参的指纹信息代入VIF,利用自编译机器指令的伪随机序列产生器构 造出钥控安全子系统集合,设计出可证明高度非线性的SPN核心算法,由通信双方共同协商 设计出更加安全、快速的多态性虚S- 盒,相当于A和B共享相同的密钥,即KAB=KpaeKpb,属于对称性密码范畴,可以解决传 统公钥体制在短期通信应用方面计算成本高的难题。
交易双方需要快速协商具备保密性、完整性和不可抵赖含有签名意义的会话密钥。本发 明基于自编译的多态性密码理论,将原有快速S-盒(Fast S-box)概念衍生出多态性虚S- 盒,其简易模型如图1所示:
交易双方分两阶段完成多态性会话密钥快速协商生成算法。
第一阶段先公开一个含有自编译系统的虚迭代函数VIF(x,y),其中x,y为待定参数,A 、B各自拥有密钥参数组Kpa和Kpb。
A将密钥参数组Kpa代入虚函数,将计算结果VIF(Kpa,y)发送给B,同时B也将 VIF(x,Kpb)发送给A;
A再将Kpa代入获取的VIF(x,Kpb),计算出SPN所需的对称性加解密函数F(Kpa,Kpb)以 及钥控Hash函数Hvif,同样B也将Kpb代入VIF(Kpa,y),得到F(Kpa,Kpb)和Hvif,共享密 钥生成算法协商完成。
第二阶段实现基于对称性多态虚S- 盒的加解密方法,A利用Hvif对信息M进行散列,得到m,将M和m代入SPN的对称性多态性 函数F(Kpa,Kpb),将加密后的M1和m1作为结果发送给B。
由于F(Kpa,Kpb)为包含用户A和B共享密钥的加解密装置,B以F(Kpa,Kpb)解密后,用共 享的Hvif对获取的M进行散列得到m2,通过判断m和m2等值来解决信息完整性验证问题。
发明的具体实现如下:
发明中涉及到的概念术语和符号
其中ka为A的私钥,ura和dra分别为发送方A所截获的网络上传速率和下载速率,uta和dta为A所截获的网络数据包上传及下载总量,相似的,kb为B的私钥,urb和drb分别为B所截获 的网络上传速率和下载速率,utb和dtb为B所截获的网络数据包上传及下载总量。这些参数具 有随机性特征。
在构造虚S- 盒的SPN之前,预设一个含有自编译系统的虚函数,图2说明了通信双方共同构造多态性虚 函数的步骤:
步骤1:作为通信的双方的A和B,将自己的私钥ka、kb和从网络中所获得的ur,dr,ut,dt4 个随机参数形成私有的5元密钥组,构造含有自编译机器指令的PRNG。
采用和Hash散列函数Hvif绑定的方式构造钥控安全子系统集,这种方法可以克服PRNG 性能不佳,因临时密钥重用所带来的临时私钥泄露所造成的隐患。
步骤2:A采用Ka[5]为密钥组,得到虚迭代函数所需的部分参数组
A将秘密Ka[5]代入虚迭代函数VIF(x,y),经过自编译的PRNG,设计出A方的虚迭代函数:
同样,B拥有密钥组Kb[5],得到虚迭代函数所需的部分参数组
B也将VIF(x[],Kb[5])发送给A;
步骤3:A再将ka[5]代入VIF(x[],Kb[5]),计算得到VIF(Ka[5],Kb[5]),同样B也将Kb[5]代 入VIF(Ka[5],y[])得到VIF(Ka[5],Kb[5])。
交互完成。
本发明可以采用时间戳关联模式和散列摘要模式两种模式相结合进行密钥交换的身份认 证。
第一种为时间戳关联模式,双方各自拥有不可再生、包含时间信息ur,dr,ut,dt的时间戳DT S,具备难以伪造、不可抵赖等特性,可以唯一确认对方的身份。时间戳关联模式可以被用 于多态性会话密钥生成算法的第二个阶段往返交换认证信息,身份认证的描述如下:
密钥协商者A 密钥协商者B
构造包含自身ur,dr,ut,dt的VIF 构造包含自身ur,dr,ut,dt的VIF
CERT[DTSa,VIF(Ka[5],y[])]——>
<——CERT[DTSb,VIF(x[],Kb[5])]
第二种散列摘要模式可以通过相互一致的哈希函数Hvif得到的单向散列值进行密钥认证 ,其中考虑使用下列四个强制性要素作为散列摘要模式的构成部分进行认证:双方共享的对 称性加/解密装置(VIF)、散列Hash函数(Hvif)、基本密钥组Ka[5],Kb[5]、共享密钥完整性 验证方法(虚S-盒中的SPN置换算法的身份认证或共享密钥验证)。
基于安全子系统的散列摘要模式可以实现流密码体制的密钥完整性验证,散列函数可以 用于证书或预共享密钥进行身份验证,保护通信方的唯一标识。散列摘要模式描述如下:
密钥协商者A 密钥协商者B
利用对VIF(Ka[5],Kb[5])加密共享密钥M
CERT[VIF,Hvif(M)]——>对解出的M再次计算散列Hvif(M),
与摘要判等,进行共享密钥验证
密码分析者C可以截获VIF(x[],Kb[5])和VIF(Ka[5],y[]),由于虚迭代函数内部的自编译系统的不 可读特性,C无法解出Ka[5]和Kb[5],因此无法计算出VIF(Ka[5],Kb[5])。
若C要强行破解VIF(x[],Kb[5])和VIF(Ka[5],y[]),由于安全子系统Si内部的自编译系统的作用, 随着每次破解,C最终将面临VIF(ka[5],y[])的变异函数类 和VIF(x[],kb[5])的变异函数类 C无法得到X和Y,因此无法计算出F(Kpa,Kpb)。
参照图3,本发明实现无可信第三方、具备完整性和不可抵赖性的对称性快速密钥交换 的具体步骤如下:
(1)预先设计安全子系统集,其中Si分别为第i个安全子系统,Ka[5]∈X,Kb[5]∈Y为通信 双方所持有的5元密钥组。安全子系统Si可描述为其中 pj(j=1,2,...,16)为构成第i个安全子系统的候选单向函数fij发生的概率。
(2)步骤301:A和B开始进行密钥协商。
(3)步骤302:结合多态性密码理论,A和B分别构造属于本部分的自编译机器指令PRN G,由于此种PRNG基于多态性密码理论,其伪随机性由密钥组决定,在设计过程中引入了 扩展因子,延长了序列的周期,其派生函数为哈希散列函数其中 m(i)(3)m(i)(2)m(i)(1)m(i)(0)为ur,dr,ut,dt随机序列所构成增加扩展因子的四个长周期连续比特串。
(4)步骤303:A和B分别将各自的密钥组Ka[5]∈X,Kb[5]∈Y代入安全子系统集,以长周 期的伪随机序列决定由单向函数组构成的安全子系统Si被调用的概率,将各自不具完备性的 虚S-盒发送给对方。
(5)步骤304:通信双方接收到含虚函数的装置,该装置可以是含有对方密钥组经过编 译,预留接口的可执行程序,在参数不完整的情况下,不具备执行功能。
(6)步骤305:A和B再次将各自的密钥组代入接收到的虚S-盒,计算出 得到共享的SPN,实现加解密装置的完全化
(7)步骤306:通信双方需要进一步验证接收信息的完整性,可以由一方(例如A)将 明文M进行Hvif得到摘要信息m,并将M和m利用双方前期共享的完备加解密装置进行加密, 将密文传送给接收方。
(8)步骤307:接收方将获取的密文进行解密,利用Hvif对解密后的明文计算,经过摘 要对比,可以判断信息的完整性。
机译: 用于超宽带接收机的时域扩展方法,涉及交换变换后信号的实部和虚部,并逆向输出交换后的信号以获得解扩后的接收数据信号集
机译: 管理因特网密钥交换协议的系统和方法,以及应用于该方法的装置
机译: 管理因特网密钥交换协议的系统和方法,以及应用于该方法的装置