→ mikapauli: 加密 01/29 14:41
謝謝 我找到方向
如果把密碼用base64.encodestring先編碼 再拆成幾個部位
回頭組合 再用base64.decodestring解碼 再加判斷邏輯
然後程式再python -m py_compile 檔案.py 如何?
不過我不了解網路上所說2.5版的pyc文件,2.4版本的 python是無法運行的意思
3之後的版本會這樣嗎? ex. 3.3版編的 3.5 3.6 ...不能運行之類
單純是不想讓人看見密碼 但沒有特意要卡版本
→ s860134: 印象中書上是說只加一個底線做為區域變數耶? 01/29 15:02
→ s860134: 前後雙底線則是 python 內建的 class method 慣例 01/29 15:03
→ os653: 雙底線有特殊意義,你建一個有雙底線變數的class用dir看看 01/29 15:47
→ s860134: 雙底線屬性在實體建立時名稱會被冠有_(class_name)前墜 01/29 17:15
謝謝 我再回頭看看 class我還是沒有搞得很懂
※ 編輯: JokePtt (101.138.144.31), 01/29/2017 17:46:11
推 IAMPF: 你可以把密碼hash起來,然後輸入密碼時比對hash 01/29 18:01
推 LiloHuang: 用 py_compile 編譯成 pyc,仍有可能被 depython 還原 01/29 20:11
→ LiloHuang: 若在意可考慮對 bytecode 再加花指令,干擾反編譯運作 01/29 20:14
→ LiloHuang: Python 直譯器會看 .pyc 的檔頭 magic 欄位來判斷版本 01/29 20:20
→ uranusjr: 如果是不想被看見密碼, 唯一的方法是不要把密碼放在程式 01/29 21:20
→ uranusjr: 你做的任何加密都可以非常輕易地被破解, 完全沒用 01/29 21:20
→ uranusjr: 所以請先說說看你為什麼需要把密碼放在程式裡 01/29 21:21
其實 我沒什麼程式底 會寫也只是打算用來讓投資方面更好用罷了
之所以會介意 是通常密碼都是跟個人的生活經驗 資訊相連結 比較好記
設定也只是萬一普通人路過 別亂動翻到我用的密碼
或者因交情要給某人 設一段他的密碼 附一段時間限時
就很直覺想寫進去程式然後再讓他不那麼容易辨識
倒不是要做什麼了不起的商業軟體 生活上遇到會反破解的人可能不多吧?
也只是想到這樣
→ s860134: 樓上說得好,邏輯和資料分離才是根本之道 01/29 22:54
→ zerof: 密碼一般會放在 config 檔 01/30 00:27
※ 編輯: JokePtt (101.139.148.17), 01/30/2017 00:44:03