MurmurHash3F калкулатор на хеш код
Публикувано: 18 февруари 2025 г. в 0:27:44 ч. UTC
Калкулатор на хеш код, който използва хеш функцията MurmurHash3F за изчисляване на хеш код въз основа на въвеждане на текст или качване на файл.MurmurHash3F Hash Code Calculator
MurmurHash3 е некриптографска хеш функция, проектирана от Остин Епълби през 2008 г. Тя се използва широко за хеширане с общо предназначение поради своята скорост, простота и добри свойства за разпространение. Функциите MurmurHash са особено ефективни за базирани на хеш структури от данни като хеш таблици, филтри за разцвет и системи за дедупликация на данни.
Вариантът, представен на тази страница, е вариантът 3F, който е оптимизиран за 64-битови системи. Той произвежда 128 бита (16 байта) хеш кодове, обикновено представени като 32-цифрено шестнадесетично число.
Пълно разкритие: не съм написал конкретната реализация на хеш функцията, използвана на тази страница. Това е стандартна функция, включена в езика за програмиране PHP. Направих само уеб интерфейс, за да я направя публично достъпна тук за удобство.
Относно хеш алгоритъма MurmurHash3F
Не съм математик, но ще се опитам да обясня тази хеш функция, като използвам аналогия, която моите колеги не-математици могат да разберат. Ако предпочитате научно правилно, пълно математическо обяснение, сигурен съм, че можете да го намерите другаде ;-)
Сега си представете, че имате голяма кутия LEGO тухли. Всеки път, когато ги подредите по определен начин, правите снимка. Без значение колко голяма или цветна е подредбата, камерата винаги ви дава малка снимка с фиксиран размер. Тази снимка представя вашето LEGO творение, но в компактна форма.
MurmurHash3 прави нещо подобно с данни. Той взема всякакъв вид данни (текст, числа, файлове) и ги свива до малък, фиксиран "пръстов отпечатък" или хеш стойност. Този пръстов отпечатък помага на компютрите бързо да идентифицират, сортират и сравняват данни, без да е необходимо да разглеждат всичко.
Друга аналогия би била като печене на торта и MurmurHash3 е рецептата за превръщането на тази торта в малък кекс (хашиша). Това би бил процес от три стъпки:
Стъпка 1: Нарязване на парчета (Разбиване на данните)
- Първо, MurmurHash3 нарязва вашите данни на равни парчета, като нарязване на тортата на равни квадрати.
Стъпка 2: Смесете като луд (смесване на парчетата)
- Всяко парче преминава през див процес на смесване:
- Обръщане: Като обръщане на палачинка, това пренарежда парчетата.
- Разбъркване: Добавя произволни съставки (математически операции), за да смеси нещата.
- Мачкане: Притиска данните заедно, за да се увери, че нито едно оригинално парче не изпъква.
Стъпка 3: Краен тест за вкус (финализиране)
- След като смеси всички парчета, MurmurHash3 прави едно последно разбъркване, за да гарантира, че дори и най-малката промяна в оригиналните данни напълно ще промени вкуса (хеш).