我已经向我们的客户发送了 10000 封邮件,每封邮件都有一个格式的链接
http://example.com/LogIn?key={guid}
不幸的是
guid
我发送的是随机 guids(由 Guid.NewGuid()
生成的测试数据),因此客户都收到了无效链接...根据我从网络服务器收到的 404,我发送了一些 guid。我读到 Windows 中的 guid 生成器很弱,因此您可以从已有的 guid 中预测下一个 guid。有谁知道怎么做?如果我能做到这一点,我可以使我发送的 guid 有效,以便链接再次工作。
最佳答案
Windows 生成 GUID 的方式已经改变了几次,互联网上许多看似可靠的建议是完全错误的(可能只是过时了,也可能总是完全错误)。
上次我研究这个(几年前,可能是 XP SP2)时,我直接进入操作系统代码看看实际发生了什么,它生成了一个带有 secure random number generator 的随机数。 .
如果您以默认方式生成它们,我怀疑您会很幸运地从另一个 GUID 中预测出它们。
关于cryptography - 如何从给定的 GUID 预测下一个 GUID?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/816882/