Kryptografická hašovacia funkcia je hašovacia funkcia používaná v kryptografii. Kritéria kladené na jej bezpečnosť ju robia vhodnou na použitie v rozličných aplikáciách informačnej bezpečnosti, akými sú napr. autentifikácia či integrita správ.

Dve v súčasnosti najpoužívanejšie kryptografické hašovacie funkcie sú MD5 (Message-digest 5) a SHA1 (Secure hash algorithm 1). V roku 2005 boli nájdené v oboch bezpečnostné nedostatky. V súčasnosti sa odporúča použivať SHA2, napriklad SHA256 SHA1 Deprecation: What You Need to Know.

Vlastnosti Okrem vlastností hašovacej funkcie musí kryptografická hašovacia navyše spĺňať:Hašovacie funkcie a overenie integrity z referenčnej Handbook of Applied Cryptography Jednocestnosť – funkcia musí byť jednocestná, t. j. inverznú funkciu ťažko nájsť. Teda iba znalosť výstupu nijak nevedie k znalosti vstupného textu. Pre dané ľahko spočítať , pre dané ťažko spočítať . Silná bezkolíznosť – ak nie je možné v rozumnom čase nájsť akýkoľvek pár vstupov tak, aby nastala kolízia. Nájsť ľubovoľné , , aby platilo . Slabá bezkolíznosť – ak nie je možné v rozumnom čase k danému vstupu nájsť vstup iný tak, aby nastala kolízia. Pre dané nájsť také , ≠ , aby platilo .

Implementácie Kryptografické hašovacie funkcie Message-Digest algorithm (MD) Secure Hash Algorithm (SHA) RACE Integrity Primitives Evaluation Message Digest (RIPEMD) Whirlpool HAVAL PANAMA Tiger

Kľúčované hašovacie funkcie Použitie hašovacej funkcie s tajným symetrickým kľúčom, napríklad HMAC.

Príklady Príklady výstupov (hašov) niektorých kryptografických hašovacích funkcií z krátkeho textového reťazca (na porovnanie s kontrolným súčtom CRC32). Malá zmena vstupu spôsobuje lavínovité zmeny vo výstupe: vstup: Vyhlasujem, že ti dlhujem 100 výstup: MD5 fbe8e3408311811c0d182d0193a03a62 SHA-1 68741d0244e8ce0989af154977ce037c7c75a32e SHA-256 da3292bf01f1a5a37ffd1c8650430c3a65766205bad2faac1e1a7ab1d23ccc88 RIPEMD160 01b5e2da3697a5759d7848e697b1415aeb6e082d CRC32 46b88aaa

vstup: Vyhlasujem, že ti dlhujem 900 výstup: MD5 42e4bf834247c94795911ef86b8817e3 SHA-1 6f6baee4bf87762435f0e245a94c478cbf3d97df SHA-256 bfbcd7dbd3ff2b8f6b59142ad352136d70e53ec13c1b263dae685ca3fb46ded5 RIPEMD160 41392a069ce0a3b58062bbf66f9f528502d3c046 CRC32 48abdb12

Kontrola zdravotného stavu Schéma (alebo protokol či funkcia) dôkazu služby je ekonomické opatrenie na zabránenie útokom na odmietnutie služby a inému zneužívaniu služieb, ako je napríklad spam v sieti, ktoré si vyžaduje určitú prácu od osoby požadujúcej službu, čo zvyčajne znamená čas spracovania na počítači. Kľúčovou vlastnosťou týchto systémov je ich asymetria: práca musí byť mierne náročná (ale vykonateľná) pre stranu, ktorá podáva žiadosť, ale ľahko overiteľná pre poskytovateľa služby.Ide o populárny systém používaný pri ťažbe bitcoinov a hash cache, používa čiastočné inverzie hash na preukázanie vykonanej práce, na odomknutie odmien za ťažbu bitcoinov a na znak dobrej vôle na odoslanie e-mailu do hash cache. Odosielateľ musí nájsť správu, ktorej hodnota hash začína niekoľkými nulovými bitmi. Priemerná práca, ktorú musí odosielateľ vykonať na nájdenie platnej správy, závisí exponenciálne od počtu potrebných nulových bitov v hashovacej hodnote, zatiaľ čo príjemca môže overiť platnosť správy vykonaním jedinej hashovacej funkcie.

Pozri aj Kolízie hašovacích funkcií

Referencie

Iné projekty

Kategória:Kryptografia Kategória:Počítačová bezpečnosť Kategória:Hašovanie