• 售前

  • 售后

热门帖子
入门百科

PHP常见加密函数用法示例【crypt与md5】

[复制链接]
朗读者72 显示全部楼层 发表于 2021-10-26 14:32:12 |阅读模式 打印 上一主题 下一主题
本文实例讲述了PHP常见加密函数用法。分享给各人供各人参考,具体如下:
1.crypt()函数
  1. crypt()
复制代码
函数用于返回使用DES、Blowfish或MD5算法加密过后的字符串,crypt(str,salt)继承2个参数,第1个为必要加密的字符串,第2个为盐值(加密干扰值,假如没有提供,则默认由PHP自动生成),返回的字符串为散列的字符串或者是一个少于13个字符的字符串;
  1. <?php
  2. //使用crypt()函数进行加密
  3. $password = 'jb51.net';
  4. //没有提供盐值
  5. echo "加密前:".$password;
  6. echo "加密后(无盐值):".crypt($password);
  7. echo "<hr>";
  8. //提供盐值
  9. $salt = "good";
  10. echo "加密后(有盐值):".crypt($password,$salt);
  11. ?>
复制代码
加密的字符串为“jb51.net”:
第一次:

刷新后:

总结:通过刷新前与刷新后可以发现,
  1. crypt()
复制代码
函数假如没有盐值加密后的字符串的第2个$与第3个$之间的字符串的8个字符串是由PHP自动生成的,每刷新一次就变一次;
  1. crypt()
复制代码
函数假如定义了盐值后,只会截取盐值的前2位添加在加密后的字符串前且加密后的字符串是稳固的。
留意:
  1. crypt()
复制代码
函数是一种单向算法,没有相应的解密函数。PHP添加盐值默认使用DES加密,假如salt这个字符串以$1$开头,以$末了则是MD5加密,只会截取盐值的前八位添加在加密后的字符串前。


2.md5()函数
MD5函数格式:
  1. md5(string)
复制代码
,返回一个32位的字符串,且MD5加密对于巨细写敏感;MD5加密紧张应用在校验网站用户密码上,用户注册时的密码经过MD5计算后存入数据库,当用户登录时,再把用户输入的密码经过MD5计算后与数据库中经过MD5加密的字符串进行比力。
  1. <?php
  2. //使用md5()函数进行加密
  3. $password = 'jb51.net';
  4. echo "加密前:".$password;
  5. echo "<hr>";
  6. echo "MD5加密后:".md5($password);
  7. ?>
复制代码
效果如下:

PS:关于加密解密感兴趣的朋侪还可以参考本站在线工具:
笔墨在线加密解密工具(包含AES、DES、RC4等):
http://tools.jb51.net/password/txt_encode

MD5在线加密工具:
http://tools.jb51.net/password/CreateMD5Password
在线散列/哈希算法加密工具:
http://tools.jb51.net/password/hash_encrypt
在线MD5/hash/SHA-1/SHA-2/SHA-256/SHA-512/SHA-3/RIPEMD-160加密工具:
http://tools.jb51.net/password/hash_md5_sha
在线sha1/sha224/sha256/sha384/sha512加密工具:
http://tools.jb51.net/password/sha_encode
更多关于PHP干系内容感兴趣的读者可查看本站专题:《php加密方法总结》、《PHP编码与转码使用技巧汇总》、《PHP数学运算技巧总结》、《PHP数组(Array)使用技巧大全》、《php字符串(string)用法总结》、《PHP数据结构与算法教程》、《php程序计划算法总结》及《php正则表达式用法总结》
盼望本文所述对各人PHP程序计划有所帮助。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x

帖子地址: 

回复

使用道具 举报

分享
推广
火星云矿 | 预约S19Pro,享500抵1000!
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

草根技术分享(草根吧)是全球知名中文IT技术交流平台,创建于2021年,包含原创博客、精品问答、职业培训、技术社区、资源下载等产品服务,提供原创、优质、完整内容的专业IT技术开发社区。
  • 官方手机版

  • 微信公众号

  • 商务合作