RSS Блог "След бит"
Подписаться
Передача постквантовой криптографии на Python
Постквантовая криптография теперь легко доступна в экосистеме Python через библиотеку pyca/cryptography. Это обновление реализует поддержку ML-KEM, примитива установления ключа, стандартизированного NIST, и ML-DSA, примитива цифровой подписи, стандартизированного NIST. Правительство США ускоряет свой переход на постквантовую криптографию к 31 декабря 2030 года для установления ключей и к 31 декабря 2031 года для цифровых подписей. Успех этой миграции зависит от криптографических библиотек, таких как pyca/cryptography, которая используется многочисленными популярными проектами на Python.Новые постквантовые алгоритмы, хотя и обеспечивают квантовую устойчивость, имеют свои компромиссы. Открытые ключи, подписи и шифротексты значительно больше, чем их классические аналоги, а операции выполняются медленнее. Например, подписи ML-DSA составляют 3309 байт по сравнению с 64 байтами Ed25519. Аналогично, шифротексты ML-KEM составляют 1088 байт против 32-байтного общего секрета X25519. Протоколы, использующие поля данных фиксированного размера, потребуют корректировок.Библиотека pyca/cryptography теперь предоставляет API Python для использования ML-DSA и ML-KEM. ML-DSA — это схема подписи на основе решеток, а ML-KEM — это механизм инкапсуляции ключей для установления общих секретов, принципиально отличающийся от Диффи-Хеллмана. Ведется работа над SLH-DSA, стандартом подписи на основе хешей NIST, который предлагает более консервативный подход. Конечная цель — интеграция этих постквантовых примитивов в реальные протоколы и приложения. Эта фундаментальная работа была профинансирована Агентством суверенных технологий.