> 백엔드 개발 > PHP 튜토리얼 > PHP는 고유한 HASH 값을 무작위로 생성합니다.

PHP는 고유한 HASH 값을 무작위로 생성합니다.

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
풀어 주다: 2016-05-16 20:17:08
원래의
2675명이 탐색했습니다.

인터넷에서 무작위적이고 고유한 HASH 값을 얻는 방법은 여러 가지가 있지만 대부분 동일합니다.

1. 먼저 임의의 고유 문자열을 가져옵니다
2. MD5 또는 sha1을 사용하여 HASH 값을 계산합니다

해시 값을 사용해야 하는 프로젝트가 있어서 온라인으로 검색해 보았는데, PHP에는 고유한 문자열을 직접 생성할 수 있는 함수인 uniqid()가 있다는 것을 알게 되었습니다. 깨지는 것을 방지), 더 독특하고 추측하기 어렵습니다. 고려해야 할 주요 문제는 다음과 같습니다.

1. 무작위 효율성 및 무작위성: rand 및 mt_rand 함수를 선택할 때 효율성이 높고 무작위성이 좋은 mt_rand가 첫 번째 선택입니다. 2. 무작위 횟수: 5번 선택 Unniqid는 원래 고유합니다. 무작위성을 추가하면 보안이 강화됩니다
3. md5 또는 sha1: 둘 다 고유한 해시 값을 생성할 수 있습니다. sha1의 리소스 소비는 더 높을 수 있지만 데이터베이스 저장소의 소문자를 고려하면 md5(32비트 길이)를 사용할 수 있습니다. >

<&#63;php
function get_hash(){
  $chars = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789!@#$%^&*()+-';
  $random = $chars[mt_rand(0,73)].$chars[mt_rand(0,73)].$chars[mt_rand(0,73)].$chars[mt_rand(0,73)].$chars[mt_rand(0,73)];//Random 5 times
  $content = uniqid().$random;  // 类似 5443e09c27bf4aB4uT
  return sha1($content); 
}
echo get_hash();
&#63;>
로그인 후 복사
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿