mirror of https://github.com/voidlizard/hbs2
42 lines
2.6 KiB
Plaintext
42 lines
2.6 KiB
Plaintext
NOTE: group-key-update-note
|
||
Операция group-key-update создаёт новый групповой ключ со
|
||
старым секретом.
|
||
|
||
Таким образом, можно добавить читателей и опубликовать ключ,
|
||
**И ЭТО НЕ ПРИВЕДЁТ К ПЕРЕШИФРОВАНИЮ ФАЙЛА**, будет новый блок
|
||
типа MTreeAnn со ссылкой на новый ключ. Нонс останется старый!
|
||
|
||
Следствия: если таким образом пользователи удалены, то они
|
||
все равно смогут читать "старую" версию дерева, если у них
|
||
останется ключ.
|
||
|
||
Таким образом можно добавить пользователей, имеющих доступ
|
||
к данным, но не удалить.
|
||
|
||
Для удаления - в принципе ничего не сделать, то, что однажды
|
||
опубликовано (и сохранено), уже невозможно разопубликовать.
|
||
|
||
Есть опции: поменять нонс, перешифровать старым секретом
|
||
Сгенерировать новый групповой ключ (с новым секретом).
|
||
|
||
Если контент еще не выкачан, то можно удалить старый контент,
|
||
и заменить новым.
|
||
|
||
Это глобальное ограничение таких систем: уже опубликованные
|
||
зашифрованные данные останутся доступны тем, кто их скачал и
|
||
мог когда-то расшифровать.
|
||
|
||
Новый контент, зашифрованный этим групповым ключом ---
|
||
будет сходу не будет доступен "удалённым" пользователям,
|
||
однако у них есть секрет, зашифрованный их публичным ключом,
|
||
т.е при должной настойчивости они смогут его достать и расшифровать
|
||
контент.
|
||
|
||
Таким образом, при удалении пользователей из ключа так, что бы
|
||
они не получили доступ к новому контенту --- НУЖНО ВСЕГДА
|
||
перегенерировать ключ.
|
||
|
||
Например, при удалении пользователей из шифрованного
|
||
репозитория git.
|
||
|