我们有一个C#应用程序,需要保护它免受非法复制.所以我们决定使用Portable.Licensing库来保护我们的系统.
我如何将许可证绑定到Portable.Licensing中的硬件ID,以便只有特定的PC可以使用许可证?
解决方法
您可以在PC的名称,硬件信息等上生成唯一的哈希值,并在许可证创建期间将此哈希值添加为“附加属性”.
许可证创建示例:
var license = License.New() .WithUniqueIdentifier(Guid.NewGuid()) .As(LicenseType.Standard) .WithMaximumUtilization(1) .WithAdditionalAttributes(new Dictionary<string,string> { {"HardwareId","........"} }) .LicensedTo("John Doe","john.doe@yourmail.here") .CreateAndSignWithPrivateKey(privateKey,passPhrase);
要验证属性,您可以实现自己的验证扩展方法,或者只使用现有的AssertThat().示例:[1]
生成唯一的硬件ID超出了便携式许可的范围.