Механизм предсказания переходов используется процессорами для предварительной выборки команд из памяти, что ускоряет их дальнейшее исполнение. В результате, если выборка команд для программы идет по одному и тому же пути, то такие вычисления процессор выполняет очень быстро. Если же путь исполнения меняется, то происходит замедление в работе программы, когда процессор ждет загрузки новых команд из памяти. Замедление при переключении различных путей исполнения алгоритма шифрования часто позволяет определить некоторую важную информацию о ключе шифрования. В частности, знание количества единичных битов ключа существенно ускоряет взлом ключа шифрования. Исследователи показали, что с помощью разработанной ими методики простого анализа путей исполнения программы можно взломать 512-битный алгоритм шифрования за несколько тысяч секунд. При этом шпионская программа, которая предназначена для сбора исходных данных о работе алгоритма шифрования, может быть скрытно установлена из Internet. Впрочем, если злоумышленник может запускать программы на компьютере жертвы, то он, скорее всего, может найти ключ шифрования прямо в оперативной памяти - для этого не нужно прибегать к столь изощренным методикам.

Поделитесь материалом с коллегами и друзьями