1

アプリケーションに固有のIDを生成する必要があり、適切なアルゴリズムを探しています。私はこのようなものが好きです-

YYYY + MM + DD + HH + MM + SS + <random salt> + <something derived from the preceding values>

F.ex. -

20100128184544ewbhk4h3b45fdg544

何かを使うことを考えてSHA-256いましたが、結果の文字列は長すぎないはずです。使用することもできますUUIDが、長すぎて、1台のマシンでのみ一意であることが保証されています。

提案やアイデアを歓迎します。私のプログラミング言語はJavaです。

編集: IDは暗号的に安全である必要はありません。私は、DanBernsteinなどによるもののようなより単純なハッシュアルゴリズムを見ています。

4

4 に答える 4

0

これを試して:

java.security.messageDigest()
于 2010-01-28T13:22:45.167 に答える
0

だから私は最終的にこれに落ち着きました-

d = YYYYMMDDHHMMSS
hash = d + sha256(d + random_salt)[:10]

回答ありがとうございます。

于 2010-01-28T14:25:32.610 に答える
0

その SHA-256 を使用して、結果から最初の 10 バイトのみを取得することができます (または、好きなように長さと一意性のバランスを取ってください)。

于 2010-01-28T13:32:03.007 に答える
-1

SHA1(MD5(YYYYMMDDHHMMSS + YourSystemName + ClientName))を使用すると、40文字で問題ないと思います。.;)

于 2010-01-28T13:21:58.117 に答える