Trình tạo hash SHA256

Dán bất kỳ văn bản nào và trình tạo này trả về digest SHA-256 của nó dưới dạng chuỗi hex xác định gồm 64 ký tự thường. SHA-256 là thành viên 256-bit của họ SHA-2 và là hàm băm mặc định trên thực tế của mật mã học hiện đại: hash khối Bitcoin, bản ghi TLS 1.3, chữ ký JWT HS256 và digest ảnh container đều dựa vào nó. Hãy nhớ rằng SHA-256 là hàm băm một chiều, không phải mã hóa: bạn không thể giải mã hay đảo ngược một digest để lấy lại văn bản gốc.

Cách tạo một digest SHA-256

  1. 1

    Nhập văn bản

    Gõ hoặc dán bất kỳ chuỗi UTF-8 nào: một câu, một payload JSON, một khóa API, hoặc bất kỳ văn bản nào bạn muốn tạo dấu vân tay.

  2. 2

    UTF-8 là bảng mã đầu vào

    Văn bản được tuần tự hóa thành các byte UTF-8 trước khi băm, giống như mọi thư viện SHA-256 thông dụng.

  3. 3

    Hash được tính toán

    Thông điệp được đệm cho đủ bội số của 512 bit và được xử lý theo từng khối qua hàm nén SHA-256 trong 64 vòng.

  4. 4

    Sao chép hex 64 ký tự

    Kết quả luôn là 64 ký tự hex viết thường (256 bit). Sao chép chỉ với một cú nhấp.

Thông tin về SHA-256

Thuộc tính Giá trị
Kích thước đầu ra 256 bit / 64 ký tự hex
Kích thước khối 512 bit
Số vòng 64
Kháng va chạm ~2^128 phép tính (lý thuyết)
Kháng tiền ảnh ~2^256 phép tính
Hỗ trợ phần cứng Phần mở rộng SHA trên Intel/AMD/ARM (sha256rnds2, sha256h)

SHA-256 xuất hiện ở đâu

  • Bitcoin. SHA-256 kép (SHA256(SHA256(x))) cho tiêu đề khối, địa chỉ và TXID.
  • TLS 1.3. Hash bản ghi ràng buộc các thông điệp bắt tay vào lịch khóa cuối cùng.
  • Subresource Integrity. integrity="sha256-..." trên thẻ <script> để trình duyệt từ chối tài nguyên CDN bị can thiệp.
  • JWT. HS256 dùng HMAC-SHA-256; RS256 và ES256 dùng SHA-256 với RSA hoặc ECDSA.
  • Ảnh container. Digest sha256:abc123... định danh các lớp ảnh trong registry.
  • Định địa chỉ theo nội dung. IPFS, git (tùy chọn) và chỉ mục gói định danh nội dung bằng SHA-256.

Công cụ này trả về hex

Digest được hiển thị dưới dạng 64 ký tự hex viết thường, cùng dạng mà sha256sum, Git và hầu hết công cụ sử dụng. Các hệ sinh thái khác mã hóa cùng 32 byte đó theo cách khác: Subresource Integrity và một số chữ ký AWS dùng base64 (44 ký tự kể cả phần đệm), còn registry container thêm tiền tố sha256: vào trước hex. Nếu bạn cần một trong các dạng đó, hãy lấy hex ở đây và mã hóa lại các byte: digest bên dưới là như nhau.

Một điểm nhỏ dễ vấp: ký tự xuống dòng cuối

echo "hello" | sha256sum băm hello\n (sáu byte), không phải năm. Nếu một công cụ dòng lệnh trả về giá trị khác với trình tạo này cho cùng một đầu vào tưởng chừng giống nhau, hãy kiểm tra xem có ký tự xuống dòng cuối được đưa vào hay không. Dùng echo -n "hello" hoặc printf "hello" để băm đúng năm byte.

Câu hỏi thường gặp

Không. Trình tạo này băm văn bản mà bạn gõ hoặc dán. Để tạo dấu vân tay của một tệp, hãy dùng công cụ dòng lệnh như sha256sum tep, shasum -a 256 tep hoặc certutil -hashfile tep SHA256, vốn đọc các byte thô trên đĩa.

Tự nó thì không. SHA-256 nhanh, điều này tốt cho checksum nhưng dở cho việc lưu trữ mật khẩu: kẻ tấn công có thể tính hàng tỷ hash mỗi giây trên GPU. Hãy dùng Argon2id hoặc bcrypt cho mật khẩu; SHA-256 phù hợp bên trong các mã xác thực dựa trên HMAC.

SHA-2 là cả họ (SHA-224, SHA-256, SHA-384, SHA-512). SHA-256 là một độ dài đầu ra cụ thể. Khi ai đó nói “SHA-2” mà không nêu rõ, thường họ muốn nói SHA-256.

Trên máy chủ của chúng tôi. Văn bản của bạn được gửi qua kết nối được mã hóa, được băm bằng hàm SHA-256 tiêu chuẩn, và digest 64 ký tự được trả về. Chúng tôi không lưu những gì bạn gửi. SHA-256 là một chiều, nên digest không thể đảo ngược hay giải mã trở lại thành đầu vào của bạn.

Công cụ liên quan

Công cụ này có phiên bản bằng các ngôn ngữ khác