Принципы использования цифровой подписи в системах электронных денег

Также и много других собрать бы я мог доказательств,

Чтобы ещё подтвердить несомненность моих рассуждений;

Но и следов, что я здесь лишь наметил, довольно,

Чтобы ты чутким умом доследовал все остальное.

Римский поэт и философ
Лукреций

Дугой подход к защите электронных денег от подделки состоит в использовании предложенной в середине 79-х гг. ХХ в. идеи шифрования с разделяемыми ключами – асимметричного шифрования. Такую схему можно сравнить с сейфом, который запирается одним ключом, а отпирается другим, и при этом по одному ключу невозможно восстановить другой. Точнее, такое восстановление можно сделать сколь угодно трудоёмким. Банк, создав обязательство (электронную купюру), шифрует его на своем закрытом ключе. Продавец, получив файл, выдаваемый плательщиком за электронную купюру, может проверить (расшифровать) её открытым ключом банка-эмитента. Успешная проверка гарантирует, что файл создан банком-эмитентом.

Такая схема автоматически обеспечивает свойство неизменяемости – купюру невозможно подделать, иначе как расшифровав её, изменив и зашифровав снова, что аналогично изготовлению поддельной купюры.

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

Для пояснения вышесказанного сделаем небольшой экскурс в историю криптографии.

Идея ЭЦП как законного средства подтверждения подлинности и авторства электронного документа была наиболее полно сформулирована в 1976 году в статье двух молодых американских математиков из Стэндфордского университета Уитфилда Диффи и Мартина Хеллмана.

Суть её состоит в том, что для гарантированного подтверждения подлинности информации, содержащейся в электронном документе, а также для возможности неопровержимо доказать третьей стороне (партнёру, арбитру, суду и т.п.), что электронный документ был составлен именно конкретным лицом или по его поручению, автором документа используется некоторое число (называемое обычно индивидуальным ключом, закрытым ключом, паролем и т.п.). Каждый раз для «цифрового подписывания» производится математическая операция над закрытым ключом и содержимым конкретного электронного документа. Результат такой операции – другое число, называемое цифровой подписью данного автора под данным конкретным документом.

Для практического воплощения этой идеи требовалось найти ответы на следующие вопросы:

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

- как гарантировать невозможность восстановления закрытого ключа пользователя по открытому ключу и любому числу подписанных с его помощью электронных документов?

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

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

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

Основная идея Диффи и Хеллмана состояла в том, чтобы искать ответы на первые три из списка вопросов (математические) по следующей схеме:

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

- процедура вычисления открытого ключа из ключа закрытого широко известна и легко реализуема;

- процедуры подписывания и проверки подписи широко известны, в каждой из них используется только один из пары ключей, и гарантируется невозможность получения неверного ответа, а также невозможность восстановления закрытого ключа по ключу открытому.

Самое сложновыполнимое из этих условий – обеспечение гарантий невозможности восстановления закрытого ключа по открытому ключу и любому числу подписанных электронных документов.

Лучший из предложенных на сегодня учеными способов его выполнения состоит в том, чтобы использовать такие процедуры подписывания и проверки, что практическое восстановление закрытых ключей по ключам открытым требует решения известной сложной вычислительной задачи. Поскольку общеизвестно, что задача является сложной, и если её не научились решать за обозримое время все математики мира во все предыдущие столетия (первые упоминания о задачах такого рода сделаны Аристотелем), то существует надежда, что её не сумеют решить и в ближайшем обозримом будущем.

Практический результат последующих (после публикации статьи Диффи и Хеллмана) научных поисков таких задач оказался до некоторой степени парадоксальным: при всем многообразии известных сложных вычислительных задач, практически применимой оказалась только одна (впоследствии она была дополнена еще двумя задачами). Это так называемая задача дискретного логарифмирования.

В простейшем варианте её можно сформулировать так. Если заданы три больших целых положительных числа: a, n, x, то можно довольно легко вычислить остаток от целочисленного деления ax на n (b = ax mod n).

Задача дискретного логарифмирования состоит в том, чтобы по заданным числам a, b и n, связанным таким соотношением, найти x.

Оказывается, что задача дискретного логарифмирования при правильном выборе указанных целых чисел настолько сложна, что позволяет надеяться на практическую невозможность восстановления числа x – индивидуального закрытого ключа, по числу b, применяемому в качестве открытого ключа.

Чтобы говорить более определённо о практической невозможности решить эту вычислительную задачу, следует предварительно договориться о том, какие вычислительные ресурсы доступны тому, кто предположительно будет эту задачу решать. Поскольку давать конкретные оценки возможностей потенциальных вычислительных ресурсов будущего «взломщика» системы ЭЦП дело сложное, будем исходить из предположения, что он располагает полной информацией о наилучших известных мировой науке методах решения данной задачи.

Далее, если он располагает вычислительной системой общей мощностью, скажем, 1 миллиард операций в секунду (для данного типа вычислений), а это мощность современного суперкомпьютера, то:

- за сутки непрерывной работы такой системы может быть решена задача сложностью около 100 000 миллиардов (или 1014) операций

- за месяц – около 3*(1015),

- за год – около 3*(1016),

- за 10 лет – около 3*(1017),

- за 30 лет – около 1018 операций.

Таким образом, даже если допустить, что потенциальный взломщик ЭЦП располагает вычислительной системой, эквивалентной по мощности 1000 суперкомпьютерам, то на выполнение вычислений объёмом 1021 операций ему потребовалось бы не менее 30 лет непрерывной работы всей системы (нужно учитывать, что помимо операций связанных с расчётами, компьютеры будут выполнять операции по сетевому взаимодействию и т.п.), что с практической точки зрения означает бессмысленность их выполнения.

Поэтому ЭЦП со стандартной длиной ключа(64 бита), для расшифровки которой требуется выполнить более 1019 операций, обладает достаточно высоким уровнем защиты.

Однако 12-го августа 2002 г. стало известно об успешном «вскрытии» зашифрованной 64-битным ключом информации. Произошло это в рамках научного проекта RC5-64 (также известный под названием "Bovine"). Проект был создан в 1997-м году и объединил к своему завершению более 331 тыс. человек, добровольно принявших участие в создании Р2Р-сети для распределённого решения этой задачи. Спустя 1757 дней (почти пять лет) после своего запуска, проект, целью которого был подбор 64-битного ключа методом перебора всех возможных кодовых комбинаций, завершил работу и показал возможность «взлома» систем ЭЦП.

Для увеличения надёжности используются более длинные ключи шифрования. Современные цифровые процессоры класса Pentium позволяют за доли секунды вычислять и проверять цифровые подписи с ключами в 512 бит, а стойкость большинства широко применяемых методов цифровой подписи при такой длине ключей определяется необходимостью проведения более чем 1050 операций вычисления (фактически в системах электронной коммерции используется шифрование на основе ключей в 1024 бита).

Сформулируем современные принципы построения системы ЭЦП:

- подпись аутентична, то есть с ее помощью получателю документа можно доказать, что она принадлежит подписывающему;

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

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

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

- любое лицо может удостовериться, что документ подписан владельцем подписи;

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

- методы вычисления открытых ключей цифровых подписей из закрытых ключей одинаковы для всех и хорошо известны;

- закрытые ключи выбираются пользователями по случайному закону из большого множества возможных ключей и не могут быть восстановлены потенциальными взломщиками с использованием существующих вычислительных мощностей.

Механизм использования электронных денег не предусматривает аутентификации (проблема систем на основе пластиковых карт), поскольку система электронных денег основана на выпуске денег в обращение перед их использованием. Соответственно возникает другая проблема – возможность повторного использования электронных денег. Наиболее распространённый подход к её решению заключается во внесении номеров использованных банкнот в чёрный список и проверке повторного использования номеров банкнот во время авторизации платёжных транзакций.

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


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: