Mã hóa/Giải mã Hex (Nhị phân)

Xử lý 100% phía máy khách (không tải lên máy chủ). Chuyển đổi tệp nhị phân sang văn bản Hex (thường, 0x…, C \xHH, hoặc %HH) và giải mã văn bản Hex trở lại thành tệp với xác thực nghiêm ngặt, xử lý dấu phân cách và định dạng đầu ra có thể dự đoán.

Loading…

Giới thiệu Mã hóa/Giải mã Hex (Nhị phân)

Công cụ này chuyển đổi tệp nhị phân sang văn bản Hex và cũng giải mã văn bản Hex trở lại thành tệp nhị phân, hoàn toàn trong trình duyệt của bạn. Chọn một hành động (Mã hóa tệp → Hex hoặc Giải mã Hex → tệp), chọn định dạng Hex bạn muốn (thường, 0x…, kiểu C \xHH, hoặc %HH) và kiểm soát chi tiết định dạng như chữ hoa/thường, dấu phân cách byte, ngắt dòng và kết thúc dòng. Đối với giải mã, bạn có thể chấp nhận các kiểu mã thông dụng (0x, \xHH, %HH), cho phép dấu phân cách/khoảng trắng và tùy chọn bỏ qua các ký tự không phải hex hoặc dừng lỗi nhanh với xác thực nghiêm ngặt.

Tính năng

  • Xử lý 100% phía máy khách (không tải lên máy chủ).
  • Tải lên và xử lý hàng loạt nhiều tệp qua vùng thả (hỗ trợ đa tệp).
  • Hai hành động: Mã hóa tệp → văn bản Hex, hoặc Giải mã văn bản Hex → tệp.
  • Định dạng đầu ra Hex: thường (deadbeef), tiền tố 0x…, ký tự thoát C (\xHH) và phần trăm (%HH).
  • Kiểm soát chữ hoa/thường: chữ số hex viết thường hoặc viết hoa.
  • Dấu phân cách byte cho dễ đọc: không có, dấu cách, dấu hai chấm (:), dấu gạch ngang (-), dấu gạch dưới (_), dấu phẩy (,).
  • Chỉ mã hóa - ngắt dòng: ngắt byte mỗi dòng (0 để tắt ngắt dòng) + dấu phân cách dòng có thể chọn (LF hoặc CRLF).
  • Chỉ mã hóa - tùy chọn: chèn dòng mới cuối cùng; tùy chọn 0x mỗi byte (0xDE 0xAD …) cho đầu ra kiểu 0x.
  • Chỉ giải mã - kiểm soát phân tích: chấp nhận tiền tố 0x, chấp nhận ký tự thoát \xHH, chấp nhận mã hóa %HH, cho phép dấu phân cách/khoảng trắng, bỏ qua ký tự không phải hex và xử lý độ dài lẻ (lỗi hoặc thêm 0 bên trái).
  • Chế độ xác thực nghiêm ngặt để từ chối đầu vào sai định dạng sớm thay vì phân tích cố gắng tốt nhất.

Cách sử dụng for hex-binary-encoder

1

Thả tệp hoặc dán văn bản Hex

Để mã hóa, thả một hoặc nhiều tệp nhị phân vào vùng thả. Để giải mã, dán văn bản Hex vào trình soạn thảo đầu ra (hoặc thả tệp .hex/.txt chứa Hex).

2

Chọn hành động và chạy

Chọn Hành động: "Mã hóa tệp → Hex" hoặc "Giải mã Hex → tệp", sau đó nhấp vào nút tương ứng (Mã hóa/Giải mã). Cấu hình tùy chọn nếu cần: định dạng (thường/0x/\xHH/%HH), chữ hoa/thường, dấu phân cách, ngắt dòng + dấu phân cách dòng (mã hóa), hoặc các tùy chọn chấp nhận + xử lý dấu phân cách + quy tắc độ dài lẻ (giải mã).

3

Sao chép hoặc tải xuống kết quả

Nếu bạn đã mã hóa, hãy sao chép văn bản Hex được tạo từ trình soạn thảo hoặc tải xuống dưới dạng đầu ra văn bản. Nếu bạn đã giải mã, hãy tải xuống tệp nhị phân đã được tái tạo (công cụ sẽ loại bỏ hậu tố .hex nếu có thể và quay lại .bin).

Thông số kỹ thuật

Mô hình Thực thi

Công cụ này chạy hoàn toàn trong trình duyệt của bạn và không tải đầu vào của bạn lên máy chủ.

Khía cạnhChi tiết
Thời gian chạyXử lý 100% phía máy khách (không tải lên máy chủ).
Phạm vi hành độngMã hóa (tệp nhị phân → văn bản Hex) và Giải mã (văn bản Hex → tệp nhị phân) trên cùng một trang.
Đầu vàoMã hóa: nhị phân (File/Blob/Uint8Array/ArrayBuffer/TypedArray). Giải mã: văn bản (Chuỗi Hex có thể chứa token và dấu phân cách tùy chọn).
Đầu raMã hóa: văn bản (Hex). Giải mã: byte (tệp nhị phân 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)
Ngay cả khi xử lý cục bộ, hãy tránh xử lý các bí mật mà bạn không thể chấp nhận bị lộ (chia sẻ màn hình, tiện ích mở rộng, lịch sử clipboard, thiết bị bị xâm phạm). Đối với dữ liệu nhạy cảm hoặc quy trình tuân thủ, nên ưu tiên xử lý CLI cục bộ.

Ví Dụ Nhỏ

Các ví dụ nhỏ để minh họa cả hai hành động và định dạng phổ biến.

Mã hóa (byte nhị phân): 48 65 6c 6c 6f 0a
Đầu ra (thường, chữ thường): 48656c6c6f0a

Giải mã (Văn bản Hex): 48 65 6c 6c 6f 0a
Kết quả (byte tệp): 48 65 6c 6c 6f 0a
Các tùy chọn định dạng (chữ hoa/thường, dấu phân cách, xuống dòng, kết thúc dòng) chỉ thay đổi biểu diễn văn bản Hex. Hành vi giải mã phụ thuộc vào các tùy chọn accept-toggles đã chọn, xử lý dấu phân cách, chế độ nghiêm ngặt và chính sách độ dài lẻ.

Lỗi & Trường Hợp Đặc Biệt

Các lỗi thường gặp khi chuyển đổi giữa văn bản Hex và byte thô, và cách các tùy chọn giao diện ảnh hưởng đến chúng.

Triệu chứngNguyên nhân có thểKiểm tra gì
Mã hóa yêu cầu tải lên một tệpBạn đã cung cấp đầu vào văn bản cho hành động mã hóaCông cụ này mã hóa dữ liệu nhị phân. Chuyển sang Giải mã cho đầu vào văn bản Hex, hoặc tải lên tệp/byte để Mã hóa.
Lỗi giải mã: hex không hợp lệ / token bị lỗiĐầu vào chứa ký tự không phải hex hoặc một kiểu token bạn đã tắtBật "Chấp nhận tiền tố 0x" / "Chấp nhận ký tự thoát \xHH" / "Chấp nhận mã hóa %HH" khi phù hợp; quyết định có cho phép dấu phân cách/khoảng trắng không.
Giải mã thất bại với dấu phân cách hoặc khoảng trắngCó dấu phân cách nhưng bị cấm (hoặc chế độ nghiêm ngặt từ chối chúng)Bật "Cho phép dấu phân cách/khoảng trắng"; nếu bạn muốn phân tích nghiêm ngặt, hãy tắt "Bỏ qua ký tự không phải hex" và dựa vào việc chấp nhận token rõ ràng.
Số chữ số hex lẻLuồng hex bị cắt ngắn hoặc thiếu một nibbleĐặt "Chữ số hex lẻ" thành "Lỗi" để thất bại nhanh, hoặc "Đệm trái với 0" nếu bạn cố ý chấp nhận đầu vào độ dài lẻ.
Kích thước đầu ra không mong đợi hoặc byte không khớpViệc bỏ qua ký tự không phải hex đã loại bỏ ký tự có ý nghĩa, hoặc chế độ nghiêm ngặt tắt và phân tích là cố gắng tốt nhấtSử dụng "Xác thực nghiêm ngặt" khi tính chính xác quan trọng; tắt "Bỏ qua ký tự không phải hex" nếu bạn chỉ mong đợi các token được định dạng đúng.
Xuống dòng/dòng mới đầu ra không như mong đợi (mã hóa)Các cài đặt bytesPerLine, dấu phân cách dòng, hoặc dòng mới cuối được bậtĐặt "Xuống dòng byte mỗi dòng" thành 0, chọn LF so với CRLF, và bật/tắt "Chèn dòng mới cuối" khi cần.

Các lựa chọn thay thế dòng lệnh

Để tự động hóa, CI hoặc dữ liệu nhạy cảm, nên ưu tiên các công cụ dòng lệnh cục bộ. Các ví dụ dưới đây là chuẩn mực và thường có sẵn.

Linux/macOS

Mã hóa một tệp thành hex thường (xxd)

xxd -p -c 256 input.bin > output.hex.txt

In tệp dưới dạng hex thuần (không có token 0x/\x). Dùng -c để kiểm soát độ rộng dòng.

Giải mã hex thuần trở lại thành tệp (xxd)

xxd -r -p output.hex.txt > restored.bin

Đảo ngược hex thuần về byte thô. Nếu văn bản hex chứa dấu phân cách hoặc tiền tố, hãy chuẩn hóa nó trước.

Node.js

Mã hóa tệp thành hex (Node Buffer)

node -e "const fs=require('fs');const b=fs.readFileSync('input.bin');process.stdout.write(b.toString('hex'))" > output.hex.txt

Xuất hex chữ thường liên tục. Thêm định dạng riêng nếu bạn cần dấu phân cách hoặc ngắt dòng.

Giải mã văn bản hex thuần thành tệp (Node Buffer)

node -e "const fs=require('fs');const hex=fs.readFileSync('output.hex.txt','utf8').trim();fs.writeFileSync('restored.bin',Buffer.from(hex,'hex'));"

Chỉ phân tích hex thuần. Loại bỏ token 0x/\x/% và dấu phân cách trước khi giải mã.

Trường hợp sử dụng

Gỡ lỗi tải trọng nhị phân

  • Chuyển tệp nhị phân nhỏ thành Hex dễ đọc cho báo cáo lỗi và xem xét
  • So sánh hai đầu ra nhị phân bằng cách chuyển đổi cả hai thành biểu diễn Hex đã chuẩn hóa

Khả năng tương tác giữa các công cụ

  • Tạo Hex có tiền tố 0x hoặc phân cách để phù hợp với kỳ vọng của công cụ hạ nguồn
  • Giải mã Hex dump có chứa token kiểu C \xHH hoặc byte kiểu phần trăm %HH

Dữ liệu cố định CI và vector kiểm tra

  • Lưu trữ dữ liệu cố định nhị phân nhỏ dưới dạng văn bản Hex để dễ dàng so sánh khác biệt trong đánh giá mã
  • Sử dụng xác thực nghiêm ngặt để thất bại nhanh khi đầu vào kiểm tra bị lỗi định dạng

Giảng dạy về byte và biểu diễn

  • Chỉ ra cách cùng một byte có thể được biểu diễn dưới dạng hex thuần, token có tiền tố 0x, hoặc ký tự thoát \xHH
  • Minh họa lý do tại sao việc xử lý dấu phân cách và độ dài lẻ là các lựa chọn phân tích rõ ràng

❓ Frequently Asked Questions

Có API công khai không?

Không. Công cụ này được thiết kế để sử dụng tương tác trên trình duyệt và không cung cấp API công khai.

Xử lý là cục bộ hay từ xa?

Xử lý 100% phía máy khách (không tải lên máy chủ). Tất cả mã hóa và giải mã chạy cục bộ trong trình duyệt của bạn.

Tôi có thể dùng công cụ này cho thông tin bí mật (khóa API, thông tin xác thực, tệp độc quyền) không?

Tốt hơn là không nên. Mặc dù xử lý là cục bộ, thông tin bí mật vẫn có thể bị rò rỉ qua chia sẻ màn hình, tiện ích mở rộng, lịch sử clipboard hoặc thiết bị bị xâm phạm. Đối với dữ liệu nhạy cảm, nên ưu tiên công cụ CLI cục bộ.

Tại sao giải mã thất bại với "hex không hợp lệ" hoặc "đầu vào bị lỗi định dạng"?

Hầu hết lỗi đến từ ký tự không phải hex, việc chấp nhận token bị tắt (0x, \xHH, %HH), xử lý dấu phân cách/khoảng trắng, hoặc số chữ số hex lẻ. Hãy bật các công tắc "Chấp nhận" phù hợp, quyết định có cho phép dấu phân cách không, chọn chính sách độ dài lẻ, và sử dụng "Xác thực nghiêm ngặt" khi bạn muốn phân tích thất bại nhanh.

Pro Tips

Best Practice

Để so sánh ổn định, hãy mã hóa với định dạng cố định (thuần), kiểu chữ cố định và không có dấu phân cách; sau đó chỉ thêm dấu phân cách/bao bọc để dễ đọc.

Best Practice

Khi giải mã bản ghi từ mã hoặc nhật ký, hãy bật các tùy chọn chấp nhận mã thông báo bạn mong đợi (0x, \xHH, %HH) và cho phép dấu phân cách/khoảng trắng để tránh dọn dẹp thủ công.

Best Practice

Sử dụng "Xác thực Nghiêm ngặt" (và cân nhắc tắt "Bỏ qua ký tự không phải hex") khi tính chính xác quan trọng hơn khôi phục cố gắng tối đa.

CI Tip

Giữ đầu vào dưới ~1–2MB và sử dụng công cụ CLI cục bộ cho tệp lớn hoặc đường dẫn CI để tránh giới hạn/thời gian chờ của trình duyệt.

Additional Resources

Other Tools