gpt4 book ai didi

c++ - 使用我自己的算法创建 GUID

转载 作者:行者123 更新时间:2023-11-28 02:26:14 24 4
gpt4 key购买 nike

我需要为将 Xmp 数据插入文件的应用程序创建一个文档 GUID。该应用程序是用 C++ 编写的,将是跨平台的,因此我想避免使用可能会产生兼容性问题的库。

我想做的是通过连接我的应用程序的名称加上自纪元以来的秒数加上为整个文件计算的 SHA256 哈希中的适当字符数来创建一个字符串(我将这样做无论如何出于其他原因)。

产生的结果是否足以保证碰撞“在实践中完全不可能”?

最佳答案

除非您期望生成大量文档,否则完全使用 SHA256 绝对有可能避免任何冲突。如果您的应用程序在其生命周期内生成的文档少于 10^29 个,则发生任何冲突的可能性为 less than 1 in 10^18。 (假设 SHA256 设计良好)。

这意味着在发生碰撞的可能性为 0.0000000000000001% 之前,世界上几乎每个人 (7e9) 都可以使用您的应用每秒生成 1e9 个文档 1,000 年。

如果愿意,您可以添加更多位(例如名称和时间),但为了避免冲突,这几乎肯定是过大的杀伤力。

关于c++ - 使用我自己的算法创建 GUID,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30558519/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com