strings コマンドによる解析に対する対策
C言語でプログラムを書いた後、gccによって実行ファイルを作成し、それをバイナリ解析しようと思ったのですが、以下のプログラムであると、stringsコマンドによって"hoge"という文字列が出力されてしまいます。そこで、それが出力されないようにしたいのですが、どういった手法を用いれば良いのでしょうか。txtファイルに保存してということもできると思うのですが、これをバイナリ解析の問題としてダウンロードファイルにしたいため、それをするとtxtファイルまでダウンロードさせることになり、簡単に解かれてしまうと思い質問しました。
#include <stdio.h>
#include <string.h>
int main(void)
{
char buf[32];
char key[] = "hoge";
puts("Please input password.");
fgets(buf, sizeof(buf), stdin);
strtok(buf, "\n");
if(!strcmp(buf, key)){
puts("Congratulations!");
}
else{
puts("Invalid input.");
}
return 0;
}