PHP加密函数
来源:互联网 发布:春雨国际网络医疗 编辑:程序博客网 时间:2024/05/20 14:26
计应134(实验班) 王锐
在PHP中能对数据进行加密的函数主要有crypt()、md5()、shal(),还有加密扩展库Mcrypt和Mash。
1、使用crypt()加密
crypt()函数可以完成单向加密功能,语法如下:
string crypt(sring str[,string salt]);
其中,参数str是需要加密的字符串;参数salt为加密时使用的干扰串。
例1:
首先声明一个字符串$str,赋值为“This is an example!”,然后使用crypt()函数进行加密并输出。实例代码如下:
<?php
$str ='This is an example!'; //声明字符串变量$str
echo '加密前$str的值为:'.$str;
$crypttostr = crypt($str); //对变量$str加密
echo '<p>加密后$str的值为:'.$crypttostr; //输出加密后的变量
?>
运行结果如图1.1所示。
图1.1使用crypt()函数进行加密
例2
对输入的用户名进行检测,如果该用户存在,显示“用户名已存在。”;否则显示“恭喜您:用户名可以使用!”。实例代码如下:
<?php
/* 数据库连接 */
$conn = mysql_connect("localhost","root","root") or die("数据库链接错误".mysql_error());
mysql_select_db("db_database15",$conn) or die("数据库访问错误".mysql_error());
mysql_query("set names gb2312");
?>
<form id="form1" name="form1" method="post" action="">
<table border="0" cellpadding="0" cellspacing="0">
<tr>
<td width="100" height="30" align="right" valign="middle" scope="col">用户名:</td>
<td width="100" height="30" align="left" valign="middle" scope="col"><label for="textfield"></label>
<input name="username" type="text" id="username" size="15" /></td>
<td width="100" align="center" valign="middle" scope="col"><input type="submit" name="Submit" value="检查" id="Submit" /></td>
</tr>
</table>
</form>
<?php
if(trim($_POST[username]) != ""){ //trim()函数去掉字符串两边的空格
$usr = crypt(trim($_POST[username]),"tm"); //对用户名进行加密
$sql = "select * from tb_user where user = '".$usr."'"; //生成查询语句
$rst = mysql_query($sql,$conn); //执行语句,返回结果集
if(mysql_num_rows($rst) > 0){ //如果结果集大于0
echo "<font color='red'>用户名已存在。</font>"; //说明用户存在
}else{ //否则说明该用户名可用
echo "<font color='green'>恭喜您:用户名可以使用!</font>";
}
}
?>
2、使用md5()函数进行加密
md5()函数使用MD5算法。MD5的全称是Message-Digest Algorithm 5(信息-摘要算法),她的作用是把不同长度的数据信息经过一系列的算法计算成一个128位的数值,即把一个任意长度的字节串变换成一定长的大整数。注意这里是“字节串”而不是“字符串”,因为这种变换只与字节的值有关,与字符集或编码方式无关。md5()函数的格式如下:
string md5(string str[, bool raw_output]);
其中,字符串str为要加密的明文,raw_output参数如果设为true,则函数返回一个二进制形式的密文,该参数默认为false。
3、使用sha1()函数进行加密
和MD5类似的还有SHA全称为Secure Hash Algorithm(安全哈希算法),PHP提供sha1()函数使用的就是SHA算法,函数对的语法如下:
string sha1(string str[, bool raw_output])
函数返回一个40位的十六进制数,如果参数raw_output为true,则返回一个20位的二进制数。默认raw_output为false。
例3:
对一字符串分别进行MD5和SHA加密运算,实例代码如下:
<?
php echo md5('PHPER'); //使用md5()函数加密字符串PHPER
php echo sha1('PHPER); //使用sha1()函数加密字符串PHPER
?>
MD5加密运算和SHA加密运算字符串的对比效果图如图3.1所示。
图3.1 使用md5()和sha1()函数的效果对比
- PHP 加密解密函数
- php加密函数
- PHP常用加密函数
- PHP加密解密函数
- PHP加密解密函数
- PHP加密解密函数
- PHP加密函数
- PHP加密函数
- PHP加密函数
- php加密函数
- php加密函数使用
- php 加密函数
- PHP常用加密函数
- php可逆加密函数
- php加密函数使用
- php加密函数
- PHP中密码加密函数
- 求php md5 加密函数
- maven在myeclipse下运行mvn出现 No goals have been specified for this build.
- C++设计模式之抽象工厂模式(改编自C++设计模式)
- Linux驱动基础知识笔记一
- 安卓系统使用摄像头API
- Java——IO流(一)
- PHP加密函数
- Java获取文件路径/项目路径的方式
- 学习笔记cocos2d-x之项目分析
- HDFS 源码 常识
- 九度OJ 1198:a+b (大数运算)
- 关于Eclipse如何加入Gradle文件与Android Studio两个平台一起开发,工作目录不发生变化
- Oracle exp/imp,备份或导入时注意的事项:
- int型变量占多少个字节?
- C# winform 判断日期大小 比较日期大小