1. Overzicht van MD5-encryptie
Message Digest Algorithm MD5 (Chinees, bekend als Message Digest Algorithm 5e editie) is een hashfunctie die veel wordt gebruikt binnen het gebied van computerbeveiliging om bescherming tegen berichtintegriteit te bieden. Het bestandsnummer voor dit algoritme is RFC 1321 (R.Rivest, MIT Laboratory for Computer Science en RSA Data Security Inc., april 1992).
MD5 staat voor Message-Digest Algorithm 5, dat wordt gebruikt om volledige en consistente informatieoverdracht te garanderen. Het is een van de hash-algoritmen die veel door computers worden gebruikt (ook wel summary algorithm en hash algoritme genoemd), en gangbare programmeertalen hebben over het algemeen een MD5-implementatie. Het verwerken van gegevens (zoals Chinese karakters) in een andere waarde van vaste lengte is het basisprincipe van het hash-algoritme, en MD5 was de voorganger MD2, MD3 en MD4. Het MD5-algoritme heeft de volgende kenmerken: 1. Samendrukbaarheid: De lengte van de berekende MD5-waarde is vast voor elke lengte van de data. 2. Eenvoudig te berekenen: Het is eenvoudig om de MD5-waarde te berekenen uit de originele data. 3. Modifikationsbestendigheid: Elke wijziging in de oorspronkelijke data, zelfs als slechts 1 byte wordt gewijzigd, zal de verkregen MD5-waarde heel anders zijn. 4. Sterke botsingsbestendigheid: De oorspronkelijke data en de MD5-waarde zijn bekend, en het is erg moeilijk om een data met dezelfde MD5-waarde te vinden (d.w.z. nep-data). De functie van MD5 is om grote hoeveelheden informatie te laten "comprimeren" in een vertrouwelijk formaat (d.w.z. een willee-lengte bytestring omzetten in een hexadecimale string van een bepaalde lengte voordat de private key wordt ondertekend met digitale handtekeningsoftware). Naast MD5 zijn de bekendere sha-1, RIPEMD en Haval.
MD5 is een asymmetrisch encryptie-algoritme (PS: symmetrische encryptie betekent dat het gebruikte wachtwoord voor encryptie en het wachtwoord voor ontsleuteling hetzelfde zijn, en asymmetrisch betekent dat de sleutel die voor encryptie en ontsleuteling wordt gebruikt verschillend is)
2. Java implementeert MD5-encryptie en -decryptie
1. Maven introduceert Apache's jar (geen Maven-project, ga naar de volgende jar op internet om handmatig te importeren)
2. MD5 gebruikt code
|