hash_init

(PHP 5 >= 5.1.2, PHP 7, PHP 8, PECL hash >= 1.1)

hash_init — 증분 해시 컨텍스트 초기화


설명

hash_init(
    string $algo,
    int $flags = 0,
    string $key = "",
    array $options = []
): HashContext
                

매개변수

algo
선택한 해싱 알고리즘의 이름(예: "md5", "sha256", "haval160,4" 등). 지원되는 알고리즘 목록은 hash_hmac_algos()를 참조하십시오.
flags
해시 생성을 위한 선택적 설정은 현재 HASH_HMAC라는 하나의 옵션만 지원합니다. 지정된 경우 key를 지정해야 합니다.
key
flagsHASH_HMAC가 지정되면 HMAC 해싱 메서드와 함께 사용할 공유 비밀 키를 이 매개변수에 제공해야 합니다.
options
다양한 해싱 알고리즘에 대한 옵션 배열입니다. 현재 MurmurHash 변형은 "seed" 매개변수만 지원합니다.

반환 값

hash_update(), hash_update_stream(), hash_update_file()hash_final()과 함께 사용할 해싱 컨텍스트를 반환합니다.


변경 로그

버전 설명
8.1.0 options 매개변수가 추가되었습니다.
7.2.0 HASH_HMAC에서 비암호화 해시 함수(adler32, crc32, crc32b, fnv132, fnv1a32, fnv164, fnv1a64, joaat)의 사용이 비활성화되었습니다.
7.2.0 리소스 대신 HashContext를 반환합니다.

Examples

예제 #1 증분 해싱 예제

PHP 7.4.0부터 hash_algos()는 다음과 같은 알고리즘 이름 목록을 반환합니다.

                  
<?php
$ctx = hash_init('md5');
hash_update($ctx, 'The quick brown fox ');
hash_update($ctx, 'jumped over the lazy dog.');
echo hash_final($ctx);
?>
                  
                

위의 예는 다음을 출력합니다.

5c6ffbdd40d9556b73a21e63c3e0e904
                

기타

  • hash() - 해시 값 생성(메시지 다이제스트)
  • hash_algos() - 등록된 해싱 알고리즘 목록 반환
  • hash_file() - 주어진 파일의 내용을 사용하여 해시 값 생성
  • hash_hmac() - HMAC 메서드를 사용하여 키 해시 값 생성
  • hash_hmac_file() - HMAC 메서드와 주어진 파일의 내용을 사용하여 키가 있는 해시 값 생성