
- •Раздел 1. Электронная жеребьевка.............................................................4
- •Раздел 1. Электронная жеребьевка. 5
- •Раздел 1. Электронная жеребьевка. Задание к лабораторной работе №1: «Электронная жеребьевка».
- •Данные для самопроверки к разделу 1.
- •Раздел 2. Разделение секрета. Задание к лабораторной работе №2: «Разделение секрета».
- •Данные для самопроверки к разделу 2.
- •Раздел 3. Покер по телефону. Задание к лабораторной работе №3: «Покер по телефону».
- •Данные для самопроверки к разделу 3.
- •Раздел 4. Слепая подпись, протоколы рукопожатия, скрытый канал. Задание к лабораторной работе №4: «Слепая подпись, протоколы рукопожатия, скрытый канал».
- •Раздел 5. Протоколы идентификации с нулевым разглашением. Задание к лабораторной работе №5: «Протоколы идентификации с нулевым разглашением».
- •Данные для самопроверки к разделу 5.
- •Раздел 6. Электронная монета.
- •6.1. Схема Шаума с банкнотами одинакового достоинства.
- •6.2. Схема Шаума с банкнотами различного достоинства.
- •Задания к лабораторной работе №6: «Электронная монета».
- •Раздел 7. Электронные выборы.
- •7.1. Протокол голосования со слепыми подписями.
- •7.2. Протокол голосования с двумя центральными комиссиями.
- •Задание к лабораторной работе №7: «Электронные выборы».
- •Раздел 8. Управление ключами.
- •8.1. Протоколы с использованием симметричного шифрования.
- •8.2. Протоколы на основе двухключевой криптографии.
- •8.3. Протоколы для широковещательного распределения ключей.
- •Задание к лабораторной работе №8: «Управление ключами».
- •Данные для самопроверки к разделу 8.
- •Приложения
- •Подписано в печать _______ 2012 г. Тираж 100 экз. Объем 2 п.Л. Формат 60х84/16 Заказ № ________
- •625003, Г. Тюмень, ул. Семакова, 10.
Раздел 6. Электронная монета.
В протоколе электронных платежей задействованы три участника, которых мы будем называть: банк, покупатель и продавец. Покупатель и продавец, каждый, имеют счет в банке и покупатель желает заплатить продавцу за товар или услугу.
В платежной системе используются три основные транзакции:
1. снятие со счета;
2. платеж;
3. депозит.
В транзакции снятия со счета покупатель получает подписанную банком электронную банкноту на затребованную сумму. При этом счет покупателя уменьшается на эту сумму.
В транзакции платежа покупатель передает банкноту продавцу и указывает сумму платежа. Продавец, в свою очередь, передает эту информацию банку, который проверяет подлинность банкноты. Если банкнота подлинная, банк проверяет, не была ли она потрачена ранее. Если нет, то банк заносит банкноту в специальный регистр, зачисляет требуемую сумму на счет продавца, уведомляет продавца об этом, и, если достоинство банкноты выше, чем сумма платежа, возвращает покупателю "сдачу" (через продавца).
С помощью транзакции депозита, покупатель может положить "сдачу" на свой счет в банке.
6.1. Схема Шаума с банкнотами одинакового достоинства.
Параметры протокола, выбираемые банком:
p, q, p*, q* – большие простые числа, секретный ключ банка;
n=pq, n*=p*q* – открытые ключи банка, формируются как модули RSA, публикуются;
f: Zn→Zn - односторонняя функция.
Устанавливается соглашение, согласно которому i-му нечетному простому числу соответствует номинал в 2i-1, скажем, рублей.
Банкнота
с номером N<n
номиналом S
рублей представляется как пара чисел
(N,
(f(N))1/m
mod
n),
где m=
,
S=(ek,
ek-1,…,e1)
– двоичное представление числа S,
pi
– i-е
нечетное простое число.
Транзакция снятия со счета.
A: выбирает случайное значение NZn ,случайное число r:0<r <n;
A→T: b=f(N)rm mod n;
T→A: y=
mod n;
A: x=yr-1 mod n.
После всех этих действий покупатель получает подписанную банкноту (N,x) достоинством S рублей.
Транзакция платежа
A: вычисляет сдачу S*—s=(ek,…,e1)2, d= , выбирает случайные числа N*Zn*, 0<r<n;
A→B: l=
mod n, z=f(N*)rd mod n*, s, n*;
B→T: l, z, s, n*;
T: Вычисляет d, проверяет, что пара (N, l) – подлинная банкнота достоинством s рублей. По специальному регистру проверяет, не была ли банкнота с номером N потрачена ранее. Если проверки прошли успешно, то заносит ее в регистр и посылает B уведомление о завершении транзакции; если проверки не пройдены, то прерывает протокол;
T→B: c=
mod n* - сдача;
B→A: с.
В результате выполнения данного протокола продавец получает банкноту (N,l) достоинством s рублей (действительно, l≡xd≡ (mod n), а степень dm-1 соответствует купюре достоинством в s рублей).
Покупатель
получает в «копилку» сдачу – купюру
(N*,
cr-1
mod
n*)
(действительно, сr-1≡
r-1
≡(f(N*)rd)
r-1≡(f(N*))
rr-1≡(f(N*))
(mod
n*)).
Транзакция депозита.
A→T: (N*, f(N*)1/d mod n*) , d;
T: Устанавливает достоинство и подлинность копилки, а также проверяет, что копилка с номером N* не использовалась ранее ни в одной транзакции депозита. Если все условия выполнены, банк зачисляет сумму, находящуюся в копилке, на счет покупателя.