LinuxでBase64を扱う

Base64は暗号化としてよりも、HTTPでスペースやら記号などやりとりできない文字を置き換えて送受信する場合によく利用されます。

Linuxで簡単に使用できるBase64のエンコードやデコードの方法です。

openssl

# echo -n "abc" | openssl enc -base64
YWJj
# echo  "YWJj" | openssl  enc -d -base64; echo
abc

base64

# echo "abc" | base64
YWJjCg==
# echo "YWJjCg==" | base64 -d ;echo
abc
base64: invalid input ←何故かエラー?

nkf

nkfはインストールされていなければ、yumで簡単にインストールできます。

#yum -install nkf
# echo "abc" | nkf -MB ;echo
YWJjCg==
# echo "YWJjCg==" | nkf -mB ;echo
abc

お気づきでしょうが、同じabcをエンコードしているのに、
結果が異なります・・・。なぜなんでしょうか?

タイトルとURLをコピーしました