Encode và decode Base64, URL, HTML entity, Hex
Mã hoá và giải mã hai chiều: Base64, Base64 URL, URL, HTML entity, Hex, mã ASCII. Giữ đúng tiếng Việt có dấu (UTF-8).
RFC 4648 standard - dùng cho data URI, binary in JSON
Plain text
Base64 output
QUxPREVWIC0gxJHhu5FpIHTDoWMgY8O0bmcgbmdo4buH
Sáu kiểu mã hoá và chỗ dùng đúng của từng kiểu
Công cụ này chuyển đổi gì
Hai chiều giữa văn bản và sáu dạng: Base64 chuẩn, Base64 an toàn cho địa chỉ web, mã hoá phần trăm dùng trong địa chỉ, thực thể HTML, chuỗi thập lục phân từng byte, và dãy mã byte viết dưới dạng số thập phân. Mọi phép biến đổi đều đi qua UTF-8 nên tiếng Việt có dấu giữ nguyên thay vì biến thành dấu hỏi.
Việc hằng ngày cần tới nó
Khi đọc một chuỗi Base64 nằm trong tệp cấu hình hoặc trong nhật ký hệ thống. Khi ghép chuỗi truy vấn có tiếng Việt vào địa chỉ. Khi nhét một giá trị nhiều dòng vào biến môi trường hoặc vào khoá bí mật của cụm máy chủ. Khi cần biến một đoạn HTML thành văn bản hiển thị được thay vì để nó chạy. Khi đọc phần dữ liệu thô dạng thập lục phân lúc gỡ lỗi giao thức.
Đọc kết quả
Biến thể an toàn cho địa chỉ web thay dấu cộng bằng dấu trừ, thay dấu chia bằng dấu gạch dưới và bỏ dấu bằng ở cuối; đó chính là biến thể dùng trong JWT và trong tham số địa chỉ. Ô thập lục phân và ô mã byte cho thấy rõ mỗi ký tự tiếng Việt có dấu tốn nhiều hơn một byte, con số này quan trọng khi bạn giới hạn độ dài trường trong cơ sở dữ liệu.
Nhầm lẫn thường thấy
Base64 không phải mã hoá bảo mật, bất kỳ ai cũng giải ngược trong một giây; dùng nó để giấu mật khẩu trong tệp cấu hình là tự lừa mình. Dán nhầm chuỗi Base64 chuẩn vào ô an toàn cho địa chỉ sẽ ra kết quả rỗng vì bảng ký tự khác nhau. Mã hoá phần trăm cho phần đường dẫn và cho phần truy vấn có luật khác nhau, dấu cộng trong phần truy vấn được hiểu là khoảng trắng. Chuyển sang thực thể HTML ở đây làm theo mã số ký tự, đủ để hiển thị an toàn trong phần thân trang nhưng không thay thế được việc lọc đúng ngữ cảnh khi giá trị nằm trong thuộc tính hoặc trong mã kịch bản.
Văn bản của bạn không rời trình duyệt. Mọi phép mã hoá và giải mã dùng TextEncoder cùng các hàm dựng sẵn của trình duyệt, chạy ngay tại máy; nội dung bạn dán vào không được gửi đi đâu.
Câu hỏi thường gặp
Base64 có phải là mã hoá bảo mật không?
Không. Base64 chỉ là cách biểu diễn dữ liệu, bất kỳ ai cũng giải ngược được trong một giây; dùng nó để giấu mật khẩu trong tệp cấu hình là tự lừa mình.
Base64 URL khác Base64 chuẩn ở điểm nào?
Base64 URL thay dấu cộng bằng dấu trừ, thay dấu chia bằng gạch dưới và bỏ dấu bằng ở cuối - đây là biến thể dùng trong JWT và tham số địa chỉ web.
Khi nào nên dùng URL Encode thay vì Base64?
Khi cần ghép giá trị có ký tự đặc biệt hoặc tiếng Việt vào query string hay đường dẫn URL, vì URL Encode theo đúng chuẩn phần trăm RFC 3986.
Công cụ có giữ đúng tiếng Việt có dấu không?
Có. Mọi phép chuyển đổi đều đi qua UTF-8 nên tiếng Việt có dấu giữ nguyên thay vì biến thành ký tự lỗi.
