Base64 là gì?
Base64 là cách biểu diễn dữ liệu nhị phân bằng tập 64 ký tự (A–Z, a–z, 0–9, và thường là + / cùng dấu = để padding). Mục tiêu không phải che giấu thông tin, mà là đưa dữ liệu qua các kênh chỉ an toàn với văn bản: email (MIME), JSON, thuộc tính HTML, hoặc tham số URL (khi dùng biến thể URL-safe). Mỗi ba byte gốc được gom thành bốn ký tự Base64; nếu số byte không chia hết cho ba, chuỗi kết thúc bằng một hoặc hai dấu bằng để đánh dấu padding.
Công cụ trên trang này hỗ trợ hai chiều: Encode (văn bản → Base64) và Decode (Base64 → văn bản). Văn bản tiếng Việt được xử lý đúng nhờ quy trình UTF-8: mã hóa từng ký tự có dấu thành chuỗi byte, rồi mới gọi Base64 — tránh lỗi thường gặp khi dùng hàm btoa trực tiếp trên chuỗi JavaScript chứa dấu. Giải mã đi đường ngược lại với atob rồi TextDecoder, nên chữ ă, â, đ, ê, ô, ơ, ư và các dấu thanh được khôi phục nguyên vẹn.
Base64 dùng để làm gì?
Lập trình viên và người làm nội dung số dùng Base64 rất thường xuyên trong các tình huống thực tế:
- Nhúng ảnh hoặc file nhỏ dạng data URI (
data:image/png;base64,...) để trang tải được mà không cần file rời. - Truyền token, khóa công khai hoặc payload trong header HTTP và cấu hình dạng text.
- Lưu tạm dữ liệu nhị phân trong log, biến môi trường hoặc ticket hỗ trợ kỹ thuật.
- Kiểm tra nhanh chuỗi Base64 nhận từ đồng nghiệp hay tài liệu API có giải ra đúng nội dung UTF-8 hay không.
- Đưa chuỗi vào URL hoặc tên file nhờ biến thể URL-safe (đổi + thành -, / thành _, bỏ =) theo RFC 4648 mục 5.
Tùy chọn URL-safe trên form giúp bạn chuyển qua lại giữa bảng chữ chuẩn và bảng chữ an toàn cho đường dẫn mà không cần công cụ khác.
Base64 không phải mã hóa bảo mật
Dù giao diện hay gọi là “mã hóa Base64”, bản chất chỉ là encoding (đổi dạng biểu diễn), không cung cấp bảo mật. Ai cũng có thể giải mã bằng một công cụ decode công khai. Không dùng Base64 để giấu mật khẩu, che số tài khoản, hay bảo vệ dữ liệu nhạy cảm. Nhu cầu bảo mật cần HTTPS, thuật toán mật mã đúng chuẩn (ví dụ AES, hộp thư mã hóa đầu cuối) và quy trình quản lý khóa — Base64 không thay thế được các lớp đó.
Ví dụ minh họa: chuỗi Xin chào Việt Nam sau khi encode UTF-8 Base64 trở thành một dãy chữ ASCII dài; bất kỳ ai dán vào ô Decode cũng đọc lại được đúng tiếng Việt. Nếu chuỗi bị cắt, lẫn ký tự lạ, hoặc không thuộc bảng Base64, công cụ báo lỗi rõ bằng tiếng Việt thay vì hiện kết quả sai lệch.
Cách dùng và lưu ý thực tế
Chọn Encode hoặc Decode, dán nội dung vào ô nhập, bật URL-safe khi chuỗi sẽ nằm trong URL, rồi nhấn Sao chép kết quả. Nút “Đảo chiều” đưa kết quả hiện tại sang chiều ngược để kiểm tra round-trip nhanh. Khoảng trắng và xuống dòng trong chuỗi Base64 khi decode thường được bỏ qua để bạn dán từ email hay PDF cho tiện.
Mọi phép tính chạy hoàn toàn trên trình duyệt của bạn, không gửi văn bản lên máy chủ. Với file nhị phân lớn hay chứng chỉ, hãy cân nhắc công cụ chuyên dụng trên máy tính; trang này tối ưu cho văn bản và chuỗi Base64 vừa phải thường gặp khi lập trình web, debug API hoặc soạn tài liệu kỹ thuật.
Base64 không phải mã hóa bảo mật
Đây là điểm hay bị hiểu nhầm nhất. Base64 chỉ là cách biểu diễn lại dữ liệu để truyền an toàn qua các kênh chỉ chấp nhận văn bản — bất kỳ ai cũng giải mã ngược trong một giây. Đừng bao giờ dùng nó để giấu mật khẩu hay token.
Cùng nhóm hiểu nhầm này là mã hóa URL, cũng là phép biểu diễn chứ không phải bảo mật. Khi bạn thực sự cần một giá trị không thể đảo ngược — ví dụ để so sánh hay lưu dấu vân dữ liệu — thì hàm băm SHA mới là công cụ đúng, và với cả một tệp thì dùng công cụ tính mã băm file.
Khi debug API, chuỗi bạn giải mã từ Base64 thường là JSON — công cụ format JSON giúp bung ra dạng dễ đọc và bắt lỗi cú pháp ngay.