crypt() 함수는 DES, Blowfish 또는 MD5 알고리즘을 사용하여 암호화된 문자열을 반환합니다.
이 함수는 운영 체제에 따라 다르게 작동하며 일부 운영 체제에서는 둘 이상의 알고리즘 유형을 지원합니다. 설치 시 PHP는 어떤 알고리즘을 사용할 수 있는지, 어떤 알고리즘이 사용되는지 확인합니다.
특정 알고리즘은 솔트 매개변수의 형식과 길이에 따라 다릅니다. Salt는 특정 암호화 방법을 사용하여 특정 문자열에 의해 생성된 문자열 수를 늘려 암호화를 더욱 안전하게 만들 수 있습니다.
이 글에서는 주로 PHP가 crypt() 함수를 사용하여 암호화하는 방법을 자세히 소개합니다.
1. 코드
<?php $str = '应用crypt()函数进行单向加密!'; //声明字符串变量$str echo '加密前$str的值为:'.$str; $crypttostr = crypt($str); //对变量$str加密 echo '<p>加密后$str的值为:'.$crypttostr; //输出加密后的变量 ?
2. 실행 결과
솔트가 없는 매개변수, 각 암호화 결과 암호문은 모두 다른.
암호화 전 $str 값: 단방향 암호화를 위한 crypt() 함수 적용
암호화 후 $str 값: $1$Re4.Gg4.$D.yd00xX0fFfIfp6KrKGN0
3.
<!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>使用crypt函数进行数据验证</title> <style type="text/css"> <!-- body,td,th { font-size: 12px; } body { margin-left: 10px; margin-top: 10px; margin-right: 10px; margin-bottom: 10px; } .STYLE1 { font-size: 14px; font-weight: bold; } --> </style> </head> <body> <p align="center"> <?php $conn = mysql_connect("localhost","root","root") or die("数据库链接错误".mysql_error()); mysql_select_db("db_database21",$conn) or die("数据库访问错误".mysql_error()); mysql_query("set names gb2312"); ?> </p> <table width="777" height="587" border="0" align="center" cellpadding="0" cellspacing="0" background="images/bg.jpg"> <tr> <td width="149" height="200"> </td> <td width="448"> </td> <td width="158"> </td> </tr> <tr> <td height="187"> </td> <td align="center" valign="middle"> <form id="form1" name="form1" method="post" action="index.php"> <table height="129" border="0" cellpadding="0" cellspacing="0"> <tr> <td width="100" height="30" align="right" valign="middle" scope="col"><span class="STYLE1">用户名:</span></td> <td width="100" height="30" align="left" valign="middle" scope="col"><label for="textfield"></label> <input name="username" type="text" id="username" size="24" /></td> <td width="100" align="center" valign="middle" scope="col"> </td> </tr> <tr> <td height="30" align="right" valign="middle" class="STYLE1" scope="col">密码:</td> <td height="30" align="left" valign="middle" scope="col"><input name="password" type="password" id="password" size="25" /></td> <td align="center" valign="middle" scope="col"> </td> </tr> <tr> <td height="40" colspan="3" align="center" valign="middle" scope="col"><input type="image" name="imageField" src="images/bg2.JPG" /> <input type="image" name="imageField2" src="images/bg1.JPG" onclick="form.reset();return false;" /></td> </tr> </table> </form> <?php if(trim($_POST[username])!= "" and trim($_POST[password])!= ""){ $usr = crypt(trim($_POST[username]),$_POST[username]); $pwd = crypt(trim($_POST[password]),$_POST[password]); $sql = "select * from tb_user where username = '".$usr."' and password='".$pwd."'"; $rst = mysql_query($sql,$conn); $result=mysql_num_rows($rst); if($result>0){ echo "<font color='red'>用户登录成功。</font>"; }else{ echo "<font color='green'>用户登录失败!</font>"; } }else{ echo "请认真填写用户名和密码!"; } ?></td> <td> </td> </tr> <tr> <td height="200"> </td> <td> </td> <td> </td> </tr> </table> </body> </html>
4. 운영결과
위 내용은 PHP는 crypt() 함수를 사용하여 샘플 코드를 암호화합니다.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!