位于印度的LogicNP Software 公司最近发布了CryptoLicensing v2013 for .Net,包含了一个新的许可证服务激活控制台,支持列出与许可证代码相关的激活信息,还能添加或删除激活信息。
最新版本中的使用报告控制台支持多个设置文件。此外,在调用CryptoLicensing.DeactivateLocally过程中出现的异常现在会被记录下来,并且可以通过CryptoLicensing.GetStatusException方法来访问。同样地,调用CryptoLicensing.Load/Save/Remove过程中出现的异常也会被记录下来,也可以通过CryptoLicensing.GetStatusException方法访问。
CryptoLicensing v2013 for .Net能够将数据字段的值与配置文件一起保存。使用CryptoLicenseGenerator实例时可以加载多个licproj文件。此外,还支持 Mono for Android应用程序。
最新版本中,对运行于Mono之上的程序集的Perform Strong Name Verification和Perform Strong Name Verification of CryptoLicensing Module设置的支持也有所改进。它还包含了一些新的方法和属性。
方法
CryptoLicenseGenerator.GetProfileFromName
CryptoLicenseGenerator.AddNewProfile
CryptoLicenseGenerator.CopySettingsToProfile
属性
CryptoLicense.RemainingRuntime
CryptoLicense.CurrentRuntime
LicenseService.DBWorker
CryptoLicensing v2013也改进了在使用Generator API或客户部署的许可证服务认证失败时的错误报告机制。此外,CryptoLicense.RemainingRuntime和 CryptoLicense.CurrentRuntime属性现在用于免受修改系统日期所带来的影响。该公司也改进了产品文档的内容。
LogicNP Software还与CryptoLicensing v2013 for .Net一起发布了CryptoLicensing v2013 for MFC和CryptoLicensing v2013 for ActiveX。
为了解关于CryptoLicensing v2013 for .Net的更多信息,InfoQ采访了LogicNP Software的高级开发工程师Himangi G。
InfoQ:CryptoLicensing for .Net要满足的需求是什么?
软件盗版是个残酷的现实,光开发高质量的软件卖给客户是不够的。要保护自己的投资并确保在所开发软件上得到足够的回报,实现某种形式的许可同样重要。
要减少盗版率并阻止客户与其他人分享软件拷贝,许可机制是必要的。要阻止黑客和破解人员绕过许可逻辑创建软件的非授权版本,健壮的许可机制也是必要的。
InfoQ:CryptoLicensing for .Net与其他竞争性产品有何不同?
CryptoLicensing的最高目标是以最小的代价为客户实现许可功能。主要目标应该是让忠实客户继续忠实。CryptoLicensing的很多设计决策都是带着这个目的开发的。
比如,CryptoLicensing将计算机名的哈希用作机器码。使用计算机名可以确保激活和机器锁机制免受常见问题的影响,比如修改硬件配置会给这些机制带来困扰。
将计算机名用作机器码在安全和限制机器修改方面做到了完美的平衡。在功能方面,CryptoLicensing有许多独特功能是其他许可系统不具备的。
可以举几个例子,CryptoLicensing能够将许可绑定到特定版本/名称/culture的宿主程序集上;能够执行宿主程序集的强名称验证(即使程序集的验证功能被关闭或跳过也没问题)、很强的反调试和防篡改保护功能。
Generator API是另一个独特的功能,支持以编程方式生成许可代码。该功能可用于实现任何级别的定制,还可集成在许可证生成、销售/电子商务和完成订单等过程中。
借助现成的许可证生成器,CryptoLicensing也可以与PayPal、ShareIt、Plimus、ClickBank和RegNow等电子商务应用集成,该许可证生成器能够自动完成订单并发送许可信息。
InfoQ:是不是可以使用CryptoLicensing for .Net激活基于.NET窗口的应用程序?(和Windows 7/8的激活类似)
当然可以。CryptoLicensing完全支持激活许可证。在生成许可证时,只需要指定激活许可证所需的最大机器数字。当一个这样的许可证通过验证后,CryptoLicensing客户端API会自动与CryptoLicensing许可证服务通信并激活该许可证。
InfoQ:利用CryptoLicensing for .Net和许可证密钥保护应用程序是不是可行?
可以,CryptoLicensing使用了最新的军用强度的、最先进的加密技术来保护软件和知识产权。即便使用暴力破解的方法,Cryptographic许可证也是牢不可破的。此外,因为许可证只能用客户所拥有的私钥生成,这意味着黑客无法为客户的软件开发注册机。
InfoQ:你能否解释一下CryptoLicensing for .Net是如何保护ASP.NET网站的?
CryptoLicensing可用于保护任何.Net软件,包括ASP.Net网站。必须集成到软件源码中的许可验证代码非常简单,只有如下几行:
CryptoLicense license = new CryptoLicense(); lic.ValidationKey = ... // 项目的验证密钥 lic.LicenseCode=... // 设置想要验证的许可证代码,或是调用.Load()方法 if(lic.Status!=LicenseStatus.Valid) // 验证该许可证不管你要保护的是桌面应用、ASP.Net网站还是Web服务、Windows Service、Silverlight应用、XNA/Xbox游戏以及Mono Android或Mono Touch应用等,上面代码都是一样的。
InfoQ:你能否与我们分享一下CryptoLicensing for .Net未来的路线图?
我们计划向CryptoLicensing加入新的许可验证限制。考虑到易用性和功能性,我们还计划改进现有的激活控制台和许可证管理等特性。还有一些计划目前还不便透露。我们渴望得到用户反馈。很多最受欢迎和最有用的功能就是用户反馈的结果。
查看英文原文:CryptoLicensing v2013 for .Net with Activation Console, Mono for Android Support