ScholarGate
Ассистент

Криптография на эллиптических кривых

Криптография на эллиптических кривых (ECC) реализует схемы с открытым ключом на основе группы точек эллиптической кривой, достигая той же безопасности, что и RSA или Диффи-Хеллман на конечных полях, но с гораздо меньшими ключами.

Найти тему в PaperMindСкороFind papers & topics
Tools & resources
Скачать слайды
Learn & explore
ВидеоСкоро

Definition

Криптография на эллиптических кривых — это криптография с открытым ключом, чья базовая группа представляет собой множество точек на эллиптической кривой над конечным полем, а безопасность основана на сложности проблемы дискретного логарифмирования на эллиптических кривых.

Scope

Эта тема охватывает групповой закон эллиптических кривых над конечными полями, проблему дискретного логарифмирования на эллиптических кривых и построенные на них схемы: Диффи-Хеллман на эллиптических кривых (ECDH), схемы подписи ECDSA и EdDSA, а также современные кривые, такие как Curve25519. В ней рассматривается, почему дискретные логарифмы на эллиптических кривых сложнее, чем на конечных полях (отсутствие субэкспоненциального индексного исчисления), и вопросы реализации, такие как повторное использование одноразового кода (nonce) в ECDSA. Она исключает RSA и схемы дискретного логарифмирования на конечных полях, рассматриваемые в смежных темах.

Core questions

  • Как геометрическое сложение точек на эллиптической кривой образует криптографическую группу?
  • Почему дискретный логарифм на эллиптических кривых сложнее, чем его аналог на конечных полях, что позволяет использовать меньшие ключи?
  • Как Диффи-Хеллман и цифровые подписи реализуются на эллиптических кривых?
  • Что делает современные кривые, такие как Curve25519, более безопасными для реализации, чем старые кривые NIST?
  • Почему уникальность одноразового кода для каждой подписи критически важна в ECDSA?

Key concepts

  • групповой закон эллиптических кривых
  • скалярное умножение
  • проблема дискретного логарифмирования на эллиптических кривых
  • ECDH
  • ECDSA
  • EdDSA и Ed25519
  • Curve25519
  • уязвимость повторного использования одноразового кода
  • размер ключа по сравнению с RSA

Key theories

Проблема дискретного логарифмирования на эллиптических кривых
Предполагается, что для заданных точек P и Q = kP на кривой восстановление скаляра k требует полностью экспоненциальных усилий для хорошо выбранных кривых, поскольку атаки с использованием индексного исчисления, ослабляющие дискретные логарифмы на конечных полях, здесь неприменимы.
Меньшие ключи для равной безопасности
Поскольку лучшие атаки на дискретные логарифмы на эллиптических кривых являются общими алгоритмами квадратного корня, 256-битная эллиптическая кривая обеспечивает примерно 128-битную безопасность — сравнимую с 3072-битным RSA — что приводит к более быстрым операциям и меньшим ключам и подписям.

Mechanisms

Точки на эллиптической кривой над конечным полем образуют абелеву группу согласно геометрическому закону сложения; многократное сложение базовой точки P с самой собой k раз (скалярное умножение, kP) является эффективным, но восстановление k из kP представляет собой сложную задачу. ECDH реализует Диффи-Хеллмана путем обмена скалярными произведениями базовой точки; ECDSA и EdDSA генерируют подписи из скалярного значения для каждого сообщения (одноразового кода — nonce), повторное использование или предсказуемость которого приводит к утечке закрытого ключа, как показали несколько реальных взломов.

Clinical relevance

ECC является выбором по умолчанию для новых систем с открытым ключом: ECDHE обеспечивает прямую секретность при обмене ключами в TLS 1.3, Ed25519 подписывает SSH-ключи, обновления программного обеспечения и сертификаты, а Curve25519 обеспечивает безопасность Signal, WireGuard и современных мессенджеров. Ее малые ключи и быстрые операции делают ее хорошо подходящей для мобильных устройств, смарт-карт и ограниченного оборудования IoT.

Evidence & guidelines

ECDSA стандартизирован в FIPS 186, ECDH в NIST SP 800-56A, а EdDSA/Ed25519 в RFC 8032; Curve25519/X25519 в RFC 7748. Современная практика отдает предпочтение кривым Эдвардса и X25519 за их устойчивость к ошибкам реализации. Сбой ECDSA при повторном использовании одноразовых кодов (в частности, извлечение ключа Sony PlayStation 3 в 2010 году) является поучительным стандартным примером.

History

Нил Коблиц и Виктор Миллер независимо предложили использовать эллиптические кривые для криптографии в 1985-1987 годах. Внедрение изначально шло медленно из-за патентных и доверительных проблем, а также сложности кривых NIST, но ECC стала доминирующей в 2010-х годах, поскольку эффективность размера ключа стала более важной, а Curve25519 (2006) и Ed25519 Бернштейна предложили быстрые, устойчивые к ошибкам использования конструкции, широко используемые в настоящее время.

Key figures

  • Neal Koblitz
  • Victor Miller
  • Daniel J. Bernstein
  • Alfred Menezes
  • Scott Vanstone

Related topics

Seminal works

  • koblitz1987
  • hankerson2004
  • katz2020

Frequently asked questions

Почему 256-битный ключ эллиптической кривой соответствует 3072-битному ключу RSA?
Лучшие известные атаки на дискретный логарифм на эллиптических кривых являются общими и занимают время, примерно равное квадратному корню из размера группы, тогда как факторизация и дискретные логарифмы на конечных полях имеют более быстрые субэкспоненциальные алгоритмы. Поэтому эллиптическим кривым требуется гораздо меньше бит для того же уровня безопасности.
Надежны ли эллиптические кривые NIST?
Стандартные P-кривые NIST широко используются и не считаются взломанными, но их необъяснимый выбор констант и сложность реализации привели многих к предпочтению Curve25519 и Ed25519, которые имеют прозрачные обоснования дизайна и легче безопасно реализуются за постоянное время.

Methods for this concept

Related concepts