MD5-hash
Gratis online MD5-hashtool. Tekst/bestand/batch/HMAC-MD5-modi, UTF-8/Latin1, hoofdletters, 8-karaktergroepering. ⚠️ MD5 is gecompromitteerd — NIET gebruiken voor wachtwoordopslag.
Gerelateerde aanbevelingen
Wat is MD5?
MD5 (Message-Digest Algorithm 5) is een 128-bits hashfunctie ontworpen door Ronald Rivest in 1991 (RFC 1321), die een vaste 32-karakter hexadecimale digest produceert uit willekeurige invoer. Ooit veel gebruikt voor digitale handtekeningen, certificaatverificatie en wachtwoordopslag, werd MD5 gecompromitteerd door de botsingsaanval van Wang et al. in 2004, en de Flame-malware misbruikte MD5-botsingen om een vertrouwd CA-certificaat te vervalsen in 2008.
**Beveiligingsstatus**: NIST heeft MD5 officieel afgekeurd voor digitale handtekeningen in SP 800-131A (2011). MD5 blijft echter nuttig voor niet-beveiligingsscenario's: bestandsintegriteitscontrole tegen willekeurige corruptie, gegevensdeduplicatie en cache-sleutels. De belangrijkste vraag: zou een aanvaller baat hebben bij het creëren van een botsing? Zo nee, dan is de snelheid van MD5 een voordeel.
**Gebruik MD5 NOOIT voor wachtwoordopslag**: MD5 is extreem snel (miljarden hashes/seconde op GPU), waardoor gewone wachtwoorden onmiddellijk via brute kracht kunnen worden gekraakt. Wachtwoordopslag MOET bcrypt, scrypt of Argon2 gebruiken — trage hashes met instelbare kostenfactoren die brute kracht onhaalbaar maken.
**HMAC-MD5 is nog steeds veilig**: hoewel gewone MD5 gecompromitteerd is, blijft HMAC-MD5 (Hash-based Message Authentication Code met een sleutel) veilig wanneer de sleutel onbekend is, omdat de HMAC-constructie niet direct afhankelijk is van de botsingsweerstand van de onderliggende hash. Migratie naar HMAC-SHA256 wordt niettemin aanbevolen.
De tool gebruikt een pure JavaScript MD5-implementatie (Web Crypto API ondersteunt MD5 niet meer). Alle berekeningen worden lokaal in uw browser uitgevoerd — bestanden maken gebruik van stapsgewijze incrementele lezing en worden nooit naar servers geüpload.
Toepassingsgevallen
- Bestandsintegriteit: bereken MD5 na download om te vergelijken met officiële checksums
- Batch-digestgeneratie voor configuratiebestanden of release-opmerkingen
- HMAC-MD5-ondertekening voor integratie met legacy-systemen
- Gegevensdeduplicatie via snelle MD5-vergelijking
- Cache-sleutelgeneratie als korte unieke identifiers
- Onderwijs: hash-algoritmen begrijpen door MD5/SHA-1/SHA-256-uitvoer te vergelijken
Hoe te gebruiken
- Kies modus: Tekst, Bestand, Batch of HMAC-MD5
- Configureer opties: codering, hoofdletters, 8-karaktergroepering
- Voer tekst in, upload bestand of plak batchinhoud
- Kopieer het hashresultaat voor verificatie of scripts
Functies
- Vier modi: Tekst, Bestand, Batch per regel en HMAC-MD5, voor algemene checksum-scenario's
- Kiesbare UTF-8/Latin1-codering voor verschillende systeeminvoer
- Hoofdletterweergave en 8-karaktergroepering voor leesbaarheid
- Bestand chunk hashing: incrementele lezing voor grote bestanden voorkomt geheugenproblemen
- Batchmodus: elke regel wordt onafhankelijk gehasht met origineel→hash uitvoer
- Resultaten kopiëren met één klik
Codevoorbeelden
MD5/Hashing in JavaScript (Web Crypto supports SHA, MD5 needs library)
// Note: Web Crypto API does NOT support MD5 (deprecated)
// Use SHA-256 instead for new projects
async function sha256(message) {
const msgBuffer = new TextEncoder().encode(message);
const hashBuffer = await crypto.subtle.digest('SHA-256', msgBuffer);
return Array.from(new Uint8Array(hashBuffer)).map(b => b.toString(16).padStart(2,'0')).join('');
}
sha256('Hello World').then(console.log);
// MD5 in Node.js using crypto module
const crypto = require('crypto');
const md5 = crypto.createHash('md5').update('Hello World').digest('hex');
console.log(md5); // b10a8db164e0754105b7a99be72e3fe5MD5 Hashing in Python
import hashlib
text = 'Hello World'
md5_hash = hashlib.md5(text.encode('utf-8')).hexdigest()
print(md5_hash) # b10a8db164e0754105b7a99be72e3fe5
# File MD5 (chunked for large files)
def md5_file(filepath, chunk_size=8192):
md5 = hashlib.md5()
with open(filepath, 'rb') as f:
while chunk := f.read(chunk_size):
md5.update(chunk)
return md5.hexdigest()
# HMAC-MD5
import hmac
hmac_md5 = hmac.new(b'secret-key', b'Hello World', hashlib.md5).hexdigest()
print(hmac_md5)MD5 Hashing in Java
import java.security.MessageDigest;
import java.nio.charset.StandardCharsets;
public class MD5Example {
public static String md5(String input) throws Exception {
MessageDigest md = MessageDigest.getInstance("MD5");
byte[] hash = md.digest(input.getBytes(StandardCharsets.UTF_8));
StringBuilder sb = new StringBuilder();
for (byte b : hash) sb.append(String.format("%02x", b));
return sb.toString();
}
public static void main(String[] args) throws Exception {
System.out.println(md5("Hello World"));
// b10a8db164e0754105b7a99be72e3fe5
}
}
// Note: Use SHA-256 for new code: MessageDigest.getInstance("SHA-256")Veelgestelde vragen
Waar wordt MD5 meestal voor gebruikt?
MD5 wordt meestal gebruikt voor bestandsintegriteitscontrole (bijv. downloadverificatie), snelle digestgeneratie, legacy-systeemcompatibiliteit, cache-sleutels en gegevensdeduplicatie in niet-beveiligingsscenario's. MD5 produceert 128 bits (32 hexadecimale tekens) en is extreem snel, geschikt voor niet-kritieke controlescenario's.
MD5 versus SHA-256?
MD5 produceert 128 bits (32 hex), extreem snel maar gecompromitteerd; SHA-256 produceert 256 bits (64 hex), langzamer maar zonder praktische botsingsaanvallen en de voorkeur voor kritieke toepassingen.
SHA-256 ToolWaarom is MD5 onveilig voor wachtwoorden?
MD5 is extreem snel — moderne GPU's kunnen miljarden hashes per seconde berekenen, en regenboogtabellen verpletteren gewone wachtwoorden onmiddellijk. Gebruik bcrypt, scrypt of Argon2 voor wachtwoordopslag.
WachtwoordgeneratorMD5 is gecompromitteerd — kan ik het nog gebruiken?
Absoluut NIET voor beveiliging (digitale handtekeningen, wachtwoorden, TLS). Maar voor niet-beveiligingstoepassingen (bestandsbeschadigingscontrole, deduplicatie, cache-sleutels) is MD5 nog steeds geschikt, omdat aanvallers geen stimulans hebben om botsingen te creëren.
Kunnen MD5-hashes worden 'ontsleuteld'?
MD5 is een eenrichtingsfunctie en kan wiskundig niet worden omgekeerd, maar regenboogtabellen en brute kracht kunnen zwakke wachtwoorden binnen seconden herstellen. Daarom mag MD5 nooit voor wachtwoordopslag worden gebruikt.
Zullen grote bestanden vertraging veroorzaken?
Nee. De tool maakt gebruik van stapsgewijze incrementele lezing — bestanden worden niet volledig in het geheugen geladen, dus zelfs multi-gigabyte bestanden worden soepel verwerkt met een responsieve interface.
Wat is HMAC-MD5 versus gewone MD5?
HMAC-MD5 is een gehashte hash met een sleutel waarvoor een geheime sleutel vereist is. Hoewel gewone MD5 gecompromitteerd is, blijft HMAC-MD5 veilig wanneer de sleutel onbekend is (hoewel migratie naar HMAC-SHA256 wordt aanbevolen).
HMAC GeneratorWoordenlijst
- Hashfunctie (Hash Function)
- Een wiskundige functie die willekeurige invoer toewijst aan uitvoer van vaste lengte. Goede hashfuncties bieden eenrichtingsverkeer, botsingsweerstand en lawine-effect.
- Botsingsaanval (Collision Attack)
- Het vinden van twee verschillende invoeren die dezelfde hash-uitvoer produceren. MD5-botsingen werden in 2004 door Wang et al. gedemonstreerd, waardoor digitale handtekeningvervalsing mogelijk werd.
- Preimage-aanval (Preimage Attack)
- Het vinden van een invoer die een bepaalde hash-uitvoer produceert. Moeilijker dan botsingen, maar nieuw onderzoek in 2024 heeft de preimage-weerstand van MD5 aanzienlijk verzwakt.
- Regenboogtabel (Rainbow Table)
- Vooraf berekende hash→klare tekst opzoektabellen voor het snel kraken van zwakke wachtwoordhashes. Salts verslaan regenboogtabellen.
- HMAC (Hash-based Message Authentication Code)
- Een op hash gebaseerde berichtauthenticatiecode die een geheime sleutel gebruikt voor berichtintegriteit/authenticatie. HMAC-MD5 en HMAC-SHA256 zijn veelvoorkomende varianten.HMAC Generator
- bcrypt
- Een langzaam wachtwoordhash-algoritme met ingebouwde salts en instelbare kostenfactor, waardoor brute-force-aanvallen onbetaalbaar worden.
- Checksum
- Een kleine vaste waarde die wordt gebruikt om gegevensintegriteit te verifiëren. MD5, SHA-1, SHA-256 worden vaak gebruikt als checksums om corruptie bij verzending te detecteren.
- Lawine-effect (Avalanche Effect)
- Een kleine verandering in invoer (zelfs 1 bit) veroorzaakt een drastische en onvoorspelbare verandering in de hash-uitvoer. MD5 heeft nog steeds goede lawine-eigenschappen, wat bijdraagt aan zijn blijvende nut in niet-beveiligingscontroles.
- RFC 1321
- De officiële standaard voor MD5, ingediend bij IETF door Ronald Rivest in 1992, die de algoritmestappen en testvectoren beschrijft.
- Chunked Hashing
- Het verwerken van grote bestanden in blokken in plaats van het hele bestand in het geheugen te laden, met incrementele updates van de hashstatus.
Vergelijking van veelgebruikte hash-algoritmen
| Algoritme | Uitvoerbits | Hex-lengte | Beveiliging | Snelheid | Aanbevolen gebruik |
|---|---|---|---|---|---|
MD5 | 128 bit | 32 karakters | ❌ Gecompromitteerd (botsingen/preimage) | Extreem snel | Bestandschecksums, deduplicatie, cache-sleutels |
SHA-1 | 160 bit | 40 karakters | ❌ Botsingen (2017) | Snel | Git, legacy-systeemcompatibiliteit |
SHA-256 | 256 bit | 64 karakters | ✅ Veilig | Gemiddeld | Digitale handtekeningen, certificaten, blockchain |
SHA-512 | 512 bit | 128 karakters | ✅ Veilig | Snel (64-bit) | Hoge beveiligingsscenario's, sleutelafleiding |
bcrypt | - | 60 karakters | ✅ Wachtwoord-specifiek | Langzaam (instelbaar) | Wachtwoordopslag |
Tijdlijn van MD5-beveiligingsgebeurtenissen
| Jaar | Gebeurtenis | Impact |
|---|---|---|
1991 | Ron Rivest ontwerpt MD5 (RFC 1321) | Vervangt MD4 en wordt standaard hash-algoritme |
1996 | Eerste pseudo-collisiegebrek in MD5 ontdekt | Academische gemeenschap uit bezorgdheid |
2004 | Wang Xiaoyun's team demonstreert MD5-botsingsaanval | MD5 digitale handtekeningbeveiliging volledig verbroken |
2008 | Flame-malware vervalst CA-certificaat via MD5-botsing | NIST verwerpt MD5 officieel voor digitale handtekeningen |
2011 | NIST SP 800-131A verbiedt MD5 officieel voor beveiligingsdoeleinden | Amerikaanse overheidsystemen faseren MD5 uit |
2024 | Nieuwe preimage-aanvalspaper gepubliceerd | Laatste verdedigingslinie van MD5 (preimage-weerstand) doorbroken |
Authoritative References
- Veilige String Vergelijking
- Binair naar Tekst
- Caesar Cipher
- Morsecodering Vertaler
- Hex naar Tekst
- Video naar Base64
- Base64 naar Video
- Afbeelding naar Base64
- Base64 naar Afbeelding
- Tekst naar Base64
- Base64 naar Tekst
- Bestandshash-controle
- Bestand naar Base64
- Base64 naar Bestand
- Audio naar Base64
- Base64 naar Audio
- AES versleutelen en ontsleutelen
- DES Encryptie
- Base32 Encoder Decoder
- Base58 coderen en decoderen
- Base64 Codering
- Base64 Decoderen
- Base64 Vergelijken
- Base64 Opsplitsen
- Base64 meerregelige samenvoegen
- Base64 Opmaak
- Base64 Valideren
- Base64 batch-encodering
- Base64 Batch Decoderen
- Base64 Opschonen
- Base64-paddingverwerking
- Base64 Statistieken
- Base64 naar Hex
- Base64 DataURL Converter
- Base64-Hex-omzetter
- Base85 Encoderen / Decoderen
- HMAC Generator & Verificateur
- PBKDF2 Sleutelafleiding
- MD5-hash
- SHA-256 hash
- SHA1 Hash
- SHA512-hash
- JWT Decoder
- HTML Entity Encoder en Decoder
- Unicode Escape
- URL-codering
- URL-Veilige Base64
- MIME Base64
- Java Obfuscator
- JS Obfuscator
- PHP Obfuscator
- Python Obfuscator