1

Ситуация: мы планируем использовать расширение PHP GnuPG для шифрования / дешифрования файлов.

В настоящее время мы настроили несколько тестовых случаев, используя ключи, сгенерированные с помощью GPG.

Сгенерированные файлы находятся в:

/Users/username/.gnupg/

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

(E_WARNING: 2): gnupg::addencryptkey() [gnupg.addencryptkey]: get_key failed

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

Файлы принадлежат мне - username , но apache работает как www .

Несколько дней назад у меня это работало, но, похоже, каждый раз, когда я использую GPG Keychain Access для импорта / экспорта ключа, права доступа к папке меняются.

Вопрос: Каковы точные разрешения, необходимые для разрешения PHP GnuPG добавлять ключи шифрования и дешифрования?

1 ответ1

3

Ответ Михаила "660" не сделал это для меня. Единственный способ получить достаточные разрешения без предупреждения "небезопасные разрешения" - выполнить 700. Не больше, не меньше.

Вот мои команды (аромат Ubuntu)

sudo -i
cd /var/www/.gnupg
chown -R www-data:www-data .
chmod -R 700 .

Кроме того, в моем случае проблема заключалась в том, что gnupg_addencryptkey предназначен для загрузки ключевых отпечатков, которые уже были импортированы. Поэтому вместо этого я использовал функцию gnupg_import, согласно документации PHP: http://php.net/manual/en/function.gnupg-import.php

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .