Câu trả lời:
Sử dụng xxd
với -r
đối số (và có thể là -p
đối số) để chuyển đổi từ hex sang nhị phân / octet đơn giản và base64 để chuyển đổi dạng nhị phân / octet thành base64.
Đối với một tập tin:
cat file.dat | xxd -r -p | base64
Đối với một chuỗi các số hex:
echo "6F0AD0BFEE7D4B478AFED096E03CD80A" | xxd -r -p | base64
Vâng, nó phụ thuộc vào định dạng chính xác của dữ liệu của bạn. Nhưng bạn có thể làm điều đó với một kịch bản shell đơn giản:
echo "obase=10; ibase=16; `cat in.dat`" | bc | base64 > out.dat
Sửa đổi khi cần tùy thuộc vào dữ liệu của bạn.
Chà, nếu dữ liệu hex của bạn là chế độ xem hex của một tệp, chỉ cần đính kèm tệp vào một thông báo triển vọng hoặc thunderbird và sau đó lưu tin nhắn vào một nơi nào đó. Sau đó mở tệp bằng trình soạn thảo văn bản và xem mã B64 :)
Nó hoạt động trên Windows, nhưng tôi nghĩ đó là một cách phổ quát kể từ khi lưu dưới dạng .EML tệp đính kèm được mã hóa thành B64.