私はCで小規模なアプリケーションを実装していますが、これは後でリーズナブルな価格でシェアウェアとして販売したいと考えています。それは30日間の試行で始まります。私はすでにそれを実装する方法についてかなり確信しています。プロダクトキーの実装
私の問題は、プロダクトキー検証の実装方法がわかりません。私が念頭に置いておくべきことは、顧客が私のウェブページにサインアップして(製品をしばらく試した後で)、製品を払い、aaaaa-bbbbb-ccccc-ddddd-eeeeeという形式のプロダクトキーをe -mail(または私のウェブサイトの彼のプロフィールを介して利用可能かもしれません)。これまでのところ問題ありません。彼/彼女は私のアプリの適切なキーフィールドにキーをドロップし、ブームアプリが登録されています。
私が今までに集めることができたことから、人々はAESまたはRSAのどちらかを推奨しています。正直言って、私は大学の別の方向(暗号ではない)で、私が取った1つの暗号のクラスはしばらく前です。しかし、私が覚えていることから、AESは対称暗号化アルゴリズムであり、暗号化と復号化のための鍵が1つしかないことを意味します。どのようにして何千ものプロダクトキーを生成し、それでもアプリで検証することができます(途中でインターネットアクセスは必要ないため、サーバーをチェックする必要はありません)。
だから私はRSAが行く方法だろうと思いますか?しかし、RSAはかなり長いキーを生成しません(少なくとも上記の25文字よりも長いキー)。
another thread製品の中には、製品キーの生成や検証に暗号化を使用しないものもありますが、代わりに「2.と17.文字を追加して合計する必要があります。
ここに行くのに最も簡単で簡単で安全な方法は何ですか? :-)コードサンプルは砂糖でしょう!
よろしく、
セバスチャン
PS:ああ...と、私はそれについて知っている.....私のキーは、いくつかの点でひび割れされることができる方法を教えないでください私はこの問題で多くの時間を費やしたくないのが主な理由ですが、それと同時に、時折クラッカーになるのは簡単すぎません。
情報に感謝します。何らかの理由でEECを使用できないとします.RSAキーの最小長は1024ビットであるため、RSAは25文字のキーメソッドに適していません。 – Sebastian
RSA *は384ビットしかできませんが、それでもユーザーが入力したキーは長すぎます。あなたが大文字と小文字を区別しても(62個の控えめなキャラクタを生む)、65キロの鍵が必要です。 384ビットのRSAは*非常に弱いので、あなたの秘密鍵はとにかく損なわれる可能性があります。 –
私はここでECCの無料実装を見ています:http://www.codeproject.com/KB/security/Elliptic_Curves.aspx。私はそれがどれほど優れているかをチェックしていない。ちょっと掘ってみると、確かに他の人が出てくるだろう。かなり安いものがあります:http://ellipter.com/。 –