@paulmillr: 为 noble 主页添加了一些很酷的交互式演示!https://paulmillr.com/noble/
摘要
Paul Millr 宣布为 noble 加密主页添加了交互式演示,展示了其面向 JavaScript/TypeScript 开发者的高安全性、经过审计的加密库。
查看缓存全文
缓存时间: 2026/08/30 16:20
为 noble 首页添加了超酷的交互式演示!
https://t.co/S8Ti5Ba6hz https://t.co/d87y5GdEil
Noble 密码学
来源:https://paulmillr.com/noble/ Noble 密码学是一套高安全性、易于审计的独立加密库,具备以下特性:
- 零依赖或极少依赖
- 高可读性的 TypeScript / JS 代码
- PGP签名(https://paulmillr.com/pgp_proof.txt)的版本发布与透明化的 NPM 构建
其核心理念是:1) 提升密码学知识水平 2) 增强 JS 生态系统的供应链安全 3) 提供可用于学习的库(因为其他库过于底层/对初学者不友好)。
Noble 已经历7次外部安全机构审计。被 MetaMask、ethers.js、viem、Protonmail、Tutanota、polkadot.js、solana-web3.js 等项目使用,并且截至2026年8月,被超过160万开源仓库依赖:74万用于哈希(hashes)(https://github.com/paulmillr/noble-hashes/network/dependents)、41.5万用于曲线(curves)(https://github.com/paulmillr/noble-curves/network/dependents)、35万用于secp256k1(https://github.com/paulmillr/noble-secp256k1/network/dependents)、7.5万用于密码学(ciphers)(https://github.com/paulmillr/noble-ciphers/network/dependents)、7万用于ed25519(https://github.com/paulmillr/noble-ed25519/network/dependents)。每周 NPM 下载量:哈希 6300万、曲线 2400万、密码学 2300万、ed25519 260万、secp256k1 110万、后量子 22万。
用法
// npm install @noble/curves @noble/hashes
import { secp256k1 } from '@noble/curves/secp256k1.js';
const priv = secp256k1.utils.randomSecretKey();
const pub = secp256k1.getPublicKey(priv);
const msg = new TextEncoder().encode('hello noble');
const sig = secp256k1.sign(msg, priv);
const isValid = secp256k1.verify(sig, msg, pub);
活跃项目:
- 密码学(github(https://github.com/paulmillr/noble-ciphers), npm(https://www.npmjs.com/package/@noble/ciphers)):加密密码学,包括 Salsa20、ChaCha 和 AES
- 曲线(github(https://github.com/paulmillr/noble-curves), npm(https://www.npmjs.com/package/@noble/curves)):椭圆曲线密码学,包括 secp256k1、ed25519、ed448、NIST / Brainpool 曲线、bn254、bls12-381、schnorr、hash-to-curve、FROST、Poseidon
- 更小的5KB“单曲线”版本:secp256k1(github(https://github.com/paulmillr/noble-secp256k1), npm(https://www.npmjs.com/package/@noble/secp256k1))和 ed25519(github(https://github.com/paulmillr/noble-ed25519), npm(https://www.npmjs.com/package/@noble/ed25519))
- 哈希(github(https://github.com/paulmillr/noble-hashes), npm(https://www.npmjs.com/package/@noble/hashes)):哈希函数、MAC与KDF,包括 SHA、RIPEMD、BLAKE、HMAC、HKDF、PBKDF 和 Scrypt
- 后量子(github(https://github.com/paulmillr/noble-post-quantum), npm(https://www.npmjs.com/package/@noble/post-quantum)):PQ算法,包括 ML-KEM、ML-DSA、SLH-DSA、FN-DSA(又称 Kyber、Dilithium、SPHINCS+ 和 Falcon)及混合方案
- awasm-noble(github(https://github.com/paulmillr/awasm-noble), npm(https://www.npmjs.com/package/@awasm/noble)):哈希与密码学的超快 WASM 版本
代码也可在 gitlab(https://gitlab.com/paulmillr)、codeberg(https://codeberg.org/paulmillr)和 jsr(https://jsr.io/@noble)上获取。可通过 github(https://github.com/sponsors/paulmillr)赞助该项目。当前主要赞助者包括 wevm(https://wevm.dev/)和 vault12(https://vault12.com/)。
历史
- 2019年6月:secp256k1(https://github.com/paulmillr/noble-secp256k1/commit/d544593d752a3101414eb1b3c3bee0c0fec349db)、ed25519(https://github.com/paulmillr/noble-ed25519/commit/36ded8a5dcc83ed171d05bb1c66ba7791b2299eb)及 bls12-381(https://github.com/paulmillr/noble-bls12-381/commit/d25ed4d8f1e91fc7a9858ac81c8cb52179f29ee0)初始发布
- 2020年4月:关于 ECC 的博文(https://paulmillr.com/posts/noble-secp256k1-fast-ecc/)发布
- 2021年
- 4月:审计 #1(secp256k1,由 Cure53(https://cure53.de/pentest-report_noble-lib.pdf)执行),通过 Umbra.cash(https://umbra.cash/)参与众筹(https://gitcoin.co/grants/2451/audit-of-noble-secp256k1-cryptographic-library)
- 10月:哈希库发布(https://github.com/paulmillr/noble-hashes/commit/54dfdfd9fc209814effbcbf20819336736be9273),由以太坊基金会(https://ethereum.org/en/)资助
- 11月:获得 Optimism(https://www.optimism.io/)资助
- 2022年
- 1月:审计 #2(哈希,由 Cure53(https://cure53.de/pentest-report_hashing-libs.pdf)执行),由以太坊基金会资助,并得到 Nomic Labs(https://nomiclabs.io/)协助
- 2月:审计 #3(ed25519,由 Cure53(https://cure53.de/pentest-report_ed25519.pdf)执行)
- 12月:曲线库发布(https://github.com/paulmillr/noble-curves/commit/a20a357225b2359534644663f11a70f19653fae9),整合了之前的三个包
- 2023年
- 2月:审计 #4(曲线,由 Trail of Bits(https://github.com/trailofbits/publications/blob/master/reviews/2023-01-ryanshea-noblecurveslibrary-securityreview.pdf)执行),由 Ryan Shea(https://www.shea.io/)资助
- 3月:secp256k1 和 ed25519 被重写并成为曲线库的5KB单功能版本
- 6月:密码学库发布(https://github.com/paulmillr/noble-ciphers/commit/f0e21ed3496a0d6082027effbc54d2e7f4db2027)
- 9月:审计 #5(曲线,由 Kudelski Security(https://github.com/paulmillr/noble-curves/blob/main/audit/2023-09-kudelski-audit-starknet.pdf)执行),由 starknet(https://www.starknet.io/en)资助
- 2024年
- 2月:后量子库发布(https://github.com/paulmillr/noble-post-quantum/commit/2834e5c3409f70309edf9c30b2c4206cd449cd8e)
- 5月:获得 Farcaster(https://www.farcaster.xyz/)资助
- 9月:审计 #6(密码学与曲线,由 Cure53(https://github.com/paulmillr/noble-ciphers/blob/ac7a601590eac6d1ba845cea0e1ae611aeacea32/audit/2024-09-cure53-audit-nbl4.pdf)执行),由 OpenSats(https://opensats.org/)资助
- 2025年
- 8月:发布密码学、曲线、哈希的 v2 版本;ed25519、secp256k1 的 v3 版本。主要为安全性改进。曲线库进行了大规模更新。
- 2026年
- 4月:awasm-noble(https://paulmillr.com/awasm/)初始发布
- 8月:审计 #7(曲线,由 Trail of Bits 执行,与 OpenAI 合作)
- 开始进行 LLM 辅助的自我审计
- 首次自我审计发现的问题比之前所有第三方审计的总和还要多
scure
Noble 的非加密姊妹项目。经过审计的微型库:
- 2022年1月:base(https://github.com/paulmillr/scure-base)(base64, bech32…)、bip32(https://github.com/paulmillr/scure-bip32)(hdkey)、bip39(https://github.com/paulmillr/scure-bip39)(助记词)
- 2023年2月:btc-signer(https://github.com/paulmillr/scure-btc-signer)(交易、隔离见证、taproot、psbt、多重签名)
- 2023年9月:starknet(https://github.com/paulmillr/scure-starknet)(stark 曲线、pedersen 和 poseidon 哈希)
- 2025年6月:sr25519(https://github.com/paulmillr/scure-sr25519)(polkadot 密码学:sr25519、Merlin、Strobe、HDKD、VRF)
- 2026年4月:新的强化版本,经过深度的、LLM 辅助的自我审计
学习
页面底部的交互式演示(https://paulmillr.com/noble/#interactive-demos)可视化了椭圆曲线群律、离散对数问题、哈希雪崩效应和认证加密。要深入了解:
- 学习快速椭圆曲线密码学(https://paulmillr.com/posts/noble-secp256k1-fast-ecc/)
- EdDSA
- Ed25519签名深度解析(https://cendyne.dev/posts/2022-03-06-ed25519-signatures.html)
- Ed25519深度解析补充(https://cendyne.dev/posts/2022-09-11-ed25519-deep-dive-addendum.html)
- 现在是 255:19 AM。你知道你的验证标准是什么吗?(https://hdevalence.ca/blog/2020-10-04-its-25519am)
- 驯服多样的 EdDSA(https://csrc.nist.gov/csrc/media/Presentations/2023/crclub-2023-03-08/images-media/20230308-crypto-club-slides–taming-the-many-EdDSAs.pdf) - 关于SUF-CMA与强绑定签名
- 解释辅因子:揭示椭圆曲线的小秘密(https://loup-vaillant.fr/tutorials/cofactor)
- 被 Elligator 包围(https://loup-vaillant.fr/articles/implementing-elligator)
- 密码学
- 快速密钥擦除随机数生成器(https://blog.cr.yp.to/20170723-random.html)
- ChaCha20 设计(https://loup-vaillant.fr/tutorials/chacha20-design)
- Poly1305 设计(https://loup-vaillant.fr/tutorials/poly1305-design)
- 如何创建新的分组密码?(https://crypto.stackexchange.com/a/39792/71535)
- 后量子与格
- 面向非密码学家的后量子密码学(https://keymaterial.net/2024/08/30/pqc-for-non-cryptographers/)
- 双线性对与 BLS
- 忙人的BLS签名(https://gist.github.com/paulmillr/18b802ad219b1aee34d773d08ec26ca2)
- 估算配对友好曲线的比特安全性(https://research.nccgroup.com/2022/02/03/estimating-the-bit-security-of-pairing-friendly-curves/)
- 多用户/多密钥攻击
- 破解一打密钥,免费获得一百万(https://blog.cr.yp.to/20151120-batchattacks.html)
- 关于“128比特安全性”(https://loup-vaillant.fr/tutorials/128-bits-of-security)
- 视频
- 椭圆曲线加法为何有效(https://www.youtube.com/watch?v=XmygBPb7DPM)
- 带误差学习:无解方程(https://www.youtube.com/watch?v=K026C5YaB3A)
- 格(https://www.youtube.com/watch?v=QDdOoYdb748)
- 肖尔算法(https://www.youtube.com/watch?v=lvTqbM5Dq4Q)
交互式演示
相似文章
@paulmillr: We’ve engaged @trailofbits, in collaboration with OpenAI, to audit noble-curves. No severe issues were found. A new rel…
Paul Miller announces that the noble-curves cryptography library was audited by Trail of Bits in collaboration with OpenAI, with no severe issues found, and a new v2.3 release is out.
@rubenhassid: https://x.com/rubenhassid/status/2067125557024960922
一份面向非程序员的实用指南,介绍如何使用Claude Code通过用简单英语描述想法来构建可点击的原型和小型内部工具,并附有逐步设置说明。
@paulmillr: Releasing bismar: a source code browser for terminal. Open any package from npm / jsr / crates / pypi / gems / packagis…
bismar is a new terminal-based source code browser that lets you open, browse, diff, and bundle packages from npm, jsr, crates.io, PyPI, gems, Packagist, GitHub, and more, with a focus on security and machine-friendly output.
@monokern: https://x.com/monokern/status/2071246711222055363
详细指南:利用 Claude Code、设计技能和插件,无需编写代码即可构建带有自定义动画的高质量作品集网站。
Show HN:我构建了一个主权操作系统、L1区块链、AI代理和编程语言
一位开发者展示了IONA,这是一个完全用Rust从零开始耗时10年构建的主权数字生态系统,包括操作系统、L1区块链、编程语言和本地AI代理。该项目已在GitHub上发布,欢迎技术反馈。