我对为我的应用程序创建许可证密钥很感兴趣,并且已经想到了一个系统如何进行激活,以便在不打扰我的客户的情况下将复制安全性降至最低。另外,我很清楚没有绝对的方法可以防止盗版,毕竟我不介意。
我对一般密钥生成更感兴趣。我能想到的第一种方法是使用 SHA、MD5 或任何其他流行的单向算法创建哈希。这些散列(大部分)很短,并且很容易为客户输入。但同时,我想在生成的激活密钥中包含其他数据,我想在客户端的应用程序中解密这些数据。但是大多数使用密钥加密数据的算法会产生随机长度的短语,这些短语的长度很容易超过 300 个字符。
是否有一种算法可以将字符串加密为具有预定义长度或模式的密文,然后可以解密?