취약한 키로부터 또다른 키를 만듭니다.
당신이 설정한 암호화 키로부터 encryption key 및 HMAC key를 생성하기 위해 내부적으로 사용됩니다.
다른 범용적 사유로 공개적으로 사용될 수 있습니다.
이점은 "RFC 5869"에 명시되어 있습니다. https://tools.ietf.org/rfc/rfc5869.txt
하지만, "RFC 5869"에서 반대한 것처럼 SHA1을 지원하지 않습니다.
다음은 그 예입니다.
$hmac_key = $this->encryption->hkdf(
$key,
'sha512',
NULL,
NULL,
'authentication'
);
// $hmac_key is a pseudo-random key with a length of 64 bytes
인자
$key (string) - 재료가 되는 입력 키
$digest (string) - SHA-2 다이제스트 알고리즘 세트
$salt (string) - 첨가물 (선택사항)
$length (int) - 출력물 길이 (선택사항)
$info (string) - 지정된 context/application 정보 (선택사항)
return
무작위로 생성된 키 또는 FALSE (실패시)
return type
string