Công cụ chữ ký ECDSA
Thuật toán chữ ký số đường cong Elliptic
Tạo cặp khóa ECDSA
Tạo cặp khóa ECDSA ngẫu nhiên mới cho đường cong đã chọn. Khóa riêng phải được giữ bí mật; khóa công khai có thể được chia sẻ.
Suy ra khóa công khai từ khóa riêng
Nhập khóa riêng hiện có để tính toán khóa công khai tương ứng.
Tài liệu
ECDSA (Thuật toán chữ ký số đường cong Elliptic) là một lược đồ chữ ký số được sử dụng rộng rãi dựa trên mật mã đường cong elliptic. Nó cung cấp cùng mức bảo mật như RSA nhưng với kích thước khóa nhỏ hơn nhiều, làm cho nó lý tưởng cho các môi trường có tài nguyên hạn chế như thiết bị di động và mạng blockchain.
Tính năng chính
- Kích thước khóa nhỏ: ECDSA 256-bit cung cấp bảo mật tương đương RSA 3072-bit
- Hoạt động nhanh: Ký và xác minh nhanh hơn đáng kể so với RSA
- Chữ ký gọn nhẹ: Chữ ký ECDSA nhỏ hơn nhiều so với chữ ký RSA
- Nhiều đường cong: Hỗ trợ các đường cong secp256k1, P-256, P-384 và P-521
- Tiêu chuẩn ngành: Được sử dụng trong Bitcoin, Ethereum, TLS và nhiều giao thức khác
Các đường cong được hỗ trợ
- secp256k1: Đường cong được Bitcoin và Ethereum sử dụng. Bảo mật 256-bit, tối ưu hóa cho triển khai hiệu quả.
- P-256 (secp256r1): Đường cong tiêu chuẩn NIST, được sử dụng rộng rãi trong TLS, ứng dụng chính phủ và WebCrypto API.
- P-384 (secp384r1): Đường cong tiêu chuẩn NIST cung cấp mức bảo mật 192-bit, được sử dụng trong các ứng dụng bảo mật cao.
- P-521 (secp521r1): Đường cong tiêu chuẩn NIST cung cấp mức bảo mật 256-bit, đường cong ECDSA bảo mật cao nhất.
Các thuật toán băm
- SHA-256: Lựa chọn tiêu chuẩn cho hầu hết các ứng dụng. Được sử dụng với đường cong P-256 và secp256k1.
- SHA-384: Được khuyến nghị cho đường cong P-384 để phù hợp mức bảo mật.
- SHA-512: Được khuyến nghị cho đường cong P-521. Cung cấp bảo mật 256-bit.
- Keccak-256: Được Ethereum sử dụng để ký giao dịch. Không phải SHA-3, mà là Keccak gốc với đầu ra 256-bit.
Các trường hợp sử dụng phổ biến
- Bitcoin và Blockchain: secp256k1 với SHA-256 băm kép để ký giao dịch.
- Ethereum: secp256k1 với Keccak-256 để ký giao dịch và tin nhắn.
- Chứng chỉ TLS/SSL: Đường cong P-256 cho chữ ký chứng chỉ HTTPS.
- Ký mã nguồn: Ký các bản phát hành phần mềm để đảm bảo tính xác thực và toàn vẹn.
- Xác thực API: Ký các yêu cầu API để ngăn chặn giả mạo và xác minh danh tính.
Các phương pháp bảo mật tốt nhất
- Bảo vệ khóa riêng: Không bao giờ tiết lộ hoặc chia sẻ khóa riêng của bạn. Sử dụng HSM cho các ứng dụng quan trọng.
- Sử dụng số ngẫu nhiên an toàn: ECDSA yêu cầu số ngẫu nhiên an toàn về mật mã. Công cụ này sử dụng Web Crypto API.
- Xác minh khóa công khai: Luôn xác minh khóa công khai thông qua kênh đáng tin cậy trước khi chấp nhận chữ ký.
- Xử lý phía client: Công cụ này chạy hoàn toàn trong trình duyệt của bạn. Khóa của bạn không bao giờ rời khỏi thiết bị.
- Tính khả biến của chữ ký: Chữ ký ECDSA có thể khả biến. Sử dụng chữ ký chuẩn (low-S) khi cần.
ECDSA so với các lược đồ chữ ký khác
| Đặc điểm | ECDSA (P-256) | RSA-2048 | Ed25519 |
|---|---|---|---|
| Kích thước khóa riêng | 32 bytes | 256 bytes | 32 bytes |
| Kích thước khóa công khai | 64 bytes | 256 bytes | 32 bytes |
| Kích thước chữ ký | 64 bytes | 256 bytes | 64 bytes |
| Tốc độ ký | Nhanh | Chậm | Rất nhanh |
| Tốc độ xác minh | Trung bình | Nhanh | Rất nhanh |
| Xác định | RFC 6979 | Có | Có |
Công Cụ Liên Quan
Công Cụ Chữ Ký Ed25519
Tạo cặp khóa Ed25519, ký tin nhắn và xác minh chữ ký bằng Thuật Toán Chữ Ký Số Đường Cong Edwards
Mã Hóa/Giải Mã RSA
Sử dụng mã hóa bất đối xứng RSA để mã hóa khóa công khai, giải mã khóa riêng, ký số và xác minh
Bộ Tạo Hash SHA
Bộ tạo hash SHA trực tuyến hỗ trợ thuật toán SHA-1, SHA-256, SHA-384, SHA-512
Bộ Mã Hóa/Giải Mã JWT
Giải mã, xác minh và tạo JSON Web Token với hỗ trợ nhiều thuật toán ký