php加密函数

计应134(实验班) 周露玲     

 php中能对数据进行加密的函数只要有crypt()、md5()和shal(),还有加密扩展库Mcrypt和Mash。

      crypt()函数

      crypt()函数可以完成单向加密功能,语法如下:

      string crypt ( string $str [, string $salt ] )

      crypt()接受两个参数,第一个为需要加密的字符串,第二个为盐值(就是加密干扰值,如果没有提供,则默认由PHP自动生成);返回散列后的字符串一个少于 13 字符的字符串,后者为了区别盐值。

      crypt()为单向加密,没有逆向解密算法,但是还是可以对一些常见的字符串通过收集,枚举,碰撞等方法破解

       <?php
          $str ='This is an example!';     //声明字符串变量$str
          echo '加密前$str的值为:'.$str;
          $crypttostr = crypt($str);      //对变量$str加密
          echo '<p>加密后$str的值为:'.$crypttostr;  //输出加密后的变量
       ?> 

        运行结果如图所示:

       

      md5()函数

      md5()和crypt()一样为单向加密,md5()函数的格式如下:

      string md5 ( string $str [, bool $raw_output = false ] )

      md5()默认情况下以 32 字符十六进制数字形式返回散列值,它接受两个参数,第一个为要加密的字符串,第二个为raw_output的布尔值,默认为false,如果设置为true,md5()则会返回原始的 16 位二进制格式报文摘要

    <?php
     $username='jellybool';
     $password='jellybool.com';
    /*简单地对字符串进行md5加密*/
     echo md5($username);
     echo "<hr>";
     echo md5($password);
     echo "<hr>";
   /*更推荐的做法是对重要的敏感数据进行多次加密,以防被轻易破解*/
     echo md5(md5($password));

      ?>

       sha1()函数

       和MD5类似的还有SHA算法。SHA全称为Secure Hash Algorithm(安全哈希算法),PHP提供的sha1()函数使用的就是SHA算法,函数的语法如下:

       string sha1 ( string $str [, bool $raw_output = false ]

       函数返回一个40位的十六进制数,如果参数raw_output为true,则返回一个20位的二进制数。默认raw_output为false。

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>使用md5()和sha1()函数进行加密</title>
<style type="text/css">
<!--
body,td,th {
 font-size: 12px;
}
body {
 margin-left: 10px;
 margin-top: 10px;
 margin-right: 10px;
 margin-bottom: 10px;
}
-->
</style></head>
<body>
<div align="center">
<table border="1" cellspacing="0" cellpadding="0">
  <tr>
    <td height="30" colspan="2" align="center" valign="middle" scope="col"><?php echo 'md5()和shal()函数的对比效果'; ?></td>
  </tr>
  <tr>
    <td width="200" height="30" align="right" valign="middle"><?php echo '使用md5()函数加密字符串PHPER:' ?></td>
    <td width="200" height="30" align="center" valign="middle"><?php echo md5('PHPER'); ?></td>
  </tr>
  <tr>
    <td width="200" height="30" align="right" valign="middle"><?php echo '使用shal()函数加密字符串PHPER:'; ?></td>
    <td width="200" height="30" align="center" valign="middle"><?php echo sha1('PHPER');  ?></td>
  </tr>
</table>
</div>
</body>
</html>

运行结果如图所示:

 


 

       

posted @ 2015-10-25 16:58  zhoululing  阅读(190)  评论(0编辑  收藏  举报