MD5
Hash funtzio kriptografikoa, “hash” izenez ere ezagutzen dena, algoritmo matematiko bat da, edozein datu-bloke arbitrario luzera jakin bateko beste karaktere-sail bat bihurtzen dituena. Sarrera-datuen luzera edozein dela ere, irteerako hash balioak luzera bera izango du beti. Era horretako funtzio kriptografikoak asko erabiltzen dira informatikan. Hauek dira haien funtzio ezagunenak: pasahitzak modu seguruan gordetzea, fitxategiak modu unibokoan detektatzea eta informazioa trukatzean mezuaren osotasuna gorde dela ziurtatzea.
Funtzio kriptografiko horietako bat MD5 da. 5 Mezu Laburpenaren Algoritmoaren ingeleseko laburtzapenetik dator izena. Hash funtzio hori mundu osoan erabilienetakoa izan zen. Ronald Rivest-ek garatu zuen algoritmo hori 1995ean, eta aurreko bi algoritmotan oinarrituta dago: MD2 eta MD4. Bai MD5 eta bai haren aurrekoek 128 bit sortzen dituzte edozein luzeratako testu batetik abiatuta.
MD4 1990ean argitaratu zen MD2ren errendimendua hobetzeko; hala ere, segurtasun-arazo ugari detektatu ziren, eta 1996an orain arte MD4 algoritmoa erabilezin bihurtzen duen informazioa argitaratu zen. MD5ek algoritmo kriptografiko hori ordeztu zuen, eta errendimendu txikiagoa izan arren, azkenean sendoagoa zen, gaur egun ez baitago bere osotasunari eta funtzionamenduari buruzko informaziorik argitaratuta. Dagoeneko “hautsitzat” jotzen den arren eta 2008an MD6rekin hobetu bazen ere, bertsio hau erabiltzen ari da oraindik ere. Horrez gain, aipatu behar da segurtasun informatikoan erabilitako edozein algoritmok iraungitze-data izango duela, eta itxura guztien arabera hurrengo urteetan MD5 funtzio kriptografikoak hash algoritmoen artean duen hegemonia galduko du.
MD5 mezua luzera jakin batera arte betetzen hasten da, eta prozesatu nahi den mezuarekin betetzeko behar den lekua uzten du amaierako zatian. Ondoren, hainbat algoritmo erabiltzen dira blokeak prozesatzeko eta memoria-bufferreko hainbat daturekin nahasteko, eta azken emaitza gisa 128 biteko laburpen-mezu bat ematen dute. Prozesu honetan informazioa suntsitzen da, eta, beraz, tarteko galera hori dela-eta, ezin da mezuaren aurreko edukia berreskuratu.
MD5 ez da zifratze-konponbide bat, baizik eta norabide bakarreko hash funtzio bat; ez dago testua berreskuratzeko modu argirik hashetik aurrera. Hau da, ezin da deszifratu, eta horren ondorioz ezin da erabili mezuak transferitzeko, baina prozesua zifratzeko eduki berarekin errepikatzen bada, zehazki MD5 hash bera bihurtzen da, prozesatu ondoren, eta, beraz, oso baliagarria da eduki baten trukaezintasuna balidatzeko.
Jatorrizko balioa berreskuratzeko metodorik errazena testu-kate bat sortuko duen indar handiko eraso baten bidez egiten da; MD5en zifratuko du, eta haren emaitza deszifratu nahi denarekin konparatuko da, bat-etortze bat lortu arte. Hortaz, hasierako edukiaren konplexutasunaren arabera oso garestia izan daiteke, prozesatzeko behar den denborari eta potentziari dagokienez.
Secure Hash Algorithm (SHA) ere erabiltzen da.