Смонтируйте архив как каталог, например, с помощью AVFS, затем используйте ваш любимый инструмент копирования файлов.
mountavfs
cp -a --no-preserve=links ~/.avfs/path/to/t.tar.gz\# target-directory/
или
mountavfs
rsync -a ~/.avfs/path/to/t.tar.gz\#/ target-directory/
Для расшифровки (чтения) вам нужен только закрытый ключ.
Для шифрования (записи) вам нужен открытый ключ.
Поскольку редактирование включает в себя как чтение, так и запись, вам понадобятся оба ключа.
Я считаю, что вам не нужен ключ для удаления пароля, поскольку они хранятся в виде отдельных файлов (и вам не нужно расшифровывать файл, чтобы удалить его).
Прежде всего, я бы подумал о «редактировании» фразы-пароля, заменив значение для сайта другим, вообще не учитывая старую фразу-пароль (, которая включала бы операцию чтения ). pass
хранит URL-адрес сайта в имени файла в виде простого текста, таким образом, вообще не требует никаких криптографических операций для поиска/"поиска" зашифрованного контента.
Если вы хотите только добавлять, редактировать и удалять пароли, вам нужен только открытый ключ , специально предназначенный для операций добавления и редактирования, которые шифруют парольную фразу с использованием открытого ключ; на самом деле удаление вообще не подразумевает никаких криптографических операций.
С другой стороны, для считывания любой парольной фразы вам потребуется предоставить закрытый ключ , необходимый для расшифровки парольной фразы.