标签:映射 method 秘钥 解决 md5 实现 博客 扩展 ssl
加密解决了什么问题?对称加密:加密和解密使用的是同一个秘钥。
非对称加密:加密和解密使用的不是同一个秘钥,加密时使用公钥,解密就要使用私钥;加密时使用私钥,解密是就是用公钥。
DES加密是一种将64位明文密码加密成64位密文的对称加密的算法。(这种算法已经被破解了,)
DES加密实现(选加密算法时要选择DES的算法)
1.在php中先打开openssl的扩展库
2.使用openssl_encrypt("要加密的串","要加密的算法","密串",选项,方向向量)加密;
3.使用openssh_decrypt("要解密的串","加密的算法","密串",选项,方向向量);
注意:**加密的算法可以通过openssh_get_gipher_methods()函数获取。
由于DES加密算法不安全,所以就出现了AES加密算法。
AES加密算法**
AES加密实现(选加密算法时要选择AES的算法)
1.在php中先打开openssl的扩展库
2.使用openssl_encrypt("要加密的串","要加密的算法","密串",选项,方向向量)加密;
3.使用openssh_decrypt("要解密的串","加密的算法","密串",选项,方向向量);
注意:**加密的算法可以通过openssh_get_gipher_methods()函数获取。
RSA加密**是一种非对称的加密方式,即加密和解密使用的不是同一个秘钥,加密时使用公钥,解密就要使用私钥;加密时使用私钥,解密是就是用公钥。
RSA加密的实现方式
1.首先要生成一对公钥和私钥,可以安装生成公钥和私钥的软件,也可以使用在线生成公钥和私钥的网站比如:web.chacuo.net/netrsakeypair
使用公钥加密的的函数openssh_public_encrypt() open_privete_decrypt 去解密
openssl_public_encrypt($str,$res,$publicKey); 将$str加密成$res
openssl_private_decrypt($res,$str,$privateKey);将res解密成$str
使用私钥加密的的函数openssh_private_encrypt() open_public_decrypt 去解密
openssl_private_encrypt($str,$res,$privateKey);将$str加密成$res
openssl_public_decrypt($res,$str,$publicKey);将res解密成$str
中间人:
使用https协议就能防止中间人,以后会开一篇博客细聊.
hash(单项散列值)
hash 单项散列值,就是一个字符串对应一个唯一的字符串比如md5 sha1是一种映射
标签:映射 method 秘钥 解决 md5 实现 博客 扩展 ssl
原文地址:https://blog.51cto.com/5493817/2492228