| Software Protection Services Ship |
| Oct. 22, 2007 |
Commercial developers can now get Software Licensing and Protection (SLP) Services, a set of tools that help prevent unauthorized use of software through product activation and that protect intellectual property by making it harder to reverse-engineer .NET code. But pricing may put the product out of reach for small ISVs. Three Editions SLP helps developers prevent piracy by allowing them to implement an activation system similar to that used by Microsoft as part of its Windows Genuine Advantage program, although the two programs are independent and do not share any code. Protected applications run under the control of a Secure Virtual Machine (SVM), a runtime that is linked in to the resulting application and that interprets and executes protected code. Developers use the SLP Code Protector SDK, an add-in to Visual Studio, to mark sections of their code as "licensable entities" that the SVM will allow to execute only if an appropriate digital license has been obtained. Protected code is also transformed in a way that makes it much harder to reverse-engineer the original source code. Digital licenses are obtained from an SLP server that can be run either as a Microsoft-hosted service or an on-premise server. Activations can be assigned to a specific machine (similar to what Microsoft uses for Office and Windows) and developers can control what features are enabled, whether the activation is perpetual or good for a limited time before it must be renewed, and how many times a license can be reactivated in the event the application needs to be reinstalled. The hosted service is available in three editions: a Basic Edition that costs US$500 per year (or comes as part of the MSDN Premium subscription) and can protect a single application with up to 100 commercial activations, a Standard Edition that costs US$7,500 per year and can protect five applications with a total of up to 1,000 commercial activations, and an Enterprise Edition that costs US$20,000 per year and can protect an unlimited number of applications with a total of up to 2,500 activations. (Pricing is summarized in the chart "SLP Pricing".) The Basic Edition is also limited in how much of an application can be protected: unlike the Standard and Enterprise Editions, which allow the developer to have an unlimited number of licensable entities in their application, the Basic Edition allows only five protected functions (or methods) in an application. In addition, the other editions allow developers to gather statistics about application usage, but the Basic Edition does not. The on-premise version is available in two editions: a Standard Edition that costs US$35,500 and protects five applications with 1,000 commercial activations and an Enterprise Edition for US$90,000 that protects an unlimited number of products with 2,500 activations. (Prices for both versions include two years of Software Assurance.) Noncommercial activations for use with trial editions are also included and packs of additional 1,000 commercial activations can be purchased for US$1,000. Besides the risk that customers may balk at more widespread use of activation, small ISVs in particular may find themselves in a squeeze. The Basic Edition is too limiting for all but the smallest developers but the Standard and Enterprise Editions may be too expensive. For example, if an ISV sells 10,000 copies of a product per year, the cost of the Standard Edition of the hosted service plus an additional 9,000 activations is US$16,500 per year, or US$16.50 per sale. Technical details on SLP are provided in "Software Protection Tools Coming" on page 22 of the Aug. 2007 Update. The Code Protector SDK can be downloaded from www.microsoft.com/downloads/details.aspx?familyid=7ae70aaa-8b7c-4e3a-af83-b71b6877705b. |