回答編集履歴
1
語弊があったので修正
answer
CHANGED
@@ -2,4 +2,4 @@
|
|
2
2
|
|
3
3
|
もちろん、セキュリティ上で重要な値(トークン、鍵など)に使うのであれば、MD5で「意図的に衝突する」データを作れることは問題となります。ただ、それは**意図して重複するデータを作った場合**の話で、偶然に作っていての衝突確率はじゅうぶんに低いです。
|
4
4
|
|
5
|
-
とはいえ、`rand()`の品質は**絶望的に悪い**ので、OpenSSLの使える環境ならMD5を使わずに、`openssl_random_pseudo_bytes()`から
|
5
|
+
とはいえ、`rand()`の品質は**絶望的に悪い**ので、OpenSSLの使える環境ならMD5を使わずに、`openssl_random_pseudo_bytes()`から暗号学的にも安全な擬似乱数を得てしまうのがいいかと思います(上の「誕生日攻撃」にもあるように、長さを長くすれば実用上衝突を無視することができるレベルは容易に達成できます)。
|