我正在開發一個使用敏感資訊(例如密碼)并對其進行處理的專案。問題是我不希望我的計算機上的任何地方都可以訪問這些資訊。經過大量研究,我在這里找到了最好的幾個解決方案。這是按順序排列的
它的第一個建議是將你的python檔案編碼成pyc但是“有現成的反編譯工具,破解成本低”
另一種是混淆,但我相信密碼仍然在檔案中或有被發現的風險。
然后是 py2exe——不過,我希望它能夠在多個平臺(macOS 和 Linux)上運行。根據上面的網站,它仍然可以被反編譯。
最后一種是使用 cythonize,這使得它難以破解,但感覺非常復雜——我還必須為 Windows 和 Unix 重新編譯——但它可以作業。
我也嘗試input()在我的代碼中使用,但我發現您在控制臺中輸入的內容會存盤并顯示在螢屏上。
Cythonize 是簡單地使代碼加密的唯一方法嗎?或者以某種方式隱藏密碼?
uj5u.com熱心網友回復:
切勿將密碼硬編碼到源/二進制檔案中。始終從用戶那里獲取密碼。是的,終端可以留下輸入的痕跡。為了緩解這種情況,有一個特殊的 python 庫;獲得通行證
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 :")
uj5u.com熱心網友回復:
如果不可讀你的意思是機器不可讀,如果你使用GitHub,只需放入yourPythonFile.py一個名為.gitignore.
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/438295.html
