ECC Tool
Elliptic Curve Cryptography, supporting ECDH and EdDSA.
P-256 (secp256r1) - 标准 NIST 曲线,兼容性最好
P-384 (secp384r1) - 高强度 NIST 曲线
P-521 - 最高强度 NIST 曲线
Ed25519 - 高性能签名曲线 (Edwards)
X25519 - 高性能加密/协商曲线 (Montgomery)
secp256k1 - 比特币/以太坊使用的曲线
Curve25519 - 综合高性能曲线
Encrypt (ECIES)
Decrypt (ECIES)
Sign (EdDSA)
Verify (EdDSA)
Key Exchange (ECDH)
Private Key:
Hex
Base64
Public Key:
Hex
Base64
Input
UTF-8
Hex
Base64
Result
Hex
Base64
Result

About ECC: Elliptic Curve Cryptography Basics

ECC (Elliptic Curve Cryptography) is a public-key cryptosystem based on the Elliptic Curve Discrete Logarithm Problem (ECDLP). Compared to RSA, ECC offers equivalent or higher security with much shorter keys. Here's a quick overview of core concepts, popular curves, and practical use cases to help you work with this tool.

#01

What Is ECC?

ECC is a public-key cryptosystem built on elliptic curves of the form y² = x³ + ax + b, whose security relies on the intractability of the Elliptic Curve Discrete Logarithm Problem (ECDLP). At equivalent security strength, ECC keys (e.g., 256-bit) are drastically shorter than RSA keys (~3072-bit).

ECC supports three major operations: ECIES public-key encryption / decryption (for confidential data transfer), ECDSA / EdDSA signing & verification (for authentication and tamper-proofing), and ECDH key agreement (enabling two parties to derive a shared secret without prior key exchange).

This tool performs key generation, encryption, decryption, signing, and verification for P-256/P-384/P-521, secp256k1, Ed25519, and Curve25519/X25519 — all locally in your browser. It is a handy aid when debugging ECC-based APIs or validating ciphertext/signature formats.

#02

Common Curves & Mode Selection

Several mainstream ECC curves are in use, each optimized for different scenarios. The curves supported by this tool include:

  • P-256 / P-384 / P-521: NIST-standardized curves, natively supported by the Web Crypto API — suitable for encryption, signing, and ECDH.
  • secp256k1: the Koblitz curve used by Bitcoin and Ethereum, known for efficient signing and verification.
  • Ed25519: an Edwards curve purpose-built for EdDSA signatures, featuring high speed, simple implementation, and side-channel resistance.
  • Curve25519 / X25519: Montgomery curves purpose-built for ECDH key agreement, and used as the default by TLS 1.3.

Mode selection guide: use ECIES for encrypted data transfer; use EdDSA / ECDSA for authentication; use ECDH for session key negotiation. Hex and Base64 input/output formats are interchangeable to facilitate integration with different systems.

#03

Data Security & Privacy

Please keep in mind: ECC public-key encryption only protects data confidentiality during transfer — it does not replace transport-layer security. Production deployments should pair it with SHA-256/SHA-512 hashing, AES symmetric encryption, and a TLS/HTTPS channel.

All key generation, encryption/decryption, signing, and ECDH negotiation performed by this tool happen locally in your browser. Nothing is uploaded to a server, and nothing is persisted to localStorage.

Additional recommendations:

  • When working with production private keys, operate in a private/incognito window or offline, and clear inputs when done.
  • In production environments, ECC private keys must be stored in encrypted form (e.g., via PKCS#8 + passphrase, or in an HSM).
  • For signing/verification, align on the signature encoding format (DER (ASN.1) or R|S concatenation) to avoid verification failures.
  • For encryption/decryption, ensure both parties use the same curve, the same key encoding format (Hex or Base64), and a consistent input/output format convention.
📖 Want to Learn More?
Read the complete ECC Elliptic Curve Cryptography guide: NIST P-256/P-384/P-521, secp256k1, Ed25519, Curve25519/X25519 curve comparison, ECDH key agreement, EdDSA/ECDSA signatures, ECIES encryption/decryption, 7 real-world use cases, signature encoding (DER vs R|S), and data security best practices. (~12 min read)
Read Complete Guide →