第20章 应用密码学-RSA算法及安全性分析
- 格式:ppt
- 大小:110.50 KB
- 文档页数:16
RSA加密算法的原理和应用在当今信息时代,数据安全问题日益严峻,各种加密算法应运而生。
其中,RSA加密算法是一种常用的非对称加密算法,被广泛应用于网络通信、电子支付等领域。
本文将从原理和应用两方面,深入探究RSA加密算法。
一、RSA加密算法的原理RSA加密算法是一种基于大数因数分解的加密方法,其核心在于利用大素数相乘很容易,但是将结果分解质因数却很困难的数学特性。
其加密过程可以简单概括如下:1. 选择两个大质数p和q,计算其积n=pq,记作公钥n;2. 求出欧拉函数φ(n)=(p-1)(q-1);3. 选择一个大于1且小于φ(n)的整数e,使得e与φ(n)互质,称e为公钥的指数;4. 利用e和n计算出公钥e(n)=(n,e);5. 求出私钥d,满足ed≡1(mod φ(n)),即d为e关于φ(n)的乘法逆元,私钥为d(n);6. 利用私钥d对明文进行加密:将明文m转化为一个整数M,计算C≡M^d (mod n),得到密文C;7. 利用公钥(e,n)对密文进行解密:计算M≡C^e (mod n),得到原文M。
二、RSA加密算法的应用RSA加密算法在网络通信、电子支付、数字证书等领域都有广泛的应用:1. 网络通信领域:RSA加密算法被广泛应用于SSL/TLS等安全协议,用于确保网站与浏览器之间的通信安全;2. 电子支付领域:RSA加密算法在电子支付中被广泛使用,用于保障交易数据的安全性,防止数据被窃取;3. 数字证书领域:RSA加密算法可以用于数字证书的签发、验证和撤销,在网络安全领域具有重要的作用。
三、RSA加密算法的安全性RSA加密算法近年来也受到一些攻击,例如对其安全性产生挑战的著名攻击就是RSA算法中的莫尔根斯谷–维纳攻击(MVG攻击)。
该攻击利用了数学算法以及硬件上的漏洞来推算出RSA加密算法中的私钥,从而破解密文。
为了强化RSA加密算法的安全性,通常使用更长的密钥长度以及结合其他加密算法或者加密协议来加强安全性。
RSA算法描述范文RSA(Rivest-Shamir-Adleman)是一种非对称加密算法,由美国麻省理工学院的三位科学家Rivest、Shamir和Adleman于1978年提出。
RSA算法是目前应用最广泛的公钥加密算法之一,被广泛应用于数据传输、数字签名、电子支付等领域。
RSA算法基于两个相对质数的乘积难解问题,其核心思想是利用数论的特性,通过大数质因数分解的困难性来实现加密和解密的过程。
RSA算法的安全性基于一个重要的数论事实:两个大质数相乘容易,但是已知其乘积后,要分解出这两个质数则非常困难。
因此,RSA算法的安全性取决于质因数分解的困难性。
首先,密钥生成。
RSA算法使用一对密钥,包括公钥和私钥。
公钥用于加密数据,私钥用于解密数据。
密钥生成的过程如下:1.随机选择两个不同的质数p和q,计算n=p*q。
n称为模数,为公钥私钥生成的基础。
2. 计算欧拉函数phi(n)=(p-1)*(q-1)。
3. 选择一个整数e,1<e<phi(n),且e和phi(n)互质。
e称为加密指数,即公钥。
4. 计算一个整数d,满足d*e ≡ 1 (mod phi(n))。
d称为解密指数,即私钥。
其次,加密和解密。
加密和解密的过程如下:1. 加密:将明文M转换为整数m,满足0≤m<n。
加密的密文C计算公式为:C = m^e mod n。
2. 解密:将密文C转换为整数c,满足0≤c<n。
解密的明文M计算公式为:M = c^d mod n。
通过上述过程,实现了对明文的加密和对密文的解密。
由于d是通过e和phi(n)计算得到的,只有知道p和q的值,才能计算出私钥d。
而质因数分解是一个非常复杂的问题,目前没有高效的算法可以在合理时间内分解出大数的质因数,因此保证了RSA算法的安全性。
1.强大的安全性:RSA算法的安全性基于质因数分解的困难性,目前尚未有高效的算法能够有效地分解大数的质因数。
2.非对称加密:RSA算法使用非对称加密,即加密和解密使用的是不同的密钥。
RSA公钥加密算法及其安全性讨论RSA algorithm for public-key encryption and its security摘要:RSA是目前最有影响力的公钥加密算法,它能够抵抗到目前为止已知的所有密码攻击,已被ISO推荐为公钥数据加密标准。
RSA算法基于一个十分简单的数论事实:将两个大素数相乘十分容易,但那时想要对其乘积进行因式分解却极其困难,因此可以将乘积公开作为加密密钥。
但是,RSA的安全性依赖于大数的因子分解,却并没有从理论上证明破译RSA的难度与大数分解难度等价,即RSA的重大缺陷是无法从理论上把握它的保密性能到底如何。
随着计算能力的不断进步和各种攻击方法的出现,RSA算法是否真的安全。
关键词:RSA,公钥,加密,大数分解,攻击,安全性1 RSA加密算法1.1公钥简介密码体制按密钥类型分为对称密钥和不对称密钥。
对称密钥即加密、解密用的是同一个密钥,又称为私钥。
不对称密钥即公钥加密,加密、解密用的是不同的密钥,一个密钥“公开”,即公钥,另一个自己秘密持有,即私钥,加密方用公钥加密,只有用私钥才能解密——史称公钥加密体系:PKI。
1.2 RSA算法简介RSA加密算法是一种非对称加密算法。
RSA加密算法是Ron Rivest、Adi Shamirh和Len Adleman于1977年在美国麻省理工学院开发出来的,次年首次对外公开宣布,是第一个既能用于数据加密也能用于数字签名的算法。
RSA就是他们三人姓氏开头字母拼在一起组成的。
RSA是建立在“大整数的素因子分解是困难问题”基础上的,其安全性取决于大数分解,也就是大数分解质因数的困难性。
换言之,对一极大整数做因式分解愈困难,RSA演算法愈可靠。
假如有人找到一种快速因式分解的演算法的话,那么用RSA加密的信息的可靠性肯定会急剧下降,但找到这样的演算法的可能性是非常小的,今天只有短的RSA钥匙才可能被强力方式解破。
到2008年为止,世界上还没有任何可靠的攻击RSA算法的方式。
信息安全论文——RSA加密算法介绍及实现XXXXX信息安全xx论文RSA加密算法实现Administrator学号:xxxxxxxxxxRSA加密算法介绍及实现一、实验原理RSA公钥加密算法是1977年由Ron Rivest、Adi Shamirh和Len Adleman 在(美国麻省理工学院)开发的。
RSA取名来自开发他们三者的名字。
RSA是目前最有影响力的公钥加密算法,它能够抵抗到目前为止已知的所有密码攻击,已被ISO推荐为公钥数据加密标准。
RSA算法基于一个十分简单的数论事实:将两个大素数相乘十分容易,但那时想要对其乘积进行因式分解却极其困难,因此可以将乘积公开作为加密密钥。
RSA算法是一种非对称密码算法,所谓非对称,就是指该算法需要一对密钥,使用其中一个加密,则需要用另一个才能解密。
RSA的算法涉及三个参数,n、e1、e2。
其中,n是两个大质数p、q的积,n的二进制表示时所占用的位数,就是所谓的密钥长度。
e1和e2是一对相关的值,e1可以任意取,但要求e1与(p-1)*(q-1)互质;再选择e2,要求(e2*e1)mod((p-1)*(q-1))=1。
(n及e1),(n及e2)就是密钥对。
RSA加解密的算法完全相同,设A为明文,B为密文,则:A=B^e1 mod n;B=A^e2 mod n;e1和e2可以互换使用,即:A=B^e2 mod n;B=A^e1 mod n。
二、RSA 的安全性RSA的安全性依赖于大数分解,但是否等同于大数分解一直未能得到理论上的证明,因为没有证明破解 RSA就一定需要作大数分解。
假设存在一种无须分解大数的算法,那它肯定可以修改成为大数分解算法。
目前, RSA 的一些变种算法已被证明等价于大数分解。
不管怎样,分解n是最显然的攻击方法。
现在,人们已能分解多个十进制位的大素数。
因此,模数n 必须选大一些,因具体适用情况而定。
三、本程序实现的功能本程序的功能比较简单,基于C++语言实现RSA的算法,实现英文字母的加密以及解密。
浅析RSA算法的安全性1 RSA 公钥密码算法简介1978年美国麻省理工学院(MIT)的研究小组成员李维斯特(R.L.Rives)、沙米尔(A.Shamir)和艾德勒曼(L.Adelman)在杂志IEEE上发表论文,提出了一种以幂模函数为密码算法的公钥体制,通称RSA公钥密码体制。
它是一种比较典型的公开密钥加密算法,也是迄今为止理论上最为成熟和完善的一种公钥密码体制。
普遍认为是一个比较理想的公钥体制,到目前为止,仍不失为最有希望的一种公钥密码体制。
1.1 RSA 公钥密码算法的数学基础同大多数公钥密码体制一样,RSA的安全性主要取决于构造其加密算法的数学函数的求逆的困难性,我们称这样的函数为单向函数。
单向函数在密码学中起一个中心作用。
它对公钥密码体制的构造是非常重要的。
单向函数的研究是公钥密码体制理论中的一个重要课题。
但是,虽然很多函数(包括RSA算法的加密函数)被认为或被相信是单向的,但目前还没有一个函数能被证明是单向的。
所谓“单向函数”就是极难求得其反函数的函数。
单向函数是贯穿整个公钥密码体制的一个核心概念。
RSA的基础是数论的欧拉定理。
欧拉定理:若整数a和n互素,则a?渍(n)≡1 mod n其中?准(n)是比n小但与n互素的正整数个数。
推论(Fermat):若p是素数,(a,p)=1,则ap-1≡1 mod p1.2 RSA加密算法的流程1) 找到三个数:p, q, d,其中p和q是两个相异的质数,d是与(p-1)(q-1)互质的数。
计算出n=pq。
2) 寻找另一个数e,使得ed ≡1 mod ?准(n)。
因为d与?准(n)互质,所以用辗转相除法一定可以找到e。
3) 把{n, e}公开,作为公钥,(n, d)就是私钥;加密时,将待加密信息M看成一个大整数,假设M<n,计算c = me mod n ,显然o<c<n, c就是加密后的信息。
注意,这里的假设条件总是可以成立的,因为当m ≥ n 的话,我们可以将m表示成s进位(s ≤ 通常s=“2t),则每一位数均小于n,然后就可以分段应用上面的方法加密。
rsa加密算法在网络安全世界的用途【篇一:rsa加密算法在网络安全世界的用途——构建安全通信的基石】引言在数字化时代,网络安全已成为各行各业不可忽视的重要议题。
RSA加密算法,作为一种非对称加密算法,凭借其强大的安全性和广泛的应用性,在网络安全领域扮演着举足轻重的角色。
本文将深入探讨RSA加密算法在网络安全世界的用途,特别是其在构建安全通信方面的基石作用。
一、RSA加密算法的基本原理RSA加密算法的安全性基于大数分解的复杂性。
简而言之,它是在具体加密时,使用公钥对数据明文进行加密;解密时,使用私钥对密文进行解密。
二、RSA加密算法在网络安全中的应用1.安全通信保护:RSA加密算法是安全通信协议的核心组成部分。
在安全通信中,服务器使用RSA私钥加密随机生成的对称密钥,并将加密后的密钥发送给客户端。
客户端使用RSA 公钥解密密钥,并使用该密钥加密通信数据。
这样,即使数据在传输过程中被截获,也无法被解密,从而保证了通信的安全性。
2.电子邮件加密:RSA加密算法还可以用于电子邮件的加密。
发送方可以使用接收方的公钥对邮件内容进行加密,只有持有对应私钥的接收方才能解密邮件内容。
这样,即使邮件在传输过程中被截获,也无法被读取,保护了邮件的私密性。
3.数字签名:RSA加密算法还可以用于数字签名,确保数据的完整性和真实性。
发送方使用私钥对数据的哈希值进行签名,接收方使用公钥验证签名。
如果签名验证通过,则说明数据在传输过程中未被篡改,保证了数据的完整性。
三、RSA加密算法的优缺点优点:-安全性高:基于大数分解的复杂性,RSA加密算法具有很高的安全性。
-应用广泛:RSA加密算法不仅可以用于数据加密,还可以用于数字签名和身份认证等多种应用场景。
缺点:-运算速度慢:RSA加密算法的运算速度相对较慢,不适合用于大量数据的加密。
-密钥管理复杂:RSA加密算法需要管理公钥和私钥两套密钥,增加了密钥管理的复杂性。
四、总结RSA加密算法在网络安全世界中具有广泛的应用和重要的价值。
RSA加密算法的安全性分析向进【摘要】RSA加密算法是一种使用较多、安全性较高的非对称加密算法,分析了非对称加密体制中RSA加密算法的数学基础,讨论了其破译的可能方法,并根据目前的计算机运行速度,计算了常用的密钥长度破译时所需时间,并对RSA算法的安全性进行了定量分析.【期刊名称】《吉首大学学报(自然科学版)》【年(卷),期】2011(032)001【总页数】3页(P42-44)【关键词】RSA;数据加密;数据安全;密钥破解【作者】向进【作者单位】湘西经济贸易学校,湖南,吉首,416000【正文语种】中文【中图分类】TP393随着网络技术的迅速发展和应用,人们已越来越依赖于计算机网络,现在人们普遍将互联网作为信息传送的平台,但在互联网上进行信息的传送存在许多不安全因素.为了确保重要信息在网上安全传输,目前采用的措施主要有3种[1]:安全信道、加密技术和信息隐藏,其中加密技术是应用最广的一种,虽然目前理论上没有不能被破解的加密算法,但只要加密后的数据在要求的时间内不被破解,数据就是安全的.目前的密码体制分为对称密码体制和非对称密码体制2种,非对称密码体制的密钥的管理和传送很方便,在通过网络传输信息时,公钥密码算法体现出了单密钥加密算法不可替代的优越性,其中公钥密码体制的算法中最著名的代表是RSA算法[2],RSA算法的安全性问题尚未得到理论上的证明[3],笔者就其安全性进行了一定的分析.RSA算法是一个基于初等数论定理的公钥密码体制加密算法,它的实现过程为:选取2个大素数p与q,然后算出n=pq,φ(n)=n-p-q+1,再选取一个正整数e,使之满足(e,φ(n))=1,1<e<φ(n);再求出正整数d,使之满足1<d<φ(n),且使de≡1modφ(n).RSA体制的公钥是<n,e>,而密钥是< n,d>.明文消息m满足0≤m<n,加密过程为m的e次方用n除后所得的余数,即为密文c;解密过程为c的d次方用n 除后所得的余数,即为明文m.例取2个质数p=11,q=13,p和q的乘积为n=p×q=143,算出φ(n)=n-p-q+1=120;再选取一个与φ(n)互质的数,例如e=7,则公开密钥=<n,e>=<143,7>.对于这个e值,用欧几里德扩展算法可以算出其逆:d=103.因为e×d=7×103=721,满足e×d mod z=1;即721 mod 120=1成立.则秘密密钥=<n,d>=<143,103>,设发送方需要发送机密信息(明文)m=85,发送方已经从公开媒体得到了接收方的公开密钥<n,e>=<143,7>,于是发送方算出加密后的密文c=memod n=857 mod 143=123并发送给接收方.接收方在收到密文c=123后,利用只有他自己知道的秘密密钥计算m=cd mod n=123103mod 143 =85,所以,接收方可以得到发送方发给他的真正信息m=85,实现了解密.用RSA体制加密时,先将明文数字化再进行加密,在实际应用中m值的长度一般要远大于n的长度,因此实际加密消息m时,首先将它分成比n小的数据分组(采用二进制数,选取小于n的2的最大次幂),再每组单独加密和解密.比如说,选用的p和q为100位的素数,那么n将有200位,每个数据分组应小于200位长,但为保证安全性,每个数据的长度应尽量接近n的长度.目前密码的破译主要有2种方法.方法之一是密钥的穷尽搜索,其破译方法是尝试所有可能的密钥组合.虽然大多数的密钥尝试都是失败的,但最终有一个密钥让破译者得到原文,这个过程称为密钥的穷尽搜索.方法之二是密码分析.由于RSA算法在加密和解密过程都是用指数计算,其计算工作量巨大,用穷尽搜索法进行破译是根本不可能的.因此要对RSA算法加密后的信息进行破译只能采用密码分析法,用密码分析法攻击RSA密码系统,途径之一是直接计算“n的e次方根”,但目前还没有解决这一问题的算法,这个问题是现实不可计算的问题;途径之二[4]是想办法计算出d,欲得到d,可考虑从以下3个方面入手.(1)将数n分解因子.密码分析员一旦分解出n的因子p和q,就可以先后求出φ(n)和d,从而攻破RSA公开钥密码系统.由此得出如下结论:破译RSA密码不可能比分解因子的问题更困难.(2)不分解n的因子计算φ(n).显然,如果密码分析员能够求出φ(n),由于e是公开的,就可以通过de≡1(modφ(n))算出d,从而攻破RSA密码系统.但是,一旦密码分析员知道了φ(n),他就可以很容易地分解出n的因子.究其原因为所以,由n及φ(n)可以计算出(p+q).有了(p+q),就可以通过求出(p-q),因而最终解出p和q.计算φ(n)的方法并不比分解n的因子容易,换言之,通过计算φ(n)破译RSA密码的方法不会比通过分解n的因子破译RSA密码的方法更容易.(3)不分解n的因子或计算φ(n)确定d.如果能够知道d,分解n的因子问题也同样会变得容易起来.因为φ(n)=(ed-1)×k,其中k为任意整数,已知d(e是公开的)时,可求出φ(n),根据φ(n)=n-(p +q)+l,由于n是已知的(公开的),在求出φ(n)时可求出p+q,设求出的p+q=r,又由于n=p×q,从而可得p×p-p×r+n=0,这是一个一元二次方程,自然可非常简单求出p,同理可求出q,分解n完成.G.L.M iller在1975年指出,利用φ(n)的任何倍数都可以容易地分解出n的因子.因此,用M iller算法就可以由(ed-1)分解出n的因子,也就是说计算d并不比分解n 的因子更容易.密码分析员还可能希望找到某个与d等价的d′,从而攻破RSA密码.但是,所有这样的d′只相差(p-1)和(q-1)的最小公倍数的整数倍,因此,找到一个这样的d′就可以使分解n的因子问题变得容易起来,也即找到这样的d′并不比分解n的因子更容易.综上所述,破译RSA密码系统和分解因子问题同样困难,尽管目前还不能完全证实它,即在目前状况下,如果参数p,q和e选取恰当的话,RSA的加密强度,就取决于的抗因子分解强度.著名数学家费马(1601—1665)和勒让德((1752—1833)都研究过分解因子的算法,现代某些更好的算法是勒让德方法的扩展.其中,R.Schroeppel算法是好算法中的一类,用此法分解因子仍然需要大约次运算,其中ln表示自然对数,可见分解n所需的运算次数与密钥的长度有关,随着密钥长度的增加,分解所需的时间会成指数倍增加.对于不同长度的十进制数n,Schroeppel算法分解n的因子时所需的运算次数如表1所示.若用1台1 s能进行1亿次因子分解的高速计算机来计算,分解十进制长度为200位的n,其所需时间为3 800 000年.由此可见,对于RSA系统,如果用一个长度为200位(十进制)的n,认为它是比较安全的,如果n的长度更长,因子分解越困难,一般来说,每增加10位二进制数,分解的时间就要加长1倍.密码就越难以破译,加密强度就越高.不过随着计算机运算速度的提高和并行计算的发展,破解的速度也会同步提高,这时可能要求使用更长的密钥.70年代末,RSA算法的3个发明人曾经提出一道RSA 129挑战问题.在其后的近20年里,该问题竟然无人敢于问津,密底似乎将永远不会揭开.1993年,在美国Bellcore公司A rjen Lenstra,Derek A tkins,M ichael Graff和Paul Leyland的领导下,一个国际研究小组决定接受16年前Rivest教授等人在《科学美国人》杂志上提出的挑战.他们之所以能这样做,主要因为近20年来,计算机运算速度突飞猛进的提高,在大数分解理论上也有新的突破.该小组在国际互联网上集合来自世界各地的志愿参加者,向他们分发因数分解软件.这个分解软件可以利用计算机的空闲时间进行RSA 129的公开钥匙分解工作,可以自动避免与用户工作时间的冲突.每个参加者都领取了不同的因数分解子任务,在自己的计算机上独立运算,然后把计算结果寄回M IT总部,列表归纳.到1994年4月,共有600余名志愿者参加了这项破译活动.他们总共动用了1 600多台工作站、大型机和超级计算机,花费了8个月的时间,终于分解了RSA 129问题中的公开钥匙.在2005年有研究人员破解了RSA 640问题中的公开钥匙[5].不过破解的难度随着n长度而不断增加,因此可以根据被加密文件的重要程度及对加密时间的要求这2个因素来选择n的长度,这种选择密钥长度的灵活性(密钥长度决定保密的等级)是许多密码系统所没有的,是RSA算法的一个特点.通常选取n=512,1 024,2 048 bit.就目前的计算机水平用1 024位二进制(约340位十进制)的密钥是安全的,2 048位是绝对安全的.RSA实验室认为,n=512已不够安全,应停止使用,目前个人需要用n=668,公司要用n=1 024,极其重要的场合应该用n=2 048.RSA的安全性依赖于大数的因子分解,这样攻击RSA系统的难度就是大整数因子分解的难度,一般认为这是一个NPC问题,尽管尚未在理论上证明分解因子的问题一定困难,但千百年来经过众多学者的研究,迄今没有找到一种有效算法,绝大多数数论学家倾向于认为不存在大整数因子分解的多项式算法,因此目前这一破译只能依赖于现代的计算机技术,用程序进行尝试分解,从而对大数的因子分解.不过随着计算机运算速度的提高和并行计算的发展,加上因子分解方法的改进,低位数的密钥的破解已成为可能.因子分解需的时间随密钥长度的增加而成指数指增加,只要n的长度达到一定要求,并且参数p,q和e选取恰当的话,RSA系统是相当安全的.【相关文献】[1] 夏煜,郎荣玲,戴冠中,等.基于图像的信息隐藏分析技术综述[J].计算机工程,2003,29(7):1-3.[2] 邱梅,罗守山,刘文.利用RSA密码体制解决安全多方多数据排序问题[J].电子学报,2009,27(5):1 119-1 123.[3] 姜正涛,怀进鹏,王育民.RSA推广循环攻击实效性与弱模问题的研究与分析[J].通信学报,2009,30(6):70-74.[4] 谢建全,阳春华.RSA算法中几种可能泄密的参数选择[J].计算机工程,2006,32(16):118-120.。
有关RSA公钥加密算法及其安全性讨论(RSA algorithm for public-key encryption and the security)姓名:梁春龙班级:010911班学号:01091027西安电子科技大学通信工程学院陕西西安710126【摘要】RSA 是被研究得最广泛的公钥算法,从提出到现在已近二十年,经历了各种攻击的考验。
RSA 算法是第一个能同时用于加密和数字签名的算法。
了解RSA 加密解密算法原理、过程、攻击方法、安全性就显得尤其重要, 本文就给予这方面知识的初步探讨。
分析了公开密钥密码技术、RSA加密算法,并对RSA算法的安全性进行了讨论。
RSA is most widely studied public key algorithm, in view has now nearly 20 years, experienced the test of all kinds of attacks.RSA algorithm is the first one can be used for both encryption and digital signature algorithms, but also easy to understand and operate.Understand the RSA encryption algorithm principle, process, declassified attack method, safety is especially important, this paper will give the knowledge of the initial study.The analysis of public-key cipher technology, RSA encryption algorithm, and the safety of RSA algorithms are discussed.【关键字】RSA,公钥,RSA 的优缺点,加密,安全性1.学习心得学习《通信网的安全与保密》通过老师生动讲解,这门课程让我了解到了一些匪夷所思的科技技术,比如老师讲的收集电脑屏幕发出电磁波,在不远的地方分析,还原,实现监控的功能,还有可以实现监控人类思想活动的头盔,植入人体的芯片,这些看似007电影才能实现的功能,其实已经离我们不远了,不再是科幻小说主人公手里的东西,现在的科技发展速度,只要你有思想,在不久的将来就会有实现的可能。
RSA算法研究及其安全性分析1、前言随着Internet的迅猛发展,基于Internet的各种应用也日新月异,日益增长。
但是,由于Internet是一个极度开放的环境,任何人都可以在任何时间、任何地点接入Internet获取所需的信息,这也使得在Internet上信息传输及存储的安全问题成为影响Internet应用发展的重要因素。
正因为如此,信息安全技术也就成为了人们研究Internet应用的新热点。
信息安全的研究包括密码理论与技术、安全协议与技术、安全体系结构理论、信息对抗理论与技术、网络安全与安全产品等诸多领域。
在其中,密码算法的理论与实现研究是信息安全研究的基础。
而确保数据加密算法实现的可靠性和安全性对于算法理论应用到各种安全产品中起到了至关重要的作用。
对各类电子信息进行加密,以保证在其存储,处理,传送以及交换过程中不会泄露,是对其实施保护,保证信息安全的有效措施。
RSA公钥加密算法是1977年由Ron Rivest、Adi Shamirh和LenAdleman在(美国麻省理工)开发的。
RSA取名来自开发他们三者的名字。
RSA是目前最有影响力的公钥加密算法,它能够抵抗到目前为止已知的所有密码攻击,已被ISO推荐为公钥数据加密标准。
RSA 算法基于一个十分简单的数论事实:将两个大素数相乘十分容易,但那时想要对其乘积进行因式分解却极其困难,因此可以将乘积公开作为加密密钥。
2、什么是RSARSA算法是第一个能同时用于加密和数字签名的算法,也易于理解和操作。
RSA是被研究得最广泛的公钥算法,从提出到现在已近二十年,经历了各种攻击的考验,逐渐为人们接受,普遍认为是目前最优秀的公钥方案之一。
RSA的安全性依赖于大数的因子分解,但并没有从理论上证明破译RSA的难度与大数分解难度等价。
即RSA的重大缺陷是无法从理论上把握它的保密性能如何,而且密码学界多数人士倾向于因子分解不是NPC问题。
RSA的缺点主要有:A)产生密钥很麻烦,受到素数产生技术的限制,因而难以做到一次一密。