欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

32位随机哈希值的简单解决方式GUID

程序员文章站 2022-07-14 19:53:55
...

最近一直碰到一些需要使用到唯一值的情况。本身想使用毫秒配合随机参数组合再进行md5编码。但是随机参数存在随机种子问题。在超高并发的情况下。还是会出现数值重复问题。遂在windows官方的docs中找解决方案。发现现在本身有一个东西叫GUID。以下为摘取概念。

GUID概念

GUID: 即Globally Unique Identifier(全球唯一标识符) 也称作 UUID(Universally Unique IDentifier) 。 GUID是一个通过特定算法产生的二进制长度为128位的数字标识符,用于指示产品的唯一性。GUID 主要用于在拥有多个节点、多台计算机的网络或系统中,分配必须具有唯一性的标识符。
在 Windows 平台上,GUID 广泛应用于微软的产品中,用于标识如如注册表项、类及接口标识、数据库、系统目录等对象。

尝试样例

常用的有两种情况。一种是带中间-符号的唯一值,也就是我们常见的注册表中的唯一值。另一种就是我们常见md5模式的32位连续的字符串

class Program
{
	static void Main(string[] args)
	{
		//32位字符串
		Console.WriteLine(System.Guid.NewGuid().ToString("N"));
		//连字符分隔的32位字符串
		Console.WriteLine(System.Guid.NewGuid().ToString("D"));
	}
}

输出结果

//32位字符串
e544f01a1f40436988371ac010eeb948
//连字符分隔的32位字符串
4f10c0e7-75f8-4b18-9982-f6bb5e438235
相关标签: 随机字符串