问题标签 [argon2-ffi]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
167 浏览

java - HSM 和 Argon2 的区别?哪一个更可取

我正在开发一个处理客户详细信息的应用程序,我们希望将其以加密的形式存储在我们的数据库中,哪一个更适合 Argon2

0 投票
2 回答
517 浏览

node.js - Node.js argon2 包不会返回字符串

我正在编写一个需要密码哈希的网络应用程序。我正在使用argon2来自 npm 的包来实现这一点。

下面是我编写的一个函数,它返回一个字符串,$argon2i$v=19$m=4096,t=3,p=1$QC3esXU28vknfnOGCjIIaA$f/2PjTMgmqP1nJhK9xT0bThniCEk28vX2eY6NdqrLP8但是Promise { <pending> }当值为 console.log(ed) 时函数返回。

代码是:

所以,输出console.log()Promise { <pending> }

有人可以帮我解决这个问题吗?

非常感谢。

0 投票
2 回答
745 浏览

node.js - Argon2 很难在 MacOS 上使用 Angular 8:实际上根本不工作

我正在与:

  • MacOS 莫哈韦沙漠
  • 角 8
  • 节点 v12.12.0
  • npm v6.13.4

并试图让 Argon2 在我的 Angular 8 应用程序中工作。

为了使用 Argon2,需要全局安装 gcc 和 node-gyp。我确实按照 Argon2 的 npm 页面上的说明安装了它们。GCC v9 已安装。但是,我在执行时遇到了反复的问题:

我不断收到有关 stdlib++ 的错误。我尝试使用 Apple 的 CLang++ 并通过以下方式成功构建:

我在我的 Angular 项目中导入了 argon2 以进行密码散列和验证。散列似乎运行良好(没有错误),但是一旦我导入 argon2.verify() 并在我的代码中使用它(通过进行验证调用),我会在尝试执行 npm run start 时出错。只是尝试使用相应的私钥和证书启动受保护的 httpserver (ssl/tls)。

我得到的错误是一些神秘的错误:

我在互联网上看到了关于可能类似问题的评论和投诉,人们提到了 Webpack 配置文件中的一些调整,但目前我的项目中没有这个配置文件。我尝试了其他版本的 node-gyp-build 但没有解决。显然 argon2.hash() (它的用法)正在工作而不会引起问题,但是一旦我在我的代码中引入 argon2.verify() 并使用 npm run start 运行我的应用程序,我就会收到上述错误。

任何有类似问题的人以及如何解决这个问题?

0 投票
2 回答
1825 浏览

node.js - Argon2 与节点 docker 容器

我的 NestJs 应用程序可以在我的本地机器(Windows)上完美运行。现在我想为我的应用程序创建一个 docker 容器。当我尝试启动我的容器时,我遇到了 Argon2 的一个问题。我在容器上安装了所有需要的氩气。我的错在哪里?

感谢

Dockerfile:

码头工人撰写:

0 投票
1 回答
56 浏览

json - 将 Bytestring 转换为“普通”字符串 Python

我正在生成一个 argon2d 哈希,并想将它与我的数据库中的哈希字符串进行比较。

对于散列,我使用这个函数:

我的输出是:

我尝试使用argon2Hasher.decode(encoding="ascii")它导致: UnicodeDecodeError: 'ascii' codec can't decode byte 0xd1 in position 1: ordinal not in range(128) 我也尝试了相同的命令,encoding="utf-8"但这导致UnicodeDecodeError: 'utf-8' codec can't decode byte 0xd1 in position 1: invalid continuation byte

如何将其转换为纯文本(普通字符串)?

我正在使用 Python 3.6。

0 投票
1 回答
291 浏览

python - 如何将 argon2 与 python 龙卷风异步使用?

这是我的登录页面的处理程序,我打算通过 ajax 发布请求使用它。

设置包括此参数hasher=PasswordHasher()

我收到以下错误TypeError: object bool can't be used in 'await' expression,我知道这是因为我正在调用的函数不返回未来对象而是布尔值。

我的问题是我如何异步使用散列库而不会在散列过程的全部时间内被龙卷风阻塞,我知道这在设计上需要很长时间。

0 投票
0 回答
36 浏览

swift - 来自字节数组的 Swift 字符串而不验证编码?

我正在尝试使用这个Argon2 implementation。我正在实现一个现有的协议,因此我在设计上没有任何灵活性,并且该协议将函数的各种输入视为字节序列。但是,该实现将输入视为Strings。是否有任何我可以使用的编码允许我将任意字节序列转换为String没有任何有效性约束的 a - 也就是说,所有可能的字节序列都将无错误地转换?

0 投票
2 回答
913 浏览

go - 如何正确调整 Go 中的 Argon2 参数以减少内存消耗?

Argon2在设计上是很耗内存的。在半官方的 Go 实现中,使用时建议使用以下参数IDKey

其中1时间参数,64*1024内存参数。这意味着库在散列值时将创建一个 64MB 的缓冲区。在许多散列过程可能同时运行的情况下,这会对主机内存造成很大压力。

在内存消耗过多的情况下,建议减少内存参数并增加时间因子:

RFC 草案建议[2] time=1,memory=64*1024 是一个合理的数字。如果在某些情况下无法使用该内存量 (64 MB),则可以增加时间参数以进行补偿。


所以,假设我想将内存消耗限制为 16MB(推荐的 64MB 的 1/4),我仍然不清楚我应该如何调整time参数:这应该是4 倍,以便内存和时间保持不变?或者在时间和记忆的相关性背后还有其他一些逻辑在起作用吗?

0 投票
1 回答
2524 浏览

spring-security - BCrypt vs Argon2 及其散列算法

我在一家提供软件服务的初创公司工作,最近我们制定了加密安全标准。对于散列,设定的标准是我们应该使用 SHA-512 或 SHA-256。

对于 Java,我们正在考虑使用 Spring 或 Argon2 的 Bcrypt。实际上阅读他们的文档,如果他们的底层算法使用 SHA-512 或 SHA-256 或其他东西,找不到任何信息?

还是这些都是过时的散列算法,我们应该使用其他算法?

谁可以帮我这个事?

0 投票
0 回答
105 浏览

nuget-package - 未找到 libsodium.dll 运行时文件夹

我正在使用 libsodium 0.10.0.0 包来实现密码散列。

安装 nuget 包后,将在 package.config 和项目文件中创建条目,如下所示:

构建后出现以下错误:

为了解决上述错误,我在 csproj 文件中手动添加了以下配置设置,但仍然无法正常工作,然后我尝试手动将 libsodium 包路径中的“runtimes”文件夹复制到上述路径,它正在我的本地构建,但我的竹自动构建失败。