CoderTools

Инструмент подписи ECDSA

Алгоритм цифровой подписи на эллиптических кривых

🔒 100% Локальная обработкаВведенные вами данные обрабатываются полностью в браузере и не отправляются на сервер.

Генерация ключевой пары ECDSA

Генерация новой случайной ключевой пары ECDSA для выбранной кривой. Закрытый ключ должен храниться в секрете; открытый ключ можно передавать.

Вывести открытый ключ из закрытого

Введите существующий закрытый ключ для вычисления соответствующего открытого ключа.

Документация

ECDSA (Алгоритм цифровой подписи на эллиптических кривых) — широко используемая схема цифровой подписи, основанная на криптографии эллиптических кривых. Обеспечивает тот же уровень безопасности, что и RSA, но с гораздо меньшими размерами ключей, что делает его идеальным для сред с ограниченными ресурсами, таких как мобильные устройства и блокчейн-сети.

Ключевые особенности

  • Малый размер ключа: 256-битный ECDSA обеспечивает безопасность сравнимую с 3072-битным RSA
  • Быстрые операции: Подпись и проверка значительно быстрее чем RSA
  • Компактные подписи: Подписи ECDSA намного меньше подписей RSA
  • Множество кривых: Поддержка кривых secp256k1, P-256, P-384 и P-521
  • Отраслевой стандарт: Используется в Bitcoin, Ethereum, TLS и многих других протоколах

Поддерживаемые кривые

  • secp256k1: Кривая, используемая Bitcoin и Ethereum. 256-битная безопасность, оптимизирована для эффективной реализации.
  • P-256 (secp256r1): Стандартная кривая NIST, широко используется в TLS, государственных приложениях и WebCrypto API.
  • P-384 (secp384r1): Стандартная кривая NIST обеспечивающая 192-битный уровень безопасности, используется в приложениях высокой безопасности.
  • P-521 (secp521r1): Стандартная кривая NIST обеспечивающая 256-битный уровень безопасности, кривая ECDSA с наивысшей безопасностью.

Алгоритмы хеширования

  • SHA-256: Стандартный выбор для большинства приложений. Используется с кривыми P-256 и secp256k1.
  • SHA-384: Рекомендуется для кривой P-384 для соответствия уровню безопасности.
  • SHA-512: Рекомендуется для кривой P-521. Обеспечивает 256-битную безопасность.
  • Keccak-256: Используется Ethereum для подписи транзакций. Не SHA-3, а оригинальный Keccak с 256-битным выводом.

Типичные случаи использования

  • Bitcoin и блокчейн: secp256k1 с двойным хешем SHA-256 для подписи транзакций.
  • Ethereum: secp256k1 с Keccak-256 для подписи транзакций и сообщений.
  • Сертификаты TLS/SSL: Кривая P-256 для подписей сертификатов HTTPS.
  • Подпись кода: Подписание релизов программного обеспечения для обеспечения подлинности и целостности.
  • Аутентификация API: Подпись API-запросов для предотвращения подделки и проверки личности.

Лучшие практики безопасности

  • Защита закрытых ключей: Никогда не раскрывайте и не передавайте свой закрытый ключ. Используйте HSM для критических приложений.
  • Использование безопасных случайных чисел: ECDSA требует криптографически безопасных случайных чисел. Этот инструмент использует Web Crypto API.
  • Проверка открытых ключей: Всегда проверяйте открытые ключи через доверенный канал перед принятием подписей.
  • Клиентская обработка: Этот инструмент полностью работает в вашем браузере. Ваши ключи никогда не покидают ваше устройство.
  • Изменчивость подписи: Подписи ECDSA могут быть изменяемыми. Используйте канонические (low-S) подписи при необходимости.

ECDSA против других схем подписи

Характеристика ECDSA (P-256) RSA-2048 Ed25519
Размер закр. ключа 32 байта 256 байт 32 байта
Размер откр. ключа 64 байта 256 байт 32 байта
Размер подписи 64 байта 256 байт 64 байта
Скорость подписи Быстро Медленно Очень быстро
Скорость проверки Средне Быстро Очень быстро
Детерминистическая RFC 6979 Да Да

Связанные инструменты

Быстрое меню

Нет недавних инструментов