Miklix

MurmurHash3C 해시 코드 계산기

게시됨: 2025년 2월 18일 오전 12시 34분 6초 UTC

MurmurHash3C 해시 함수를 사용하여 텍스트 입력이나 파일 업로드를 기반으로 해시 코드를 계산하는 해시 코드 계산기입니다.

이 페이지는 가능한 한 많은 사람이 이용할 수 있도록 영어에서 기계 번역되었습니다. 안타깝게도 기계 번역은 아직 완성된 기술이 아니므로 오류가 발생할 수 있습니다. 원하시는 경우 여기에서 영어 원문을 보실 수 있습니다:

MurmurHash3C Hash Code Calculator

MurmurHash3는 2008년 Austin Appleby가 설계한 비암호화 해시 함수입니다. 속도, 단순성, 우수한 분산 특성으로 인해 범용 해싱에 널리 사용됩니다. MurmurHash 함수는 해시 테이블, 블룸 필터, 데이터 중복 제거 시스템과 같은 해시 기반 데이터 구조에 특히 효과적입니다.

이 페이지에 제시된 변형은 3C 변형으로, 3A 변형과 마찬가지로 32비트 시스템에 최적화되어 있습니다. 그러나 3A 변형과 달리 128비트(16바이트) 해시 코드를 생성하며, 일반적으로 32자리 16진수로 표현됩니다.

전체 공개: 이 페이지에서 사용된 해시 함수의 구체적인 구현은 제가 직접 작성하지 않았습니다. PHP 프로그래밍 언어에 포함된 표준 함수입니다. 편의를 위해 웹 인터페이스만 공개하여 여기에서 사용할 수 있도록 만들었습니다.


새 해시 코드 계산

이 양식을 통해 제출된 데이터 또는 업로드된 파일은 요청된 해시 코드를 생성하는 데 걸리는 기간 동안만 서버에 보관됩니다. 결과가 브라우저로 반환되기 전에 즉시 삭제됩니다.

데이터를 입력합니다:



제출된 텍스트는 UTF-8로 인코딩됩니다. 해시 함수는 이진 데이터에서 작동하므로 텍스트가 다른 인코딩으로 되어 있을 때와 결과가 달라집니다. 특정 인코딩으로 된 텍스트의 해시를 계산해야 하는 경우 대신 파일을 업로드해야 합니다.



MurmurHash3C 해시 알고리즘에 대하여

저는 수학자는 아니지만, 수학을 모르는 동료들이 이해할 수 있는 비유를 사용하여 이 해시 함수를 설명하려고 노력할 것입니다. 과학적으로 정확하고 완전한 수학적 설명을 선호한다면, 다른 곳에서 찾을 수 있을 거라고 확신합니다 ;-)

이제, 여러분이 레고 블록이 가득 들어 있는 큰 상자를 가지고 있다고 상상해 보세요. 여러분이 그것들을 특정한 방식으로 배열할 때마다 사진을 찍습니다. 배열이 아무리 크거나 화려하더라도 카메라는 항상 작고 고정된 크기의 사진을 제공합니다. 그 사진은 여러분의 레고 작품을 컴팩트한 형태로 표현합니다.

MurmurHash3는 데이터와 비슷한 작업을 합니다. 모든 종류의 데이터(텍스트, 숫자, 파일)를 가져와 작고 고정된 "지문" 또는 해시 값으로 축소합니다. 이 지문은 컴퓨터가 전체를 볼 필요 없이 데이터를 빠르게 식별, 정렬 및 비교하는 데 도움이 됩니다.

또 다른 비유는 케이크를 굽는 것과 같고 MurmurHash3는 그 케이크를 작은 컵케이크(해시)로 만드는 레시피입니다. 이는 3단계 프로세스입니다.

1단계: 조각으로 자르기(데이터 분할)

  • 먼저, MurmurHash3는 케이크를 똑같은 크기의 사각형으로 자르는 것처럼 데이터를 동일한 크기로 나눕니다.

2단계: 미친 듯이 섞기(덩어리 섞기)

  • 각 작품은 거친 혼합 과정을 거칩니다.
    • 뒤집기: 팬케이크를 뒤집는 것처럼 조각을 다시 배열합니다.
    • 교반: 무작위적인 재료(수학적 연산)를 첨가하여 섞는 작업입니다.
    • 스퀴싱: 데이터를 눌러 원래 부분이 튀어나오지 않도록 합니다.

3단계: 최종 맛 테스트(Finalization)

  • MurmurHash3는 모든 청크를 섞은 후, 원본 데이터에 아주 작은 변화가 생겨도 맛(해시)이 완전히 바뀌도록 마지막으로 한 번 더 저어줍니다.

블루스카이에서 공유하기페이스북에서 공유하기LinkedIn에서 공유하기Tumblr에 공유하기X에서 공유LinkedIn에서 공유하기Pinterest에 고정

미켈 방 크리스텐슨

저자 소개

미켈 방 크리스텐슨
남자 이름은 miklix.com의 창시자이자 소유자입니다. 전문 컴퓨터 프로그래머/소프트웨어 개발자로 20년 이상 경력을 쌓았으며 현재 유럽의 대형 IT 기업에서 정규직으로 근무하고 있습니다. 블로그를 운영하지 않을 때는 여가 시간을 다양한 관심사, 취미, 활동으로 보내며 이 웹사이트에서 다루는 다양한 주제에 어느 정도 반영되어 있습니다.