id: Гость   вход   регистрация
текущее время 05:47 13/12/2019
Автор темы: Гость, тема открыта 15/10/2006 16:44 Печать
https://www.pgpru.com/Форум/РаботаСGnuPG/ИсходноеИмяФайлаПриДекодировании-КакСохранить
создать
просмотр
ссылки

Исходное имя файла при декодировании – как сохранить?


GPG используется в автоматическом декодировании поступающих файлов. Иногда зашифрованные файлы дополнительно "шифруются": переименовываются в что-то нейтральное типа file.txt.
Поставлена задача восстанавливать имя исходного файла при декодировании.


  1. Найдена опция --use-embedded-filename, но не ясно, как ей пользоваться, т.к. используется опция --output.
  2. Если решить п 1., то как избежать потери данных при возможном совпадении имен? Приходит на ум: сохранить в отдельной директории, прочитать имя, проверить на совпадение в целевой директории...

 
Комментарии
— SATtva (15/10/2006 17:04)   профиль/связь   <#>
комментариев: 11543   документов: 1036   редакций: 4092
Какая версия GnuPG? Используется он как часть внешнего скрипта/программы или индивидуально? Что ещё за опция --output?
— Гость (15/10/2006 22:59)   <#>
версия самая свежая 1,4,5
используется в скрипте
-о в какой файл сохранять
— unknown (16/10/2006 13:03, исправлен 16/10/2006 13:04)   профиль/связь   <#>
комментариев: 9796   документов: 488   редакций: 5664


Неважно под какой ОС, но почему бы не использовать простейший архиватор перед шифрованием в том же скрипте, который бы сохранял имя, права доступа и т.д.?
— Гость (16/10/2006 23:41)   <#>
теоретически – да
но на практике это компромиссный ход. Архиватор явно избыточен, так как передается один файл, перед кодированием он сжимается, исходное имя файла хранится. Только вот как его достать?
Приведите, пожалуйста, пример декодирования с использованием опции --use-embedded-filename
— Гость (16/10/2006 23:44)   <#>
с сохранением в указаной директории
— unknown (17/10/2006 09:00, исправлен 17/10/2006 09:01)   профиль/связь   <#>
комментариев: 9796   документов: 488   редакций: 5664
теоретически – да
но на практике это компромиссный ход.

Я сталкивался на практике, что так все бэкапы файлов обычно и хранятся.

Архиватор явно избыточен, так как передается один файл, перед кодированием он сжимается, исходное имя файла хранится.

В unix системах архиваторы (tar, cpio) только архивируют – собирают список файлов или файл внутрь одного файла архива, а сжимают другие программы, например gzip или bzip2. Если их не использовать, то и сжатия никакого не будет.

исходное имя файла хранится. Только вот как его достать?



Разве нельзя нечто похожее организовать под Win? Может быть кто-то, кто пользуется именно опцией --use-embedded-filename скажет Вам про неё подробнее, но я бы попробывал архиваторы (разумеется не громоздкие коммерческие rar или даже zip), а настоящие архиваторы.
— SpiderMike (20/08/2007 09:26)   <#>
Очень жаль, что никто так и не привел пример декодирования с использованием опции --use-embedded-filename.
— spinore (20/08/2007 09:44, исправлен 20/08/2007 09:45)   профиль/связь   <#>
комментариев: 1515   документов: 44   редакций: 5786
Что ещё за опция --output?

--output file

-o file

Write output to file.
© man gpg.
Сразу видно, кто какие программы использует :)
— SATtva (20/08/2007 10:43)   профиль/связь   <#>
комментариев: 11543   документов: 1036   редакций: 4092
Тогда вроде бы стояла версия 1.4.6, и прежде чем задать вопрос, проверил наличие опции в man'е. Не было там output'а. Может искал криво, но это вряд ли.
— spinore (20/08/2007 11:04)   профиль/связь   <#>
комментариев: 1515   документов: 44   редакций: 5786
Не помню, я gpg недавно обновлял из-за узявимости. Мне кажется что и в 1.4.6 была. Врать не буду.
— SATtva (20/08/2007 14:23)   профиль/связь   <#>
комментариев: 11543   документов: 1036   редакций: 4092
Самой опции сто лет в обед (на момент написания того постинга просто о ней забыл), но в прошлой версии программы о ней не было упоминания в man'е. Не исключаю, что это могла быть моя ошибка, но могла быть и ошибка в руководстве.
— Kent (20/08/2007 14:24)   профиль/связь   <#>
комментариев: 437   документов: 30   редакций: 15
Опция --output была ещё в версии 1.2.х. И, наверняка, раньше.
— Kent (20/08/2007 14:27)   профиль/связь   <#>
комментариев: 437   документов: 30   редакций: 15
И в man тоже была.
— Гость (20/08/2007 15:14)   <#>
Найдена опция use-embedded-filename, но не ясно, как ей пользоваться, т.к. используется опция output.

Очень жаль, что никто так и не привел пример декодирования с использованием опции use-embedded-filename

Честно говоря, не понял, в чем проблема.

Получаю расшифрованый my_secret_namedfie_file.txt (с правильным именем). Проверил в GnuPG v1.4.7 под WinXP.
Странная особенность (похоже глюк) если при расшифровке использовать --batch, то в случае наличия файла с таким именем gpg отрапортует, что все OK, но файл не перепишет, а с --yes переписывает. По-хорошему, с --batch он должен вываливатьс я в failed: file exists с соответствующим кодом ошибки.
Ваша оценка документа [показать результаты]
-3-2-1 0+1+2+3