Bộ mã hóa Base64 / Bộ giải mã
Mã hóa văn bản hoặc tệp thành Base64 và giải mã chuỗi Base64 ngay lập tức trong trình duyệt của bạn. Miễn phí, riêng tư và không cần tải lên.
Mã hóa văn bản hoặc tệp thành Base64 và giải mã chuỗi Base64 ngay lập tức trong trình duyệt của bạn. Miễn phí, riêng tư và không cần tải lên.
Base64 là sơ đồ mã hóa biểu thị dữ liệu nhị phân dưới dạng văn bản ASCII sử dụng 64 ký tự có thể in được: A-Z, a-z, 0-9, dấu cộng (+) và dấu gạch chéo (/), với dấu bằng (=) được sử dụng để đệm. Định dạng này ban đầu được thiết kế để làm cho các tệp đính kèm nhị phân tồn tại trong quá trình truyền email sạch 7 bit, nhưng ngày nay nó đã mở rộng sang hàng chục mục đích sử dụng: URL dữ liệu trong HTML, JSON chứa dữ liệu hình ảnh, tải trọng JWT, tiêu đề xác thực cơ bản và bất kỳ giao thức dựa trên văn bản nào cần mang byte.
Mã hóa lấy 3 byte đầu vào và tạo ra 4 ký tự ASCII đầu ra. Do đó, đầu ra dài hơn 33% so với đầu vào - đó là chi phí để điều chỉnh nhị phân thành định dạng an toàn cho văn bản. Giải mã đảo ngược quá trình một cách chính xác, khôi phục các byte gốc từ văn bản được mã hóa.
Công cụ này xử lý cả hai hướng. Chế độ mã hóa lấy văn bản đầu vào (hoặc tệp nhị phân thông qua tải lên) và tạo ra văn bản base64. Chế độ giải mã lấy văn bản base64 và tạo ra văn bản gốc hoặc tệp nhị phân có thể tải xuống. Biến thể an toàn cho URL (sử dụng - và _ thay cho + và /) được hỗ trợ cho mã thông báo và số nhận dạng.
Base64 là cách tiêu chuẩn để nhúng dữ liệu nhị phân trong ngữ cảnh chỉ có văn bản. Hình ảnh nội tuyến trong HTML sử dụng URL dữ liệu (data:image/png;base64,...) nên một biểu tượng nhỏ có thể xuất hiện cùng với trang mà không cần yêu cầu riêng. Tải trọng JSON mang hình ảnh, chứng chỉ hoặc chữ ký mã hóa chúng dưới dạng chuỗi base64. Mã thông báo JWT là ba phân đoạn được mã hóa base64 được phân tách bằng dấu chấm.
Base64 cũng chuẩn hóa việc xử lý ký tự cho các giao thức xử lý sai hệ nhị phân 8 bit. Tiêu đề xác thực (Xác thực cơ bản sử dụng base64), tệp đính kèm email, tệp cấu hình chứa khóa và nhiều API yêu cầu base64 vì nhị phân không thể đi qua đường dẫn của chúng một cách đáng tin cậy.
Dán dữ liệu, chọn hướng.
Base64 ánh xạ mỗi 6 bit đầu vào thành một trong 64 ký tự đầu ra. Ba byte đầu vào (24 bit) tạo ra bốn ký tự đầu ra. Khi độ dài đầu vào không phải là bội số của 3, bộ mã hóa sẽ thêm một hoặc hai dấu bằng để đệm đầu ra thành bội số của 4 ký tự.
Base64 an toàn URL (được định nghĩa trong RFC 4648 phần 5) thay thế + bằng - và / bằng _ để tạo ra các chuỗi an toàn để sử dụng trong URL và tên tệp mà không cần thoát thêm. Dấu bằng đệm đôi khi bị bỏ qua trong ngữ cảnh an toàn cho URL; bộ giải mã thường chấp nhận cả hai hình thức.
btoa và atob của JavaScript xử lý trực tiếp ASCII nhưng không thành công trên các chuỗi không phải ASCII. Đối với văn bản UTF-8, trình chuyển đổi sử dụng TextEncode/TextDecoding để chuyển đổi giữa văn bản và nhị phân, sau đó mã hóa base64 nhị phân. Điều này xử lý chính xác biểu tượng cảm xúc, ký tự có dấu và chữ viết không phải tiếng Latinh.