цифровую подпись, это вроде как раз то, что надо для надежной и удобной криптографической
аутентификации. Во всей Южной Корее такая аутентификация широко применяется всеми
банками и, приезжая в Москву, я легко мог работать со своими счетами в корейских банках. А вот
в Сеуле со счетом в Сбербанке – нет, нет мобильной связи. Почему же все российские банки так
любят OTP?
Да потому, что не хотят связывать своих клиентов с российской криптографией, заставлять
их «дружить со Стекляшкой». Растерять можно клиентов из-за такой «дружбы».
Пусть, к примеру, вы захотите использовать криптографическую аутентификацию в своем
Интернет-банкинге, если, конечно, ее ваш банк поддерживает. В этом случае будьте добры: 1) Установите на своем компьютере российский криптопровайдер (небесплатно);
2) Приобретите токен для хранения секретного ключа (тоже небесплатно, а по ценам, в 5
раз выше, чем за такой же токен с вас возьмут в корейском банке);
3) Приобретите головную боль за счет процедуры получения сертификата для подписи.
Ну и будьте готовы ко всяким неожиданностям при работе с банком с использованием
криптографической аутентификации, ибо OTP используют очень многие клиенты банка, а
криптоаутентификация – экзотика.
Криптоаутентификация объективно содержит в себе много технических сложностей, связанных с обеспечением клиентов сертификатами, необходимыми для аутентификации, их
обновлением и отзывом, работой банковского сервера с базой данных клиентских сертификатов и
т.п. А в России эти проблемы значительно усугубляются еще и политикой «анти RSA». Ведь все
перечисленные выше сложности являются общеизвестными, во всем мире их пытаются разрешить
и оптимизировать, но при непременном условии: для подписи используем RSA.
Криптографическая аутентификация уже встроена в упоминавшийся в предыдущем
разделе протокол SSL. То, как сервер будет связываться с клиентом, определяет только сам
сервер. Если без криптоаутентификации, то достаточно только сертификата сервера. Если же
выбрана криптографическая аутентификация, то в протоколе обмена сообщениями между
клиентом и сервером предусмотрена отправка некоторого сообщения, подписанного клиентом, и
сертификата клиента, с помощью которого сервер осуществляет проверку подписи, а перед
проверкой подписи проводит проверку сертификата клиента.
В корейской системе Интернет-банкинга для криптоаутентификации используется
специальный плагин: XecureWEB. Как сказано на сайте, посвященном этому плагину, он также
популярен в США и Канаде. А если говорить точнее, то этот плагин предназначен не только для
аутентификации, но и для шифрования трафика, но только не всего, а специальной части WEB-
страницы, которая требует шифрования. И даже SSL-протокол в таком случае не нужен.
Для использования XecureWEB не надо ломать операционную систему, устанавливать
самодельные и небесспорные Kernel Drivers. Корейцы даже умудрились встроить в него свой
национальный алгоритм симметричного шифрования. Но всего этого они смогли достичь при
одном непременном условии: асимметричный алгоритм, используемый при шифровании и
подписи – только RSA.
XecureWEB стал национальной гордостью корейцев. Они применяют его везде: в
Интернет-банкинге, бизнесе, электронном общении с различными службами, типа наших
жилищно-коммунальных контор и так далее. Корейцы создали несколько своих
общенациональных удостоверяющих центров, выдающих сертификаты для XecureWEB. Выданные
этими центрами сертификаты размещаются на специальном LDAP-сервере, к которому может
обратиться любой пользователь.
Я поразился простоте процедуры получения сертификата. Когда вы открыли счет в каком-
нибудь корейском банке, то у вас автоматически появляется возможность получения сертификата
для XecureWEB. Не надо больше никуда ходить с паспортом, как это делается в России, сертификат получается по Интернету в режиме online с сайта вашего банка. Там же, с сайта, в
режиме online, сертификат можно продлить, отозвать или получить заново.
Секретный ключ сертификата корейцы сначала, для удобства пользователей, писали на
жесткий диск компьютера и защищали паролем. Но вскоре убедились, что с точки зрения
безопасности это плохо, стащили один раз у них этот ключ из оперативной памяти компьютера. Я
писал об этом во второй книге «Криптография и Свобода». Стали записывать секретный ключ на
смарт-карты, там же, в процессоре смарт-карты, его и использовать. Между LG и Samsung разгорелась борьба за выпуск смарт-карт для XecureWEB.
Я видел все это вблизи своими глазами, программировал CSP и PKCS#11 для смарт-карт, старался поглубже влезть в XecureWEB. И все время меня мучил один и тот же вопрос: а русские
чем хуже корейцев? Может быть тем, что в России чиновники важнее специалистов?
При использовании цифровой подписи возникает и еще одна проблема: доверие к
сертификату, содержащему открытый ключ для проверки подписи. Проблема проверки
сертификата гораздо более сложная, чем проверка самой подписи с помощью этого сертификата.