Base64とは?
今回は、ハッキングチャレンジサイト「8946」のTake3の問題でもある、Base64に関してご説明します。
Base64とは、あるデータを英数字に変換するためのエンコード方式です。
あるデータとは、テキストデータはもちろんですが、画像や動画など、さまざまな形式のデータを意味します。
みなさんがよく使うメールにもこのBase64が使われています。
メールでは、テキスト文字しか送受信できないので、画像や動画、音声などを送信しようとした場合、「そのままの形」で送ることはできません。
そこで、添付された画像ファイル等は一旦、Base64で英数字のテキストデータに変換され、相手にメールされます。
受け取った方は、その英数字のテキストデータを元に戻すことで、画像ファイルを見る事ができます。
Base64で、文字データに置き換えることを、「Base64エンコード」といいます。
逆に、元に戻すことを「Base64デコード」 といいます。
例えば、「ハッカー」という文字をBase64でエンコードすると、
44OP44OD44Kr44O8
という表記になります。
また、逆にBase64デコードを行うと、
44OP44OD44Kr44O8
という文字データは、「ハッカー」という文字になります。
このようなBase64エンコード・デコードを変換をしてくれる便利 WEBサイトがあります。
http://kujirahand.com/web-tools/Base64.php
以上を踏まえて、Take3のソースを表示して、「Base64デコード」された文字をみつけて、上記サイトにて「Base64エンコード」してみましょう。