1

所以我正在尝试存储哈希和盐。生成哈希和盐的代码如下所示:

from pbkdf2.pbkdf2 import PBKDF2
import os
salt = os.urandom(64)    # 512-bit salt
hash = PBKDF2(password, salt).read(64) # 512-bit key

这给了我一些 512 长度的字节。但是,当我尝试将它们存储到 mysql 数据库中时,我遇到了一些麻烦。我认为 python 2.7 解决方案是

salt.encode('utf-8')
hash.encode('utf-8')

但这不适用于python3。我目前正在尝试

"'"+salt.decode('utf-8', 'ignore')+"', '"+hash.decode('utf-8', 'ignore')+"'"

在我的插入字符串中,但出现错误:

latin-1' 编解码器无法对位置 158 中的字符 '\u06e0' 进行编码:序数不在范围内(256)

关于如何在 mysql 数据库中存储字节的任何想法?

编辑:我试过同时使用 varchar(512) 和 blob(512)

4

0 回答 0