Chuyển tới nội dung chính

Mã hoá & băm

Mã hoá, giải mã Base64 và mã thoát URL, hoặc băm văn bản bằng MD5, SHA-1, SHA-256, SHA-512, kèm hình minh hoạ cách chuyển đổi.

Đầu vào

Kiểu
Chiều
Bảng chữ

Base64

Cách chuyển đổi

Gõ gì đó để xem cách chuyển đổi.

Kết quả hiện ở đây.

Chạy ngay trên trình duyệt; những gì bạn nhập không rời khỏi trang này.

Cách hoạt động

Base64

Văn bản được đổi thành các byte UTF-8 trước. Cứ ba byte (24 bit) được cắt thành bốn nhóm sáu bit, và mỗi số sáu bit từ 0 đến 63 chọn một chữ trong A–Z, a–z, 0–9, + và /. Khi nhóm cuối bị thiếu, các bit 0 được bù vào và dấu = được thêm cho đủ bội số của bốn. Hình minh hoạ vẽ đúng cách gom nhóm này cho các nhóm đầu tiên.

Bảng chữ an toàn URL thay + và / bằng - và _, đồng thời bỏ dấu = ở cuối, để kết quả dùng được trong URL hay tên file. Khi giải mã, công cụ nhận cả hai bảng chữ, dấu cách, xuống dòng và chuỗi thiếu dấu =.

độ dài kết quả = 4 × ⌈số byte ÷ 3⌉

Mã thoát URL

Chế độ URL hoạt động như encodeURIComponent của JavaScript: chữ cái, chữ số và - _ . ! ~ * ' ( ) giữ nguyên, mọi ký tự khác thành dấu % kèm hai chữ số hex cho mỗi byte UTF-8 của nó. Dấu cách thành %20, chữ é thành %C3%A9. Giải mã làm ngược lại và báo lỗi ở dấu % không mở đầu một mã thoát hợp lệ.

Hàm băm

Hàm băm biến mọi đầu vào thành một dấu vân tay có kích thước cố định: 128 bit với MD5, 160 với SHA-1, 256 với SHA-256 và 512 với SHA-512. Các hàm SHA dùng Web Crypto của trình duyệt; MD5 được tính bằng một bản cài đặt nhỏ theo RFC 1321, vì Web Crypto không có MD5.

Chỉ cần đổi một chữ là khoảng một nửa số bit thay đổi. Dòng dưới lưới đếm số bit đã đổi so với lần sửa trước, để bạn thấy hiệu ứng lan truyền này.