2011-01-31 10 views
3

私はフリーランスのWindowsフォームプロジェクトを提供しようとしています。.NETアプリケーションのライセンスを処理する最も簡単な方法は何ですか?

ライセンスを処理する最も簡単な方法は何ですか?私のターゲットマシンはインターネットにアクセスできないので、Webサービス経由で検証することが最善の行動ではないと思います。

自分のプログラムをコピーして他のマシンで実行したり、自分自身で販売したりすることは望ましくありません。

+4

契約とは何ですか? – Oded

+0

ライセンスに関する規定はありません。これはかなりの音声のみの契約です。それは家族の友人(実際に修道女)のためです。 –

+0

@Oded:これが役に立った場合、これは1.2k $のソフトウェアプロジェクトです。 –

答えて

4

これは非常に多くの方法があり、ターゲットとなるオーディエンス/デプロイメント環境に依存します。

家に電話をかけることができないため、シリアル番号を使用する必要があります。クライアント/サーバー・アーキテクチャーを使用している場合は、サーバーに登録を保管することができ、クライアントはそれらを検査できます。

クライアント専用アプリケーションの場合は、シリアル番号を使用することができます。2)MACアドレスなどの固有の識別子を使用して、インストール先のマシンを判断するシリアル要求を生成できます。このようにして、要求に基づいてシリアルを発行すると、要求が生成されたマシン上でのみ動作します。

+1

リクエスト/レスポンスシリアル#は、切断されたシナリオでは良いアイデアです。これが、Corel、Adobeなど多くの企業がソフトウェアを保護する方法です。 –

1

ドングルを使うことができますが、これが最も安全な方法だと思います。 ドングルにはアプリケーションの重要な部分を置くことができ、ドングルがUSBポートに差し込まれるまでアプリケーションは実行されません。その詳細を読む必要があり、ドットネットアプリケーション用の特別なドングルがあると思います。 私たちは私たちの会社のフォームで長い時間それを使用してください。

+0

あなたのソフトウェアの各バージョンをドングルでつけることができます。安いと思います。 – AlaaL

+2

ドングルは高価で、通常は非常に大きな(高価な)アプリケーションに対してのみ許容されます。 CAD /#Dモデリング、CNCコントローラなどのエンジニアリングタイプのアプリケーションの外で実際に見たことはありません。ドングルは購入してコード化したり、社内で開発しなければなりません。両方とも高価であり、コストを増大させ、ユーザを苛立たせる。 –

+0

おそらく多分それは少し高価ですが、それは安全のために支払う価格です。私はドングルの名前を言いたくはありませんが、新しいドットネットドングルがあります。これはあなたのアプリの敏感な部分を自ら選択し、何もする必要のない作業を行います。おそらくもっと良い方法がありますが、このことを念頭に置いてください最後の選択肢として。 – AlaaL

1

あなたのソフトウェアの条項がそれがどのようにライセンスされているとすれば、それで十分であるはずです。

あなたがこのソフトウェアを書いてから、あなたが修正プログラム/機能拡張のために呼び戻される可能性があることを忘れないでください。これにより、あなたのライセンスが濫用されているかどうかを確認する機会がたくさん得られます。

0

ソフトウェアのインストーラが含まれています。このインストーラは、このマシンを識別するいくつかのレジストリキーを有効なインストールとして設定する必要があります。あなたのプログラムはそれらの鍵を調べ、実行すべきかどうかを判断します。

これらのキーをどのように生成するのか、そしてどのようなものでなければならないのかについての質問は、どのように難解なものを入手したいのかと答えるものです。彼らが簡単になればなるほど実装は簡単になりますが、簡単になりすますことができます。インストールを偽装するよりも簡単にライセンスを購入したいのであれば、インストーラーがライセンスキーを必要とするものに復号化することができます(ユーザーが入力した名前)。次に、プログラムが有効なインストールを決定するときに復号化するレジストリキーを暗号化して設定できます。これはなりすますことができ、インターネットにアクセスすることなく、1人の人が多くのコンピュータで同じキーを使用していないことを証明することはできません。

すべてのインストールが個別にライセンスされていることを確認したい場合は、インターネットにアクセスする必要があります。インストーラまたはプログラム自体は、集中化されたWebサービス(またはライセンスキーサーバー、キーが本物であり、現在別のコンピュータで使用されていないことを確認します。

+0

レジストリを変更してインストーラをバイパスしないようにするにはどうすればよいですか? –

+0

インストーラがレジストリに書き込んでいるものを知っていることを除けば、それほど多くはありません。インストーラがレジストリキーを暗号化する場合は、クローンを作成するために有効なインストールが必要です。インストーラがアプリケーションが確認できる何らかのマシン固有のものを暗号化した場合、有効なインストールからレジストリキーをコピーするだけではありません。彼らは秘密を発見するためにあなたのインストーラを反映させなければならず、それを複製してなりすますレジストリ情報を生成する必要があります。依然としてクラック可能ですが、この時点では平均的なユーザーの能力をはるかに超えています。 – KeithS

+0

彼らは単純にRegMon(自由に利用可能で使い易いツール)を使用して、何が読み書きされているかを知ることができます。それはどれくらい安全であるかにかかっています。アプリは独自の検証を行い、それらを保護するためにインストーラーに依存してはいけません。 –

1

ライセンスのセキュリティが組み込まれた難読化ソリューションがあります。あなたはそれらの1つを試すことができます。 XenoCodeはその1つです。 http://www.xenocode.com/

関連する問題