2010-12-11 2 views
1

Я знаю, что это более или менее проблема с алгоритмом или дизайном, а не столько программирование, но я надеюсь, что все в порядке.RSA. Схема закрытых сообщений по-прежнему уязвима?

Я использую ослепленное сообщение и подписываю его C. После подписания я хочу удалить ослепление и предоставить другим пользователям A и B возможность поделиться сообщением. Является ли это безопасным или может подписывающее лицо по-прежнему читать эти сообщения, если у них есть общедоступные и закрытые ключи? Должны ли я предпринять дальнейшие шаги после того, как вы останетесь без следа, чтобы обеспечить конфиденциальность?

Я читал различные математические формулы, объясняющие, как это работает, но я скорее программист, чем математик. Я хочу обеспечить конфиденциальность, и я не уверен, что она работает.

+1

Это не очень хорошо описано. «может ли подписант по-прежнему читать эти сообщения, если у них есть общедоступные и закрытые ключи» - это фраза, которая действительно касается меня. Подписчик (C) подписал ослепленное сообщение, которое затем разделили с B и A без следа. На какой публичный и закрытый ключ вы ссылаетесь? Где в этом описании C получает доступ к незапечатанному сообщению? Не несет ли слепое подписанное сообщение с ним ослепляющий фактор? Если да, да, C может определить, что это было сообщение, которое он подписал ... Это очень непонятно для меня. – Slartibartfast

ответ

1

Подписи не обеспечивают конфиденциальность. Если у вас есть данные, которые должны быть переданы, но должны оставаться конфиденциальными, тогда вы должны использовать механизм передачи, который обеспечивает конфиденциальность.

Вы, по-видимому, также хотите, чтобы сообщение было подписано сущностью C, но не давало никаких указаний на сообщение C. Вообще говоря, подписывающий объект должен знать хэш только что подписанных данных. Затем подписавшийся может попытаться «угадать» данные с помощью сообщений о потенциальном хешировании и посмотреть, соответствует ли хэш, который он получил. Это точка, в которой слепые подписи вступают в действие: чтобы предупреждающий знак даже не видел хешированное сообщение.

Так получилось, что с помощью RSA хеш-сообщение может быть восстановлено из подписи и открытого ключа подписывающего. Подпись (C), безусловно, знает свой собственный открытый ключ. Следовательно, сама подпись должна быть конфиденциальной (в противном случае было бы бессмысленно использовать слепые подписи в первую очередь). Таким образом, какой-либо механизм, который вы используете для сохранения самого сообщения, когда он передается от A до B, также должен быть применен к сигнатуре (а подпись - , а не).

Смежные вопросы