首页 > 范文大全 > 正文

基于DTMP和快速学习规则的神经密码算法

开篇:润墨网以专业的文秘视角,为您筛选了一篇基于DTMP和快速学习规则的神经密码算法范文,如需获取更多写作素材,在线客服老师一对一协助。欢迎您的阅读与分享!

摘要:针对神经密码中如何以较短的同步时间获得较高的安全性这一密钥交换问题,提出了一种基于“不要相信我的伙伴”(dtmp)和快速学习规则的联合算法。该算法可以通过在公共信道上以一定的概率发送错误比特来干扰攻击者对交互信息的窃听,以达到降低被动攻击成功率的目的,同时通过估计通信双方神经网络输出不相等的概率来判断通信双方的同步程度;然后根据通信双方的同步程度来确定权值的修改幅度,从而加快同步进程。仿真实验表明,联合算法所需同步时间比原DTMP算法少,且当通信双方不同时发送错误信息时,联合算法的安全性略高于DTMP原算法;而与反馈算法相比,联合算法在同步时间和安全性方面优势明显。实验结果表明联合算法能以较短的同步时间获得较高的安全性。

关键词:树型奇偶机;不要相信我的伙伴;学习规则;几何攻击;简单攻击

中图分类号: TP309.7 文献标志码:A

英文摘要

Abstract:Focusing on the key exchange problem of how to get the higher security for neural cryptography in the short time of the synchronization, a new hybrid algorithm combining the features of “Do not Trust My Partner” (DTMP) and the fast learning rule was proposed. The algorithm could send erroneous output bits in the public channel to disrupt the attackers

eavesdropping of the exchanged bits and reduce the success rate of passive attack. Meanwhile, the proposed algorithm estimated the synchronization by estimating the probability of unequal outputs, then adjusted the change of weights according to the level of synchronization to speed up the process of synchronization. The simulation results show that the proposed algorithm outperforms the original DTMP in the time needed for the partners to synchronize. Moreover, the proposed algorithm is securer than the original DTMP when the partners do not send erroneous output bits at the same time. And the proposed algorithm outperforms the feedback algorithm in both the synchronization time and security obviously. The experimental results show that the proposed algorithm can obtain the key with a high level of security and a less synchronization time.

英文关键词

Key words:Tree Parity Machine (TPM); Do not Trust My Partner (DTMP); learning rule; geometric attack; simple attack

0 引言

公共密钥交换协议[1]自从由Diffie 和 Hellman提出后,在密码学中扮演了重要角色。通常,公共密钥交换协议可以使两个实体在公共信道上获取一个共享密钥,而攻击者即使有监听信道的能力,也无法获取该密钥。然而,随着神经网络的广泛应用,人们发现具有高度非线性的神经网络也能应用于此,并且受到了密码学界的关注,形成了一个新的研究领域――神经密码学[2]。

目前,在神经密码学方面已经有大量研究[3-5]。研究发现,两个树型奇偶机(Tree Parity Machine, TPM)通过互学习的方式达到同步的速度要比通过单向学习达到同步的速度快得多,并将这一现象应用于解决密码学中的密钥交换问题。文献[6-8] 研究了四种攻击方法,即简单攻击、几何攻击、多数攻击和遗传攻击,其中简单攻击和几何攻击都采用单神经网络,而多数攻击和遗传攻击都是基于几何攻击的多神经网络攻击方法。为了抵抗这些攻击,文献[9]的研究表明仅有一个或两个隐藏单元的TPM模型被证明是不安全的,而含有三个隐藏单元的TPM可以通过增加突触深度的值来使神经同步过程达到任意级别的安全性,但增加突触深度会增加同步时间。攻击者攻击策略离不开通信双方在公共信道上传输的输入信息及输出信息。根据攻击者的这一特点,文献[10]提出了一种反馈机制,这种机制可以使原来公开的输入向量部分隐藏以达到阻碍攻击者学习过程的进行。这种方法虽然可以使同步过程达到较高的安全性,但同步时间也大幅度增加。而文献[11]提出了一种基于错误检测的算法――不要相信我的伙伴(Do not Trust My Partner, DTMP),该算法依靠在公共信道上传送错误信息,通信双方可以检测并且恢复出正确信息,而攻击者却无法恢复出正确信息,从而对攻击者造成干扰。DTMP算法可以极大地提高同步过程的安全性,虽然其所需同步时间比前述的提高抗攻击性能的方法少,但也仍需要较长的同步时间。

针对以上问题,为了在提高安全性的同时尽量缩短同步时间,本文提出了一种基于DTMP和快速学习规则的联合算法。该算法可以根据同步程度适当地调整权值修改幅度[12],从而加快同步进程,减少同步时间以及攻击者采用新方法攻击成功的机会。实验结果表明,与DTMP以及反馈算法相比,联合算法可以以较低的同步时间获取较高的安全性。

1 树型奇偶机

树型奇偶机(TPM)是多层前馈式网络,在神经密码学中,通信双方的神经网络A和B以及攻击者的神经网络E都是采用的这种结构。树型奇偶机的一般化结构如图1所示。 τ表示神经网络输出; σ表示隐藏单元输出; w表示权值; x表示输入;K表示隐藏单元个数;N表示每个隐藏单元的输入个数。解释图中参数

2 快速学习规则设计

传统的学习规则包括Hebbian学习规则、antiHebbian学习规则和randomwalk学习规则。使用传统学习规则的神经密码学在协商密钥时,每次权值更新的步长均为1,这就导致交换输出值的次数过多,同步时间较长。因此,可以令通信双方根据其同步程度,适当地调整学习规则中权值的修改幅度来加快同步进程。由于三种学习规则的修改方法是类似的,本文仅对Hebbian学习规则的修改进行研究,该学习规则可改为式(7)所示形式。

即在安全性提高的同时,通信双方的同步时间也会大大增加。这样不仅需要的计算开销及通信开销会随之增加,同时由于通信时间过长可能会给攻击者寻找新的攻击方法提供更多的机会。而DTMP算法旨在通过以一定概率传送错误的神经网络输出信息来提高神经密码的安全性,并且不会对通信双方的同步时间产生影响。但希望在提高安全性的同时,能够尽量地减少同步时间,以减少攻击者使用新方法攻击的机会。因此,这里将第2章所述学习规则引入到DTMP算法中。另外,DTMP算法是将通信双方要发送给对方的输出信息以一定的概率取反后再发送到信道上传输的,因此,通信双方A、B最终在学习过程中使用的对方的输出信息并非是直接从信道接收到的信息,而是进行检错纠错后的信息。因此,为了适用于DTMP算法,需将上述学习规则改为如下形式:

4 系统仿真

4.1 实验设置

本文仿真实验中,通信双方A和B均采用K=3,N=1000的TPM结构。随机数发生器RNG中的两组参数随机取值。为使联合算法既能保证安全性又能提高同步速度,根据文献[13],本实验中将快速学习规则中参数设置为m=2,q=1。

仿真中用两种方法控制错误输出信息的产生:

1)通信双方A和B同时产生错误信息:

如果F(RAi,1,RAi,2)>0,A将发送一个错误的τA,否则就发送一个正确的τA;如果F(RBi,1,RBi,2)>0,B将发送一个错误的τB,否则就发送一个正确的τB。

2)通信双方A和B不同时产生错误信息:

如果F(RAi,1,RAi,2)>0,A将发送一个错误的τA,否则就发送一个正确的τA;如果F(RBi,1,RBi,2)

这两种方法不会对通信双方产生影响,但会对攻击者产生不同的影响:当A和B同时产生错误信息时,不会对攻击者何时进行权值更新产生影响,而是对其权值更新的方向产生干扰;而双方不同时产生错误信息时,对攻击者何时进行权值更新以及其更新方向均会产生一定的影响。

在攻击实验中,攻击者与通信双方使用相同的网络结构及学习规则。实验中,平均同步时间是10000次实验的平均结果;攻击成功率是10000次实验中攻击成功次数的比率是否为平均结果?平均同步时间是10000次实验的平均结果;攻击成功率是10000次实验中攻击成功次数的比率,不是平均结果。。

4.2 神经网络同步仿真

随着互学习过程的进行,通信双方的同步程度增大,双方神经网络的权值向量的距离会越来越小,当双方神经网络达到全同步状态时,通信双方权值相等,即ED=0,权向量距离收敛速度越快也就意味着所需同步时间越短。因此,两个神经网络的同步过程也可以看作是这两个神经网络中权向量距离的收敛过程。

从图2可以看出联合算法的权向量距离收敛速度比DTMP原算法快,这是由于联合算法中采用了快速学习规则,可以根据同步程度适当调整权值修改幅度,使权向量距离收敛速度加快,从而加快同步进程,缩短同步时间。由于神经网络的同步过程是一个随机过程,每次同步所需时间会存在差异,为观察整体特性,还需采用平均同步时间进行研究。图3是不同突触深度时,采用DTMP原算法和联合算法的同步过程的平均同步时间。图3也可以说明,在同步时间上,联合算法是明显优于DTMP原算法的。

权向量距离的变化与同步时间的关系坐标单位?在神经密码学中,同步时间是指同步所需的学习次数,权向量距离是两个权值向量的距离,均没有单位。

4.3 安全性仿真

4.2节中通过仿真实验对联合算法的同步性进行了验证,虽然快速学习规则可以有效地减少DTMP算法的同步时间,但是还需要对联合算法同步过程的安全性进行研究。神经网络的同步过程是一个随机过程,因此,也存在一定的概率能使攻击者E在A、B同步之前与A或B达到同步,因此,这个概率就可以用来描述神经同步过程的安全性。然而,在实际中,由于存在同步判定的问题,通信双方可能并不能在同步时刻就及时地停止同步过程,若在A、B同步后到A、B停止学习过程这段时间内,E与A或者B达到同步,那么E的攻击也是成功的。因此,本仿真实验中,将攻击成功率PE定义为在A、B同步时刻ρAE>0.9发生的概率。另外,目前主要有四种已知的攻击方法,即简单攻击、几何攻击、多数攻击以及遗传攻击。其中多数攻击和遗传攻击都是采用多个神经网络的,但都是基于几何攻击的,其攻击成功率也受几何攻击成功率影响。因此,本文中,仅对使用单神经网络的简单攻击和几何攻击进行仿真分析。在仿真实验中,攻击者E在应用快速学习规则时,所截取到神经网络A/B的输出信息为τAsent和τBsent。

表1和表2是A、B分别同时发送错误信息和不同时发送错误信息时的联合算法及原DTMP算法的抗几何攻击实验结果。 从表1和表2可以看出,若A和B同时产生错误信息,联合算法的抗几何攻击能力比DTMP原算法稍低;而若A和B不同时发送错误信息,则联合算法的抗几何攻击能力明显优于DTMP原算法。

表3和表4是A、B分别同时发送错误信息和不同时发送错误信息时的联合算法及DTMP原算法的抗简单攻击实验结果。从表3和表4可以看出,两种情况下,联合算法和DTMP原算法均已达到较高的安全性,但A、B不同时发送错误信息时,联合算法的抗简单攻击性要优于DTMP原算法。

以上实验表明,通信双方不同时发送错误信息时,联合算法的性能优于DTMP原算法。这是由于此时联合算法能使通信双方根据同步程度确定合适的并且不至于过大的权值修改幅度,使通信双方以较快的速度达到同步,而攻击者受错误信息的影响,无法正确判断通信双方何时进行更新以及通信双方使用什么样的权值修改幅度,这就导致攻击者不能在通信双方达到同步前与通信双方之一达到同步。

那么相对于经典的反馈机制,联合算法的性能又怎么样呢?图4和图5分别是几何攻击和简单攻击对使用反馈算法和联合算法的同步过程的攻击成功率与同步时间的关系图,图中攻击成功率越低且相对应的同步时间越少说明其性能越好。显然,联合算法能以较低的同步时间获得比反馈算法更好的抗几何攻击和简单攻击的能力。

5 结语

本文对基于DTMP和快速学习规则的联合算法进行了研究。DTMP算法可以通过产生并发送错误信息对攻击者的监听过程进行干扰来有效地提高同步过程的安全性;快速学习规则可以根据同步程度适当地调整权值修改幅度来加快同步进程。而二者的联合算法则可以以较短的同步时间获取较高的安全性。实验结果表明,DTMP和快速学习规则的联合算法所需的同步时间少于DTMP原算法,且明显优于反馈算法,达到很高的安全性,实现了以较短的同步时间获得较高的安全性的目的。但目前对神经密码学的研究都是基于实数神经网络的,而复数神经网络具有更强的处理能力,若将其应用到密码学中是否能达到更高的安全性,这还有待进一步的研究。

参考文献:

[1]DIFFIE W, HELLMAN M E. New directions in cryptography [J]. IEEE Transactions on Information Theory, 1976, 22(6): 644-654.

[2]ROSENZVI M, KANTER I, KINZEL W. Cryptography based on neural networks-analytical results [J]. Journal of Physics A: Mathematical and General, 2002, 35(47): 707-713.

[3]ROSENZVI M, KLEIN E, KANTER I, et al. Mutual learning in a tree parity machine and its application to cryptography [J]. Physical Review E, 2002, 66(6): 135-138.

[4]VOLKMER M, WALLNER S. Tree parity machine rekeying architectures [J]. IEEE Transactions on Computers, 2005, 54(4): 421-427.

[5]CAI J, LIU D, CHEN T. Review of neural cryptography [J]. Journal of Computer Applications, 2007, 27(S1): 219-222.(蔡家楣,刘多,陈铁铭.神经网络密码学研究综述[J].计算机应用,2007, 27(S1):219-222.)

[6]RUTTOR A, KINZEL W, NAEH R, et al. Genetic attack on neural cryptography [J]. Physical Review E, 2006, 73(3): 132-136.

[7]SHACHAM L N, KLEIN E, MISLOVATY R, et al.Cooperating attackers in neural cryptography [J]. Physics Review E, 2004, 69(6): 5-11.

[8]MISLOVATY R, PERCHENOK Y, KANTER I, et al. Secure keyexchange protocol with an absence of injective functions [J]. Physical Review E, 2002, 66(6): 102-108.

[9]RUTTOR A, KINZEL W, KANTER I. Dynamics of neural cryptography [J]. Physical Review E, 2007, 75(5): 56-58.

[10]RUTTOR A, KINZEL W, SHACHAM L, et al. Neural cryptography with feedback [J]. Physical Review E, 2004, 69(4): 7-9.

[11]ALLAM A M, ABBAS H M. On the improvement of neural cryptography using erroneous transmitted information with error prediction [J]. IEEE Transactions on Neural Networks, 2010, 21(12): 1915-1924.

[12]LIANG Y, LIAO X,REN X. New neural synchronization learning rule based on tree parity machine [J]. Journal of Computer Applications, 2013, 33(1): 146-148. (梁一峰,廖晓峰,任晓霞.基于树型奇偶机的神经网络同步新学习规则[J].计算机应用,2013,33 (1):146-148.)

[13]ZHANG L, YAN W, LUO C. New learning rule of neural cryptography based on queue mechanism [J]. Application Research of Computers, 2014, 31(10): 3095-3099. (张力生,严威,罗成娥.一种基于队列机制的神经密码学的新学习规则[J].计算机应用研究, 2014,31 (10): 3095-3099.)