2009-08-26 15 views
4

ランダムに生成される可能性が高いランダムに生成される再起動アクティベーションコードをランダムに生成してソフトウェアをアクティブにする良い方法はありますか?私はWebアプリケーションの自動履行システムを作っています。ソフトウェアのアクティベーションコードを生成する最も良い方法は?

私はC#を使用しています。あなたは36文字の長さを気にしない場合は

答えて

16
+1

+1これは、ユーザーが入力する(メールを送信してコピー/貼り付けできるようにする)ための痛みではなく、一意であり、再生成されない可能性が高いという事実以外。 –

+4

私はこのことについて知らない。宇宙の膨張と収縮が、実際にはワンショットの代わりに周期的であれば、最終的には重複することになります。 – MusiGenesis

+2

私はGuid.NewGuid()がすでにCurrentUniverseSize()を使用していると思いますので、どちらの方法でも動作します。 –

1

あなたはおそらくちょうどのGuid

2

Guid.NewGuid()。ToStringメソッド()

を使用する必要があります。

4

あなたの目標によって異なります。 GUIDは生成するのが簡単ですが、ユーザーが手動で入力する必要がある場合は苦労します。電子メールで提供されているURLをクリックするなどしてアクティベーションが行われている場合、またはアクティベーション電子メールから値をコピー&ペーストすることが期待できる場合は、これで問題ありません。

他の場合(例えば、何らかの方法でアクティベーションコードがパッケージに物理的に印刷されたシュリンクラップソフトウェア)、ユーザーは手動でコードを入力します。この場合、MicrosoftとBlizzardが使用する方法に似た方法を使用する方がよいでしょう。5つのグループの5つの英数字からなる5つのグループからなるコードを生成します(アクティベーションコードに4SHIT)、生成された各コードをマスターリストと照合して重複をチェックします。 (私は、{1、2、... 34^26 - 1}から抽出された100,000シーケンスの確率もかなり小さいと思うが、確かに言うことは難しい。

関連する問題