我想将我用Python制作的应用程序的代码发布给公众,就像一个pastebin链接一样。但是,应用程序需要客户端ID,密码和用户代理才能访问API(在本例中为reddit)。
如何将密钥字符串存储在python代码中,而不是让每个人都可以自由控制我的api访问权限?可能是散列函数还是类似函数?
答案 0 :(得分:4)
您可能根本不想提供实际密钥和其他私人信息,哈希或其他信息。除了是一个安全问题,它可能违反了您与提供商隐含的各种协议。
使用该应用程序的任何人都应该能够以与您相同的方式获得自己的密钥。您可以(并且应该)提供有关如何执行此操作的说明。
您的应用程序应该期望密钥信息采用记录良好的格式,通常是配置文件,用户必须在获得相关密钥后提供这些信息。您应该记录您希望读取密钥的确切格式。
您的文档还可能包含一个虚拟文件,其中包含空的或明显的占位符值供用户填写。这可能有点过分,但我建议您确保使用的任何占位符都不是有效密钥。这将大大有助于避免因您可能违反的协议而发生的任何事故。