Hash Generator
Hashing uses the browser's Web Crypto API, which requires a secure context (HTTPS or localhost). This page is served over HTTPS, so hashing works normally here.
SHA-1, SHA-256 & SHA-512 for text and files, via the native Web Crypto API | 100% Private
Hashing uses the browser's Web Crypto API, which requires a secure context (HTTPS or localhost). This page is served over HTTPS, so hashing works normally here.
Uses crypto.subtle.digest() directly — no custom or hand-rolled hashing algorithms.
SHA-1, SHA-256, and SHA-512 all update simultaneously as you type.
Upload any file and hash its raw bytes to verify integrity or generate a checksum.
Each hash output has its own copy button for quick use elsewhere.
Text and files are hashed entirely inside your browser — nothing is ever uploaded.
Works over HTTPS or localhost, matching the Web Crypto API's security requirements.
A cryptographic hash function takes any input — text or a file — and produces a fixed-length fingerprint. The same input always produces the same hash, but even a tiny change in the input produces a completely different hash. This makes hashes useful for verifying file integrity, detecting tampering, and generating checksums.
Correctly implementing SHA-1, SHA-256, or SHA-512 by hand is easy to get subtly wrong, and any bug would silently produce incorrect hashes. This tool relies entirely on the Web Crypto API's built-in, browser-native, standards-compliant implementation, so the output always matches what any other correct SHA implementation would produce for the same input.
SHA-1 produces a 160-bit (40 hex character) hash and is no longer considered secure against determined attackers, though it's still used for legacy checksums. SHA-256 (256-bit, 64 hex characters) and SHA-512 (512-bit, 128 hex characters) are part of the SHA-2 family and remain the current standard for security-sensitive applications like digital signatures and password storage (typically combined with salting).
This tool computes SHA-1, SHA-256 and SHA-512 hashes, all generated using the browser's built-in Web Crypto API (crypto.subtle.digest) — no hand-written hashing code is used.
The Web Crypto API requires a secure context — HTTPS or localhost. UtilityX is served over HTTPS, so hashing works normally here. If you copy this page to a plain http:// server or open it directly as a file:// URL, crypto.subtle will be unavailable and hashing will not work.
Yes. Use the file upload option to select any file from your device. The tool reads it as an ArrayBuffer and computes SHA-1, SHA-256 and SHA-512 hashes of the raw file bytes, along with the file size.
No. All hashing happens locally in your browser using the Web Crypto API. Your text and files never leave your device.
SHA-1, SHA-256, and SHA-512 differ in output length and collision resistance. SHA-1 is considered weak for security purposes today; SHA-256 and SHA-512 are current standards used for checksums, digital signatures, and integrity verification.