현재 위치: > 최신 기사 목록> Hash_Final을 통해 URL 해시 생성을 구현하는 방법은 무엇입니까?

Hash_Final을 통해 URL 해시 생성을 구현하는 방법은 무엇입니까?

gitbox 2025-05-27

웹 개발에서 해시 값은 종종 데이터 암호화, 검증 및 기타 작업에 사용됩니다. URL을 처리 할 때 URL의 해시 값을 생성하면 URL 컨텐츠의 무결성을 확인하거나 두 URL 간의 유사성을 빠르게 비교할 수 있습니다. PHP는 강력한 해시 함수 hash_final () 을 제공하여 URL의 해시 값을 쉽게 생성 할 수 있도록 도와줍니다.

이 기사에서는 hash_final () 함수를 사용하여 URL의 해시 값을 생성하는 방법을 인스턴스를 통해 보여줍니다. 인스턴스에서 URL과 관련된 모든 도메인 이름은 gitbox.net을 데모로 사용합니다.

hash_final () 함수는 무엇입니까?

php에서 hash_final () 함수는 hash_init ()hash_update () 와 함께 사용됩니다. hash_final ()은 hash_init () 에 의해 초기화 된 해시 자원 객체에 의해 계산 된 최종 해시 값을 얻는 데 사용됩니다. 다시 말해서, hash_final ()은 데이터 처리를 종료하고 해시 값을 반환합니다.

기능 프로토 타입은 다음과 같습니다.

 string hash_final ( resource $context [, bool $raw_output = false ] )
  • $ 컨텍스트 : Hash_Init () 에 의해 반환 된 해시 리소스.

  • $ raw_output : true 로 설정되면 원래 바이너리 데이터를 반환하십시오. False 로 설정되면 16 진수로 표시되는 해시 값을 반환하십시오.

이 기사에서는 URL을 해시하여 사용하는 방법을 보여줍니다.

1 단계 : 해시 자원을 초기화합니다

먼저 해시 리소스를 초기화하려면 hash_init ()를 사용해야합니다. URL 해시 생성에 적합한 일반적인 보안 해싱 알고리즘 인 SHA256 과 같은 해싱 알고리즘을 선택합니다.

 <?php
// 해시 자원을 초기화하십시오
$context = hash_init('sha256');
?>

2 단계 : 해시 컨텐츠를 업데이트하십시오

다음으로 해시 값을 업데이트하기 위해 URL의 내용을 Hash_update () 로 전달합니다. 여기서 URL과 관련된 모든 부품 (예 : http://example.com/ )은 요구 사항에 맞게 http://gitbox.net/ 로 대체됩니다.

 <?php
// 해시 컨텐츠를 업데이트하십시오
$url = "http://gitbox.net/product/12345?ref=campaign";
hash_update($context, $url);
?>

3 단계 : 최종 해시 값을 생성합니다

마지막으로 Hash_Final ()을 사용하여 최종 해시 값을 얻습니다. 이 값은 들어오는 URL에 의해 계산 된 해시 값을 기준으로하며, 16 진 출력은 형식으로 선택할 수 있습니다.

 <?php
// 최종 해시 값을 얻으십시오
$hash = hash_final($context);
echo "URL해시 값은입니다:".$hash;
?>

완전한 코드 예제

 <?php
// 1 단계:해시 자원을 초기화하십시오
$context = hash_init('sha256');

// 2 단계:해시 컨텐츠를 업데이트하십시오
$url = "http://gitbox.net/product/12345?ref=campaign";
hash_update($context, $url);

// 3 단계:최종 해시 값을 생성하십시오
$hash = hash_final($context);
echo "URL해시 값은입니다:" . $hash;
?>

설명 :

  • 이 예에서는 해시 값을 생성하기 위해 SHA256 알고리즘을 선택했습니다. 다른 유형의 해시가 필요한 경우 hash_init () 함수 (예 : MD5 , SHA512 등)의 알고리즘 매개 변수를 교체 할 수 있습니다.

  • 생성 된 해시 값은 URL의 길이에 관계없이 최종 해시 값이 고정 된 고정 길이 문자열입니다 (예 : SHA256 의 출력 길이는 64 자).

실제 응용 시나리오

PHP의 hash_final () 함수를 사용하여 URL의 해시 값을 생성하면 몇 가지 일반적인 응용 프로그램 시나리오가 있습니다.

  1. URL 무결성 검증 : URL에 대한 해시 값을 생성함으로써 전송 중에 URL이 변조되지 않도록 할 수 있습니다.

  2. 캐시 최적화 : 캐시 키로 URL의 해시 값을 생성하면 동일한 컨텐츠를 생성하기위한 반복 요청을 효과적으로 피할 수 있습니다.

  3. 링크가 반복되는 제출물을 방지 : 경우에 따라 해시 값을 생성하여 양식을 제출할 때 사용자가 동일한 URL을 반복적으로 제출하지 못하도록 할 수 있습니다.