В пакетном менеджере APT 2.9.15 прекращено использование apt-key

Опубликован выпуск инструментария для управления пакетами APT 2.9.15 (Advanced Package Tool). Ветка 2.9.x является экспериментальной и используется для разработки функциональности будущей стабильной версии APT 3.0, которая после стабилизации будет интегрирована в Debian Testing и войдёт в следующий значительный релиз Debian, а также будет добавлена в пакетную базу Ubuntu.

Ключевым изменением в новой версии стало окончательное прекращение использования утилиты apt-key для управления ключами, применяемыми для верификации цифровых подписей пакетов. Утилита apt-key несколько лет назад была объявлена устаревшей в связи с уходом от старой модели проверки целостности пакетов, в которой использовалось общее хранилище ключей (/etc/apt/trusted.gpg) и отсутствовала привязка ключей к репозиториям, т.е. ключ, добавленный для какого-то стороннего репозитория, подходил для проверки пакетов во всех репозиториях. Пришедший на смену apt-key метод работы с ключами подразумевает разделение хранилищ ключей для каждого репозитория (/etc/apt/trusted.gpg.d/ или /etc/apt/keyrings/).

Другие изменения:

  • В список путей для вызова gpg добавлена написанная на языке Rust утилита gpg-sq, принимающая те же аргументы, что и утилита gpg, но имитирующая её работу через Sequoia, реализацию OpenPGP на языке Rust. Вызов gpg-sq является более приоритетным, чем gpg, т.е. для использования gpg-sq вместо gpg достаточно установить соответствующий пакет.
  • Обеспечена привязка типов ключей к расширениям файлов: расширение «.asc» связано с ascii-armored ключами, «.gpg» — всегда с бинарными ключами, а все остальные файловые расширения вызовут ошибку «The key(s) in the keyring … are ignored as the file has an unsupported filetype». Например, при использовании файла с ключом «/etc/apt/keyrings/winehq-archive.key», его нужно будет переименовать в «/etc/apt/keyrings/winehq-archive.gpg» и исправить путь в файле в «/etc/apt/sources.list.d/».
  • Многие функции переведены на использование класса «std::string» вместо «const char *» (определённый в стандарте С++17 класс std::string_view, более эффективно работающий со строками за счёт использования ссылок на существующие данные и исключения лишнего копирования данных, пока не задействован в коде).
  • Реализована поддержка самостоятельной проверки хранилищ ключей (keyring) и выполнения операции dearmor (преобразование ключа в формате ASCII-armored в бинарный формат) без обращения к apt-key.
  • Добавлена функция Base64Decode.

Источник: http://www.opennet.ru/opennews/art.shtml?num=62312