Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • SEARCH
  • Home
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 53849
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: May 10, 20262026-05-10T17:07:40+00:00 2026-05-10T17:07:40+00:00

I was asked implement a licensing schema for our product. They are very expensive

  • 0

I was asked implement a licensing schema for our product. They are very expensive products with few customers sparsely distributed around the world and basically every one of them has a design environment (a windows application installed on single windows machines, from 1 to 150 client machines per customer) and a web server that hosts production environment (1 to 8 machines per customer). Our product is licensed for server usage so customers can use any number of clients; we’ve decided not to license the server part (because it’s subject to SLA agreements) but only the client, because, after some time without capability to use the client the system becomes basically useless.

Our basic assumption is that the customer is ‘honest enough’ and only thing we would like to cover is stopping the client design environment if not properly licensed with a time expiration license.

I’ve evaluated different licensing product and they are or too expensive or too difficult to manage, so I’ve come up with this simple solution:

  • The license will be a simple signed XML file, signed using the standard XML Signature feature of w3c, using a private key that will be given to the admin department on a USB key; if they lose of copy it then the licensing schema will fail but it will be their fault
  • The client will open the license file on startup and check its validity using a public key embedded in the binaries
  • If license XML is valid and the data in it (expiration date and product name) are correct than the designer work; if not, an appropriate message will be shown

Any ideas about possible problems or how to improve the scenario?

  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. 2026-05-10T17:07:41+00:00Added an answer on May 10, 2026 at 5:07 pm

    I have yet to see a licensing scheme that wasn’t broken in a few weeks provided there was sufficient interest. Your scheme looks very good (though be certain that if someone really wants to, they’ll break it).

    Whatever you do, you should follow Eric Sink’s advice:

    The goal should simply be to ‘keep honest people honest’. If we go further than this, only two things happen:

    1. We fight a battle we cannot win. Those who want to cheat will succeed.
    2. We hurt the honest users of our product by making it more difficult to use.

    Since you’re implementing a license scheme for a program designed for corporate use, you can go even simpler and just keep some kind of id and expiration date along with a simple signature on the client and refuse to start if the license expired or signature failed. It’s not that hard to break it, but no licensing scheme is and if you consider your customers honest, this will be more than enough.

    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Related Questions

My boss asked me implement a RESTful web service on some of our products.
I was asked to implement a random product listing for an osCommerce on-line store.
As part of our homework we are asked to implement an abstract class with
My App is a medicine reminder and many customers asked me to implement the
I have been asked to implement some email address validation on a web app
I was asked to implement a menu bar that is neither horizontal nor vertical.
I was asked to implement a code to copy some info from a Oracle
This is the gallery I've been asked to implement http://sandbox.leigeber.com/slideshow/ I've chopped and changed
In a recent interview, I was asked to implement a thread safe generic (i.e.template
I went to a PHP job interview, I was asked to implement a piece

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.