加解密算法概述
工作中经常用到加解密算法大概有以下三种:
- 单项散列算法
- 对称散列算法
- 非对称散列算法
单项散列算法
由不定长的数据转化为固定长的字符串,代表有:
- sha1
sha1($str[,raw_out=false]);//算法不够复杂
raw_out默认为false,生成一个32位的加密串
如果为true,则生成一个16位的二进制流
- md5
md5($str[,strict=false])
strict默认为false,生成一个32位的加密串
如果为true,则生成一个16位的二进制流
- cyrpt
cyrpt($str[,str=false])
str默认使用MD5获取的随机八位字符作为附加加密串进行加密,加密后的格式为
1
<script type="math/tex" id="MathJax-Element-47">1</script>XXXX$XXXXXXXX
str如果为字符串,将会取字符串的前两位作为加密串进行加密
对称加密
- base64
一般用在图片加密 - urlencode
一般用在url上的解析 - des
一般用在合作传输验证
非对称加密
- 公钥+私钥
一般用在信息传输