跳到主要内容
uencoder

scrypt

scrypt 是 Colin Percival 设计的内存困难 KDF,通过大量内存需求抵御 GPU/ASIC 并行暴力破解,用于密码哈希与密钥派生。

用途

在 CPU 困难之外增加内存困难,使专用硬件(ASIC)攻击成本剧增。

机制

基于 PBKDF2 与 ROMix(BlockMix 在内存中随机访问填充数组)。参数 N(内存/时间成本)、r(块大小)、p(并行度)。需分配约 N×r×128 字节内存。常用 N=2^15, r=8, p=1。

用例

  • Litecoin(莱特币)挖矿
  • Tarsnap 备份加密
  • 密码哈希(替代 bcrypt)
  • ETH 2.0 密钥派生

示例

  • 输入
    password, salt, N=2^15, r=8, p=1
    输出
    256-bit key

    Needs about 32 MB of memory

常见错误

An N value too low loses the memory-hard property
Tune per environment; N≥2^15 recommended for servers

相关词条

相关工具

参考链接