Cryptografische hashes worden in het dagelijks leven gebruikt, zoals in digitale handtekeningen, berichtauthenticatiecodes, manipulatiedetectie, vingerafdrukken, checksums (controle van de berichtintegriteit), hashtabellen, wachtwoordopslag en nog veel meer. Ze worden ook gebruikt bij het verzenden van berichten via het netwerk voor beveiliging of bij het opslaan van berichten in databases.
Er zijn veel hashfuncties gedefinieerd in de hasjlib bibliotheek in python. Dit artikel gaat over de uitleg en werking van MD5-hash.
Deze hashfunctie accepteert een reeks bytes en retourneert 128 bit hashwaarde , meestal gebruikt om de gegevensintegriteit te controleren, maar heeft beveiligingsproblemen. Geassocieerde functies:
- encode() : Converteert de tekenreeks in bytes zodat deze acceptabel is voor de hashfunctie. digest() : Retourneert de gecodeerde gegevens in byte-indeling. hexdigest() : Retourneert de gecodeerde gegevens in hexadecimaal formaat.
Opmerking:
De md5-bibliotheek was een Python-bibliotheek die een eenvoudige interface bood voor het genereren van MD5-hashes.
Deze bibliotheek is verouderd ten gunste van de hashlib-bibliotheek, die een flexibelere en veiligere interface biedt voor het genereren van hashes.
De onderstaande code demonstreert de werking van MD5-hash die bytes accepteert en wordt uitgevoerd als bytes.
Python3
weergaven en tabellen
Python rstrip
# 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())> |
>
Linux welke
>
Uitgang:
The byte equivalent of hash is : b'xf1xe0ix~xcetSx1dx11%Yx94hq'>
Uitleg : De bovenstaande code neemt byte in beslag en kan worden geaccepteerd door de hash-functie. De md5-hashfunctie codeert het en vervolgens wordt met behulp van digest() een byte-equivalent gecodeerde tekenreeks afgedrukt.
Onderstaande code demonstreerde hoe string als invoer- en uitvoerhexadecimaal equivalent van de gecodeerde waarde kan worden gebruikt.
Python3
wanneer eindigt q1
# 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())> |
algoritme voor binair zoeken
>
>
Uitgang:
The hexadecimal equivalent of hash is : f1e069787ece74531d112559945c6871>
Uitleg : De bovenstaande code neemt string en converteert deze naar het byte-equivalent met behulp van encode(), zodat deze kan worden geaccepteerd door de hash-functie. De md5-hashfunctie codeert het en vervolgens wordt met behulp van hexdigest() een hexadecimaal equivalente gecodeerde tekenreeks afgedrukt.