加密
加密
什么是加密
加密(encryption) - 以某种特殊的算法改变原有的信息数据,使得未授权的用户即使获得了已加密的信息,但因不知解密的方法,仍然无法了解信息的内容。
解密(decryption) - 换将密文重新变换回原来的明文。
明文(plaintext)- 加密前的数据。
密文( ciphertext) - 加密后的数据。

对称加密和非对称加密
对称加密
使用同一个密钥进行加密和解密。对称加密算法的优点是加密和解密速度快,适用于大数据量的加密和解密。但是,对称加密算法的缺点是密钥需要在加密和解密双方之间共享,密钥的安全性无法得到保障。
常用对称加密算法:DES、3DES、AES
非对称加密
使用不同的密钥进行加密和解密,公钥(publickey)和私钥(privatekey)是一对,如果用公开密钥对数据进行加密,只有用对应的私有密钥才能解密;如果用私有密钥对数据进行加密,那么只有用对应的公开密钥才能解密。非对称加密算法的优点是密钥可以在不同的实体之间共享,密钥的安全性可以得到保障。但是,非对称加密算法的缺点是加密和解密速度较慢,适用于小数据量的加密和解密。
公/私钥如何产生
常用非对称加密算法:RSA、DSA
RSA
相同明文、相同公钥,每次经过 RSA 加密后得到的密文都不一样。
应用场景
用户注册,后台将用户密码加密后存储。
GitHub ssh 连接
通过 ssh 方式登录服务器
https
OpenSSL
压缩文件加密