Trình tạo hàm băm cho MD5, SHA-1, SHA-256 và nhiều hơn nữa
Gõ hoặc dán bất kỳ chuỗi nào và tạo ngay sáu hàm băm phổ biến trong trình duyệt mà không gửi giá trị lên máy chủ.
Nhập vào
Hàm băm được làm mới khi bạn gõ. Khoảng trắng và ngắt dòng được bao gồm chính xác như đã nhập.
SHA-1
SHA-224
SHA-256
SHA-384
SHA-512
So sánh thuật toán
Tất cả sáu thuật toán đều chạy trong trình duyệt của bạn. Hiểu sự khác biệt giúp bạn chọn đúng thuật toán cho từng công việc.
Cách hoạt động của hàm băm
Hàm băm nhận bất kỳ đầu vào nào - một ký tự đơn lẻ hoặc toàn bộ tệp - và tạo ra một chuỗi có độ dài cố định gọi là digest. Nhập cùng một đầu vào hai lần và bạn luôn nhận được kết quả giống hệt nhau. Thay đổi dù chỉ một byte và digest thay đổi hoàn toàn. Đây là hiệu ứng tuyết lở (avalanche effect).
Băm là một thao tác một chiều: không có phép nghịch đảo toán học nào có thể tái tạo lại đầu vào gốc từ digest của nó. Đặc tính này làm cho hàm băm hữu ích trong việc xác minh tính toàn vẹn của tệp mà không cần lưu trữ chính tệp đó, và để xác nhận mật khẩu khớp mà không cần lưu văn bản gốc.
Khả năng chống va chạm (collision resistance) là điều phân biệt các thuật toán hiện đại với các thuật toán đã lỗi thời. Va chạm xảy ra khi hai đầu vào khác nhau tạo ra cùng một digest. MD5 và SHA-1 dễ bị tấn công va chạm có chủ đích, đó là lý do chúng không còn được tin dùng cho các tác vụ nhạy cảm về bảo mật. SHA-256 trở lên không có va chạm thực tế nào được biết đến.
Chọn đúng thuật toán
- MD5 Chỉ dùng cho checksum không liên quan đến bảo mật khi các công cụ cũ yêu cầu. Không bao giờ dùng cho mật khẩu hoặc chữ ký số.
- SHA-1 Tránh dùng cho dự án mới. Chỉ chấp nhận khi tương tác với các hệ thống chưa được chuyển đổi.
- SHA-256 Lựa chọn mặc định an toàn cho hầu hết các trường hợp: xác minh tệp, ký yêu cầu API, khóa HMAC.
- SHA-512 Ưu tiên khi xây dựng quy trình băm mật khẩu hoặc khi cần digest lớn hơn để có thêm độ an toàn.
- SHA-384 Dùng cho thuộc tính kiểm tra tính toàn vẹn tài nguyên con (SRI) của trình duyệt và đàm phán mã hóa tương thích TLS 1.3.
- SHA-224 Sử dụng hạn chế trên các thiết bị bị giới hạn hoặc giao thức có giới hạn cứng về kích thước digest.
Câu hỏi thường gặp
Các câu hỏi thường gặp về hàm băm và cách sử dụng chúng an toàn.
Không. Hàm hash được thiết kế theo một chiều. Không có phép nghịch đảo toán học nào có thể tái tạo chuỗi gốc từ giá trị hash của nó. Các cuộc tấn công có vẻ như 'bẻ khóa' hash thực chất là tra cứu từ điển hoặc tìm kiếm brute-force - chúng tìm một đầu vào tạo ra cùng hash, chứ không phải văn bản gốc.
Không cái nào phù hợp trực tiếp. MD5 và SHA-256 là các hàm hash đa năng được thiết kế để chạy nhanh, điều này khiến chúng dễ bị tấn công brute-force khi dùng cho mật khẩu. Hãy sử dụng hàm hash chậm chuyên dụng như bcrypt, scrypt hoặc Argon2 cho mật khẩu. Các hàm này thêm chi phí tính toán có chủ đích và một salt riêng cho mỗi mật khẩu, khiến việc bẻ khóa quy mô lớn trở nên không khả thi.
Không. Tất cả quá trình băm chạy hoàn toàn trong trình duyệt của bạn bằng thư viện CryptoJS. Văn bản của bạn không bao giờ rời khỏi thiết bị và máy chủ chỉ phục vụ các tài nguyên trang web. Điều này giúp công cụ an toàn để băm các chuỗi nhạy cảm như API key hoặc các giá trị cấu hình bạn cần xác minh.
Xung đột xảy ra khi hai đầu vào khác nhau tạo ra cùng một giá trị hash. Về mặt lý thuyết, xung đột là không thể tránh khỏi vì đầu ra hash có độ dài cố định trong khi đầu vào là không giới hạn, nhưng một thuật toán bảo mật khiến việc cố tình tìm ra xung đột là không khả thi về mặt tính toán. MD5 và SHA-1 có các cuộc tấn công xung đột thực tế đã biết, nghĩa là kẻ tấn công có thể giả mạo một tệp hoặc chứng chỉ khớp với giá trị hash hợp lệ. SHA-256 trở lên không có xung đột thực tế nào được biết đến.
Thêm công cụ bảo mật
Tất cả những gì bạn cần để chia sẻ dữ liệu riêng tư an toàn - miễn phí, không cần tài khoản, chạy trên trình duyệt của bạn.
SecretNote
Viết một ghi chú riêng tư, tạo liên kết một lần và chia sẻ. Ghi chú sẽ tự hủy ngay khi được đọc - không có gì được lưu trữ, không có gì bị rò rỉ.
SecretScreen
Tải lên ảnh chụp màn hình và nhận liên kết chia sẻ tự hủy. Hình ảnh được mã hóa trước khi tải lên và xóa sau lần xem đầu tiên - không lưu trữ vĩnh viễn.
SecretFile
Tải lên bất kỳ tệp nào và chia sẻ liên kết tải xuống một lần. Tệp được mã hóa đầu cuối và xóa vĩnh viễn sau khi người nhận tải xuống.
Trình tạo hàm băm
Tạo ngay các hash MD5, SHA-1, SHA-224, SHA-256, SHA-384 và SHA-512 trên trình duyệt của bạn. Dữ liệu nhập của bạn không bao giờ được gửi lên máy chủ.
Trình tạo mật khẩu
Tạo mật khẩu mạnh, ngẫu nhiên với toàn quyền kiểm soát độ dài và bộ ký tự. Mọi thứ chạy cục bộ - mật khẩu của bạn không bao giờ được gửi lên máy chủ.