Исследователь обнаружил, что в некоторых процессорах AMD Zen 5 генератор случайных чисел RDSEED выдаёт 0 в 10% случаев

Разработчик Грегори Прайс (Gregory Price) сообщил в списке рассылки разработчиков ядра Linux, что обнаружил нестандартную проблему с работой инструкции RDSEED в процессорах AMD на базе микроархитектуры Zen 5. В проведённых тестах инструкция RDSEED, предоставляющая доступ к аппаратному генератору энтропии, в 10% случаев возвращала значение 0 с успешным флагом завершения операции (CF=1).

Прайс пояснил, что значение 0 также возвращается в случае невозможности вернуть корректное случайное число и подобное состояние выделяется иным значением флага завершения операции (CF=0). Предполагается, что в некоторых процессорах AMD имеется ошибка, приводящая к неверному определению состояния операции.

В ядре Linux инструкция RDSEED используется как один из элементов для формирования энтропии в программном генераторе псевдослучайных чисел. Источников энтропии несколько, поэтому проблема в RDSEED не влияет на общее качество выдаваемых ядром случайных чисел. Для ядра Linux уже предложен патч, отключающий применение инструкции RDSEED на системах с некоторыми процессорами AMD на базе микроархитектуры Zen 5.

По информации OpenNET, изначально проблема была выявлена в CPU AMD EPYC Turin, но позднее повторена на другой модели CPU AMD с той же микроархитектурой. Поэтому было предложено вместо выборочной блокировки прекратить использование RDSEED на всех процессорах семейства AMD Zen 5. Примечательно, что тестирование корректности работы RDSEED на разных процессорах проводилось в ходе разбора другой проблемы с RDSEED, возникшей в CPU Zen2 Cyan Skillfish и приводящей в некоторых ситуациях к возвращению только значения 0xffffffff. До этого в процессорах AMD возникали проблемы с нарушением работы инструкции RDRAND после возвращения из спящего режима.

Источник: habr.com

0 0 голоса
Рейтинг новости
1
0
Подписаться
Уведомить о
0 комментариев
Межтекстовые Отзывы
Посмотреть все комментарии