Generate an NTLM Hash — Free Windows Password Hash Generator

The NTLM Hash Generator computes exactly what Windows would store for a password you enter: the NTLM hash, an MD4 digest of the password encoded in UTF-16LE, used for local Windows accounts and Active Directory authentication. The MD4 implementation behind it has been checked against the official RFC test vectors, so the hash you get back matches what Windows itself would compute.

NTLM = MD4(UTF-16LE(password)) -- hand-rolled MD4 implementation, verified against every official RFC 1320 test vector plus the well-known reference value NTLM("password") = 8846f7eaee8fb117ad06bdd830b7586c.

Every time you need to verify that a Windows authentication middleware stack handles credentials correctly, you need a reliable way to reproduce the exact 32-character value that Windows derives from a plaintext string — without touching your production environment. The NTLM hash generator above turns any plaintext password into its corresponding NT hash instantly, giving your QA teams, offensive operators, and web developers a trusted reference value for unit tests, lab provisioning, and security audits. Whether you're seeding an Active Directory test environment or cross-checking a password cracking wordlist, understanding what the output means is what lets you act on it confidently.

What Is an Online NTLM Hash Generator?

An NTLM hash generator is a hashing utility that accepts a plaintext password — or any arbitrary text input — and returns the NT hash that Windows would store for that login. The algorithm is formally defined in Microsoft's MS-NLMP specification as the NTOWFv1 function: the credential is first converted using UTF-16LE (two bytes per character, low-byte-first byte order), then fed directly into the MD4 algorithm to produce a 128-bit output. That output is printed as 32 lowercase hexadecimal characters — a 32 character hash — which is why every NT hash you will ever see is exactly the same length.

The value is frequently called the NTLM hash in everyday infosec conversation, but the technically precise term is the NT hash — because NTLM is the security protocol, while the NT hash is the stored secret that the scheme consumes. Both names refer to the same 128-bit value. This tool produces the stored-secret form: a static, deterministic, unsalted value derived solely from the supplied text. Understanding this distinction is central to windows security best practices and helps clarify how microsoft ntlm — rooted in the older NT LAN Manager standard — differs from modern alternatives.

Typical use cases include: pre-computing password hashes for lab accounts before populating an Active Directory test environment, validating that an authentication middleware component produces the correct hash output, writing assertions in a regression suite that exercises Windows-authenticated code paths, and performing penetration testing exercises where a known credential hash is required as a test fixture.

PropertyResult
Input (plain data)Any Unicode string, e.g. Password
Encoding stepUTF-16LE (two bytes per code point, low-byte-first)
Hash algorithmMD4 (RFC 1320)
Output length32 hex characters (128 bits / 16 bytes)
Salted?No — deterministic, no per-user random value
Output: generated NTLM hash example8846f7eaee8fb117ad06bdd830b7586c

Example of an NTLM Hash in Practice

The most widely cited password test vector in the NTLM world is the word Password. Encoding it as UTF-16LE produces the byte sequence 50 00 61 00 73 00 73 00 77 00 6f 00 72 00 64 00 — eight characters × two bytes each. Running that 16-byte stream through MD4 yields the result 8846f7eaee8fb117ad06bdd830b7586c. This is the published reference value cited in multiple cybersecurity frameworks, and matching it confirms that both the encoding step and the MD4 step are executing correctly. Whenever you set up a new calculator or generator script, cross-checking against this known-plaintext hash is the fastest sanity check available.

How Long Is an NTLM Hash?

An NTLM hash is always exactly 32 hex characters — representing 16 bytes or 128 bits. The length never varies with the length of the credential: a single-character input and a 200-character passphrase both produce a 32-character digest. This fixed-width property is a direct consequence of MD4 always emitting a 128-bit result regardless of input size. When you see a hash string that is shorter or longer than 32 hex digits, it was not produced by the NTLM algorithm.

How the Generate NTLM Hash Algorithm Works Under the Hood

The NTLM digest algorithm is remarkably compact. The entire key derivation is captured in a single line of pseudocode drawn from the NLMP specification:

Define NTOWFv1(Passwd, User, UserDom) as MD4(UNICODE(Passwd))

Two critical details are embedded in that one line. First, UNICODE specifically means UTF-16LE encoding — each character in the credential is expanded into two bytes in low-byte-first order, so the ASCII character a becomes the bytes 61 00 before any processing occurs. This utf-16le encoding step is what makes the algorithm correctly handle the full unicode range, including accented characters, Cyrillic, CJK characters, and surrogate pairs for emoji. Second, MD4 — the 128-bit cryptographic function defined in RFC 1320 — processes the entire UTF-16LE byte stream and emits a fixed 16-byte result whose hex representation becomes your NT hash.

Notice what the function deliberately ignores: despite accepting User and UserDom arguments, the NTOWFv1 formula never uses them. The username domain ignored design means that the same credential always produces the same output — whether the account is named Alice or Bob, whether the realm is CORP or WORKGROUP. This blindness to username and realm is the root cause of most of NTLM's well-documented weaknesses in cryptography.

The step-by-step computation for the word password runs as follows:

  1. Read the password: the plaintext string is password — 8 characters of plain data.
  2. Apply UTF-16LE encoding: each character expands to two bytes: 70 00 61 00 73 00 73 00 77 00 6f 00 72 00 64 00 — 16 bytes total. The letter p becomes 70 00, following the same pattern as 61 00 for a.
  3. Compute hash: $$\text{NT hash} = \text{MD4}(\text{UTF-16LE}(\text{password}))$$
  4. Read the 32 hex characters: the MD4 output of those 16 bytes is 8846f7eaee8fb117ad06bdd830b7586c — the widely cited reference value.

The MD4 implementation used by Windows is the same as specified in RFC 1320, originally described by Ron Rivest. Its design traces lineage to work at Stanford University by cryptographers including Don Coppersmith and Ralph Merkle, with the broader family of MD algorithms emerging around 1973 and evolving through MD5 and beyond. The MD5 algorithm and subsequent SHA family (SHA-1, SHA-2, SHA-256) all share conceptual DNA with MD4, though each corrects specific weaknesses found in earlier designs.

Is the NTLM Hash the Same as the LM Hash?

No — the LM hash and the NT hash are two distinct values computed by entirely different processes. The older LM algorithm — part of the original Windows LAN Manager / nt lan manager system that gave NTLM its name — converts the credential to uppercase, pads it to 14 characters, splits it into two 7-character halves, and applies DES independently to each half. This 14-character limit and the case-insensitive pre-processing make the lm algorithm dramatically weaker than the NT hash. A brute-force attacker only needs to crack two 7-character chunks independently rather than the full passphrase. The NT hash, by contrast, processes the full unicode credential in one pass through MD4, with no uppercasing or splitting, making it strictly stronger — though still far from a modern salted approach.

Why Is an NTLM Hash Never Salted?

The NTOWFv1 function has no parameter for a salt, and this is by design. In a challenge-response scheme, the server needs to reproduce the client's expected response using only the stored secret — the NT hash. Introducing a per-user random value would require transmitting or separately storing that salt, which complicates the scheme without fitting the original design goals. The consequence is severe: because there is no salt, two accounts sharing the same credential store an identical output, and precomputed rainbow tables work against any NT hash without modification. Combined with the fact that MD4 is extremely fast on modern hardware — enabling gpu cracking at billions of candidates per second — the unsalted design means that credential length and complexity are the only real defenses available to the user. This is a fixed mapping vulnerability inherent to the algorithm's architecture.

Using the NTLM Hash Generator Online — Step-by-Step

This free online tool is designed for developers, QA engineers, and security teams who need to quickly generate NT hash values for testing, lab provisioning, or tool verification. It functions as one of the most accessible security tools for this purpose: you provide text, the tool applies the UTF-16LE + MD4 pipeline, and you receive the output in seconds. Here is how each step works in practice.

Input String Options

The enter one string per line: design means you can process a single credential or an entire batch in one operation. Paste your list of test values into the input field — each line is treated as a separate entry and handled independently. Blank lines remain blank in the output, so the two panels always stay aligned. The tool handles non-english characters, accented letters, and emoji correctly because the UTF-16LE step covers the full Unicode code point space, including surrogate pairs for characters outside the Basic Multilingual Plane. You can also load input data from an external url using the link icon, which pulls a plain text file and populates the input field automatically. The tool supports URL-based pre-population via a data parameter, for example:

https://codebeautify.org/ntlm-hash-generator?input=Geico

https://codebeautify.org/ntlm-hash-generator?url=https://gist.githubusercontent.com/cbmgit/a99b00d7f63bc04e5157891e986400fe/raw/HashSample.txt

Use the sample icon to load a built-in example list so you can verify the tool against a known value before trusting it in a test suite.

Reading and Copying Your Output

After you click select generate hash:, the output text panel populates with one NT hash per input line. The read the results line by line: pattern keeps input and output perfectly synchronized — line 1 of input maps to line 1 of output. Each result is a 32 hex characters string. To use the results, either click the copy icon to trigger a copy to clipboard confirmation, or click the download icon to save the full list as a text file — ready for use in a cracking tool, a test fixture, or a configuration file. When you are ready to start fresh, the use the clear icon to start over: action empties both panels for a clean session. The generate hash button re-processes only new or modified lines, so large batches do not repeat unnecessary work. You can also use copy or download the result: to export the output data in bulk for offline workflows.

Security tip: Never paste a real production credential into any online hash tool. Your credential leaves your machine over HTTPS. Always use a throwaway lab value or dummy string when you need a test NT hash. Use this generator only with lab credentials or known reference values like password8846f7eaee8fb117ad06bdd830b7586c.

NT Hash vs. Net-NTLM Hash: Key Differences — NTLM Hash Generator Tool Perspective

The most persistent point of confusion in NTLM-based login flows is conflating the NT hash with a net-ntlm hash. They are fundamentally different objects, and the distinction determines which attack tool, cracking mode, or verification exchange is relevant.

The nt hash — what this tool produces — is a static value derived solely from the credential using MD4 over UTF-16LE. It is stored at rest in the SAM database (also called the security accounts manager) for local accounts, and in Active Directory (specifically NTDS.dit) for domain-joined accounts. It never changes unless the credential changes, and it is never transmitted over the wire during normal login.

A Net-NTLMv1 or Net-NTLMv2 hash is a challenge-response construct built on top of the NT hash at runtime during networked login. The server generates a random server challenge — a nonce unique to that session — and the client signs it using the NT hash as a key. The resulting structured string includes the username, the challenge, and the response. This wire object is captured by tools like Responder during lateral movement and is what you would crack using hashcat in Net-NTLMv2 mode. It is not the same value this tool generates.

NameInputNT hash (this tool)Net-NTLMv1 / Net-NTLMv2
Where it livesCredential stringSAM / Active Directory (at rest)Login exchange (in transit)
How it is derivedPlaintext credentialMD4(UTF-16LE(password))NT hash keyed over a server nonce
FormatAny string32 hex characters, stableLong structured string with username and challenge fields
Changes between logins?No — only changes when credential changesYes — new challenge each time
Usable for pass-the-hash?YesNo — must be cracked first
NTLMv1 is already gone:
Net-NTLMv1 (ntlmv1) has been removed starting with Windows 11 24H2 and Windows Server 2025.
The replacement is Negotiate:
Microsoft advises replacing NTLM calls with the Negotiate scheme, which attempts Kerberos first and falls back to NTLM only when necessary — a kerberos-first model for environments still in transition.
The underlying hash is older still:
RFC 6150 moved MD4 to Historic status in 2011, confirming it is not suitable for new cryptographic applications.
It still matters operationally:
Microsoft KB 299656 confirms that Kerberos on Windows also uses the NT hash as a long-term RC4 session key, so the value remains relevant even in environments transitioning to Kerberos-only login. Kerberos delegation scenarios involving RC4 tickets rely on the same stored NT hash.

Does Kerberos Also Use the NT Hash?

Yes. Despite being a separate login scheme, Kerberos on Windows uses the NT hash as the long-term secret for RC4-HMAC session key derivation. Microsoft KB 299656 explicitly states that NTLM, NTLMv2, and Kerberos all rely on the same NT hash — the unicode-derived value produced via MD4. This means that a stolen NT hash obtained through credential dumping or a memory snapshot is not just an NTLM threat: it can also be leveraged in Kerberos-based overpass-the-hash and silver ticket attacks. The NT hash is therefore a critical login credential across all NTLM variants and Kerberos simultaneously, making its protection a priority for both blue team defenders and forensics investigators.

Where Does Windows Store NTLM Hashes?

Windows stores NT hashes in two primary locations. For local accounts, they are kept in the SAM database — the Security Accounts Manager registry hive at HKEY_LOCAL_MACHINE\SAM — which is protected by SYSTEM-only access controls and SYSKEY encryption. For domain-joined accounts, NT hashes are stored in NTDS.dit inside Active Directory on domain controllers. Attackers target these storage locations via DCSync attacks (using tools like Impacket), Volume Shadow Copy extraction, or direct registry dumping after privilege escalation. Windows server and client editions never store the plaintext — only the NT hash and, on older systems, the LM and NT values side by side. Microsoft documents this in KB article KB 299656.

Where Security and QA Teams Put NTLM Hashes to Work

This online ntlm hash generator serves a range of legitimate workflows across security testing, QA automation, and infrastructure work. Understanding the practical applications helps you use the tool purposefully rather than treating it as a curiosity.

Seeding Lab and Test Accounts

Seeding lab accounts is the primary professional use case. Rather than transmitting plaintext credentials across your infrastructure to provision a test environment, you pre-compute the NT hashes for a list of throwaway lab values and inject them directly into the Active Directory test setup. This approach keeps the lab state deterministic — the same input always produces the same hash — which is essential for reproducible unit tests and regression suite builds. Security teams and QA engineers can maintain a canonical list of test credentials, compute their NT hashes with a single batch operation using this tool, and populate a test environment reliably without storing plaintext in configuration files or CI/CD secrets. Automation pipelines benefit similarly: by pinning a known credential hash in a test fixture, you get a stable assertion point for any code path that exercises Windows-authenticated logic or challenge-response flows.

For cross-browser testing of Windows-authenticated web applications — IIS, SharePoint, Exchange, or any Windows-integrated service — generating known NT hashes lets you script expected responses across browsers without repeatedly entering credentials manually. Developers and programmers integrating with IIS or SQL Server using integrated Windows authentication can use the generator to validate that their application or API endpoint logic produces and accepts correct credential representations across all test environments. Web developers building such integrations will find this among the most practical security tools available for that purpose.

What Is a Pass-the-Hash Attack?

A pass-the-hash attack exploits the fact that the NTLM scheme requires knowledge of the NT hash, not the plaintext. When a client authenticates to a server, it proves identity by computing a keyed response over the server nonce using the stored NT hash. An attacker who has obtained the NT hash — through a memory snapshot, credential dumping from the SAM, or DCSync — can impersonate the user on any system that accepts NTLM without ever learning the underlying credential. The 32-character NT hash is the credential in this model. This mechanic is why offensive tooling like Impacket implements pass-the-hash natively, and why penetration testers use pre-generated hashes from a tool like this one to simulate realistic attack paths in controlled environments. The command-line usage for Impacket-based NT hash generation looks like this:

pip install colorama passlib impacket
python ntlm_hash_generator.py -u username -p password

The --username and --password flags handle command parsing and username processing. Each invocation returns the identical 32-character NT hash that the online tool produces, making the python script suitable for embedding in CI/CD pipelines where an online tool is not accessible. The script leverages python hashlib with an MD4 backend (or OpenSSL via subprocess) to apply the UTF-16LE byte conversion and compute the final hex output. The iconv utility can perform the same conversion in shell pipelines for non-Python environments.

Penetration tester note: Use pre-generated hashes only against systems and account details you are authorised to test. Generating NT hashes for offensive training or cracking exercises with tools like john the ripper should occur exclusively in isolated lab environments under formal engagement rules.

Is NTLM Still Secure? Microsoft's Current Stance on the NTLM Hash

The direct answer is no. Microsoft's deprecated features list — the official NTLM guidance announcement — states that all versions of NTLM, including LanMan, NTLMv1, and NTLMv2, are under no longer active development and are formally deprecated as of June 2024. This is a significant shift: NTLM was the backbone of Windows authentication for decades, underpinning SMB file sharing, IIS integrated login, SQL service accounts, Outlook Express on Windows 95 and Windows 98, Telnet, VNC, and TCP/IP connections in large-scale environments.

  • NTLMv1 removed: Microsoft has removed NTLMv1 support beginning with Windows 11 24H2 and Windows Server 2025. NTLMv1 is already gone from modern Windows defaults.
  • NTLMv2 deprecated: NTLMv2 remains present but is under active deprecation. The Negotiate scheme (Kerberos-first with NTLM fallback) is the designated replacement — a model that maintains compatibility during migration while reducing NTLM exposure.
  • MD4 historic: RFC 6150 assigned MD4 historic status in March 2011, recommending migration to modern algorithms. The speed that made it practical in 1990 now makes it a liability — GPU-based cracking tools can evaluate billions of candidates per second.
  • NTLM weaknesses: The scheme is vulnerable to pass-the-hash attacks, NTLM relay attacks, offline cracking with precomputed rainbow table sets, wordlist attacks, and brute force campaigns. A rainbow table built against the NT hash space covers all common credentials in seconds.
  • Can it be reversed? An NTLM hash is not reversible — MD4 is a one-way function and an irreversible hash. You cannot decrypt it. However, attackers do not need to: they hash candidate strings and compare outputs. Weak or short credentials fall almost instantly to a wordlist or precomputed rainbow table.

Microsoft's official position (June 2024): All versions of NTLM are deprecated. The replacement is the Negotiate / Kerberos-first model. For application-level credential storage, use a deliberately slow, salted function — bcrypt, scrypt, or argon2 — never MD4 or any unsalted algorithm.

Should I Use NTLM or Switch to a Modern Alternative?

For new application development, NTLM should not be your choice for either networked login or credential storage. For networked login in Windows environments, adopt Kerberos via the Negotiate scheme or modern SSO solutions. For application credential storage, use a slow function with a work factor: bcrypt, scrypt, or argon2 each apply a unique salt and are deliberately expensive to compute, making brute force and rainbow table attacks infeasible. For general-purpose checksums where secure credential storage is not the goal, prefer sha256 (SHA-2 family) or a SHA-1 hash — though both SHA-1 and MD5 are also cryptographically weakened, they are far stronger than MD4 for non-credential use cases. SHA-256 and the broader SHA-2 family remain reasonable choices for developers who need a general-purpose cryptographic function in the field of cryptography. The msdcc2 hash (Microsoft Domain Cached Credentials v2) is another credential format used by Windows for offline logon and also computable with Impacket's hash script.

Can an NTLM Hash Be Reversed to the Original Password?

No — the NT hash is an irreversible hash. MD4 is a one-way function: it maps arbitrary-length input to a fixed 16-byte output, and there is no mathematical inverse. Reversing the hex output back to the original string is not possible. What attackers do instead is compute forward: they maintain large precomputed rainbow tables of common credentials mapped to their NT hashes, or they run hashcat or a tool like John the Ripper in dictionary or brute-force mode, processing millions of candidates per second until a match is found. Because MD4 is so fast — and because the NT hash has no salt — a credential of insufficient strength will fall quickly. The only reliable defense is a long, random passphrase that does not appear in any wordlist corpus.

Frequently Asked Questions About NTLM Hash Generation

Why does a 15-character password stop Windows from storing a usable LM hash?

The lm algorithm only covers a maximum of 14 characters, split into two 7-character halves and processed separately with DES. When you set a 15-character credential (or longer), Windows cannot fit it into the LM format. According to the relevant KB article, Windows stores a dummy LM value — a fixed aad3b435b51404eeaad3b435b51404ee sentinel — which cannot be used to log in. This effectively means LM is disabled for any account with a passphrase of 15 or more characters. The NT hash is still generated and stored normally via the NTOWFv1 function. Using a long passphrase is therefore a simple way to eliminate the weaker LM duality and reduce your attack surface. The 14-character limit of LM is a hard architectural constraint, not a configurable option.

How do I generate an NTLM hash from the command line?

Any environment with an MD4 implementation can replicate what this tool does. The recipe is always the same: encode the credential as UTF-16LE bytes, then compute the MD4 output. In Python using python hashlib:

import hashlib
print(hashlib.new('md4', 'password'.encode('utf-16le')).hexdigest())

This produces 8846f7eaee8fb117ad06bdd830b7586c — the same output the online tool returns. Using Impacket (install with pip install colorama passlib impacket), you can also run:

python ntlm_hash_generator.py -u username -p password

The --username flag handles username input for the NTOWFv1 signature, and the --password flag sets the credential. OpenSSL with iconv for UTF-16LE conversion can do the equivalent in a shell pipeline. All approaches return an identical 32-character result. This makes the script approach ideal for CI/CD pipelines, terminal automation, and offline environments where this online ntlm hash generator is not accessible. The prerequisites are minimal — only standard Python and optionally Impacket. For customization and colour in terminal output, the colorama package adds ANSI formatting.

Does an NTLM hash support non-English characters and emoji?

Yes — the UTF-16LE step in NTOWFv1 handles the entire Unicode character space. Non-English characters, accented letters (é, ñ, ü), Cyrillic script, CJK characters, and emoji all encode correctly. Emoji are represented as surrogate pairs in UTF-16LE, which MD4 processes as a normal byte sequence. A unicode credential containing mixed scripts and emoji will produce a valid, deterministic NT hash — a capability important for large-scale environments supporting international users. The full unicode range support is a direct consequence of the UTF-16LE design choice in the NTLM specification. This also means that an uppercase credential like PASSWORD produces a completely different hash than password — unlike the LM hash, the NT hash is fully case-sensitive. Emoji-based test vectors can be used to generate reference values for identity verification flows that accept international credentials.

Should an NTLM hash be written in uppercase or lowercase?

Case is a display convention, not part of the underlying value. The NT hash is 16 raw bytes; hexadecimal representation of those bytes is semantically equivalent in either case. Most tools — including hashcat and John the Ripper — accept both uppercase hex and lowercase input interchangeably. Some tools (including certain Impacket scripts) output uppercase by convention, while others (including many developer tools and hash calculators) default to lowercase. When comparing a hash string across tools, normalize case before comparison. The 32 hex digits themselves are identical regardless of rendering — 8846F7EAEE8FB117AD06BDD830B7586C and 8846f7eaee8fb117ad06bdd830b7586c represent the same 16-byte value. The output from this tool uses lowercase by default, matching the convention of most open source libraries.

Is it safe to paste a real password into an online NTLM hash generator?

No — you should never paste a live production credential or real plaintext into any online tool. Even over an HTTPS connection, the credential leaves your machine and is processed on a remote server. The risk is real: if the service is compromised, logged, or misused, your credential is exposed. Use this tool only with dummy test values, published reference vectors like password8846f7eaee8fb117ad06bdd830b7586c, or throwaway lab strings that carry no access privilege. For generating NT hashes from real credentials in a secure workflow, use a local implementation — python hashlib, OpenSSL, or a locally installed utility — so the plaintext never leaves your controlled environment. This is a compliance and operational requirement in most enterprise policies, and the guidance applies to MD4, MD5, SHA-256, and all other online hash tools equally.

How can I verify that the NTLM hash generator is producing correct output?

Cross-check against the published reference value: entering the string password must return exactly 8846f7eaee8fb117ad06bdd830b7586c. This is the widely known reference value documented in NTLM implementations and used in testing frameworks worldwide. If your tool returns this exact value, both the UTF-16LE step and the MD4 step are functioning correctly. You can also cross-check with a SHA-1 hash output, an msdcc2 hash, and other reference results using multi-algorithm tools like the GitHub-hosted ntlmhashgen script, which computes LM, NT, and SHA-1 values for the same credential set in a single pass — useful for lab environments that need multiple output strings for comprehensive cracking exercises. The computation is deterministic: the same text always produces the same fully predictable output. Credential strength is the only variable that affects how quickly a generated hash can be reversed via dictionary or brute-force attack — so use this tool to understand the relationship between passphrase length and cryptographic resistance as part of your development and cybersecurity education.

Whether you are a web developer validating Windows-authenticated endpoints, a QA engineer maintaining a regression suite of login tests, or a security professional studying NTLM weaknesses for compliance or forensics purposes, this free tool gives you an accurate, instant NT hash for any supplied text. Use the known reference vector to confirm correct operation, keep your lab credentials isolated, and treat the NT hash as what it is: a powerful stored secret that demands careful handling in any networked environment.

Frequently Asked Questions

What is the NTLM hash used for?
It's the format Windows has used since NT to store password verifiers locally (in the SAM database) and in Active Directory (NTDS.dit) -- and it's still used today in the NTLM authentication protocol for network logons, even on modern Windows systems, for backward compatibility.
Why does NTLM use MD4, and is that a problem?
MD4 was chosen when NTLM was designed in the early 1990s, well before MD4's cryptographic weaknesses (practical collision attacks) were discovered. Because NTLM has no salt and MD4 is extremely fast, precomputed rainbow tables and GPU brute-force attacks against NTLM hashes are very effective -- this is a well-known, long-standing weakness that's exactly why NTLM is considered legacy and Kerberos is preferred wherever possible.
Why UTF-16LE and not UTF-8?
Windows has used UTF-16LE as its native internal string encoding since NT, so NTLM hashes the password exactly as Windows represents it internally -- 2 bytes per character, little-endian byte order -- rather than converting to UTF-8 first.
Is this the same as a Windows password hash dump?
It's the same NT hash value that tools like Mimikatz or a SAM database dump would show for that password -- but generating one here doesn't interact with any real Windows system. This tool exists for security research, penetration testing labs, and understanding how NTLM authentication works, not for attacking systems you don't have authorization to test.
Is my password sent anywhere?
No. The hash is computed entirely in your browser using a hand-rolled MD4 implementation -- nothing is transmitted to a server or stored.