使用TrueLicense来保护我们的JAVA软件产品

2008-02-23 09:20:57来源:互联网 阅读 ()

新老客户大回馈,云服务器低至5折

使用TrueLicense来保护我们的JAVA软件产品

也可以查看我的wiki:http://sms.i6688.com/pages/viewpage.action?pageId=25

我们的Java软件产品有时需要限制非法用户,只有购买了LICENSE的用户才能使用,因此,我们可以通过TrueLicense来实现。

首先要用KeyTool工具来生成私匙库:

keytool -genkey -alias privatekey -keystore privateKeys.store

然后把私匙库内的公匙导出到一个文件当中:

keytool -export -alias privatekey -file certfile.cer -keystore privateKeys.store

然后再把这个证书文件导入到公匙库:

keytool -import -alias publiccert -file certfile.cer -keystore publicCerts.store

服务器端利用私匙库来创建license的代码例子:

package com.sourceware.license;



import de.schlichtherle.license.*;

import java.io.*;

import java.util.*;

import javax.security.auth.x500.X500Principal;

import java.util.prefs.Preferences;



/**

 * <p>Title: CMVP通用媒体增值业务平台</p>

 *

 * <p>Description: CMVP通用媒体增值业务平台</p>

 *

 * <p>Copyright: Copyright (c) 2005</p>

 *

 * <p>Company: source-ware.com inc.</p>

 *

 * @author 黑山

 * @version 2.0

 */

public class SWLicenseManager {

  public SWLicenseManager() {

  }



  LicenseContent verifyLicenseKey(LicenseParam parameter) {

    // Create a configured license manager.

    LicenseManager manager = new LicenseManager(parameter);

    try {

      // Verify the previously installed current license certificate.

      return manager.verify();

    }

    catch (Exception exc) {

      System.err.println("Could not verify license key");

      exc.printStackTrace();

      return null;

    }

  }



  void installLicenseKey(LicenseParam parameter, File keyFile) {

    // Create a configured license manager.

    LicenseManager manager = new LicenseManager(parameter);

    try {

      // Load the license key, verify and install it as the current license key.

      manager.install(keyFile);

    }

    catch (Exception exc) {

      System.err.println("Could not install license certificate");

      exc.printStackTrace();

    }

  }



  void createLicenseKey(LicenseParam parameter, LicenseContent content) {

    // Create a configured license manager.

    LicenseManager manager = new LicenseManager(parameter);

    try {

      // Create the license key from the license content and save it to a file.

      manager.store(content, new File("license.lic"));

    }

    catch (Exception exc) {

      System.err.println("Could not save license key");

      exc.printStackTrace();

    }

  }



  //

  // Customizable global properties.

  //



  /** The product id of your software */

  public static final String PRODUCT_ID = "cmvp20"; // CUSTOMIZE



  /**

   * The subject for the license manager and also the alias of the private

   * key entry in the keystore.

   */

  public static final String SUBJECT = "别名"; // CUSTOMIZE



  /** The resource name of your 
			   
			   

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇:简化Spring(4)--View层

下一篇:ANTLR中文手册一(致谢)