예
문자열 "Hello"의 MD5 해시 계산:
<?php $str = "Hello"; echo md5($str); ?>
정의 및 사용법
md5() 함수는 문자열의 MD5 해시를 계산합니다.
md5() 함수는 MD5 메시지 다이제스트 알고리즘을 포함한 RSA 데이터 보안을 사용합니다.
RFC 1321 설명 - MD5 메시지 다이제스트 알고리즘: MD5 메시지 다이제스트 알고리즘은 모든 길이의 정보를 입력 값으로 가져와 이를 128비트 길이의 "지문 정보" 또는 "메시지 다이제스트" 값으로 변환합니다. 그리고 변환된 값을 결과로 제공합니다. MD5 알고리즘은 안전한 방식으로 압축하기 전에 RSA와 같은 암호화 시스템(개인 키 설정을 통해 수행됨)에서 공개 키를 사용하여 더 큰 파일을 암호화하는 디지털 서명 응용 프로그램을 위해 주로 설계되었습니다.
파일의 MD5 해시를 계산하려면 md5_file() 함수를 사용하세요.
Syntax
md5(string,raw)
매개변수 설명
string 필수입니다. 계산할 문자열을 지정합니다.
raw 선택사항입니다. 16진수 또는 이진수 출력 형식을 지정합니다.
TRUE - 원시 16자 이진 형식
사용 사용 사용 사용 사용 사용 out out out through off ‐ ‐ ‐ ‐ ‐ 에 출력합니다. 32자의 16진수
기술 세부정보
반환 값: 성공 시 계산된 MD5 해시를 반환하고, 실패 시 FALSE를 반환합니다.
추가 예제
인스턴스 1
md5()의 결과 출력:
<?php $str = "Hello"; echo "The string: ".$str."<br>"; echo "TRUE - Raw 16 character binary format: ".md5($str, TRUE)."<br>"; echo "FALSE - 32 character hex number: ".md5($str)."<br>"; ?>
인스턴스 2
md5()의 결과 출력 및 테스트:
<?php $str = "Hello"; echo md5($str); if (md5($str) == "8b1a9953c4611296a827abf8c47804d7") { echo "<br>Hello world!"; exit; } ?>
一般来说,一个提供会员注册的网站必定需要采集用户的密码,如何保存用户密码就是个问题。我们当然不能将密码以明文的方式储存在数据库中,因为这样的话,一般的管理员就可以查看到用户密码,显然对用户来说是件相当危险的事情。
那如何解决这个问题呢,我们可以采取这样的策略。
首先介绍一下PHP中MD5函数的使用方法:
<?php $pswd1=md5("cenusdesign"); echo $pswd1; //运行结果为:fc60ec37d1c08d5b0fb67a8cd934d5ba $pswd2=md5("Cenusdesign"); echo $pswd2; //运行结果为:067577d9fc109c80538c81d6f02bd293 ?>
显然,经过md5加密后,原本“cenusdesign”转变成了一组32位的字符串,而且,即使是一个字母的大小写变化,这组字符串就会发生巨大的变化。
Cenus Design建议把用户注册时,将密码首先经过MD5转换,然后将转换加密后的数据库。在用户登陆时,也将密码先进行MD5转化,再和数据库中那组经过MD5加密的字符串进行比较。这样,就可以做到在不知道用户确切密码的情况下完成密码的比对操作。
위 내용은 PHP는 문자열의 MD5 해시를 계산합니다.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!