Как расшифровать зашифрованный файл, передав «gpg passphrase» в команду с помощью PHP? - PullRequest
1 голос
/ 20 сентября 2011

Я хотел бы знать, как я могу расшифровать файл, передав пароль / секретный ключ в командной строке.

Я пытался использовать это, но он все еще дает мне приглашение ввести кодовую фразу.

echo shell_exec ("echo $ passphrase | gpg --passphrase-fd 0 -o $ unencrypted_file -d $ encrypted_file");

Моя цель - создать программу на PHP, которая может расшифровывать файлы автоматически.

Ответы [ 3 ]

2 голосов
/ 20 сентября 2011

Вы, вероятно, должны использовать php функции вместо разветвления gpg

0 голосов
/ 22 декабря 2013
gpg --passphrase-file $file

man gpg говорит: «Считать фразу-пароль из файла файл . Из файла файл будет прочитана только первая строка. Это можно использовать, только если указана только одна фраза-пароль. Очевидно, что парольная фраза, хранящаяся в файле, имеет сомнительную безопасность, если другие пользователи могут читать этот файл. Не используйте эту опцию, если можете ее избежать. "

0 голосов
/ 20 сентября 2011

Я не знаю, какой подход разработчики gpg использовали для предотвращения этого. Но в качестве альтернативы вы можете использовать этот модуль PHP: http://pecl.php.net/package/gnupg для обработки расшифровки. Смотри также http://php.net/gnupg

...