第四讲 非对称密钥加密算法
- 格式:ppt
- 大小:1.32 MB
- 文档页数:44
<2> 非对称密钥加密又叫作公开密钥加密算法。
在非对称加密体系中,密钥被分解为一对(即一把公开密钥或加密密钥和一把私有密钥或解密密钥)。
这对密钥中的任何一把都可作为公开密钥(加密密钥)通过非保密方式向他人公开,而另一把则作为私有密钥(解密密钥)加以保存。
公开密钥用于对机密性信息的加密,私有密钥则用于对加密信息的解密。
私有密钥只能由生成密钥对的用户掌握,公开密钥可广泛发布,但它只对应于生成该密钥的用户。
公开密钥加密技术解决了密钥的发布和管理问题,是目前商业密码的核心。
使用公开密钥技术,数据通信的双方可以安全的确认对方的身份和公开密钥。
非对称密钥加密算法主要有RSA、PGP等。
----数据加密技术可以分为三类,即对称型加密、不对称型加密和不可逆加密。
----对称型加密使用单个密钥对数据进行加密或解密,其特点是计算量小、加密效率高。
但是此类算法在分布式系统上使用较为困难,主要是密钥管理困难,使用成本较高,保安性能也不易保证。
这类算法的代表是在计算机专网系统中广泛使用的DES(Digital Encryption Standard)算法。
----不对称型加密算法也称公用密钥算法,其特点是有二个密钥(即公用密钥和私有密钥),只有二者搭配使用才能完成加密和解密的全过程。
由于不对称算法拥有两个密钥,它特别适用于分布式系统中的数据加密,在Internet中得到了广泛应用。
其中公用密钥在网上公布,为数据源对数据加密使用,而用于解密的相应私有密钥则由数据的收信方妥善保管。
----不对称加密的另一用法称为“数字签名(Digital signature)”,即数据源使用其密钥对数据的校验和(Check Sum)或其他与数据内容有关的变量进行加密,而数据接收方则用相应的公用密钥解读“数字签名”,并将解读结果用于对数据完整性的检验。
在网络系统中得到应用的不对称加密算法有RSA算法和美国国家标准局提出的DSA算法(Digital Signature Algorithm)。
对称加密和⾮对称加密⼀、对称加密算法对称加密采⽤了对称密码编码技术,它的特点是⽂件加密和解密使⽤相同的密钥加密也就是密钥也可以⽤作解密密钥,这种⽅法在密码学中叫做对称加密算法,对称加密算法使⽤起来简单快捷,密钥较短,且破译困难,除了数据加密标准(DES),另⼀个对称密钥加密系统是国际数据加密算法(IDEA),它⽐DES的加密性好,⽽且对计算机功能要求也没有那么⾼对称加密算法在电⼦商务交易过程中存在⼏个问题:1、要求提供⼀条安全的渠道使通讯双⽅在⾸次通讯时协商⼀个共同的密钥。
直接的⾯对⾯协商可能是不现实⽽且难于实施的,所以双⽅可能需要借助于邮件和电话等其它相对不够安全的⼿段来进⾏协商;2、密钥的数⽬难于管理。
因为对于每⼀个合作者都需要使⽤不同的密钥,很难适应开放社会中⼤量的信息交流;3、对称加密算法⼀般不能提供信息完整性的鉴别。
它⽆法验证发送者和接受者的⾝份;4、对称密钥的管理和分发⼯作是⼀件具有潜在危险的和烦琐的过程。
对称加密是基于共同保守秘密来实现的,采⽤对称加密技术的贸易双⽅必须保证采⽤的是相同的密钥,保证彼此密钥的交换是安全可靠的,同时还要设定防⽌密钥泄密和更改密钥的程序。
假设两个⽤户需要使⽤对称加密⽅法加密然后交换数据,则⽤户最少需要2个密钥并交换使⽤,如果企业内⽤户有n个,则整个企业共需要n×(n-1) 个密钥,密钥的⽣成和分发将成为企业信息部门的恶梦。
常见的对称加密算法有DES、3DES、Blowfish、IDEA、RC4、RC5、RC6和AES常⽤算法介绍:(1)DES(Data Encryption Standard,数据加密算法) DES是最基本的对称加密算法,也是使⽤频率最⾼的⼀种算法,加密密钥与解密密钥相同。
DES出⾝⽐较好,出⾃IBM之⼿,后被美国军⽅采纳,之后便⼴泛流传,但是近些年使⽤越来越少,因为DES使⽤56位密钥,以现代计算能⼒,24⼩时内即可被破解。
虽然如此,在某些简单应⽤中,我们还是可以使⽤DES加密算法。
非对称加密体制的基本原理在现代信息社会中,随着计算机和互联网的快速发展,信息安全问题日益突出。
为了保护敏感信息的安全性,人们广泛使用加密技术来对数据进行加密。
其中,非对称加密体制作为一种重要的加密方式,被广泛应用于各个领域。
非对称加密体制的基本原理是基于数学问题的难解性。
它使用了一对密钥,分别是公钥和私钥。
公钥是公开的,任何人都可以获得;而私钥则是保密的,只有拥有者才能获得。
这对密钥是根据数学算法生成的,确保了其唯一性和安全性。
在非对称加密体制中,公钥用于加密和验证数字签名,而私钥用于解密和生成数字签名。
当发送方需要向接收方发送加密数据时,发送方首先使用接收方的公钥对数据进行加密,然后将加密后的数据发送给接收方。
接收方收到加密数据后,使用自己的私钥进行解密,从而获取原始数据。
这样,即使加密数据被第三方截获,也无法解密得到原始数据,从而保证了数据的安全性。
除了加密数据之外,非对称加密体制还可以用于生成和验证数字签名。
数字签名是一种用于验证数据完整性和身份认证的技术。
发送方使用自己的私钥对数据进行签名,然后将签名和原始数据一起发送给接收方。
接收方使用发送方的公钥来验证签名的有效性,从而确保数据的完整性和发送方的身份认证。
非对称加密体制的基本原理在于数学问题的难解性。
其安全性取决于数学问题的难解性,例如大素数的质因子分解、离散对数问题等。
这些数学问题在目前的计算机技术下是非常困难甚至不可解的,因此非对称加密体制具备较高的安全性。
然而,非对称加密体制也存在一些问题。
首先,由于其加密和解密的计算量较大,相比对称加密体制而言,非对称加密体制的加密速度较慢。
其次,由于公钥是公开的,存在伪造公钥的风险。
因此,在使用非对称加密体制时,需要保证公钥的可靠性,避免被攻击者替换为伪造的公钥。
为了解决非对称加密体制的缺点,人们通常采用混合加密体制,即将非对称加密体制与对称加密体制结合起来使用。
在混合加密体制中,非对称加密体制用于密钥的安全分发和数字签名,而对称加密体制用于加密和解密数据。
第一章安全的基本概念1.保密性原则保证只有发送方与接收方能访问消息内容。
2.如果消息接收方要确定发送方身份,则要使用鉴别原则。
3.如果要保证完整性原则,则不能在中途修改消息内容。
4.访问控制原则允许某些用户进行特定访问。
5.如果计算机系统无法访问,则破坏了完整性(应该是可用性)原则。
6.与消息相关的四大安全原则是保密性、鉴别、完整性、不可抵赖。
7.不可抵赖原则保证消息发送方不能否认发过这个消息。
8.截获攻击与保密性相关。
9.伪造攻击与鉴别相关。
10.修改攻击与完整性相关。
11.中断攻击与可用性相关。
12.被动攻击不修改消息内容。
13.主动攻击修改消息内容。
14.中断攻击也称为伪装攻击。
15.拒绝服务攻击是因为伪造。
16.病毒是计算机程序。
17.蠕虫不修改程序。
18.蠕虫不断复制自己,生成拷贝,使网络停滞。
19.小程序和Active控件是客户机方程序。
20.Active控件与小程序相比,安全性较小。
第二章加密技术1.我们通常使用的语言称为明文。
2.编码的语言称为密文。
3.替换加密法发生下列情形:字符换成其他字符。
4.变换加密法要对输入文本进行置换,得到密文。
5.凯撒加密法是个替换加密。
6.Vernam加密法是个变换加密。
7.密码分析员负责破译加密方案。
8.同音替换加密法与单码加密法相比,破译难度更大。
9.将文本写成对角并一行一行地读取称为栅栏加密技术。
10.将文本写成行并列读取称为简单分栏式技术。
11.Vernam加密法也称为一次性板。
12.书加密法也称为运动密钥加密。
13.将明文变成密文称为加密。
14.将密文变成明文称为解密。
第三章计算机对称密钥加密算法1.流加密法中一次加密一位明文2.块加密法中一次加密一块明文3.扩散增加明文冗余度4.CBC适用于块模式5.DES加密64位块a6.DES中共16轮7.PGP基于IDEA算法第四章计算机非对称密钥加密算法1.在非对称密钥加密中,每个通信方需要2个密钥。
非对称加密算法有什么特点什么非对称加密算法非对称加密算法是一种密钥的保密方法。
非对称加密算法需要两个密钥:公开密钥(publickey)和私有密钥(privatekey)。
公开密钥与私有密钥是一对,如果用公开密钥对数据进行加密,只有用对应的私有密钥才能解密;如果用私有密钥对数据进行加密,那么只有用对应的公开密钥才能解密。
因为加密和解密使用的是两个不同的密钥,所以这种算法叫作非对称加密算法。
非对称加密算法实现机密信息交换的基本过程是:甲方生成一对密钥并将其中的一把作为公用密钥向其它方公开;得到该公用密钥的乙方使用该密钥对机密信息进行加密后再发送给甲方;甲方再用自己保存的另一把专用密钥对加密后的信息进行解密。
另一方面,甲方可以使用乙方的公钥对机密信息进行签名后再发送给乙方;乙方再用自己的私匙对数据进行验签。
甲方只能用其专用密钥解密由其公用密钥加密后的任何信息。
非对称加密算法的保密性比较好,它消除了最终用户交换密钥的需要。
非对称密码体制的特点:算法强度复杂、安全性依赖于算法与密钥但是由于其算法复杂,而使得加密解密速度没有对称加密解密的速度快。
对称密码体制中只有一种密钥,并且是非公开的,如果要解密就得让对方知道密钥。
所以保证其安全性就是保证密钥的安全,而非对称密钥体制有两种密钥,其中一个是公开的,这样就可以不需要像对称密码那样传输对方的密钥了。
这样安全性就大了很多。
工作原理1.A要向B发送信息,A和B都要产生一对用于加密和解密的公钥和私钥。
2.A的私钥保密,A的公钥告诉B;B的私钥保密,B的公钥告诉A。
3.A要给B发送信息时,A用B的公钥加密信息,因为A知道B的公钥。
4.A将这个消息发给B(已经用B的公钥加密消息)。
5.B收到这个消息后,B用自己的私钥解密A的消息。
其他所有收到这个报文的人都无法解密,因为只有B才有B的私钥。
非对称密钥算法非对称密钥算法是一种特殊的密钥加密算法,也被称为公开密钥加密和单向加密。
它利用一对秘密密钥(公钥和私钥)来实现加密和解密。
一般来说,公钥由发送方事先发布给接收方,而私钥由发送方保留,不会被发布给任何人,包括接收方。
这样,发送方可以使用自己的私钥加密消息,并使用接收方公钥将其解密,而接收方却无法使用自己的私钥加密任何消息,因为它本身就不拥有任何私钥。
公钥加密算法是目前被广泛应用的一种安全通信技术,它包括RSA,ElGamal,D-H密钥交换,Elliptic Curve Cryptography(ECC)等算法,这些算法的重点是实现高级的隐私保护和数据安全。
RSA算法是目前在网络安全方面被广泛应用的公钥加密算法,它是由美国科学家Ron Rivest,Adi Shamir和Len Adleman发明的。
RSA的主要思想是用一对公开的密钥来完成加密和解密,这对密钥分别是一个公钥和一个私钥,这两个密钥是互不相通的,不能够从另一个密钥计算出来,也不能够从明文计算出来。
只有拥有私钥的收件人能够解密加密的消息,而拥有公钥的任何人都可以把消息加密给收件人。
ElGamal算法是由Taher Elgamal发明的公开密钥系统,它是一种椭圆曲线密码(ECC)。
与RSA不同,ElGamal可以同时用来加密和签名。
此外,ElGamal的安全性更高,因为它的密码长度可以更小,在相同的安全级别下比RSA更加有效。
DH密钥交换是一种没有中心机构的方式,可以在双方之间进行安全的通信,也被称为Diffie-Hellman密钥交换算法。
它利用两个实体之间的共同协商,可以产生一组密钥,用来加密和解密数据,并在双方之间交换信息。
它和RSA有许多相似之处,但又有所不同,它不需要生成共享私钥,而是向另一方发送其共享公钥,然后根据该公钥生成一组密钥,其中包含一个共享的私钥,这样,双方就各自拥有一份共享的私钥,而无需中央机关担任中介者。
常⽤加密算法学习总结之⾮对称加密公开密钥密码学(英语:Public-key cryptography)也称⾮对称式密码学(英语:Asymmetric cryptography)是密码学的⼀种演算法。
常⽤的⾮对称加密算法有 RSA DSA ECC 等。
⾮对称加密算法使⽤公钥、私钥来加解密。
公钥与私钥是成对出现的。
多个⽤户(终端等)使⽤的密钥交公钥,只有⼀个⽤户(终端等)使⽤的秘钥叫私钥。
使⽤公钥加密的数据只有对应的私钥可以解密;使⽤私钥加密的数据只有对应的公钥可以解密。
⾮对称加密通信过程下⾯我们来看⼀看使⽤公钥密码的通信流程。
假设Alice要给Bob发送⼀条消息,Alice是发送者,Bob是接收者,⽽这⼀次窃听者Eve依然能够窃所到他们之间的通信内容。
⑴ Alice与bob事先互不认识,也没有可靠安全的沟通渠道,但Alice现在却要透过不安全的互联⽹向bob发送信息。
⑵ Alice撰写好原⽂,原⽂在未加密的状态下称之为明⽂ plainText。
⑶ bob使⽤密码学安全伪随机数⽣成器产⽣⼀对密钥,其中⼀个作为公钥 publicKey,另⼀个作为私钥 privateKey。
⑷ bob可以⽤任何⽅法传送公钥publicKey 给Alice,即使在中间被窃听到也没问题。
⑸ Alice⽤公钥publicKey把明⽂plainText进⾏加密,得到密⽂ cipherText⑹ Alice可以⽤任何⽅法传输密⽂给bob,即使中间被窃听到密⽂也没问题。
⑺ bob收到密⽂,⽤私钥对密⽂进⾏解密,得到明⽂ plainText。
由于其他⼈没有私钥,所以⽆法得知明⽂;如果Alice,在没有得到bob私钥的情况下,她将重新得到原⽂。
Processing math: 100%RSARSA是⼀种⾮对称加密算法,是由罗纳德·李维斯特(Ron Rivest)、阿迪·萨莫尔(Adi Shamir)和伦纳德·阿德曼(Leonard Adleman)在1977年⼀起提出,并以三⼈姓⽒开头字母拼在⼀起组成的。
常用加密算法介绍加密算法是现代信息安全的基础,它们用于保护数据的机密性、完整性和可用性。
在本文中,我将介绍一些常用的加密算法及其特点。
1.对称加密算法:对称加密算法采用相同的密钥对数据进行加密和解密。
常见的对称加密算法有DES(Data Encryption Standard)、3DES(Triple DES)、AES(Advanced Encryption Standard)等。
这些算法在加密和解密的过程中速度快且效率高,但密钥的管理和分发比较困难。
2.非对称加密算法:非对称加密算法使用一对密钥,即公钥和私钥。
公钥用于加密数据,私钥用于解密数据。
公钥可以公开给任何人使用,而私钥必须保密。
常见的非对称加密算法有RSA(Rivest-Shamir-Adleman)、ElGamal等。
非对称加密算法能够解决对称加密算法中密钥安全分发的问题,但加密和解密的速度较慢。
3.散列函数:散列函数(Hash Function)将输入映射为固定长度的输出,通常是一个固定长度的字符串。
散列函数具有以下特点:输入的微小变化会导致输出的巨大变化;同样的输入会产生同样的输出;给定输出,很难从中推断出输入。
常见的散列函数有MD5、SHA-1、SHA-256等。
散列函数常用于验证数据的完整性和生成密码的摘要。
4.消息认证码(MAC):MAC是一种带有密钥的散列函数,用于验证消息的完整性和真实性。
它使用一个密钥来对消息进行加密,并生成一个固定长度的摘要。
常见的MAC算法有HMAC(Hash-based Message Authentication Code)、CMAC (Cipher-based Message Authentication Code)等。
5.数字签名:数字签名是一种在数字通信中验证消息真实性和完整性的技术。
它使用发送者的私钥对消息进行加密生成签名,接收者使用发送者的公钥进行解密和验证签名。
常见的数字签名算法有RSA、DSA(Digital Signature Algorithm)、ECDSA(Elliptic Curve Digital Signature Algorithm)等。