他の人に送りたい小さなプログラムを手に入れました。しかし、他人と簡単に共有できないようにしたいです。私が使用できる簡単な保護はありますか?ハッキング不可能である必要はありません。アプリを送信するだけでなく、ほんの少しの保護が必要です。
3 に答える
It can't be uncrackable anyway :) There are lots of different protections that you can use, but it always come down to the skill of the reverse engineer.
A pretty standard technique is to pack your software with a packer like asprotect, armadillo, aspack, upx, there are tons of options. This would make it difficult for them to hexedit your software, debug and disassemble it.
If you want to use a serial protection, there are lots of things you could do. One of my favourites is using the key to dynamically decrypt preencrypted blocks of code and execute them. This is called polymorphism and along with self modifying code, it can be a pretty frustrating protection.
If you want to keep things really simple, you could just create a xor protection where correct_serial XOR constant == another_constant. Using constant XOR another_constant, you could simply create a key.
Really tons of things to do here, it's always a matter of taste and knowledge.
無料のソリューションはたくさんありますが、ほとんどはクラック可能です。一般的な意見にもかかわらず、最新のドングルは 1) トラブルがなく、2) 壊れにくい。ただし、それぞれ 25 ドルから 100 ドルの費用がかかるため、価値の低いソフトウェアには適していません。
キーの使用は、多くの場合、.exe の対称キー暗号化に関連付けられているため、簡単にコピーすることはできません。キーはインストールに固有であり、CPU シリアル番号、MAC アドレス、HD シリアル番号などのマシンの特性に関連付けることで作成できます。これらのフィンガープリントの小さなテーブルを作成し、そのユーザー/SN を登録することもできます。そのテーブル; 次に、サーバーDBと比較するために、時々アプリを「家に電話」させます。これらの方法は両方ともクラック可能ですが、ハッキング不可能なものを探しているわけではないとおっしゃいました。ハードウェア フィンガープリンティングの欠点は、ユーザーがネット カードまたは HD をアップグレードするときに失敗する可能性があることです。ライセンスの代金を支払ったのにライセンスが実行されないという理由で、不満を抱く顧客がいます。
これには多くのアプローチがありますが、これは1つです。
認証Webサービスを作成します。マシンを識別するものから一意のキーを生成するようにアプリを取得します。これが送信され、アプリが一意のキーに対して検証できるコンパニオンキーが生成されます。
ご想像のとおり、これはすぐに追加するものではありません。インフラストラクチャと管理が必要であり、注意が必要です。