跳到主要内容

ECDSA / Ed25519 密钥生成器

API reference

生成椭圆曲线密钥对(Ed25519、ECDSA P-256/P-384/P-521 或 secp256k1)为 PEM(PKCS#8/SPKI)、JWK 或原始十六进制格式,包含公钥的 JWK 指纹。在您的浏览器中生成,永不传输。

输入

PEM 具有通用性。JWK 由 JWT 库使用。原始十六进制用于低级加密。

输出

私钥
 

保密 — 像对待密码一样对待它。不要提交或粘贴到不可信的服务中。

公钥
 

公钥的 RFC 7638 指纹 — 稳定的密钥 ID。

这对您有帮助吗?

使用此工具的更多方式

REST API

curl -X POST https://api.iotools.cloud/v1/tool/ecdsa-ed25519-key-generator \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "algorithm": "ed25519",
    "outputFormat": "pem"
  }'

替换成您账户中的密钥。工具的字段即为请求体——没有额外包装。

让 AI 代理执行

Use the IOTools `ecdsa-ed25519-key-generator` tool (ECDSA / Ed25519 Key Generator) on this input:

YOUR_INPUT_HERE

将此粘贴给任何已连接 IOTools MCP 服务器的代理,再加上您的输入内容。

嵌入式小组件

<iframe
  src="https://iotools.cloud/embed/ecdsa-ed25519-key-generator/"
  width="100%" height="520" frameborder="0" scrolling="no" loading="lazy"
  title="ECDSA / Ed25519 密钥生成器 — iotools.cloud"
  sandbox="allow-scripts allow-forms allow-same-origin allow-downloads allow-popups allow-popups-to-escape-sandbox"
  allow="clipboard-write"
  style="width:100%;border:1px solid #e5e7eb;border-radius:12px;overflow:hidden"></iframe>
<script src="https://iotools.cloud/embed.js" async></script>

把它放到您自己的页面上——免费,无需密钥,只需保留一个反向链接。

每次 API/MCP 调用费用5 积分起
需要更多积分?查看定价

也可通过

使用指南

在几秒钟内生成椭圆曲线公钥/私钥对 — Ed25519、NIST 曲线 P-256、P-384 和 P-521 上的 ECDSA、或 secp256k1 — 并导出为 PEM、JWK 或 原始十六进制。每个密钥都是使用加密安全的随机数生成器在您的浏览器中创建的,因此您生成的任何内容都不会离开您的机器。

椭圆曲线密钥是签名和身份验证的现代标准:与等效强度的 RSA 密钥相比,它们要小得多、生成速度更快,并且在 JWT 库、SSH、TLS 和区块链钱包中得到普遍支持。该工具涵盖您实际使用的算法 — 新系统用 EdDSA (Ed25519)、JWT (ES256/ES384/ES512) 和 X.509 用 ECDSA P-256/P-384/P-521、以及 Bitcoin 和 Ethereum 用 secp256k1 (ES256K)。

如何使用

  1. 选择 算法。Ed25519 是最好的全能现代选择。当 JWT 库或标准要求 ES256 时选择 P-256,需要更高安全级别时选择 P-384/P-521,或区块链工作时选择 secp256k1。
  2. 选择 输出格式 — 用于 OpenSSL 和大多数服务器等工具的 PEM、JavaScript/JWT 库的 JWK、或低级工作的原始十六进制。
  3. 点击 生成密钥对。您将获得私钥、公钥和 公钥的 JWK 指纹(稳定的密钥 ID / kid)。
  4. 使用输出框上的按钮复制或下载每个密钥。

我应该选择哪种算法?

除非有特殊原因,否则使用 Ed25519 — 它速度快、密钥短,并且能抵御 ECDSA 的许多实现陷阱。需要广泛兼容性时选择 P-256(它是支持最广泛的 ECDSA 曲线,对应 JWT 的 ES256)。当合规配置文件要求更大的曲线时升级到 P-384 或 P-521。仅在 Bitcoin/Ethereum 风格的签名时选择 secp256k1。

PEM、JWK 和十六进制的区别是什么?

PEM 使用 PKCS#8(私钥)和 SPKI(公钥)将密钥包装在 Base64 中,带有 -----BEGIN … KEY----- 标题 — 这是 OpenSSL、大多数 Web 服务器和 SSH 工具期望的格式。JWK 是 JOSE/JWT 库直接使用的 JSON 对象。原始十六进制就是密钥字节(私有标量/种子和公共点),用于低级加密代码。

JWK 指纹是什么?

它是公钥的 RFC 7638 指纹:密钥规范 JSON 的 SHA-256 哈希,编码为 base64url。它为密钥提供了一个紧凑的、确定性的标识符 — 通常用作 JWK kid。

这些密钥在生产环境中使用是否安全?

是的。密钥材料使用经过审计、广泛使用的椭圆曲线库 @noble/curves 生成,从您平台的安全随机源初始化。输出符合标准,可以顺利通过 OpenSSL 和 Web Crypto。

隐私

一切都在本地进行 — 密钥生成完全在您的浏览器中执行,密钥材料永远不会被发送到服务器或记录。不过,像对待密码一样对待私钥:不要提交到源代码管理或粘贴到您不信任的服务中。PEM/JWK/十六进制输出未加密,因此如果您需要静态保护,请自己加密文件(例如,openssl pkcs8 -topk8 -in key.pem -out key.enc.pem)。

ecdsaed25519eddsakeypemjwkpkcs8secp256k1cryptogenerator

喜欢这些工具?去掉广告吧。

一次性付款即可永久移除您账户中的所有广告。无需订阅,不追踪。