-1

我正在尝试为我正在创建的登录系统散列密码。我正在使用 hashlib 导入并使用 blake2b 哈希算法。我似乎无法弄清楚如何散列一个变量,例如passwordEntry。所有 hashlib 示例都只是 blake2b 散列字符。例如:blake2b(b'IWantToHashThis')我很困惑为什么必须在哈希中包含“b”字母。如果我尝试散列一个变量,则“b”字母不能与我想要散列的变量结束。我尝试散列变量的示例:blake2b(passwordEntry)我尝试散列变量的另一个示例:blake2b(b passwordEntry)在第二个示例中,我刚刚给出的 hashlib 认为它正在尝试对变量“b passwordEntry”进行哈希处理。就像我之前所说的,“b”字母必须包含在散列算法中才能正确执行。很抱歉,如果我理解很难理解这个冗长的问题

4

1 回答 1

1

该字母b仅在引号 [ ", ', """, ''''] 之前有效。并且要注意这个字符串是bytes. 如果要将字符串转换为字节,可以通过 b"string"或来完成"string".encode()。但是,在您的情况下,您只能使用sinceencode()方法仅适用于文字字符串。所以在你的情况下strbblake2b(passwordEntry.encode())

于 2021-07-04T05:43:15.813 回答