私はCで小さなアプリケーションを実装しています。これは、後でリーズナブルな価格でシェアウェアとして販売したいと考えています。それは30日間のトライアルから始まりますが、私はそれをどのように実装するかについてすでにかなり確信しています。
ただし、私が抱えている問題は、プロダクトキーの検証を実装する方法がよくわからないことです。私が念頭に置いているのは、顧客が私のWebページにサインアップして(しばらく製品を試した後)、製品の代金を支払い、e経由でaaaaa-bbbbb-ccccc-ddddd-eeeeeの形式でプロダクトキーを取得できることです。 -メール(または私のウェブサイトの彼のプロフィールから入手できるかもしれません)。今のところ問題ありません。次に、彼/彼女は私のアプリの適切なキーフィールドにキーをドロップし、アプリが登録されていることをブームします。
私がこれまでに収集できたものから、人々はこれにAESまたはRSAのいずれかを推奨します。正直なところ、私は大学で別の方向に進んでおり(暗号化ではありません)、私が受けた暗号化のクラスは少し前でした。しかし、私が覚えていることから、AESは対称暗号化アルゴリズムです。つまり、暗号化と復号化のためのキーは1つだけですよね?次に、何千ものプロダクトキーを生成し、アプリでそれらを検証するにはどうすればよいでしょうか(ちなみに、インターネットアクセスは必要ありません。サーバーにチェックバックする必要はありません)。
それで、RSAが進むべき道だと思いますか?しかし、RSAはかなり長いキー(少なくとも上から必要な25文字よりも長い)を生成しませんか?
別のスレッドで、一部の製品はプロダクトキーの生成/検証に暗号化を使用せず、代わりに「2.と17.の文字を追加し、合計でxになる」などのチェックを使用することを読みました。
ここに行くための最も速く、最も簡単で、最も安全な方法は何ですか?:-)コードサンプルは砂糖になります!
よろしく、
セバスチャン
PS:ああ...そして、ある時点で私の鍵がどのようにクラックされる可能性があり、どのようにクラックされるのか教えてはいけません.....私はそれについて知っています、それが主に私が多くの時間を過ごしたくない理由ですこの問題ですが、同時に、時折クラッカーが簡単になりすぎないようにしてください。