他人の空似

2010 年 12 月 6 日

暗号化の例

Filed under: 未分類 — 中の人 @ 3:13 AM

とある事情で暗号化を実際に行うコードを実装する事があったので、ためしに置いておきます。
crypt.cpp

これは暗号化というのも恥ずかしい、暗号化する方法さえ知ってしまえば鍵を知らずとも一瞬で展開余裕な暗号です。
まぁ、自分が普段解析するようなファイル郡も大体こんなレベルですので、一般に改造対策として施す分には十分かと。

本格的にやりたいならば、同一判定をきちんとしたハッシュ関数にして、xorする値はメルセンヌツイスターにして、鍵としてメルセンヌツイスターの種を扱う感じが良いでしょう。
たぶんこれで、暗号化方法がばれても鍵がばれない限りは並の人間には解かれません。(※鍵のbit長が32bitだったりすると総当りでいけるかもしれませんが)
さらに絶対性を求めるならば、メルセンヌツイスターで取得した乱数を元にSHA-1で算出したハッシュをxorに使えば完璧です。
そんなことしても、exeファイルを配布するなら中に鍵が入っているので意味がなくなりますがね。

Powered by WordPress