Forbidden

You don't have permission to access /zzz_siteguard.php on this server.

ДОВЕРЕННЫЕ АГЕНТЫ ДЛЯ ОТКРЫТОГО РАСПРЕДЕЛЕНИЯ ЭЛЕКТРОННЫХ ДЕНЕГ - Патент РФ 2145439
Главная страница  |  Описание сайта  |  Контакты
ДОВЕРЕННЫЕ АГЕНТЫ ДЛЯ ОТКРЫТОГО РАСПРЕДЕЛЕНИЯ ЭЛЕКТРОННЫХ ДЕНЕГ
ДОВЕРЕННЫЕ АГЕНТЫ ДЛЯ ОТКРЫТОГО РАСПРЕДЕЛЕНИЯ ЭЛЕКТРОННЫХ ДЕНЕГ

ДОВЕРЕННЫЕ АГЕНТЫ ДЛЯ ОТКРЫТОГО РАСПРЕДЕЛЕНИЯ ЭЛЕКТРОННЫХ ДЕНЕГ

Патент Российской Федерации
Суть изобретения: Изобретение относятся к электронным системам платежей. Техническим результатом является создание системы для безопасной и удаленной от продавца покупки и продажи электронных денег без использования специального терминала. Каждая система для открытого распределения электронных денег содержит доверенного агента покупателя, первый денежный модуль, доверенного агента продавца, второй денежный модуль. Способы открытого распределения электронных денег описывают работу каждой из данных систем. Системы для безопасного распределения электронных денег содержат защищенное от несанкционированного доступа первое электронное устройство транзакций и второе электронное устройство транзакции. 6 с. и 15 з.п. ф-лы, 41 ил.
Поиск по сайту

1. С помощью поисковых систем

   С помощью Google:    

2. Экспресс-поиск по номеру патента


введите номер патента (7 цифр)

3. По номеру патента и году публикации

2000000 ... 2099999   (1994-1997 гг.)

2100000 ... 2199999   (1997-2003 гг.)
Номер патента: 2145439
Класс(ы) патента: G06F17/60, G06F157:00
Номер заявки: 98100475/09
Дата подачи заявки: 11.03.1996
Дата публикации: 10.02.2000
Заявитель(и): Ситибэнк, Н.А. (US)
Автор(ы): Шолом С.Розен (US)
Патентообладатель(и): Ситибэнк, Н.А. (US)
Описание изобретения: Настоящее изобретение относится к системе для открытого распределения электронных денег, содержащей доверенный агент покупателя, первый денежный модуль, доверенный агент продавца и второй денежный модуль. Изобретение также относится к соответствующему способу открытого распределения электронных денег с использованием доверенного агента покупателя, первого денежного модуля, доверенного агента продавца и второго денежного модуля.
Предлагаемая система обеспечивает более простое распределение электронных денег. В частности, в этой системе используются защищенные от несанкционированного доступа электронные блоки, обозначаемые как "доверенные агенты", в сочетании с денежными модулями с целью создания условий для безопасного осуществления сделок или транзакций, где покупатели могут приобретать у продавцов электронные деньги или продавать их, используя удостоверения типа кредитных или дебетовых карточек.
В настоящее время разработаны многочисленные электронные системы платежей, которые способствуют росту электронной торговли. Один из таких способов электронного платежа описан в заявках на патент США 07/794112, поданной 15 ноября 1991 г., 08/234461, поданной 28 апреля 1994 г., и 08/427287, поданной 21 апреля 1995 г. В этих заявках рассматривается электронная денежная система, используемая для электронно-денежных платежей, в качестве альтернативы обмену наличных денег, чеков, операций по кредитным и дебетовым карточкам и по переводу электронных денежных средств. В описанной системе для хранения и передачи электронных банкнот используются, в частности, размещенные в защищенных от несанкционированного доступа (от "взлома") корпусах денежные модули. Платежи с использованием денежных модулей могут быть либо автономными платежами в реальном времени между денежными модулями (например, между денежным модулем, содержащемся в "электронной карточке" покупателя, и денежным модулем, содержащемся в кассовом терминале продавца, установленным в торговой точке), либо неавтономными платежами для сетевых услуг, таких, как поиск информации и телефонные вызовы, либо для заказа, соответственно приобретения авиабилетов, театральных билетов и т.п.
Подробное описание используемых согласно настоящему изобретению доверенных агентов приведено в заявке на патент США 08/234461, поданной 28 апреля 1994 г. В указанной заявке описана система, обеспечивающая безопасную доставку электронных товаров с помощью анонимного платежа в реальном масштабе времени или платежа, основанного на предоставлении соответствующих полномочий. Эта система обеспечивает высокую надежность, соответственно безопасность при осуществлении сделок между покупателем и продавцом.
В настоящее время наличные деньги можно легко получить в банках или у продавцов. Электронные же деньги могут получить всеобщее хождение только в том случае, если аналогично наличным деньгам будет обеспечена их широкая доступность. В настоящем изобретении предлагаются система и способ, позволяющие с использованием доверенных агентов облегчить распределение электронных денег через продавцов, подсоединенных к сети, через которую осуществляются платежи с предоставлением и проверкой соответствующих полномочий. Эта транзакция по распределению может осуществляться локально или удаленно от продавца, что позволяет существенно увеличить количество пунктов распределения, не ограничивая их только банковской сетью. Кроме того, предлагаемая система распределения позволяет осуществлять обмен одной денежной единицы на другую. Например, можно получить некоторую сумму в долларах США со счета в британских фунтах стерлингов.
В заявке на патент США 07/794112 описана электронная денежная система, с помощью которой можно обменивать наличность на электронные деньги, и наоборот. Такая транзакция выполняется локально через банковского кассира либо через БА (банковский автомат), пока не будет осуществлена выдача наличных денег. Электронные деньги можно было бы также выдавать локально, если соответствующим образом модифицировать БА или терминал в торговой точке (так называемый ПОС-терминал) для выдачи электронных денег, а терминал мог бы гарантировать безопасность этой транзакции. В настоящем изобретении предлагается система и способ безопасной и дистанционной, т.е. удаленной от продавца, обработки электронных денег без использования специального терминала, такого, как БА или ПОС-терминал. Для клиента или покупателя безопасность такой сделки (транзакции) обеспечивает использование доверенного агента. Таким образом, отпадает необходимость в специальных терминалах, которые, будучи неизвестны клиенту, могли бы сыграть роль "троянского коня", который может "похитить" электронные деньги клиента или перехватить его секретную информацию касательно доступа к банковскому счету.
В основу настоящего изобретения была положена задача разработать систему, в которой для безопасного распределения электронных денег через продавцов или банки, подсоединенные к сети осуществления платежей с проверкой полномочий, можно было бы использовать доверенные агенты.
Еще одной задачей изобретения является создание системы для безопасной и удаленной от продавца покупки или продажи электронных денег без использования специального терминала.
Задачей настоящего изобретения является далее создание системы, которая позволяет продавцу удовлетворить потребность покупателя в электронных деньгах даже в том случае, если у продавца первоначально не имеется в распоряжении электронных денег.
Кроме того, задача настоящего изобретения состоит в том, чтобы увеличить объем распределения электронных денег без необходимости вовлечения многочисленных банков для участия в электронной денежной системе.
Согласно настоящему изобретению предлагается система для открытого распределения электронных денег, содержащая доверенный агент покупателя, первый денежный модуль, доверенный агент продавца и второй денежный модуль. В этой системе доверенный агент покупателя и доверенный агент продавца имеют шифровальные средства, позволяющие этим агентам обмениваться зашифрованными сигналами, при этом доверенный агент покупателя запрограммирован на передачу доверенному агенту продавца информации о покупке электронных денег и удостоверения счета, а доверенный агент продавца запрограммирован на передачу доверенному агенту покупателя билета расписки в получении, а также на обращение к сети проверки полномочий для инициирования процесса проверки полномочий с использованием данных из информации о покупке электронных денег и удостоверения счета и на инициирование передачи электронных денег от второго денежного модуля первому денежному модулю по получении соответствующего разрешения.
В изобретении, далее, предлагается способ открытого распределения электронных денег с использованием доверенного агента покупателя, первого денежного модуля, доверенного агента продавца и второго денежного модуля. Указанный способ заключается в том, что между доверенным агентом покупателя и доверенным агентом продавца устанавливают криптографически безопасный сеанс связи, во время этого криптографически безопасного сеанса связи от доверенного агента покупателя доверенному агенту продавца передают информацию о покупке электронных денег и информацию об удостоверении счета, с помощью доверенного агента продавца создают билет расписки в получении, содержащий по меньшей мере частично информацию о покупке электронных денег и номер банковского счета покупателя, во время криптографически безопасного сеанса связи передают билет расписки в получении от доверенного агента продавца доверенному агенту покупателя, который условно сохраняет этот билет, с помощью доверенного агента продавца осуществляют обращение к сети проверки полномочий и инициирование процесса проверки полномочий, используя данные из информации о покупке электронных денег и информации об удостоверении счета, от второго денежного модуля передают электронные деньги первому денежному модулю, который условно сохраняет эти электронные деньги, осуществляют фиксацию транзакции первым денежным модулем, вследствие чего хранение электронных денег перестает быть условным, и передачу доверенному агенту покупателя информации об успешном получении электронных денег, осуществляют фиксацию транзакции вторым денежным модулем и передачу доверенному агенту продавца информации об успешной передаче электронных денег, осуществляют фиксацию транзакции доверенным агентом покупателя, вследствие чего хранение билета расписки в получении перестает быть условным, и осуществляют фиксацию транзакции доверенным агентом продавца.
В случае, если доверенный агент продавца не имеет достаточного количества средств во взаимодействующем с ним денежном модуле, то он предпринимает попытку приобрести электронные деньги через устройства транзакций филиалов или путем снятия электронных денег со счета в банке, в котором этот продавец имеет счет и который предоставляет, соответственно распространяет электронные деньги. Описанные выше архитектура системы и протоколы также осуществляют поддержку по продаже электронных денег покупателем продавцу, что аналогично депозитной операции или транзакции.
В изобретении предлагается также система для безопасного распределения электронных денег, включающая защищенное от несанкционированного доступа первое электронное устройство транзакций, содержащее первый процессор, и защищенное от несанкционированного доступа второе электронное устройство транзакций, содержащее второй процессор и выполненное с возможностью обмена данными с первым электронным устройством транзакций с использованием криптографически безопасного сеанса связи, при этом первый процессор служит для передачи информации о сумме покупки и удостоверения счета покупателя второму электронному устройству транзакций, второй процессор выполнен с возможностью встраивания информации о сумме покупки и информации об удостоверении счета покупателя в билет расписки в получении и передачи этого билета во время криптографически безопасного сеанса связи первому электронному устройству транзакций, второй процессор выполнен с возможностью инициирования процесса проверки полномочий, основанного на информации о сумме покупки и информации об удостоверении счета покупателя, а второе электронное устройство транзакций выполнено с возможностью передачи электронных денег первому электронному устройству транзакций в случае получения соответствующего разрешения, обеспечивая тем самым распределение электронных денег независимо от того, осуществляет ли распределение электронных денег банк покупателя.
При этом указанные устройства транзакций, что более подробно поясняется ниже в разделе "Устройства транзакций", могут представлять собой, например, устройства транзакций покупателя и продавца и называются первым или вторым в зависимости от того, кто первым инициирует транзакцию, т.е. покупатель или продавец. Соответственно и компоненты этих устройств транзакций называются первыми или вторыми в зависимости от того, относятся они к первому устройству транзакций или ко второму.
Ниже изобретение более подробно поясняется со ссылкой на прилагаемые чертежи, на которых показано:
на фиг. 1 - схема взаимодействия доверенного агента/денежного модуля,
на фиг. 2 - разделы и поля различных билетов,
на фиг. 3 - компоненты устройства транзакций,
на фиг. 4А-4Г - функциональные компоненты доверенных агентов,
на фиг. 5 - схема структуры сети для открытого распределения электронных денег,
на фиг. 6А - протокол фиксации транзакции,
на фиг. 6Б - протокол прекращения транзакции,
на фиг. 7А-7Ж - протокол основанной на проверке полномочий продажи/покупки электронных денег,
на фиг. 8А-8Д - протокол установления сеанса связи,
на фиг. 9 - протокол посылки сообщения,
на фиг. 10 - протокол проверки удостоверения,
на фиг. 11 - протокол прекращения транзакции,
на фиг. 12А-12Д - протокол осуществления платежа через денежный модуль,
на фиг. 13 - различные уровни кодирования сообщения, установленные между доверенными агентами и денежными модулями,
на фиг. 14А-14Д - протокол установления сеанса связи для денежных модулей,
на фиг. 15 - протокол посылки маршрутизированного сообщения,
на фиг. 16 - протокол посылки сообщения от денежного модуля (ДМ) к доверенному агенту (ДА),
на фиг. 17 - протокол посылки сообщения от доверенного агента (ДА) к денежному модулю (ДМ),
на фиг. 18А-18Б - протокол прекращения транзакции для денежных модулей,
на фиг. 19 - протокол посылки маршрутизированного сообщения по электронной почте,
на фиг. 20А-20Б - протокол передачи или трансферта банкнот и
на фиг. 21 - протокол фиксации транзакции для денежных модулей.
Как описано в заявке на патент США 08/234461, доверенный агент представляет собой сочетание аппаратного и программного компонентов. Он защищен от несанкционированного доступа и имеет шифровальные средства, в частности зашифрованные протоколы, с помощью которых осуществляется обмен зашифрованными сигналами с денежным модулем, что обеспечивает взаимодействие между указанными доверенным агентом и денежным модулем для синхронизации безопасного платежа по доставке товара. Денежные модули представляют собой также защищенные от несанкционированного доступа устройства, которые могут хранить и передавать электронные деньги, и также имеют соответствующие шифровальные средства для обмена зашифрованными сигналами с доверенным агентом. Электронные деньги предпочтительно представлены в форме электронных банкнот, которые в свою очередь являются представлениями наличных денег или кредита. Денежные модули могут также устанавливать криптографически безопасные сеансы связи с другими устройствами. В предпочтительном варианте выполнения настоящего изобретения используются денежные модули транзакций, описанные в заявках на патент США 07/794112 и 08/427287.
Доверенные агенты при осуществлении покупок через сеть обмениваются электронным товаром и платежной суммой. В настоящем изобретении, как показано на фиг. 1, доверенный агент 4 продавца (ДАПрод) посылает доверенному агенту 2 покупателя (ДАПок) билет расписки в получении. Денежный модуль 6 покупателя в свою очередь посылает электронные деньги денежному модулю 6 продавца через ДАПок 2 и ДАПрод 4, если покупатель продает электронные деньги. Если же покупатель приобретает электронные деньги, то последние переходят от продавца к покупателю.
Билеты
Как показано на фиг. 1 и 2, билет 8 является электронным набором данных, созданным ДАПрод 4 и переданным при транзакции к ДАПок 2. Билеты могут считаться собственностью доверенных агентов. Покупатель, ДАПок 2 которого только что получил билет 8, может использовать этот билет только после успешного завершения транзакции.
Как описано в заявке на патент США 08/234461, доверенные агенты используют различные типы билетов, применяемых для различных целей. Однако для настоящего изобретения наиболее важное значение имеют билеты удостоверений и билеты расписок о покупке электронных денег. Билет удостоверения идентифицирует "владельца" и предоставляет особые привилегии. Примерами удостоверений являются кредитные и дебетовые карточки. Билет кредитной или дебетовой карточки можно представлять для платежа, основанного на проверке полномочий. Билет расписки, принадлежащий покупателю, позволяет идентифицировать отдельные детали, касающиеся транзакции по распределению (покупка или продажа электронных денег), и может использоваться покупателем в спорном случае.
На фиг. 2 показан предпочтительный вариант билета 8, который включает шесть следующих главных разделов: раздел 10 "Идентификатор", раздел 12 "Компоненты", раздел 14 "Подпись эмитента", раздел 16 "Сертификат эмитента", раздел 18 "Предыстория передачи" и раздел 20 "Подписи отправителей". Эти разделы в свою очередь состоят из содержащих различную информацию полей.
Раздел 10 "Идентификатор" имеет поле 22, в котором содержится информация, идентифицирующая продавца или уполномоченное лицо, создавшего и соответственно создавшее билет. Такая информация, например, имя продавца или уполномоченного лица, копируется из его удостоверения, хранящегося у эмитента билета. Поле 22 содержит также срок окончания действия удостоверения продавца или уполномоченного лица. Поле 24 содержит идентификационный номер принимающего доверенного агента. Поле 24 содержит также срок окончания действия удостоверения доверенного агента лица, принимающего билет. Поле 26 указывает тип билета (например, билет кредитной или дебитовой карточки, билет с распиской и т.д.).
Раздел 12 "Компоненты" составляет основное содержание билета, которое варьируется в зависимости от типа билета и его конкретных целей. На фиг. 2 приведены примеры компонентов, встречающихся в билетах различных типов.
Билет удостоверения, такого, как кредитная или дебетовая карточка, может иметь следующие разделы: поле 36 "Идентификатор (ИД) банка", содержащее сведения о банке владельца удостоверения, поле 38 "Номер счета", поле 40 "Дата начала действия", поле 42 "Дата окончания действия" и поле 44 "Имя покупателя".
Билет расписки в покупке электронных денег может иметь следующие разделы: поле 46 "Идентификатор (ИД) банка" со сведениями о банке, указанным в удостоверении покупателя, поле 38 "Номер счета" со сведениями о номере счета, указанном в удостоверении покупателя, поле 50 "Тип транзакции" со сведениями о том, является транзакция покупкой или продажей электронных денег, поле 52 "Разрешенная сумма", поле 54 "Переданная или полученная сумма", поле 56 "Комиссионный сбор продавца" и поле 58 "Дата транзакции". Разрешенная сумма равна полученной сумме плюс комиссионный сбор продавца за транзакцию покупки или равна посланной сумме минус комиссионный сбор продавца за продажу.
За разделами 10 "Идентификатор" и 12 "Компоненты" в билете 8 следует раздел 14 "Подпись эмитента", который содержит цифровую подпись, проставленную создателем билета. Такая подпись делается при помощи частного ключа, принадлежащего доверенному агенту эмитента. Раздел 16 "Сертификат эмитента" содержит подтверждение третьей доверенной стороны (ниже обозначенной как "доверенное агентство"), используемое вместе с подписью эмитента для проверки подлинности выпущенного билета 8. Такое подтверждение имеет вид сертификата, принадлежащего доверенному агенту эмитента. Общий метод использования сертификатов и цифровых подписей известен и описан, например, у D.W. Davies и W.L. Price, "Security For Computer Networks" (изд-во John Wiley & Sons, 1984).
Раздел 18 "Предыстория передачи" содержит информацию, которая формируется при передаче билетов между доверенными агентами после первоначального выпуска билета 8 продавцом или уполномоченным лицом. Поле 28 "Идентификатор получателя" содержит идентификационный номер получающего доверенного агента. Поле 30 "Идентификатор отправителя" содержит идентификационный номер отправляющего доверенного агента. Поле 32 "Сертификат отправителя" содержит сертификат отправляющего доверенного агента. Поле 34 "Дата/время" содержит дату и время передачи билета 8. При осуществлении последующих передач к каждому из соответствующих полей добавляются дополнительные идентификаторы получателя и отправителя, сертификаты отправителя, дата и время, благодаря чему создается список с информацией о предыстории передачи. Необходимо отметить, что идентификатор доверенного агента, находящийся в поле "Получатель" раздела "Идентификатор", должен быть тем же самым, что и первый идентификатор в поле "Идентификатор отправителя".
Кроме того, когда бы билет 8 ни передавался между доверенными агентами, отправитель подписывает в цифровом виде билет после пяти предыдущих его разделов, используя частный ключ, принадлежащий доверенному агенту отправителя. Раздел 20 "Подпись отправителя" затем обновляется путем добавления вновь созданной цифровой подписи, за счет чего создается список подписей отправителей.
Устройства транзакций
На фиг. 3 доверенный агент 120 встроен в устройство 122 транзакций. Устройство 122 транзакций представляет собой электронное устройство и состоит из трех главных компонентов как для продавца, так и для покупателя. Этими компонентами являются центральный процессор 124, доверенный агент 120 и денежный модуль 6. Эти компоненты соединены, например, шиной 126. Когда доверенный агент 120 представляет собой ДАПрод 2, то устройство 122 называется устройством транзакций продавца (УТПрод). Когда доверенный агент 120 представляет собой ДАПок 4, то устройство 122 называется устройством транзакций покупателя (УТПок).
В соответствии с этим, как упоминалось выше, указанные устройства транзакций являются устройствами транзакций, например, покупателя и продавца и могут быть также названы первым или вторым в зависимости от того, кто первым инициирует транзакцию, т.е. покупатель или продавец.
На фиг. 3 показаны функциональные компоненты центрального процессора 124. Центральный процессор управляет следующими функциями: функцией 128 "Коммуникации", функцией 130 "Приложения транзакций", функцией 132 "Интерфейс человек-машина", функцией 136 "Дата/время" и функцией 134 "Менеджер сообщений".
Функция 128 "Коммуникации" поддерживает связь устройства 122 транзакций с внешним миром. Такая связь может быть проводной или беспроводной, широко- или узкополосной, при условии, что средства связи между этими устройствами совместимы. Функция 128 "Коммуникации" устанавливает соединение между двумя устройствами 122 транзакций или соединяет устройство транзакций с сетью для непрямой связи с другим устройством транзакций или доверенным сервером.
Функция 130 "Приложения транзакций" может выполнять различные задачи. Например, приложение транзакций может приобретать сетевое время у продавца, предлагающего наименьший комиссионный сбор за проводимые им операции или транзакции и/или более выгодный обменный курс при операциях по покупке или продаже электронных денег. В целом в устройстве 122 транзакций предусмотрено выполнение всех процессов обработки, необходимых для выбора, покупки и возможного использования электронных объектов, электронных денег, удостоверений и других билетов 8, или процессов обработки, необходимых для их продажи.
Функция 132 "Интерфейс человек-машина" в устройстве 122 транзакций обеспечивает просмотр (поиск) и восприятие (ввод) информации. Этот интерфейс может представлять собой клавиатуру, мышь, электронное перо, устройство речевого ввода информации, сенсорный экран, пиктограммы, меню и т.д. Функция 132 "Интерфейс человек-машина" связывается с остальными функциями доверенного агента 120 и денежного модуля 6 через функцию 134 "Менеджер сообщений". В некоторых приложениях функция 132 "Интерфейс человек-машина" может быть необязательной, например, в полностью автоматизированном устройстве транзакций продавца.
Функция 136 "Дата/время" устанавливается владельцем устройства 122 транзакций и содержит дату, время и часовой пояс. Информация, содержащаяся в функции "Дата/время", передается соответствующему доверенному агенту 120 всегда, когда этот доверенный агент открыт для использования.
Функция 134 "Менеджер сообщений" осуществляет маршрутизацию межпроцессорных сообщений (т.е. сообщений между устройствами транзакций) и сообщений между центральным процессором 124, доверенным агентом 120 и денежным модулем 6.
Доверенные агенты
На фиг. 4А показаны функциональные компоненты доверенного агента 120. В описываемой системе для открытого электронного бизнеса используется три типа доверенных агентов 120, различающиеся некоторыми уникальными функциями 146 "Транзактор", которые они выполняют. На фиг. 4Б показаны функции, которые выполняются транзактором в ДАНок 2. На фиг. 4В изображены функции, которые выполняются транзактором в ДАНрод 4. На фиг. 4Г показаны функции, которые выполняются транзактором в доверенном агенте уполномоченного лица (ДАУ), который в свою очередь входит в состав устройства транзакций уполномоченного лица (УТУ). УТУ связаны с учреждениями, выдающими удостоверения, такими, как банк.
Функция 138 "Внешний интерфейс" обеспечивает физическую связь с центральным процессором 124 и денежным модулем 6 устройства 122 транзакций, в состав которого входит доверенный агент 120. Функция 140 "Интерфейс сообщений" осуществляет обработку и маршрутизацию сообщений между агентами и внутри агентов. Функция 142 "Менеджер сеанса связи" устанавливает и прерывает сеансы связи между агентами и сеансы связи агента с доверенным сервером. Функция 144 "Менеджер безопасности" контролирует информацию о безопасности (например, сертификат доверенного агента и список ненадежных агентов) и устанавливает безопасную связь с доверенным агентом партнера (через центральный процессор 124) и с локальным денежным модулем 6 внутри того же самого устройства 122 транзакций. Функция 146 "Транзактор" содержит протоколы для осуществления транзакции. Транзакторы покупателя, продавца и уполномоченного лица используются соответственно в ДАПок, ДАПрод и ДАУ.
На фиг. 4Б приведены функции транзактора покупателя. Функция 158 "Покупка" осуществляет обмен суммы платежа на билеты 8 и электронные объекты. Функция 160 "Связь с центральным процессором" обеспечивает взаимодействие с центральным процессором 124 устройства транзакций. Функция 164 "Предъявление билета" предъявляет билеты 8 для получения информации или услуг, функция 166 "Приобретение удостоверения" служит для получения билета удостоверения. Функция 162 "Журнал транзакций" ведет журнал транзакций доверенного агента. ДАПок 2 и ДАПрод 4 ведут журнал транзакций, в котором хранится следующая информация: тип транзакции (например, тип билета), вид билета до транзакции, вид билета после транзакции, информация о предмете спора, в том числе дата спора (как она записана каждым доверенным агентом в диалоге спора), статус и резолюция продавца (например, заменить, возместить, отклонить), а также информация о пересертификации (например, дата пересертификации). Функция 168 "Инициализация спора" предъявляет электронную покупку в случае, если покупатель недоволен этой покупкой.
На фиг. 4В показаны функции транзактора продавца. Функция 170 "Покупка" обменивает билеты 8 и электронные объекты на сумму платежа. Функция 172 "Связь с центральным процессором" обеспечивает взаимодействие с центральным процессором 124 устройства транзакций. Функция 176 "Получение билета" обрабатывает полученный билет 8 для предоставления услуг или информации. Функция 177 "Приобретение удостоверения" получает удостоверение продавца. Функция 174 "Журнал транзакций" ведет журнал транзакций доверенного агента. Функция 178 "Разрешение спора" получает билеты 8 и электронные объекты с целью рассмотрения жалобы покупателя.
На фиг. 4Г показаны функции транзактора уполномоченного лица. Функция 180 "Создание удостоверения" формирует и доставляет билеты удостоверений запрашивающей стороне. Функция 182 "Связь с центральным процессором" обеспечивает взаимодействие с центральным процессором 124 устройства транзакций. Функция 184 "Получение билета" обрабатывает полученный билет 8 для предоставления услуг или информации. Функция 186 "Продление удостоверения" изымает имеющееся удостоверение и выпускает новое удостоверение с новым сроком действия. Функция 183 "Журнал транзакций" ведет журнал транзакций. Функция 185 "Приобретение удостоверения" получает удостоверение уполномоченного лица.
Как показано далее на фиг. 4А, функция 150 "Связь с денежным модулем" обеспечивает связь с денежным модулем 6 того же устройства 122 транзакций для осуществления платежа. Функция 152 "Криптография" выполняет криптографические функции ключа общего пользования и симметричного ключа. Для этой цели могут использоваться любые хорошо известные криптографические методы создания ключа общего пользования и симметричного ключа, например, RSA (алгоритм цифровой подписи Райвеста-Шамира-Адельмана) и DES (стандарт шифрования данных). Функция 148 "Держатель билетов" создает билеты 8 в ДАПрод 4 или же хранит билеты 8 в ДАПок 2 и изымает их оттуда. Функция 156 "Генератор случайных чисел" вырабатывает случайные числа для формирования криптографических ключей. Функция 154 "Дата/время" управляет датой и временем, полученными от центрального процессора 124, для датирования билетов 8 и проверки достоверности сертификатов и предъявленных билетов. Информация о текущем времени подается на доверенный агент 120 каждый раз, когда доверенный агент открыт (т.е. готов для использования) и поддерживается до тех пор, пока доверенный агент не будет закрыт.
Аппаратное обеспечение доверенного агента/денежного модуля может включать следующие компоненты: микроконтроллер (например, семейства Интел 196) для выполнения протоколов транзакций, быстродействующую энергозависимую память (например, СЗУПВ), в которой в процессе работы хранятся операционная система, различные части прикладных программ, криптографическая информация и т. д. , энергонезависимую память (например, флэш-память), в которой хранится операционная система, прикладные программы, билеты, электронные деньги, журналы и т.д., тактовый генератор на интегральной схеме для обеспечения привязки ко времени, аккумулятор для тактового генератора и шумовой диод или иной источник случайного шума для генератора случайных чисел.
Общая структура системы
На фиг. 5 показана общая архитектура сети рассматриваемой системы для открытого распределения электронных денег. Устройство 188 транзакций покупателя может связываться с продавцом через любую шлюзовую сеть 190. Покупатель может исследовать электронное пространство продавцов для покупки или продажи электронных денег и выбирать продавца, предлагающего наименьшую оплату за транзакцию и/или более выгодный обменный курс. Система обеспечивает также безопасный платеж/покупку электронных денег на основе проверки полномочий при помощи кредитной или дебетовой карточки. Это может быть реализовано путем предъявления покупателем информации, содержащейся в кредитной или дебетовой карточке и хранящейся в доверенном агенте 120 в качестве удостоверения.
В предпочтительном варианте выполнения шлюзы 190 обеспечивают доступ УТПок 188 к локальным сетям 134 продавца, которые соединены с УТПрод 198. Сеть 134 продавца соединена с банковской сетью 200 продавца, которая, как описано в заявке на патент США 07/794112, имеет доступ к электронным деньгам через модуль 202 генератора денег, денежный модуль 204 банковского кассира (банкомата) и банковскую систему 206, которая является интерактивной системой бухгалтерского учета банка.
Обработка удостоверений в виде кредитных или дебетовых карточек с целью подтвердить полномочия на кредитование или дебетование банковского счета покупателя осуществляется через сеть 208 проверки полномочий. Процесс проверки карточек хорошо известен в данной области техники и обычно состоит в выдаче разрешения эмитентом карточки или его агентом на конкретную оплату, если в наличии имеется достаточное количество денежных средств или затребуемая сумма не выходит за пределы кредита владельца карточки. Сети проверки полномочий кредитуют также счет покупателя, например, при возврате денег. Сеть 208 проверки полномочий соединена с банковской сетью 200 покупателя, которая в свою очередь соединена с банковской системой 206, в которой находится банковский счет покупателя.
Эта архитектура, тем не менее, позволяет пользователям, которые не являются клиентами банков-членов электронной денежной системы, получать доступ к электронным деньгам через продавцов, которые имеют доступ к таким банкам-членам. Эта структура системы обеспечивает пользователю возможность покупать или продавать электронные деньги из многих пунктов их распределения, которые с точки зрения пользователей настолько же эффективны, как и снятие электронных денег с их банковского счета или внесение электронных денег на их банковский счет.
Следует также отметить, что банк-член электронной денежной системы может предоставлять вышеописанную услугу распределения и через УТПрод 198. Очевидно, что в этом случае не потребовалось бы использование сети 134 продавца. При этом банковская сеть 200 напрямую подключается к модулю 202 генератора денег, денежному модулю 204 банковского кассира, банковской системе 206, УТПрод 198, сети 208 проверки полномочий и шлюзовой сети 190. В остальном транзакция аналогична описанной выше.
Блок-схемы алгоритмов
B изображенных на следующих чертежах блок-схемах алгоритмов используются обозначения "A" и "B", относящиеся к двум взаимодействующим доверенным агентам 120. Те же самые обозначения A и B могут быть применимы к центральному процессору 124 или денежному модулю 6, которые соответствуют отдельному доверенному агенту 120 (т.е. находятся внутри того же устройства 122 транзакций). На блок-схемах алгоритмов показан функциональный компонент, в первую очередь отвечающий за выполнение данной задачи. Например, "МЕНЕДЖЕР БЕЗОПАСНОСТИ A" означает, что соответствующая задача выполняется функцией 144 "Менеджер безопасности" (см. фиг. 4А) в доверенном агенте A.
Блок-схемы алгоритмов также осуществляют вызов подпрограмм, в некоторых из которых для определенных параметров использованы обозначения X и Y. Например, "УСТАНОВЛЕНИЕ СЕАНСА СВЯЗИ A - B" является вызовом подпрограммы "Установить сеанс связи". При дальнейшем продвижении по блок-схеме алгоритма "Установление сеанса связи" подразумевается, что X = A, а Y = B.
Прекращение и фиксация транзакции
B рассматриваемом типе обработки транзакций между двумя сторонами необходимо передавать электронные наборы данных, такие, как билеты 8, и электронные банкноты, поддерживая "игру с нулевой суммой". Иными словами, нежелательно дублировать электронные наборы данных, т.е. по окончании электронной транзакции количество наборов данных не должно превышать в два раза количества наборов до транзакции. Аналогичным образом нежелательно терять электронные наборы, т.е. после транзакции их не должно быть меньше, чем до транзакции. Например, если в начале транзакции A имеет один электронный билет 8 и желает передать его B, то необходимо обеспечить, чтобы в конце транзакции у B был один электронный билет 8, а у A не было электронных билетов 8. В реальности, однако, возможны два других исхода, а именно, когда A и B имеют один и тот же электронный билет 8 (дублирование), либо ни A, ни B не имеют электронного билета 8 (потеря).
С целью свести вероятность дублирования или потери к пренебрежимо малым значениям протокол транзакции должен учитывать возможность того, что естественные или преднамеренные события могут прервать типичный ход транзакции. Примером естественного прерывания является прерывание текущего соединения между A и B во время транзакции. Для минимизации вероятности дублирования или потери из-за таких случайных событий пределы, в которых может иметь место дублирование или потери, должны быть сведены к минимальным. Для минимизации преднамеренных прерываний (т.е. откровенных вторжений) целесообразно устранить экономические стимулы таких вторжений. Например, если вторгающийся может лишь потерять билеты и/или деньги, пытаясь прервать транзакцию, то у него не будет никаких стимулов для начала такого вторжения.
Эти концепции нашли эффективное отражение в протоколах транзакций описываемой системы. Так, в частности, целесообразно обеспечить согласованные состояния прерывания и фиксации между двумя совершающими транзакцию доверенными агентами 120 (или денежными модулями 6). Например, если A фиксирует транзакцию, то и B должен фиксировать эту транзакцию, или если A прекращает транзакцию, то и B также должен ее прекратить. Для достижения согласованности и минимизации вероятности дублирования или потери (в случае наличия несогласованности) протоколы транзакций учитывают порядок и время фиксации A и B данной транзакции.
На фиг. 6 показаны две подпрограммы "Прекращение транзакции" и "Фиксация транзакции". Подпрограмма прекращения выполняется внутри данного доверенного агента 120, когда транзакция, в которую он вовлечен, дает сбой. Подпрограмма прекращения возвращает доверенный агент 120 в точно такое же исходное состояние, в котором он находился до начала неудачной транзакции. Кроме того, если доверенный агент продавца осуществляет прекращение после проверки полномочий, то такая проверка будет отменена. В отличие от этого подпрограмма фиксации транзакции выполняется внутри доверенного агента 120, когда транзакция, в которую он вовлечен, успешно завершена. Доверенный агент 120 записывает завершенную транзакцию в свой журнал транзакций и готов к новой транзакции. Например, во время транзакции передачи билета электронный билет 8 передается от доверенного агента A доверенному агенту B. Поскольку в этот момент времени ни A, ни B не фиксировали и не прекращали транзакцию, A условно сохраняет билет 8, в то время как B также условно имеет билет 8. Если и A, и B зафиксировали транзакцию, то A уничтожит свой билет 8, а наличие у B билета 8 перестанет быть условным. Если же A и B прервали транзакцию, то A сохранит свой билет 8, а билет 8, который условно имел B, будет уничтожен путем возврата к состоянию в начале транзакции. Следует отметить, что операция уничтожения может быть реализована различными способами, хорошо известными в данной области техники. Как отмечалось выше, целесообразно свести к минимуму возможность фиксации транзакции одним из доверенных агентов 120, в то время как другой доверенный агент 120 прекратил ее, поскольку при некоторых ограниченных условиях это может привести к дублированию или потере электронных наборов данных.
Аналогичная ситуация имеет место и по отношению к денежным модулям 6, обменивающимся электронными банкнотами. Во время транзакции покупки электронные банкноты передаются от денежного модуля A денежному модулю B, так что A условно уменьшает свои электронные банкноты (на переданную сумму), в то время как B условно имеет электронные банкноты (в сумме, равной переданной). Если и A, и B фиксируют транзакцию, то у A остается уменьшенное количество банкнот, а наличие электронных банкнот у B перестает быть условным.
На фиг. 6А приведена подпрограмма фиксации. Функция "Журнал транзакций X" обновляет журнал транзакций. Функция "Связь с центральным процессором X" оповещает центральный процессор, что транзакция завершена. Функция "Менеджер сеанса связи X" записывает окончание сеанса связи (шаги 230-234).
На фиг. 6Б представлена подпрограмма прекращения. Функция "Менеджер сеанса связи X" отменяет изменения, возвращаясь к началу транзакции, и отмечает прекращение транзации агентом. Функция "Менеджер сеанса связи" отслеживает действия, совершенные с начала сеанса связи, и отменяет эти шаги. Функция "Связь с центральным процессором X" посылает центральному процессору сообщение, что транзакция прекращена (шаги 236-238).
Подпрограмма прекращения может быть вызвана непосредственно из блок-схемы алгоритма, например, когда доверенный агент 120 определяет, что сертификат недействителен. Подпрограмма прекращения может быть вызвана также в том случае, когда ожидаемое действие не происходит. В частности, когда два доверенных агента 120 связываются друг с другом, они будут отслеживать протокол истечения времени ожидания события. Например, после того, как первый доверенный агент 120 послал сообщение второму доверенному агенту 120, функция "Менеджер сеанса связи" первого доверенного агента (A) установит таймер ожидания ответа, если таковой требуется. Функция "Менеджер сеанса связи" может также пронумеровать посланное сообщение. Этот номер появится в ответном сообщении от функции "Менеджер сеанса связи" второго доверенного агента (B).
Если таймер закончит отсчет до момента приема сообщения, то функция "Менеджер сеанса связи A" направит запрос функции "Менеджер сеанса связи B" определить, продолжает ли происходить выполнение транзакции в B. Если B не отвечает, то функция "Менеджер сеанса связи A" прекратит транзакцию. Если же принят ответ, что транзакция продолжает выполняться, то таймер будет переустановлен на новое время. Если A посылает к B запрос определенное число раз, не получая ответа на исходное сообщение, то A прекратит транзакцию. Аналогичные функции по отслеживанию времени ожидания события предусмотрены и в денежных модулях 6.
Покупка/продажа электронных денег
На фиг. 7 показана блок-схема основанной на проверке полномочий покупки/продажи электронных денег. Когда владелец доверенного агента A хочет купить или продать электронные деньги путем дебетования или кредитования своего банковского счета, он использует приложение транзакций в своем УТПок 188 для покупки сетевого времени 134 у продавца, предлагающего наименьшую плату за транзакцию и/или наиболее выгодный обменный курс, и выбирает в данном примере продавца- владельца доверенного агента B (шаги 700-702). Следует отметить, что в альтернативном варианте сеть проверки полномочий может устанавливать обменный курс.
Затем приложение транзакций центрального процессора A (ПТЦПА) устанавливает связь с приложением транзакций центрального процессора B (ПТЦПВ), после чего покупатель выбирает тип транзакции, а именно, покупку или продажу электронных денег (шаг 704). ПТЦПА посылает сообщение своему доверенному агенту A купить (продать) электронные деньги, а ПТЦПВ посылает сообщение своему доверенному агенту B послать (принять) электронные деньги (шаги 706-708).
Доверенные агенты покупателя и продавца (A и B) затем устанавливают сеанс связи, как это описано в заявке на патент США 08/234461. В частности, для установления криптографически безопасного канала связи между доверенным агентом A и доверенным агентом B вызывается подпрограмма "Установление сеанса связи" (шаг 710). Как показано на фиг. 8, функция "Менеджер сеанса связи" доверенного агента A запрашивает, а затем получает сертификат A (т.е. серт. (ДА)) от функции "Менеджер безопасности" (шаги 296- 298). Затем функция "Менеджер сеанса связи" A посылает серт. (ДА) функции "Менеджер сеанса связи" доверенного агента B, который в свою очередь посылает его своей функции "Менеджер безопасности" (шаги 300-304).
Функция "Ключ общего пользования" доверенного агента B проверяет серт. (ДА), используя протоколы проверки действительности, например, такие, как описанные в заявках на патент США 08/234461 и 08/427287 (шаги 306-308).
Если серт. (ДА) недействителен, то функция "Менеджер сеанса связи" B отмечает, что сеанс связи прекращен, и информирует функцию "Менеджер сеанса связи" A, что транзакция отменена. Функция "Менеджер сеанса связи" A также отмечает, что сеанс связи прекращен (шаги 310-312). Если серт. (ДА) действителен, то функция "Менеджер безопасности" B проверяет, не состоит ли доверенный агент A в списке "ненадежных" (заблокированных) доверенных агентов (шаги 314-316). Если доверенный агент A является заблокированным, то сеанс связи прекращается (шаги 310-312).
Если A нет в списке заблокированных доверенных агентов, то функция "Генератор случайных чисел" B создает случайное число R(B), а также проверочное сообщение B (шаг 318). Случайное число R(B) будет в итоге использовано для формирования ключа сеанса связи. Проверочное сообщение B является случайным числом, используемым B для защиты от повторного запуска сообщения. Далее функция "Менеджер безопасности" B объединяет R(B), проверочное сообщение B и серт. (ДА) в одно сообщение для доверенного агента A (шаг 320). Функция "Ключ общего пользования" B шифрует сообщение при помощи ключа общего пользования доверенного агента A (КОП (ДА)), который доверенный агент B принимает вместе с сертификатом доверенного агента A (серт. (ДА)) (шаг 322). После этого функция "Менеджер сеанса связи" B посылает зашифрованное сообщение функции "Менеджер сеанса связи" A (шаги 324-326).
Функция "Ключ общего пользования" A расшифровывает сообщение при помощи своего частного ключа (соответствующего его ключу общего пользования) и проверяет действительность сертификата серт. (ДА) (шаги 328-330). Если серт. (ДА) недействителен, то функция "Менеджер сеанса связи" A отмечает, что сеанс связи прекращен, и посылает сообщение об отмене транзакции к B, функция "Менеджер сеанса связи" которого также отмечает, что сеанс связи прекращен (шаги 332-334). Если же серт. (ДА) действителен, то функция "Менеджер безопасности" A проверяет, не состоит ли доверенный агент B в списке заблокированных агентов (шаги 336-338). Если доверенный агент B есть в этом списке, сеанс связи прекращается (шаги 332-334).
Если же B не состоит в списке заблокированных агентов, то функция "Генератор случайных чисел" A создает случайное число R(A) и проверочное сообщение A (например, другое случайное число) (шаг 340). Функция "Дата/время" передает текущие дату и время функции "Менеджер безопасности" (шаг 342). После этого A и B обмениваются датой и временем для окончательной записи в их журналы транзакций во время фиксаций. Затем функция "Менеджер безопасности" A формирует и сохраняет ключ сеанса связи доверенного агента с доверенным агентом (ДА/ДА) при помощи операции "Исключающее ИЛИ" над числами R(A) и R(B) (шаг 344). Ключ сеанса связи (ДА/ДА) используется для шифровки канала связи между двумя доверенными агентами 120. Функция "Менеджер сеанса связи" A компонует сообщение, содержащее проверочные сообщения A и B, информацию о дате/времени, а также число R(A) (шаг 344). Функция "Ключ общего пользования" A шифрует это сообщение при помощи ключа общего пользования доверенного агента B (который A получил в сертификате серт. (ДА)) и посылает зашифрованное сообщение функции "Менеджер сеанса связи" доверенного агента B (шаги 346-350).
Функция "Ключ общего пользования" B расшифровывает полученное сообщение при помощи своего секретного ключа (соответствующего его ключу общего пользования) (шаг 352). Функция "Менеджер безопасности" B проверяет, является ли проверочное сообщение B, полученное от A, тем же самым проверочным сообщением B, которое было до этого послано к A (шаги 354-356). Если они не совпадают, то сеанс связи прекращается (шаги 310-312). Если же они одинаковы, то функция "Менеджер сеанса связи" B отмечает начало сеанса связи (шаг 358).
Функция "Менеджер безопасности" B формирует ключ сеанса связи (ДА/ДА) при помощи операции "Исключающее ИЛИ" над R(A) и R(B), а затем сохраняет этот ключ сеанса связи (шаг 360). В этот момент и A, и B создали и сохранили один и тот же ключ сеанса связи (т.е. ключ сеанса связи (ДА/ДА)) для использования при их текущем взаимодействии. Далее функция "Дата/время" B посылает свою информацию о текущих дате и времени функции "Менеджер безопасности B" (шаг 362). Функция "Менеджер безопасности" B компонует сообщение, содержащее подтверждение о приеме к A, проверочное сообщение A и информацию от B о дате/времени (шаг 364). Затем вызывается подпрограмма "Посылка сообщения" (шаг 366) для посылки сообщения от B к A.
Как показано далее на фиг. 9, функция "Симметричный ключ" доверенного агента B зашифровывает сообщение при помощи ключа сеанса связи (ДА/ДА) (шаг 376). Затем функция "Интерфейс сообщений" B форматирует сообщение и посылает его функции "Менеджер сообщений" центрального процессора (шаг 378). Функция "Менеджер сообщений" центрального процессора B после этого направляет сообщение через функцию "Коммуникация" функции "Менеджер сообщений" в центральном процессоре доверенного агента A (шаг 380). Затем функция "Менеджер сообщений" центрального процессора A посылает это сообщение функции "Интерфейс сообщений" доверенного агента A, который разбирает это сообщение (шаги 382-384). Функция "Симметричный ключ" A расшифровывает сообщение при помощи ключа сеанса связи (ДА/ДА), завершая таким образом безопасную передачу сообщения между доверенным агентами с использованием ключа сеанса связи (ДА/ДА) (шаг 386).
Как показано далее на фиг. 8, функция "Менеджер безопасности" A принимает подтверждение о приеме, проверочное сообщение A и информацию B о дате/времени (шаг 368). Функция "Менеджер безопасности" A проверяет, является ли проверочное сообщение A тем же самым проверочным сообщением A, которое A ранее посылал в B (шаги 370- 372). Если эти сообщения не совпадают, то функция "Менеджер сеанса связи" A прекращает сеанс связи (шаги 332-334). Если же они одинаковы, то функция "Менеджер сеанса связи" A отмечает начало сеанса связи (шаг 374).
Как показано на фиг. 7, после установления сеанса связи доверенный агент A запрашивает и проверяет удостоверение продавца-владельца доверенного агента B с использованием протокола, также описанного в заявке на патент США 08/234461. В частности, вызывается показанная на фиг. 10 подпрограмма "Проверка действительности удостоверения" (шаг 712). Все УТПрод 198 содержат удостоверение, идентифицирующее владельца/продавца (например, системы NYNEX, Ticketron и т.п.). Такое удостоверение продавца может быть выдано, например, службой идентификации продавцов, контролируемой доверенным агентством. С другой стороны, удостоверения покупателя, содержащиеся в УТПок 188, могут представлять водительские права/или кредитные карточки, выданные различными уполномоченными службами идентификации. Как показано на фиг. 10, функция "Покупка" A посылает сообщение к функции "Покупка" доверенного агента B, запрашивающее его удостоверение продавца (шаги 444-448). Функция "Держатель билетов" B выбирает соответствующее удостоверение продавца и посылает это удостоверение к A для подтверждения действительности (шаги 450-456).
Удостоверения или любой другой тип билета 8 проверяются на действительность следующим образом:
1) проверяется действительность сертификата эмитента и подпись эмитента,
2) проверяется каждая передача на предмет совпадения идентификаторов получателя и отправителя (т.е. если S0 = эмитент, R0 = первый получатель, то Ri = Si+1, где i≥0),
3) проверяется действительность сертификата каждого отправителя и подпись каждого отправителя,
4) проверяется совпадение идентификатора последнего получателя с идентификатором (ид (ДА)) сертификата доверенного агента (серт. (ДА)) в текущем сеансе связи.
Если удостоверение продавца недействительно, то транзакция прекращается путем вызова подпрограммы "Прекращение транзакции" (шаг 458). Как показано на фиг. 11, доверенный агент A прекращает транзакцию (шаг 388), а его функция "Менеджер сеанса связи" посылает функции "Менеджер сеанса связи" доверенного агента B сообщение, информирующее B о том, что A прекратил транзакцию (шаги 390-394). Затем доверенный агент B прекращает транзакцию (шаг 396). Как показано на фиг. 10, если удостоверение продавца действительно, то функция "Связь с центральным процессором" A посылает информацию об удостоверении приложению передачи центрального процессора для подтверждения (например, для визуального подтверждения имени продавца покупателем-владельцем доверенного агента) (шаги 460- 462).
Как показано далее на фиг. 7, алгоритм покупки/продажи электронных денег продолжается следующим образом. Функция "Связь с центральным процессором" A запрашивает сумму электронных денег и наименование валюты (например, доллары, йены, фунты стерлингов и т.п.) для купли или продажи (шаг 714). Покупатель или псевдопроцесс вводит эту информацию, которая получена функцией "Покупка" A и послана доверенному агенту B (шаги 716-718).
Функция "Покупка" B принимает сообщение и проверяет, предназначено ли оно для получения электронных денег (шаги 720-722). Если это так, то она посылает сообщение доверенному агенту A, запрашивая кредитное или дебетовое удостоверение банка (шаги 750-752). Функция "Держатель билетов" A принимает это сообщение и посылает список возможных удостоверений к ПТЦПА (шаг 754). Выбранное из этого списка удостоверение затем посылается доверенному агенту A (шаг 756). Затем функция "Держатель билетов" A отыскивает выбранное удостоверение кредитной или дебетовой карточки, а функция "Покупка" A посылает его доверенному агенту B (шаги 758-762).
Затем функция "Покупка" B проверяет действительность удостоверения, как описано ранее (шаги 764-766). Если удостоверение недействительно, то транзакция прекращается. Если же оно действительно, то функция "Держатель билетов" B создает расписку в покупке электронных денег, а функция "Покупка" B посылает эту расписку доверенному агенту A (шаги 768-772).
Функция "Покупка" A принимает эту расписку и проверяет, действительна ли она (шаги 774-776). Если она недействительна, то транзакция прекращается (шаг 778). Если же она действительна, то функция "Покупка" A посылает информацию с распиской к ПТЦПА для подтверждения покупателем (шаги 780-782). При неподтверждении транзакция прекращается, в противном случае функция "Покупка" A посылает расписку функции "Держатель билетов" A (шаги 784-786).
Затем функция "Покупка" A посылает доверенному агенту B сообщение, подтверждающее получение расписки (шаги 788-790). После этого функция "Покупка" B проверяет, подлежат ли получению электронные деньги (шаги 792-794). Если да, то функция "Связь с центральным процессором" B посылает сообщение с суммой и удостоверением в сеть 208 проверки полномочий по карточкам для кредитования банковского счета, идентифицируемого этим удостоверением (шаг 796). Вслед за процессом проверки полномочий по карточке (шаг 798) функция "Покупка" B проверяет, разрешен ли кредит (шаги 800-802). Если нет, то транзакция прекращается, в противном случае функция "Покупка" B посылает доверенному агенту A сообщение, что кредит был разрешен (шаги 804-806).
Далее доверенный агент A осуществляет платеж через денежный модуль, передавая соответствующую сумму доверенному агенту B, как описано в заявке на патент США 08/234461. В частности, вызывается подпрограмма "Платеж через денежный модуль" (шаг 808). Как показано на фиг. 12, функция "Генератор случайных чисел" A создает случайное число R(1) (шаг 520). Функция "Покупка" A затем посылает доверенному агенту B сообщение, указывающее на то, что будет произведен "платеж через денежный модуль", а также содержащее число R(1) (шаги 522-524). Функция "Покупка" B принимает это сообщение и посылает число R(1) функции "Менеджер безопасности" B (шаги 526-528). Функция "Генератор случайных чисел" B создает случайное число R(2) и посылает его доверенному агенту A (шаги 530-532). Функции "Менеджер безопасности" A и B совместно формируют ключ сеанса связи (ДА/ДМ) при помощи операции Исключающее ИЛИ над R(1) и R(2) (шаги 534-536).
На фиг. 13 показаны четыре зашифрованных канала связи, устанавливаемые в процессе транзакции. По зашифрованному каналу 436 между двумя доверенными агентами 120 передаются сообщения, зашифрованные с помощью ключа сеанса связи доверенного агента с доверенным агентом (ДА/ДА). Каналы 438 и 440 между доверенным агентом 120 и его денежным модулем 6 совместно используют ключ сеанса связи доверенного агента с денежным модулем (ДА/ДМ). Канал 442 между денежными модулями 6 в различных устройствах 122 транзакций использует ключ сеанса связи денежного модуля с денежным модулем (ДМ/ДМ).
Ключ сеанса связи (ДА/ДМ) используется для шифрования сообщений, передаваемых по зашифрованным каналам 438 и 440 между доверенным агентом 120 и связанным с ним денежным модулем 6. В этой точке блок-схемы алгоритма только два доверенных агента 120 имеют ключ сеанса связи (ДА/ДМ). Оба денежных модуля 6 согласно блок-схеме формируют копии ключа сеанса связи (ДА/ДМ) в более позднее время с целью инициировать обмен зашифрованными сообщениями между доверенными агентами 120 и их денежными модулями 6.
Следует отметить, что вместо реализации доверенного агента 120 и денежного модуля 6 в виде дискретных защищенных от несанкционированного доступа компонентов, их можно выполнить в виде одного защищенного от несанкционированного доступа модуля. В этом случае необязательно устанавливать безопасный сеанс связи между доверенным агентом 120 и денежным модулем 6 в одном и том же устройстве 122 транзакций. Однако дискретные денежные модули 6 и доверенные агенты 120 предпочтительны в том отношении, что такая конфигурация обеспечивает большую гибкость в их применении.
Как показано далее на фиг. 12, функция "Связь с денежным модулем" A посылает сообщение "выполнить платеж" и число R(1) своему денежному модулю A. Функция "Связь с денежным модулем" B также посылает сообщение "принять платеж" и число R(2) своему денежному модулю B (шаги 538-544).
На этой стадии денежный модуль A (в ДАПок 2) и денежный модуль B (в ДАПрод 4) устанавливают между собой сеанс связи таким образом, что каждый денежный модуль 6 по завершении этого сеанса имеет новый ключ сеанса связи (ДМ/ДМ) (шаг 546). При установлении такого сеанса связи между денежными модулями последние обмениваются сообщениями с использованием уже установленного сеанса связи между доверенными агентами. Как показано на фиг. 13, ключ сеанса связи для зашифрованного канала 442 формируется путем обмена сообщениями, зашифрованными с использованием канала 436. После установления сеанса связи между денежными модулями сообщения, передаваемые между ними, будут зашифрованы дважды с помощью как ключа сеанса связи (ДМ/ДМ), так и (ДА/ДА) на протяжении части тракта связи между доверенными агентами 120.
В предпочтительном варианте сеанс связи между денежными модулями устанавливается аналогично установлению сеанса связи между доверенными агентами. Денежные модули 6, таким образом, будут иметь свои собственные сертификаты, содержащие их ключи общего пользования. Обмен сертификатами и случайными числами (для применения операции Исключающее ИЛИ) инициирует создание ключей сеанса связи (ДМ/ДМ). Протокол "Установление сеанса связи", используемый денежными модулями, описан в заявке на патент США 08/427287 и показан на фиг. 14. Функция "Поддержание безопасности" A посылает сертификат модуля менеджеру сеанса связи, а функция "Менеджер сеанса связи" A принимает этот сертификат и проверяет, соединен ли денежный модуль A с сетью (шаги 1464-1466). Если денежный модуль A не соединен с сетью, то функция "Менеджер сеанса связи A" посылает в адрес B сертификат, полученный от функции "Поддержание безопасности" A (шаг 1476).
Альтернативно этому, если денежный модуль A соединен с сетью, функция "Симметричный ключ" A шифрует сертификат с помощью ключа K, а функция "Менеджер сеанса связи A" посылает зашифрованный сертификат на сетевой сервер (шаги 1468-1472). Сетевой сервер расшифровывает сертификат с помощью ключа K и посылает его в адрес B.
Независимо от того, был ли послан сертификат сетевым сервером или функцией "Менеджер сеанса связи" A, функция "Менеджер сеанса связи" B получает сертификат, а функция "Поддержание безопасности" B (если B является сервером безопасности, то эта функция реализуется функцией "Менеджер сеанса связи") проверяет этот сертификат (шаги 1480-1484). Если сертификат недействителен, то функция "Менеджер сеанса связи" B отмечает, что сеанс связи прерван, и информирует об этом пользователя или банк (шаги 1486- 1492) (если B является сервером безопасности, то B только отмечает, что транзакция прекращена).
Если сертификат действителен, то функция "Поддержание безопасности" B проверяет, находится ли A в списке неверных идентификаторов (шаги 1494-1496). Если A находится в этом списке, то сеанс связи прерывается. Если A нет в списке, то функция "Генератор случайных чисел" B создает случайное число R(B) и проверочное сообщение B (шаг 1498). Функция "Часы/таймер" B запрашивает дату и время (шаг 1500). Функция "Поддержание безопасности" B компонует в одно сообщение число R(B), проверочное сообщение B, время и дату (шаг 1502). Функция "Ключ общего пользования" B шифрует это сообщение при помощи ключа общего пользования A, а функция "Менеджер сеанса связи B", присоединяя к указанному зашифрованному сообщению сертификат B, посылает это сообщение к A (шаги 1504-1506).
Функция "Менеджер сеанса связи" A принимает сообщение, функция "Ключ общего пользования" A расшифровывает зашифрованную часть сообщения, а функция "Поддержание безопасности" A проверяет действительность сертификата B (шаги 1508-1514). Если сертификат недействителен, то функция "Менеджер сеанса связи" A отмечает, что сеанс связи прерван, и информирует об этом пользователя или банк (шаги 1516- 1522). Если сертификат действителен, то функция "Поддержание безопасности" A проверяет, находится ли B в списке неверных идентификаторов (шаги 1524-1526). Если B находится в этом списке, то сеанс связи прерывается. Если B нет в списке, то функция "Поддержания безопасности" A затребует дату и время и сравнивает их с датой и временем, полученными от B (шаги 1528-1530). Если дата и время находятся вне установленных пределов, то сеанс связи прерывается.
Если же дата и время находятся в установленных пределах, то функция "Генератор случайных чисел" A создает случайное число R(A) и проверочное сообщение A (шаг 1532). Функция "Поддержание безопасности" A затем формирует ключ сеанса связи, выполняя операцию Исключающее ИЛИ над числами R(A) и R(B) (шаг 1534). Проверочное сообщение A, проверочное сообщение B, время, дата и число R(A) компонуются в одно сообщение и шифруются при помощи ключа общего пользования B (шаг 1536). Это сообщение посылается к B функцией "Менеджер сеанса связи" A (шаг 1538). Функция "Менеджер сеанса связи B" принимает сообщение, после чего функция "Ключ общего пользования" B расшифровывает это сообщение, а функция "Поддержание безопасности" B проверяет проверочное сообщение B (шаги 1540-1546). Если проверочное сообщение B неправильное, то сеанс связи прерывается. Если проверочное сообщение B правильное, то функция "Поддержание безопасности" B формирует ключ сеанса связи, выполняя операцию Исключающее ИЛИ над R(A) и R(B) (шаг 1548). После этого затребуются значения времени и даты, которые сравниваются со временем и датой, полученными от A, с целью проверить, находятся ли они в заданных друг по отношению к другу пределах (шаг 1550). Если время и дата вне этих пределов, то сеанс связи прерывается. Если же время и дата находятся в заданных пределах, то функция "Менеджер сеанса связи" B отмечает начало сеанса связи (шаг 1552).
Затем функция "Менеджер сеанса связи" посылает к A подтверждение о приеме и проверочное сообщение A (шаги 1554-1556). Функция "Менеджер сеанса связи" A принимает сообщение, а функция "Поддержание безопасности" A проверяет проверочное сообщение A (шаги 1558-1562). Если проверочное сообщение неправильное, то сеанс связи прерывается. Если же проверочное сообщение правильное, то функция "Менеджер сеанса связи" A отмечает начало сеанса связи (шаг 1564).
Общая безопасность или защита системы в отношении денежных модулей может быть совмещена с безопасностью в отношении доверенных агентов 120, однако их предпочтительно разделять в целях повышения безопасности и гибкости системы.
Как показано далее на фиг. 12, денежный модуль A посылает число R(1) денежному модулю B. Выполнение этой функции может инициироваться приложением "Поддержание безопасности денежного модуля" A, постоянно хранящимся в денежном модуле A (шаг 548). Это приложение и другие приложения денежного модуля имеют префикс "ДМ" и описаны в заявке на патент США 07/794112 вместе с любыми модификациями и/или дополнениями, описанными в заявке на патент США 08/234461.
Случайное число R(1) посылается от денежного модуля A денежному модулю B подпрограммой "Посылка маршрутизированного сообщения" (шаг 550). Как показано на фиг. 15, функция "Симметричный ключ ДМ" A шифрует сообщение (в том числе R(1)) при помощи ключа сеанса связи (ДМ/ДМ) (шаг 640). Функция "Менеджер сеанса связи ДМ" A посылает сообщение функции "Менеджер сообщений центрального процессора" A, который в свою очередь посылает сообщение функции "Интерфейс сообщений" доверенного агента A (шаги 642-646). Доверенный агент A затем посылает сообщение функции "Интерфейс сообщений" доверенного агента B при помощи подпрограммы "Посылка сообщения" (шаг 648), которая шифрует и расшифровывает сообщение при помощи ключа сеанса связи (ДА/ДА) между доверенными агентами. Функция "Интерфейс сообщений" B затем посылает сообщение функции "Менеджер сеанса связи ДМ" B в денежном модуле B через функцию "Менеджер сообщений центрального процессора" B (шаги 650-654). В завершение функция "Симметричный ключ ДМ" B расшифровывает сообщение при помощи ключа сеанса связи (ДМ/ДМ) (шаг 656).
Как показано на фиг. 12, функция "Поддержание безопасности ДМ" B (в денежном модуле B) формирует ключ сеанса связи (ДА/ДМ) путем операции Исключающее ИЛИ над R(1) и R(2). Затем денежный модуль B посылает число R(2) денежному модулю A, который также формирует ключ сеанса связи (ДА/ДМ), выполняя операцию Исключающее ИЛИ над R(1) и R(2) (шаги 552-556). Таким образом, как показано на фиг. 13, на этой стадии существуют три ключа сеанса связи, а именно, (ДМ/ДМ), (ДМ/ДА) и (ДА/ДА). Таким образом, в наличии имеется четыре показанных зашифрованных канала.
Как показано далее на фиг. 12, функция "Связь ДМ с пользователем" A приглашает доверенного агента A ввести сумму платежа, указанную типом банкноты (например, доллары, йены, фунты и т.п.) (шаг 558). Денежный модуль, описанный в заявке на патент США 07/794112, будет обычно использовать приложение "Связь с абонентом" для связи с владельцем/держателем денежного модуля. Однако, как в настоящем примере, приложение "Связь с абонентом" связывается с доверенным агентом 120 для получения различных команд. B данном случае доверенный агент 120 предоставляет информацию о размере платежа и типе банкнот (доверенный агент A ранее связался с владельцем/держателем ДАПок 2 для определения суммы).
Приглашение на ввод, поступающее от денежного модуля 6 доверенному агенту 120, посылается при помощи подпрограммы "Посылка сообщения от ДМ к ДА" (шаг 560). Как показано на фиг. 16, функция "Симметричный ключ ДМ" A шифрует сообщение при помощи ключа сеанса связи (ДА/ДМ) (шаг 658). Функция "Менеджер сеанса связи ДМ" A посылает сообщение функции "Менеджер интерфейса" доверенного агента A через функцию "Менеджер сообщений центрального процессора" A (шаги 660-664). Функция "Симметричный ключ" A расшифровывает сообщение при помощи ключа сеанса связи (ДА/ДМ) (шаг 666). Как показано далее на фиг. 12, функция "Покупка" доверенного агента A посылает сумму (цену выбранного товара), выраженную типом банкнот, функции "Платеж/обмена ДМ" A (шаги 562-566). Это сообщение посылается при помощи подпрограммы "Посылка сообщения от ДА к ДМ" (шаг 564). Как показано на фиг. 17, функция "Симметричный ключ" A шифрует сообщение при помощи ключа сеанса связи (ДА/ДМ) (шаг 668). Функция "Интерфейс сообщений" A посылает сообщение функции "Менеджер сеанса связи ДМ" A через функцию "Менеджер сообщений центрального процессора" A (шаги 670- 674). В завершение функция "Симметричный ключ ДМ" A расшифровывает сообщение при помощи ключа сеанса связи (ДА/ДМ) (шаг 676).
Как показано на фиг. 12, функция "Каталог банкнот ДМ" A проверяет, имеет ли денежный модуль 6 достаточно средств для уплаты (шаги 568-570). Если нет, то денежные модули A и B прекращают транзакцию (шаги 572-582).
Протокол "Прекращение транзакции ДМ" (шаг 582) может соответствовать протоколу, используемому в предпочтительном варианте выполнения электронной денежной системе, которая описана в заявке на патент США 08/427287, и показанному на фиг. 18. Функция "Менеджер сеанса связи" отменяет изменения, возвращаясь к началу транзакции, и отмечает, что транзакция прекращена (шаг 1726). Затем функция "Менеджер сеанса связи" X проверяет, было ли послано сообщение "готов к фиксации" (шаги 1728-1730). Если сообщение было послано, то X обновляет свой журнал транзакций (шаг 1732), записывая, что X зафиксировал транзакцию после отправки сообщения о готовности к фиксации, и записывая идентификаторы банкнот и номиналы каждой банкноты, полученной при выполнении протокола "Передача банкнот". Таким образом, протокол прекращения регистрирует информацию, в то время как при неудачном выполнении подпрограммы "Фиксация транзакции" вызывается подпрограмма "Прекращение транзакции".
Если X является денежным модулем 1186 транзакций и было послано сообщение о готовности к фиксации, то функция "Связь с пользователем" X информирует своего пользователя о том, что транзакция была прекращена и что могла быть ошибка при передаче денег (шаги 1734-1738).
Если X является денежным модулем 1188 банковского кассира, то функция "Связь с банком" X информирует банк о том, что он должен отменить свои транзакции по бухгалтерскому учету (при помощи соответствующих дебетов и кредитов) (шаги 1740-1742). Если X является денежным модулем 1186 транзакций и не было послано сообщения о готовности к фиксации, то функция "Связь с пользователем" X информирует пользователя о том, что транзакция была прекращена (шаг 1744).
В любом случае функция "Менеджер сеанса связи" X посылает затем к Y сообщение о том, что транзакция не может быть завершена (шаги 1746-1748). Функция "Менеджер сеанса связи" Y отменяет свои изменения, возвращаясь к началу транзакции, и отмечает, что транзакция прекращена (шаг 1750). Затем Y информирует своего пользователя, что транзакция прекращена (шаги 1752-1754), либо информирует банк о необходимости отменить транзакции по бухгалтерскому учету (шаги 1756-1758).
Как описано выше, если транзакция прерывается во время протокола фиксации, то возникает возможность потери банкнот. Если это происходит, то получатель прекратит транзакцию, а передающий зафиксирует передачу банкнот. В этом случае денежный модуль получателя записывает информацию о банкнотах, которые он должен был получить, и сообщает пользователю, что существует потенциальная проблема (т.е. что он не получил банкноты, посланные A). Необходимо отметить, что при таком условии до тех пор, пока денежный модуль передающей стороны задействован, он правильно передает банкноты.
Пользователь денежного модуля-получателя может затем подать требование о возврате денег в сертификационное агентство. Требование будет содержать журнальную запись неудавшейся транзакции. Сертификационное агентство затем может проверить при помощи банков-эмитентов, были ли банкноты согласованы. Через некоторое время, если банкноты не были согласованы, пользователь может заново востребовать свои деньги.
Как показано далее на фиг. 12, сообщения между денежным модулем A и денежным модулем B посылаются при помощи подпрограммы "Посылка маршрутизированного сообщения по электронной почте", которая использует все три ключа сеанса связи (ДМ/ДМ), (ДА/ДМ) и (ДА/ДА). Согласно фиг. 19 функция "Симметричный ключ ДМ" A шифрует сообщение при помощи ключа сеанса связи (ДМ/ДМ) (шаг 678). Это сообщение затем дважды зашифровывается с помощью ключа сеанса связи (ДМ/ДА), а затем оно посылается доверенному агенту A. После получения доверенным агентом A сообщение расшифровывается при помощи ключа сеанса связи (ДМ/ДА) (шаг 680). Функция "Интерфейс сообщений" A затем посылает сообщение функции "Интерфейс сообщений" B (шаги 682-684). На пути между доверенными агентами 120 сообщение дважды шифруется при помощи ключа сеанса связи (ДА/ДА). Аналогичным образом функция "Интерфейс сообщений" B посылает сообщение функции "Симметричный ключ ДМ" B для окончательной расшифровки (шаги 686-690). На фиг. 13 проиллюстрированы различные уровни шифрования.
Как показано далее на фиг. 12, во время операций по прекращению работы денежных модулей A и B (шаг 582) они создают сообщения, посылаемые соответственно их доверенным агентам A и B (шаги 584-586), информируя этих доверенных агентов, что они прекратили транзакцию и что тем самым платеж был неудачным. Функции "Менеджер сеанса связи" A и B отмечают, что платеж был неудачным, после чего доверенные агенты A и B прекращают транзакцию (шаги 588-598).
Если же, с другой стороны, денежный модуль 6 покупателя имеет достаточное количество средств, то функция "Платеж/обмен ДМ" A посылает денежному модулю продавца сообщение, содержащее сумму, которая должна быть передана во время платежа, и тип банкнот (шаг 600). Это сообщение посылается при помощи подпрограммы "Посылка маршрутизированного сообщения по электронной почте" (шаг 602).
Денежный модуль B принимает сообщение, содержащее сумму платежа в соответствии с определением денежного модуля A. Функция "Связь ДМ с пользователем" B затем посылает доверенному агенту напоминание проверить эту сумму платежа (шаги 604-606). Соответственно функция "Покупка" в доверенном агенте B проверяет, является ли сумма правильной (шаги 608-610). Если сумма правильная, то доверенный агент B посылает сообщение "правильная сумма" денежному модулю B. Если же сумма неправильная, то посылается сообщение "неправильная сумма" (шаги 612-616). В случае сообщения "неправильная сумма" денежный модуль B информирует денежный модуль A, который в свою очередь передает запрос своему доверенному агенту на пересылку новой суммы или в противном случае прекращает транзакцию (шаги 618-622, 572-582). При платежах через денежный модуль, совершаемых во время покупки электронного товара, доверенный агент не будет посылать новую сумму, и, следовательно, оба денежных модуля 6 и оба доверенных агента 120 прекратят транзакцию.
Если же, с другой стороны, денежный модуль B принимает сообщение "правильная сумма" от своего доверенного агента, то денежный модуль B посылает обратно денежному модулю покупателя сообщение "подтверждение приема" (шаги 624-626). Когда функция "Платеж/обмен ДМ" A принимает сообщение "подтверждение приема", она передает сумму функции "Держатель денег" A (т.е. приложению, которое содержит электронные эквиваленты денег и осуществляет управление ими) (шаг 628).
Следует отметить, что описанный выше инициируемый плательщиком протокол иначе может быть реализован в виде инициируемого ремитентом платежа, как это имеет место в протоколе платежей через кассовый терминал (так называемых ПОС-платежей). В этом протоколе доверенный агент продавца информирует свой денежный модуль о сумме платежа, которая ожидается к получению, и эта информация о платеже посылается денежному модулю покупателя, который запрашивает своего доверенного агента проверить сумму, и в том случае, если сумма правильная, доверенный агент покупателя информирует свой денежный модуль.
Как показано далее на фиг. 12, денежный модуль покупателя A затем передает электронные банкноты в определенном количестве денежному модулю 4 продавца через тракт маршрутизации сообщений по электронной почте (шаг 630). На фиг. 20 показан протокол "Передача банкнот", описанный в заявке на патент США 08/427287. Функция "Каталог банкнот" X выбирает банкноту (ы) и суммы для передачи, обновляет сумму (ы) банкнот и последовательный (ые) номер (а) (шаг 1566). Возможными отправными точками в выборе банкнот для передачи, например, могут быть: (1) минимизация количества цифровых подписей (которые требуют времени на обработку), (2) минимизация размера пакета, (3) максимизация пригодности электронных банкнот, оставшихся у передающего пользователя (т.е. передача банкнот, до истечения срока действия которых осталось наименьшее количество времени). Эти задачи могут быть решены при помощи следующего алгоритма передачи банкнот: (1) определить все возможные альтернативы, содержащие минимальное количество банкнот, (2) определить, какие из этих альтернатив имеют наименьшее число передач, (3) если на шаге 2 может быть сделано более одного выбора, то выбрать тот, который имеет наименьшее число банкнотодней. "Банкнотодни" представляют собой остаточный номинал передаваемой банкноты, умноженный на количество дней, оставшееся до срока окончания действия банкноты, с суммированием по всем банкнотам в пакете.
Функция "Банкноты" X после получения сообщения от функции "Каталог банкнот" X создает трансферт, добавляемый к каждой передаваемой банкноте (шаг 1568). Функция "Ключ общего пользования" X создает подписи для банкнот(ы) (шаг 1570). Функция "Менеджер пакета" X затем компонует банкноты и их новые трансферты и подписи в пакет и посылает этот пакет к Y (шаги 1572-1574). Функция "Менеджер пакета" Y принимает пакет и разбирает его (шаг 1576).
Функция "Проверка" Y проверяет подлинность всех сертификатов в банкноте (ах) (например, сертификат генератора денег и все сертификаты трансфертов). Затем функция "Проверка" Y проверяет по всей предыстории передачи электронной банкноты совпадение всех идентификационных номеров в трансфертной группе с идентификационными номерами сертификатов модуля в группе подписей и сертификатов. Подтверждается также соответствие трансфертных сумм для каждой банкноты путем проверки всей предыстории передачи электронной банкноты с целью установить, была ли сумма, переданная при каждой последующей передаче, меньше суммы при непосредственно предшествовавшей ей передаче. Кроме того, проверяется соответствие переданной суммы ожидаемой сумме (шаги 1578-1580). Если такого соответствия нет, то транзакция прерывается (шаг 1582).
Если же соответствие есть, а Y является денежным модулем транзакций, то функция "Проверка Y" проверяет сроки действия банкнот(ы) (шаги 1584-1588). Если какая-либо из банкнот просрочена, то транзакция прекращается. Если же ни одна из них не просрочена, то функция "Проверка Y" сверяет каждый идентификатор из трансфертов банкноты со списком неверных идентификаторов (шаги 1590-1592). Если хотя бы один из идентификаторов трансфертов находится в списке неверных идентификаторов, то транзакция прерывается.
Если идентификаторов трансфертов нет в списке неверных идентификаторов (либо если Y не является денежным модулем транзакций), то функция "Ключ общего пользования" Y проверяет действительность подписей банкнот(ы) (шаги 1594-1596). Если какая-либо из подписей недействительна, транзакция прекращается. Если же подписи действительны, то функция "Проверка" Y проверяет, совпадают ли основные части банкнот с основными частями, хранимыми в приложении "Банкноты" или размещенными в "Журнале транзакций" (шаги 1598-1600). Для каждой совпадающей основной части банкноты создается дерево передачи банкноты с целью определить, имело ли место дублирование банкноты (шаги 1602-1604). Если какая-либо из банкнот была дублирована, транзакция прекращается. Эта проверка на дублирование (т.е. шаги 1598-1604) направлена, в частности, против тех лиц, которые пытаются создавать деньги путем передач банкнот самим себе с использованием "скомпрометированного" денежного модуля.
Если дублирований нет либо если не было идентифицировано совпадений основных частей банкнот, функция "Банкноты" Y помещает банкноту (ы) в держатель денег (шаг 1606). В завершение функция "Каталог банкнот" Y обновляет местонахождение (я) и значение (я) банкнот, а также инициализирует порядковый (е) номер (а) (шаг 1608).
Очевидно, что процесс "Передача банкнот" предусматривает шаг обновления и инициализации порядкового номера для упрощения согласования банкноты, а также шаг проверки, не находится ли принимающая сторона в списке неверных идентификаторов, и шаг проверки на дублирование банкнот. Эти дополнительные функции и шаги затрудняют введение в оборот и обращение дублированных банкнот и повышают способность отслеживать находящиеся в обращении дублированные банкноты.
Далее согласно фиг. 12 вызывается подпрограмма "Фиксация транзакции ДМ" (шаг 632). Протокол фиксации, используемый в предпочтительном варианте электронной денежной системе, описан в заявке на патент США 08/427287 и показан на фиг. 21. Функция "Менеджер сеанса связи" X посылает к Y сообщение "готов к фиксации" (шаги 1702-1704). По этому сообщению модуль, принявший такое сообщение, должен зафиксировать транзакцию. В обычном процессе передачи денег такая методика передачи сообщения о том, кто должен первым зафиксировать транзакцию, используется с той целью, чтобы сторона, передающая деньги, фиксировала транзакцию первой, исключая тем самым возможность дублирования денег.
Затем функция "Менеджер сеанса связи" Y посылает к X подтверждение о приеме (шаги 1706-1708) и фиксирует все невыполненные транзакции путем обновления своего журнала транзакций (шаг 1710). Кроме того, если Y является денежным модулем транзакций, то функция "Связь с абонентом" Y уведомляет пользователя об успешной транзакции (шаги 1712-1714). Затем функция "Менеджер сеанса связи" Y отмечает конец сеанса связи (шаг 1716).
Функция "Журнал транзакций" X принимает подтверждение о приеме от Y и обновляет свой журнал транзакций, фиксируя таким образом все невыполненные трансферты. X завершает свою фиксацию таким же образом, что и Y (шаги 1718-1724).
Этот алгоритм действует и в том случае, когда денежные модули 6 взаимодействуют с доверенными агентами 120, при этом функции "Посылка сообщения" соответствует функция "Посылка маршрутизированного сообщения по электронной почте", а сообщения функции "Связь с абонентом" фактически посылаются в зашифрованном виде доверенному агенту 120. С учетом вышесказанного функция "Менеджер сеанса связи ДМ" денежного модуля B посылает функции "Менеджер сеанса связи ДМ" денежного модуля A сообщение "готов к фиксации" при помощи подпрограммы "Посылка маршрутизированного сообщения по электронной почте" (шаги 1702-1704). Функция "Менеджер сеанса связи ДМ" A затем посылает денежному модулю B сообщение "подтверждение приема" и фиксирует транзакцию (шаги 1706-1716). Когда денежный модуль B принимает сообщение "подтверждение приема", он также фиксирует транзакцию (шаги 1718-1724).
Во время операций по фиксации, выполняемых денежными модулями A и B, последние формируют сообщения, посылаемые соответственно их доверенным агентам A и B (шаги 1714, 1722), информируя эти доверенные агенты о том, что они зафиксировали транзакцию и что, следовательно, платеж был успешным.
Как показано далее на фиг. 12, оба денежных модуля затем посылают вышеуказанные сообщения "успешный платеж" своим доверенным агентам (шаги 584-586). Эти сообщения шифруются с помощью ключа сеанса связи (ДА/ДМ). Функция "Менеджер сеанса связи" A фиксирует, что был совершен успешный платеж, а функция "Держатель билетов" A обновляет билет расписки, снабжая его информацией о платеже, например, датой транзакции (шаги 588, 592, 634). Затем доверенный агент A фиксирует транзакцию (шаг 636), так что наличие у него билета не является более "условным". Аналогичным образом функция "Менеджер сеанса связи" B фиксирует успешный платеж (шаги 590, 594), а доверенный агент B фиксирует транзакцию (шаг 638). После этого транзакция завершена.
Согласно фиг. 7 в приведенном выше описании рассмотрена ситуация, когда покупателю требовалось продать электронные деньги продавцу в обмен на дебетование своего банковского счета. B том случае, когда покупателю требуется получить от продавца электронные деньги, функция "Покупка" B посылает денежному модулю запрос проверить, достаточное ли количество средств имеется в наличии (шаги 724-726). Если денежный модуль в УТПрод имеет недостаточное количество средств, функция "Связь с центральным процессором" B посылает центральному процессору запрос о дальнейшем порядке действий, а центральный процессор проверяет, имеют ли другие устройства транзакций продавца требуемую сумму (шаги 728-732). Если такая сумма имеется, то "Центральный процессор" B посылает этому другому устройству транзакций продавца (имеющему "Центральный процессор" C) сообщение "послать деньги" (шаг 734). Между B и C устанавливается сеанс связи, и осуществляется платеж через денежный модуль (шаги 736- 738). Следует отметить, что в этом процессе не используется билет, как указано на шаге 634 в алгоритме платежа через денежный модуль. Этот шаг в данных условиях можно просто пропустить.
Если же ни один из других УТПрод не имеет достаточного количества средств, то "Центральный процессор" B проверяет, можно ли снять запрашиваемую сумму из банка, где у него имеется счет (шаги 740- 742). Если такую сумму можно снять, то денежный модуль A снимает электронные деньги из банка (шаг 748), используя модуль 202 генератора денег, модуль 204 банковского кассира и банковскую систему 206, как описано в заявке на патент США 07/794112. Если же электронные деньги нельзя снять со счета, то "Центральный процессор" B запрашивает прекращение, и транзакция прекращается (шаги 744-746).
В пункте, в котором продавец имеет достаточное количество средств для предоставления их покупателям, транзакция осуществляется согласно шагам 750-794. Затем функция "Связь с центральным процессором" B посылает сообщение, содержащее сумму и удостоверение, в сеть 208 проверки карточек с целью дебетовать банковский счет, идентифицируемый данным удостоверением (шаг 810). После этого осуществляется процесс проверки карточки (шаг 811), а функция "Покупка" B проверяет, разрешено ли дебетование (шаги 813- 815). Если дебетование не разрешено, транзакция прекращается, в противном случае доверенный агент B производит платеж через денежный модуль доверенному агенту A, завершая транзакцию (шаг 817).
В приведенном выше описании представлены предпочтительные варианты выполнения настоящего изобретения, при этом предполагается, что настоящее изобретение может использоваться в сетях с иной конфигурацией и в него могут быть внесены различные изменения и модификации, не выходящие за его объем.
Формула изобретения: 1. Система для открытого распределения электронных денег, содержащая доверенный агент покупателя, первый денежный модуль, доверенный агент продавца и второй денежный модуль, отличающаяся тем, что доверенный агент покупателя и доверенный агент продавца имеют шифровальные средства, позволяющие этим агентам обмениваться зашифрованными сигналами, при этом доверенный агент покупателя запрограммирован на передачу доверенному агенту продавца информации о покупке электронных денег и удостоверения счета, а доверенный агент продавца запрограммирован на передачу доверенному агенту покупателя билета расписки в получении, а также на обращение к сети проверки полномочий для инициирования процесса проверки полномочий с использованием данных из информации о покупке электронных денег и удостоверения счета и на инициирование передачи электронных денег от второго денежного модуля первому денежному модулю по получении соответствующего разрешения.
2. Система по п.1, отличающаяся тем, что удостоверение счета является билетом кредитной или дебетовой карты.
3. Система по п.1, отличающаяся тем, что доверенный агент покупателя выполнен с возможностью передачи информации о продаже электронных денег доверенному агенту продавца, а доверенный агент продавца выполнен с возможностью проверки полномочий с использованием для этого данных из информации о продаже электронных денег и удостоверения счета, а также с возможностью инициирования выполнения протокола, согласно которому первый денежный модуль передает электронные деньги второму денежному модулю.
4. Система по п.1, отличающаяся тем, что доверенный агент продавца выполнен с возможностью передачи электронных денег второму денежному модулю от другого, находящегося в совместном владении денежного модуля, при этом электронные деньги передаются от другого денежного модуля к первому денежному модулю.
5. Система по п.1, отличающаяся тем, что второй денежный модуль выполнен с возможностью обращения к сети банка, предоставляющего электронные деньги, и снятия электронных денег из этого банка для передачи первому денежному модулю.
6. Система по п.1, отличающаяся тем, что билет расписки в получении содержит идентификатор банка покупателя, номер счета и разрешенную сумму.
7. Система для открытого распределения электронных денег, содержащая доверенный агент покупателя, первый денежный модуль, доверенный агент продавца и второй денежный модуль, отличающаяся тем, что доверенный агент покупателя и доверенный агент продавца имеют шифровальные средства, позволяющие этим агентам обмениваться зашифрованными сигналами, при этом доверенный агент покупателя запрограммирован на передачу доверенному агенту продавца информации о продаже электронных денег и удостоверения счета и на инициирование передачи электронных денег от первого денежного модуля ко второму денежному модулю, а доверенный агент продавца запрограммирован на передачу доверенному агенту покупателя билета расписки в получении, а также на обращение к сети проверки полномочий для инициирования процесса проверки полномочий с использованием данных из информации о продаже электронных денег и удостоверения счета.
8. Система по п.7, отличающаяся тем, что удостоверение счета является билетом кредитной или дебетовой карты.
9. Система по п.7, отличающаяся тем, что билет расписки в получении содержит идентификатор банка покупателя, номер счета и разрешенную сумму.
10. Способ открытого распределения электронных денег с использованием доверенного агента покупателя, первого денежного модуля, доверенного агента продавца и второго денежного модуля, заключающийся в том, что между доверенным агентом покупателя и доверенным агентом продавца устанавливают криптографически безопасный сеанс связи, во время этого криптографически безопасного сеанса связи от доверенного агента покупателю доверенному агенту продавца передают информацию о покупке электронных денег и информацию об удостоверении счета, с помощью доверенного агента продавца создают билет расписки в получении, содержащий по меньшей мере частично информацию о покупке электронных денег и номер банковского счета покупателя, во время криптографически безопасного сеанса связи передают билет расписки в получении от доверенного агента продавца доверенному агенту покупателя, который условно сохраняет этот билет, с помощью доверенного агента продавца осуществляют обращение к сети проверки полномочий и инициирование процесса проверки полномочий, используя данные из информации о покупке электронных денег и информации об удостоверении счета, от второго денежного модуля передают электронные деньги первому денежному модулю, который условно сохраняет эти электронные деньги, осуществляют фиксацию транзакции первым денежным модулем, вследствие чего хранение электронных денег перестает быть условным, и передачу доверенному агенту покупателя информации об успешном получении электронных денег, осуществляют фиксацию транзакции вторым денежным модулем и передачу доверенному агенту продавца информации об успешной передаче электронных денег, осуществляют фиксацию транзакции доверенным агентом покупателя, вследствие чего хранение билета расписки в получении перестает быть условным, и осуществляют фиксацию транзакции доверенным агентом продавца.
11. Способ по п.10, отличающийся тем, что с помощью доверенного агента покупателя проверяют действительность билета расписки в получении.
12. Способ открытого распределения электронных денег с использованием доверенного агента покупателя, первого денежного модуля, доверенного агента продавца и второго денежного модуля, заключающийся в том, что между доверенным агентом покупателя и доверенным агентом продавца устанавливают криптографически безопасный сеанс связи, во время этого криптографически безопасного сеанса связи от доверенного агента покупателю доверенному агенту продавца передают информацию о продаже электронных денег и информацию об удостоверении счета, с помощью доверенного агента продавца создают билет расписки в получении, содержащий по меньшей мере частично информацию о продаже электронных денег и номер банковского счета покупателя, во время криптографически безопасного сеанса связи передают билет расписки в получении от доверенного агента продавца доверенному агенту покупателя, который условно сохраняет этот билет, с помощью доверенного агента продавца осуществляют обращение к сети проверки полномочий и инициирование процесса проверки полномочий, используя данные из информации о продаже электронных денег и информации об удостоверении счета, передают электронные деньги от первого денежного модуля второму денежному модулю, который условно сохраняет эти электронные деньги, осуществляют фиксацию транзакции первым денежным модулем и передачу информации доверенному агенту покупателя об успешной передачи электронных денег, осуществляют фиксацию транзакции вторым денежным модулем, вследствие чего хранение электронных денег перестает быть условным, и передачу информации доверенному агенту продавца об успешном получении электронных денег, осуществляют фиксацию транзакции доверенным агентом покупателя, вследствие чего хранение билета расписки в получении перестает быть условным, и осуществляют фиксацию транзакции доверенным агентом продавца.
13. Способ по п.12, отличающийся тем, что с помощью доверенного агента покупателя проверяют действительность билета расписки в получении.
14. Система для безопасного распределения электронных денег, включающая защищенное от несанкционированного доступа первое электронное устройство транзакций, содержащее первый процессор, и защищенное от несанкционированного доступа второе электронное устройство транзакций, содержащее второй процессор и выполненное с возможностью обмена данными с первым электронным устройством транзакций с использованием криптографически безопасного сеанса связи, при этом первый процессор служит для передачи информации о сумме покупки и удостоверения счета покупателя второму электронному устройству транзакций, второй процессор выполнен с возможностью встраивания информации о сумме покупки и информации об удостоверении счета покупателя в билет расписки в получении и передачи этого билета во время криптографически безопасного сеанса связи первому электронному устройству транзакций, второй процессор выполнен с возможностью инициирования процесса проверки полномочий, основанного на информации о сумме покупки и информации об удостоверении счета покупателя, а второе электронное устройство транзакций выполнено с возможностью передачи электронных денег первому электронному устройству транзакций в случае получения соответствующего разрешения, обеспечивая тем самым распределение электронных денег независимо от того, осуществляет ли распределение электронных денег банк покупателя.
15. Система по п.14, отличающаяся тем, что второе электронное устройство транзакций соединено с сетью продавца, а сеть проверки полномочий соединена с банковской сетью покупателя и процесс проверки полномочий осуществляется по соответствующей сети проверки полномочий.
16. Система по п.15, отличающаяся тем, что второе электронное устройство транзакций соединено с банковской сетью продавца, в которую входит тот банк, который осуществляет распределение электронных денег.
17. Система по п.14, отличающаяся тем, что удостоверение покупателя представляет собой билет кредитной или дебетовой карты с номером банковского счета покупателя.
18. Система для безопасного распределения электронных денег, включающая защищенное от несанкционированного доступа первое электронное устройство транзакций, содержащее первый процессор, и защищенное от несанкционированного доступа второе электронное устройство транзакций, содержащее второй процессор и выполненное с возможностью обмена данными с первым электронным устройством транзакций с использованием криптографически безопасного сеанса связи, при этом первый процессор служит для передачи информации о продаже электронных денег и удостоверения счета покупателя второму электронному устройству транзакций, второй процессор выполнен с возможностью встраивания информации о продаже электронных денег и информации об удостоверении счета покупателя в билет расписки в получении и передачи этого билета во время криптографически безопасного сеанса связи первому электронному устройству транзакций и с возможностью инициирования процесса проверки полномочий, основанного на информации о продаже электронных денег и информации об удостоверении счета покупателя, а первое электронное устройство транзакций выполнено с возможностью передачи электронных денег второму электронному устройству транзакций в случае получения соответствующего разрешения.
19. Система по п.18, отличающаяся тем, что второе электронное устройство транзакций соединено с сетью продавца, а сеть проверки полномочий соединена с банковской сетью покупателя и процесс проверки полномочий осуществляется по соответствующей сети проверки полномочий.
20. Система по п.19, отличающаяся тем, что второе электронное устройство транзакций соединено с банковской сетью продавца, в которую входит тот банк, который осуществляет распределение электронных денег.
21. Система по п.18, отличающаяся тем, что удостоверение покупателя представляет собой билет кредитной или дебетовой карты с номером банковского счета покупателя.