C#学习教程:Portable.Licensing如何将许可证绑定到PC所以我们决定使用Portable.Licensing库来保护我们的系统。如何将许可证绑定到Portable.Licensing硬件ID,以便只有特定PC才能使用该许可证?您可以在您的PC名称、硬件信息等上生成一个唯一的散列,并在创建许可证期间将此散列添加为“附加属性”。许可证创建示例:varlicense=License.New().WithUniqueIdentifier(Guid.NewGuid()).As(LicenseType.Standard).WithMaximumUtilization(1).WithAdditionalAttributes(newDictionary{{"HardwareId","........"}}).LicensedTo("JohnDoe","john.doe@yourmail.here").CreateAndSignWithPrivateKey(privateKey,passPhrase);要验证属性,您可以实现自己的验证扩展方法,或者只使用现有的AssertThat()。示例:[1]生成唯一的硬件ID不在便携式许可证的范围内。[1]https://github.com/dnauck/Portable.Licensing/blob/develop/src/Portable.Licensing/Validation/LicenseValidationExtensions.cs#L100您可以调用AsserThat方法:license.Validate().AssertThat(lic=>lic.ProductFeatures.Get("HardwareId")=="133456",newGeneralValidationFailure(){Message="无效硬件。",HowToResolve="联系管理员"});使用ProtectedData.Protect和DataProtectionScope.LocalMachine来加密许可证文件中的某些键值对。只有当该值在同一台计算机上成功解密时,许可证才有效。ProtectedData.UnProtect只会在加密它的同一台机器上解密。这将需要在注册过程中实现桌面/客户端服务器交互。以上就是《HowPortable》C#学习教程的全部内容。如涉及侵权,请点击右侧联系管理员删除。如需转载请注明出处:
