Công cụ tạo hash SHA-256
Tạo mã hash SHA-256 của bất kỳ văn bản nào ngay trong trình duyệt. Đầu vào UTF-8, hex hoặc Base64; đầu ra hex hoặc Base64. Miễn phí, riêng tư, không tải lên.
Chạy hoàn toàn trong trình duyệt. Dữ liệu của bạn không bao giờ bị tải lên.
Tạo hash SHA-256 là gì?
SHA-256 là thành viên được dùng rộng rãi nhất của họ SHA-2 và tạo ra giá trị băm 256 bit (64 ký tự hex). Nó bảo vệ chứng chỉ TLS, bản tải phần mềm, Bitcoin và vô số API. Công cụ này tính giá trị băm SHA-256 256 bit của văn bản hoặc byte thô (hex hoặc Base64) ngay khi bạn gõ và hiển thị dưới dạng 64 ký tự hex hoặc Base64.
Cách sử dụng Tạo hash SHA-256
- Gõ hoặc dán dữ liệu vào ô Văn bản cần băm — giá trị băm cập nhật khi bạn gõ (ô trống hiển thị hash của đầu vào rỗng).
- Chọn Mã hóa đầu vào: Văn bản (UTF-8) băm các ký tự theo UTF-8, Byte dạng hex hoặc Base64 băm các byte thô sau khi giải mã.
- Chọn Định dạng đầu ra (hex chữ thường, hex chữ hoa hoặc Base64) và bấm Sao chép.
Ví dụ
abc
ba7816bf8f01cfea414140de5dae2223b00361a396177a9cb410ff61f20015ad
SHA-256 của 3 byte ASCII "abc" (UTF-8, đầu ra hex chữ thường), vector kiểm thử chuẩn.
Khi nào nên dùng Tạo hash SHA-256
Dùng công cụ băm văn bản SHA-256 để băm chuỗi: tái tạo một giá trị trong tài liệu hoặc mã nguồn, tạo vector kiểm thử, so sánh đầu vào chữ ký API, hoặc kiểm tra một chương trình lẽ ra phải xuất ra gì. Đừng dùng nó để kiểm tra file tải về: sao chép nội dung file vào ô văn bản làm thay đổi ký tự xuống dòng và cách mã hóa, nên hãy dùng công cụ checksum file SHA-256. Để lưu mật khẩu, hãy dùng hàm băm mật khẩu chuyên dụng; để bảo đảm toàn vẹn có khóa, hãy dùng HMAC-SHA256.
Tạo hash SHA-256 hoạt động như thế nào
SHA-256 đệm thông điệp bằng một bit 1, các bit 0 và độ dài bit 64 bit big-endian cho đủ bội số của 512 bit. Mỗi khối được mở rộng thành 64 từ và trộn vào tám từ trạng thái 32 bit qua 64 vòng bằng các hàm Σ0, Σ1, Ch và Maj cùng 64 hằng số suy ra từ căn bậc ba của các số nguyên tố đầu tiên. Tám từ cuối cùng là giá trị băm. Văn bản trước tiên được chuyển thành byte (mặc định UTF-8), nên cùng các ký tự luôn cho cùng một hash.
Các Trường Hợp Sử Dụng Phổ Biến
- Kiểm tra giá trị SHA-256 mong đợi của một chuỗi trong unit test hoặc fixture
- Băm byte hex sao chép từ debugger, bản bắt gói tin hoặc đặc tả giao thức
- So sánh kết quả SHA-256 giữa hai ngôn ngữ lập trình cho ra khác nhau
- Tạo định danh tất định hoặc khóa cache từ văn bản
- Lấy dạng Base64 của giá trị băm SHA-256 cho header hoặc file cấu hình
Lưu Ý Bảo Mật
SHA-256 chưa có tấn công thực tế nào được biết. Hàm băm thuần cũng không phù hợp để lưu mật khẩu: hãy dùng hàm băm mật khẩu chậm, có salt như Argon2, scrypt hoặc bcrypt. Mọi thứ được tính cục bộ trong trình duyệt; những gì bạn gõ không được gửi đi đâu cả.
Câu Hỏi Thường Gặp
SHA-256 có an toàn không?
Có. Chưa có tấn công va chạm hay tiền ảnh thực tế nào được biết; tìm một va chạm vẫn cần khoảng 2^128 phép tính. Nó được NIST phê duyệt và dùng khắp TLS, ký mã và blockchain.
Vì sao SHA-256 của file tôi khác với kết quả trên trang văn bản này?
Văn bản được băm theo byte UTF-8, nên thiếu ký tự xuống dòng ở cuối hoặc xuống dòng kiểu CRLF sẽ làm thay đổi kết quả. Để kiểm tra file tải về, hãy dùng công cụ checksum file SHA-256, công cụ này băm chính xác các byte của file.
Vì sao hash thay đổi hoàn toàn khi tôi đổi một ký tự?
Đó là hiệu ứng tuyết lở mà mọi hàm băm mật mã đều được thiết kế để có: đảo một bit đầu vào làm thay đổi khoảng một nửa trong 256 bit đầu ra, nên các đầu vào giống nhau cho ra giá trị băm không liên quan.
Dấu cách hoặc xuống dòng ở cuối có ảnh hưởng không?
Có. Hash bao gồm mọi byte, nên abc và abc kèm ký tự xuống dòng cho giá trị SHA-256 khác nhau. Hãy đảm bảo đầu vào chứa đúng những byte bạn muốn băm.