0

アプリケーションのライセンスファイルがあります。現在壊れており、ユーザーが無制限にアクセスできる唯一の方法は、30日ごとにライセンスファイルを削除し、プログラムを再インストールすることです。

このファイルを保護するにはどうすればよいですか?(または情報)

私の最初の考えは、ウィンドウ%AllUsersProfile%の下のどこかにファイルをいくつかのフォルダーの奥深くに隠すことです。また、場所を宣伝しないように、フォルダにはあいまいな名前を使用してください。

別の考えはレジストリに書き込むことでしたが、管理者権限が必要なため、私が望んでいたようにHKEY_Local_Machineに常に書き込むことができるとは限りません。

4

4 に答える 4

2

セットアップ中にライセンスファイルを作成します。また、ライセンスファイルがないことを無効なライセンスファイルと見なしてください。アンインストール、ファイルの削除、そして再インストールは、単にファイルを削除するよりもはるかに面倒です。

そして、あいまいなランダムな名前のファイルがシステムのどこかに表示されるのは嫌いです。ウイルスに感染したのか、それとも単に動作の悪いソフトウェアなのか疑問に思うからです。

そして、一生懸命頑張らないでください。次のウェアーズサイトからクラックまたはライセンスリセットツールをダウンロードするよりも難しくするのは無駄です。また、クラッカーはFileMonなどのツールを使用してライセンスファイルをすばやく見つけることができます。

実際に機能する可能性のあるアイデアの1つ(バイナリにパッチを適用するクラックを除く):
ダウンロード時に有効期限を修正し、セットアップにライセンスファイルを埋め込みます。そうすれば、ライセンスの有効期限が切れるたびに、実際に新しいバージョンをダウンロードする必要があります。しかしもちろん、ユーザーはそれを受け入れられない、または配布モデルに適合しないと感じるかもしれません...

于 2010-12-02T15:21:55.207 に答える
1

ライセンスファイルを隠したり隠したりするほとんどすべての方法はクラック可能です。あなたは本当にいくつかのシナリオの中から決定する必要があります:

  1. 私は顧客を信頼していますが、顧客が誤って私のライセンス条項に違反する可能性があります
  2. 私の製品は非常に望ましいので、クラッカーのターゲットになります
  3. 私の製品はクラッカーには面白くありませんが、私の顧客はスライムバッグであり、それから鼻をコピーします。

ケース1の場合、顧客のコンプライアンスを支援するための単純なライセンスファイルで問題ありません。おそらくそれを隠したり隠したりする必要はありません。あなたがこの質問を投稿したので、私はあなたのケースではないと思います。

ケース2と3の場合、簡単に打ち負かすことのできないことができることはほとんどありません。クラッカーが利用できるツールは非常に強力で広く利用可能であり、それらを使用するためのテクニックもあります。私たちの会社(www.wibu.us)には、人々がソフトウェアをどのように解読するかを監視する専任の暗号研究者がいるため、ソフトウェアに対するより強力な保護を構築できます。

おそらく、DIYソリューションの最も「通常の」アプローチは、AES128ビットまたはトリプルDESなどの「標準」アルゴリズムを使用してライセンスファイルを暗号化することです。次に、MACアドレス、MBシリアル番号、インストール日、および場合によってはユーザー入力データ( "name" "Phone"など)など、いくつかの要素のハッシュからキーを作成します。ただし、暗号化は複雑になる可能性があるため、このアプローチで何をしているのかを確認する必要があります。

于 2010-12-03T00:06:52.460 に答える
1

アプリケーションをポート80経由でリモートサーバーに移動させ、最初のインストール時に設定されたハッシュを、おそらくMACアドレスに対してチェックします(絶対的な保証ではありませんが、十分です)。彼らが再度インストールしようとすると、少なくともMACアドレスに関連付けられており、インストールを停止できます。

編集:

顧客ベースが小さく、それらをサポートするリソースがある場合は、顧客がライセンスファイルを取得するためにあなたのところに来る必要があることを除いて、インターネットアクセスなしで同じ動作を実行できます。彼らはシステムを介してキーを生成し、再びMACアドレスに関連付けられてから、ライセンスファイルを生成したキーを送信します。もちろん、これは1日の送信ダウンロード数に依存します。

于 2010-12-02T15:01:44.893 に答える
0

1つの解決策は、ライセンスファイルに有効期限埋め込むことです。保護されたプログラムがライセンスファイルを見つけられない場合、それは無効です。

したがって、ユーザーがそれを削除しても、それはあまり役に立ちません、それはまだ期限切れです。

この場合の唯一の問題は、ライセンスファイルを配布するときに有効期限を修正する必要があるということです。これは他のトリック(新しいライセンスを定期的に再配布するなど)で解決できますが、すべてのニーズに合うとは限りません。

于 2010-12-02T16:25:04.797 に答える