我正在使用安全类,并且需要实现发送不可转让许可证的许可服务器。我不知道该怎么做。你能告诉我一些你的想法吗?
答案 0 :(得分:4)
你需要找到一些东西来将许可证绑定到唯一且不可变的东西,以获得唯一且不可变的足够现实的值。规范示例是网络适配器的MAC地址。该地址通常在工厂设置,“不能”更改,并且是全球唯一的。 (我是否进行了足够的套期保值以避免挑剔......?)
一旦您获得此识别信息,使得不可转让的许可证非常简单,您基本上有一个受信任的机构签署该地址并将其用作许可证。如果要检查计算机是否是您获得许可运行的计算机,只需使用密钥的公共部分检查签名是否正常。
答案 1 :(得分:1)
如果您可以进行Web访问,则可以要求用户登录中央服务器。它会发回一个引用用户ID的令牌,如另一个答案中所述,加上有效时的时间范围。我们的想法是,您不希望需要连续的Web访问,只需每小时或每天访问一次,或者您的风险承受能力。
理想地,这是在幕后完成的,例如,当用户首次注册他们的产品时,使用从服务器获得的初始令牌。您的应用程序使用此令牌登录到中央服务器以获取操作令牌,没有任何操作以明文形式显示用户名和密码。好处:这与MAC地址(网卡)等物理硬件无关。当用户被告知他们会因为更换硬件而失去一切时,它真的很生气。
缺点:知识渊博的攻击者可以将令牌复制到其他系统。但是有三种方法可以解决这个问题: