Base64エンコードはによって達成することができます
$ echo Some_data_to_be_converted | base64
U29tZV9kYXRhX3RvX2JlIF9jb252ZXJ0ZWQK
_
そしてBase64デコードはによって達成することができる
$ echo U29tZV9kYXRhX3RvX2JlIF9jb252ZXJ0ZWQK | base64 -d
Some_data_to_be_converted
_
Base64URLエンコード/デコードを実現する方法
"+"を "+"と "/"で置き換えるのにちょうど十分ですか?
PADDING "#"をするとき(考慮される "#"を追加/削除します)。
既にaを持っている場合は、encoded文字列を「+」と「_」を「_」に置き換える必要がある場合は「_」を取得する必要がありますBase64URLエンコード文字列。これを実現するには、次のコマンドを使用できます。
echo Some_data_to_be_converted | base64 | sed 's/+/-/g; s/\//_/g';
(あなたはやり直すことができます Bash Shell Onlineを実行 )
Base64エンコーディング入力バイト(8ビット)を6ビット表現にマッピングします。 4 Base64文字は4 * 6 = 24ビットを符号化することができ、これは3バイトに等しい。入力内のバイト数を3で割ることができないときはいつでも、標準に従ってパディングが必要です。
パディング文字は=
です
=
Characterがurlsのキー値のペアに使用されるので、URLでエンコードされた値を使用する予定の場合は、それを直接パディングに使用することはできません。ほとんどの実装がまだ機能し、最後に2つか4つの未使用のビットを無視するだけなので、パディングをounmitしかounmitします。あるいは、受信機が本当にパディングが必要な場合は、=
をそのURL Safe表現%3d
に置き換える必要があります。