0

このメソッドを使用して作成したピクルスファイルは、強制的に開くとテキストエディタで読み取ることができます。

import pickle,os
print os.path.split(__file__)[0]
storloc= os.path.normpath(os.path.join(os.path.split(__file__)[0],"test.pkl"))

newD={"String":"this is the world", "int":1,"float":1.5}
print newD
print storloc
d = open(storloc, 'wb')
pickle.dump(newD,d)
d.close()

ピクルスファイル(test.pkl)をテキストエディタで読めなくする方法は?

4

2 に答える 2

0

Pythonのピクルスのような単純なフォーマットをパスワードに対して安全にしようとするのはばかげたゲームです。

代わりにパッケージを使用しkeyring、パスワードを安全に保存するためにOSに任せてください。

import keyring

username = # Obtain a stored username or ask the user
password = keyring.get_password('your_application_name', username)

if password is None or verify_password_failed:
    password = # Obtain a password from the user
    keyring.set_password('your_application_name', username, password)

パッケージはOS提供のkeyringキーリング(OS X、Windows、KDE、Gnome)を使用しますが、必要に応じて独自の暗号化されたストアにフォールバックします。

于 2012-11-14T17:28:31.963 に答える
0

ダンプ呼び出しに3番目のパラメーターを追加するだけです。これはプロトコルパラメーターであり、デフォルトのパラメーター(0)のみがASCIIエンコードされます。プロトコル1と2はバイナリのみであり、テキストエディターでマングルする必要があります。

ただし、これ安全ではありません。パスワードが表示されないようにする場合は、pycriptoを確認し、ファイルに対して適切な暗号化を行ってください。

于 2012-11-14T17:15:32.980 に答える