Анализ энергопотребления: SPA и DPA
Снимайте трассы энергопотребления и выполняйте простой и дифференциальный анализ энергопотребления
«Анализ энергопотребления: SPA и DPA» — бесплатный урок Cryptology Academy на CoddyKit. Это урок 2 из 4. Ты можешь прочитать весь урок бесплатно ниже — а потом практиковать его прямо в браузере с встроенным редактором кода и ИИ-репетитором 24/7. Это часть пути обучения Cryptology Academy, и твой прогресс синхронизируется между веб-версией и приложением CoddyKit. Курс Cryptology Academy содержит 4 уроков всего.
Что такое анализ энергопотребления
Анализ энергопотребления измеряет мгновенную электрическую мощность, потребляемую устройством во время криптографических операций. Энергопотребление зависит от обрабатываемых данных и раскрывает биты секретного ключа.
Простой анализ энергопотребления (SPA)
При SPA визуально исследуется одна трасса энергопотребления. Возведение в квадрат и умножение раскрывают показатель степени: шаг умножения имеет другой профиль энергопотребления, чем один только шаг возведения в квадрат.
Дифференциальный анализ энергопотребления (DPA)
DPA использует статистический анализ множества трасс. Атакующий фиксирует гипотезу об одном бите ключа, разделяет трассы по предсказанному промежуточному значению и ищет пик корреляции.
Модель веса Хэмминга
Ключевое предположение: энергопотребление пропорционально числу единичных битов (весу Хэмминга) обрабатываемого значения. Для логики CMOS на низких частотах это хорошо выполняется.
Корреляционный анализ энергопотребления (CPA)
CPA использует корреляцию Пирсона между предсказанным весом Хэмминга промежуточного значения и измеренным энергопотреблением в каждом отсчёте времени. Правильная гипотеза о ключе даёт наибольшую корреляцию.
Практическая запись трасс энергопотребления
Исследователи используют последовательный резистор для измерения тока в целевом устройстве и осциллограф или плату ChipWhisperer, чтобы оцифровать трассу со скоростью 100 MS/s или выше.
DPA на AES: восстановление ключа
Атакуйте первый раунд AES: для каждого из 256 кандидатов на байт ключа предскажите вес Хэмминга результата SubBytes и сопоставьте его с трассами. Правильный байт выделяется при корреляции около 0,9 и выше.
DPA высокого порядка
Реализации с маскированием разделяют каждое промежуточное значение на случайные доли. DPA второго порядка объединяет две временные точки (долю и маску) с помощью функции-комбинации, основанной на произведении или абсолютной разности.
DPA для возведения RSA в квадрат и умножения
Биты показателя степени закрытого ключа RSA восстанавливаются путём различения шаблонов энергопотребления только для возведения в квадрат и для возведения в квадрат с последующим умножением на множестве трасс с помощью атаки с выбранным сообщением.
Инструменты и платформы
Платформа с открытым исходным кодом ChipWhisperer предоставляет аппаратное обеспечение и программное обеспечение на Python для захвата данных, выравнивания трасс и CPA. Она изначально поддерживает цели AES, RSA и ECC.
Проверка знаний
В корреляционном анализе энергопотребления чем правильная гипотеза о ключе отличается от неправильных?
Повторение урока
SPA визуально анализирует одну трассу; DPA использует статистику множества трасс. CPA использует корреляцию Пирсона с моделью веса Хэмминга. Контрмеры включают маскирование и рандомизированные проективные координаты для ECC.
Часто задаваемые вопросы
Урок «Анализ энергопотребления: SPA и DPA» бесплатный?
Да — полный текст урока «Анализ энергопотребления: SPA и DPA» бесплатно доступен здесь в веб-версии. Чтобы практиковать его интерактивно (встроенный редактор кода и ИИ-репетитор 24/7) и разблокировать остальной курс Cryptology Academy, подпишись на CoddyKit PRO. Курс Cryptology Academy содержит 4 уроков всего.
Чему я научусь в уроке «Анализ энергопотребления: SPA и DPA»?
Снимайте трассы энергопотребления и выполняйте простой и дифференциальный анализ энергопотребления Ты практикуешь Cryptology Academy с помощью реального кода, который запускаешь прямо в браузере, и ИИ-репетитор 24/7 отвечает на твои вопросы во время урока.
Нужен ли мне опыт, чтобы начать Cryptology Academy?
Предыдущий опыт не требуется. Cryptology Academy на CoddyKit структурирован для всех уровней — от новичков до продвинутых, поэтому ты можешь начать отсюда или с самого начала и учиться в своем темпе. Это урок 2 из 4.
Сколько времени занимает урок «Анализ энергопотребления: SPA и DPA»?
Большинство уроков CoddyKit занимают около 5–10 минут. Каждый из них компактный и интерактивный, поэтому ты постоянно делаешь прогресс и продолжаешь с того же места в веб-версии и приложении.
Можно ли писать и запускать код в этом уроке Cryptology Academy?
Да. Каждый урок Cryptology Academy включает встроенный редактор кода, поэтому ты пишешь и запускаешь реальный код прямо в браузере и получаешь моментальную обратную связь от AI — локальная установка не требуется.
Все уроки этого курса
- Атаки по времени: извлечение ключей по времени выполнения
- Анализ энергопотребления: SPA и DPA
- Электромагнитные и акустические побочные каналы
- Меры защиты: маскирование, ослепление и код с постоянным временем выполнения