Рейтинг:1

Многопользовательское шифрование, однопользовательское дешифрование

флаг cn

У меня есть гибридное шифрование (RSA, AES) для проекта обмена файлами, над которым я работаю, где я использую один открытый ключ для шифрования на стороне отправителя и соответствующий закрытый ключ для расшифровки на стороне получателя. Я хотел бы, чтобы отправитель мог отправлять файлы нескольким пользователям, каждый из которых имеет только свою уникальную пару ключей (открытые ключи будут распространяться).

Я знаю, что это возможно с помощью ООП

gpg --encrypt --recipient [email protected] --recipient [email protected] doc.txt

Как это сделать с помощью ЮАР или же ЕСС? Является ли это возможным?

kelalaka avatar
флаг in
Распространенным способом является совместное использование симметричного ключа, в котором файл зашифрован с помощью AES, ChaCha20 и т. д.
Maarten Bodewes avatar
флаг in
Почему бы не проверить, как это делает [протокол OpenPGP] (https://datatracker.ietf.org/doc/html/rfc4880)? Несомненно, они шифруют один или несколько секретных ключей сообщения, используя различные открытые ключи получателей, а затем включают идентификатор ключа, чтобы получатели могли использовать правильный закрытый ключ для расшифровки этого секретного ключа. Затем секретный ключ используется для шифрования/дешифрования фактических данных (т. е. это гибридная криптосистема, в которой секретный ключ шифруется несколько раз).
J.Valášek avatar
флаг cn
Наличие асимметричной части один раз для каждого открытого ключа было очевидным решением, но мне не нравилась сложность размера O(n). Я подумал, не знает ли кто-нибудь здесь лучшего решения... Что-то вроде кольцевой подписи, но для шифрования. Думаю, мне придется просмотреть код OpenPGP, чтобы увидеть, что они используют...
J.Valášek avatar
флаг cn
@kelalaka, для которого требуется общий секрет, я не хочу этого ...
Maarten Bodewes avatar
флаг in
PGP — старый протокол, не ждите от него слишком многого. Обратите внимание, что, например. Операции с открытым ключом RSA могут быть относительно быстрыми, даже быстрее, чем операции с открытым ключом ECC, и вы также можете распараллелить операции.
kelalaka avatar
флаг in
Почему все ключи должны быть разными? Что пошло бы не так, если бы у каждого пользователя был один и тот же ключ?
J.Valášek avatar
флаг cn
@MaartenBodewes приятно знать. Я ожидал, что ECC будет быстрее. Это избавляет меня от некоторых проблем, поскольку я использую разные библиотеки на разных платформах, и иногда не так просто заставить их шифровать одинаково.
J.Valášek avatar
флаг cn
@kelalaka Есть преимущества асимметричного шифрования, которые я хочу иметь. Имея только один ключ, я не мог контролировать права доступа к отдельным файлам и/или мне пришлось бы создавать безопасную схему распределения ключей. В конце концов, это было бы бессмысленно сложнее.
Рейтинг:1
флаг ru

Вы описываете проблему широковещательное шифрование. Впервые эту проблему исследовал Фиат и Наор в статье с метким названием «Шифрование вещания», где они придумали схему, устойчивую к $к$ вступая в сговор с пользователями $к$ стоимость пропускной способности.

Более эффективная схема с использованием криптографии на основе спаривания была предложена Боне и Джентри в статье «Шифрование вещания с защитой от сговора с Короткие шифротексты и закрытые ключи», которая обеспечивает стойкость независимо от $к$.

Maarten Bodewes avatar
флаг in
Обратите внимание, что ссылка на статью Boneh/Gentry представляет собой незащищенную загрузку PDF-файла, которая может не работать в вашем браузере. Для хрома нужно скопировать ссылку и вставить в адресную строку. Даниэль, пожалуйста, предоставьте текстовые ссылки, так как ссылки могут стать темными; не все улавливается машиной обратного пути.
J.Valášek avatar
флаг cn
Это то, что я искал, большое спасибо.
Daniel S avatar
флаг ru
@Maarten Спасибо за советы и правки. Есть ли что-нибудь вроде руководства по стилю cryptoSE, которое я могу прочитать для подобных вещей?

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

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