Π’ ΠΏΠ°ΠΊΠ΅Ρ‚Π½ΠΎΠΌ ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€Π΅ 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.

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ: opennet.ru