だから、私はイースターエッグが好きです...これは、私がイースターエッグアーカイブの発見されたコミュニティの一員であったことにさかのぼります.
ただし、オープンソース プログラミングも数多く行っています。
私が知りたいのは、コードを体系的かつ方法的に難読化するための最良の方法は何だと思いますか。
PHP/Python/C/C++ での例が望ましいですが、方法論が適切に説明されていれば、他の言語でも問題ありません。
だから、私はイースターエッグが好きです...これは、私がイースターエッグアーカイブの発見されたコミュニティの一員であったことにさかのぼります.
ただし、オープンソース プログラミングも数多く行っています。
私が知りたいのは、コードを体系的かつ方法的に難読化するための最良の方法は何だと思いますか。
PHP/Python/C/C++ での例が望ましいですが、方法論が適切に説明されていれば、他の言語でも問題ありません。
私は結果がまったく読めないので、あなたがそれを読むことさえできないことを保証できます ;)
その場合、「難読化ツール」を使用/作成する必要があります。あなたのために仕事をするプログラム。
Salamander Obfuscator は .Net プログラムを難読化するために使用できますが、逆コンパイルを防ぐためのものであり、必要なものとは言えません。
C の難読化について学ぶのに適した場所は、国際難読化 C コード コンテストです。
シンボルの名前を変更するという精神に基づいて、同じ名前の異なる変数に名前を付けて、スコープと可視性ルールを乱用します。
問題は、難読化されていないように見えるコードを、別の機能を実行しているように見せずに、わかりやすいコード (オープン ソース) で作成する方法です。
いくつかの明白な方法:
コードの体系的かつ系統的な難読化では、Perl に勝るものはありません。バイナリにコンパイルするものが必要な場合は、常に APL があります。
.NET フレームワークをターゲットにしている場合は、イースターエッグのソース コードをリソース ファイルに binhex 文字列として配置します。次に、初期化ルーチンの 1 つにそれをフェッチさせ、デコードし、メモリにコンパイルさせることができます。リフレクションを使用して呼び出すことができます。
メモリへのコンパイルと結果のアセンブリへの呼び出しの技術的な側面について支援が必要な場合は、私が書いたライブラリとそれを使用するサンプル プログラムを提供できます。
このテクノロジを使用してプラグインをロードできます。これは合法的なことであり、イニシャライザで合理的です。