Да, это возможно. Основная идея заключается в том, что вы используете ключ для конкретного документа. Например.
- Создайте новую пару ключей, специфичную для файла, который вы шифруете.
- Используйте личный ключ документа для его шифрования.
- Используйте открытые ключи для каждого пользователя для шифрования открытого ключа документа.
- Отправьте все шифрования открытого ключа документа вместе с документом.
- Каждый пользователь может использовать свой личный ключ hir для расшифровки ключа документа, который был зашифрован с помощью личного ключа hir, а затем использовать этот ключ для расшифровки документа.
Для более полного / строгого объяснения:
На самом деле шифрование документа не нужно выполнять с использованием шифрования с открытым ключом. Классическая (сильная) симметричная схема шифрования с тем же ключом для шифрования и дешифрования должна работать так же хорошо. (На самом деле лучше, так как шифрование / дешифрование документа будет быстрее.)
Могут быть и другие (хорошие) способы сделать это. Но предложение о шифровании документа несколько раз и отправке всех копий имеет очевидную проблему: вы эффективно отправляете (или храните) N копий документа для N человек.