web-dev-qa-db-ja.com

Base 64でエンコードされた文字列から16進ブロックを取得するにはどうすればよいですか?

この記事このXKCD では、どちらもパスワードデータを16進数のグループとして表示します。

ただし、ファイルではbase64でエンコードされています。その出力をbashスクリプトと一致させるために何を使用できますか?私はもう試した:

echo -n "7WkoOEfwfTTioxG6CatHBw==" | base64 -d
echo -n "7WkoOEfwfTTioxG6CatHBw==" | openssl enc -d -base64

彼らは何をしているのですか、そしてどうすればそれらを16進ブロックにデコードできますか?

xkcd Encryptic

12
Ehryk

これを正しく理解していれば、base64でエンコードされた文字列を8バイト(16桁の16進数)のブロックで16進文字列に変換する必要があると思います。もしそうなら od -t x8 -An 、base64デコードがそこに到達した後:

$ echo -n "7WkoOEfwfTTioxG6CatHBw==" | base64 -d | od -t x8 -An
 347df047382869ed 0747ab09ba11a3e2
$ 
16
Digital Trauma