Cách sử dụng
- Chọn "Mã hoá" để chuyển văn bản thành Base64, hoặc "Giải mã" để chuyển Base64 về văn bản. Muốn thử nhanh, bấm "Ví dụ".
- Dán nội dung vào khung bên trên, hoặc bấm "Mở tệp" để mở một tệp văn bản. Kết quả hiện ngay ở khung "Kết quả" và cập nhật khi bạn gõ hay đổi chế độ.
- Bật "URL-safe" nếu Base64 dùng trong URL, JWT hoặc tên tệp (dùng - và _, không có dấu =). Phải bật cùng một cách khi mã hoá và khi giải mã.
- Bấm "Sao chép kết quả" ở đầu khung "Kết quả". Bấm nút mũi tên lên để đảo chiều: kết quả thành đầu vào và chế độ đổi theo, tiện để kiểm tra mã hoá rồi giải mã lại.
Base64 hoạt động thế nào
- Base64 chỉ là cách viết dữ liệu thành chữ, ai cũng giải ngược lại được. Nó không phải mã hoá bảo mật: đừng dùng Base64 để giấu mật khẩu hay dữ liệu nhạy cảm.
- Văn bản được đổi sang byte theo UTF-8 rồi mới mã hoá, nên chữ có dấu, emoji và mọi ngôn ngữ đều giữ nguyên khi giải mã. Kết quả dài hơn dữ liệu gốc khoảng một phần ba.
- Bảng ký tự chuẩn gồm chữ cái, chữ số, + và /, thêm dấu = ở cuối để độ dài chia hết cho 4. Dạng URL-safe thay + và / bằng - và _ và bỏ dấu =; khi giải mã dạng này, dấu = có hay không đều được.
- Khi giải mã, khoảng trắng và dấu xuống dòng được bỏ qua (Base64 trong email hay tệp PEM thường bị ngắt dòng). Ký tự khác ngoài bảng ký tự không bị sửa: công cụ báo đúng ký tự và vị trí.
- Có hai kiểu lỗi khác nhau. "Base64 không hợp lệ": chuỗi sai ký tự, sai dấu = hoặc sai độ dài. "Không phải văn bản UTF-8": chuỗi đúng Base64 nhưng nội dung là dữ liệu nhị phân như ảnh hay tệp nén.
- Công cụ chỉ xử lý văn bản. Mã hoá ảnh hay tệp nhị phân chưa được hỗ trợ.
Câu hỏi thường gặp
Văn bản của tôi có bị gửi lên máy chủ không?
Không. Mã hoá và giải mã chạy bằng JavaScript ngay trong trình duyệt; nội dung không được gửi đi, không được lưu lại ở đâu cả.
Base64 có phải là mã hoá bảo mật không?
Không. Base64 chỉ đổi cách biểu diễn dữ liệu và ai cũng giải ngược lại được. Nếu cần giữ bí mật, hãy dùng mã hoá thật sự với khoá, đừng dựa vào Base64.
URL-safe là gì và khi nào cần bật?
Base64 chuẩn có ký tự +, / và =, những ký tự có nghĩa riêng trong URL. Dạng URL-safe dùng - và _ thay cho + và /, bỏ dấu =, nên đặt được trong URL, tên tệp và JWT. Bật tuỳ chọn khi bạn mã hoá cho những nơi đó, và khi giải mã chuỗi có - hoặc _.
Vì sao giải mã báo "Base64 không hợp lệ"?
Chuỗi có ký tự ngoài bảng ký tự, thiếu hoặc thừa dấu = ở cuối, hoặc có độ dài không thể thành các byte trọn vẹn. Công cụ nói rõ nguyên nhân và vị trí ký tự sai, nhưng không tự sửa vì sửa có thể làm đổi nội dung. Nếu chuỗi dùng - và _, hãy bật "URL-safe".
Vì sao báo "Không phải văn bản UTF-8"?
Chuỗi đúng Base64 nhưng khi giải mã ra thì không phải chữ: thường là ảnh, tệp nén hoặc dữ liệu nhị phân. Công cụ này chỉ hiển thị văn bản nên không thể xem nội dung đó.
Có giới hạn độ dài không?
Có. Văn bản tối đa 1 MB (đo theo UTF-8); chuỗi Base64 tối đa bằng Base64 của 1 MB văn bản, khoảng 1,33 MB. Vượt giới hạn thì không xử lý thay vì cắt bớt âm thầm; hãy chia nhỏ rồi làm từng phần.
Vì sao nút "Sao chép kết quả" báo không thể sao chép?
Trình duyệt có thể chặn quyền ghi vào bộ nhớ tạm (clipboard). Khi đó kết quả được chọn sẵn: nhấn Ctrl+C (hoặc ⌘+C trên Mac) để sao chép.