Kryptografisia tiivisteitä käytetään jokapäiväisessä elämässä, kuten digitaalisissa allekirjoituksissa, viestien todennuskoodeissa, manipuloinnin havaitsemisessa, sormenjäljissä, tarkistussummissa (viestien eheyden tarkistus), hash-taulukoissa, salasanan tallennuksessa ja paljon muuta. Niitä käytetään myös viestien lähettämiseen verkon yli turvallisuuden vuoksi tai viestien tallentamiseen tietokantoihin.
On monia hash-funktioita määritelty hashlib kirjasto pythonissa. Tämä artikkeli käsittelee MD5-hajautuksen selitystä ja toimintaa.
Tämä hash-funktio hyväksyy tavujen sarjan ja palauttaa 128-bittinen hash-arvo , jota käytetään yleensä tietojen eheyden tarkistamiseen, mutta siinä on turvallisuusongelmia. Liittyvät toiminnot:
- encode() : Muuntaa merkkijonon tavuiksi hash-funktion hyväksymiseksi. digest() : Palauttaa koodatun tiedon tavumuodossa. hexdigest() : Palauttaa koodatut tiedot heksadesimaalimuodossa.
Huomautus:
Md5-kirjasto oli Python-kirjasto, joka tarjosi yksinkertaisen käyttöliittymän MD5-tiivisteiden luomiseen.
Tämä kirjasto on poistettu käytöstä hashlib-kirjaston hyväksi, joka tarjoaa joustavamman ja turvallisemman käyttöliittymän tiivisteiden luomiseen.
Alla oleva koodi esittelee MD5-hajautusjärjestelmän toimintaa, joka hyväksyy tavut ja tulosteen tavuina.
Python 3
rivi autocad-komento
...javalla
# Python 3 code to demonstrate the> # working of MD5 (byte - byte)> import> hashlib> # encoding techcodeview.com using md5 hash> # function> result> => hashlib.md5(b> 'techcodeview.com'> )> # printing the equivalent byte value.> print> ('The byte equivalent of> hash> is> : ', end> => '')> print> (result.digest())> |
java-luokan esimerkki
>
>
Lähtö:
The byte equivalent of hash is : b'xf1xe0ix~xcetSx1dx11%Yx94hq'>
Selitys : Yllä oleva koodi vie tavun, ja hash-funktio voi hyväksyä sen. Md5-hajautusfunktio koodaa sen ja sitten tulostetaan digest()-koodatun merkkijonon avulla.
Alla koodi osoitti, kuinka merkkijono otetaan koodatun arvon tulo- ja ulostuloheksadesimaalivastineeksi.
Python 3
xml kommentti
# Python 3 code to demonstrate the> # working of MD5 (string - hexadecimal)> import> hashlib> # initializing string> str2hash> => 'techcodeview.com'> # encoding techcodeview.com using encode()> # then sending to md5()> result> => hashlib.md5(str2hash.encode())> # printing the equivalent hexadecimal value.> print> ('The hexadecimal equivalent of> hash> is> : ', end> => '')> print> (result.hexdigest())> |
java luontiluettelo
>
>
Lähtö:
The hexadecimal equivalent of hash is : f1e069787ece74531d112559945c6871>
Selitys : Yllä oleva koodi ottaa merkkijonon ja muuntaa sen tavuvastineeksi käyttämällä encode() -toimintoa, jotta hash-funktio voi hyväksyä sen. Md5-hajautusfunktio koodaa sen ja sitten tulostetaan heksadesimaalivastaava koodattu merkkijono käyttämällä hexdigest(:tä).