加密技术介绍 目前大概有三种加密技术
单向散列加密技术
通过对不同输入长度的信息进行散列计算,得到固定长度的输出,这个散列计算过程是单向的,即不能对固定长度的输出进行计算从而获得输入信息。
非对称加密
非对称散列加密和解密使用的密钥不是同一个,公开的叫公钥,另一个只有所有者知道。
公钥,就是封装好的加密算法
密钥,解密算法
对称加密技术介绍
指加密和解密使用的密钥是同一个密钥或者可以相互推算。
php 中的加密方法 md5加密
string md5(string $str [,bool $raw_output = false])
返回以32位字符,十六进制数字形式返回散列值。如果第二个值为 true,则 md5报文摘要将以16字节长度长度的原始二进制格式返回。
crypt 加密算法
不可逆加密函数,盐值
string crypt(string $str [,string $salt])
sha1加密算法
【加密算法介绍】单项加密,不可逆
string sha1(string $str [,bool $raw_output = false]);
返回40字符长度的十六进制数字
url 编码
urlencode(string $str) //编码
urldecode(string $str) //解码//字符串中除了-_之外的所有非字母数字字符都被替换成百分号加两位十六进制数,空格编码为加号,如下
?%3F
= %3D
+ %2B
% %25
用途,一是编码地址栏中的 url;二是编码 url 中某些带有特殊符号的参数
base64
最开始是用于邮件中,邮件网关只识别 ASCII,
base64_encode
就是将二进制转化为 ASCII 函数//编码图片
file_get_contents()
base64_encode($str)
文章图片
//指定图片类型
//或者可以不写
文章图片
//php 中解密
base64_decode()
推荐阅读
- 对GO切片的理解
- 小程序商城网站开发秒杀模块篇
- 盲盒购物网站系统开发建设 第三篇
- Netty核心概念之ChannelHandler&Pipeline&ChannelHandlerContext
- 简单的线程池实现多线程对大文件的读取
- SSH 端口转发与 SOCKS 代理
- Ubuntu16.04/Scala2.11.8安装教程
- 学习PHP中的高精度计时器HRTime扩展
- 使用OpenResty+Lua实现灰度测试(金丝雀)
- 使用源码编译安装PHP扩展