凡庸なる人のブログ

凡庸な自分が思ったことや何かしらの感想、コンピュータ系などの調べごとを書くブログです。  【結論】ってのは私個人の結論です。記事全体は個人的な調査結果や感想です。

ksnctfをやって思ったこと

【結論(疑問)】ツールは使い方を知っていればいいのか?

ksnctfはCTFの練習サイトらしいです。

ksnctf.sweetduet.info

 

そこの2問目をやったときのことです。

  1. まぁ多分文字ずらすんだろうな。
  2. pythonでやるか。
  3. えーっと、ASCII値を取得して、その値を加算して表示をループすればいいのかな?
  4. ASCII値の取得ってどうやるんだ・・・
  5. hex(ord(文字列))でできるのか。
  6. あれ、、わかんね・・・

とまぁこんな感じで自力じゃ時間かかると思いました。

なので秘密兵器使います。

 

⇓が問題です。

f:id:wannabeahacker:20160126111550p:plain

 

何食わぬ顔で暗号文の最初を検索する。

f:id:wannabeahacker:20160126111624p:plain

あるやんけ。

f:id:wannabeahacker:20160126111654p:plain

 

どうやらこの暗号文はROT13という暗号らしい。また、シーザー暗号の1種らしい。というかシーザー暗号は大学1年のときにC言語で書かされたわ・・・

 

さらに"rot13 python"で検索。

f:id:wannabeahacker:20160126112309p:plain

 

あるやんけ。

さらにPythonにはROT13が使えるライブラリがあるらしい。

>|python|

import codecs
Cipher = raw_input()

print 

print codecs.decode(Cipher,'rot13')

<||

 

このプログラムだけで、問題が解けてしまう。

でも、これ本当にいいのか?。。。自力で解いたとは言えないぞ。。。

 

自力で解けるようになることは無駄ではないかもですが、ツールの使い方や存在を知っていたほうが明らかに効率的であることは明白ですよね?

 

以上、「ツールの使い方を知る VS 自力で解く」の葛藤でした。