我在使用Python中的Bcrypt
散列痛苦文本密码时遇到错误。我在解释下面的错误。
Traceback (most recent call last):
File "hash.py", line 3, in <module>
hashed = hashpw(plaintext_password, gensalt(log_rounds=13))
TypeError: gensalt() got an unexpected keyword argument 'log_rounds'
我的代码如下。
from bcrypt import hashpw, gensalt
plaintext_password = 'subhra123@'
hashed = hashpw(plaintext_password, gensalt(log_rounds=13))
print hashed
这里我需要哈希密码。
答案 0 :(得分:2)
您的错误来自log_rounds
,您只需使用该号码。这是一个例子:
hashed = hashpw(plaintext_password, gensalt(13))
来自官方文档:
可调节的工作因素 bcrypt的功能之一是可调节的对数工作因子。要调整工作因子,只需将所需的轮数传递给bcrypt.gensalt(rounds = 12),默认为12):
工作演示:
import bcrypt
password = b"super secret password"
# Hash a password for the first time, with a certain number of rounds
hashed = bcrypt.hashpw(password, bcrypt.gensalt(14))
# Check that a unhashed password matches one that has previously been
# hashed
if bcrypt.hashpw(password, hashed) == hashed:
print("It Matches!")
else:
print("It Does not Match :(")
Here是指向文档的链接,指定如何使用此文档。
希望这有帮助!
答案 1 :(得分:2)
我想要使用gensalt(13)
或gensalt(rounds=13)
代替gensalt(log_rounds=13)
。