#01
什么是 ECC?
ECC 是基于 y² = x³ + ax + b 形式椭圆曲线的公钥密码体制,其安全性依赖于 椭圆曲线离散对数问题(ECDLP)的难解性。在同等安全强度下,ECC 的密钥长度(如 256 位)远小于 RSA(约 3072 位)。
ECC 支持三大类核心操作:ECIES 公钥加密 / 私钥解密(用于数据保密传输)、ECDSA / EdDSA 签名与验签(用于身份认证与防篡改)、以及 ECDH 密钥协商(双方无需预先交换密钥即可得出共享密钥)。
本工具可在浏览器本地一次性完成 P-256/P-384/P-521、secp256k1、Ed25519、Curve25519/X25519 的密钥生成、加解密、签名与验签,是调试 ECC 接口、验证密文/签名格式的高效辅助手段。
#02
常见曲线与模式选择
ECC 世界中存在多条主流曲线,不同曲线服务于不同的场景,请根据实际需求匹配。本工具支持的主要曲线包括:
- P-256 / P-384 / P-521:NIST 标准化曲线,Web Crypto API 原生支持,适合加解密、签名与 ECDH。
- secp256k1:比特币 / 以太坊使用的 Koblitz 曲线,以高效签名与验签著称。
- Ed25519:Edwards 曲线,专用于 EdDSA 签名,速度快、实现简单、抗侧信道攻击。
- Curve25519 / X25519:Montgomery 曲线,专用于 ECDH 密钥协商,TLS 1.3 默认使用。
模式选择建议:若需加密传输选 ECIES;需身份认证选 EdDSA / ECDSA;双方协商会话密钥选 ECDH。输入/输出格式 Hex 与 Base64 可自由切换,便于与不同系统对接。
#03
数据安全与隐私说明
请牢记:ECC 的公钥加密仅保障数据在传输阶段的保密性,不替代传输层安全。实际部署中应配合 SHA-256/SHA-512 摘要、AES 对称加密,并在 TLS/HTTPS 通道下使用。
本工具的密钥生成、加解密、签名与 ECDH 协商过程全部发生在您的浏览器本地,不会上传至服务器,也不会写入 localStorage。
几条额外建议:
- 使用 生产私钥 时请在隐私窗口或离线环境操作,并及时清空输入。
- 生产环境的 ECC 私钥必须以加密方式存储(如通过 PKCS#8 + 口令、或 HSM 密钥管理硬件)。
- 签名/验签操作请约定签名编码格式(DER (ASN.1) 或 R|S 拼接),避免不一致导致验签失败。
- 加密/解密请确保双方使用同一条曲线、同一种密钥编码格式(Hex 或 Base64),以及一致的输入/输出格式约定。