Введение в криптографию
[an error occurred while processing this directive]

Неотслеживаемость. Электронные деньги - часть 5


Система из работы [] также основана на схеме электронной подписи RSA. Допуская некоторую вольность в обозначениях будем писать вместо , где , и называть эту величину корнем -ой степени из . Как и выше, - некоторая односторонняя функция, которую выбирает и публикует банк.

Устанавливается соглашение, согласно которому корню степени, равной -му нечетному простому числу, соответствует номинал в фантиков. Т.е. предъявитель пары является владельцем электронной банкноты достоинством в 1 фантик. Если в этой паре вместо корня кубического присутствует корень 7-ой степени, то банкнота имеет достоинство 4 фантика, а если 21-ой степени - то 5 фантиков. Иными словами, для банкноты достоинством фантиков необходим корень степени, равной произведению всех простых чисел, соответствующих единицам в двоичном представлении числа .

Все банкноты, выдаваемые банком, имеют одинаковое достоинство. Для простоты изложения будем, как и в [], предполагать, что оно равно 15 фантикам. Тогда подпись банка на банкноте, это - корень -ой степени, где . Для этой схемы нужен также еще дополнительный модуль RSA , который используется в работе с так называемой копилкой (см. ниже). Этот модуль выбирается и публикуется таким же образом, как и модуль .

Транзакция снятия со счета выполняется таким же образом, как описано выше. В результате покупатель получает электронную банкноту .

Предположим теперь, что покупатель желает заплатить продавцу 5 фантиков. Для этого он вычисляет

, просто возводя полученную банкноту в 55-ую степень, и создает копилку, выбирая случайное значение и вычисляя . Здесь опять - затемняющий множитель. Транзакция платежа начинается с пересылки значений ,

, а также суммы платежа (5 фантиков) продавцу. Продавец, в свою очередь, передает всю эту информацию банку. Банк легко проверяет, что пара

представляет собой подлинную банкноту достоинством 5 фантиков. Он проверяет по специальному регистру, не была ли банкнота с номером потрачена ранее. Если нет, записывает в регистр вновь полученную банкноту, увеличивает счет продавца на 5 фантиков и посылает продавцу уведомление о завершении транзакции платежа, а также ``сдачу'' (10 фантиков) покупателю, возвращаемую через копилку: .




- Начало -  - Назад -  - Вперед -


[an error occurred while processing this directive]