Рейтинг:1

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

флаг sa
A W

По сути, я ищу способ для пользователя A создать подписанное сообщение, которое пользователь B может 1) проверить, написал ли пользователь A (т. е. с помощью ecrecover) и 2) содержимое сообщения может быть прочитано пользователем B без участия пользователя A. s закрытый ключ.

Я знаю, что пользователь А может использовать асимметричное шифрование для подписи сообщения, подлинность которого может быть проверена, но я хочу, чтобы пользователь Б мог прочитать содержимое этого сообщения и мог полагаться на него, не спрашивая пользователя A для отдельной незакодированной версии сообщения, поскольку пользователь A может лежать в незакодированной версии.

knaccc avatar
флаг es
Весь смысл подписи в том, что подписывающий не может лгать о том, какое сообщение подписывается.
fgrieu avatar
флаг ng
Я не вижу ничего в том, что спрашивают, что стандартная подпись не делает. В частности, «содержимое сообщения может быть прочитано пользователем B без необходимости использования закрытого ключа пользователя A» — это стандартная функция любой схемы подписи. Получателю не нужен закрытый ключ подписавшего; им нужен _открытый_ ключ. А «использовать асимметричное шифрование для подписи сообщения» содержит терминологическую ошибку: шифрование шифрует, а не подписывает. Возможно, вы имели в виду «использовать асимметричную _криптографию_ для подписи сообщения».
Рейтинг:3
флаг in

Безопасность схем подписи не требует шифрования сообщения. Алгоритм хеширования и параметры алгоритма подписи общеизвестны и являются единственным секретом ключ подписавшего должен все время храниться в секрете. Хеширование перед подписанием является частью схемы подписи, начиная с первой настоящей схемы подписи; Подпись Рабина схема.

В безопасности схем подписи у нас есть противник, фальсификатор, целью которого является подделка подписи сообщения, которое никогда не подписывалось ранее. Для простой игры можно считать, что фальсификатор получил $n$ пара $(\sigma_i,m_i)$ это пара сообщения и его подписи. Теперь, если фальсификатор может вывести новое сообщение $m \neq m_i$ за $i \in \{1,n\}$ с действительной подписью $(\сигма,м)$ мы называем это подделкой цифровой подписи с Экзистенциальная подделка.

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

Да. Пока сообщение не должно быть конфиденциальным, нет проблем с безопасными схемами подписи, такими как RSASSA-PSS, DSA, ECDSA, EdDSA, Schnoor и т. д. Сообщение может быть подписано в незашифрованном виде. Это распространено в цифровых медиа. Вы можете просмотреть содержимое и подпись PDF-файла, изображения, правительственных документов и т. д. и проверить подпись, если у вас есть настоящий открытый ключ подписавшего.

Имейте в виду, что если алгоритм хэширования не устойчив ко второму прообразу, подделка неизбежна. Используйте криптографическую функцию, устойчивую к столкновению, чтобы достичь как минимум Универсальная подделка (UF) при атаке с выбранным сообщением (CMA) UF-CMA, например SHA2, SHAKE of SHA3 и BLAKE2.

Если полагаться только на сопротивление второго прообраза SHA-1, то есть атаки на столкновение $\имя_оператора{SHA-1}$ нравиться;

  • Алиса создает два сообщения с одинаковым значением SHA-1, $m_1$ это то, что Боб хочет подписать и $m_2$ это то, что Алиса имеет преимущество для своих.
  • Алиса отправляет $m_1$ Бобу, и Боб читает и подписывает. $$(\sigma,m_1) = Sign(\operatorname{SHA-1}(m_1))$$
  • Алиса отправляет $(\сигма,м_2)$ к Чарли.
  • Чарли проверить знак, так как $\operatorname{SHA-1}(m_1) = \operatorname{SHA-1}(m_2)$
  • Алисе выгодно.

Не устанавливайте безопасность на сломанных схемах, даже если они снижают текущие риски.

mafu avatar
флаг kr
Я не понимаю это предложение: *Надеюсь, ни один из криптографических хэш-алгоритмов... не является безопасным при втором сопротивлении предварительного изображения.*
kelalaka avatar
флаг in
@mafu Мне нужно переписать эту часть. Если кто-то использует сломанную хеш-функцию сопротивления коллизиям, происходит атака. Поэтому всегда используйте устойчивые к коллизиям хэш-функции.

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.