Kryptografická hašovacia funkcia
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 [1].
Vlastnosti
upraviťOkrem vlastností hašovacej funkcie musí kryptografická hašovacia navyše spĺňať:[2]
- 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
upraviťKryptografické hašovacie funkcie
upraviť- Message-Digest algorithm (MD)
- Secure Hash Algorithm (SHA)
- RACE Integrity Primitives Evaluation Message Digest (RIPEMD)
- Whirlpool
- HAVAL
- PANAMA
- Tiger
Kľúčované hašovacie funkcie
upraviťPoužitie hašovacej funkcie s tajným symetrickým kľúčom, napríklad HMAC.
Príklady
upraviť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
upraviť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.[3][4][5] 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[6] 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.[7][8] 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
upraviťReferencie
upraviť- ↑ SHA1 Deprecation: What You Need to Know
- ↑ Hašovacie funkcie a overenie integrity z referenčnej Handbook of Applied Cryptography
- ↑ Proof Of Work Explained. www.publish0x.com. Dostupné online [cit. 2023-09-27].
- ↑ Commonly Used Blockchain Terms And Their Definitions. rihusoft.com. Dostupné online [cit. 2023-09-27].
- ↑ Alternatives to Proof of Work. cryptomorrow.com. Dostupné online [cit. 2023-09-27].
- ↑ Proof-of-Work Consensus Algorithm in Crypto and Blockchain, Explained. changelly.com. Dostupné online [cit. 2023-09-27].
- ↑ Which of the following defeats the purpose of securing the correct in text. vdanang.com. Dostupné online [cit. 2023-09-27]. Archivované 2023-09-27 z originálu.
- ↑ Bitcoin: A Peer-to-Peer Electronic Cash System. fermatslibrary.com. Dostupné online [cit. 2023-09-27].