Llogaritësi i kodit hash Fowler-Noll-Vo FNV1-64
Publikuar: 17 shkurt 2025 në 9:36:28 e pasdites, UTC
Llogaritësi i kodit hash që përdor funksionin hash Fowler-Noll-Vo 1 64 bit (FNV1-64) për të llogaritur një kod hash bazuar në futjen e tekstit ose ngarkimin e skedarit.Fowler-Noll-Vo FNV1-64 Hash Code Calculator
Funksioni hash 64-bit FNV-1 është pjesë e familjes së funksioneve hash Fowler–Noll–Vo (FNV), i krijuar për hash të shpejtë duke ruajtur një shpërndarje të mirë të vlerave hash. Përdoret zakonisht në aplikacione si tabelat hash, shumat e kontrollit dhe kërkimet e të dhënave. Ai prodhon një kod hash 64 bit (8 byte), shpesh i përfaqësuar si një numër heksadecimal 16 shifror.
Zbulimi i plotë: Unë nuk kam shkruar zbatimin specifik të funksionit hash të përdorur në këtë faqe. Është një funksion standard i përfshirë me gjuhën e programimit PHP. E bëra ndërfaqen e uebit vetëm për ta bërë të disponueshme publikisht këtu për lehtësi.
Rreth Algoritmit Hash 64 bit Fowler-Noll-Vo FNV-1
Unë nuk jam matematikan, por do të përpiqem ta shpjegoj këtë funksion hash duke përdorur një analogji që shokët e mi jo-matematicien mund ta kuptojnë. Nëse preferoni një shpjegim të saktë shkencërisht, të frikshëm matematikor, jam i sigurt se mund ta gjeni diku tjetër ;-)
Së pari, le të mendojmë për algoritmin FNV-1 si një recetë për të bërë një smoothie të veçantë. Çdo përbërës që shtoni (si frutat, qumështi ose mjalti) përfaqëson një pjesë të të dhënave - si shkronja, numra apo edhe një skedar të tërë.
Tani, qëllimi është t'i përzieni këta përbërës në një mënyrë shumë specifike, në mënyrë që edhe ndryshimi më i vogël në recetë (si shtimi i një boronicë shtesë) ta bëjë smoothie-n shije krejtësisht të ndryshme. Kështu funksionojnë funksionet hash - ato krijojnë një "shije" (ose vlerë hash) unike për çdo grup unik përbërësish (ose të dhëna hyrëse).
Mënyra se si e bën këtë algoritmi FNV-1 është një proces me shumë hapa:
Hapi 1: Filloni me një bazë (baza e zhvendosjes)
Mendoni për këtë si të derdhni një bazë të veçantë smoothie në blenderin tuaj. Kjo bazë është gjithmonë e njëjtë, pavarësisht nga përbërësit që shtoni. Në FNV-1, kjo quhet "baza e kompensimit" - vetëm një numër fillestar i zbukuruar.
Hapi 2: Shtoni përbërësit një nga një (përpunimi i të dhënave)
Tani filloni të shtoni përbërësit tuaj, një nga një - le të themi një luleshtrydhe, pastaj një banane, pastaj pak mjaltë. Secila prej tyre përfaqëson një bajt të dhënash.
Hapi 3: Përzierje me një shumëzues sekret (FNV Prime)
Pasi të shtoni çdo përbërës, shtypni butonin e përzierjes, por ja ku është kthesa: blenderi shumëzon gjithçka me një "numër magjik" sekret të quajtur FNV prime. Kjo ndihmon që gjërat të përzihen vërtet mirë.
Hapi 4: Shtoni një Dash of Magic (Operacioni XOR)
Përpara se të shtoni përbërësin tjetër, spërkatni me pak pluhur magjik (ky është operacioni XOR). Është njësoj si ta ktheni shijen në mënyra të papritura, duke siguruar që edhe ndryshimet e vogla të bëjnë një ndryshim të madh.
Hapi 5: Përsëriteni derisa të përfundojë
Ju vazhdoni të përzieni dhe të spërkatni magjinë pas çdo përbërësi të ri derisa të keni përpunuar gjithçka.
Hapi 6: Smoothie përfundimtar (Vlera hash)
Kur të keni mbaruar, derdhni smoothie-n. Shija përfundimtare (vlera hash) është unike për atë kombinim të saktë të përbërësve. Nëse do të kishit shtuar qoftë edhe një boronica shtesë, do të kishte shije krejtësisht të ndryshme.
Versioni i paraqitur këtu është versioni origjinal FNV-1 64 bit. Ekziston gjithashtu një version i përmirësuar 64 bit FNV-1a: Llogaritësi i kodit hash Fowler-Noll-Vo FNV1a-64