Як я можу конвертувати з hex в base64?


27

Хтось може порекомендувати простий спосіб / інструмент для перетворення шістнадцяткових на base64?

Я використовую Linux та OS X.


Ви хочете перетворити Hex або Binary в Base64? Це сценарій чи це одномовна угода?
Chris S

Відповіді:


50

Використовуйте xxd разом з -rаргументом (і, можливо, -pаргументом) для перетворення з шістнадцяткових в звичайні бінарні / октети та base64 для перетворення бінарної / октетної форми в base64.

Для файлу:

cat file.dat | xxd -r -p | base64

Для рядка шістнадцяткових чисел:

echo "6F0AD0BFEE7D4B478AFED096E03CD80A" | xxd -r -p | base64

4

Ну, це залежить від точного форматування ваших даних. Але це можна зробити за допомогою простих скриптів оболонки:

 echo "obase=10; ibase=16; `cat in.dat`" | bc | base64 > out.dat

Змініть за потребою залежно від ваших даних.


3
Це перетворить рядок десяткових цифр. Незрозуміло, чи цього хоче ОП, чи він має шістнадцяткові цифри і хоче, щоб байти, які вони представляють, перетворили на base64.
Призупинено до подальшого повідомлення.

1

Ну, якщо ваші шістнадцяткові дані - це шістнадцятковий вид файлу, просто прикріпіть файл до прогнозу або повідомлення громовідводу, а потім збережіть повідомлення десь. Потім відкрийте файл із текстовим редактором і перегляньте код B64 :)

Він функціонує у Windows, але я думаю, що це універсальний спосіб, оскільки збереження як .EML вкладення закодовано в B64.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.