sql >> データベース >  >> RDS >> Mysql

一意の追跡番号の生成

    意味のないデータの場合、時間のハッシュと塩は常に堅実であり、簡単に推測することはできません(Pythonを許してください。聞いたことがある このRubyのことについてですが、私の手に持ったことはありません):

    >>> hashlib.md5(str(time.time()) + "!salt!").hexdigest()
    '7a8b73fa7e0dadf246612e6001ede165'
    

    必要に応じて短くしてください:

    >>> hashlib.md5(str(time.time()) + "!salt!").hexdigest()[:16]
    '46ffb69ebc96412d'
    

    必要に応じて、代わりに整数を使用してください。ただし、ゼロパッドを使用しない限り、長さはこのコードによって異なる可能性があります。

    >>> int(hashlib.md5(str(time.time()) + "!salt!").hexdigest()[:13], 16)
    1346212029197308
    

    「zomgmd5は暗号で保護されていません」の前に:

    >>> int(hashlib.sha256(str(time.time()) + "!salt!").hexdigest()[:13], 16)
    1948411134966366
    

    地獄、あなたは時間を使う必要さえありません、あなたがそれを塩漬けにする限り、あなたは自動インクリメント整数を使うことができます:

    >>> int(hashlib.sha256(str(1) + "!salt!").hexdigest()[:13], 16)
    1269883740611281
    >>> int(hashlib.sha256(str(2) + "!salt!").hexdigest()[:13], 16)
    3655373802716929
    

    ハッシュ。 できない何かありますか しますか?



    1. SQL Serverを使用して、空のスペースをnull値に変換するにはどうすればよいですか?

    2. 崇高なテキストMySQLビルドシステム変数置換の問題

    3. VBA錬金術:メソッドをプロパティに変える

    4. エラーの取得ORA-00909:引数の数が無効です