Книги, научные публикации Pages:     | 1 | 2 | 3 |

Московская финансово-промышленная академия Электронные расчёты в коммерческой деятельности Под ред. профессора В.В. Дика Москва 2004 Гамов И.А., Дик В.В., Касаткина С., Михайлов А.С., ...

-- [ Страница 2 ] --

Сразу следует отметить, что хранение ЦН на смарт-карте вовсе не исключает возможность их использования в системах, основанных на обработке данных с использованием персональных компьютеров. В настоящее время существуют системы, которые позволяют с помощью такого устройства как кард-ридер, подключаемого к персональному компьютеру, считывать информацию со смарт-карты и передавать ее по компьютерным сетям. Не все системы расчетов цифровыми наличными полностью повторяют технологию расчетов бумажными наличными, т.е. оперируют отдельными цифровыми банкнотами заранее зафиксированного номинала. В настоящее время большинство систем расчетов ЦН, как правило, не производят предварительную (т.е. до начала процедуры выполнения оплаты по конкретной сделке) эмиссию цифровых денежных знаков. Организатор платежной системы (в процессинговой подсистеме либо на смарт-картах) хранит данные о том, в пределах какой суммы может расплачиваться каждый пользователь системы. Причем, под пользователем понимается отдельный идентификатор, а конкретному плательщику может принадлежать любое количество таких идентификаторов. Плательщик в момент проведения платежа генерирует цифровую наличность требуемого ему номинала. Таким образом, решается вопрос размена банкнот. Это принципиальное отличие подобных систем от расчетов бумажными наличными: плательщику нет необходимости заранее подыскивать купюру или набор купюр на сумму оплаты, а получатель денежных средств избавляется от необходимости иметь запас купюр на случай выдачи сдачи. Следует иметь в виду, что в рассматриваемых системах расчетов участники получают в свое распоряжение хоть и лцифровые, но наличные, которые, как и обычные бумажные купюры, можно потерять. Например, если компьютерный накопитель "сгорит" или его украдут, то владелец лишится всех денег, которые он перевел в свой компьютер и не успел потратить. Еще проще лишиться смарт-карты. С другой стороны, эмитент цифровых наличных не может никоим образом воспрепятствовать владельцу ЦН тратить средства, которые тот успел перевести на смарт-карту или иной носитель, иначе, как прекратив все платежи в системе. Последнее свойство делает расчеты наличными очень привлекательной формой, поскольку банковский счет можно заблокировать, например, по решению суда. Общая схема расчетов цифровыми наличными следующая. Чтобы иметь возможность платить или принимать к оплате цифровые наличные, необходимо, прежде всего, зарегистрироваться в системе и получить специальное оборудование (для работы со смарт-картами) и/или специальное программное обеспечение (для работы в системах, использующих компьютерные сети типа Интернет). Расчеты ЦН могут проводить только зарегистрированные участники конкретной платежной системы. Далее необходимо получить цифровые наличные, что осуществ ляется путем конвертации реальных денежных средств в цифровые. Перечень способов конвертации различен в отдельных системах, но, как правило, везде предусмотрена возможность банковского перевода на расчетный счет организатора системы с указанием идентификатора клиента системы с последующим получением цифровых наличных на смарт-карту или персональный компьютер. Здесь просматривается аналогия с бумажными наличными: теоретически мы не можем расплачиваться отечественными денежными знаками, находясь за пределами своей страны. Необходимо предварительно конвертировать (из наличной или безналичной формы) одну валюту в другую, т.е. некоторым образом стать временным участником иностранной системы расчетов наличными. После того, как покупатель и продавец договорились о способе оплаты, происходит перемещение ЦН с носителя (смарт-карты или компьютера) плательщика на подобный носитель ЦН получателя. Способ перемещения цифровых наличных зависит от конкретной системы, так же как и система безопасности передаваемых данных. Процедура расчетов цифровыми наличными может повторяться много раз. Причем получатель цифровых наличных в какой-то момент может выступить в роли плательщика (и наоборот - плательщик в другой ситуации может оказаться получателем цифровых наличных). Когда кто-то из участников системы решил прекратить расчеты в цифровом виде, либо у него возникла необходимость перевести часть цифровых наличных в обычные денежные средства, происходит конвертация цифровых наличных. Эта процедура по смыслу является обратной получению цифровых наличных при подключении к системе. Здесь также возможны различные варианты в зависимости от конкретной системы, но обычно цифровые наличные списываются со смарт-карты или компьютера, а эквивалентная им сумма в реальной валюте зачисляется на указанный участником системы банковский счет. С этого банковского счета уже можно получить бумажные наличные либо проводить безналичные расчеты по традиционным схемам (например, с помощью платежных поручений). Исторически первой формой хранения и обращения ЦН были смарт-карты, такие системы стали результатом развития технологий карточных расчетов, в основу которых были заложены принципы наличного денежного обращения. К этим принципам относятся:

- Мгновенность выполнения платежа (единство места и времени), т.е. платежные средства изымаются у плательщика и поставляются продавцу непосредственно в момент совершения оплаты. Для сравнения, в случае банковского перевода, даже с применением технологий интернетбанкинга, денежные средства будут зачислены на счет продавца не раньше, чем на следующий рабочий день после получения банком платежного поручения от плательщика. В карточных расчетах, основанных на чековой технологии, банк-эквайрер зачисляет денежные средства на Merchant account торгового предприятия после получения от последнего подтверждающих сделки чеков или электронных журналов операций. - Анонимность плательщика. Продавец (получатель денежных средств) не обязательно должен проводить аутентификацию плательщика, поскольку мгновенность платежа избавляет его от риска последующей неоплаты. Но тут же появляется другой риск - оплата поддельными купюрами (бумажными или цифровыми). Последний решается как минимум использованием многоступенчатой защиты от подделки бумажных купюр и применением средств безопасности хранения и передачи данных (шифрование, ЭЦП) при расчетах цифровыми наличными. - Возможность совершения микроплатежей. Себестоимость проведения расчета наличными, как правило, ниже безналичных расчетов, поскольку снижается кредитный риск банков-посредников и технические расходы на проведение транзакции (по сравнению с карточными расчетами в классическом виде). Технические характеристики смарт-карт, используемых в системах расчетов цифровыми наличными, во многом аналогичны смарткартам, применяемым в безналичных (карточных) расчетах. Смарткарты, хранящие в своей памяти ЦН, получили название лэлектронных кошельков. Как правило, деньги на смарт-карту записываются с помощью специального терминала (банкомата), принадлежащего организатору системы. Клиент системы открывает расчетный счет в банке, обслуживающем систему, а затем с помощью специального банковского терминала (разновидность банкомата) переводит денежные средства со счета на смарт-карту. Эту же процедуру в некоторых системах можно выполнить и с помощью специальных телефонов, снабженных картридерами. Важно отметить, что с помощью банкомата требуемая сумма списывается с банковского счета клиента и записывается в доступный остаток средств на смарт-карте. Эту операцию можно повторять для пополнения остатка наличных на смарт-карте. С помощью этого же банкомата можно получить бумажные наличные либо перевести средства со смарт-карты на банковский счет. Поскольку информация о количестве цифровых денег хранится только на смарт-карте (на счете эти средства не блокируются, а сразу же списываются на транзитный счет организатора системы), то утеря смарт-карты ведет к полной потере хранимых на ней денежных средств. Это свойство технологии расчетов ЦН позволяет обеспечить анонимность расчетов: в момент проведения оплаты держатель смарт-карты может расплатиться, зная PIN-код доступа к памяти карты. Принципиально других средств защиты информации и авторизации не требуется. Для проведения расчетов смарт-картами с ЦН необходимо наличие специального технического устройства, в которое вставляется смарт-карта плательщика и смарт-карта получателя. После ввода PINкодов плательщика и получателя, а также суммы переводимых средств происходит уменьшение остатка средств на карте плательщика с одновременным увеличением остатка средств в памяти карты продавца. В магазинах могут быть установлены POS-терминалы, в которые предусмотрен ввод только смарт-карты плательщика. ЦН, принимаемые магазином, сохраняются в памяти терминала и могут быть позже записаны на смарт-карту или иной накопитель, а также преданы в банк по каналам связи для обмена их на реальные денежные средства, которые банк зачисляет на расчетный счет торгового предприятия. Применение специальных технических средств, таких как картридеры, сделало возможным расширить возможности платежных систем цифровыми наличными на базе смарт-карт для проведения расчетов с их помощью в среде Интернет. В этом случае персональный компьютер заменяет собой терминалы-банкоматы в части записи (или списания) ЦН на смарт-карту. Таким образом, ЦН на смарт-карте могут использоваться как в проведении интернет-расчетов, так и в расчетах во внесетевом (традиционном) секторе экономики при наличии соответствующих технических устройств. В отличие от систем, основанных на смарт-картах, платежные интернет-системы цифровыми наличными позволяют своим участникам проводить финансовые операции только в среде Интернет. Следует отметить, что в подобных ПИС все клиенты системы равноправны. Это означает, что для того чтобы получать или отправлять платежи не требуется предварительно получать особый статус, например, продавца. Для проведения расчетов покупатель и продавец используют специальное программное обеспечение, именуемое в некоторых системах Кошельком. В функции программы-кошелька, как правило, входит:

- генерация цифровой купюры и подписание ее ЭЦП плательщика;

- отправка цифровой купюры получателю;

- прием цифровых купюр от плательщиков и отправка их на сервер организатора системы для проверки подлинности купюры;

- получение результатов проверки подлинности цифровой купюры;

- изменение и хранение остатка доступных средств на компьютере владельца ЦН;

- формирование по запросу пользователя отчетов о проведенных с помощью ЦН операциях. Для расчетов ЦН в ПИС организатор системы заводит отдельную учетную запись (в системе Яндекс.Деньги она, например, называется счетом). Учетная запись может быть анонимной, поскольку для доступа к ней клиенту системы требуется знать только номер-идентификатор и пароль. Чтобы иметь возможность генерировать цифровые купюры, клиенту системы необходимо перевести обычные денежные средства на расчетный (банковский) счет организатора системы (делается это банковским переводом или через покупку скрэтч-карт нужного клиенту но минала). В процессе передачи денежных средств организатору необходимо указать идентификатор учетной записи, который клиент узнает в процессе регистрации в системе. После этого организатор системы отмечает в учетной записи сумму средств, в пределах которой клиент может создавать цифровые наличные. В процессе осуществления расчетов на этапе проверки подлинности цифровых купюр на сервере организатора системы происходит изменение остатков по учетным записям плательщика и получателя в сторону уменьшения и увеличения соответственно. При переводе наличных из цифровой формы в обычную клиент указывает способ вывода денег (например, перевод на банковский счет или получение наличных в офисе организатор системы);

в этот момент остаток на учетной записи также корректируется в сторону уменьшения либо учетная запись закрывается по желанию клиента. В обобщенном виде выделяется три категории участников любой системы расчетов цифровыми наличными: продавец, покупатель (клиенты системы) и эмитент ЦН (организатор системы). Естественно, эти участники предъявляют к ПИС определенные требования. Рассматривая системы на основе цифровых наличных с позиции этих требований, можно выделить среди основных требований клиентов-плательщиков (покупателей) следующие:

- Анонимность (конфиденциальность). Под анонимностью понимается обеспечение защиты информации частного характера от доступа к ней субъектов, не нуждающихся в ней для целей проведения финансовой операции. Различные платежные системы предлагают клиентам разную степень конфиденциальности клиентской информации для остальных участников (продавец, организатор системы) от практически полной доступности (при стандартных расчетах с использованием кредитных пластиковых карт) до полной анонимности (при использовании систем на основе цифровых наличных). Так, участникам системы WebMoney Transfer не требуется открывать банковский счет и сообщать полные сведения о себе. Нетрудно заметить, что увеличение конфиденциальности для клиента увеличивает возможности мошенничества со стороны последнего, и как следствие увеличивает риски для продавца. Тем ни менее, технологическое развитие таких систем снижает данные риски. Наглядным примером служит использование системой Яндекс.Деньги механизма слепой подписи, разработанного Дэвидом Чаумом, основателем одной из первых иностранных систем на основе цифровой наличности eCash (компании DigiCash). Как работает эта подпись: клиент создает заготовки денежных знаков, которым присваиваются серийные номера, после чего денежные знаки передаются в банк клиента. Серийный номер делается невидимым для банка за счет умножения на некоторое случайное число (так называемый множитель). Банк добавляет к этим денежным знакам цифровую подпись и направляет их обратно клиенту, который, в свою очередь, может разделить серийный номер на слепой множитель и получить исходный серийный номер. При использовании этого механизма банк не может отследить движение денежных знаков, поскольку ему неизвестны исходные серийные номера. - Удобство - это свойство ПИС, позволяющее использовать ее как платежный инструмент широкому кругу лиц, не обремененных специальными познаниями в области финансов, информационных технологий и криптографии. В ПИС на основе цифровых наличных покупателю требуется заранее устанавливать на своем компьютере специальное клиентское программное обеспечение для совершения расчетов, однако эти программы имеют интуитивно понятный интерфейс и просты в использовании. Так, чтобы стать участником WebMoney Transfer, необходимо установить бесплатную программу WebMoney Keeper, которую можно загрузить с Web-сервера системы в виде самораспаковывающегося инсталляционного архива. Аналогично система Яндекс.Деньги предлагает своим клиентам инсталляционный пакет программы, называемой Кошельком (не стоит путать этот кошелек с лэлектронным кошельком - смарт-картой и специальным оборудованием для работы со смарткартой). Общими требованиями и покупателей и продавцов являются:

- Минимизация транзакционных издержек. Тарифы ПИС при проведении финансовых транзакций должны устраивать всех участников расчетов, они должны зависеть от характера платежей. Системой WebMoney Transfer за совершение транзакции взимается тариф в размере 0,08% от суммы платежа, но не менее 0,01$ ( 9.12.2003г). Это делает систему удобной для совершения мгновенных микроплатежей (от 1 до 5 $), а также стандартных платежей В2С (от 5 до 100$). Система Яндекс.Деньги, являющаяся торговой маркой платежной системы PayCash, взимает комиссионный тариф в размере 1% от суммы операции, причем комиссия взимается с получателя денежных средств ( 9.12.2003г). - Интегрируемость - возможность информационного взаимодействия ПИС и других информационных систем (бухгалтерских, систем заказа и т.д.). Использование специального клиентского программного обеспечения в ПИС на основе цифровых наличных и открытая публикация их интерфейсов позволяет встраивать эти программы в другие приложения (например, WebMoney Transfer уже представляет в документации описание части интерфейсов). Система Яндекс.Деньги предлагает несколько способов интеграции программы-лкошелька с системой электронной коммерции продавца в зависимости от сложности и стоимости осуществления интеграции и потребностей продавца. Все участники ПИС на основе ЦН предъявляют требования и к безопасности проводимых платежей. Поскольку Интернет является от крытой и слабо защищенной сетью, то, создавая ПИС, необходимо, в первую очередь, уделить большое внимание аспектам безопасности финансовых транзакций:

- Аутентификация - возможность любой стороне расчетов быть уверенной, что другая сторона является действительно тем, за кого себя выдает. Кроме того, ПИС должна обладать технологическими средствами доказательства факта участия другой стороны в сделке (невозможности отрицания факта транзакции). Обеспечивается аутентификация сертификационными центрами и алгоритмом ЭЦП. Однако ПИС на основе ЦН, характеризующиеся анонимностью плательщика, делает этот процесс невозможным, что делает ее неприменимой для совершения крупных платежей и использования в секторе В2В. - Целостность информации - свойство, обеспечивающее уверенность всем участникам расчетов, что платежная информация, по мере прохождения по каналам связи не была повреждена или изменена. Обеспечивается это использованием алгоритмов ЭЦП (в частности несимметричным шифрованием). - Защищенность информации - невозможность доступа к платежной информации лицам, не имеющим на это право. Обеспечивается системами криптографии, аппаратными и программными средствами. Используя пароль и файл с секретными ключами, участник WebMoney Transfer или Яндекс.Деньги может быть вполне уверен в безопасности управления своими денежными средствами. 4.2. Платежные интернет-системы на основе виртуальных счетов Платежные системы на основе виртуальных счетов являются своеобразным гибридом банковской технологии управления счетом с помощью платежных поручений и технологии безопасного обмена финансовыми сообщениями по принципам интернет-систем расчетов цифровыми наличными. Под виртуальным счетом понимается учетная запись (аккаунт) на сервере организатора платежной интернет-системы. Эта учетная запись содержит сведения о клиенте системы и размере эквивалента денежных средств, в пределах которого он может осуществлять платежи. По сути, виртуальный счет очень похож на банковский счет, но открывается и обслуживается он небанковской организацией, а в качестве единиц учета выступают, как правило, не денежные единицы, а некоторые условные единицы. Под открытием виртуального счета понимается заведение учетной записи и присвоение ей идентификатора, а под обслуживанием - изменение остатка доступных средств по операциям (поступление/списание по платежам), хранение истории операций, изменивших остаток по счету, формирование и предоставление клиенту системы выписок по операциям по виртуальному счету. С точки зрения плательщиков и получателей денежных средств работа в подобных системах выглядит аналогично расчетам с помощью систем интернет-банкинга. Будущий участник расчетов (плательщик) регистрируется в системе, ему открывается счет, на который необходимо занести некоторую денежную сумму. В зависимости от особенностей процедуры регистрации в подобной системе открытие виртуального счета может происходить одновременно с зачислением средств на него (т.е. первоначальный ввод денежных средств в систему сопровождается обязательной регистрацией с заведением учетной записи). Затем с помощью специально оформляемых поручений можно осуществлять платежи, но особенность заключается в замкнутости подобных систем, т.е. платеж можно проводить только в пользу заранее зарегистрированных в этой же системе получателей (сходство с системами цифровых наличных). Зарегистрированные, т.е. имеющие виртуальные счета в этих системах, торговые предприятия заинтересованы в участии в подобных системах, поскольку могут оперативно узнавать состояние своего виртуального счета в разрезе отдельной операции. Таким образом, можно практически мгновенно определить, что покупатель оплатил покупку (переводом средств по виртуальным счетам) и произвести отгрузку товара или оказание услуги. Затем продавец может вывести заработанные деньги из системы путем выдачи организатору системы специального поручения. В этом случае будет выполнен банковский перевод с расчетного счета организатора системы на расчетный (банковский) счет торгового предприятия. В общем случае системы виртуальных счетов позволяют ускорить процессы взаимодействия между покупателем и продавцом, но при этом реальные финансовые потоки не ускоряются (требуются временные затраты на ввод реальных денежных средств в систему покупателем и последующий вывод их продавцом). Следует отметить, что сами платежные интернет-системы, функционирующие по подобному механизму, не всегда используют термин виртуальный счет для обозначения учетной записи клиента;

но, тем не менее, механизм проведения расчетов таков. Примером могут служить системы КредитПилот, официально объявляющая о ведении виртуальных счетов, система Рапида, которая заводит отдельную учетную запись под нового клиента с присвоением этой записи уникального номера, и система моментальных платежей e-port, в которой каждой учетной записи соответствует номер карты. На сегодняшний день в России к оплате с помощью виртуальных счетов прибегают не только продавцы, работающие в сетевом секторе экономики (интернет-магазины, marketplace и т.п.), но и фирмы, оказывающие услуги в традиционном секторе (например, операторы сотовой связи, коммунальные службы). Существуют разновидности подобных систем, определяемые их организаторами. Эти особенности вызваны техническими возможностями организатора в обеспечении безопасности и юридической полноценности платежей, а также скорости обработки транзакций (т.е. перевода денег с одного счета на другой). К этим особенностям можно отнести:

- Поддерживаемые способы ввода денежных средств в систему, т.е. предварительного зачисления их на виртуальный счет будущего плательщика. Здесь возможны варианты как классического банковского перевода на расчетный счет организатора (КредитПилот, e-port), так и эмиссия организатором специальных скрэтч-карт (Рапида, e-port, КредитПилот). - Наличие/отсутствие дифференциации статусов участника расчетов на продавца и покупателя, т.е. система может поддерживать только специфичные режимы обслуживания виртуальных счетов плательщиков и получателей. Это означает, что с одного виртуального счета можно только производить платежи, а на другой - только принимать платежи (а для того чтобы и принимать платежи, и оплачивать покупки требуется открытие двух виртуальных счетов или двойная регистрация в системе с разными статусами). - Предоставление возможности только однократного использования виртуального счета (непополняемый счет), т.е. всякий раз, внося в систему деньги, плательщику в системе заводится новая учетная запись. Это особенно характерно для систем, использующих в качестве способа ввода денежных средств в систему только скрэтч-карты (e-port, Рапида), однако в них все-таки предусмотрена возможность сохранения идентификатора учетной записи от предыдущей карты. Для этого в момент регистрации (или, другими словами, активации) новой скрэтч-карты необходимо указать номер предыдущей карты или уникальный номера клиента системы. Системы расчетов цифровыми наличными и системы виртуальных счетов иногда называют предоплаченными, поскольку прежде чем проводить какие-либо оплаты товаров/услуг с их помощью необходимо передать организатору системы некоторую сумму денежных средств (т.е. конвертировать реальные средства в виртуальные), причем платежи можно производить только в пределах заранее внесенной суммы или суммы, полученной от других участников этой же системы. Таким образом, системы расчетов цифровыми наличными и системы виртуальных счетов функционируют по дебитной схеме проведения платежей.

Глава 5. Применение средств электронной цифровой подписи в банковских информационных системах В настоящей главе на примере сети межбанковских расчетов Московского региона рассматривается проблематика применения электронной цифровой подписи в банковской информационной системе. При этом основное внимание уделено теоретическим, организационнотехническим и нормативно-правовым вопросам, которые необходимо решить при использовании средств ЭЦП для защиты электронных документов. 5.1. Место ЭЦП в ряду криптографических механизмов Первый вопрос, который нужно разрешить, говоря о применении электронной цифровой подписи - это вопрос, а зачем же она нужна, какие задачи она позволяет решать. Обычно говорят, что ЭЦП является средством обеспечения подлинности и авторства электронного документа. Это, безусловно, так, однако следует сразу же задать следующий вопрос: а для кого, собственно, нужно обеспечивать авторство и подлинность? Давайте рассмотрим передачу электронного документа от отправителя к получателю. Если получатель хочет убедиться, что документ действительно был сформирован отправителем и не был при передаче искажен, можно, конечно, использовать ЭЦП, но с тем же успехом можно использовать более простой и дешевый механизм имитозащиты. Корректную имитовставку для документа может выработать только тот, кто знает секретный ключ. Поэтому, если этот ключ известен только отправителю и получателю, то положительный результат проверки полученной вместе с документом имитовставки дает получателю уверенность в том, что документ действительно сформирован отправителем и послан им именно в том виде, в котором получен. В рассматриваемом случае у применения ЭЦП есть единственное отличие от имитовставки: получатель не сможет подделать ЭЦП под документом, а вот подделать имитовставку ему не составит труда. Но до тех пор, пока мы ограничиваем рассмотрение только двумя субъектами отношений, отправителем и получателем, подделка чего-либо получателем лишена всякого смысла: отправителя он обмануть все равно не сможет, так как тот достоверно знает, отправлял он документ или нет. Таким образом, применение механизмов электронной цифровой подписи может стать осмысленным только в том случае, когда в отношения, связанные с электронным документом, вступает третий участник, пытающийся решить вопрос об авторстве этого документа. В деловой практике этим участником может быть арбитр, третейский судья и т.п. То есть применение ЭЦП целесообразно лишь тогда, когда отправи тель и получатель электронного документа предполагают возможность арбитражного разрешения конфликта по поводу его подлинности. Из всего сказанного следует, что вопрос о применении средств электронной цифровой подписи - это вопрос в первую очередь не криптографический и не технический, а организационно-правовой. Поэтому при внедрении средств электронной цифровой подписи в банковские информационные системы основное внимание должно уделяться обеспечению условий, при которых возможен корректный разбор в арбитраже конфликтов, связанных с авторством и подлинностью электронных документов. 5.2. История возникновения ЭЦП в России Первые работы по тематике электронной цифровой подписи в нашей стране начались в 1992 году. Инициатором и главной движущей силой этих работ выступало Главное управление ФАПСИ. С самого начала ЭЦП рассматривалась как средство придания юридической значимости электронному документу. Поэтому наряду с алгоритмическими исследованиями (закончившимися принятием в 1994 году государственных стандартов на алгоритмы цифровой подписи), работами по созданию программных средств, реализующих эти алгоритмы, и их опытной эксплуатацией серьезное внимание уделялось также и юридическим аспектам проблемы. Совместно с институтом государства и права была развернута соответствующая научно-исследовательская работа, результаты которой были использованы при подготовке ряда законопроектов. Тогда же впервые был поставлен вопрос о принятии специального закона об ЭЦП. Однако в тот период в стране еще не был накоплен сколь либо значимый опыт использования цифровой подписи, и поэтому закон принят не был. Большая работа по определению юридических условий, при которых электронный документ может рассматриваться в ходе арбитражного разбирательства, проводилась совместно с Высшим Арбитражным судом. В письме Высшего арбитражного суда от 24 апреля 1992 г. К-3/96 было зафиксировано, что Высший Арбитражный суд РФ считает возможным принимать по рассматриваемым делам в качестве доказательств документы, заверенные электронной подписью (печатью). То есть уже в 1992 году, задолго до принятия нового Гражданского Кодекса и закона "Об информации, информатизации и защите информации" правоприменительная практика была готова к такому общественному явлению, как ЭЦП. В письме Высшего Арбитражного суда РФ от 19 августа 1994 года С1-7/оп-578 было зафиксировано, что если между сторонами возник спор о наличии договора и других документов, подписанных цифровой (электронной) подписью, арбитражному суду следует запросить у сторон выписку из договора, в котором указана процедура порядка согласо вания разногласий, на какой стороне лежит бремя доказывания тех или иных фактов и достоверности подписи. С учетом этой процедуры арбитражный суд проверяет достоверность представленных сторонами доказательств. При необходимости, арбитражный суд вправе назначить экспертизу по спорному вопросу, используя при этом предусмотренную договором процедуру. В случае отсутствия в таком договоре процедуры согласования разногласий и порядка доказывания подлинности договора и других документов арбитражный суд вправе не принимать в качестве доказательств документы, подписанные цифровой (электронной) подписью. Тем самым было определено, что порядок использования ЭЦП должен регулироваться договорными отношениями сторон, использующих цифровую подпись. Причем существенным условием договора, относительно которого стороны должны определиться, должна быть процедура согласования разногласий. Иначе арбитражный суд посчитает невозможным ссылаться на электронный документ, как на основание чьих-то требований и возражений. 1 января 1995 года был введен в действие новый Гражданский Кодекс. В части 1 п. 2 ст. 160 этого кодекса было установлено, что допускается использование при совершении сделок электронно-цифровой подписи в случаях и порядке, предусмотренных законом, иными правовыми актами или соглашением сторон. Впоследствии был принят закон "Об информации, информатизации и защите информации", в ст. 5 которого было закреплено, что юридическая сила документа, хранимого, обрабатываемого и передаваемого с помощью автоматизированных информационных и телекоммуникационных систем, может подтверждаться электронной цифровой подписью. Юридическая сила электронной цифровой подписи признается при наличии в автоматизированной информационной системе программно-технических средств, обеспечивающих идентификацию подписи, и соблюдении установленного режима их использования. На основании принятых законов Высший Арбитражный суд РФ направил очередное письмо от 07 июня 1995 г. С1/03-316, в котором давал разъяснение ст. 5 закона "Об информации, информатизации и защите информации" с указанием, что при соблюдении указанных условий, в том числе при подтверждении юридической силы документа электронной цифровой одписью, этот документ может признаваться в качестве доказательства по делу, рассматриваемому арбитражным судом. Параллельно с решением юридических вопросов ФАПСИ совместно с Центральным Банком проводились работы по внедрению и опытной эксплуатации средств ЭЦП в Автоматизированной системе банковских расчетов (АСБР) Московского региона. Сама АСБР была создана в 1980 году как дублирующая к традиционной системе циркуляции бумажных платежных документов.

Внедрение в нее средств ЭЦП началось в 1993 году, для чего был разработан и встроен в информационные системы ЦБ и ряда коммерческих банков программный комплекс системы криптографической защиты информации "Маг". В ходе опытной эксплуатации, к которой подключалось все большее количество банков, прорабатывались и "обкатывались" технологические и процедурные решения, позволяющие обеспечить возможность корректного разрешения конфликтов по поводу подлинности электронных документов в системе АСБР. К 1995 году эти работы были в целом завершены. С учетом сложившейся правоприменительной практики и действующего к этому моменту законодательства был разработан новый вариант договора между Центральным банком и кредитными организациями на обслуживание в системе АСБР. Этим договором закреплялась юридическая сила электронной цифровой подписи под циркулирующими в системе электронными документами. В частности, детально регламентировались порядок обмена электронными документами с использованием средств электронной цифровой подписи и процедура разбора конфликтных ситуаций. В течение 1996 года со всеми участниками АСБР были заключены договоры нового образца, и с этого времени межбанковские платежи стали осуществляться на основании электронных платежных документов без их дублирования на бумаге. 5.3. Основные подходы, применявшиеся к решению задачи применения средств ЭЦП в сети межбанковских расчетов Традиционные системы защиты информации, базирующиеся на применении симметричных криптографических алгоритмов, предназначались для использования в сетях передачи данных, интересы участников которых совпадают (по крайней мере в части задач информационной безопасности). Механизмы же электронной цифровой подписи, как следует из сказанного в первом параграфе, применяются для защиты информации в сетях с конкурирующими интересами участников. Для сетей, по которым передаются платежные документы, конфликт интересов участников виден особенно отчетливо (не случайно именно платежные системы являются основным потребителем средств ЭЦП). Поэтому при внедрении средств ЭЦП в систему АСБР пришлось решать качественно новые задачи, не попадавшие ранее в поле зрения отечественных криптографов. Необходимо было организовать протоколы взаимодействия участников системы, не позволяющие им обманывать друг друга и обеспечивающие возникновение и хранение набора данных, необходимого для корректного арбитражного разрешения споров по поводу подлинности и авторства электронных документов. Эти задачи решались исходя из принципов, диктуемых как общей ситуацией в стране, так и особенностями конкретной системы АСБР:

1. Пользователями АСБР являются юридически самостоятельные и независимые организации, а значит ни у ЦБ как координатора АСБР, ни у какой-либо иной организации нет ни юридической, ни технической возможности вмешиваться в организацию внутренней защиты информационной системы пользователя. Строго регламентироваться может лишь взаимодействие пользователей системы друг с другом. Поэтому при создании системы защиты информации АСБР пользователи рассматривались как единые неделимые объекты. 2. Возможность конфликтов, связанных с электронными расчетными документами, требует доказательного заверения подлинности и авторства этих документов. Криптографической основой для решения этой задачи является аппарат электронной цифровой подписи (ЭЦП). 3. Недоверие пользователей к кому бы то ни было, в том числе и к государственным учреждениям, традиционно выполнявшим функции выработки и распространения ключевой информации, предопределяет использование ключевой системы с открытым распределением ключей, причем функции по генерации ключевой информации возлагаются на самого владельца этой информации. 4. По тем же причинам процедуры обмена открытой ключевой информацией должны включать в себя механизмы удостоверения подлинности этой информации. 5. Организационная разобщенность и недисциплинированность пользователей АСБР не позволяет гарантировать добросовестность выполнения всеми пользователями мероприятий по защите информации. Поэтому система защиты должна быть построена таким образом, чтобы нарушение пользователем требований информационной безопасности наносило ущерб только интересам этого пользователя. 6. Арбитражный характер разрешения конфликтных ситуаций предопределяет разработку таких механизмов выхода из конфликтов, связанных с электронными расчетными документами, который был бы понятен арбитру, не являющемуся специалистом в области защиты информации. Сформулированный выше принцип понятности неспециалисту механизма выхода из конфликтной ситуации вступает в противоречие с использованием в качестве основы системы защиты информации специфичной криптографической техники. В качестве компромисса было предложено следующее требование: механизм выхода из конфликтных ситуаций должен представлять собой последовательность простых и ясных логических рассуждений, опирающихся на две аксиомы:

- невозможно определить секретный ключ ЭЦП на основании открытого;

- невозможно подделать ЭЦП без знания секретного ключа.

Уверенность для арбитра, не являющегося специалистом в области защиты информации, в соответствии данных аксиом действительности определяется правильностью выбора криптографических алгоритмов электронной цифровой подписи. Для гостированных алгоритмов такая уверенность базируется на самом факте принятия этих алгоритмов в качестве государственных стандартов. Следует отметить, что задача создания механизмов разрешения конфликтов тесно связана с задачей разработки протоколов взаимодействия участников системы, так как именно в процессе ежедневного взаимодействия участниками создаются и пересылаются те документы, которые впоследствии могут рассматриваться в ходе разбора конфликта. В ходе этих работ выделяем три основные задачи, которые потребовалось решить:

- однозначное определение момента, начиная с которого электронный документ порождает ответственность сторон;

- обеспечение доказательного подтверждения авторства информации;

- организация надежного архивного хранения документов. Однозначное определение момента, начиная с которого электронный документ порождает ответственность сторон Электронными документами, порождающими ответственность пользователей АСБР, являются пакеты платежных поручений, передаваемые от банков в ЦБ. Документы, передаваемые от ЦБ банкам, носят информационный характер, поэтому по ним ЦБ несет ответственность только в плане достоверности содержащейся в них информации. Электронный документ обладает одной характерной чертой, качественно отличающей его от документа бумажного: для электронного документа возможно (и легко осуществимо) создание копий, неотличимых от оригинала. Это обстоятельство не позволяет полностью перенести традиционную технологию с использованием бумажных расчетных документов на случай электронного документооборота, поскольку возможность копирования документа делает возможными некоторые новые атаки, неосуществимые в рамках "бумажной" технологии. Во-первых, злоумышленник может продублировать полученный им корректный электронный документ и заявить, что на самом деле он получил два одинаковых документа. В случае платежных поручений это позволит ЦБ списать с корреспондентского счета банка вдвое большую сумму, нежели того хотел владелец счета. Для предотвращения этой атаки необходимо исключать возможность легального появления в системе двух абсолютно одинаковых документов. В АСБР это достигается наличием у каждого пакета уникальной идентифицирующей его информации: даты и номера пакета.

Вторая атака основана на том, что в исполнении платежного поручения банку может быть отказано по какой-либо причине (реальная или мнимая ошибка в оформлении, недостаток средств на счету и т.п.). В рамках традиционной технологии неисполненный документ в таких случаях возвращается банку с пояснением причин отказа. При электронном же документообороте копия отвергнутого расчетного документа остается в ЦБ и банк не может быть уверен в том, что эта копия не будет использована ЦБ для оправдания некорректных действий. Так, например, ЦБ имеет возможность под каким-либо предлогом отказать в исполнении корректно оформленного пакета платежных поручений и тем самым вынудить банк подготовить и послать новый пакет на те же платежи, а затем исполнить оба пакета, тем самым, как и в предыдущем примере, списав с корреспондентского счета банка вдвое большую сумму. Кроме того, технология расчетно-кассового обслуживания, используемая ЦБ, предусматривает определенную задержку в исполнении расчетно-денежного документа и возможность в течение этого времени отмены или исправления банком уже отосланных (и принятых ЦБ) документов (так называемый отзыв рейса). Как видно из приведенного примера, одно лишь наличие корректной подписи под документом не всегда должно порождать ответственность его автора. Исходя из вышеизложенного, систему целесообразно построить таким образом, чтобы электронный документ мог служить аргументом при арбитражном разбирательстве только в том случае, если он принят ЦБ к исполнению. Традиционным и наиболее естественным средством подтверждения факта приема документа является квитанция. Наличие квитанции позволяет дополнительно обеспечить ответственность ЦБ в случае невыполнения им своих обязательств (неисполнения принятых документов). Однако механизм квитирования имеет свои "подводные камни". Если принять положение, что электронный документ банка признается подлинным только в случае наличия у банка квитанции о его приеме ЦБ, то банк получает возможность отказаться от любого своего документа, заявив, что не получал от ЦБ соответствующую квитанцию. Наличие же такой квитанции у ЦБ, очевидно, не может служить аргументом при арбитражном разбирательстве, так как ЦБ имеет техническую возможность в любой момент изготовить корректную квитанцию на любой документ, как действительно им полученный, так и сфабрикованный. В ряде работ, в том числе имеющих статус международных стандартов, для разрешения этой проблемы предлагается ввести еще один уровень квитирования, т.е. выдавать квитанции на квитанции. Однако подобная "эскалация квитирования" неоправданна, так как, во-первых, ведет к чрезмерному усложнению системы, во-вторых, все равно остается открытым вопрос доказательства существования квитанции последнего уровня.

В рамках АСБР для разрешения данной проблемы было принято адаптивное толкование понятия подлинного документа. Предложено применять принцип "презумпции ответственности", который означает, что наличие корректной подписи под электронным документом порождает ответственность ее автора до тех пор, пока он не сможет доказать обратного. Средством, обеспечивающим возможность такого доказательства, является механизм квитирования. Говоря о квитировании, необходимо сформулировать требования к квитанции. Во-первых, квитанция должна однозначно отвечать на вопрос, был ли квитируемый документ принят получателем, или он был отвергнут. Квитанция может содержать также дополнительную информацию (например, причины непринятия документа), однако эта информация не является существенной при разрешении вопроса об ответственности сторон по документу. Во-вторых, должна быть обеспечена возможность при арбитражном разбирательстве удостовериться в подлинности и неискаженности квитанции. Иными словами, квитанция также должна подписываться электронной цифровой подписью. В-третьих, квитанция должна быть однозначно привязана к квитируемому документу. Это означает, что невозможно случайное или умышленное появление двух различных документов, которым могла бы соответствовать одна и та же квитанция. Использование для идентификации документа какой-либо определяемой пользователем информации (например, номера документа), очевидно, не удовлетворяет данному требованию. В АСБР предложено включать в текст квитанции значения криптографической хэш-функции от квитируемого документа, при этом разработанное для АСБР программное обеспечение, реализующее функции криптографической защиты информации, позволяет автоматически проверять соответствие квитанции документу. Практическая неразрешимость задачи формирования двух различных текстов с одинаковым значением хэш-функции позволяет отправителю доказать, что квитанция выдана именно на тот документ, который он отправил, получатель же может быть уверен, что квитанция не будет применена к какому-либо документу кроме того, который он реально принял. Предложенное решение проблемы однозначной привязки квитанции к квитируемому документу является достаточным только для положительных квитанций. Для отрицательных квитанций возникают проблемы, не являющиеся, однако, недостатком данного конкретного решения, а имеющие общий характер. Суть проблемы в том, что электронный документ может быть искажен во время передачи или умышленно модифицирован получателем. В этом случае в квитанции будет записано значение хэш-функции, не соответствующее отправленному документу, и отправитель документа не имеет возможности доказать, что отрицательная квитанция выдана именно на этот документ. Документ в резуль тате "зависает": получатель, заявляет, что его не принял, однако отправитель не может этого доказать. Для разрешения этой проблемы в АСБР предложено использовать имеющийся механизм отзыва рейса. Согласно типовому договору на обслуживание в АСБР банк должен на каждый отправленный им пакет платежных поручений либо добиться получения положительной квитанции, либо сформировать и отправить отзывающий пакет (исправленный вариант отвергнутого ЦБ пакета либо отменяющий его пустой пакет). Тем самым функции отрицательной квитанции при разрешении конфликтов выполняет квитанция о приеме отзывающего пакета, на саму же отрицательную квитанцию возлагается лишь информационная функция. Обеспечение доказательного подтверждения авторства информации Следующим аспектом проблемы корректного разрешения конфликтных ситуаций является собственно доказательное определение авторства как электронных документов, так и квитанций на них, то есть обеспечение возможности доказать в ходе арбитражного разбирательства, что данный файл действительно создан данным юридическим лицом, и, как следствие, содержание файла может быть основанием для предъявления претензий этому юридическому лицу. Эта задача, помимо проверки ЭЦП для файла, включает в себя доказательное подтверждение принадлежности используемого при проверке открытого ключа подписи тому пользователю, которому приписывается авторство документа. Проблема эта, по-видимому, не решается чисто техническими средствами. Для юридического заверения принадлежности открытых ключей подписи участников в описываемой системе предложено свести задачу к уже имеющим методам заверения, то есть распечатывать ключи на бумаге (в шестнадцатеричном коде) и заверять мастичными печатями и собственноручными подписями ответственных лиц (таким образом, созданный бумажный документ в АСБР называется контрольной записью). Данное решение, однако, обладает тем недостатком, что включает в себя принципиально неавтоматизируемые моменты, как то формирование контрольной записи, ее физическую доставку противоположной стороне, сличение открытого ключа с контрольной записью и т.п.). Поэтому заверение ключа посредством контрольной записи предложено применять только для первичных ключей пользователей. Смена ключей банков производится по безбумажной технологии, при этом новый открытый ключ подписи заверяется на старом. Заверение ключей ЦБ производится на тех же принципах, но несколько иначе, поскольку в ЦБ организационно разделены подсистема обмена электронными документами (Абонентский пункт ЦБ) и подсистема работы с ключевой информацией (Центр регистрации абонентов).

Контрольной записью заверяется открытый ключ подписи Центра регистрации абонентов (ЦРА), а открытые ключи Абонентского пункта ЦБ выдаются пользователям по безбумажной технологии в виде сертификатов или таблиц, заверенных подписью ЦРА. Организация надежного архивного хранения документов Для обеспечения возможности корректного разрешения конфликтных ситуаций необходимо представить арбитражной комиссии, относящиеся к конфликту документы, как электронные, так и бумажные. Значит, должно быть организовано архивное хранение необходимых при разборе конфликта материалов: электронных документов и квитанций на них, контрольных записей на первичные ключи подписи и заявок на смену ключей, сертификатов и таблиц открытых ключей ЦБ. Централизованное архивное хранение этих документов невозможно, так как держатель архива получает возможность путем уничтожения или искажения определенных документов влиять на результат разбора конфликтной ситуации. Поэтому при разработке системы применялся принцип заинтересованного хранения, согласно которому ответственность за хранение каждого конкретного материала возлагается на того пользователя системы, интересам которого будет нанесен ущерб при отсутствии этого материала во время разбора конфликта. На основании сформулированных решений были разработаны регламент взаимодействия участников АСБР и процедуры разбора конфликтов между ними по поводу подлинности электронных документов. На завершающем этапе был произведен анализ корректности разработанных процедур. Был сформулирован и формально доказан ряд теорем, означающих, что если участник системы строго следует разработанному регламенту взаимодействия и обеспечивает должный уровень защиты своей конфиденциальной информации, то в ходе разбора конфликта не будет нанесен ущерб его законным интересам.

Глава 6. Вопросы безопасности 6.1. Основные понятия 6.1.1. Криптография Методы, носящие название криптографических, составляют техническую основу, для обеспечения возможности реализации электронной цифровой подписи, цифровых денег, обеспечения надежности электронных транзакций, разграничения доступа к информации, анонимности пользователей и множества других свойств различных информационных систем. Слово криптография происходит от двух греческих слов: kryptos, что означает тайный, и от grapho, что означает письмо. Таким образом, криптография означает тайнопись или науку о разработке методов защиты сообщений. Методы защиты сообщений называются криптографическими алгоритмами или иногда просто шифрами. Входными данными для начала работы криптографического алгоритма являются исходный текст сообщений и ключ зашифрования. Ключом может является некоторое слово, число или просто произвольный набор символов. Главное, чтобы значение ключа хранилось в секрете, и его было бы невозможно угадать случайным образом или подобрать. Процесс выполнения криптографического алгоритма также называют процессом зашифрования сообщения. В результаты на выходе алгоритма получается зашифрованный текст, или как его еще называют, криптограмма. Текст криптограммы является абсолютно нечитаемым обычными людьми. Внешне такой текст выглядит как беспорядочный набор букв, не имеющий ни какого смысла. Чтобы извлечь информацию из криптограммы, необходимо выполнить обратный процесс ее преобразования в исходное сообщение. Такой процесс называется расшифрованием. Расшифровать криптограмму, то есть прочесть секретное сообщение, может только тот человек, который знает секретный ключ расшифрования. Существует общее правило, сформулированное еще в позапрошлом веке голландским ученым Ф. Керкхоффом (1835-1903) : стойкость шифра должна быть обеспечена в том случае, когда известен весь алгоритм зашифрования, за исключением секретного ключа. Смысл этого правила заключается в том, что только секретность ключа обеспечивает всю стойкость и надежность шифра. Предполагается, что сам криптографический алгоритм не является секретным и потенциально может быть изучен и понят любым человеком. Таким образом, ключ расшифрования необходимо беречь в секрете, как зеницу ока, так как в случае его компрометации система становится совершенно ненадежной. Правило Керкхоффа является актуальным на сегодняшний день. Во-первых, структуру алгоритма достаточно тяжело долго сохранять в тайне, и вовторых, ее потенциально можно получить путем анализа программного и аппаратного обеспечения информационной системы. Существующей практикой является публикация разработанных алгоритмов шифрования1. Так, например, опубликованы и доступны всем желающим отечественный и американский стандарты шифрования данных. 6.1.2. Идентификация Идентификация состоит в распознавании пользователей. Для этого, пользователь должен знать и указать свой идентификатор, то есть уникальное значение, по которому можно определить личность пользователя. 6.1.3. Аутентификация Процедура аутентификации состоит в проверке подлинности и корректности идентификатора пользователя. Существует достаточно много способов аутентификации пользователей [Сми2002, Ива2001]. В самом простом случае пользователь может указать свой пароль. В более сложных процедурах аутентификации могут быть использованы биометрические данные пользователей, ответы на тестовые вопросы, доказательства знания некоторой секретной информации и другие. Важно, чтобы процедура аутентификации была стойкой к возможным атакам со стороны злоумышленников. Как правило, такие атаки заключаются в том, что злоумышленники может выдать себя за другого пользователя и работать от его имени. Например, в случае если пароль пользователя легко можно подобрать или угадать. 6.1.4. Авторизация Под авторизацией пользователей понимают процесс определения прав пользователя для доступа к различной информации, ресурсам, а также действия, которые может совершать пользователь. Например, очень часто функциональные возможности различных электронных каталогов, электронных магазинов, бухгалтерских приложений, систем складского учета и других всевозможных автоматизированных систем обработки данных зависят от результатов процедуры авторизации пользователя. В зависимости от прав пользователя, определенных на этапе его авторизации, одна и та же система может предоставлять существенно различные возможности разным пользователям. Классическим примером могут служить приложения торговых площадок в Интернет. Как правило, в этих системах есть клиентская часть, так называемый фасад системы (FrontEnd) и есть часть для администрирования и настройки системы (BackOffice). Обе части могут быть реализованы в рамках одной и той же системы и на основе одинаковой архитектуры. Однако на Криптографические алгоритмы, используемые специальными службами, могут быть засекречены.

этапе авторизации определяется, будут ли, например, доступны пользователю возможности по администрированию системы или нет. В зависимости от этого формируется пользовательский интерфейс и доступная функциональность приложений. 6.2. Схемы защищенного информационного обмена Все существующие криптографические алгоритмы делятся на два больших класса: симметричные алгоритмы и алгоритмы с открытыми ключами. Симметричными являются алгоритмы, в которых для зашифрования и расшифрования используется один и тот же секретный ключ. В алгоритмах с открытыми ключами для зашифрования и расшифрования используются различные ключи. По причине того, что для процессов зашифрования и расшифрования используются различные ключи, алгоритмы с открытыми ключами иногда называют еще асимметричными алгоритмами. 6.2.1. Симметричная схема Рассмотрим подробнее схему защищенного информационного обмена для случая использования симметричных методов (рис. NN).

Злоумышленник М М Отправитель К Шифратор С Дешифратор Получатель К Секретный канал Открытый канал (Интернет) В схеме имеется два типа каналов связи. Один из них является открытым, то есть доступным для прослушивания. Примером такого рода каналов связи могут служить глобальные компьютерные сети, например Интернет, линии телефонной связи, радиоэфир и так далее. К другому типу относятся секретные каналы, то есть защищенные от прослушивания. Предполагается, что по таким каналам можно передавать любую конфиденциальную информацию, не опасаясь того, что она будет перехвачена, подменена или потеряна. Примером секретного канала могут служить специальные компьютерные сети, к линиям связи которых невозможен физический доступ, дипломатическая почта или личный контакт. Секретный канал связи используется для передачи ключа от отправителя к получателю сообщения. Такая передача осуществляется предварительно, до начала защищенного информационного обмена. С помощью устройства шифрования и при использовании ключа K, отправитель вычисляет значение криптограммы C, которое соответствует исходному сообщению M Передача криптограммы или как еще иногда говорят, шифротекстов, происходит по открытым каналам. Получатель принимает значение криптограммы и расшифровывает его с использованием ключа K, который он предварительно получил от отправителя. В результате расшифрования получается исходное конфиденциальное сообщение M. В своей основе каждый криптографический алгоритм представляет собой некоторую математическую функцию от двух аргументов c = f (m, k ), где m - исходное сообщение, k - ключ зашифрования и c криптограмма. Обратный процесс расшифрования также является вычислением некоторой функции от значения криптограммы и ключа расшифрования m = f (c, k ). Предварительно очень часто, для удобства вычислений, значения исходного текста сообщения, ключа и криптограммы представляются в числовом виде. Существует много способов перевода текста в числовую форму и обратного преобразования. Простейший способ состоит в том, чтобы каждую букву текста заменять на соответствующий ей номер в алфавите. Возникает вопрос, почему бы не передавать по секретному каналу связи непосредственно само исходное сообщение М? Ответ заключается в том, что подобная передача многочисленных сообщений по секретным каналам связи была бы очень дорогостоящей. В то же время один раз переданный ключ можно использовать для обмена многими сообщениями. Имеется в виду возможность шифрования и расшифрования разных сообщений с использованием одного и того же значения ключа. Срок жизни ключа определяется качеством криптографического алгоритма и требуемым уровнем к степени защиты информации. Криптограммы передаются по открытым каналам связи, следовательно, их может получить не только законный получатель, но и злоумышленник. В роли злоумышленника могут выступать конкуренты, недоброжелатели, хакеры и тому подобный круг лиц. В случае рассматриваемой схемы защищенного информационного обмена, злоумышленник не знает значения ключа K, так как он распространялся только по секретному каналу связи. По этой причине злоумышленник не имеет возможности непосредственно расшифровать криптограмму и прочитать конфиденциальное сообщение. Однако злоумышленник может попытаться использовать доступную ему вычислительную мощность для перебора всех возможных вариантов ключа. Прямой перебор всех вариантов ключа получил название атаки методом Угрубой силыФ. Данное название является устоявшимся термином и происходит от перевода его английского эквивалента brute force attack. Хорошие алгоритмы шифрования должны быть стойкими к таким атакам. В первую очередь за счет длины ключа. Чем больше размер ключа, тем больше вариантов необходимо перебрать, чтобы проверить все возможности. Кроме того, злоумышленник может накапливать сведения о различных передающихся по сети криптограммах, делать предположения относительно их содержания, искать статистические закономерности в получаемых шифротекстах. Дополнительно различают следующие виды атак: атака при наличии только известного шифротекста;

атака при наличии известного открытого текста;

атака при возможности выбора открытого текста;

атака с адаптивным выбором открытого текста;

атака с использованием выбранного шифротекста. Именно по этому рекомендуется периодически менять ключи, чтобы избежать ситуации, когда злоумышленник сумеет вычислить значение ключа и безнаказанно читать конфиденциальные сообщения. В частном случае, отправителем и получателем сообщений, то есть владельцем некоторой информации может быть один и тот же человек. В этом случае он должен либо помнить значение ключа, либо надежно сохранить его на внешнем носителе памяти, обеспечив невозможность несанкционированного доступа к этому носителю. 6.2.2. Асимметричная схема Далее рассмотрим схему информационного обмена в случае использования криптографических алгоритмов с открытыми ключами (рис NN).

Злоумышленн М Отправитель E1, D1 Шифратор C=F(M,E2) С Дешифратор M=F (M,D2) - М Получатель E2, D ЦРК Главная особенность данной схемы состоит в том, что в ней полностью отсутствуют любые секретные каналы связи. Это является прямым следствием использования асимметричных криптографических алгоритмов. Термин Уоткрытый ключФ отражает суть дела, которая заключается в том, что в криптосистемах шифрования с открытыми ключами или просто в криптографии с открытыми ключами некоторые ключи являются общеизвестными, т.е. открыты, опубликованы, доступны всем участникам информационного обмена. Зашифрование сообщений происходит именно с использованием таких открытых ключей. При этом надежность систем заключается в том, что общеизвестный ключ используется только для зашифрования сообщений. Для расшифрования сообщения, зашифрованного с помощью открытого ключа, используется другой, парный ему, но секретный ключ. Таким образом, у каждого участника информационного обмена есть пара из двух ключей: открытого и секретного. Абоненты используют открытые ключи для того, чтобы передавать друг другу зашифрованные сообщения, а свой секретный ключ каждый абонент использует для того, чтобы расшифровывать получаемые им криптограммы. Каждый абонент первоначально генерирует у себя пару связанных ключей: открытый ключ E и секретный ключ D. Открытые ключи опубликовываются. в некотором доверенном центре распределения ключей (ЦРК), который впоследствии будет выдавать копии открытых ключей всем желающим. Шифрование происходит на открытом ключе E получателя. Расшифрование осуществляется на закрытом ключе D получателя. Злоумышленник имеет возможность внедрятся в каналы передачи данных между любыми абонентами сети, а также между абонентами и доверенным центром ЦРК. Секретные защищенные каналы связи в схеме отсутствуют. Пусть пользователь А хочет передать пользователю В секретное сообщение. Для шифрования сообщения используется криптографическая система с открытыми ключами. Пользователь В имеет свои открытый ключ E B и секретный ключ DB. Открытый ключ E B опубликован и известен всем пользователям, в том числе и пользователю А, который использует его для зашифрования сообщения. Пользователь А использует алгоритм шифрования в основе которого лежит некоторая функция F от двух аргументов: исходного сообщения и открытого ключа получателя. Значение функции является криптограммой C, которую можно передавать по незащищенным открытым каналам связи. Пользователь А выполняет операцию зашифрования C = F ( M, E B ) и посылает криптограмму пользователю В. Пользователь В получает криптограмму C и выполняет операцию расшифрования M = F (C, DB ) с использование своего секретного ключа. В результате пользователь B получает текст секретного исходного сообщения. Для зашифрования и расшифрования сообщений может использоваться одна и та же функция F, лежащая в основе криптографического алгоритма. В общем случае могут использоваться различные функции.

6.3. Симметричные алгоритмы шифрования 6.3.1. Классификация Симметричные алгоритмы шифрования преобразуют входные данные с использованием секретного ключа. В результате работы алгоритмов получаются зашифрованные тексты или криптограммы. Для расшифрования криптограмм, зашифрованных с помощью симметричного алгоритма, необходимо знать ключ использовавшийся в процессе зашифрования. На рисунке (NN) приведена классификация симметричных алгоритмов шифрования.

Симметричные алгоритмы Блочные Потоковые Все множество алгоритмов делится на две большие группы: блочные и поточные. Разница между ними состоит в том, что алгоритмы первой группы принимают исходный текст блоками по несколько символов, а алгоритмы второй группы последовательно посимвольно или даже побитовое преобразуют поток исходного текста. Использование блочного шифра означает, что исходный текст делится на блоки определенной длины и все преобразования выполняются отдельно над каждый блоком. Иногда преобразования над одним блоком могут зависеть от результатов преобразования над предыдущими блоками. При поточном шифровании каждый символ исходного текста может представляться в битовой форме, то есть в двоичном виде. Далее каждый бит полученной последовательности можно преобразовать по определенному правилу. В качестве такого правила преобразования часто используют побитовое сложение исходного текста с некоторой секретной последовательностью битов. Секретная последовательность битов играет роль ключа зашифрования в симметричных потоковых шифрах. Сама по себе операция побитового сложения, называемая также операцией сложения по модулю двойки, операцией Уисключающего ИЛИФ или просто XOR, является очень простой. При сложении каждый бит заменятся по правилу: 0+0=0 0+1=1 1+0=1 1+1=0 Для расшифрования надо выполнить обратную процедуру. Перевести криптограмму в двоичный вид и сложить побитово с той же самой секретной последовательностью, которая использовалась для зашифрования.

Основу большинства потоковых шифров составляет некоторый генератор псевдослучайных последовательностей. Задача такого генератора состоит в побитовом производстве битовой последовательности, которую также иногда называют ключевой гаммой шифра. Такая гамма используется в операции побитового сложения с исходным текстом. Собственно ключом шифрования в таком случае является начальное состояние (и, возможно, структура генератора). Очевидно, что тот кто знает алгоритм генерации последовательностей и начальные входные данные для работы алгоритма, сможет произвести всю гамму. Основной характеристикой таких потоковых шифров является криптографическая стойкость генератора псевдослучайных последовательностей. Генератор должен обеспечивать следующие важные свойства: производить последовательности битов, по своим статистическим характеристикам близкие к случайным последовательностям;

обеспечивать производство достаточно длинных неповторяющихся последовательностей;

обладать достаточной скоростью для работы в реальном времени. Первое из этих свойств необходимо для того, чтобы злоумышленник не мог угадать ключевую гамму шифра. Второе свойство обеспечивает устойчивость метода шифрования к различным атакам. Последнее свойство позволяет на практике использовать потоковые шифры в реальном режиме времени. Операция замены (transmutation), которую еще иногда называют операцией подстановки, состоит в замене одних символов исходного текста на другие символы. Символы исходного текста и символы на которые они заменяются, могут принадлежать одному и тому же алфавиту (например русскому языку), а могут - разным. Операция перестановки состоит в перестановки символов исходного текста по определенному правилу. Шифры замены и перестановки относятся к самым древним из известных методов шифрования. Подобные методы известны еще с античных времен. С течением времени усложнялись правила перестановки и замены. Теоретическая база для построения стойких шифров была разработана в середине прошлого века известным американским ученым Клодом Элвудом Шенонном (Claude Elwood Shannon) (1916-2001), знаменитого также своими основополагающими трудами в области теории информации. С появлением его работы УТеория связи в секретных системахФ [Shen49] криптография превращается в строгую научную дисциплину. Был предложен математический аппарат для построения стойких шифров, а также сформулированы основные принципы рассеивания и перемешивания.

Рассеивание - нивелирование влияния статистических свойств открытого текста на криптограмму. Рассеивание распространяет влияние одного символа открытого текста на большое число символов криптограммы. Рассеивание обычно достигается использованием методов перестановки. Перемешивание - усложнение восстановления взаимосвязи статистических свойств открытого текста и криптограммы, а также между ключом и криптограммой. Перемешивание соответствует использованию методов замены [Алф2001]. С использованием этих принципов во второй половине прошлого века была предложена архитектура для построения симметричных блочных шифров. Архитектура получила название сети Фейсталя (Feistal network), по имени Хорста Фейсталя, сотрудника компании IBM. Эта архитектура на долгое время определила основное направление развития стандартов в области шифрования данных. 6.3.2. Сеть Фейсталя В сети Фейсталя происходит преобразование исходного блока данных. На выходе сети получается преобразованный блок данных. Исходный блок разделяется на две части X1 и X2. Выходной блок данных также состоит из двух частей Y1 и Y2. Чаcть Y1 - это непосредственное значение X2. Значение Y2 является результатов сложения части X1 и результата функции шифрования F. Под функцией шифрования в данном понимается функция от двух аргументов: входного блока данных и секретного ключа. Сама функция представляет собой некоторое не специфицированное преобразование над данными. В сети Фейсталя в качестве аргументов функции шифрования F выступают, входной блок данных X2 и секретный ключ шифрования K.

X X2 F + K Y Y Аналитические формулы описанных преобразований имеют следующий вид: Y1 = X2 Y2 = X1 F(X2, K) Важным свойством сети Фейсталя является то, что осуществляемые с ее помощью преобразования являются обратимыми. Преобразова ния обратимы даже в том случае, если функция шифрования F не является обратимой. То есть всегда можно получить исходный блок данных X из блока данных Y X1 = Y2 F(Y1, K) X2 = Y1 6.3.3. Современные стандарты шифрования данных Современные открытые стандарты шифрования данных являются блочными симметричными шифрами, которые используют составные преобразования (замены, перестановки и другие) для шифрования данных. Такие стандарты рекомендованы для защиты коммерческой и несекретной информации. Рекомендация к использованию стандарта для защиты коммерческой и несекретной информации означает, что его не следует использовать для шифрования информации, составляющей государственную тайну или требующую специальный допуск. Однако, это не означает, что алгоритм является нестойким или не проверенным. В абсолютном большинстве случаев стойкость алгоритма достаточна для того, чтобы конкуренты или недоброжелатели не смогли взломать его за приемлемое время. Под взломом в данном случае понимается дешифрование криптограмм, т.е. раскрытие исходного текста сообщения без знания секретного ключа. Возможность подобного взлома очень сильно зависит от ресурсов злоумышленников (финансовых, вычислительных, интеллектуальных и других). С этой точки зрения ведущие государства обладает совокупными ресурсами, которые значительно превосходят потенциал крупнейших коммерческих корпораций. По этой причине для сохранения государственных секретов целесообразно использовать более стойкие и не опубликованные алгоритмами. К тому же более стойкие алгоритмы как правило более требовательны к ресурсам и работают более медленно. В тоже время в гражданских и коммерческих системах скорость выполнения операций часто является одним из самых важных критериев. Наконец, использование сверхстойких алгоритмов может стать экономически неэффективно для шифрования информации с очень коротким временем жизни. Нет особого резона использовать шифр, на взлом которого потребуется много лет, для защиты сообщений всякая ценность которых пропадет через несколько дней или часов. По изложенным выше причинам, опубликованные официальные государственные стандарты шифрования обладают определенным компромиссом между целым рядом критериев, как то: стойкость, скоростью работы, удобство реализации, стоимость и другие. Далее рассматриваются следующие стандарты шифрования: DES - старый федеральный стандарт шифрования США;

ГОСТ 28147-89 - отечественный стандарт шифрования данных;

AES - новый федеральный стандарт шифрования США.

Изложение ведется в хронологическом порядке появления этих стандартов. Работу симметричных криптографических алгоритмов можно рассматривать как функционирование Учерных ящиковФ. На вход подается исходный текст и ключ зашифрования фиксированного размера. На выходе получается криптограмма. Внутренняя структура таких алгоритмов представляет интерес для разработчиков и криптоаналитиков. Для пользователей в первую очередь представляют интерес сравнительные характеристики алгоритмов, результаты анализа их стойкости и область применения. 6.3.4. Стандарт DES Стандарт шифрования Digital Encryption Standard (DES) более 20 лет служил в качестве федерального стандарта шифрования в США. Алгоритм был Алгоритм, лежащий в основе стандарта, был разработан еще в 1974 году в компании IBM. В 1977 году стандарт был опубликован Национальным бюро стандартов (НБС) США. Затем в 1980 году он был одобрен Национальным институтом стандартов и технологий (НИСТ) США для защиты коммерческой и несекретной информации. С 1986 года становится международным стандартом, принятым ИСО под наименованием DEA-1. Алгоритм лежащий в основе DES относится к группе симметричных блочных шифров. Длина ключа составляет 64 бита. Из которых каждый восьмой бит служит для проверки четности. Соответственно в ключе содержится только 56 секретных бит. Входной блок данных также составляет 64 бита. Алгоритм основан на архитектуре сети Фейсталя. Суть его состоит в выполнении преобразований в этой сети несколько раз подряд. Выходной блок данных после одного преобразования является входным блоком, для следующего преобразования. Каждое такое преобразование называется раундом шифрования. Иногда DES и другие подобные алгоритмы еще называют итерационными блочными шифрами, где под одной итерацией понимается выполнение преобразования в сети Фейсталя. Всего в DES шестнадцать раундов шифрования. Количество раундов шифрования является важной характеристикой подобных итерационных шифров. От этого значения зависит стойкость шифра к современным методам криптоанализа, таким как дифференциальный и линейный криптоанализ. Как отмечается в работе [Вар98], применение этих методов дало наилучшие результаты в области анализа систем блочного шифрования. Наличие шестнадцати раундов шифрования является минимально необходимым для того, чтобы указанные выше методы криптоанализа были не легче полного перебора всех возможных ключей. Следует сказать, что в открытой литературе методы дифференциального [Bih91] и линейного [Mut94] криптоанализа были опубликованы сравнительно недавно. В тоже время DES был раз работан и проанализирован еще в 70-х года прошлого века. Это заставляет предположить, что возможности подобных методов взлома шифров были известны специальным службам уже достаточно давно. На каждом раунде шифрования в сети Фейсталя используется ключ шифрования для передачи его на вход функции шифрования. Такие ключи называют раундовыми ключами. Всего соответственно используется шестнадцать различных раундовых ключей. Каждый такой раундовый ключ получается из исходного ключа В описании DES опубликован метод генерации таких ключей. Сама по себе функция шифрования является не сложной. В ее основе лежит правило преобразования входного блока данных. Это преобразование состоит из сложения входного блока данных с раундовым ключом и последующим преобразованием полученного результата в так называемом S-блоке. S-блок в DES представляет собой матрицу из 4-х строк и 16-и столбцов. В каждой ячейки матрицы содержится число от 0 до 15. Всего в стандарте опубликовано и используются 8 таких матриц. За время своего существования DES стал очень распространенным алгоритмом шифрования, реализованным в многочисленных системах и приложениях. Однако на сегодняшний день он уже является устаревшим алгоритмом, неспособным обеспечить требуемую стойкость. В первую очередь это связано с недостаточной длинной ключа шифрования в 56 бит, принятого в стандарте. В конце 90-х годов прошлого века компания RSA Security провела серию открытых конкурсов на его взлом. Задание конкурсов состояло в дешифровании криптограммы, опубликованной на сайте компании. Все варианты были решены с помощью атаки грубой силой, то есть путем успешного полного перебора всех возможных вариантов ключей. Ниже приводится таблица с хронологией взлома DES в рамках открытых конкурсов, проводившихся компанией RSA Security: № Дата Время взлома 1 18.06.1997 96 дней 2 23.02.1998 39 дней 3 4 17.07.1998 3 дня 19.01.1999 22 часа 15 мин. Мощность 7 млрд. ключей/сек. 34 млрд. ключей/сек. 88 млрд. ключей/сек. 245 млрд. ключей/сек.

Как видно из приведенной таблицы, во время последнего конкурса взлом DES был осуществлен менее чем за один день. После этого компания RSA Security прекратила проведение конкурсов по взлому DES. Последний взлом был осуществлен совместными усилиями двух некоммерческих организаций: Electronic Frontier Foundation (www.eff.org) и Distributed Computing Technologies, Inc. (www.distributed.net) Подбор возможных вариантов ключа осуществлялся с помощью специального компьютера, названного Deep Cracker, стоимостью $250000. Кроме того в процессе обработки ключей использовались мощности компьютеров объединенных в сети Интернет. Достигнутые результаты красноречиво свидетельствовали о необходимости принятия нового стандарта в области шифрования данных и смягчение существовавших в то время в США экспортных ограничений на криптографические продукты. Новый стандарт был принят в 2001 году и получил название Advanced Encryption Standard (AES). Этот стандарт и лежащий в его основе алгоритм рассмотрены ниже. С конца 90-х годов прошлого века, в качестве усиления существовавшего стандарта, применяется его модификация, получившая название УТройной-DESФ (Triple-DES). 6.3.5. Отечественный стандарт шифрования ГОСТ 28147-89 Алгоритм ГОСТ 28147-89 является блочным симметричным шифром и основан на архитектуре сети Фейсталя. Длина ключа составляет 256 бит. Входной блок данных составляет 64 бита. В алгоритме используется 32 раунда шифрования. На каждом раунде шифрования используется раундевый ключ, значения которых получаются из первоначального секретного ключа шифрования. Функций шифрования алгоритма ГОСТ 28147-89, использующаяся в каждом раунде шифрования имеет несложную структуру и состоит из простых операций замены и циклического сдвига. Замены осуществляются в S-блоке в специальной матрице. Для алгоритма ГОСТ 28147-89 не специфицирован конкретный вид матрицы замены. Каждый разработчик и производитель может сформировать собственную матрицу или сделать запрос в специальные службы, которые могут помочь в подготовке криптостойкой матрицы. При желании можно менять матрицу замены с течением некоторого времени. В силу того, что матрица не специфицирована ее иногда еще называют сменным ключевым элементом. В матрице восемь строк, шестнадцать столбцов и в каждой ячейке хранится четыре бита информации. Размер матрицы составляет 512 бит. Если добавить к этому размер ключа шифрования, то совокупный размер секретной информации составит 768 бит. Это дает гигантское число 2768 возможных вариантов для перебора всех значений секретной информации. Перебор подобного количества вариантов лежит далеко за пределами даже прогнозируемых мощностей вычислительной техники и совершенно недосягаем в сколько-нибудь обозримом будущем. Однако справедливости ради следует сказать, что по настоящему секретной информацией является все-таки только ключ шифрования размеров 256 бит. Структуру даже неопубликованных матриц теоретически можно определить путем анализа работы программного или аппаратного обеспечения. Также возможны попытки несанкционированного доступа к технической документации по реализации алгоритма ГОСТ 28147-89. Но даже в этом случае для полного перебора всех возможных ключей надо будет выполнить 2256 попыток. Это количество вариантов все равно остается гигантским и обеспечивает абсолютную стойкость алгоритма к атаке методом полного перебора ключей. В открытых публикациях до сих пор не было рассмотрено ни одного успешного метода взлома отечественного стандарта шифрования данных. Однако в работе [Мол02] приводятся доводы в пользу замены имеющегося стандарта новым алгоритмом. По мнению авторов, имеющийся стандарт из-за своей архитектуры не может отвечать современным требованиям к скорости преобразования данных (более 2Гбит/сек). Кроме того отмечается, что в ряде работ в течении последних нескольких лет были описаны различные потенциальные атаки касающиеся алгоритма ГОСТ 28147-89. Для стандарта ГОСТ 28147-89 определены следующие четыре режима работы: Простая замена. Это основной и самый простой режим работы алгоритма. Применяется для шифрования ключевой информации. Гаммирование. В этом режиме возможна выработка псевдослучайной гаммы с очень хорошими статистическими свойствами. Фактически использование этого режима позволяет получить потоковый шифр из блочного шифра. Применяется для шифрования данных. Гаммирование с обратной связью. Этот режим отличается от предыдущего способом получения гаммы. Очередной элемент гаммы вырабатывается в результате преобразования предыдущего блока зашифрованных данных. Данный режим иногда также называют режимом гаммирования с зацеплением блоков [Дом2000]. Каждый блок криптограммы зависит от всех предыдущих блоков открытого текста. В режимах гаммирования можно обрабатывать входные блоки данных размером меньше 8 байт. Это свойство используется для шифрования массивов данных с произвольным размером. Режим выработки имитовставки. Имитовставкой называется значение, вычисленное с использованием исходных данных и секретного ключа. С помощью имитовставки можно определить были ли сделаны изменения в информации в процессе ее передачи. Данный режим применяется для обнаружения искажений в зашифрованном массиве данных с заданной вероятностью. 6.3.6. Стандарт AES Стандарт шифрования Advanced Encryption Standard (AES) был выбран в результате открытого международного конкурса, проводимого НИСТ США. О начале конкурса было объявлено 2 января 1997 года. В результате первоначального отбора в августе 1998 года были выбраны пятнадцать алгоритмов - кандидатов. Затем еще через год, в августе 1999 года были определены пять алгоритмов - финалистов конкурса. Конкурс завершился в октябре 2000 года. Победителем в нем стал бельгийский алгоритм RIJNDAEL разработанный Винсентом Рюменом (Vincent Rijmen) и Йон Дэмен (Joan Daemen). Этот алгоритм был выбран в качестве стандарта AES. Окончательная версия стандарта была опубликована в ноябре 2001 года. Алгоритм утвержден в качестве нового федерального стандарта шифрования в США под кодом FIPS-197 и предназначен для обработки коммерческой информации и информации, не содержащей государственную тайну. Стандарт вступил в действие с 26 мая 2002 года [Зен2002]. Стандарт AES основан на архитектуре, отличной от сети Фейсталя. Авторы алгоритма назвали эту новую архитектуру УКвадратФ. Суть ее заключается в том, что исходный блок данных по байтам записывается в матрицу. Сам процесс шифрования заключается в повторяющемся выполнении различных преобразований с элементами такой матрицы, а также с ее строками и столбцами. Предложенная архитектура обладает хорошими свойствами Шенноновского рассеивания и перемешивания. В стандарте AES предусмотрено три режима работы в зависимости от длины используемого ключа. Возможные длины ключа составляют 128, 192 и 256 бит. Количество раундов шифрования зависит от используемой длины ключа, это соответственно 10, 12 или 14 раундов. Размер входного исходного блока данных и выходного блока шифротекста одинаковый и всегда составляет 128 бит. В ходе анализа алгоритма в рамках проводимого конкурса, в нем не было обнаружено каких-либо слабостей. Справедливости ради следует сказать, что это относится ко всем алгоритмам - финалистам конкурса. Все они являются стойкими алгоритмами. Однако по совокупным характеристикам производительности, удобства реализации, ресурсоемкости и другим, RIJNDAEL оказался наиболее предпочтительным в качестве универсального стандарта шифрования. К преимуществам стандарта AES относятся: высокая эффективность реализации на любых платформах;

высокая стойкость;

низкие требования к памяти;

возможность реализации на smart-картах;

быстрая процедура формирования ключа;

возможность параллелизма операций.

6.3.7. Сравнительные характеристики стандартов шифрования Ниже дается сводная таблица с характеристиками стандартов шифрования данных [Вин2001]. DES ГОСТ 2814789 64 Размер блока дан- 64 ных (бит) 256 Размер ключа 56 (бит) Сеть Фейсталя Сеть Фейсталя Архитектура 16 32 Число раундов Простая Простая Структура раунда Аддитивные Используемые опе- Аддитивные операции, за- операции, зарации мена, переста- мена, сдвиги новки, сдвиги рассмотренных AES 128 128, 192, 256 УКвадратФ 10, 12, 14 Сложная Операции конечных полях в Для того, чтобы перебрать все возможные ключи для алгоритма DES нужно выполнить около 7.2x1016 вариантов. Минимальный размер ключа в алгоритме AES составляет 128 бит. Для перебора всех возможных ключей в этом случае придется проверить уже около 3.4x1038 вариантов. Это примерно в 1021 раз больше чем в случае DES. Для перебора же всех ключей длинной в 256 бит потребуется проверить астрономическое число вариантов - около 1.1x1077 ключей. Стойкости нового стандарта шифрования AES по отношению к атакам методом полного перебора ключей, только сейчас сравнялась с отечественным стандартом ГОСТ 28147-89. В алгоритме ГОСТ 28147-89 крайне простая выработка раундовых ключей шифрования. Они берутся как составные части начального секретного ключа шифрования. В то же время, в DES и в AES используются значительно более сложные алгоритмы вычисления раундевых ключей. По сравнению с DES, алгоритм ГОСТ 28147-89 обладает большим быстродействием. Так, например, на процессорах Intel x86 реализация ГОСТ 28147-89 превосходит по быстродействию реализацию DES более чем в два раза. На процессоре Pention Pro-200 MHz предел быстродействия алгоритма ГОСТ 28147-89 составляет 8 Мбайт/сек. Ниже в таблице приведены сравнительные показатели быстродействия стандартов ГОСТ 28147-89 и AES ГОСТ 28147-89 AES 2.04 Мбайт/c 2.46 Мбайт/c Pentium 166 MHz 9.36 Мбайт/c Pentium III 433 MHz 8.30 Мбайт/c Алгоритм ГОСТ 28147-89 является более удобным для аппаратной и для программной реализации, чем DES, но менее удобным, чем AES. Стандарты ГОСТ 28147-89 и AES имеют сопоставимые значения основных характеристик. 6.3.8. Режимы использования блочных шифров Для блочных симметричных алгоритмов шифрования (АШ) определены несколько основных режимов их использования. Первоначально эти режимы относились к использованию алгоритма DES, но фактически могут быть применимы к любому блочному алгоритму. Например, некоторые из этих режимов являются аналогами режимов работы, определенных для алгоритма ГОСТ 28147-89. Выбранный режим определяет область применения блочного алгоритма шифрования. Каждый режим работы имеет свои преимущества и недостатки. Режим электронной кодовой книги. Electronic Code Book (ECB) Исходный текст разбивается на блоки. В этом режиме каждый блок поступает на вход алгоритма шифрования и преобразуется независимо один от другого. Расшифрование каждого блока также происходит независимо.

Исходный текст АШ Криптограмма Достоинства:

- простота реализации;

- возможность шифрования нескольких сообщений одним ключом без снижения стойкости;

- возможность параллельной. Недостатки:

- однозначное соответствие между блоками открытого текста и криптограммами;

- возможность повтора блоков и замены блоков в информационном пакете;

- распространение ошибки шифротекста.

Область применения:

- шифрование других ключей и вообще случайной информации;

- шифрование хранилищ данных с произвольным доступом. Режим сцепления блоков шифротекста. Cipher Block Chaining (CBC) Исходный текст разбивается на блоки. Выбирается так называемый вектор инициализации - несекретная и случайная последовательность бит, по длине равная блоку входящих данных. Первый блок исходных данных складывается с вектором инициализации. Результат сложения поступает на вход алгоритма шифрования. Полученная в результате криптограмма складывается со следующим блоком исходного текста. Результат сложения поступает на вход алгоритма шифрования и так далее.

Вектор инициализации Исходный текст Исходный текст АШ АШ Криптограмма Криптограмма Достоинства:

- сложно манипулировать открытым текстом (подмена и замена);

- одним ключом можно шифровать несколько сообщений;

- расшифрование может выполнятся параллельно. Недостатки:

- шифротекст на один блок длиннее открытого текста;

- ошибка в синхронизации является фатальной;

- распространение ошибки шифротекста;

- шифрование не может выполняться параллельно. Область применения:

- шифрование файлов и сообщений.

Режим обратной связи по шифротексту. Cipher Feed Back (CFB) В самом начале вектор инициализации непосредственно поступает на вход алгоритма шифрования. Исходный текст состоит из блоков дины k бит, причем k n, где n - длина входного блока данных. Каждый блок исходного текста складывается с частью последовательности длиной k бит, полученной на выходе из алгоритма шифрования. Результатом сложения является блок шифротекста. Значение последовательности, полученной на выходе из алгоритма шифрования, сдвигается на k бит влево. Самые правые k бит последовательности занимают биты криптограммы. Вновь сформированная таким образом входная последовательность данных поступает на вход алгоритма шифрования и так далее.

Вектор инициализации АШ n-k k АШ n-k k n-k k k Исходный текст k Криптограмма k k Достоинства:

- размер блока данных может отличаться от стандартного размера;

- сложно манипулировать открытым текстом;

- возможность шифрования одним ключом нескольких сообщений. Недостатки:

- обязательная уникальность (но не секретность) вектора инициализации;

- быстрое распространение ошибки шифротекста. Область применения:

- посимвольное шифрование потока данных (передача данных между сервером и клиентом в процессе аутентификации).

Режим обратной связи по выходу. Output Feed Back (OFB) Данный режим отличается от предыдущего тем, что часть вновь формируемой входной последовательности заполняется k битами не криптограммы, а выходной последовательности, полученной на предыдущем шаге. Это отличие позволяет заранее полностью формировать гамму шифра. Потом эта гамма может быть использована для шифрования открытого текста, например как это происходит в потоковых шифрах.

Сдвиг Вектор инициализации АШ n-k k АШ n-k k n-k k k Исходный текст k Криптограмма k k Достоинства:

- ошибки шифротекста не распространяются;

- возможность предварительной подготовки гаммы;

- размер блока данных может отличаться от стандартного размера. Недостатки:

- ошибка синхронизации является фатальной;

- легко манипулировать открытым текстом;

- обязательная уникальность (но не секретность) вектора инициализации. Область применения:

- высокоскоростные синхронные системы (спутниковая связь);

- вообще в системах, работающих в среде с высокой вероятностью появления ошибок в процессе передачи информации.

Дополнительные режимы шифрования Существует также ряд дополнительных режимов шифрования: Х Режим сцепления блоков с распространением ошибок (PCBC). Х Режим сцепления блоков шифротекста с контрольной суммой (CBCC). Х Режим нелинейной обратной связи по выходу (OFBNLF). Х Сцепление блоков открытого текста (PBC). Х Режим обратной связи по открытому тексту (PFB). Х Сцепления блоков текста по различиям открытого текста (CBCPD). 6.4. Функции хэширования Функции хэширования или как еще иногда говорят хэш-функцией, называется некоторое преобразование исходного текста в последовательность фиксированной длины. Такое преобразование должно обладать следующими свойствами:

- малейшее изменение в исходном тексте приводит к существеннейшим изменениям выходной последовательности;

- по значению выходной последовательности нельзя восстановить исходный текст;

- нельзя подобрать два разных исходных текста, которые имели бы одинаковые значения хэш-функции. Основные области применения функций хэширования:

- защиты паролей;

- сжатие сообщения перед процедурой генерации электронной цифровой подписи (подписывается не само сообщение, а его хэшзначение);

- вычисление контрольных сумм. В Российской Федерации принят и действует отечественный стандарт на функцию хэширования ГОСТ Р 34.11-94. 6.5. Алгоритмы с открытыми ключами Термин Уоткрытые ключиФ появился в криптографии после того, как два американских ученых Мартин Хеллман (Martin Hellman), Уитфилд Диффи (Whitfield Diffie) опубликовали свою знаменитую статью УНовые направления в криптографииУ в 1976 году [Dif76].

6.5.1. Основные принципы Диффи и Хеллман сформулировали оосновные принципы построения криптографических систем с открытыми ключами:

- вычисление пары открытого и закрытого (E, D) ключей на основе некоторого начального условия должно быть простым;

- зная открытый ключ E и открытый текст M, легко вычислить значение криптограммы C;

- зная секретный ключ D и значение криптограммы C, можно легко расшифровать сообщение и получить открытый текст M;

- зная только открытый ключ E, невозможно вычислить парный ему секретный ключ D;

- зная только значение открытого ключа E и криптограмму C невозможно восстановить открытый текст М. Односторонние функции В основе алгоритмов с открытыми ключами лежит понятие односторонних функций с потайным ходом. У таких функций очень легко вычислить их значение по известному аргументу, но совершенно невозможно определить аргумент, если известно только значению функции. Определить аргумент можно, если известна некоторая секретная дополнительная информация, называемая потайным ходом. Таким образом, любой может вычислить значение односторонней функции, то есть выполнить процедуру шифрования. Обратную процедуру расшифрования и определения исходного аргумента функции, может выполнить только тот, кто знает секретную информацию, то есть ключ расшифрования. За годы развития криптографии с открытыми ключами предлагались различные варианты односторонних функций, на основе которых можно было бы разрабатывать криптоалгоритмы. Однако с течением времени выделились следующие три основные задачи: Х факторизация;

Х дискретное логарифмирование в конечном поле;

Х дискретное логарифмирование в группе точек эллиптической кривой (ЭК), определенной в конечном поле. Факторизация Легко вычислить Z=X*Y, но сложно найти X и Y из Z. Дискретное логарифмирование Легко вычислить Z=Yx (mod n), но сложно найти Y из Z и x. Дискретное логарифмирование на эллиптической кривой Легко вычислить точку Z=x*Y, но сложно найти x из Y из Z.

6.5.2. Алгоритм шифрования RSA В 1978 г. была предложена и опубликована наиболее известная и распространенная на сегодняшний день криптосистема с открытыми ключами RSA. Название системы образовано по первым буквам ее разработчиков Ривеста, Шамира и Адлемана (Rivest, Shamir, Adleman). Алгоритм RSA может использоваться для шифрования данных и для электронной цифровой подписи. Рассмотрим схему шифрования RSA: Генерация параметров p, q - большие простые числа n=p*q - модуль шифрования (n)=(p-1)(q-1) - функция Эйлера Открытый ключ e выбирается из интервала 1

6.6. Электронная цифровая подпись Электронная цифровая подпись - это реквизит электронного документа, предназначенный для защиты данного электронного документа от подделки, полученный в результате криптографического преобразования информации с использованием закрытого ключа электронной цифровой подписи и позволяющий идентифицировать владельца сертификата ключа подписи, а также установить отсутствие искажения информации в электронном документе. 6.6.1. Основные операции с ЭЦП Общее правило создания ЭЦП: От значения электронного документа M вычисляется его хэшзначение (или дайджест) m. На вход алгоритма электронной цифровой подписи поступают значение дайджеста электронного документа и секретный ключ D подписывающего. На выходе алгоритм F дает значение электронной цифровой подписи S, сделанной для документа M. Значение электронной цифровой подписи S посылается вместе с текстом электронного документа M в одном информационном пакете.

Исходное сообщение M Дайджест m Секретный ключ подписи D F Исходное сообщение M Подпись S Общее правило верификации ЭЦП. От значения принятого электронного документа M вычисляется его хэш-значение (или дайджест) m. На вход алгоритма электронной цифровой подписи поступают значение дайджеста электронного документа и открытый ключ E автора подписи. На выходе алгоритм F дает значение электронной цифровой подписи S`, сделанной для документа M. Полученное значение S` сравнивается с принятым значением S. Если эти значения совпадают, то процедура верификации прошла успешно.

Исходное сообщение M Подпись S Дайджест m F Подпись SТ Открытый ключ подписи E Анализ результатов верификации ЭЦП. Если процедура верификации дала положительный результат, то это означает, что документ, для которого была вычислена ЭЦП, не был изменен и авторство документа подтверждено. Если процедура верификации дала отрицательный результат, т.е. значения принятой и вычисленной подписей не совпадают, то возможны следующие ситуации: В электронный документ были внесены несанкционированные изменения. Подпись для электронного документа была подделана. Автором документа является другой абонент. Если процедура верификации дала отрицательный результат, то авторство, подлинность и целостность электронного документа не могут быть гарантированы. 6.6.2. Математические основы криптографии на эллиптических кривых Использование эллиптических кривых для криптографии было независимо предложено Нилом Коблицем (Neal Koblitz) и Виктором Миллером (Victor Miller) в середине 80-х годов прошлого века [Kob87, Mil85]. На сегодняшний день это одно из самых перспективных направлений развития криптографии с открытыми ключами. Эллиптической кривой E, определенной в конечном поле p, где

3, называется множество точек с координатами ( x, y), удовлетворяющих уравнению:

y 2 = x 3 + ax + b a, b F 3 F, p и 4a + 27b 0 вместе со специальной точкой O, называемой где точкой бесконечности или, как еще иногда говорят, нулевой точкой [Коб2001]. В группе точек на эллиптической кривой точка бесконечности O нужна для обеспечения существования обратного элемента в группе и необходимых свойств операций.

Рассмотрим основные операции над точками и их геометрическую интерпретацию на примере обычных плоских эллиптических кривых, т.е. кривых определенных над полем вещественных чисел. Полученные в результате аналитические формулы для рассматриваемых операций являются действительными для эллиптических кривых (5.1), определенных над любым полем. Точкой, обратной к данной точке P( x, y ), называется точка с координатами ( x, y) и обозначается как ( P), т.е. точка, зеркально отраженная от оси абсцисс. Геометрический смысл операции сложения двух точек P, Q E на эллиптической кривой (рис.NN) заключается в том, что через них проводится секущая, пересекающая кривую в третьей точке. Обратная точка для точки пересечения дает результат операции сложения.

Если некоторая точка эллиптической кривой P E складывается сама с собой (рис.5.2), то такая процедура называется удвоением точки. Геометрический смысл подобной операции заключается в том, что через точку P проводится секущая линия, которая пересекает кривую в некоторой точке. Обратная точка к точке пересечения и будет результатом удвоения точки P.

Операции сложения и удвоения точек имеют аналитические выражения. Сложение точек. Пусть P( x1, y1 ), Q( x 2, y 2 ) E - две точки, для которых x1 x2. Тогда P + Q = R( x3, y3 ), где y 3 = ( x1 x 3 ) y1, x 3 = 2 x1 x 2, и = y 2 y1 x 2 x Удвоение точки. Пусть точка P( x1, y1 ) E, для которой y1 0 (если y1 = 0, тогда P = P, т.е. 2 P = O ), тогда 2 P = ( x3, y 3 ), где y 3 = ( x1 x 3 ) y x 3 = 2 2x1,.

, и. Точка бесконечности. Геометрический смысл точки бесконечности заключается в том, что в ней пересекаются все прямые, параллельные оси ординат. Рассмотрим операции с участием точки бесконечности O и некоторой точки P E : 1) O + O = O ;

2) P + O = O + P = P ;

3) P + ( P) = O. Количество точек, принадлежащих эллиптической кривой называется рангом кривой и обозначается буквой N. Рангом точки P E называется такое минимальное целое положительное число n, что nP = O. Ранг точки определяет порядок группы точек эллиптической кривой, с которыми осуществляются криптографические преобразования. Операция сложения двух точек, принадлежащих эллиптической кривой, определенной на конечном поле, является аналогом операции умножения двух чисел в конечном поле. Операция умножения точки на некоторое число k является аналогом операции возведения в степень k. Операцию умножения точки на число можно представить как процесс сложения точки самой с собой нужное число раз. Например: 2P = P + P, 2 3 x1 + a = 2 y 3P = 2 P + P и т.д.

Однако существует способ быстрого умножения точки на число, который требует O(log k log p) количества операций для умножения точки P E, определенной в конечном поле F p на некоторое число k. Этот метод аналогичен алгоритму быстрого возведения в степень для элементов конечного поля, действительно: 100 P = 2(2( P + 2(2(2( P + 2 P))))). В группе точек, принадлежащих эллиптической кривой существует задача, имеющая экспоненциальный уровень сложности и получившая название задачи дискретного логарифмирования на эллиптической кривой. Суть ее заключается в том, что при известных точках P, Q E, вычислительно трудно найти такое число x (если оно существует), что Q = xP.

Надежность криптографических систем на эллиптических кривых основана на сложности решения этой задачи. Приведем оценки необходимой вычислительной мощности для нахождения дискретного логарифма в группе точек эллиптической кривой [Jon01]:

163 Модуль кривой p, бит Порядок группы точек кривой 160 n, бит Требуемая вычислительная 9,6*1011 мощность (M/Y) 191 186 7,9*1015 239 234 359 354 431 1,6*1023 1,5*1041 Задача дискретного логарифмирования в группе точек эллиптической кривой является более трудной, чем задача дискретного логарифмирования в конечном поле. В этом заключается основная причина преимущества использования криптосистем на эллиптических кривых, которые обеспечивают такой же уровень стойкости при использовании чисел существенно меньшего размера по сравнению с более традиционными криптосистемами, надежность которых заключается в сложности задачи факторизации или дискретного логарифмирования в конечном поле. Соответственно при использовании чисел одинаковой размерности уровень стойкости криптосистем на эллиптических кривых значительно выше. На сегодняшний день лучший из известных алгоритмов - -метод Полларда, дает следующую оценку для решения задачи дискретного логарифмирования в группе точек эллиптической кривой: ( n / 2 ) / m, где m - количество процессоров для параллельных вычислений, а n - порядок группы точек эллиптической кривой [Esc99]. С помощью этого метода в 2000 г. была решена задача дискретного логарифмирования в группе точек эллиптической кривой с порядком в 108 бит. В 2002 году была решена задача для эллиптической кривой с порядком в 109 бит. Для сравнения отметим, что криптосистема, использующая преобразования в группе точек эллиптической кривой с порядком в 160 бит, эквивалентна по стойкости криптосистеме RSA с модулем шифрования в 1024 бита. 6.6.3. Стандарт ГОСТ Р 34.10-2001 Стандарт ГОСТ Р 34.10-2001 является отечественным стандартом на алгоритм электронной цифровой подписи. Алгоритм относится к классу криптографических алгоритмов с открытыми ключами и основан на использовании преобразований в группе точек на эллиптической кривой, определенной в конечном поле [ГОСТ01]. Стандарт принят в 2001 году и введен в действие с июля 2002 года. Стандарт определяет процессы формирования и проверки ЭЦП. Новый отечественный стандарт ГОСТ Р 34.10-2001 совместим с соответствующими международными стандартами ИСО в области защиты информации, механизмов формирования ЭЦП и управления сертификатами. Новый алгоритм ЭЦП облада ет большим уровнем стойкости по сравнению с алгоритмом, определенным в старом стандарте ГОСТ Р 34.10-94. Стойкость алгоритма основана на сложности решения задачи дискретного логарифмирования в группе точек на эллиптической кривой и на стойкости используемой хэш-функции. В качестве хэш-функции используется отечественный стандарт ГОСТ Р 34.11-94. Рекомендуется применять новый стандарт при разработке новых систем и приложений, а также при модификации уже существующих решений. Значение цифровой подписи, поучаемое в результате выполнения алгоритма, представляет собой двоичную последовательность, длинной 512 бит. Модулем эллиптической кривой, используемым при формировании подписи, является число

2255. Значение порядка циклической подгруппы группы точек на эллиптической кривой лежит в интервале от 2254 до 2256. Ниже приводится подробная структура алгоритма: Генерация ключей: Выбирается простое число p такое, что

2255, являющееся модулем эллиптической кривой. Выбираются такие коэффициенты a и b эллиптической кривой E вида y 2 = x 3 + ax + b, что и 1 b < p. Пусть N - порядок группы точек эллиптической кривой. Выбирается точка P, ранг которой равен q, т.е. qP = O. При этом для числа q должны выполнятся следующие условия: q простое число;

2 254 < q < 2 1 a < p 4a 3 + 27b 2 0,, где n 1 Выбирается некоторое число d, удовлетворяющее условию: 0

секретный ключ подписи: d. Подпись сообщения: Пусть M - сообщение, для которого нужно вычислить значение электронной цифровой подписи;

h - функция хеширования. Определяется такое значение e, что e = h( M ) mod q, если e = 0, то берется e = 1.

N = nq Генерируется случайное целое число вию:

0

k, удовлетворяющее усло Вычисляется точка C = kP с координатами ( xc, y c ). Далее определяется такое значение r, что r = xc mod q, если r = 0, то необходимо сгенерировать другое значение числа k и повторить вычисление значения r. Вычисляется такое значение s, что s = (rd + ke) mod q, если s = 0, то также необходимо заново сгенерировать значение числа k и повторить вычисления. Значение ЭЦП: пара чисел (r, s) являются электронной цифровой подписью для сообщения M. Верификация (проверка цифровой подписи): Вычисляется такое значение e, что e = h( M ) mod q, если e = 0, то берется e = 1. Вычисляется такое значение v, что v = e 1 mod q.

Вычисляются два таких значения z z 2 = rv(mod q).

z1 = sv(mod q), и z2, что Вычисляется такая точка эллиптической кривой C ( xc, y c ), что C = z1 P + z 2 Q. Вычисляется такое значение R, что R = x c mod q. Если значение R = r, то процедура верификации прошла успешно и подпись считается верной. В противном случае подпись не принимается. Рассмотрим конкретный пример вычисления и проверки ЭЦП. В примере показаны вычисления для чисел небольшого размера. В связи с этим используются некоторые упрощения условий, накладываемых на стандарт. Генерация параметров: Пусть модуль эллиптической кривой p = 1021 Пусть коэффициенты эллиптической кривой a = 1, b = 1. Выберем точку P = (752, 453), принадлежащую кривой. Число q=521 является рангом точки P. Случайным образом выбираем уникальное число d. Пусть Вычисляем значение точки Q = dP : (752, 453) * 111 = (272, 824) Имеем Q = (272, 824) d = 111.

Подпись сообщения: Пусть числовой формой исходного сообщения является число m=240 Случайным образом выбираем число k Пусть k = 211. Вычисляем значение точки C = kP (752, 453) * 211 = (787, 220) Имеем С = (787, 220) Координата x точки С равна 787 Определяем число r r = x mod q = 787 mod 521= 266, Определяем число s s = (ek + dr ) mod q = (240*211 + 111*266) mod 521 = 453. Имеем s = 453 Подпись для сообщения m: ( r = 266, s = 453).

r Проверка подписи сообщения: Вычисляем необходимые значения:

v = e 1 mod q = v= 1 mod q e = (1/240) mod 521 = Имеем v = 432 z1 = sv mod q z1 = 453 * 432 mod 521 = 321. Имеем z1=321 z 2 = rv mod q z2 = ((0-266) mod q * 432) mod 521 = 229. Имеем z2=229 C = z1 P + z 2 Q = ( x0, y 0 ) = (683, 384) + (864, 236) = (787, 220). Вычисляем значение R R = xc mod q R = 787 mod 521 = 266. Имеем R = 266 = r. Процедура верификации прошла успешно. Подпись верна. 6.6.4. Алгоритм ECDSA Алгоритм ECDSA (Elliptic Curve Digital Signature Algorithm) определяет правила формирования и проверки электронной цифровой подписи. Также как и стандарт ГОСТ Р 34.10-2001, он основан на использовании криптографии на эллиптических кривых. Алгоритм ECDSA входит в состав стандартов ANSI X9.62, IEEE P1363, ISO 14888-3-99, а также является стандартом электронной цифровой подписи в США под кодом FIPS 186-2. Ожидается, что этот стандарт должен заменить собой предыдущий стандарт DSA.

6.6.5. Стандарты ГОСТ Р 34.10-94 и DSA Данные стандарты являются предыдущими версиями соответственно отечественного и американского стандартов на алгоритмы электронной цифровой подписи. Эти алгоритмы имеют схожую структуру и отличаются только незначительными вариациями в формулах для вычисления подписи и ее верификации. Стойкость алгоритмов основана на сложности решения задачи дискретного логарифмирования в конечном поле. 6.7. Защита электронных транзакций 6.7.1. Протокол SSL Протокол Secure Socket Layer (SSL) обеспечивает создание защищенного канала связи между абонентами сети и передачу данных в зашифрованном виде. В частном случае это может быть защита соединения между WEB сервером и клиентом. Протокол первоначально был разработан компанией Netscape в 1994 году. В настоящее время данный протокол получил очень широкое распространение. Существует несколько версий протокола SSL (1, 2 и 3). В 1999 году вышел стандарт Transport Layer Security (TLS) основанный на версии 3 протокола SSL. Протокол TLS описан в документе RFC 2246 УThe TLS Protocol. Version 1.0Ф. Между протоколами TLS и последней версией SSL есть ряд небольших отличий, но в целом они очень похожи. Протокол SSL поддерживается всеми наиболее известными Интернет браузерами и серверами. Например, когда пользователь заходит на WEB сайт, обмен данными с которым защищен по протоколу SSL, то внизу приложения Интернет браузера появляется изображение замочка:

Кроме того, в навигационной строке Интернет браузера может автоматически измениться наименование протокола с HTTP на HTTPS (Secure HTTP). Последняя аббревиатура означает, что установлено защищенное соединение и весь обмен данными шифруется по протоколу SSL. Протокол SSL является протоколом транспортного уровня. Для протоколов прикладного уровня его работа остается незаметной. Это означает, что при разработке приложений, нет необходимости специальным образом заботиться о поддержке протокола. Его реализация уже встроена в коммуникационное программное обеспечение. В рамках протокола SSL поддерживается целый ряд криптографических алгоритмов и стандартов, включая алгоритмы RSA, DSS, Диффи-Хэллмана и другие, всего несколько десятков различных алгоритмов. Протокол SSL состоит из подчиненных протоколов аутентификации, шифрования, установления соединений и других. Ниже показана схема расположения протокола SSL в стеке сетевых протоколов: Протоколы прикладного уровня Протокол изме- Протокол изПротокол квинения парамет- вещения SSL тирования SSL (Handshake ров шифрования (Alert Protocol) Protocol) SSL (Change Cipher Spec Protocol) Протокол записи SSL (SSL Record Protocol) TCP IP Протокол HTTP Протокол квитирования. Отвечает за начало работы, аутентификацию и согласование криптографических параметров Протокол изменения параметров шифрования. Обновляет комплект используемых криптографических алгоритмов Протокол извещения. Передает извещения (предупреждения и ошибки) о работе протокола Протокол записи. Обеспечивает защищенный информационный обмен и целостность сообщений. Данный протокол отвечает за шифрования трафика между клиентом и сервером. Протокол SSL обеспечивает режимы односторонней и двусторонней аутентификации абонентов. Это обязательная аутентификация сервера и опциональная аутентификация клиента. Следует сказать, что при использовании SSL данные защищаются только на этапе их передачи от открытым сетям. Как только данные получает один из абонентов, они снова оказываются в незащищенном виде. Этому следует уделять повышенное внимание при анализе уровня безопасности той или иной системы. В любом случае не рекомендуется хранить важные данные на серверах, доступных из Интернет. 6.7.2. Протокол SET Протокол Secure Electronic Transaction (SET) предназначен для защиты электронных платежей в Интернет с помощью платежных карточек. Спецификации SET были разработаны по инициативе MasterCard и Visa International в 1997 году. Протокол SET является протоколом верхнего уровня. Ниже представлен общий стек протоколов:

SET HTTP SSL / TLS TCP IP Расположение SET означает, что его реализация не должна зависеть от реализации протоколов нижнего уровня. Функциональные возможности протокола SET: Обеспечение конфиденциальности информации о заказе и платежной информации;

Аутентификация владельца кредитной карты;

Аутентификация продавца или поставщика услуг;

Гарантия целостности передаваемых данных;

Независимость от протоколов нижнего уровня;

В протоколе SET имеются следующие основные участники: Покупатель;

Продавец;

Центр сертификации;

Шлюз платежной системы;

Банк;

Операционный центр.

Краткое описание последовательности действий: 1.Покупатель открывает карточный счет. 2.Покупатель и продавец получают сертификаты. 3.Покупатель оформляет заявку.

4.Продавец выдает бланк заказа и свой сертификат. 5.Покупатель отправляет информацию о заказе (ЗИ), платежную информацию (ПИ) и свой сертификат. 6.Продавец запрашивает авторизацию платежа. 7.Продавец подтверждает заказ и выполняет свои обязательства. 8.Продавец получает деньги. Следует заметить, что использование протокола SET не обеспечивает анонимности покупателей. Анонимность электронных платежей может быть реализована только с помощью протоколов цифровых денег. 6.8. Управление ключами Применение методов криптографии с открытыми ключами позволяет решать проблему распределения ключей между абонентами, в том числе и между пользователями открытых глобальных сетей. В случае использования только симметричных методов преобразования информации, в сети из N абонентов надо было бы обеспечить N(N-1)/2 каналов связи для передачи секретных ключей.

Так для того, чтобы всего восемь абонентов смогли каждый с каждый обмениваться секретными сообщениями, необходимо уже двадцать восемь раз передавать ключ. Для тысячи абонентов количество необходимых связей достигло бы уже полумиллиона. Использование открытых ключей позволяет эффективно решать проблему распределения ключей. Все открытые ключи хранятся в одном доверенном центре распределения ключей. Каждый отправитель сообщения делает запрос в такой центр на предоставление ему открытого ключа получателя сообщения. ЦРК высылает отправителю сертификат на открытый ключ получателя.

ЦР Сертификат помимо открытого ключа и имени получателя может содержать различную дополнительную информацию. Существуют специальные стандарты, определяющие формат сертификатов. Сертификаты необходимы для того, чтобы отправители сообщений были уверены в том, что они посылают данные именно тому получателю, которому они предназначены. Таким образом, центры управления сертификатами решают важнейшую задачу обеспечения надежности защищенного информационного обмена. 6.8.1. Инфраструктура открытых ключей В простейшем случае открытые ключи могут быть опубликованы в газете, выложены на сервере в Интернет, отправлены по почте или распространены любым другим способом. Однако для обеспечения действительно надежной системы информационного обмена с открытыми ключами необходимо использование услуг специальных центров, занимающихся управлением ключами и сертификатами. Такие центры составляют основу инфраструктуры открытых ключей (ИОК). ИОК может быть использована в приложениях электронной почты, электронной коммерции, в WEB приложениях, при построении частных виртуальных сетей (VPN). На российском рынке присутствуют соответствующие продукты ряда отечественных и зарубежных компаний, среди которых можно отметить следующие. 6.8.2. Обзор существующих решений Удостоверяющий центр УКриптоПро УЦФ Российская компания УКриптоПроФ (www.cryptopro.ru) разработала полный комплекс мер для реализации ИОК с использование отечественных криптографических стандартов. Удостоверяющий центр УКриптоПро УЦФ представляет собой комплекс программных средств, разработанный на основе служб сертификации операционной системы Windows 2000 Server. Основные функции выполняемые с помощью КриптоПро УЦ: регистрация пользователей;

изготовление сертификатов открытых ключей;

ведение реестра сертификатов;

управление сертификатами;

управление личными сертификатами и предоставление владельцам сертификатов средств для генерации ключей. Электронные сертификаты пользователей формируются в соответствии с рекомендациями X.509 и RFC 2459. Использование сертификатов позволяет заверять соответствие открытого ключа определенному пользователю с помощью электронной цифровой подписи (ЭЦП). ЭЦП может формироваться в соответствии с отечественными стандартами ГОСТ Р 34.10-94 и ГОСТ Р 34.10-2001. Для реализации криптографических преобразований используется разработанное компанией средство криптографической защиты информации (СКЗИ) КриптоПро CSP. Этот модуль реализован в соответствии с криптографическим интерфейсом фирмы Microsoft - Cryptographic Service Provider (CSP). СКЗИ КриптоПро CSP имеет сертификаты, свидетельствующие, что система соответствует российским стандартам и требованиям к стойкости для криптографической обработки информации, не содержащей государственную тайну. Реализация СКЗИ КриптоПро CSP в соответствии с открытым стандартом фирмы Microsoft позволяет использовать этот продукт в составе стандартного программного обеспечения от Microsoft и других компаний. Также возможно встраивать СКЗИ КриптоПро CSP во вновь разрабатываемые программные продукты. Для защиты конфиденциальной информации в процессе ее передачи по открытым сетям используется протокол TLS. Компанией выпущен продукт КриптоПро TLS, который является программным компонентом, реализующим сетевой протокол в соответствии с рекомендациями RFC2246 и российскими криптографическими стандартами. КриптоПро TLS обеспечивает двустороннюю и одностороннюю аутентификацию приложений при их взаимодействии по сети. Также обеспечивается шифрование данных, передаваемых в сетевом соединении. В своей работе КриптоПро TLS использует возможности СКЗИ КриптоПро CSP для выполнения криптографических преобразований. VCERT PKI Совместная разработка двух компаний ЗАО УМО ПНИЭИФ (www.security.ru) и ООО УВАЛИДАТАФ (www.x509.ru). Система VCERT PKI является многокомпонентной системой, использующей ИОК для обеспечения авторства электронных документов, на основе использования российских криптографических стандартов и международных рекомендаций.

ЛАН Крипто Компания УЛАН КриптоФ (www.lancrypto.com) разработала и предлагает продукты УЦентр СертификацииФ (ЦС) и УЦентр РегистрацииФ (ЦР). Данные решения предназначены для управления сертификатами пользователей. ЦС отвечает за выдачу сертификатов, гарантию их подлинности, ведет списки отозванных и действующих сертификатов. ЦР предназначен для взаимодействия с конечными пользователями, осуществляет прием и регистрацию заявок, проверку подлинности представленных данных. На основе решений компании УЛАН КриптоФ возможно развертывание крупной сетевой инфраструктуры с поддержкой управления криптографическими ключами. UniCERT Продукт компании Baltimore Technologies (www.baltimore.com), представляющие решение для построения ИОК. Подробную информацию о продукте можно получить в НИП УИнформзащитаФ (www.infosec.ru), официального партнера компании Baltimore Technologies в Роcсии. Система поддерживает построение ИОК как в рамках небольшой компании, так и в случае существования большой сети удаленных филиалов. RSA Keon RSA Keon - это продукт компании RSA Security (www.rsa.com) реализующий ИОК и обладающий большой функциональностью. RSA Keon 6.5 включат в себя ряд составляющих компонент: центр сертификации, центр безопасности, клиентский модуль для настольных систем, модуль WEB регистрации и модуль контроля WEB соединений. Особенностью RSA Keon является возможность хранения и обработки сертификатов открытых ключей сторонних производителей, совместимых со стандартом X.509, в частности Entrust и Baltimore Technology. Entrust Authority Компания Entrust Technologies (www.entrust.com) предлагает проработанные и многофункциональные решения в области ИОК и защищенного информационного обмена. Компания предложила первые коммерческие версии своей реализации ИОК еще в 1994 году. Продукт Entrust Authority представляют собой одну из самых мощных в мире систем для управления сертификатами открытых ключей. Система работает с несколькими операционными системами. Особое внимание в системе уделено вопросам масштабируемости, так один центр сертификации может поддерживать до нескольких миллионов пользователей и произвольное количество администратор. Кроме того на одном сервере может работать несколько отдельных центров сертификации.

Сервис-центр SSL - cертификатов Компания РБК (www.rbc.ru) предоставляет услуги по получению сертификатов компании Thawte (VeriSign) для протокола SSL. Существует несколько видов сертификатов: серверные сертификаты;

суперсертификаты;

персональные сертификаты;

сертификаты разработчика. Обычные серверные сертификаты позволяют гарантировать информацию от искажений и подделки в процессе ее передачи по открытым сетям. Суперсертификаты обеспечивают стойкое шифрование с длиной ключа в 128 бит. Взлом такого шифра требует намного больше времени, чем срок действия сертификата. Персональные сертификаты могут быть использованы для защиты электронной почты. Сертификаты разработчика используются для защиты программного обеспечения от изменения в процессе его передачи по сети. Для получения нужных сертификатов необходимо сгенерировать запрос на получение сертификата и заполнить специальную форму заявки на WEB сервере компании Thawte. После успешного завершения этого этапа, следует предоставить в компанию РБК нотариально заверенную копию российского свидетельства о регистрации компании. Оплату сертификатов можно производить как в on-line режиме, так и рублевым перечислением через РБК. Сертификаты выдаются на определенный домен. Администратором домена должна быть именно та компания, которая сделала заявку на сертификат. Более подробная информация о процедуре получения SSL сертификатов представлена на сервере сервисного центра. Наличие достаточно жесткого контроля служит гарантией широкого признания и доверия к сертификатам SSL компании Thawte (VeriSign). Возможен вариант, когда компания может управлять своими сертификатами без ежедневного обращения к Thawte. Такая необходимость может потребоваться в том случае, если организация управляет сотнями различных сертификатов на принадлежащих ей серверам. В это случае, можно воспользоваться сервисом диспетчера PKI для SSL сертификатов. Этот сервис расширяет полномочия организации. Она вносится в специальный список и после этого самостоятельно может выделять и отзывать сертификаты на своих серверах. 6.8.3. Протокол распространения ключей Диффи-Хеллмана Метода распределения ключей Диффи-Хэллмана позволяет двум и более абонентам получить общий секретный сеансовый ключ. С помощью этого ключа можно осуществлять передачу зашифрованных сооб щений или использовать его для шифрования и передачи других ключей. Общий секретный ключ по методу Диффи-Хэллмана вырабатывается в процессе диалога между абонентами. Существуют варианты метода для преобразований, как в конечном поле, так и в группе точек эллиптической кривой. Данный метод требует особого внимания к аутентификации абонентов. Существуют возможности атаки на соответствующий протокол генерации общего секретного ключа, связанные с тем, что злоумышленник может внедрится в процесс передачи данных. Такой тип атак называется Учеловек-по-серединеФ (man-in-the-middle). Для избежания подобных атак необходимо принимать дополнительные меры. В оригинальном виде протокол Диффи-Хеллмана является незащищенным. В зарубежной литературе протокол Диффи-Хеллмана часто обозначается аббревиатурой DH. Вариант протокола, основанный на использовании криптографических преобразований в группе точек эллиптической кривой, обозначается как ECDH. В 1995 году на базе протокола Диффи-Хеллмана был предложен новый протокол, получивший название MQV по первым буквам фамилий его авторов Menezes - Qu Vanstone. Протокол был модифицирован в 1998 году [Low98]. Для случая эллиптических кривых используется обозначение ECMQV. Протокол MQV является более защищенным к возможным махинациям с подменой ключей, по сравнению с оригинальным протоколом ДиффиХеллмана. Данные протоколы входят в стандарты IEEE P1363, ANSI X9.42 и ANSI X9.63. 6.9. Электронные платежи с помощью цифровых денег Центральным понятием протоколов электронных платежей с помощью цифровых денег протоколов являются понятия Уцифрового конвертаФ и подписи УвслепуюФ. Схемы подписи УвслепуюФ позволяют получать документы, подписанные претендентом, который не знает содержания самих этих документов. Если претендентом на выставление подписи является банк, а подписываемые им документы - это чеки на предъявителя, то для нужд финансовой криптографии такие подписи обеспечивают два важных аспекта: подпись банка на чеке является правильной и служит свидетельством того, что именно он заверил чек;

такая подпись убедит банк в том, что именно он заверил этот чек, когда тот впоследствии будет ему предъявлен;

разумеется, подпись УвслепуюФ обладает всеми остальными свойствами электронной цифровой подписи;

банк не сможет связать заверенный им чек с моментом его подписания;

даже если предположить, что банк фиксирует все подписи УвслепуюФ, по предъявленному чеку он не сможет определить, кто и когда обратился к нему с просьбой подписать данный конкретный чек.

Pages:     | 1 | 2 | 3 |    Книги, научные публикации