我需要在程序上设置密钥,这将是一个exe文件。我想看:
用户单击exe文件,然后程序重新请求密钥,用户粘贴密钥,并且密钥不再询问。用户无法将此激活的exe发送给其他用户,其他用户也不能再次使用此密钥。
或提出更好的主意。
p。 C。 exe文件是控制台应用]
例如,您可以使用平台模块来(几乎)唯一地标识机器。然后,它们的键可以是被视为字符串的此标识符的sha256十六进制摘要,如下所示:
import hashlib
import platform
# Only an example, you can add whatever you want provided by the platform module to identify the machine
identifier = platform.platform()
key = hashlib.sha256(identifier.encode()).hexdigest()
优点:
缺点:
因此,这意味着您的系统是安全的,只要用户不知道如何自己计算标识符。
您可以使用自己的服务器对此模型进行阐述。例如,您可以使用计算出的标识符和秘密字符串在服务器上计算密钥。
优点:
缺点:
要解决此问题,您可以为附加到其标识符的每个用户定义一个随机字符串,但这意味着您必须为每个用户存储此随机字符串。
还要注意,最后两个解决方案使用了外部服务器。因此,您假设您将能够进行网络请求。