Достижение анонимности получателя
Эта схема уже не является СЭП с предоплатой, так как платель-щик не знает, кому он будет платить. Чтобы избежать связи по времени между снятием со счета и депозитом, получателю следует от-срочить депозит. Так как он теперь единственное лицо, знающее не- затемненную монету, плательщик не может потратить ее дважды.
Рис. 3.8. Абстрактное представление базовой версии СЭП Шаума на основе схемы затемненной подписи для обеспечения анонимности получателя платежа
В терминах ранее введенных определений мы получили систему с резервированием (которая не имеет большого практического значения без анонимности). Чтобы обеспечить безопасность в спорах о состоянии депозитных счетов, получателю следует, как и в преды-дущей схеме, генерировать монеты с ключом монет.
Достижение максимальной анонимности. Различные виды анонимности из предыдущих схем можно скомбинировать вместе и получить СЭП, в которой анонимными являются и плательщик и получатель. В такой СЭП полученная монета не кладется на счет в банке, а немедленно обменивается на новую монету, которую полу-чатель может использовать в следующем платеже, но уже в роли плательщика.
198 Запечников С.
В. Криптографические протоколы и их прішеиеииеТехнически эта СЭП основывается на системе с анонимным по-лучателем. Предположим, что некоторый участник такой системы, выступавший в предыдущем платеже в роли получателя монеты, имеет недепонированную монету с ключом монеты. Обозначим эту
монету сои\ = pkcoill^hash(pki:oin^ с секретным ключом монеты
skc„i„mi и подписью sigj. В новом платеже этот же участник - владе-лец монеты - собирается выступить в роли плательщика, который должен передать свою монету новому получателю.
Для этого новый получатель вырабатывает новую монету, т. е.
генерирует пару ключей: gensiR(l)^>(skcobul,pka>inl)> полагает
coin1 = pke.(ljll2^hash(pkctljlt2s), проводит операцию затемнения, в ре-зультате чего получается blindcoin2, и посылает ее плательщику, т. е. обладателю монеты coin-i. Плательщик вместо депозитного по-ручения для его «старой» монеты подписывает обменный ордер, например в таком формате:
Sig ^ ((«exchange», blindcoin2).
При получении (соіпь sig^ и обменного ордера банк делает обычные проверки. Он проверяет обе подписи (т. е. убеждается, что монета действительна и что обменный ордер был сгенерирован вла-дельцем монеты) и проверяет по своей базе данных, что монета не была депонирована или обменена ранее. Если все нормально, он дает подпись biindsig2 для монеты blindcoin2 и посылает ее обратно плательщику.
Плательщик теперь пересылает blindsig2 получателю, который может снять с нее затемнение. Тогда он оказывается в той же самой ситуации, в какой до начала этого платежа был предыдущий полу-чатель монеты (выступавший здесь в качестве плательщика).
При таком протоколе платежа не существует связи между по-следовательными владельцами одной и той же монеты, которая су-ществовала в СЭП со стандартными величинами, т. е. такая СЭП больше похожа на металлические деньги, в то время как СЭП со стандартными величинами - на банкноты. Однако все платежи требуют связи с банком в режиме реального времени. Следовательно, в отличие от настоящих наличных денег полной независимости от
3. Системы электронных платежей 199
банка в таких платежах нет. Обменные транзакции с банком можно использовать для того, чтобы анонимно обменивать одну монету на несколько монет меньшего достоинства и наоборот.