首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >python模块argon2-cfi使用了Argon2的什么“味道”?

python模块argon2-cfi使用了Argon2的什么“味道”?
EN

Stack Overflow用户
提问于 2022-01-19 10:44:24
回答 1查看 212关注 0票数 0

Argon2 v1.3是python模块argon2-cffi使用的算法。

文档中,它们声明如下:

“argon2-cfi实现Argon2版本1.3,如:Argon2:用于密码哈希和其他应用程序的内存硬函数。中所述。”

然而,本文档并没有具体说明任何“风味”(i/d/id)的实际用法,它只是解释了差异。

默认情况下,argon2-cffi使用什么“风味”?是否有一种方法来指定您想要使用的“味道”?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-01-19 13:59:17

hash函数在PasswordHasher类中从argon2-cffi返回的值判断,可以得出这样的结论:在默认情况下,混合“风味”是使用的。

代码语言:javascript
运行
复制
from argon2 import PasswordHasher

PasswordHasher().hash("foo")

返回:

代码语言:javascript
运行
复制
"$argon2id$v=19$m=65536,t=3,p=4$xIu1KPUI7Ofe6HxYhmbNiA$6q7HjVOe6933Ogaw0f7pLodCdBgJsST8JAszTkv4Jh4"

上述类别的评论证实了这一点:

默认情况下使用Argon2\ *id**,并且总是使用随机salt_进行散列。但只要哈希编码正确,它就可以验证任何类型的Argon2。

更改模块使用的“风味”是通过将类type的变量PasswordHasher分配给如下所定义的Type类完成的:

代码语言:javascript
运行
复制
from argon2 import PasswordHasher, Type
代码语言:javascript
运行
复制
PasswordHasher(type=Type.I).hash("foo")  # lib.Argon2_i
代码语言:javascript
运行
复制
PasswordHasher(type=Type.D).hash("foo")  # lib.Argon2_d
代码语言:javascript
运行
复制
PasswordHasher(type=Type.ID).hash("foo") # lib.Argon2_id

这些Type变量中的每一个都引用了相应的argon2库,如注释所示。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/70769188

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档