Kryptografiske hashes bruges i hverdagen som i digitale signaturer, meddelelsesgodkendelseskoder, manipulationsdetektion, fingeraftryk, kontrolsummer (tjek af meddelelsesintegritet), hashtabeller, adgangskodelagring og meget mere. De bruges også til at sende beskeder over netværket for sikkerhed eller lagring af beskeder i databaser.
Der er mange hash-funktioner defineret i hashlib bibliotek i python. Denne artikel omhandler forklaring og funktion af MD5-hash.
Denne hash-funktion accepterer sekvens af bytes og returnerer 128 bit hash værdi , bruges normalt til at kontrollere dataintegritet, men har sikkerhedsproblemer. Tilknyttede funktioner:
- encode() : Konverterer strengen til bytes, så den kan accepteres af hash-funktionen. digest() : Returnerer de kodede data i byteformat. hexdigest() : Returnerer de kodede data i hexadecimalt format.
Bemærk:
md5-biblioteket var et Python-bibliotek, der gav en enkel grænseflade til generering af MD5-hash.
Dette bibliotek er blevet forældet til fordel for hashlib-biblioteket, som giver en mere fleksibel og sikker grænseflade til generering af hashes.
Nedenstående kode demonstrerer, hvordan MD5 hash accepterer bytes og output som bytes.
Python3
java anonym funktion
alfabet efter tal
# 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 hello world eksempel
>
Produktion:
The byte equivalent of hash is : b'xf1xe0ix~xcetSx1dx11%Yx94hq'>
Forklaring: Ovenstående kode tager byte og kan accepteres af hash-funktionen. md5-hash-funktionen koder den, og ved hjælp af digest(), udskrives en byte-ækvivalent kodet streng.
Nedenstående kode demonstrerede, hvordan man tager streng som input og output hexadecimal ækvivalent af den kodede værdi.
Python3
typer af softwaretest
# 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())> |
gentage et kort i java
>
>
Produktion:
The hexadecimal equivalent of hash is : f1e069787ece74531d112559945c6871>
Forklaring: Ovenstående kode tager streng og konverterer den til byte-ækvivalenten ved hjælp af encode(), så den kan accepteres af hash-funktionen. md5-hash-funktionen koder det, og derefter udskrives hexadecimalt ækvivalent kodet streng ved hjælp af hexdigest().