УСТРОЙСТВО ДЛЯ БЕЗОПАСНОГО ДОСТУПА К WEB-РЕСУРСАМ (ВАРИАНТЫ)

Группа полезных моделей относится к области устройств для двухфакторной аутентификации с применением одноразового пароля, используемой при осуществлении доступа к защищаемым WEB-ресурсам.
Одноразовые пароли (ОТР - One - Time Password) уже давно получили широкое распространение как надежное и удобное средство для реализации процедур аутентификации, см. например WO 03/017125 A1.
Одноразовый пароль обычно представляет собой сгенерированную последовательность символов, так называемый токенкод, (в целях удобства зачастую просто цифровая последовательность), которая периодически меняется и имеет достаточно короткое время жизни, т.е. по прошествии некоторого временного отрезка, когда комбинация сменится, предыдущая будет уже непригодна для аутентификации. Алгоритм, по которому токенкод генерируется, синхронизирован с сервером таким образом, что для проверки подлинности кода проверяющей стороне не нужна никакая дополнительная информация. Принцип работы такого токенкода основан на вычислении односторонней функции от времени и секретного значения, и в случае компрометации токенкода его становится невозможно использовать через несколько минут после генерации.
Поскольку изначально предполагается, что одноразовые пароли главным образом используются для аутентификации пользователей, и, по возможности, должны быть всегда «под рукой», то для их реализаций выдвигается ряд требований, при соблюдении которых они становятся удобным и надежным средством аутентификации.
- ОТР-токен должен иметь простой и понятный интерфейс, как для пользователя, который будет читать значение токенкода и вводить его при аутентификации, так и для сервера, который будет производить ресинхронизацию токена, когда это понадобится.
- Алгоритмы, используемые для генерации токенкода должны удовлетворять требованиям невозможности получить по токенкоду защищенную информацию, например, инициализирующий вектор. Кроме того, все криптографические операции должны выполняться внутри защищенной среды, предоставляя наружу только уже готовый к использованию результат. Инициализация токена и его ресинхронизация в свою очередь должны использовать безопасные соединения для передачи инициализирующей информации, зная которую взломщик может имитировать работу токена.
- Требование мобильности токена подразумевает возможность его реализации на базе различных форм-факторов (брелки, телефоны, SIM-карты), включая «виртуальный» - токен через SMS.
Недостатком существующих решений является то, что они либо неоправданно дороги и не выгодны для массового использования (хардверные токены), либо обладают невысоким уровнем безопасности (программные реализации, в частности, мидлеты для мобильных телефонов).
Задача, на решение которой направлены предлагаемые полезные модели, заключается в обеспечении возможности мобильного и безопасного доступа к защищаемым WEB-ресурсам, не требуя наличия у пользователя никаких дополнительных считывающих устройств или хардверных токенов, только мобильный телефон (в одном из вариантов исполнения даже в автономном режиме) который большинство людей всегда имеют при себе. При этом важной особенностью предлагаемых решений является возможность вычисления хэш-функции на основе ГОСТ 34.11-94 для генерации одноразовых паролей, что позволяет сертифицировать ее для использования в составе государственных порталов и/или сервисов федеральной значимости.
Описываемые решения поясняются схемами, на которых:
Фиг.1 - Схема аутентификации с доставкой токенкода по SMS;
Фиг.2 - Схема аутентификации с использованием SIM - апплета.
Первый вариант предложенного решения характеризуется тем, что устройство для безопасного доступа к WEB-ресурсам содержит подключенный к сотовой сети, содержащей подключенный к сети Интернет SMS-центр, мобильный телефон пользователя и подключенные к сети Интернет терминал пользователя, сервер с защищенной информацией и сервер аутентификации, при этом терминал пользователя соединен с сервером с защищенной информацией, а сервер аутентификации имеет модуль генерации одноразового токенкода путем вычисления хэш-функции, соединен с сервером с защищенной информацией, с SMS-центром для передачи сгенерированного токенкода на мобильный телефон пользователя и не соединен непосредственно с терминалом пользователя.
Работа представленного устройства осуществляется следующим образом. При соединении терминала пользователя с сервером с защищенной информацией, последний посылает на сервер аутентификации запрос аутентификации пользователя. Сервер аутентификации генерирует токенкод на основании уникального для каждого пользователя начального вектора (Seed) и текущего времени и пересылает его через SMS-центр на мобильный телефон пользователя. Доставка токенкода пользователю осуществляется в течение 6-8 секунд. Сгенерированный таким образом токенкод имеет ограниченный срок жизни и должен быть использован пользователем в течение определенного отрезка времени. Полученный токенкод пользователь посредством своего терминала пересылает на сервер с защищенной информацией и, после верификации переданного токенкода сервером аутентификации получает доступ к защищаемым ресурсам.
Второй вариан предложенного решения предусматривает возможность аутентификации без подключения мобильного телефона пользователя к сотовой сети и характеризуется тем, что устройство для безопасного доступа к WEB-ресурсам содержит мобильный телефон пользователя с SIM-картой с установленным апплетом для генерации токенкода путем вычисления хэш-функции, и подключенные к сети Интернет терминал пользователя, сервер с защищенной информацией и сервер аутентификации, при этом терминал пользователя соединен с сервером с защищенной информацией, а сервер с защищенной информацией помимо этого соединен с сервером аутентификации, который имеет счетчик генераций для верификации сгенерированного в мобильном телефоне токенкода.
При работе данного устройства, апплет, установленный в защищенной области SIM-карты, генерирует токенкод на основании уникального начального вектора (Seed) и текущего значения счетчика (Counter). Seed генерируется на стороне сервера и передается в апплет в момент его активации в зашифрованном виде при помощи специальной APDU-команды. Counter - счетчик генераций, значение которого увеличивается на стороне клиента (в SIM-апплете) после каждой генерации токенкода и на стороне сервера аутентификации после каждой успешной аутентификации пользователя. После того, как токенкод сгенерирован, он передается от пользовательского терминала к серверу с защищенной информацией и, после верификации токенкода сервером аутентификации, пользователь получает доступ к защищаемым ресурсам.
Процесс проверки токенкода на стороне сервера осуществляется следующим образом. Сервер генерирует свой токенкод на основании Seed пользователя, который ему известен, и своего значения счетчика. Если значения сгенерированного и полученного токенкодов совпадают, то аутентификация считается успешной. При данной схеме возможна рассинхронизация значений счетчиков на сервере и на апплете. Пользователь может сгенерировать токенкод и не воспользоваться им по какой-либо причине. В таком случае при последующей генерации значение счетчика у пользователя может оказаться больше, чем на сервере. Для корректной обработки такой ситуации на сервере вводится понятие «окна» (сервер генерирует несколько токенкодов вперед, проверяя, «не убежал ли» счетчик пользователя), позволяющее ресинхронизировть счетчики.
Генерация токенкода на SIM-апплете занимает около 20 секунд в силу ограниченности ресурсов SIM-карты, но токенкод допускает отложенное использование, т.е. не имеет временных рамок.
Предложенные варианты устройства являются удобным и надежным средством в решенях, обеспечивающих защиту размещенной на защищаемом WEB-портале информации.