- Вопрос или проблема
- Ответ или решение
- Стандарты получения открытого ключа GPG
- 1. Причины, по которым разработчик может не делиться своим публичным ключом
- 2. Стандарты для разработчиков в области обмена открытыми ключами
- 3. Процесс получения открытых ключей
- 4. Проблемы с файлами и их .sig в одном месте
- Заключение
Вопрос или проблема
Я пытаюсь создать пакет (suricata) локально на своем компьютере, и при создании пакета система проверяет подписи файлов источника с помощью gpg, и я получаю “FAILED (unknown public key X) (из пакета AUR).
Насколько я понимаю, поставщик пакета должен желать поделиться своим открытым ключом другим способом или на другой платформе, чтобы пользователи могли подтвердить, что его открытый ключ действительно принадлежит разработчику.
Есть ли причина, по которой издатель не делится своим открытым ключом? Существует ли стандарт для разработчиков в отношении распространения своего открытого ключа?
Просто импортировать ключ с сервера ключей не имеет никакого значения, так как не гарантирует, что ключ действительно принадлежит предполагаемому владельцу.
Кроме того, в чем смысл сервисов, которые предоставляют файл и соответствующий ему .sig файл с одного и того же сервера? Если сервер взломан, злоумышленник может подделать оба файла, так что загрузка обоих файлов с этого сервера не будет существенно безопаснее…? Это решение, похоже, лишь создает ложное чувство безопасности.
Ответ или решение
Стандарты получения открытого ключа GPG
Когда вы сталкиваетесь с ошибкой "FAILED (unknown public key X)" при попытке установить пакеты из AUR, это означает, что ваша система не может найти соответствующий открытый ключ для проверки подписи пакета. Важно понимать, как безопасно и надёжно получать открытые ключи GPG, чтобы убедиться в подлинности пакетов.
1. Причины, по которым разработчик может не делиться своим публичным ключом
Существуют несколько причин, по которым разработчики могут не публиковать свои открытые ключи. Во-первых, это может быть связано с невнимательностью или недостаточной осведомлённостью о безопасности. Некоторые разработчики могут считать, что их аккаунты достаточно безопасны, и не видят смысла в развернутой системе шифрования.
Во-вторых, в ряде случаев открытые ключи могут быть не так легко доступны из-за отсутствия стандартного рабочего потока для их публикации или из-за недостатка ресурсов для поддержки такой публикации. Однако это ставит под угрозу безопасность пользователей и может привести к их уязвимости.
2. Стандарты для разработчиков в области обмена открытыми ключами
Существует несколько рекомендаций и стандартов, которые разработчики должны соблюдать:
-
Публикация ключей на надёжных платформах: Разработчики должны размещать свои открытые ключи на авторитетных сервисах, таких как ключевые серверы, собственные веб-сайты или репозитории, чтобы обеспечить легкий доступ и подтверждение их подлинности.
-
Использование веб-фото: Разработчики могут использовать веб-страницы с подписью (web of trust) и ссылаясь на свои ключи, указывая на другие источники, подтверждающие их личность, такие как профиль в социальных сетях или другие публичные данными.
-
Аудит и верификация ключей: Рекомендуется проводить аудит открытых ключей, чтобы удостовериться, что они не были компрометированы, и что к ним есть доверие со стороны сообщества.
3. Процесс получения открытых ключей
Чтобы вам не пришлось сталкиваться с проблемами, связанными с неподтверждёнными ключами, следуйте этим шагам:
-
Проверьте документацию пакета: Разработчики часто публикуют свои открытые ключи в README или других документах на странице проекта.
-
Импортируйте открытые ключи от ключевых серверов: Это может быть сделано через команды GPG, но необходимо убедиться, что источник ключей надёжен.
-
Подтверждение подлинности ключа: Всегда сверяйтесь с источниками, которые могут подтвердить идентичность разработчика, например, через следующие каналы:
- Связь с разработчиком через официальный сайт или репозиторий.
- Поиск отзывов или упоминаний о разработчике в сообществе.
4. Проблемы с файлами и их .sig в одном месте
Вы правильно отметили, что хранение исполняемых файлов и их подписей на одном сервере может подвергать автомобилям риску. В случае компрометации сервера злоумышленники могут изменить как файлы, так и их подписи, что делает верификацию бесполезной. Поэтому важно:
-
Использовать независимые источники: Загружайте пакеты и подписи из разных источников, чтобы повысить уровень доверия.
-
Рассмотреть возможность использования защищенных хранилищ: Например, использование сервисов, которые предоставляют возможность сохранять данные в зашифрованном виде или в распределённых системах.
Заключение
Безопасность работы с GPG ключами требует осведомлённости и активных действий со стороны разработчиков, а также бдительности со стороны пользователей. Следуя описанным стандартам и рекомендациям, вы не только сможете надёжно защищать свои данные, но и развивать культуру подлинности и доверия в цифровом пространстве.