ramsey/uuid 版本 4 使用 "true" 还是伪随机数?

Does ramsey/uuid version 4 use "true" or pseudo-random numbers?

我在我的项目中使用 ramsey/uuid。 我正在使用 uuid4 创建新的数据实体,它会生成随机 UUID:

Uuid::uuid4();

但是我在使用这种方法的同时也批量导入了数以千计的数据。现在我担心我系统的熵池:uuid4 是否使用 "true" 随机数,它会在某个时间耗尽我的熵池?还是它会使用伪随机数而我不必担心?

非常感谢!

默认情况下,它从 PHP 7 中的 random_bytes() 函数生成 UUID,或者从 PHP 5 中的 paragonie/random_compat 库中的 polyfill 生成 UUID。所以它的 UUID 是与这些功能的响应一样随机。见 RandomBytesGenerator class.

随机性是否足够好取决于您使用 UUID 做什么。