对称/非对称/混合加密的冷知识
数据在互联网上传输,要考虑安全性. 讲到安全,要从三方面考虑:
- 1、authentication 每一个IP包的认证,确保合法源的数据
- 2、data integrity 验证数据完整性,保证在传输过程中没有被人为改动
- 3、confidentiality (私密性)数据包的加密
下面谈谈如何对数据加密. 于是有了非对称加密
对称加密
对称加密算法---使用一把密匙来对信息提供安全的保护。只有一个密匙,即用来加密,也用来解密
特点:
- 1、速度快
- 2、密文紧凑
- 3、用于大量数据的传送
对称加密代表:DES、3DES、AES
3DES--有三个密匙,用第一个密匙加密,用第二个密匙解密,再用第三个密匙加密
他有个致命的缺点, 密钥传输问题.
非对称加密
他有个好处, 公钥随便扔给对方,让对方去加密数据,发给我, 我用我的私钥来解密.
不得不说公钥和私钥是一对情侣,你在我在,你亡我亡,你系的铃世上只有我能解.
- 加解密如何操作? 非对称加密: 有一对密匙,一个叫公匙,一个叫私匙,如果用其中一个加密,必须用另一个解密。
- 非对称加密有什么特点?
- 1、速度慢
- 2、密文不紧凑
- 3、通常只用于数字签名,或加密一些小文件。
- 非对称加密常见的算法有哪些? RSA、ECC
- 非对称加密常见操作模式有?
非对称加密代表RSA--有一对密匙,一个公匙,一个私匙,私匙加密,公匙解密,或者公匙加密,私匙解密
非对称加密可以有两种应用:
- 1、公钥加密,私钥解密,叫加密
- 2、私钥加密,公钥解密,叫数字签名
他也有个致命的弱点. 加密速度超慢.
混合加密- 理想的应用方法
- 用非对称加密法来传送对称加密的密匙。
- 用对称加密法来加密实际的数据。
数字签名不但证明了消息的内容,还证明了发送方的身份。
密钥化的HASH--使用密钥对生成的消息摘要进行加密时,被称为加密的消息摘要。
说到这里,或许还是云里雾里,到底是不是那回事呢,使用openssl实操下 体验下对称加密和非对称加密.
使用openssl实现对数据的对称/非对称加密实操
认证机制(可靠性)和散列机制(完整性)
认证机制(这里所指的是设备的认证,而不是用户的认证)
现代的基本加密技术要依赖于消息之目标接收者已知的一项秘密,关键的问题是如何保障密钥的安全。
- 1、用户名和密码
- 2、OTP(one time password)一次性密码
- 3、生物认证(指纹、眼膜)
- 4、预共享密钥
- 5、数字证书
- 6、加密临时值
散列机制--用来做完整性检验
散列函数(就是HASH)--把一大堆数据经过计算得到一个较小的、定长的值,散列是一种不可逆函数。这意味着一旦明文生成散列,就不可能或者说极端困难再将其由散列转换成明文。
HASH的特点:
- 1、不管输入什么数据,输出是定长的
- 2、只要输入有一点微小变化,输出就会发生很大的变化,也就是雪崩效应
- 3、不可逆
## HASH的算法:
- 1、md5 提供128位的输出 md5是验证,不是加密技术,用来做哈希
- 2、SHA 提供160位的输出
HMAC--使用散列的消息认证编码,或者叫密钥化的HASH,是一种使用HASH来进行认证的机制。可以用来做预共享密钥的认证。