擅长:python、mysql、java
<p>如果不使用示例明文和哈希来验证结果,则执行此操作有点棘手,但您的代码应该实现您在问题中列出的算法:</p>
<blockquote>
<p><code>Base64(salt + SHA256(salt + password))</code></p>
</blockquote>
<p>我想你想要这样的东西:</p>
<pre class="lang-py prettyprint-override"><code>import base64
import hashlib
hash = 'EwxBhfN0fM5Puv8/z+3/L50QvdU6BHFb4XQU9xtye/mOXJ8tBPc3tIyW7dEiZrvA'
salt = base64.b64decode(hash)[:16] # Use 16 here, not 15
password = 'some_plain_password'
# First let's do the SHA256(salt + password) part
m = hashlib.sha256()
m.update(salt)
m.update(password.encode('utf-8'))
# Now let's feed that into the Base64 part
new_hash = base64.encode(salt + m.digest())
</code></pre>