hash_hmac

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

hash_hmac — HMAC 메서드를 사용하여 키 해시 값 생성


설명

hash_hmac(
    string $algo,
    string $data,
    string $key,
    bool $binary = false
): string
                

매개변수

algo
선택한 해싱 알고리즘의 이름(예: "md5", "sha256", "haval160,4" 등). 지원되는 알고리즘 목록은 hash_hmac_algos()를 참조하십시오.
data
해시할 메시지입니다.
key
메시지 다이제스트의 HMAC 변형을 생성하는 데 사용되는 공유 비밀 키입니다.
binary
true로 설정하면 원시 바이너리 데이터를 출력합니다. false는 소문자 16진수를 출력합니다.

반환 값

binary가 true로 설정되어 메시지 다이제스트의 원시 바이너리 표현이 반환되는 경우가 아니면 계산된 메시지 다이제스트를 포함하는 문자열을 소문자 16진수로 반환합니다.


변경 로그

버전 설명
8.0.0 hash_hmac()algo을 알 수 없거나 암호화되지 않은 해시 함수인 경우 ValueError 예외를 발생시킵니다. 이전에는 false가 대신 반환되었습니다.
7.2.0 비암호화 해시 함수(adler32, crc32, crc32b, fnv132, fnv1a32, fnv164, fnv1a64, joaat)의 사용이 비활성화되었습니다.

Examples

예제 #1 hash_hmac() 예제

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

                  
<?php
echo hash_hmac('ripemd160', 'The quick brown fox jumped over the lazy dog.', 'secret');
?>
                  
                

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

b8e7ae12510bdfb1812e463a7f086122cf37e4f7
                

기타

  • hash() - 해시 값 생성(메시지 다이제스트)
  • hash_hmac_algos() - hash_hmac에 적합한 등록된 해싱 알고리즘 목록을 반환합니다.
  • hash_init() - 증분 해시 컨텍스트 초기화
  • hash_hmac_file() - HMAC 메서드와 주어진 파일의 내용을 사용하여 키가 있는 해시 값 생성