家studyをつづって

IT技術やセキュリティで勉強したことをつづっています。

Crypt(CTF)

Crypt(暗号)の概要

CTFでは主に暗号解読する問題が含まれます。暗号化された情報を解読することで、どのような処理をしているか理解することができます。「暗号」で出題される問題の大まかな分類は以下のようなものがあります。

エンコードの種類 

エンコード方式 使用する文字 備考
Base16 0123456789ABCDEF 16進数表記
Base26 ABCDEFGHIJKLMNOPQRSTUVWXYZ  
Base32 234567ABCDEFGHIJKLMNOPQRSTUVWXYZ  
Base36 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ  
Base52 ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz  
Base58 123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz 仮想通貨のウォレットアドレスにも使用されている
Base62 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz JavaScript難読化ツール等で利用
Base64 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz+/ 電子メールやBASIC認証で利用

 

デコード方法(Base64
Base64はOS標準のコマンドでもデコードできます。

オンラインツールでは、以下のようなものがあります。

www.base64decode.org

 

その他のエンコード方式としては以下のようなものがあります。

URLエンコード
URLのファイル名やクエリ文字列などに使用できない記号や文字を「%(文字コード)」の形式で表したものです。

 

デコード方法
オンラインツールでは以下のものが使えます。

meyerweb.com

 

uuencode (Unix to Unix ENCODE)
バイナリデータをテキストデータに変換するUNIX系OSで使われていたエンコード方式です。

デコード方法

  • Linuxコマンド:uudecode uuencodeファイル
  • オンラインツール

www.textencode.com

 

暗号方式の種類

スキュタレー暗号

  • 転置式暗号の一つです。
  • スキュタレー(棒状のもの)に細い紙を巻きつけた状態でメッセージを書き、ほどいた状態を暗号文として使います。(下のようなもの)

ja.wikipedia.org


復号方法
オンラインツールでは以下のようなものがあります。

www.dcode.fr

 

シーザー暗号

  • カエサル暗号、シフト暗号とも呼ばれます。
  • 単一換字式暗号の一つです。
    元の文章のアルファベットをある数だけずらして暗号化します。

復号方法

オンラインツールでは以下のようなものがあります。

www.geocachingtoolbox.com