13.05.2014

Вручение Бита На Хранение (Bit Commitment) Небольшое Обновление

by Lazy Panda — Categories: КриптографияLeave a comment

Хочу сделать небольшое усовершенствование поста про вручение бита на хранение, добавив еще один вариант протокола.

Напомню цель протокола вручения бита. Алисе необходимо передать Бобу бит b так, чтобы тот мог его хранить, хоть и не знал значение. В нужный момент времени Алиса может объявить значение бита и доказать Бобу, что именно этот бит она ему передала. Боб может убедиться, что Алиса не поменяла своего мнения.

Итак, встречайте:

Вариант 3. Использование датчика псевдо случайных бит.

1)      Алиса берет некоторый качественный датчик случайных бит и инициализирует его некоторым случайным ядром генерации – Seed.

2)      Она же получает достаточно длинную последовательность байт – Random.

3)      Алиса проводит операцию инвертирования над каждым элементом последовательности Random, если b = 1 и ничего не меняет в противном случае. Полученный результат она отдает Бобу.

Бобу неизвестно проводила ли Алиса операцию инвертирования или нет – для него обе возможные последовательности выглядели бы одинаково случайно. Перебирать все возможные значения Seed? Удачи ему в этом нелегком деле.

4)      Для оглашения бита, Алисе достаточно опубликовать Seed. Боб легко проверяет значение бита.

Если Алиса решила передумать, то ей необходимо найти такое новое значение Seed’, что выход генератора случайных бит будет инвертирована. Для исключения такой возможности стоит регламентировать длину последовательности (она должна быть достаточно большой) и использование хороших криптографических генераторов.

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

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

© 2019 [Panda Tower] All rights reserved - Powered by [WordPress] and [Wallow]