From License Models

License Models and techniques to license your software.

NodeLocked Counted License

Another simple license model – the NodeLocked Counted License.

Last time we discussed the nodelocked license, which is a license grant that allows your software to be used on a particular computer, and on that computer only. The typical nodelocked license is uncounted, meaning that if the software is running on the specified computer, any number of concurrent copies of the software are allowed to run. There is a variation of the nodelocked license called a nodelocked counted license. This license allows the software to be run on a single computer only, but it limits the number of concurrent copies of the software that can be run on that computer.

The nodelocked counted license was originally made popular in the Electronic Design Automation software market.  However, a nodelocked counted license is suitable for situatnodelocked counted licenseions where your software usually runs on a server-class computer, since a nodelocked uncounted license on such a system can provide far more value than a typical nodelocked license locked to a workstation or PC.

RLM supports two flavors of nodelocked counted licenses: single and counted.    The single license is a special case of a node-locked counted license which does not require a license server, so it is as simple to administer as a nodelocked uncounted license.  The general case of a nodelocked counted license does require a license server.

As we discussed in our blog post describing the nodelocked license, having several license models in your price book allows you, as a publisher, to price differently depending on your customer’s situation, which allows you to capture the optimal amount of revenue for a particular customer.  Nodelocked uncounted licenses may be appropriate for some of your products, while nodelocked uncounted licenses are more appropriatre for others.  A mixture of floating and nodelocked licenses can help maximize revenues depending on your customer’s situation.

To implement nodelocked counted licenses in RLM, set the count field of the license to either “single” or a positive integer, and specify the hostid of the computer in the actual license. A nodelocked single license does not require a license server, so it is as simple as a nodelocked uncounted license to deploy. A nodelocked counted license with a count (even if the count is 1) does requrire a license server, so it is the next step up in complexity.   RLM-EZ does not support nodelocked counted licenses.  

Next time:  floating licenses.

Help for RLM license administration

- view the RLM License Administration Manual here
- Visit our license administration help page here

Written by Reprise Software - Visit Website

Maintenance-Thru-Date Licenses

Creating Maintenance-Thru-Date Licenses

Many software publishers wish to issue a license to their customers which allows the customer to run (forever) any version of the software which is released before a particular date.  We call this a “maintenance-thru-date” license.  A typical example is that the customer is allowed to run any software released up to 12 months after their original purchase of the software.  If the publisher releases a new version in 11 months, the customer can use this version as well, but they cannot use any version which is released more than 12 months later.

A “maintenance-thru-date” license is implemted with a “date-based” version.  Briefly, you request a version of your software which encodes the release date, and you generate licenses with versions that specify the last release date which can be used.

To implement this in your product, do the following:

  • set the version field of the license to a date, in the format yyyy.mm,
  • specify the version in your call to rlm_checkout() in the same date format, with a date corresponding to the date of release.
  • When you issue licenses, issue them with a version number corresponding to the expiration of their support.

For example, if you want to issue a one-year supported license in May of 2016, you would issue a license of version 2017.05 to your customer. When you release your software in December of 2016, you would request version 2016.12 and the 2017.05 license would work for this version of your software.  When you release again in July of 2017 (with a requested version of 2017.07), your customer will not be able to run that release of your software.

It is certainly possible to use other date formats, however, the format above is used by RLM Activation Pro and it seems as good as any.

 

Help for RLM license administration

- view the RLM License Administration Manual here
- Visit our license administration help page here

Written by Reprise Software - Visit Website

Which RLM Edition is best?

Three Editions of Reprise Software Licensing Toolkits – which RLM Edition is best for you?

Reprise Software now offers three licensing toolkit editions addressing the software licensing needs of cost-conscious ISVs.  This article compares the three editions to help you decide which RLM edition is best for you.

Reprise Software offers “RLM”, “RLM-Embedded”, and “RLM-ez.”  Each edition is a complete solution with tools for integrating license enforcement  into your applications, and for generating licenses to enable them. They all are based on a common set of licensing apis. How do they compare?

RLM

Reprise Software’s flagship product is RLM.  It contains all of the bells and whistles that users have come to expect from the best in enterprise class software license management.  RLM was designed by the same team that brought you FLEXlm, so in a sense RLM is the next generation of software licensing solutions.  RLM is used by hundreds of independent software vendors who deliver millions of licenses to users, worldwide.

RLM supports a wide array of software licensing models including floating or concurrent user, named user, and many others. RLM includes the RLM License Server that supports a full built-in admin interface.  The RLM License Server produces reports logs that are easy to parse into usage and billing reports using 3rd party tools, or tools that you write using the well-documented, open report log format specification. Reprise Software’s Activation Pro product supports Internet activation for RLM licenses.

First introduced in May of 2006, RLM supports the widest selection of platforms.

RLM-Embedded

Like RLM-ez, RLM-Embedded as a toolkit that supports node-locked licenses only, but with a rich api to support an unlimited number of products, and optional Internet activation via Activation Pro. RLM-Embedded uses the very same api as RLM, so if you upgrade to RLM, then you need to make no source code changes.

As you would expect, RLM-Embedded is offered at a much lower price point that the full RLM product.  In addition to supporting Windows, Linux, and Mac, RLM-Embedded supports some Unix platforms as well.

RLM-Embedded was first released in September, 2009.

RLM-ez

RLM-ez addresses simple node-locked licensing styles only.  If you simply want to make sure your software can run only on authorized computers, then RLM-ez is a good choice.  It uses industry standard digital signature technology so that you can deliver tamper-proof text-based licenses that are locked to your customer’s computer.

The RLM-ez API is very simple, with only a handful calls.  A typical use case for RLM-ez is when you want your customers to freely download your application for a trial period without you having to get involved.  This works well for low cost software where special hand-holding for licensing would be cost prohibitive.  When your customer wants to buy, he sends you his hostid, you generate a license, and email it back. Done.

RLM-ez pricing is a small one-time fee, per product, per platform. RLM-ez is supported on all the major desktop platforms, including Windows, Linux, and Mac.

RLM-ez was first released in March, 2014.

Please contact the Reprise Software Sales Team for more information and detailed pricing.

Help for RLM license administration

- view the RLM License Administration Manual here
- Visit our license administration help page here

Written by Reprise Software - Visit Website

Using Software Activation to hande Decommissioned Computers

Did your customer’s computer really crash? – using software activation to verify.

Here’s the picture:  A software publisher’s support hot-line rings. The caller reports that his computer has crashed, and that he needs another software license for a new replacement computer right away. What to do?

Software publishers strive to ensure that their customers are not inconvenienced by software licensing issues. When a computer crashes, users scramble to find a new one.  They re-install their applications and contact their vendors to obtain new licenses. Software publishers provide a new license as quickly as possible, but how do the publishers know that the old license will be permanently retired and not put back into service if the old machine is repaired someday.  This is an especially important issue for software publishers who sell perpetual licenses.

Many software publishers handle this scenario by asking their customers to sign a form that certifies that the old license has been destroyed and that it will not be put back into service.  This provides a modest hurdle to dissuade customers from taking advantage of the software vendor’s easy license replacement policy.  Other publishers require a license transfer to be associated with an order, so that there is a paper trail that the company agrees that the old license is not to be used, verified by a purchase order coming from the company.  But, today software vendors who use an Internet software activation service, such as Reprise’s Activation Pro, have better methods to handle this case and others like it.

With Activation Pro, software applications are “activated” over the Internet.  Activation performs two important jobs: delivering licenses to users 24×7, and leaving behind a record of each fulfillment. Each fulfillment record contains:

  • activation key that was used
  • user’s computer hostid to which the license was issued
  • user’s IP address
  • date and time of the first and last fulfillment using that key
  • other data that the application wishes to associate with the activation event, and
  • a copy of the license that was delivered to the user

So, how do you use RLM and Activation Pro to handle a crashed or decommissioned computer?  Using RLM and Activation Pro, applications can periodically request the status of the fulfillment from the Activation Pro database.  If the fulfillment is valid, the application runs as normal. But, if the ISV deletes the fulfillment record from the Activation Pro database because the computer was reported to be crashed or decommissioned, the application can know to deny service.

When using this model, the license should include the activation key used to fulfill the license.  This way the application can check out the license at runtime to determine if it is valid, retrieve the activation key and the hostid from the license, then check the status of the fulfillment. The application will find out whether the license is still valid, or whether the fulfillment has been deleted.

Implementation details of the method described here can be found in the RLM and Activation Pro Reference Manuals on the Reprise Website.

Help for RLM license administration

- view the RLM License Administration Manual here
- Visit our license administration help page here

Written by Reprise Software - Visit Website

Using RLM Activation Pro to Support Subscription Licensing

Subscription Licensing

Software publishers are adopting subscription licensing models at an increasing rate. Subscriptions help to smooth license revenue from recurring fees while attracting customers with lower entry costs.

Using RLM Activation Pro, an ISV can sell subscription licenses that have expiration dates years into the future. When users are connected to the Internet, applications can periodically request the status of the subscription from the Activation Pro service.  If the subscription is valid, the application runs as normal. But, if the user cancels his subscription or fails to renew, the ISV marks the activation key as “disabled” so that the application can know to shutdown.  The activation record can be re-enabled if the customer reinstates his subscription later.

This method minimizes the ISV workload because action only needs to be taken when the user cancels the subscription, or fails to renew.

RLM licenses that support a subscription model should include the activation key in the license itself.  This way the application checks out the license at runtime to determine if it is valid, retrieves the activation key and the hostid from the license, then checks the status of the subscription. The application will find out whether the license is still valid, or whether the activation key is disabled.

Implementation details of the method described here can be found in the RLM and Activation Pro Reference Manual.

Help for RLM license administration

- view the RLM License Administration Manual here
- Visit our license administration help page here

Written by Reprise Software - Visit Website

When do I need the RLM License Server?

The Reprise License Manager product is capable of supporting many license types. Some are appropriate for standalone, single-user licensing models and others are used to support more complex network licensing and pricing scenarios. Determining when a license server must be installed is not always clear.

So, let’s spend a few minutes talking about the various jobs a license server performs, and when it is needed to support various license types.

Uncounted v. Counted Licenses

The biggest factor that determines whether a license server is required is whether licenses are counted or uncounted.  Counted licenses require a license server because it must “count” concurrent licenses. Counted licenses are used whenever the ISV wants to limit or record concurrent license usage. Counted licenses can be identified by a positive integer in the “count” field of the license.

Uncounted licenses, on the other hand, do not require a license server because there is no need to count usage. Uncounted licenses can be identified by the word “uncounted” or or the number “0” in the license count field of the license. Each uncounted license must be node-locked to a hostid. For ease of administration at larger sites, uncounted licenses for multiple computers may reside in a license file that is managed by a central license server, but this is not required.

The other license type that does not require a license server is the “single” license type. This is also a node-locked license, but it can be used by only one user at a time (concurrent count of “1”). The enforcement of “single” licenses is done via file locking, not by license servers.

The RLM License Server

The basic job of the RLM License Server is to service license requests from RLM-enabled client applications over the network. Based on the needs of the application, the license server redirects license requests to the ISV-specific license server which actually grants or denies the request based on what is specified in the license and on the current usage conditions.

License servers also manage “roaming,” named-user, and token-based licenses. They manage held and shared licenses, and offer an admin interface, diagnostic tools, and are responsible for writing debug and report logs.

Help for RLM license administration

- view the RLM License Administration Manual here
- Visit our license administration help page here

Written by Reprise Software - Visit Website

Licensing Mobile Users with RLM

Roaming Licenses with RLMLuggage

If you sell floating licenses for your software products, you can increase the value of your licenses by allowing them to be removed from the network when your users hit the road.

With RLM, you can give users a license that will allow them to remain in compliance even after they’ve disconnected their laptop from the corporate network.  Whether for a few hours, a few days or a few weeks, “roaming” licenses can be valuable to your users, and set you apart from your competition.

Increasingly, users want to take their work “on the road.” RLM’s built-in license roaming capability allows users to check out a license from a server, physically disconnect from the server and continue to use the license for a specified number of days, after which the license is automatically returned to the server when it expires on the mobile computer.

As an ISV, you control whether licenses are allowed to roam, and how long they can be checked-out in the disconnected state. No API changes are required beyond providing a special rlm_roam license to your customer.

RLM license roaming was designed to allow ‘disconnected’ use for short durations up to a few weeks.

Help for RLM license administration

- view the RLM License Administration Manual here
- Visit our license administration help page here

Written by Reprise Software - Visit Website