擅长:python、mysql、java
<p>安全的方法是使用AES加密敏感数据,加密密钥是通过基于密码的密钥派生函数(PBE)派生的,PBE是用于加密/解密AES加密密钥的主密码。</p>
<blockquote>
<p>master password -> secure key-> encrypt data by the key</p>
</blockquote>
<p>你可以使用<a href="https://www.dlitz.net/software/python-pbkdf2/" rel="noreferrer">pbkdf2</a></p>
<pre><code>from PBKDF2 import PBKDF2
from Crypto.Cipher import AES
import os
salt = os.urandom(8) # 64-bit salt
key = PBKDF2("This passphrase is a secret.", salt).read(32) # 256-bit key
iv = os.urandom(16) # 128-bit IV
cipher = AES.new(key, AES.MODE_CBC, iv)
</code></pre>
<p>确保存储salt/iv/passphrase,并使用相同的salt/iv/passphase解密</p>
<p>Weblogic使用类似的方法来保护配置文件中的密码</p>