PHP常见加密函数用法示例【crypt与md5】
本文实例讲述了PHP常见加密函数用法。分享给大家供大家参考,具体如下:
1.crypt()函数
crypt()
函数用于返回使用DES、Blowfish或MD5算法加密过后的字符串,crypt(str,salt)接受2个参数,第1个为需要加密的字符串,第2个为盐值(加密干扰值,如果没有提供,则默认由PHP自动生成),返回的字符串为散列的字符串或者是一个少于13个字符的字符串;
<?php
//使用crypt()函数进行加密
$password = 'zalou.cn';
//没有提供盐值
echo "加密前:".$password;
echo "加密后(无盐值):".crypt($password);
echo "<hr ";
//提供盐值
$salt = "good";
echo "加密后(有盐值):".crypt($password,$salt);
?
加密的字符串为“zalou.cn”:
第一次:
刷新后:
总结:通过刷新前与刷新后可以发现,crypt()函数如果没有盐值加密后的字符串的第2个与第3个之间的字符串的8个字符串是由PHP自动生成的,每刷新一次就变一次;crypt()函数如果定义了盐值后,只会截取盐值的前2位添加在加密后的字符串前且加密后的字符串是不变的。
注意:crypt()函数是一种单向算法,没有相应的解密函数。PHP添加盐值默认使用DES加密,如果salt这个字符串以1开头,以
2.md5()函数
MD5函数格式:md5(string)
,返回一个32位的字符串,且MD5加密对于大小写敏感;MD5加密主要应用在校验网站用户密码上,用户注册时的密码经过MD5计算后存入数据库,当用户登录时,再把用户输入的密码经过MD5计算后与数据库中经过MD5加密的字符串进行比较。
<?php
//使用md5()函数进行加密
$password = 'zalou.cn';
echo "加密前:".$password;
echo "<hr ";
echo "MD5加密后:".md5($password);
?
结果如下:
PS:关于加密解密感兴趣的朋友还可以参考本站在线工具:
文字在线加密解密工具(包含AES、DES、RC4等): http://tools.zalou.cn/password/txt_encode
MD5在线加密工具: http://tools.zalou.cn/password/CreateMD5Password
在线散列/哈希算法加密工具: http://tools.zalou.cn/password/hash_encrypt
在线MD5/hash/SHA-1/SHA-2/SHA-256/SHA-512/SHA-3/RIPEMD-160加密工具: http://tools.zalou.cn/password/hash_md5_sha
在线sha1/sha224/sha256/sha384/sha512加密工具: http://tools.zalou.cn/password/sha_encode
更多关于PHP相关内容感兴趣的读者可查看本站专题:《php加密方法总结》、《PHP编码与转码操作技巧汇总》、《PHP数学运算技巧总结》、《PHP数组(Array)操作技巧大全》、《php字符串(string)用法总结》、《PHP数据结构与算法教程》、《php程序设计算法总结》及《php正则表达式用法总结》
希望本文所述对大家PHP程序设计有所帮助。
- Apache NiFi 1.0.0测试版:邮件路由应用新型ListenSMTP
- 为什么我坚持使用 JavaScript 函数声明
- NewSQL数据库大对象块存储原理与应用
- 使用xUnit为.net core程序进行单元测试(下2)
- MongoDB + Spark: 完整的大数据解决方案
- 如何实现自然语言处理的集束搜索解码器
- PostgreSQL 使用advisory lock或skip locked消除行锁冲突, 提高几十倍并发更新效率
- 流动的数据——使用 RxJS 构造复杂单页应用的数据逻辑
- 内存泄漏的检测、解决、防止
- 大数据Hadoop快速入门教程
- 用Rust解决C语言的隐患
- GAN学习指南:从原理入门到制作生成Demo
- 从糖尿病监测看智能医疗发展
- Apache Beam:下一代的数据处理标准
- php概述
- php教程
- php环境搭建
- PHP书写格式
- php变量
- php常量
- PHP注释
- php数组
- php字符串 string
- PHP整型 integer
- PHP浮点型 float
- php布尔型
- php数据类型之数组
- php数据类型之对象
- php数据类型之null
- php数据类型之间的转换
- php运算符
- php表达式
- PHP循环控制
- PHP流程控制
- php函数
- php全局变量
- PHP魔术变量
- php命名空间
- php 日期
- PHP包含文件
- php文件
- PHP 文件上传
- php Cookies
- php Sessions
- php email
- php安全email
- php错误处理
- PHP异常处理
- php过滤器
- PHP 高级过滤器
- php json
- php 表单
- PHP MySQL 简介
- PHP 连接 MySQL
- php创建数据库
- php 创建表
- php mysq 插入数据
- PHP MySQL 插入多条数据
- PHP MySQL 预处理语句
- php mysql 读取数据
- php mysql where
- PHP MySQL Order By
- PHP MySQL Update
- PHP MySQL Delete
- php ODBC
- keras topN显示,自编写代码案例
- PHP实现的杨辉三角求解算法分析
- PHP levenshtein()函数用法讲解
- PHP DB 数据库连接类定义与用法示例
- PHP添加PNG图片背景透明水印操作类定义与用法示例
- 浅谈PHPANALYSIS提取关键字
- 详解PHP队列的实现
- PHP lcfirst()函数定义与用法
- Qt音视频开发38-USB摄像头解码linux方案
- python3 简单实现组合设计模式
- 基于django2.2连oracle11g解决版本冲突的问题
- 浅谈php使用curl模拟多线程发送请求
- PHP模型Model类封装数据库操作示例
- 解决django migrate报错ORA-02000: missing ALWAYS keyword
- PHP封装的数据库模型Model类完整示例【基于PDO】