Одноразовый пароль - это ключевое слово, действительное только для одного процесса аутентификации в течение ограниченного промежутка времени. Такой пароль полностью решает проблему возможного перехвата информации или банального подглядывания. Даже если злоумышленник сможет заполучить пароль "жертвы", шансы воспользоваться им для получения доступа равны нулю.
В современных технологиях аутентификации с помощью OTP применяется динамическая генерация ключевых слов с помощью сильных криптографических алгоритмов. Иначе говоря, аутентификационные данные - это результат шифрования какого-либо начального значения с помощью секретного ключа пользователя. Данная информация есть и у клиента, и у сервера. Она не передается по сети и недоступна для перехвата. В качестве начального значения используется известная обеим сторонам процесса аутентификации информация, а ключ шифрования создается для каждого пользователя при его инициализации в системе (рис. 1).
Рис. 1. Пример генерации одноразовых паролей на стороне пользователя. |
Стоит отметить, что на данном этапе развития технологий OTP существуют системы, использующие как симметричную, так и асимметричную криптографию. В первом случае секретным ключом должны обладать обе стороны. Во втором секретный ключ нужен только пользователю, а у сервера аутентификации он открытый.