Md5()加密算法
方式: 单向加密
语法: md5(string $str [, bool $raw_output = false])
$str:原始字符串
$raw_output:如果可选的raw_output被设置为true, 那么md5报文摘要将以16字节长度的原始二进制格式返回. 返回以32位字符十六进制数字形式返回散列值
md5二次加密:md5(md5($string, true))
Crypt()加密算法
方式: 单向加密
语法: string crypt(string $str[, string $salt]) , 返回一个基于标准UNIX DES算法或系统上其它可用的替代算法的三列字符串
$str: 需要加密的明文
$salt: 加密时的干扰串,是编码更安全
注意: 如果加密时没有加上这个$salt参数, 将随机生成一个干扰串, 否则刷新加密秘文不变
算法常量:
[CRYPT_SALT_LENGTH]
默认的加密长度。使用标准的 DES 加密,长度为 2
[CRYPT_STD_DES]
基于标准 DES 算法的散列使用 "./0-9A-Za-z" 字符中的两个字符作为盐值。在盐值中使用非法的字符将导致 crypt() 失败。
[CRYPT_EXT_DES]
扩展的基于 DES 算法的散列。其盐值为 9 个字符的字符串,由 1 个下划线后面跟着 4 字节循环次数和 4 字节盐值组成。它们被编码成可打印字符,每个字符 6 位,有效位最少的优先。0 到 63 被编码为 "./0-9A-Za-z"。在盐值中使用非法的字符将导致 crypt() 失败。
[CRYPT_MD5]
MD5 散列使用一个以 $1$ 开始的 12 字符的字符串盐值。
[CRYPT_BLOWFISH]
Blowfish 算法使用如下盐值:“$2a$”,一个两位 cost 参数,“$” 以及 64 位由 “./0-9A-Za-z” 中的字符组合而成的字符串。在盐值中使用此范围之外的字符将导致 crypt() 返回一个空字符串。两位 cost 参数是循环次数以 2 为底的对数,它的范围是 04-31,超出这个范围将导致 crypt() 失败。
CRYPT_SHA256
SHA-256 算法使用一个以 $5$ 开头的 16 字符字符串盐值进行散列。如果盐值字符串以 “rounds=<N>$” 开头,N 的数字值将被用来指定散列循环的执行次数,这点很像 Blowfish 算法的 cost 参数。默认的循环次数是 5000,最小是 1000,最大是 999,999,999。超出这个范围的 N 将会被转换为最接近的值。
CRYPT_SHA512
SHA-512 算法使用一个以 $6$ 开头的 16 字符字符串盐值进行散列。如果盐值字符串以 “rounds=<N>$” 开头,N 的数字值将被用来指定散列循环的执行次数,这点很像 Blowfish 算法的 cost 参数。默认的循环次数是 5000,最小是 1000,最大是 999,999,999。超出这个范围的 N 将会被转换为最接近的值。
例:
if(CRYPT_MD5){ echo "MD5加密:".crypt('something','$1$somethin$'); }
Sha1()加密算法
方式: 单向加密
语法: string sha1(string $str [, bool $raw_output=false]) 计算字符串的sha1散列值
$str: 加密的字符串
$raw_output: 如果可选的raw_output参数被设置为TRUE, 那么sha1摘要将以20字符长度的原始格式返回, 否则返回值是一个40字符串长度的十六进制数字.
URL编码加密技术
编码URL字符串: urlencode(string $str)
解码已编码的URL字符串: urldeocde(string $str)
编码规范: 此字符串中除了-_.之外的所有非字母数字字符都将被替换成百分号(%)后跟两位十六进制数, 空格则编码为加号(+)
按照RFC1738对URL进行编码: rawurlencode(string $str) : 返回从字符串,把空格编码为%20
对已编码的字符串进行解码: rawurldecode(string $str) : 返回字符串, 此字符串中百分号%后跟两位十六进制的序列豆将被替换成原义字符
urlencode和rawurlencode的区别只在于空格.
Base64编码加密技术
使用base64对data进行编码: base64_encode(string $data)
对使用MIME base64编码的数据进行解码: base64_decode(string $data[, $strict=false]) ; $strict:如果输入的数据超出了base64的字母表,则返回false.
base64编码的图片还可以直接放在<img>标签中显示:
<img src="data:image/jpeg;base64,编码字符串" alt=""/>
<img src="data:;base64,编码字符串" alt=""/>
信息加密技术:
1 单项散列加密:
指通过不同输入的长度的信息进行散列计算, 得到固定长度的输出, 这个散列计算过程是单向的, 既不能对固定长度的输出进行计算从而活儿输出信息.
2 对称散列加密
指加密和解密的密匙是同一个密匙或者可以互相推算.
3 非对称散列加密
非对称加密和解密的密匙不是同一个密匙, 其中一个对外公开, 被称作公钥, 另一个只有所有者知道.
本文向大家介绍PHP加密解密函数详解,包括了PHP加密解密函数详解的使用技巧和注意事项,需要的朋友参考一下 分享一个PHP加密解密的函数,此函数实现了对部分变量值的加密的功能。 加密代码如下: 解密代码如下: 辅助函数: 使用如下所示: 以上就是为大家分享的php加密解密函数,希望大家喜欢,可以应用到自己的学习中。
本文向大家介绍PHP对称加密函数实现数据的加密解密,包括了PHP对称加密函数实现数据的加密解密的使用技巧和注意事项,需要的朋友参考一下 项目中有一个地方用到了将用户ID加密、传至下个接点进行反解的需求。(原谅我不能透漏太多-_-!),第一个想到的就是康盛Ucenter中的一个函数,后来搜了下,在简明魔法中也找到了个简单的方法,遂整合了下,形成了自己使用的函数。 一、对称加密 发送方将明文使用密钥和
本文向大家介绍详解 PHP加密解密字符串函数附源码下载,包括了详解 PHP加密解密字符串函数附源码下载的使用技巧和注意事项,需要的朋友参考一下 项目中有时我们需要使用PHP将特定的信息进行加密,也就是通过加密算法生成一个加密字符串,这个加密后的字符串可以通过解密算法进行解密,便于程序对解密后的信息进行处理。 下面先给大家展示下效果图,感兴趣的朋友继续阅读全文。 效果演示 源码下载 笔者收录
本文向大家介绍一组PHP加密解密函数分享,包括了一组PHP加密解密函数分享的使用技巧和注意事项,需要的朋友参考一下
本文向大家介绍php常用hash加密函数,包括了php常用hash加密函数的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了php常用hash加密函数。分享给大家供大家参考。具体分析如下: 创建文件以计算哈希值:file_put_contents('example.txt', 'the quick brown fox jumped over the lazy dog.'); 输出哈希值信息:
本文向大家介绍PHP封装的字符串加密解密函数,包括了PHP封装的字符串加密解密函数的使用技巧和注意事项,需要的朋友参考一下 程序中经常使用的PHP加密解密字符串函数 代码如下: 使用方法: 非常给力的authcode加密函数,Discuz!经典代码(带详解): 函数authcode($string, $operation, $key, $expiry)中的$string:字符串,明文或密文;$op
本文向大家介绍PHP使用内置函数生成图片的方法详解,包括了PHP使用内置函数生成图片的方法详解的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了PHP使用内置函数生成图片的方法。分享给大家供大家参考,具体如下: 第一步:创建图片 新建一个php文件,命名为new-image.php(你可以任意命名,方便后面的调用就行)。 php中有两个函数创建一张图片:mageCreate()创建一张空图片
本文向大家介绍详解PHP数据压缩、加解密(pack, unpack),包括了详解PHP数据压缩、加解密(pack, unpack)的使用技巧和注意事项,需要的朋友参考一下 网络通信、文件存储中经常需要交换数据,为了减少网络通信流量、文件存储大小以及加密通信规则,经常需要对数据进行双向加解密以保证数据的安全。 PHP中实现此功能主要需要使用的函数主要是pack及unpack函数 pack 压缩资料到