嗯。这样子的话,只能你们自己保证算法不泄漏了。要不就有被crack的危险。

解决方案 »

  1.   

    需要提供一个序列号才能在非localhost主机下运行
    这个一般都是通过lisence来做的吧,根据硬件信息生成对应的lisence文件
      

  2.   

    给个我看过的例子
    license = base64_encode(base64_encode("域名,版本,序列号"));还原split(base64_decode(base_decode(license));较验域名,不过加密算法不能让人知道才行
      

  3.   

    我的一个思路:
    把经过运算得到的序列号存放在lisence文件里,再把lisence用zend加密,必须有lisence才能使用
      

  4.   

    首先读取客户的一个或者多个数据,例如域名、IP、硬盘序列号等数据
    然后把这些数据混淆,例如 a换成b、1换成0
    然后从这些被混淆后的数据中随机抽取一组不相连的字符,生成注册码你们记录随机抽取前的数据,
    然后,你们是知道如何混淆的,所以可以还原。呵呵,临时想到的,如果你做成了,记得告诉我一下哦
    大家继续讨论。
      

  5.   

    取得服务器的域名再加上代码版本、序列号有效期限等等形成一个串
    只需base64编码就可以了,因为你的程序是要经Zend编译的,即使用明码写在程序里也无所谓。
    关键的是取回的密钥你打算放在哪里?wuruichang(迷糊) 的意见可以参考,不过总觉得有点那个...
      

  6.   

    刚才我那个问题我想到了
    我是这样
    base64_decode(md5("用户名+自已内部标记"))
    取出最后16位作为密码一起发给用户。
    这样用户在网站上输入用户名和密码。
    我验证下用户名后再比较密码。
      

  7.   

    补充一下:过了试用期必须有lisence才能使用。当然有很多的方法,一般是用户名+机器码等,然后经过算法加密作为序列号。