We at Cole Software use licensing keys to protect our z/XDC product. These keys enforce the both the machines and time periods in which our product runs. There are more good reasons to do this than you might think:

1) Intellectual property protection [duh.]

2) Liability protection. [huh?] Let me explain. z/XDC is a powerful tool that can be used (security permitting) by a malicious person to corrupt a system. If a copy is stolen and used to create mischief on a 3rd party system, then that creates a liability *BOTH* for us *AND* our customer:

    a) It creates a liability problem for us because we don't have a
       contract with that 3rd party establishing the limits of liability.

    b) It creates a liability for our customer because he's the one that
       let the product get stolen in the first place.

    c) If a lawsuit should occur, just the simple fact of having
       licensing controls is helpful to our defense. (It shows that we
       went to extra effort to create protection.)

So execution-CPU controls protect the both of us.

3) We sell z/XDC via a lease (not a permanent license) (maintenance included). That lease expires periodically. Our license controls are set to expire after 30 day grace period past the end of the lease. That way, should a corporation decide that they do not want to renew, The expiring license limits the ability of a "rogue" employee to violate corporate's wishes. So the expiration helps the customer (the corporation) to avoid unwanted liabilities to us.

4) We do have a few customers who tend to be "slow pay". Having a technologically enforced expiration date is helpful in those situations (although historically, we're pretty soft-a$$'d about this. We've been known to give extensions for months!)




User Friendliness:

As for usability concerns, if a product needs to be taken down just so that licensing controls can be applied, then that product needs to be rewritten! With out product, licensing controls can be done on the fly with no interruption of service.

To avoid surprise expirations, our product issues an expiration warning starting 21 days before expiration. The lead time for that warning can be change by the customer to whatever time period the customer chooses.

Also, 30, 60 or 90 days out [depending upon the customer], our own people will have already been in touch with an expiring customer's purchasing department to help get the renewal paperwork going, both so that we get paid our renewal fees on time and so that the customer's users avoid service interruption.

In the event that a customer's bureaucracy has failed to renew the lease in time, our web site has a service by which any customer (expired or otherwise) can obtain temporary license activation codes on an instant 24x7 basis. (Obviously, our web site incorporates certain fraud and abuse controls, and it does report to us details about who has used the service.)




Disaster Recovery:

Since our licensing codes are CPU sensitive, a problem does arise for DR testing (and real DR). But this problem is resolved by our web site service. A sysprog at a disaster recovery site can get temporary licensing codes over the net 24x7, for the recovery machines.




Trust?

As regards the trust model, tried that. Didn't even get a T-shirt. I started writing license control support back in the mid '80s when I discovered that one customer, which was licensed to use the product on two computers, actually was using it on 7! When they installed the next release, they howled about how they could no longer use XDC on their "backup" systems. One way or another, though, I guess they made do. They didn't increase their purchase, but they did stay with us another decade and a half.

Haven't had much cheating since...

Nevertheless, the trust model can work because customers, especially large ones, are not monolithic. It's both hard and risky to get word of licensing cheating down to all of the troops. Sooner or later, someone is going to contact the vendor to resolve a product problem, and that's a likely moment when licensing cheating will be discovered. (I view those moments as sales opportunities. <vbg>)

But why create a situation where the opportunity to cheat is too easy? Sometimes the "cheating" is entirely inadvertent. Sometimes small products can get lost in the musical CPUs shuffle unless they speak out. Licensing codes are a way in which z/XDC speaks out.




The point is, yes licensing codes can be a P.I.T.B., but they do provide *mutually* beneficial protections. And yes, it is definitely incumbent upon the vendor both to write their licensing management software to be as friendly as possible, and to provide as responsive a customer support service as they can.

Dave Cole              REPLY TO: [EMAIL PROTECTED]
Cole Software          WEB PAGE: http://www.xdc.com
736 Fox Hollow Road    VOICE:    540-456-8536
Afton, VA 22920        FAX:      540-456-6658





At 2/17/2007 08:58 AM, you wrote:
If an ISV doesn't use a key tied to a date and a machine serial number, what other mechanism is there to insure there are no pilfered copies of the ISV's product running somewhere, and the ISV doesn't have a clue?

There is the 'trust' model, which IBM uses.


From a user's perspective, if the ISV is timely in his delivery of license keys, why is it a big deal?

1. That's a big IF.
2. In a 7/24 multi-time zone environment, getting the capability to stop all users of a product long enough to apply the keys is problematic. 3. You don't always know until the last minute (usually on a weekend), and some companies
   (PKWARE, for example), only work M-F/9-5.
4. If you're out-sourced, you sometimes have the service provider:
  a. Waiting until after they expire to tell you.
  b. Slow in applying them.
  c. Making mistakes and applying another customer's keys.

The key point is it complicates an already complex environment!
I can see a use for evaluation keys, but once the contract is signed, give me a permanent key, and use the 'trust' model.

----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html

Reply via email to