SHA-256 a SHA-512 nad úplne rovnakým vstupom
Do vloženého nástroja SHA-256 napíšte MultiVerto presne s uvedenými veľkými písmenami a bez medzier na začiatku či konci. Jeho hexadecimálny odtlačok začína ae71dfc48b890921 a končí c68938f7185915aa. Otvorte prepojený nástroj SHA-512 a zadajte rovnakých desať znakov. Tento výsledok začína cacbdf4e6ceeaa77 a končí b71e458c3b7209d9. Ide o dva rozdielne algoritmy, nie o dve dĺžky zobrazenia jedného odtlačku. Ak vám vyjde iná hodnota, skontrolujte presné vstupné bajty. Skopírovaný znak nového riadku, medzera, zmenené veľké písmeno alebo odlišné kódovanie zmenia hash. Web zakóduje text do UTF-8 a výpočet vykoná prehliadač. Pre opakovateľnú kontrolu si zapíšte názov algoritmu, presný vstup a informáciu, či k nemu patrí koncový nový riadok. Z odtlačku sa pôvodný text nedá dešifrovať.
Prečo má výstup 64 alebo 128 hexadecimálnych znakov
Norma FIPS 180-4 stanovuje pre SHA-256 výstup s 256 bitmi a pre SHA-512 výstup s 512 bitmi. Jeden hexadecimálny znak vyjadruje štyri bity, preto bežný zápis používa 64 znakov pri SHA-256 a 128 znakov pri SHA-512. Dlhší zápis zaberie v tejto podobe dvakrát viac miesta. To však neznamená, že SHA-512 je SHA-256 s pridanými znakmi; líši sa aj vnútorný výpočet. Zistite, aký formát očakáva prijímajúci systém. Ak manifest, rozhranie API alebo pole databázy vyžaduje SHA-256, výsledok SHA-512 sa s ním nebude zhodovať ani pri správne spracovaných rovnakých bajtoch. Odlišujte čistý odtlačok od formátu, ktorý obsahuje aj označenie algoritmu, soľ alebo podpis. Takéto doplnkové časti treba čítať podľa ich vlastnej špecifikácie.
- Presný text MultiVerto bez nového riadku
- Bajty UTF-8 v prehliadači
- SHA-256 → 64 hexadecimálnych znakov
- SHA-512 → 128 hexadecimálnych znakov
Integritu kontrolujte podľa dôveryhodnej referencie
Predstavte si, že vydavateľ poskytne dôveryhodný odtlačok SHA-256 k súboru na stiahnutie. Vypočítajte SHA-256 zo skutočných bajtov stiahnutého súboru a porovnajte všetkých 64 znakov, nie iba úvod a koniec z nášho príkladu. Zhoda silno naznačuje, že kontrolované bajty zodpovedajú bajtom reprezentovaným referenciou. Rovnako môžete použiť SHA-512, ale iba ak vydavateľ dodal referenciu SHA-512. MultiVerto v tomto nástroji hashuje text zadaný do poľa. Na kontrolu súboru potrebujete nástroj, ktorý spracuje jeho presné bajty; vloženie názvu súboru nestačí. Referenčný hash získajte dôveryhodným spôsobom. Ak útočník dokáže vymeniť súbor aj zverejnený odtlačok, samotné porovnanie hashu bez kľúča neoveruje totožnosť vydavateľa. Na túto inú úlohu slúži napríklad digitálny podpis alebo autentifikovaný kanál.
Rozhodujte podľa bezpečnosti aj kompatibility
Oba algoritmy sú štandardizované funkcie rodiny SHA-2. Kolízia znamená, že dva odlišné vstupy majú rovnaký odtlačok. Ak sa váš vypočítaný odtlačok nezhoduje s referenciou, zvyčajne sa líšia vstupné bajty alebo zvolený algoritmus. Dlhší výstup SHA-512 poskytuje väčšiu teoretickú rezervu proti kolíziám, no samotná dĺžka neurčuje bezpečnosť celého systému. Dôležitý je aj protokol, požadovaný formát, výkon v konkrétnom prostredí a platné požiadavky. Nemeňte zavedený formát kontrolných súčtov SHA-256 na SHA-512 iba preto, že 128 znakov pôsobí bezpečnejšie. Pri novom postupe, kde sú prípustné oba algoritmy, rozhodnutie zdokumentujte a otestujte na reálnych údajoch. Priame porovnanie hodnoty SHA-256 s hodnotou SHA-512 nepreukazuje zmenu vstupu; výsledky sa nevyhnutne líšia.
Samotný rýchly hash neukladá heslá bezpečne
Čistý odtlačok SHA-256 alebo SHA-512 sa počíta rýchlo. Pri kontrole integrity je to užitočné, ale zlodej databázy hesiel môže vďaka tomu skúšať veľké množstvo tipov za krátky čas. OWASP odporúča na heslá špecializované adaptívne algoritmy so soľou, napríklad Argon2id; ďalšie možnosti závisia od nasadenia. Výber SHA-512 alebo dvojnásobné použitie rýchleho hashu z neho neurobí správny spôsob overovania hesiel. Hashovanie nie je šifrovanie: nemá dešifrovací kľúč, no predvídateľný vstup možno skúšať odhadovaním. MultiVerto počíta tieto textové hashe lokálne v prehliadači a vstup na konverziu neodosiela. Napriek tomu nevkladajte skutočné prevádzkové heslá do ukážkového postupu; používajte schválený systém danej aplikácie. K uloženému kontrolnému súčtu pridajte názov algoritmu, aby budúce porovnanie dávalo zmysel.