2012-04-01 4 views
-2

私はトライアル30日の機能を実現したい。どのように30日間の試用を実現するには?

私はレジストリキーを使用しましたが、クラックするのは簡単です。

は、何か良いアイデアはありますか?

+2

さまざまなものが含まれます。http://stackoverflow.com/questions/1525378/how-can-i-make-my-product-as-a-trial-version-for-30-days – blueshift

答えて

1

私は、今日最も安全な方法は、Webサービスを使用することであると思います。ただし、アプリケーションの価値がある場合は、アプリケーションの保護に費やす時間にかかわらず、クラッキングされることに注意してください。

アイデアは単にこれです:アプリは特定のキーなしで全く動作しません。キーが存在しない場合、Webサービスに接続しようとします。それが肯定的になると、アプリケーションは「一時的なトークン」(「起動」のタイムスタンプを格納する)を受信します。

このトークンを使用して、残りの日数をカウントします。

トークンを削除した場合、アプリは初めて実行したと考えて、Webサービスに接続しようとします。新しいトークンのためにアプリから送信されたリクエストには、最初と同じ情報が含まれ、トークンは生成されません。試用期間の有効期限に関するメッセージが表示されます。

一方、トークンを解読しようとすることはできますが、(もちろん可能であっても)それほど簡単ではないと思われます。

その後、クラッカーは(それ別のアプリの資格情報を送信するWebサービスによってautoproducedまたは与えられた)トークンを生成する方法を見つけるだろうか、単にすでに計算日付を制御スキップ(例えばif data expired then expired else okif data expired then ok else okになります...)

Webサービスを使わずに同じアイデアを使用することもできます。プログラムをインストールすると、キーが追加されます。削除すると、プログラムは機能しません。キーの内容は暗号化されているため、別のタイムスタンプで簡単に生成することはできません。

基本的な考え方は、キーの内容を暗号化し、プログラムが機能するためのキーが存在していなければならないということです。試用期間を過ぎることに興味を持っている人は、少なくとも、アプリで暗号化されたアルゴを解読しなければならない。