gpt4 book ai didi

java - 什么是最佳 scrypt 工作因素?

转载 作者:IT老高 更新时间:2023-10-28 13:52:29 29 4
gpt4 key购买 nike

我正在使用 Java scrypt library用于密码存储。当我加密事物时,它需要一个 Nrp 值,其文档将其称为“CPU 成本”、“内存成本” ”和“并行化成本”参数。唯一的问题是,我实际上并不知道它们的具体含义,或者对它们有什么好的值(value);也许它们以某种方式对应于 Colin Percival's original app 上的 -t、-m 和 -M 开关。 ?

有人对此有什么建议吗?库本身列出了 N = 16384, r = 8 和 p = 1,但我不知道这是强还是弱还是什么。

最佳答案

作为开始:

cpercival提到in his slides from 2009周围的东西

  • (N = 2^14, r = 8, p = 1) for < 100ms(交互式使用),并且
  • (N = 2^20, r = 8, p = 1) for < 5s(敏感存储)。

即使在今天(2012 年 9 月),这些值对于一般用途(某些 WebApp 的密码数据库)也足够好。当然,具体取决于应用程序。

此外,这些值(大部分)意味着:

  • N:一般工作因子,迭代次数。
  • r:用于底层哈希的 block 大小;微调相对内存成本。
  • p:并行化因子;微调相对 CPU 成本。

rp 旨在解决 CPU 速度、内存大小和带宽未按预期增加的潜在问题。如果 CPU 性能提高得更快,则增加 p,如果内存技术的突破提供一个数量级的改进,则增加 rN 可以跟上每某些时间跨度的一般性能翻倍。

重要提示:所有值都会改变结果。 (已更新:)这就是为什么所有 scrypt 参数都存储在结果字符串中的原因。

关于java - 什么是最佳 scrypt 工作因素?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11126315/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com