《第一章密码学和电子商务的安全性.docx》由会员分享,可在线阅读,更多相关《第一章密码学和电子商务的安全性.docx(25页珍藏版)》请在三一办公上搜索。
1、摘要公钥密码体制从开始提出到现在,它的主要思想是利用了数论中的困难问题。例如,应用最广泛的RSA加密体制是基于大整数分解成两个素数的困难问题构造的加密算法,ElGamal数字签名是根据在剩余类环中由生成元求解其离散对数的问题的困难程度来实现的。和这些加密算法不同的是本文中利用了组合群论的思想构造的一些加密体制。组合群论中有些特定的字问题和共轭问题是困难问题,可用于构造密码学的基础。N.R.Wager和M.R.Magyarik第一次提出了用组合群论的理论来构造公钥加密算法的方法,他们所利用的是不可解的字问题,其次在93年,M.Anshel和I.Anhel提出了利用不可解的共轭问题对信息进行加密的
2、算法,这也是公钥密码算法,其基本思想和第一个基本相似。更进一步,在99年I.Anshel,M.Anshel和D.Goldfeld利用辫群的共轭问题实现了一个新的密钥交换协议。密码学在组合群论中的最新进展是Hyoung.Ko,Sang Jin Lee和Jung Hee Cheon提出的密钥交换协议和加密协议,他们同样是利用了辫群的不可解共轭问题,但是主要思想和具体的实现上和I.Anshel等提出的密钥交换协议有很大的区别。本文简要介绍这些加密算法和协议。同时,利用辫群的一些基本特点把辫群的另一个困难问题应用到基于单向环同态的多签名体制中去,提出了一个新的多签名方案,并且讨论了这个多签名方案在电子
3、支付系统中的应用。关键词:辫群,字问题,共轭问题,密钥交换协议,多签名体制组合群论在密码学和电子商务的安全性中的应用 数学学院98级数学系 方初莹目录 第一章 密码学和电子商务的安全性 1第一节 密码学概述 1第二节 电子支付系统的安全性 4第二章 组合群论和密码学 4第一节 基础知识和背景 4第二节 密码体制和密钥交换协议 72.2.1 Wag84公钥密码体制 72.2.2Anshel93密码体制 9 2.2.3Anshel-Anshel-Goldfeld密钥交换协议 9 2.2.4Ko-Lee-Cheon密钥交换协议和密码体制 11第三章 组合群论在电子支票的多签名体制中的应用14第一节
4、三方密钥交换协议 14第二节 基于辫群的多签名体制方案 15 3.2.1多签名介绍 16 3.2.2基于单向环同态的多签名体制 17 3.2.3基于辫群的多签名体制 18 第一章 密码学和电子商务的安全性第一节 密码学概述信息安全是密码学的基本要求,为了要达到这一点,密码学始终涉及两个方面的斗争。其中一方(发送者)是设法对消息进行加密,使得只能是具有特殊权利的人(接受者)才能够接受和阅读信息。而另一方则是尽力设法截获信息,破译密文,或者用修改以后的假信息欺骗接收者。在本文中,我们主要讨论的是前一方,即考虑用何种方法能够对消息进行安全、有效且快捷的加密,保证消息的传送。待加密的消息被称作明文(p
5、laintext),用某种方法伪装消息并隐藏它的内容的方法称作加密(encryption),被加密以后的消息称为密文,而把密文转变成明文的过程称为解密。加密体制中的加密运算是由一个算法类组成,这些算法类的不同运算可用不同的参数表示,不同的参数分别代表不同的算法,被称作密钥,密钥空间是所有密钥的集合。密码体制一般是指密钥空间与相应的加密运算结构,同时还包括了明文和密文的结构特征。在密码体制的设计和评价中要考虑到以下一些基本原则:(1) 不可破原则,指该密码体制在理论上或实际上是不可破解的。(2) 部分信息丢失不会影响整个系统的安全性。即硬件设备、加密算法或全部密文与部分明文这些信息的丢失不会危及
6、整个系统的安全。(3) 与计算机、通信系统匹配原则。要求密码系统不是独立存在的,而可以在计算机或通信系统中使用。密码体制发展到现在,已经有了很多种不同的类型。但是从密码体制所使用算法的分类上说,可以分为两种。一种是利用了对称算法,又称作传统密码算法;另一种则是利用了公开密钥算法。对称算法是指加密密钥和解密密钥能够互相推算出来,公开了一个也就相当于公开另一方。因此对称算法的密钥只能由发送者和接收者两方知道,他们必须事先商定好密钥,这一点就涉及了密钥交换协议。公开密钥算法是指公开了加密算法以后不会泄露解密算法,因此和对称算法相比,任何人都可以通过公开渠道(网络或密钥管理中心)已知他人的加密密钥,把
7、明文加密以后传送给接收者,而只有拥有解密密钥的人才能够对密文解密。这在密钥管理和消息的传送方面更具有优势。另外,公开密钥算法还可以运用在数字签名中。在目前应用于实际生活比较广泛的公钥加密算法包含有RSA密码体制和椭圆曲线密码体制。RSA密码体制:1979年,Shamir Rivest 和Adelman提出了第一个也是应用最广的公钥密码体制,即RSA体制。经过20多年的密码分析和攻击,迄今为止,RSA被证明仍是安全的。设n=pq,p和q是两个大素数,a和b是两个整数,定义密钥空间为。把n,b作为公开密钥,而p,q,a,作为秘密密钥。整个加密算法就是y=,而解密算法是,由Euler定理知道,成立,
8、上述解密的方法正确。由于RSA加密算法是指数运算,因此当密钥越大时,计算速度越慢。RSA算法比通常的DES算法慢了1500倍。并且RSA的计算量很大,为了要达到较高的安全程度,RSA的密钥位数比其它的密码体制大的多,现在一般需要1024位的密钥。所以一般对速度要求较高的数字签名或智能卡中的身份验证不太使用RSA密码体制,而采用其它较快的算法。椭圆曲线密码系统就是其中的一种。椭圆曲线密码系统:椭圆曲线密码体制和RSA体制比较起来,所需要的密钥量小,安全程度高,比如RSA密码体制需要1024-bit的密钥才能达到的安全程度,利用椭圆曲线只需要160比特位的密钥就能够保证同样的安全(文献),密钥长度
9、的减少同时带来了计算速度的提高。即使是在剩余类环运用离散对数而构造的加密系统的安全程度也要低于椭圆曲线 ,因此椭圆曲线系统不愧为一个性质较好的密码系统。椭圆曲线第一次运用于公钥密码算法是在1985年Neal Koblitz和V.S.Miller提出来的。他们并没有提出新的算法,只是把椭圆曲线运用到已存在的公钥密码算法中,比如说ElGamal加密算法。利用ElGamal思想构造的椭圆曲线密码体制如下显示: 首先是产生密钥阶段。Bob从中随机选取充分大的整数,随后计算出椭圆曲线上的点P=(是椭圆曲线上的适当的一点),将保密,作为秘密密钥,并将P公开,作为公钥。 加密方法如下:如果Alice想把消息
10、M(同样是椭圆曲线上的一点)发送给Bob,就从中随机选择整数后,计算出和的值,加密以后的信息就是椭圆曲线上两点。解密:Bob收到加密信息后,通过密钥就可以计算M=-得到消息M。纵观上面提出的两个公钥密码体制,再加上其它的密码系统,在加密的时候都采用了单向函数的思想。单向函数是指函数满足从x计算容易,但从计算x有可能不可行。单向函数的构造依赖于计算复杂度理论,即利用一些困难问题。上述两个系统的安全性都依赖于一些数论中的基本困难问题。比如说RSA体制利用了把大整数n分解为两个大素数的难度,而椭圆曲线是利用了求解离散对数问题的困难程度,(即根据P=和Q求解中整数)。这些密码体制都是很成功的,在实际中
11、也有了进一步的应用。对于本文来说,我们的主要目的是把组合群论的思想引进到密码学中,所以利用了组合群论中的一些困难问题,如字问题,共轭问题等等,由此构造出新的密码体制。协议(protocol)是指一系列的步骤,它包括两方或者多方,设计它的目的是要完成一项任务。密钥交换协议(key exchange protocol)是指两人或多人之间通过一个协议取得密钥并用于进一步的加密算法中的方法。在实际的密码世界中密钥交换其实是很重要的一个环节。比如说利用对称加密算法,如果双方没有约定好密钥,就必须再进行密钥交换。但是如何使得密钥到达接收者和发送者手里是件很复杂的事情。最早利用公钥密码思想提出的密钥交换协议
12、有Difffie-Hellman算法。新的密钥交换协议有利用组合群论中的辫群构造的两个协议,Anshel-Anshel-Goldfeld协议和Ko-Lee-Cheon协议。第二节 电子支付系统的安全性电子商务作为新兴事务,已经随着计算机和网络技术的成熟得到了飞速发展,而且使得商家的整体经营方式都有了变化。电子商务是以数字化的电子方式,以网络为媒体进行的商业数据交换或其他商业活动。电子商务的一个重要组成部分就是电子支付系统。电子支付是指交易的各方是通过电子手段,比如说银行的电子存款系统和电子清算系统来记录和转移资金的方式。一个安全、可靠的电子支付系统是电子商务的交易活动能够正常进行的保证。目前I
13、NTERNET上的电子支付系统主要有四种:信用卡、IC卡、电子现金(e-Cash)和电子支票(e-Check)。一般来说,电子支付系统必须满足以下的安全性要求,包括有消息的保密性、能够确认双方都具有合法的交易身份的能力、保证交易完毕以后的信息是无法修改的和交易以后各方对业务的不可否认性。作为电子支付系统的不同代表,电子现金和电子支票虽然有一定的共性,但在安全性要求和性质方面有着各自独特的特点。电子支票和纸张支票转移支付的原理类似,是利用数字传递将钱款从一个账户转移到另一个账户的电子付款方式。在电子支票实现的过程中,它的安全性问题是,如何保证银行、用户、商场对电子支票进行签名的有效性。由于转账在
14、银行、用户和商场三方进行,在每一次交易完成以后都必须对消息签名,用来保证交易信息的真实、完整和不可否认。所以在交易过程中将会涉及到数字多签名。在本文中,我们最后讨论了一种利用辫群构造的多签名体制,可以把上述多签名运用到电子支票转账系统中去。电子现金是一种以数据形式流行的货币,因此和支票相比,电子现金更强调满足隐私性和可分割性,另外,虽然要保证用户的隐私权,电子现金出于安全性的考虑,还需要满足电子现金的不可伪造性和不可重用性。如果同一份电子现金被使用两次,使用者的身份就可以被发现。关于电子现金,现在最主要讨论的是它的可分性的实现。 第二章 组合群论和密码学 第一节 基础知识和背景自从1984年N
15、.R.Wager和M.R.Magyarik在中提出了第一个用组合群论的理论构造公钥密码体制的方法以来,在密码学家们的共同努力下,利用组合群论的理论已经提出多个公钥密码体制和密钥交换协议。由于组合群论中的数学工具和以前数论中的内容截然不同,有必要对组合群论中的一些定义和定理加以说明,从而可运用到密码学中去,得到不同的加密算法。群G称作是有限生成的(finitely generated),如果G存在有限个生成元,满足G中任意一个元素(又称为字)都可以表示成生成元和它们的逆的有限乘积。群G称作是可以有限表示的(finitely represented),如果在G中有有限个元素,满足在群G中,其中e是
16、单位元,那么,称为G的生成元的一组定义关系,。换一种角度,如果把群G看成是n个元素生成的自由群的商群,即存在的正规子群,使得成立,那么G是可以有限表示的意思是:如果,对应F(X)中的元素,那么是F(X)的正规子群N的生成元。可以有限表示的群G可表示为:G= ;辫群是一种有限表示的群,的生成元是,它的生成关系满足:,时;当时。因此,辫群可以表示为:=。组合群论中有些基本问题相对于某个特定的群是困难问题,可以作为构造公钥密码体制的基础,例如第一个公钥密码体制Wag84就是根据不可解的字问题所构造的,而随后的Anshel93等主要运用了组合群论中的共轭问题。字问题(word problem):是否存
17、在一个算法来判断群G中的元素是不是单位元。一个问题是算法上可解的(algorithmically solvable)是指存在一组计算机程序,通过计算,对该问题的结果是“是”或“否”做出明确的回答。如果不存在这样的程序,就称这个问题是算法上不可解的(algorithmically unsolvable)。关于字问题对于某些群是否是算法上不可解的,Novikov-Boone定理(见)对此做出了肯定的回答,定理中利用了有限表示的群,这也是用字问题作为困难问题构造加密算法的基础。Novikov-Boone定理:存在有限表示的群G有着算法上不可解的字问题,并且存在有效的算法B,如果输入有限表示的一个系统
18、T,且该系统有着不可解的字问题,通过算法B将会输出有限表示的群B(T),使得B(T)有着算法上不可解的字问题。第一次提出利用组合群论的思想来构造的Wag84密码体制就利用了Novikov-Boone定理。共轭问题(conjugacy problem):是否存在算法来判断群G中给定的任意两个元素是共轭元素。所谓两个元素x,y共轭是指,存在G中元素w,使得成立。关于组合群论中是否存在群有着算法上不可解的共轭问题,同样可由一个定理加以保证。在该定理中,所涉及的群是剩余有限群。一个群G被称为是剩余有限的(residually finite),如果给定了群中任意一个元素,g,都存在G的正规子群,使得g不
19、是中的元素。运用剩余有限的群,Miller证明了具有算法上不可解共轭问题的群的存在性,这就是Miller定理:Miller定理:存在有限表示且剩余有限的群,其共轭问题是算法上不可解的。并且存在快速算法C使得输入一个有限表示的群G(G的字问题不可解)后会输出有限表现且剩余有限的群C(G),C(G)有着不可解的共轭问题。Miller定理是1993年Iris Lee Anshel 和Michael Anshel 提出的基于不可解的共轭问题而构造的公钥加密体制的理论基础。辫群在组合群论应用于密码学中扮演了重要的角色。在1999年I.Anshel,M.Anshel和D.Goldfeld 提出的密钥交换协
20、议和2000年Hyoung.Ko,Sang Jin Lee和Jung Hee Cheon提出的密钥交换协议和加密算法中,他们都利用了辫群的共轭问题,这是因为辫群的一些重要性质可以很好的利用到密码体制中去。 辫群的定义在前面已经提到过了,但是辫群除了可以用有限生成元表示出来以外,还有着其独特的几何意义。辫群中每一个元素都对应了两条平行直线间的n股线,每一股线的两个端点开始于上面的平行直线,并中止于下端对应平行直线。下面的两幅图对应于中的生成元和。如图一对应于,图二对应于。辫群中的两个元素a,b相乘在几何上对应了把两个辫群的图像拼接起来。另外,中两个元素相等从几何上来说,是指a,b两个元素对应的图
21、案能够在三维空间中从一个图像连续的变动到另一个。根据文献,辫群有一些性质特别适合密码学的要求,用来构造公钥密码体制。辫群的元素可以通过标准形式(canonical form)来统一表示,即由p+1个参量表示,u是整数,代表了一个n阶置换,该表示是唯一的。辫群内元素的乘法和求逆都存在快速算法,可以用计算机编程计算。并且辫群中有很多的困难问题可以作为构造密码体制和密码交换协议的基础,比如说辫群的共轭问题就是困难问题。 第二节: 密码体制和密钥交换协议2.2.1 Wag84公钥密码体制1984年N.R.Waner 和M.R.Magyarik利用了有限表示群的不可解的字问题,构造了第一个以组合群论思想
22、为基础的公钥密码体制。由前面的Novikov-Boone定理可知,存在群满足不可解的字问题,这是Wag84公钥密码体制成立的基础。下面是整个加密算法:取G是有限表示的群,有着不可解的字问题,G可以表示为:利用一个秘密同态函数 A可以是大的有限群或者是有限表示的群,它的字问题有着快速的解法。在群G中取两个字和,使得这两个字满足。把群G,和公开,作为公钥,而把同态函数保密,作为秘密密钥。加密算法很简单,只要将消息M写成二进制数的形式以后,每个0-bit位由随机选择的代替,只要满足(意思是指和是G中同一个元素的不同表现形式)。同理,1-bit位用代替,。这样的话,消息M中的每个比特位都有G中的元素来
23、表示,从密文中任取G的一个元素z,由于G有着不可解的字问题,即无法利用算法判断和中哪一个是单位元素,因此,加密是成功的。解密时需要运用解密密钥h,在密文中取元素z,只要h(z)=h(),说明z代表的比特位是0,反之是1。因为在A中字问题是可解的,上面的结果可以判断,因此消息被解密。对于以上的利用组合群论所构造加密算法的讨论:首先它需要找一个合适的具有不可解的字问题的群,要使加密算法适合实用,必须使群里的元素应该在群中有唯一的标准表示,通过计算机很容易进行存储和计算。即使是这样,原文中一个比特位的0或者1经过转化成密文以后,需要用群的一个元素来表示。而群中元素在计算机的传输和存储的方面,所需要的
24、存储量远远大过比特位。并且在密文处理方面有很多的不方便的地方,比如说如何选择和Y0或者Y1等价元素,有没有快速算法等等,这些缺点都降低了效率,所以总的来说,这只是一个不太成熟,不能实用的方案,但毕竟,它在把组合群论利用到密码学中开创了新的一步。2.2.2Anshel93密码体制接下来由文献,在1993年,M.Anshel 和I.Anshel继续了利用组合群论中的问题提出了另一个新的加密算法,与前一个有所不同的是,这次他们所采用的群是有限生成的群,群中元素具有不可解的共轭问题,并且群是剩余有限群。在他们所提出的方案中,需要用到前面提到的Miller定理作为保障。G中任意的一个元素g,存在从G到有
25、限群的一个同态,满足。任取G 中一个元素,存在G的正规子群,使得不是中的元素,在群G中,记z为单位元素,由于G是剩余有限的,存在一个有限群,可考虑同态H:GG/,因为不属于,由此,由于和不是共轭元素,而同态运算保持共轭性质不变,和z也不是共轭元素。把同态运算H保密,并假设在商群中,求解共轭问题和字问题在算法上是多项式内实现的。在加密问题上Anshel所采用的方法与前文类似,那就是把1用任一与z共轭的元素代替,把0用与共轭的任一元素代替,用这个方法,可随机地把明文中的二进制数字转化成密文中组合群中的元素,而通过保密的同态加以解密,最终得到原文。wag84和Ansh 93从设计的思想上来说,是基本
26、上类似的,它们都是设法利用组合论中有特定性质的群,即有着不可解的字问题或是共轭问题,以群中两类不同的元素分别代表0和1两个数字,同时均将一个同态映射做密钥保存,只要知道了所选用的群和两个代表0和1的群元素就可以对消息进行加密,作为密钥的同态运算所对应的群的字问题和共轭问题则是可解的。它们的差别是wag84所选用的群是以字问题做为困难问题,而Ansh93是把共轭问题做为困难问题,两者的区别是群选择的不同。2.2.3Anshel-Anshel-Goldfeld密钥交换协议1999年的时候,不同于以上的几个公钥密码系统,在组合群论的基础上,I.Anshel,M Anshel和D Goldfeld提出
27、了一个新的密钥交换协议(见和),该协议中所采用的群是辫群,具有不可解的共轭问题,但是辫群的字问题可以在多项式时间内解决。在协议中,Anshel99利用换位子的思想,XYX-1Y-1,其中X,Y均为辨群中的元素,其中XYX-1Y-1可以看成是Y的共轭元素和Y-1相乘得到,或者可以看成是X和X-1的共轭元素相乘得到的,具体的密钥交换步骤如下:两方Alice 和Bob分别公布字a(1),a(2),a(n);b(1),b(2),b(m)。这些字均从群G=S|D得到,其中S是生成元,D是定义关系。Alice和Bob之间的密钥由它的共同的行为产生,Alice和Bob同时执行以下的步骤,一起产生秘密密钥:1
28、、Alice首先进行如下运算,Alice选择一个群G中的由a(1),a(2),a(n)生成的秘密的字X,对每一个b(i)进行共轭运算,产生m个新字c(1),c(2),c (m),c (i)=X b(i)X-1。2、Alice对每一个进行改写,写成B(i)的形式,B(i)和 是G中同一个元素的不同表示,i=1,m。B(i)能够完全掩盖住中有关X的秘密信息。由于B(i)和b(i)是关于X的共轭元素,但不能从B(i)中推断出X是什么(G有着不可解的共轭问题),X是不可知的。3、Alice通过公开的渠道把B(1),B(2),B(m)传送给Bob。在Alice进行计算的同时,Bob进行类似的计算。1、B
29、ob从b(1),b(2),b(m)生成的G的子群中,选择一个秘密的元素Y,用每个a(i)进行共轭等。产生d(1),d(2)d(n),d(i)=Ya(i)Y-1。2、对每个d(i)进行改写,写成A(i)的形式,使得A(i)和d(i)表示相同的元素。3、Bob把A(1),A(2),A(n)传送给Alice。第三步,Alice和 Bob可根据所得的结果分别计算出换位子(X,Y)=XYX-1Y-1。因为,Alice可以从V=X(YXY-1)-1=Xx(A(1)),A(n))-1中计算,如果X=x(a(1),a(n))。并且Bob也可以计算换位子W=(XYX-1)Y-1=y(B(1),B(2),B(m)
30、)Y-1,如果Y=y(b(1),b(n)。X由a(1),a(2),a(n)生成,仅为Alice所知,而A(1),A(2),A(n)是a(1),a(2),a(n)关于Y 的共轭元素,通过类似的计算,Alice可以知道YXY-1,Bob也是可以由秘密的Y以及Alice传送给它的B(1),B(2),B(m)来得到XYX-1,但是对于Alice所掌握的字X一无所知,当Alice和Bob经过计算出V和W以后,V和W是同一个字的不同表现形式,从字V和W得到Alice和Bob的共同的密钥有两个方法,第一个是辫群G中的每个元素都有且仅有一种唯一的特殊表现形式,称作经典形式,那么把V 和W都写成经典形式之后,这
31、时它们的标准形式是相同的,然后可以定义从辫群的标准形式到二进制数的单向函数H,从而使密钥K=H(V)=H(),第二个方法是把G作为群作用在某个集合S上,并且满足E(S)=SG1(G2(S)=(G1G2)(S),(G1 、G2属于G,E是G的单位元),且G 内不同的字作用到S上的元素S所得的值也是不同的。在这种条件下,密钥K=V(S)=W(S)也同样可以得到。对Anshel-Anshel-Goldfeld密钥交换协议的分析:首先我们不知道,上述的密钥交换协议的安全性是否以辫群共轭问题的难解程度为基础的,但是,实际上已知XYX-1和Y 求解X的问题和已知XB(1)X-1,XB(2)X-1,XB(M
32、)X-1和B(1),B(2),B(M)的值来求解X的困难程度是不一样的,显然后一个问题比前面的问题要容易的多,后一个问题所面临的困难问题是不同于标准形式的共轭问题,我们可以把它称之为新的共轭问题(MSCSP),应该说这个也是从算法上来说不可解的。另一点是Anshel-Anshel-Goldfeld密钥交换协议所利用的辫群中密钥的共轭运算的同态性质;即XA(1)X-1XA(2)X-1=XA(1)A(2)X-1,以及(XYX-1)-1=XY-1X-1但是在Alice和Bob对X,Y进行改写,并使得从XB(1)X-1,XB(M)X-1或YA(1)Y-1,YA(N)Y-1中不能得出X,Y的值的时候,通
33、过改写,即把上述这些辫群里的元素写成标准形式时,并不能够保证所有的标准形式能完全掩盖住秘密信息。但是只要有一个元素泄露出X或者Y的值,那么密钥就可以被破解,所以X(B1)X-1,XB(M)X-1和YA(1)Y-1,YA(N)Y-1中的秘密信息必须完全被改写掉。2.2.4Ko-Lee-Cheon密钥交换协议和公钥密码体制从上述的密钥交换协议可以看出,上述的协议的主要思想是利用组合群论中的一般理论,关于换位子的思想适用于任何一个群,只是在具体的实现方法上,才使用了辫群,因为辫群在实现过程中,有一些较好的优点。比如有唯一的标准形式,并且它的字问题有着快速算法,而共轭问题是困难问题等等。应该可以看出,
34、任何具有类似性质的群都可以做为构造Anshel-Anshel-Goldfeld密钥交换协议的群。下面所提到的Ko-Lee-Cheon密钥交换协议则是更立足于辫群本身的性质(文献),因此在讨论密钥交换协议的时候,对于密钥交换协议的安全性分析将更加成熟一点,并且能够相对比较实用。韩国学者Hyoung Ko,Sang Jin Lee和Jung Hee Cheon提出,在辫群中有一些问题属于困难问题,其中能够适用于构造密钥体制的有以下一些:假设是由,生成,由,生成,mn,那么,辫群可以看成是的子群,那么有以下几个问题是困难问题:1、普通的寻找共轭元素问题(GCSP)元素(X,Y),并且Y=BXB-1,
35、其中,B,mn问题:寻找A使行Y=AXA-1成立,2、共轭元素分解问题(QCDP)(X,Y) ,满足Y=BXB-1,B,mn问题:寻找,满足。3、寻找P次根问题,(X,Y),满足Y=XP,X,问题:寻找Z,满足,Y=ZP。在上述几个问题的基础上,Hyoung Ko等提出了密钥交换协议,上述协议所利用的是第一个困难问题,在中取两个群,和,是由,生成,而由,生成,由于辫群的生成元满足条件,因此对于任意的A,B,都能满足AB=BA。所以辫群中的子群和 之间的任意两个元素具有交换性,这是能否满足密钥系统的关键。密钥交换协议的具体实现如下:1、首先选择充分大并且较合适的两个整数(L,R)以及辫群,和。在
36、中选择一个比较合适的元素X,并将X公开。2、密钥交换者Alice和Bob分别执行以下步骤:(A)Alice从中任意选择一个秘密元素A,把Y1 =AXA-1,传送给Bob。(B)Bob从中选择一个元素B,并将,Y2=BXB-1传送给Alice,(C)Alice收到Y以后,计算K=AY2A-1(D)Bob收到X以后 ,计算K=BY1B-1。由于,AB是交换的,即AB=BA,所以,A-1B-1=B-1A-1并且,AY2A-1=A(BXB-1)A-1=B(AXB-1)B-1=BY1B-1,因此Alice和Bob两人得到的密钥是相同的。值得注意的是,在密钥交换协议中利用的困难问题和普通的寻找共轭元素问题
37、(GCSP)不完全是等价的,但是两者之间有紧密的关系。关于这一点,有点类似于Diffie-Hellman的密钥交换协议,因为Diffie-Hellman协议中就是由已知GX和Y 以及GX,X中分别得到GXY,但是这个问题可以归结为求解离散对数的问题。在辫群的协议中,也是类似的。窃听者即使能够知道AXA-1,B和BXB-1和A但要计算ABXA-1B-1,还是会归结为求解共轭元素的问题。虽然Anshel99也是利用了辫群的共轭算法,但在这一点上和韩国学者提出是的不一样的。 与密钥交换协议非常相似,Hyoung Ko等同时利用辫群可以构造一个新的公钥密码体制。运用到的方法和上面基本一致,只是需要增加
38、一个散列函数。首先定义一个从辫群元素到二进制数字的单向散列函数H: 0,1K1、产生公钥及私钥阶段。(A) 从中选择一个适当的,由,生成的X。(B) 取中元素A,(C)设Y=AXA-1是X关于A的共轭,把Y 公开,当做公钥,并且使A保密,当作私钥。2、加密运算:如给定明文M 0,1K和(X、Y)以后,(A)任意从中选择元素B(B)加密以后的密文是(C,D),C=BXB-1和D=H(BYB-1)M3、解密通过计算M=H(ACA-1)D可得,上面这个步骤的原因是因为ACA-1=ABXB-1A-1=(BA)XA-1B-1=BYB-1,因此,H(ACA-1)D=H(BYB-1)H(BYB-1)M=M。
39、代表了异或运算。这个新的加密算法和密钥交换协议的理论基础相同,并且比较实用。第三章 组合群论在电子支票的多签名体制中的应用 第一节 三方密钥交换协议考虑将两方的密钥交换协议推广到三方或者更多的人中去,就必须利用协议本身的性质。关于Anshel-Anshel-Goldfeld密钥交换协议,因为协议中利用了换位子,很难推广到多方中去。但是Ko-Lee-Cheon协议采用了Diffie-Hellman算法的思想,因此可以稍做修改,使参加协议的人增加到三人或者多人。下面就是具体的三方协议。首先可在辫群中取三个子群,和,由,,生成,由,生成,由,生成,其中l,k,r满足条件:l+r+k=n。利用辫群中生
40、成元的性质可知,任意,都满足:,这就是说,群,和中任意元素都是可以交换的。和两方协议类似,Alice,Bob和Carol执行以下的步骤:(1)Alice ,Bob和Carol共同选择一个恰当的辫元,。(2)Alice从中随机选择辨元,把发送给Bob。(3)Bob从中任意选择辫元,把发送给Carol。(4)Carol从中任意选择,把发送给Alice。(5)Alice把发送给Bob。(6)Bob把发送给Carol。(7)Carol把发送给Alice。(8)Alice计算密钥。(9)Bob计算密钥。(10)Carol计算密钥。由于,三个元素有交换性,因此有以下等式成立:;和 ;可知为Alice,Bo
41、b,Carol三方的共同密钥。因为这个三方协议和Diffie-Hellman协议类似,由Diffie-Hellman协议的安全性可知,上述协议是安全的,它的困难程度基于在辫群中破解共轭问题的难度。另外,出于安全性的考虑,由文献7中对满足条件的辫元所加的限制条件可知在上述协议中, 不能取成的类型,其中,而z是中能够和,和中元素都交换的辫元。因为如果=,密钥k满足条件: k= = 。又因为,通过公开传输的,和就可以计算得到,从而计算出密钥。因此,应该选择适当的x满足安全性的要求。不过有一点比较有利的是,同样是在文献7中对x的讨论中,上述x 出现的概率非常小,一般不用多做考虑。 第二节 基于辫群的多
42、签名体制方案3.2.1多签名介绍利用公开密钥算法对一段消息进行数字签名,这是签名方案中最常用的一种方法,它在理论上发展的已经比较完善,在实际应用中也有成熟的体制。比如说由RSA加密算法转化而成的数字签名、ElGamal签名方案、Schnorr签名算法、经过改进的Fiat-Shamir签名方案以及Guillon-Quisquater数字签名方案等等。这些数字签名的安全性或是建立在大整数分解的难度上,或是建立在计算离散对数的难度上,或是利用其他数论中的困难问题。不过这些方案都有一个特点,这些数字签名只是单个人对一份文件的签名,很少有签名方案可以拓展到多个人对同一份文件的签名上去。即使有,也只是简单
43、的通过单签名加以迭代而得到的。但是由于实际应用的需要,对签名人数提出了更高的要求。现在需要一种新的签名方案,可以使多个人对同一份文件进行签名,这就是多签名。多签名有着广泛的应用,比如说一份文件必须有多个人签署才能执行,缺乏了其中任意一人的同意就不可以;或者是电子支票在银行、客户、商店之间转账时,银行、客户、商店为了使转账过程得以纪录,在每次交易时对同一份文件支票进行数字签名,也需要利用多签名的技术。这些应用使得数字多签名方案的发展成为一种必然。为了满足着一要求,密码学家利用数学理论也构造了一系列多签名方案,其中比较实用且计算速度较快的是日本学者Eikoh Chida,Tako Nishizek
44、i等基于单向环同态所构造的多签名方案。在本文中,除了介绍他们的多签名体制以外,我们还考虑利用辫群中的困难问题对基于单向环同态而构造的多签名方案进行改进,提出把组合群论思想和多签名方案结合起来,提出一个新的多签名方案。数字多签名的安全性要求:多签名方案由于签名过程涉及了多个人,并且签名完成以后要求能检验所有人对同一消息的签名,所以在安全性方面比一般的数字签名有着更高的安全性要求。首先要求多签名能够抵抗外部攻击,3.2.2基于单向环同态的多签名体制在文献中,Eikoh Chida,Tako Nishzeki等首先提出了问题:在代数结构中除了群中存在单向群同态函数(即函数既是单向函数,也满足群中的同
45、态运算)以外是否还有其它的单向函数同态,比如在环,幺半群中等。实际上,以前所构造的RSA加密算法、离散对数算法都是利用了基于单向群同态的单向陷门函数。而环同态对于这个问题的肯定回答,他们是构造了一个单向环同态来实现的。如果A是交换环R(A,+,),U是在加法+下的A-模,对于任意A和U,直和AU内的元素和,可定义AU中的加法:(AU)(AU)AU和乘法*:(AU)(AU)AU如下:=;*=;可以证明所得的(AU,*)是交换环。利用这个交换环,Eikoh Chida等有进一步证明了单向环同态的存在性,这可以表述为下面这个定理:定理:U,V都是有限交换群,=n,如果U和V内二进制运算是多项式内可计
46、算的,如果存在单向群同态函数:UV,那么存在单向环同态F: 。(F的定义是:F()=()。)为了构造适当的多签名体制,文献中利用了上的同态函数::,g是的生成元,这个函数是单向的。运用上面的定理,可以得到单向环同态函数:F: ,。关于文献中有根据上述函数而构造的多签名体制,在此不再详述。3.2.3基于辫群的多签名体制 如果要把辫群应用到构造单向环同态中,就必须考虑辫群的很多基本性质和上述单向群同态中对群的要求不完全相同,因此,必须对直和AU和AV的一些定义加以修改,以满足单向函数的要求,不过用辫群Bn很难满足单向函数同时又是环同态,所以经修改后的多签名体制和文献中的有所不同。首先,辫群Bn是无限群,不是有限的。对于这一点,可以把环Zn改成环Z,把直和改成。另外一点限制是,AU中的U是交换群,这是AU是交换环的定义中对U的基本要求,但是辫群Bn不是交换群。因此,利用辫群不一定能够构造出单向环同态,不过根据辫群的性质,辫群还是可以用来构造多签名体制。注意在文献中提到了辫群的一个困难问题:,寻找满足条件的x。利用上述困难问题构造单向函数,(p是固定的正整数),如果中元素x, y满足条件,根据前文Eikoh Chida等证明的定义和定理,则在直和中定义函数F: 为,F(,)也是单向函数,并且,同时满足加