-
Notifications
You must be signed in to change notification settings - Fork 495
Expand file tree
/
Copy pathmd4.html
More file actions
97 lines (91 loc) · 31.3 KB
/
Copy pathmd4.html
File metadata and controls
97 lines (91 loc) · 31.3 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
<!DOCTYPE html><html lang="en"><head><meta charset="UTF-8"><meta http-equiv="content-language" content="en"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>MD4 - Online Tools</title><base href="/online-tools/"><meta name="keywords" content="MD4, online, hash, HMAC, UTF-8, UTF-16, Hex, Base64"><meta name="author" content="emn178"><meta name="copyright" content="emn178"><meta name="description" content="Calculate a legacy MD4 hash or HMAC from text using UTF-8, Hex, Base64, and other input encodings."><meta property="og:type" content="website"><meta property="og:title" content="MD4"><meta property="og:url" content="https://emn178.github.io/online-tools/md4.html"><meta property="og:site_name" content="Online Tools"><meta property="og:description" content="Calculate a legacy MD4 hash or HMAC from text using UTF-8, Hex, Base64, and other input encodings."><meta property="og:locale" content="en"><meta property="og:image" content="https://emn178.github.io/online-tools/images/logo.svg"><meta property="article:author" content="emn178"><meta property="article:tag" content="MD4, online, hash, HMAC, UTF-8, UTF-16, Hex, Base64"><meta property="twitter:card" content="summary"><meta property="twitter:image" content="https://emn178.github.io/online-tools/images/logo.svg"><link rel="canonical" href="https://emn178.github.io/online-tools/md4.html"><script type="application/ld+json">{"@context":"https://schema.org","@type":"WebApplication","name":"MD4","description":"Calculate a legacy MD4 hash or HMAC from text using UTF-8, Hex, Base64, and other input encodings.","url":"https://emn178.github.io/online-tools/md4.html","applicationCategory":"UtilitiesApplication","operatingSystem":"Any","isAccessibleForFree":true,"offers":{"@type":"Offer","price":0,"priceCurrency":"USD"}}</script><link rel="icon" href="images/logo.svg"><script>var delayScripts = [];
var waitLoadCount = 0;
window.dataLayer = window.dataLayer || [];
function gtag(){dataLayer.push(arguments);}
if (location.hostname != 'localhost') {
gtag('js', new Date());
gtag('config', 'G-WT6N5R6W6Z');
(function () {
var urls = [
'https://www.googletagmanager.com/gtag/js?id=G-WT6N5R6W6Z',
'https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js?client=ca-pub-3558414621046573'
];
function initGTMOnEvent(e) {
document.removeEventListener(event.type, initGTMOnEvent);
initGTM();
}
function initGTM() {
if (window.gtmDidInit) {
return;
}
window.gtmDidInit = true;
for (var i = 0; i < urls.length; ++i) {
var script = document.createElement('script');
script.async = true;
script.src = urls[i];
document.head.appendChild(script);
}
}
if (document.addEventListener) {
document.addEventListener('DOMContentLoaded', function() {
setTimeout(initGTM, 3500);
});
document.addEventListener('scroll', initGTMOnEvent);
document.addEventListener('mousemove', initGTMOnEvent);
document.addEventListener('touchstart', initGTMOnEvent);
} else {
for (var i = 0; i < urls.length; ++i) {
delayScripts.push({
src: urls[i]
});
}
}
})();
}
if (localStorage.getItem('DARK') === '1') {
document.documentElement.classList.add('dark-theme')
}
</script><link rel="stylesheet" href="css/style.css?v=49"></head><body><div id="app"><div id="sidebar"><div class="mask"></div><div class="container"><header><a href="./"><img src="images/logo.svg" width="18" height="18" alt="Logo"><h2>Online Tools</h2></a><div class="toolbar"><button class="icon theme"><img class="light" src="images/light.svg" alt="Dark mode" title="Dark mode"><img class="dark" src="images/dark.svg" alt="Dark mode" title="Dark mode"></button></div></header><div class="section"><h3>Hash</h3><details><summary>CRC</summary><nav><ol><li><a href="crc/">CRC</a></li><li><a href="crc16/">CRC-16</a></li><li><a href="crc32/">CRC-32</a></li></ol></nav></details><details><summary>Adler-32</summary><nav><ol><li><a href="adler32/">Adler-32</a></li></ol></nav></details><details><summary>XXHash</summary><nav><ol><li><a href="xxhash/">XXHash</a></li><li><a href="xxhash32/">XXH32</a></li><li><a href="xxhash64/">XXH64</a></li><li><a href="xxhash3/">XXH3</a></li><li><a href="xxhash128/">XXH128</a></li></ol></nav></details><details><summary>SM3</summary><nav><ol><li><a href="sm3/">SM3</a></li></ol></nav></details><details><summary>Whirlpool</summary><nav><ol><li><a href="whirlpool/">Whirlpool</a></li></ol></nav></details><details class="active" open><summary>MD</summary><nav><ol><li><a href="md2.html">MD2</a></li><li><a href="md2_file_hash.html">MD2 File</a></li><li class="active"><a href="md4.html">MD4</a></li><li><a href="md4_file_hash.html">MD4 File</a></li><li><a href="md5.html">MD5</a></li><li><a href="md5_checksum.html">MD5 File</a></li></ol></nav></details><details><summary>SHA1</summary><nav><ol><li><a href="sha1.html">SHA1</a></li><li><a href="sha1_checksum.html">SHA1 File</a></li></ol></nav></details><details><summary>SHA2</summary><nav><ol><li><a href="sha224.html">SHA224</a></li><li><a href="sha224_checksum.html">SHA224 File</a></li><li><a href="sha256.html">SHA256</a></li><li><a href="sha256_checksum.html">SHA256 File</a></li><li><a href="double_sha256.html">Double SHA256</a></li></ol></nav></details><details><summary>SHA2-512</summary><nav><ol><li><a href="sha384.html">SHA384</a></li><li><a href="sha384_file_hash.html">SHA384 File</a></li><li><a href="sha512.html">SHA512</a></li><li><a href="sha512_file_hash.html">SHA512 File</a></li><li><a href="sha512_224.html">SHA512/224</a></li><li><a href="sha512_224_file_hash.html">SHA512/224 File</a></li><li><a href="sha512_256.html">SHA512/256</a></li><li><a href="sha512_256_file_hash.html">SHA512/256 File</a></li></ol></nav></details><details><summary>SHA3</summary><nav><ol><li><a href="sha3_224.html">SHA3-224</a></li><li><a href="sha3_224_checksum.html">SHA3-224 File</a></li><li><a href="sha3_256.html">SHA3-256</a></li><li><a href="sha3_256_checksum.html">SHA3-256 File</a></li><li><a href="sha3_384.html">SHA3-384</a></li><li><a href="sha3_384_checksum.html">SHA3-384 File</a></li><li><a href="sha3_512.html">SHA3-512</a></li><li><a href="sha3_512_checksum.html">SHA3-512 File</a></li></ol></nav></details><details><summary>Keccak</summary><nav><ol><li><a href="keccak_224.html">Keccak-224</a></li><li><a href="keccak_224_checksum.html">Keccak-224 File</a></li><li><a href="keccak_256.html">Keccak-256</a></li><li><a href="keccak_256_checksum.html">Keccak-256 File</a></li><li><a href="keccak_384.html">Keccak-384</a></li><li><a href="keccak_384_checksum.html">Keccak-384 File</a></li><li><a href="keccak_512.html">Keccak-512</a></li><li><a href="keccak_512_checksum.html">Keccak-512 File</a></li></ol></nav></details><details><summary>SHAKE</summary><nav><ol><li><a href="shake128/">SHAKE128</a></li><li><a href="shake128/file/">SHAKE128 File</a></li><li><a href="shake256/">SHAKE256</a></li><li><a href="shake256/file/">SHAKE256 File</a></li></ol></nav></details><details><summary>cSHAKE</summary><nav><ol><li><a href="cshake128/">cSHAKE128</a></li><li><a href="cshake128/file/">cSHAKE128 File</a></li><li><a href="cshake256/">cSHAKE256</a></li><li><a href="cshake256/file/">cSHAKE256 File</a></li></ol></nav></details><details><summary>KMAC</summary><nav><ol><li><a href="kmac128/">KMAC128</a></li><li><a href="kmac128/file/">KMAC128 File</a></li><li><a href="kmac256/">KMAC256</a></li><li><a href="kmac256/file/">KMAC256 File</a></li><li><a href="kmacxof128/">KMACXOF128</a></li><li><a href="kmacxof256/">KMACXOF256</a></li></ol></nav></details><details><summary>TupleHash</summary><nav><ol><li><a href="tuplehash128/">TupleHash128</a></li><li><a href="tuplehash256/">TupleHash256</a></li><li><a href="tuplehashxof128/">TupleHashXOF128</a></li><li><a href="tuplehashxof256/">TupleHashXOF256</a></li></ol></nav></details><details><summary>ParallelHash</summary><nav><ol><li><a href="parallelhash128/">ParallelHash128</a></li><li><a href="parallelhash256/">ParallelHash256</a></li><li><a href="parallelhashxof128/">ParallelHashXOF128</a></li><li><a href="parallelhashxof256/">ParallelHashXOF256</a></li></ol></nav></details><details><summary>RIPEMD</summary><nav><ol><li><a href="ripemd-128/">RIPEMD-128</a></li><li><a href="ripemd-128/file/">RIPEMD-128 File</a></li><li><a href="ripemd-160/">RIPEMD-160</a></li><li><a href="ripemd-160/file/">RIPEMD-160 File</a></li><li><a href="ripemd-256/">RIPEMD-256</a></li><li><a href="ripemd-256/file/">RIPEMD-256 File</a></li><li><a href="ripemd-320/">RIPEMD-320</a></li><li><a href="ripemd-320/file/">RIPEMD-320 File</a></li></ol></nav></details><details><summary>BLAKE</summary><nav><ol><li><a href="blake2b/">BLAKE2b</a></li><li><a href="blake2b/file/">BLAKE2b File</a></li><li><a href="blake2s/">BLAKE2s</a></li><li><a href="blake2s/file/">BLAKE2s File</a></li><li><a href="blake3/">BLAKE3</a></li><li><a href="blake3/file/">BLAKE3 File</a></li></ol></nav></details><details><summary>HMAC</summary><nav><ol><li><a href="hmac/">HMAC Calculator</a></li></ol></nav></details><details><summary>KDF</summary><nav><ol><li><a href="kdf/pbkdf2/">PBKDF2</a></li><li><a href="kdf/evpkdf/">EvpKDF</a></li><li><a href="kdf/hkdf/">HKDF</a></li><li><a href="kdf/scrypt/">Scrypt</a></li><li><a href="kdf/argon2/">Argon2</a></li></ol></nav></details><details><summary>Bcrypt</summary><nav><ol><li><a href="bcrypt/">Bcrypt Generator</a></li><li><a href="bcrypt/verify/">Bcrypt Verify</a></li></ol></nav></details><details><summary>Scrypt</summary><nav><ol><li><a href="scrypt/">Scrypt Generator</a></li><li><a href="scrypt/verify/">Scrypt Verify</a></li></ol></nav></details><details><summary>Argon2</summary><nav><ol><li><a href="argon2/">Argon2 Generator</a></li><li><a href="argon2/verify/">Argon2 Verify</a></li></ol></nav></details></div><div class="section"><h3>Cryptography</h3><details><summary>AES</summary><nav><ol><li><a href="aes/encrypt/">Encryption</a></li><li><a href="aes/decrypt/">Decryption</a></li></ol></nav></details><details><summary>DES</summary><nav><ol><li><a href="des/encrypt/">Encryption</a></li><li><a href="des/decrypt/">Decryption</a></li></ol></nav></details><details><summary>Triple DES</summary><nav><ol><li><a href="triple-des/encrypt/">Encryption</a></li><li><a href="triple-des/decrypt/">Decryption</a></li></ol></nav></details><details><summary>RC4</summary><nav><ol><li><a href="rc4/encrypt/">Encryption</a></li><li><a href="rc4/decrypt/">Decryption</a></li></ol></nav></details><details><summary>ChaCha20</summary><nav><ol><li><a href="chacha20/encrypt/">Encryption</a></li><li><a href="chacha20/decrypt/">Decryption</a></li></ol></nav></details><details><summary>ChaCha20-Poly1305</summary><nav><ol><li><a href="chacha20-poly1305/encrypt/">Encryption</a></li><li><a href="chacha20-poly1305/decrypt/">Decryption</a></li></ol></nav></details><details><summary>SPECK</summary><nav><ol><li><a href="speck/encrypt/">Encryption</a></li><li><a href="speck/decrypt/">Decryption</a></li></ol></nav></details><details><summary>XXTEA</summary><nav><ol><li><a href="xxtea/encrypt/">Encryption</a></li><li><a href="xxtea/decrypt/">Decryption</a></li></ol></nav></details><details><summary>ECDSA</summary><nav><ol><li><a href="ecdsa/key-generator/">Key Generator</a></li><li><a href="ecdsa/sign/">Sign Message</a></li><li><a href="ecdsa/verify/">Verify Signature</a></li></ol></nav></details><details><summary>RSA</summary><nav><ol><li><a href="rsa/key-generator/">Key Generator</a></li><li><a href="rsa/sign/">Sign Message</a></li><li><a href="rsa/verify/">Verify Signature</a></li><li><a href="rsa/encrypt/">Encryption</a></li><li><a href="rsa/decrypt/">Decryption</a></li></ol></nav></details></div><div class="section"><h3>Compression</h3><details><summary>GZIP</summary><nav><ol><li><a href="gzip/create/">Create</a></li><li><a href="gzip/extract/">Extract</a></li><li><a href="gzip/compress/">Compress</a></li><li><a href="gzip/decompress/">Decompress</a></li></ol></nav></details><details><summary>DEFLATE</summary><nav><ol><li><a href="deflate/compress/">Compress</a></li><li><a href="deflate/decompress/">Decompress</a></li></ol></nav></details><details><summary>Brotli</summary><nav><ol><li><a href="brotli/create/">Create</a></li><li><a href="brotli/extract/">Extract</a></li><li><a href="brotli/compress/">Compress</a></li><li><a href="brotli/decompress/">Decompress</a></li></ol></nav></details><details><summary>Zstandard</summary><nav><ol><li><a href="zstandard/create/">Create</a></li><li><a href="zstandard/extract/">Extract</a></li><li><a href="zstandard/compress/">Compress</a></li><li><a href="zstandard/decompress/">Decompress</a></li></ol></nav></details><details><summary>XZ</summary><nav><ol><li><a href="xz/create/">Create</a></li><li><a href="xz/extract/">Extract</a></li><li><a href="xz/compress/">Compress</a></li><li><a href="xz/decompress/">Decompress</a></li></ol></nav></details><details><summary>LZIP</summary><nav><ol><li><a href="lzip/create/">Create</a></li><li><a href="lzip/extract/">Extract</a></li><li><a href="lzip/compress/">Compress</a></li><li><a href="lzip/decompress/">Decompress</a></li></ol></nav></details><details><summary>LZMA-Alone</summary><nav><ol><li><a href="lzma/create/">Create</a></li><li><a href="lzma/extract/">Extract</a></li><li><a href="lzma/compress/">Compress</a></li><li><a href="lzma/decompress/">Decompress</a></li></ol></nav></details><details><summary>ZIP</summary><nav><ol><li><a href="zip/create/">Create</a></li><li><a href="zip/extract/">Extract</a></li></ol></nav></details><details><summary>TAR</summary><nav><ol><li><a href="tar/create/">Create</a></li><li><a href="tar/extract/">Extract</a></li></ol></nav></details></div><div class="section"><h3>Encoding</h3><details><summary>Hex (Base16)</summary><nav><ol><li><a href="hex_encode.html">Encode</a></li><li><a href="hex_decode.html">Decode</a></li><li><a href="hex_encode_file.html">File to Hex</a></li><li><a href="hex_decode_file.html">Hex to File</a></li><li><a href="hex/dump/">Hex Dump</a></li></ol></nav></details><details><summary>Base32</summary><nav><ol><li><a href="base32_encode.html">Encode</a></li><li><a href="base32_decode.html">Decode</a></li><li><a href="base32_encode_file.html">File to Base32</a></li><li><a href="base32_decode_file.html">Base32 to File</a></li></ol></nav></details><details><summary>Base58</summary><nav><ol><li><a href="base58/encode/">Encode</a></li><li><a href="base58/decode/">Decode</a></li><li><a href="base58/encode/file/">File to Base58</a></li><li><a href="base58/decode/file/">Base58 to File</a></li></ol></nav></details><details><summary>Base64</summary><nav><ol><li><a href="base64_encode.html">Encode</a></li><li><a href="base64_decode.html">Decode</a></li><li><a href="base64_encode_file.html">File to Base64</a></li><li><a href="base64_decode_file.html">Base64 to File</a></li></ol></nav></details><details><summary>CBOR</summary><nav><ol><li><a href="cbor/encode/">Encode</a></li><li><a href="cbor/decode/">Decode</a></li></ol></nav></details><details><summary>HTML</summary><nav><ol><li><a href="html_encode.html">Encode</a></li><li><a href="html_decode.html">Decode</a></li></ol></nav></details><details><summary>URL</summary><nav><ol><li><a href="url_encode.html">Encode</a></li><li><a href="url_decode.html">Decode</a></li><li><a href="url/parser/">Parser</a></li></ol></nav></details><details><summary>JWT</summary><nav><ol><li><a href="jwt/decoder/">Decoder</a></li></ol></nav></details></div><div class="section"><h3>Format</h3><details><summary>JSON</summary><nav><ol><li><a href="json/validator/">Validator</a></li><li><a href="json/minifier/">Minifier</a></li><li><a href="json/formatter/">Formatter</a></li><li><a href="json/viewer/">Viewer</a></li><li><a href="json/compare/">Compare</a></li></ol></nav></details><details><summary>XML</summary><nav><ol><li><a href="xml/validator/">Validator</a></li><li><a href="xml/minifier/">Minifier</a></li><li><a href="xml/formatter/">Formatter</a></li></ol></nav></details></div><div class="section"><h3>Convert</h3><details><summary>Case</summary><nav><ol><li><a href="case/lower/">lower case</a></li><li><a href="case/upper/">UPPER CASE</a></li><li><a href="case/lower-camel/">lowerCamelCase</a></li><li><a href="case/upper-camel/">UpperCamelCase</a></li><li><a href="case/snake/">snake_case</a></li><li><a href="case/kebab/">kebab-case</a></li><li><a href="case/constant/">CONSTANT_CASE</a></li></ol></nav></details><details><summary>Time</summary><nav><ol><li><a href="converter/time/">Time Converter</a></li></ol></nav></details></div><div class="section"><h3>Generator</h3><details><summary>UUID</summary><nav><ol><li><a href="generator/uuid/v1/">UUID v1 Generator</a></li><li><a href="generator/uuid/v3/">UUID v3 Generator</a></li><li><a href="generator/uuid/v4/">UUID v4 Generator</a></li><li><a href="generator/uuid/v5/">UUID v5 Generator</a></li><li><a href="generator/uuid/v6/">UUID v6 Generator</a></li><li><a href="generator/uuid/v7/">UUID v7 Generator</a></li></ol></nav></details><details><summary>Password</summary><nav><ol><li><a href="generator/password/">Password Generator</a></li></ol></nav></details><details><summary>QR Code</summary><nav><ol><li><a href="qr-code/generator/">QR Code Generator</a></li><li><a href="qr-code/scanner/">QR Code Scanner</a></li></ol></nav></details></div><div class="section"><h3>Others</h3><details><summary>Others</summary><nav><ol><li><a href="text/compare/">Text Compare</a></li><li><a href="syntax-highlight/">Syntax Highlight</a></li></ol></nav></details></div><div class="section"><h3>Links</h3><nav class="links"><ol><li><a href="https://github.com/emn178/online-tools/issues">Contact</a></li></ol></nav></div></div></div><div id="content"><header><button id="sidebar-toggler" type="button" aria-controls="sidebar" aria-expanded="false" aria-label="Menu"><img src="images/menu.svg" width="24" height="24" alt="Menu"></button><h1>MD4</h1></header><main><div class="tool-page"><details class="tool-description"><summary class="block-title"><span>Calculate a legacy MD4 hash or HMAC from text using UTF-8, Hex, Base64, and other input encodings.<span class="read-more"> Read more</span></span></summary><div class="tool-description-content"><div class="ad"><ins class="ads" style="display:block" data-ad-client="ca-pub-3558414621046573" data-ad-slot="1336112449"></ins></div><h2 id="what-is-md4-">What is MD4?</h2>
<p>MD4 is a fast 128-bit message-digest algorithm designed by Ronald Rivest and documented in RFC 1320. It influenced MD5 and other hash designs, and still appears in legacy systems such as NT password hashes. <a href="https://www.rfc-editor.org/info/rfc6150">RFC 6150</a> moved MD4 to Historic status because it is no longer appropriate where collision resistance is required.</p>
<h2 id="how-to-use-this-hash-calculator">How to use this hash calculator</h2>
<p>Enter the text, select its byte encoding, and choose the output format. Keep HMAC disabled for an MD4 digest. Enable it only to reproduce a legacy HMAC-MD4 value with the exact key encoding.</p>
<h2 id="result-example">Result example</h2>
<p>MD4 of UTF-8/ASCII <code>abc</code> is <code>a448017aaf21d8525fc10ae87aa6729d</code> in Hex.</p>
<h2 id="important-limitations">Important limitations</h2>
<p>Practical collision attacks make MD4 unsuitable for signatures, certificates, integrity against attackers, or new HMAC deployments. Its speed also makes unsalted password hashes easy to guess at scale. Use this calculator for compatibility and analysis, not new security designs.</p>
<h2 id="frequently-asked-questions">Frequently asked questions</h2>
<h3 id="why-does-my-result-differ-from-another-tool-">Why does my result differ from another tool?</h3>
<p>Check bytes, encoding, line endings, and HMAC mode. When working with NT hashes, note that those systems hash the password’s UTF-16LE bytes, not its UTF-8 representation.</p>
<h3 id="can-i-use-the-result-to-verify-data-">Can I use the result to verify data?</h3>
<p>It can reproduce a legacy MD4 value, but a match is not strong authenticity evidence. To process raw file bytes, use <a href="/online-tools/md4_file_hash.html">MD4 File Hash</a>.</p>
</div></details><div class="layout"><div class="layout-block"><div class="input"><div class="block block-fill"><div class="block-title">Input<div class="toolbar"><button class="icon" data-toggle="fullscreen"><img class="fullscreen-icon" src="images/fullscreen.svg" alt="Full Screen" title="Full Screen"><img class="fullscreen-icon-exit" src="images/fullscreen-exit.svg" alt="Full Screen" title="Full Screen"></button></div></div><textarea class="container" id="input" spellcheck="false" placeholder="Enter here..." data-remember="input" data-share="input" data-encoding-from="#input-type" data-mode-from="#input-mode" data-auto-update data-toggle="monacoEditor"></textarea></div></div><div class="settings mobile-only"><div class="container"><div class="setting"><button class="btn btn-execute" type="button">Hash</button></div></div></div><details class="block block-ad mobile-only" open><summary class="block-title">Advertisement<div class="toolbar"></div></summary><div class="container"><ins class="ads" style="display:block" data-ad-client="ca-pub-3558414621046573" data-ad-slot="5006003958"></ins></div></details><div class="output"><div class="block block-fill"><div class="block-title">Output<div class="toolbar"><button class="icon" data-toggle="copy" data-clipboard-target="#output" data-message="Output copied"><img src="images/copy.svg" alt="Copy" title="Copy"/></button><button class="icon" data-toggle="fullscreen"><img class="fullscreen-icon" src="images/fullscreen.svg" alt="Full Screen" title="Full Screen"><img class="fullscreen-icon-exit" src="images/fullscreen-exit.svg" alt="Full Screen" title="Full Screen"></button></div></div><textarea class="container" id="output" spellcheck="false" placeholder="Output here..." data-encoding-from="#output-type" data-toggle="monacoEditor" readonly="readonly"></textarea></div><details class="block text-only" data-toggle="copyblock"><summary class="block-title">Share Link<div class="toolbar"><button class="icon" data-toggle="copy" data-clipboard-target="#share-link" data-message="Share link copied"><img src="images/copy.svg" alt="Copy" title="Copy"/></button></div></summary><input id="share-link" type="text" placeholder="Share Link" readonly="readonly"/></details></div></div><div class="settings"><div class="block block-fill"><div class="block-title">Settings</div><div class="container"><div class="setting desktop-only"><button class="btn btn-execute" type="button">Hash</button></div><div class="setting"><label class="switcher"><input type="checkbox" value="1" id="auto-update" checked><div class="toggle"></div><span>Auto Update</span></label></div><div class="setting"><label class="switcher"><input type="checkbox" value="1" id="remember-input"><div class="toggle"></div><span>Remember Input</span></label></div><div class="setting"><label for="input-type">Input Encoding</label><select data-toggle="encoding" id="input-type" data-remember="input-type" data-share="input_type" data-auto-update><optgroup label="Binary"><option value="hex">Hex</option><option value="hex_ignore_non_hex">Hex (Ignore Non-Hex Characters)</option><option value="base64" data-load-encoding="base64">Base64</option></optgroup><optgroup label="Text"><option value="utf-8" selected>UTF-8</option><option value="utf-16le" data-load-encoding="1">UTF-16LE</option><option value="utf-16be" data-load-encoding="1">UTF-16BE</option><option value="ibm866" data-load-encoding="2">IBM866</option><option value="iso-8859-2" data-load-encoding="2">ISO-8859-2</option><option value="iso-8859-3" data-load-encoding="2">ISO-8859-3</option><option value="iso-8859-4" data-load-encoding="2">ISO-8859-4</option><option value="iso-8859-5" data-load-encoding="2">ISO-8859-5</option><option value="iso-8859-6" data-load-encoding="2">ISO-8859-6</option><option value="iso-8859-7" data-load-encoding="2">ISO-8859-7</option><option value="iso-8859-8" data-load-encoding="2">ISO-8859-8</option><option value="iso-8859-8-i" data-load-encoding="2">ISO-8859-8-I</option><option value="iso-8859-10" data-load-encoding="2">ISO-8859-10</option><option value="iso-8859-13" data-load-encoding="2">ISO-8859-13</option><option value="iso-8859-14" data-load-encoding="2">ISO-8859-14</option><option value="iso-8859-15" data-load-encoding="2">ISO-8859-15</option><option value="iso-8859-16" data-load-encoding="2">ISO-8859-16</option><option value="koi8-r" data-load-encoding="2">KOI8-R</option><option value="koi8-u" data-load-encoding="2">KOI8-U</option><option value="macintosh" data-load-encoding="2">macintosh</option><option value="windows-874" data-load-encoding="2">Windows-874</option><option value="windows-1250" data-load-encoding="2">Windows-1250</option><option value="windows-1251" data-load-encoding="2">Windows-1251</option><option value="windows-1252" data-load-encoding="2">Windows-1252</option><option value="windows-1253" data-load-encoding="2">Windows-1253</option><option value="windows-1254" data-load-encoding="2">Windows-1254</option><option value="windows-1255" data-load-encoding="2">Windows-1255</option><option value="windows-1256" data-load-encoding="2">Windows-1256</option><option value="windows-1257" data-load-encoding="2">Windows-1257</option><option value="windows-1258" data-load-encoding="2">Windows-1258</option><option value="x-mac-cyrillic" data-load-encoding="2">x-mac-cyrillic</option><option value="gbk" data-load-encoding="2">GBK</option><option value="gb18030" data-load-encoding="2">gb18030</option><option value="big5" data-load-encoding="2">Big5</option><option value="euc-jp" data-load-encoding="2">EUC-JP</option><option value="iso-2022-jp" data-load-encoding="2">ISO-2022-JP</option><option value="shift_jis" data-load-encoding="2">Shift_JIS</option><option value="euc-kr" data-load-encoding="2">EUC-KR</option><option value="x-user-defined" data-load-encoding="2">x-user-defined</option></optgroup></select></div><div class="setting"><label for="output-type">Output Encoding</label><select data-toggle="encoding" id="output-type" data-remember="output-type" data-share="output_type" data-auto-update data-type="hex"><option value="hex">Hex (Lower Case)</option><option value="hex_upper">Hex (Upper Case)</option><option value="base64" data-load-encoding="base64">Base64</option></select></div><div class="setting"><label class="switcher"><input type="checkbox" value="1" id="hmac-enabled" data-remember="hmac-enabled" data-share="hmac_enabled" data-auto-update><div class="toggle"></div><span>Enable HMAC</span></label></div><details class="setting-group" id="hmac" style="display:none" open><summary>HMAC</summary><div class="setting"><label for="hmac-input-type">Encoding</label><select data-toggle="encoding" id="hmac-input-type" data-remember="hmac-input-type" data-share="hmac_input_type" data-auto-update><optgroup label="Binary"><option value="hex">Hex</option><option value="hex_ignore_non_hex">Hex (Ignore Non-Hex Characters)</option><option value="base64" data-load-encoding="base64">Base64</option></optgroup><optgroup label="Text"><option value="utf-8" selected>UTF-8</option><option value="utf-16le" data-load-encoding="1">UTF-16LE</option><option value="utf-16be" data-load-encoding="1">UTF-16BE</option><option value="ibm866" data-load-encoding="2">IBM866</option><option value="iso-8859-2" data-load-encoding="2">ISO-8859-2</option><option value="iso-8859-3" data-load-encoding="2">ISO-8859-3</option><option value="iso-8859-4" data-load-encoding="2">ISO-8859-4</option><option value="iso-8859-5" data-load-encoding="2">ISO-8859-5</option><option value="iso-8859-6" data-load-encoding="2">ISO-8859-6</option><option value="iso-8859-7" data-load-encoding="2">ISO-8859-7</option><option value="iso-8859-8" data-load-encoding="2">ISO-8859-8</option><option value="iso-8859-8-i" data-load-encoding="2">ISO-8859-8-I</option><option value="iso-8859-10" data-load-encoding="2">ISO-8859-10</option><option value="iso-8859-13" data-load-encoding="2">ISO-8859-13</option><option value="iso-8859-14" data-load-encoding="2">ISO-8859-14</option><option value="iso-8859-15" data-load-encoding="2">ISO-8859-15</option><option value="iso-8859-16" data-load-encoding="2">ISO-8859-16</option><option value="koi8-r" data-load-encoding="2">KOI8-R</option><option value="koi8-u" data-load-encoding="2">KOI8-U</option><option value="macintosh" data-load-encoding="2">macintosh</option><option value="windows-874" data-load-encoding="2">Windows-874</option><option value="windows-1250" data-load-encoding="2">Windows-1250</option><option value="windows-1251" data-load-encoding="2">Windows-1251</option><option value="windows-1252" data-load-encoding="2">Windows-1252</option><option value="windows-1253" data-load-encoding="2">Windows-1253</option><option value="windows-1254" data-load-encoding="2">Windows-1254</option><option value="windows-1255" data-load-encoding="2">Windows-1255</option><option value="windows-1256" data-load-encoding="2">Windows-1256</option><option value="windows-1257" data-load-encoding="2">Windows-1257</option><option value="windows-1258" data-load-encoding="2">Windows-1258</option><option value="x-mac-cyrillic" data-load-encoding="2">x-mac-cyrillic</option><option value="gbk" data-load-encoding="2">GBK</option><option value="gb18030" data-load-encoding="2">gb18030</option><option value="big5" data-load-encoding="2">Big5</option><option value="euc-jp" data-load-encoding="2">EUC-JP</option><option value="iso-2022-jp" data-load-encoding="2">ISO-2022-JP</option><option value="shift_jis" data-load-encoding="2">Shift_JIS</option><option value="euc-kr" data-load-encoding="2">EUC-KR</option><option value="x-user-defined" data-load-encoding="2">x-user-defined</option></optgroup></select></div><div class="setting"><label for="hmac-key">Key</label><input type="text" id="hmac-key" data-remember="hmac-key" data-share="hmac_key" data-encoding-from="#hmac-input-type" data-auto-update></div></details><script>++waitLoadCount;
delayScripts.push({
src: 'js/hmac.js?v=3'
});</script></div></div><details class="block block-links" open data-remember-open="related-tools"><summary class="block-title">MD Related Tools<div class="toolbar"></div></summary><div class="container"><nav class="related-links"><ol><li><a href="md2.html">MD2</a></li><li><a href="md2_file_hash.html">MD2 File</a></li><li class="active"><a href="md4.html">MD4</a></li><li><a href="md4_file_hash.html">MD4 File</a></li><li><a href="md5.html">MD5</a></li><li><a href="md5_checksum.html">MD5 File</a></li></ol></nav></div></details><script>(function () {
var el = document.querySelector('[data-remember-open="related-tools"]');
if (el && localStorage.getItem('OPEN_related-tools') === '0') {
el.open = false;
}
})();</script><details class="block block-ad desktop-only" open><summary class="block-title">Advertisement<div class="toolbar"></div></summary><div class="container"><ins class="ads" style="display:block" data-ad-client="ca-pub-3558414621046573" data-ad-slot="8132475140"></ins></div></details></div></div></div><script>++waitLoadCount;
delayScripts.push({
src: 'js/md4.min.js',
onload: function () {
window.method = md4;
methodLoad();
}
});</script><script>++waitLoadCount;
delayScripts.push({
src: 'js/encoding.js?v=13',
onload: function () {
methodLoad();
}
});</script><script>delayScripts.push({
src: 'js/clipboard.min.js',
onload: function () {
new ClipboardJS('[data-toggle="copy"]').on('success', function (e) {
showMessage(e.trigger.getAttribute('data-message'));
gtag('event', 'copy');
});
},
delay: 100
});</script></main></div><div id="message"></div></div><script src="js/jquery-1.10.1.min.js" defer></script><script src="js/main.js?v=50" defer></script></body></html>