如何将字节数组数据转换为看起来像产品密钥的格式

时间:2019-01-30 08:54:52

标签: c# byte licensing

我正在创建许可证软件密钥,当前在加密过程之后得到一个字节数组。如何将此字节数组(可能为2000)转换为看起来像xxxxx-xxxxx-xxxxx-xxxxx-xxxxx的产品密钥,其中x的值可以是大写AZ和0-9之间的值?

我正在尝试在c#控制台应用程序中生成许可证密钥并验证生成的许可证。

var bytes = memoryStream.ToArray();
//memoryStream is a cryptostream and the size of the byte array can be around 2000

我希望将字节数组转换为格式正确的键,该键看起来像我上面提到的格式。在过去的两个星期中,我一直坚持这一点。非常感谢您的帮助。

2 个答案:

答案 0 :(得分:0)

尝试使用Convert.ToBase64String(byte[])。这将为您提供一个字符串,字母A-Z,a-z,0-9。然后,您可以使用-方法手动添加string.Substring

答案 1 :(得分:0)

我建议您使用Guid

Guid.NewGuid();

Documentation about Guid