密码技术
来源:互联网 发布:第一性原理 知乎 编辑:程序博客网 时间:2024/05/21 17:59
一、 摘要算法、对称密码技术、非对称密码技术有哪些方法
1、 摘要技术
概念:
数据摘要算法是密码学算法中非常重要的一个分支,它通过对所有数据提取指纹信息以实现数据签名、数据完整性校验等功能,由于其不可逆性,有时候会被用做敏感信息的加密。
具体算法:
AES算法、CRC(循环冗余校验)算法、MD2 、MD4、MD5算法、SHA(SecureHash Algorithm)算法、TIGER算法
2、对称密码算法
概念:
对称加密算法是应用较早的加密算法,技术成熟。在对称加密算法中,数据发信方将明文(原始数据)和加密密钥一起经过特殊加密算法处理后,使其变成复杂的加密密文发送出去。收信方收到密文后,若想解读原文,则需要使用加密用过的密钥及相同算法的逆算法对密文进行解密,才能使其恢复成可读明文。在对称加密算法中,使用的密钥只有一个,发收信双方都使用这个密钥对数据进行加密和解密,这就要求解密方事先必须知道加密密钥。
具体算法:
DES算法,3DES(TripleDES)算法,RC2、RC4、RC5算法、TDEA算法,Blowfish算法,RC5算法,IDEA算法,AES算法等,其中最常用的对称加密算法DES、3DES(TripleDES)和AES。
3、非对称加密算法
概念:
非对称加密算法需要两个密钥:公开密钥(publickey)和私有密钥(privatekey)。公开密钥与私有密钥是一对,如果用公开密钥对数据进行加密,只有用对应的私有密钥才能解密;如果用私有密钥对数据进行加密,那么只有用对应的公开密钥才能解密。因为加密和解密使用的是两个不同的密钥,所以这种算法叫作非对称加密算法。非对称加密算法实现机密信息交换的基本过程是:甲方生成一对密钥并将其中的一把作为公用密钥向其它方公开;得到该公用密钥的乙方使用该密钥对机密信息进行加密后再发送给甲方;甲方再用自己保存的另一把专用密钥对加密后的信息进行解密。
另一方面,甲方可以使用乙方的公钥对机密信息进行签名后再发送给乙方;乙方再用自己的私匙对数据进行验签。
甲方只能用其专用密钥解密由其公用密钥加密后的任何信息。 非对称加密算法的保密性比较好,它消除了最终用户交换密钥的需要。
具体算法:
RSA、Elgamal、背包算法、Rabin、D-H、ECC(椭圆曲线加密算法)等。
二、 各种方法的优缺点
1、 对称加密算法
①DES算法
概念:
DES算法为密码体制中的对称密码体制,又被称为美国数据加密标准,是1972年美国IBM公司研制的对称密码体制加密算法。 明文按64位进行分组,密钥长64位,密钥事实上是56位参与DES运算(第8、16、24、32、40、48、56、64位是校验位, 使得每个密钥都有奇数个1)分组后的明文组和56位的密钥按位替代或交换的方法形成密文组的加密方法。
优点:
密钥只用到了64位中的56位,这样具有高的安全性。
缺点:
分组比较短、密钥太短、密码生命周期短、运算速度较慢。
②3DES算法
概念:
3DES(或称为Triple DES)是三重数据加密算法(TDEA,Triple Data Encryption Algorithm)块密码的通称。它相当于是对每个数据块应用三次DES加密算法。由于计算机运算能力的增强,原版DES密码的密钥长度变得容易被暴力破解;3DES即是设计用来提供一种相对简单的方法,即通过增加DES的密钥长度来避免类似的攻击,而不是设计一种全新的块密码算法。
优点:
比起最初的DES,3DES更为安全。
缺点:
加密算法简单,密钥长度有限(56比特/128比特),加密强度不高、密钥分发困难,不适宜一对多的加密信息传输。
③AES算法
概念:
高级加密标准(英语:Advanced Encryption Standard,缩写:AES),在密码学中又称Rijndael加密法,是美国联邦政府采用的一种区块加密标准。这个标准用来替代原先的DES,已经被多方分析且广为全世界所使用。经过五年的甄选流程,高级加密标准由美国国家标准与技术研究院(NIST)于2001年11月26日发布于FIPS PUB 197,并在2002年5月26日成为有效的标准。2006年,高级加密标准已然成为对称密钥加密中最流行的算法之一。
优点:
AES具有比DES更好的安全性、效率、灵活性的结论
强安全性、高性能、高效率、易用和灵活
缺点:
2002年被旁道攻击过,现在也不是那么安全了
2、非对称加密算法
①RSA算法
概念:
RSA算法基于一个十分简单的数论事实:将两个大质数相乘十分容易,但是想要对其乘积进行因式分解却极其困难,因此可以将乘积公开作为加密密钥。
优点:
RSA是高强度非对称加密系统,密钥长度少则512位,多则2048位,非常难破解,至今尚未有人能破解超过1024位以上的RSA,非常安全。
缺点:
由于是采用非对称加密,加解密耗费时间很长,是DES加密时间的1000倍以上。
RSA的缺点主要有:A)产生密钥很麻烦,受到素数产生技术的限制,因而难以做到一次一密。B)分组长度太大,为保证安全性,n 至少也要 600 bits以上,使运算代价很高,尤其是速度较慢,较对称密码算法慢几个数量级;且随着大数分解技术的发展,这个长度还在增加,不利于数据格式的标准化。
②椭圆曲线算法(ECC)算法
概念:
椭圆曲线指的是由韦尔斯特拉斯(Weierstrass)方程 y2+a1xy+a3y=x3+a2x2+a4x+a6 所确定的平面曲线。若F是一个域,ai ∈F,i=1,2,…,6。满足式1的数偶(x,y)称为F域上的椭圆曲线E的点。F域可以是有理数域,还可以是有限域GF(Pr)。椭圆曲线通常用E表示。除了曲线E的所有点外,尚需加上一个叫做无穷远点的特殊点O。
优点:
抗攻击性强;计算量小,处理速度快;存储空间占用小;带宽要求低.
缺点:
基本运算比RSA复杂很多
③D-H算法
概念:
Diffie-Hellman:一种确保共享KEY安全穿越不安全网络的方法,它是OAKLEY的一个组成部分。Whitefield与Martin Hellman在1976年提出了一个奇妙的密钥交换协议,称为Diffie-Hellman密钥交换协议/算法(Diffie-Hellman Key Exchange/Agreement Algorithm).这个机制的巧妙在于需要安全通信的双方可以用这个方法确定对称密钥。然后可以用这个密钥进行加密和解密。但是注意,这个密钥交换协议/算法只能用于密钥的交换,而不能进行消息的加密和解密。双方确定要用的密钥后,要使用其他对称密钥操作加密算法实际加密和解密消息。
优点:
需要安全通信的双方可以用这个方法确定对称密钥,然后可以用这个密钥进行加密和解密
缺点:
这个密钥交换协议/算法只能用于密钥的交换,而不能进行消息的加密和解密,双方确定要用的密钥后,要使用其他对称密钥操作加密算法实际加密和解密消息。
三、 这些方法哪一年被谁攻破的
DES
Verser程序员破解
1997.6
3DES
未破解
AES
未破解
在2002年Dmitry Khovratovich、Andrey Bogdanov、Christian Rechberger做出有效攻击
RSA
未破解
ECC
未破解
四、 现在摘要技术还可以用的有哪些?用在日常哪些场景
1、 AES算法
用于传递不适合明文传输的报文
2、CRC(循环冗余校验)算法
应用也十分广泛,尤其是通讯领域,现在应用最多的就是 CRC32 算法在 WinRAR、WinZIP 等软件中,也是以 CRC32 作为文件校验算法的。一般常见的简单文件校验(Simple FileVerify – SFV)也是以 CRC32算法为基础
3、MD2 、MD4、MD5算法
被广泛应用于数据完整性校验、数据(消息)摘要、数据加密等。在互联网上进行大文件传输时,而且部分操作系统也使用此算法来对用户密码进行加密,另外,它也是目前计算机犯罪中数据取证的最常用算法。
4、SHA(Secure Hash Algorithm)算法
应用较为广泛,主要应用于CA和数字证书中,另外在互联网中流行的BT软件中,也是使用SHA1来进行文件校验的。
5、TIGER算法
Tiger号称是最快的Hash算法,专门为64位机器做了优化。
- 密码技术
- 密码技术
- 密码技术
- 密码技术
- 密码技术
- 密码技术
- 密码技术
- 《密码技术》(一):密码
- 二 密码技术
- 银行卡密码校验技术
- 银行卡密码校验技术
- 股市密码线技术
- 半自动密码输入技术
- 密码代换技术验证
- IBC密码技术分析研究
- 密码技术介绍
- 《图解密码技术》小结
- 深入理解密码技术
- eclipse实现代码块折叠-类似于VS中的#region……#endregion
- 从零开始学习渗透Node.js应用程序
- ThinkPHP之模板
- oracle sql 查询
- Hadoop+Spark 集群部署
- 密码技术
- Android 进程间通信AIDL学习
- 解决AQDefaultDevice (173): skipping input stream 的输出问题
- html5
- Storm部署文档
- 关于js中,数组的赋值、比较
- 关于带括号类函数或公式的提取问题
- 安装apache服务
- Java中ArrayList和LinkedList区别