
В библиотеке OpenSSL есть
довольно любопытная функция с многообещающим именем CRYPTO_memcmp(). Комментарии к ней
объясняют, что обычная
memcmp() обладает фатальным недостатком™ – время ее работы зависит не только от размера сравниваемых блоков, но и от их содержимого, а это может помочь атакующему осуществить так называемую
атаку по времени.
Аналогичные функции есть в ряде других проектов — поиск по запросу
constant time memcmp дает несколько тысяч результатов.
Не будем подвергать сомнению необходимость использования функции
CRYPTO_memcmp(), а вместо этого рассмотрим, решает ли она поставленную ей задачу.
Читать дальше →
Comments
Show all comments