Невероятное. Рассказ о работе советского криптографа в Южной Корее - страница 7



Естественно, что никто в Южной Корее не считал криптографию и создание криптографических программ чем-то особенным, требующим каких-то лицензий и сертификатов от KISA. Используй при этом все, что необходимо и удобно, главное – чтобы работало и было востребовано конечным пользователем. Создать как-то иначе Интернет-банкинг, которым пользуется полстраны, просто невозможно. Нужно для создания более безопасного Интернет-банкинга привлечь иностранного криптографа – пожалуйста, никакого разрешения KISA для этого тоже не требовалось.




Олимпийский парк в Сеуле. Скульптура «Указующий перст».

Пьяный алгоритм RSA

Взявшись за написание этой книги, я сам себе дал слово писать ее как можно более простым языком, по возможности избегать сложных математических формул и терминов. Книга должна быть интересной обычному читателю, который не должен напрягаться от чего-то непонятного. Непонятно – значит надо разъяснить как можно более простыми словами и примерами.

Как я упоминал выше, в 2003 году малазиец Гекке Краай пишет про Интеренет-банкинг Южной Кореи: «Это был первый случай взлома и ограбления счета онлайн-банкинга в Южной Корее, лидере по количеству пользователей высокоскоростного Интернета» Сам случай произошел в 2002 году. А когда в Южной Корее запустили систему Интернет-банкинга?

Корейский Интернет-банкинг был тесно связан с криптографией. В нем использовалась криптографическая аутентификация и электронная цифровая подпись. В свою очередь, эти два понятия тесно связаны с асимметричной криптографией и цифровыми сертификатами.

Когда какой-то человек приходит в отделение банка, то его просят представиться: кто вы и что вам здесь надо. Если тот же человек пытается зайти на банковский сервер, то сервер делает фактически то же самое – пытается проверить подлинность и цели обратившегося к нему клиента. А как это сделать? Одним из распространенных методов проверки подлинности клиента является его криптографическая аутентификация, т.е. проверка подлинности с помощью криптографических методов.

Криптографическая аутентификация предполагает проверку электронно-цифровой подписи (ЭЦП) клиента. А нормальная ЭЦП, в свою очередь, предполагает наличие у клиента ключа для подписи, а у сервера – ключа для проверки подписи клиента. Ключ, с помощью которого клиент осуществляет подпись, называется private key, а ключ, с помощью которого сервер осуществляет проверку подписи клиента – public key. По-русски – закрытые и открытые ключи. Закрытый ключ иногда именуют секретным, а открытый – публичным.

Вопросы и ответы.

Есть ли у клиента его открытый ключ?

Есть.

Есть ли у сервера закрытый ключ клиента?

Нет.

Связаны ли между собой закрытые и открытые ключи?

Да, связаны, каждому закрытому ключу соответствует строго определенный открытый ключ.

Можно ли по закрытому ключу определить открытый ключ?

Да.

Можно ли по открытому ключу определить закрытый?

Нет.

Теперь о сертификате. Открытый ключ еще называют публичным, потому что он у всех на виду. А появляться на публике голому открытому ключу просто неприлично. Вот его приодевают и приукрашивают в специальной организации, называемой Центром Сертификации (ЦС) или, по терминологии Microsoft, Certification Authority (CA). Приодетый и приукрашенный открытый ключ, получивший в ЦС персональную ЭЦП, и принято называть сертификатом.

    Как приодевают и приукрашивают в ЦС открытый ключ – особая песня. Различных атрибутов в сертификате может быть великое множество: фамилия, имя, отчество владельца, его должность, место работы, место жительства, электронная почта и т.д. и т.п. Указывается также назначение ключа (key usage или extended key usage): для подписи или шифрования электронной почты, для идентификации пользователя на сервере, для подписи программных кодов, для EFS (Encrypted File System) и прочая, прочая, прочая. В сертификате обязательно присутствуют срок действия ключа и электронная подпись ЦС. Здесь опять же, пробегая галопом по такой необъятной теме, как состав информации, включаемой в сертификат, я руководствовался принципами гуманизма к обычному читателю, стараясь не перегружать далекого от криптографии человека всеми нюансами, связанными с созданием в современных информационных системах персональных сертификатов. Вкратце: это «одетый» открытый ключ, получивший «паспорт» – персональную ЭЦП в ЦС. «Одежд» может быть много, иногда и самых экзотических: корейцы, например, включают в свои сертификаты хеш-функцию от национального ID и некоторого случайного числа – это их персональный атрибут, который называется KR, по-видимому, Korean Random.