c#-这是一个加密功能强大的Guid吗?

我正在使用Guid作为网站的随机匿名访问者标识符(既存储为cookie客户端大小,又存储在db服务器端),并且希望使用一种加密方式来生成Guid(以便减少碰撞的机会).

为了记录,在Guid中有16个字节(或128位).

这就是我的想法:

/// <summary>
/// Generate a cryptographically strong Guid
/// </summary>
/// <returns>a random Guid</returns>
private Guid GenerateNewGuid()
{
    byte[] guidBytes = new byte[16]; // Guids are 16 bytes long
    RNGCryptoServiceProvider random = new RNGCryptoServiceProvider();
    random.GetBytes(guidBytes);
    return new Guid(guidBytes);
}

有一个更好的方法吗?

编辑:
这将用于两个目的,一个用于访问者的唯一ID,一个用于购买的交易ID(短暂地是查看/更新敏感信息所需的令牌).

解决方法:

我通常只使用Guid.NewGuid();

http://msdn.microsoft.com/en-us/library/system.guid.newguid(v=vs.110).aspx

上一篇:【pytorch->mindspore】1.自定义算子迁移


下一篇:图像压缩