Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/docker/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 停靠环境中的Argon2参数_Java_Docker_Kubernetes_Passwords_Password Hash - Fatal编程技术网

Java 停靠环境中的Argon2参数

Java 停靠环境中的Argon2参数,java,docker,kubernetes,passwords,password-hash,Java,Docker,Kubernetes,Passwords,Password Hash,我正在将基于spring boot/kotlin的微服务部署到Kubernetes集群中进行身份验证。 为了安全地存储和比较密码,我希望使用Argon2,但我很难找到正确的参数 由于该服务应该在公共云中运行,因此我选择了Argon2id模式以降低侧通道攻击的风险 按照常规,我选择了一个salt,输出长度为32B 给定停靠环境中的约束条件,我选择了并行因子2 总的来说,我希望散列操作大约需要1s 现在困扰我的参数是内存。第8节建议使用大约1GB的内存。 目前我们的POD总共有1GB的内存限制,

我正在将基于spring boot/kotlin的微服务部署到Kubernetes集群中进行身份验证。 为了安全地存储和比较密码,我希望使用Argon2,但我很难找到正确的参数

  • 由于该服务应该在公共云中运行,因此我选择了Argon2id模式以降低侧通道攻击的风险
  • 按照常规,我选择了一个salt,输出长度为32B
  • 给定停靠环境中的约束条件,我选择了并行因子2
  • 总的来说,我希望散列操作大约需要1s
现在困扰我的参数是内存。第8节建议使用大约1GB的内存。 目前我们的POD总共有1GB的内存限制,我不想在没有适当推理的情况下改变这个限制。使用如此多的内存还意味着每个服务实例一次只能有一个用户进行身份验证。 但是,更重要的是,为了使用1GB实现可接受的时间,我需要将迭代次数设置为1。 特别让我恼火的是,我发现的所有库(包括参考实现)的默认内存成本都在
2^12KB=4MB
2^16KB=64MB
之间

因此,我的问题是:是否有关于如何权衡内存和迭代的建议或建议,特别是在Docked环境中? 我使用5次迭代和
2^18KB=262MB
获得了很好的结果。鉴于Argon2的内存硬度是针对专用硬件的使用,260MB的内存限制是否足够


编辑:为了让我的问题更清楚:我所能找到的所有讨论都建议我尽可能多地使用内存,我的机器可以提供。在云环境中,这个角色通常是颠倒的,我需要说明我需要多少资源。

这个问题可能已经得到了回答。答案还包含相关问题的链接,所有这些问题的目的都是为Argon2找到好的参数。