🔧 Bộ Mã hóa Nhị phân Base64 — mã hóa tệp/byte thành Base64 (với tùy chọn Base64url + MIME)
Xử lý 100% phía máy khách (không tải lên máy chủ). Mã hóa tệp/byte nhị phân thành Base64 với các cài đặt định dạng (RFC 4648, Base64url, gói MIME), kiểm soát đệm, xác thực nghiêm ngặt và hỗ trợ hàng loạt nhiều tệp. Cũng hỗ trợ giải mã Base64 trở lại thành tệp có thể tải xuống.
Tính năng
- Tải lên hoặc kéo-thả tệp nhị phân (hỗ trợ hàng loạt nhiều tệp)
- Hai hành động: mã hóa tệp → Base64, hoặc giải mã Base64 → tải xuống tệp
- Cài đặt định dạng: RFC 4648 (chuẩn), RFC 4648 an toàn URL (Base64url), RFC 2045 MIME (gói 76 + CRLF)
- Kiểm soát đệm: Tự động, Luôn bao gồm "=", hoặc Bỏ qua đệm
- Độ dài gói dòng tùy chọn cho đầu ra mã hóa (0 để tắt; MIME thường dùng 76)
- Chế độ xác thực nghiêm ngặt để từ chối ký tự/đệm không hợp lệ (hữu ích cho gỡ lỗi)
- Dòng mới cuối cùng tùy chọn trên đầu ra Base64 (chế độ mã hóa)
- Xử lý 100% phía máy khách (không tải lên máy chủ).
Cách sử dụng for base64-binary-encoder
Thả một hoặc nhiều tệp (hoặc dán Base64 để giải mã)
Để mã hóa, kéo-thả tệp nhị phân của bạn vào khu vực tải lên. Để giải mã, dán chuỗi Base64 bạn nhận được (ví dụ từ JSON, nhật ký hoặc email).
Chọn hành động/chế độ và chạy nó
Chọn "Hành động": "Mã hóa tệp → Base64" hoặc "Giải mã Base64 → tệp", sau đó nhấp vào nút Chạy tương ứng (Mã hóa/Giải mã). Nếu cần, chọn cài đặt "Định dạng" (chuẩn/Base64url/MIME), điều chỉnh đệm và gói, và bật "Xác thực nghiêm ngặt" khi gỡ lỗi Base64 bị lỗi.
Sao chép đầu ra Base64 hoặc tải xuống tệp đã giải mã
Sau khi mã hóa, sao chép văn bản Base64 (tùy chọn được gói/kết thúc bằng dòng mới dựa trên cài đặt của bạn). Sau khi giải mã, tải xuống tệp nhị phân đã tái tạo (đặt tên tệp tuân theo quy tắc của công cụ khi có thể).
Thông số kỹ thuật
Mô hình Thực thi
Tiết lộ thời gian chạy, ràng buộc và điều gì xảy ra với dữ liệu của bạn.
| Khía cạnh | Chi tiết |
|---|---|
| Chế độ | Xử lý 100% phía máy khách (không tải lên máy chủ). |
| Phạm vi hành động | Mã hóa nhị phân → Base64 (chính), cộng với Giải mã Base64 → tải xuống nhị phân |
| Đầu vào | Mã hóa: Tệp/Blob/Uint8Array/ArrayBuffer/TypedArray. Giải mã: Chuỗi Base64 |
| Đầu ra | Mã hóa: Văn bản Base64. Giải mã: Byte dưới dạng tệp có thể tải xuống |
| Giới hạn | ~1–2MB ký tự; ~25000 ms thời gian chờ |
| Lưu giữ | Mọi xử lý diễn ra cục bộ trong trình duyệt của bạn (không tải lên) |
Ví Dụ Nhỏ
Một chuỗi byte nhỏ được mã hóa thành Base64 (theo chuẩn RFC 4648).
| Mục | Giá trị |
|---|---|
| Byte đầu vào (hex) | 00 01 02 03 04 05 06 07 08 09 |
| Base64 đầu ra | AAECAwQFBgcICQ== |
| Khi đầu ra khác biệt | Base64url thay đổi "+"/"/" thành "-"/"_"; phần đệm có thể được bỏ qua; MIME có thể ngắt dòng |
Lỗi & Trường Hợp Đặc Biệt
Các chế độ lỗi phổ biến và cách xử lý tiếp theo.
| Triệu chứng | Nguyên nhân có thể | Kiểm tra gì |
|---|---|---|
| Đầu vào phải là chuỗi để giải mã | Bạn đã thử giải mã nhưng cung cấp byte/tệp thay vì văn bản Base64 | Đặt Hành động thành "Mã hóa" cho tệp; để Giải mã, hãy dán một chuỗi Base64 |
| Công cụ này mã hóa dữ liệu nhị phân... không phải chuỗi văn bản | Bạn đã thử mã hóa bằng cách dán văn bản vào bộ mã hóa nhị phân | Tải lên một tệp (hoặc cung cấp byte) để Mã hóa; sử dụng công cụ Base64 văn bản cho quy trình làm việc thuần văn bản |
| Ký tự không hợp lệ / lỗi xác thực nghiêm ngặt | Base64 chứa các ký tự không được phép bởi định dạng đã chọn, hoặc phần đệm sai | Xác nhận "Định dạng" (chuẩn so với Base64url so với MIME) và "Phần đệm"; tắt Nghiêm ngặt để chấp nhận đầu vào linh hoạt |
| Lỗi độ dài/phần đệm (đặc biệt khi bật Nghiêm ngặt) | Base64 bị cắt ngắn, phần đệm "=" sai, hoặc bảng chữ cái hỗn hợp | Sao chép lại toàn bộ tải trọng; đảm bảo bạn không mất "=" ở cuối, hoặc đặt Phần đệm thành "Tự động" |
| Đầu vào quá lớn (tối đa 2MB) | Tải trọng vượt quá giới hạn an toàn của công cụ | Chia nhỏ tệp/tải trọng hoặc sử dụng CLI/script cục bộ cho dữ liệu lớn hơn |
| Lời gọi bộ chuyển đổi đã hết thời gian chờ | Xử lý vượt quá thời gian chờ ~25s (phụ thuộc vào kích thước/thiết bị) | Thử dữ liệu đầu vào nhỏ hơn, tắt Xem trước trực tiếp hoặc chuyển sang công cụ dòng lệnh cục bộ |
Các lựa chọn thay thế dòng lệnh
Đối với tệp lớn, dữ liệu bí mật hoặc sử dụng CI, hãy chạy mã hóa/giải mã Base64 cục bộ. Dưới đây là các tùy chọn tiêu chuẩn, có sẵn rộng rãi.
Linux/macOS (coreutils)
Mã hóa tệp sang Base64 (không ngắt dòng)
base64 -w 0 input.bin > output.b64.txtMã hóa input.bin sang Base64. Cờ -w 0 tắt tính năng ngắt dòng (GNU coreutils).
Mã hóa tệp sang Base64 kiểu MIME với ngắt dòng (76 ký tự/dòng)
base64 -w 76 input.bin > output.mime.b64.txtKhớp với độ dài dòng MIME phổ biến. (Ký tự kết thúc dòng có thể khác CRLF tùy nền tảng.)
Giải mã Base64 trở lại thành tệp
base64 -d input.b64.txt > output.binGiải mã văn bản Base64 thành byte thô.
macOS (BSD base64) / Unix
Mã hóa tệp sang Base64
base64 < input.bin > output.b64.txtBSD base64 sử dụng cờ khác với GNU; dạng này hoạt động rộng rãi.
Giải mã Base64 trở lại thành tệp
base64 -D < input.b64.txt > output.binTrên macOS/BSD, giải mã thường dùng -D (không phải -d).
OpenSSL (di động)
Mã hóa tệp sang Base64 (một dòng duy nhất)
openssl base64 -A -in input.bin -out output.b64.txtCờ -A xuất ra một dòng duy nhất (không ngắt dòng).
Giải mã Base64 trở lại byte
openssl base64 -d -in input.b64.txt -out output.binHữu ích khi coreutils base64 không có sẵn.
Node.js
Mã hóa tệp sang Base64
node -e "const fs=require('fs'); const b=fs.readFileSync('input.bin'); process.stdout.write(b.toString('base64'))" > output.b64.txtĐọc byte và in ra Base64.
Giải mã Base64 thành tệp
node -e "const fs=require('fs'); const s=fs.readFileSync('input.b64.txt','utf8').trim(); fs.writeFileSync('output.bin', Buffer.from(s,'base64'))"Giải mã văn bản Base64 thành byte thô.
Python
Mã hóa tệp sang Base64
python -c "import base64,sys; sys.stdout.write(base64.b64encode(open('input.bin','rb').read()).decode('ascii'))" > output.b64.txtMã hóa byte tệp thành Base64 ASCII.
Giải mã Base64 trở lại thành tệp
python -c "import base64; open('output.bin','wb').write(base64.b64decode(open('input.b64.txt','rb').read()))"Giải mã Base64 thành byte thô.
Các trường hợp sử dụng
Nhúng dữ liệu nhị phân vào kênh văn bản
- Đính kèm tệp nhị phân nhỏ trong tải trọng JSON
- Dán một tệp vào trình theo dõi vấn đề hoặc tài liệu dưới dạng Base64
- Truyền byte qua các hệ thống chỉ chấp nhận văn bản
Gỡ lỗi Base64 được tạo bởi hệ thống khác
- Chuyển đổi giữa các cài đặt trước chuẩn/Base64url/MIME để khớp với nhà sản xuất
- Bật Xác thực Nghiêm ngặt để phát hiện lỗi đệm/bảng chữ cái
- Sử dụng giải mã để xác nhận tải trọng tái tạo tệp gốc
Kiểm tra đường ống trong CI cho các tạo phẩm nhỏ
- Xác minh một tạo phẩm giải mã không lỗi trước khi xuất bản
- Chuẩn hóa đầu ra Base64 (gói/đệm) để có sự khác biệt ổn định
Chia sẻ an toàn hơn các đoạn nhị phân không bí mật
- Chia sẻ các bộ kiểm tra có thể tái tạo mà không cần gửi email tệp nhị phân thô
- Giữ bí mật khỏi công cụ trình duyệt; sử dụng CLI cục bộ cho khóa/token
❓ Frequently Asked Questions
Có API công khai cho công cụ này không?
API công khai.Xử lý là cục bộ hay từ xa?
Base64 được xử lý cục bộ trong trình duyệt của bạn.Tôi có thể mã hóa bí mật (khóa, token, mật khẩu) ở đây một cách an toàn không?
Tại sao giải mã thất bại với "ký tự không hợp lệ" hoặc "đệm sai"?
Tại sao tôi không thể mã hóa bằng cách dán trực tiếp văn bản?
Base64 văn bản để mã hóa văn bản thành byte được rõ ràng.Pro Tips
Nếu bạn cần mã thông báo an toàn cho URL, hãy chọn cài đặt sẵn Base64url; nó thay thế "+"/"/" bằng "-"/"_" và thường bỏ qua phần đệm tùy theo cài đặt của bạn.
Khi gỡ lỗi việc giải mã thất bại, hãy bật xác thực Nghiêm ngặt để nhận được lỗi sớm hơn, rõ ràng hơn, sau đó nới lỏng nó khi bạn đã xác định được các điểm đặc biệt của nhà sản xuất.
Để có sự khác biệt ổn định trong CI, hãy chuẩn hóa việc ngắt dòng và dòng mới cuối cùng để đầu ra Base64 của bạn không thay đổi giữa các môi trường.
Đối với tệp lớn hoặc bất kỳ nội dung nhạy cảm nào, nên ưu tiên công cụ CLI cục bộ; nó tránh được giới hạn trình duyệt và giảm rò rỉ ngẫu nhiên qua clipboard hoặc tiện ích mở rộng.
Additional Resources
Other Tools
- Bộ Làm Đẹp CSS
- Bộ Làm Đẹp HTML
- Bộ Làm Đẹp Javascript
- Bộ Làm Đẹp PHP
- Bộ Chọn Màu
- Bộ Trích Xuất Sprite
- Bộ Mã Hóa Nhị Phân Base32
- Bộ Giải Mã Base32
- Bộ Mã Hóa Base32
- Bộ Mã Hóa Nhị Phân Base58
- Bộ Giải Mã Base58
- Bộ Mã Hóa Base58
- Bộ Mã Hóa Nhị Phân Base62
- Bộ Giải Mã Base62
- Bộ Mã Hóa Base62
- Bộ Giải Mã Base64
- Bộ Mã Hóa Base64
- Bộ Mã Hóa Nhị Phân Hex
- Bộ Giải Mã Hex
- Bộ Mã Hóa Hex
- Bộ Định Dạng Csharp
- Bộ Định Dạng CSV
- Dockerfile Formatter
- Bộ Định Dạng Elm
- Bộ Định Dạng ENV
- Bộ Định Dạng Go
- Bộ Định Dạng GraphQL
- Bộ Định Dạng HCL
- Bộ Định Dạng INI
- Bộ Định Dạng JSON
- Bộ Định Dạng Latex
- Bộ Định Dạng Markdown
- Bộ Định Dạng ObjectiveC
- Php Formatter
- Bộ Định Dạng Proto
- Bộ Định Dạng Python
- Bộ Định Dạng Ruby
- Bộ Định Dạng Rust
- Bộ Định Dạng Scala
- Bộ Định Dạng Tập Lệnh Shell
- Bộ Định Dạng SQL
- Trình Định Dạng SVG
- Trình Định Dạng Swift
- Trình Định Dạng TOML
- Typescript Formatter
- Trình Định Dạng XML
- Trình Định Dạng YAML
- Trình Định Dạng Yarn
- Bộ Thu Nhỏ CSS
- Html Minifier
- Javascript Minifier
- Bộ Thu Nhỏ JSON
- Trình Thu Nhỏ XML
- Trình Xem Tiêu Đề HTTP
- PDF Sang Văn Bản
- Bộ Kiểm Tra Regex
- Bộ Kiểm Tra Xếp Hạng SERP
- Tra Cứu Whois