创建可执行 Python 文件但不可读

Create executable Python file but not readable

我正在从事一个使用敏感信息(例如密码)并对其进行处理的项目。问题是我不想在我的计算机上的任何地方访问该信息。经过大量研究后,我找到了几个最好的解决方案 here。以下是顺序

  1. 它的第一个建议是将你的python文件编码成pyc但是“有现成的反编译工具,破解成本低”

  2. 另一个是混淆,但我相信密码仍然在文件中或有被发现的风险。

  3. 然后是 py2exe- 但是,我希望它能够在多个平台(macOS 和 Linux)上 运行。还是可以按照上面的网址反编译的

  4. 最后一种方法是使用 cythonize,它很难破解,但感觉非常复杂 - 我还必须为 Windows 和 Unix 重新编译 - 但它有效。

我也尝试在我的代码中使用 input(),但我发现您在控制台中输入的内容会存储并显示在屏幕上。

Cythonize 是唯一一种简单地使代码加密的方法吗?或者以某种方式隐藏密码?

如果不可读是指机器不可读,如果您使用 GitHub,只需将 yourPythonFile.py 放入名为 .gitignore.

的文件中

切勿将硬编码的密码存储到 source/binary 文件中。始终从用户那里获取密码。是的,终端可以留下输入的痕迹。为了缓解这种情况,有一个特殊的 python 库; getpass

from getpass import getpass

val =input("Do you want to enter your password secretly? (Y/N)\n")
 
if val == 'N':
    
    password = input("Enter your password that has good strenght :")
else:
    password = getpass("Secret mode!!! Enter your password that has good strenght :")