Kernel/signature/git

Материал из ALT Linux Wiki

Проверка целостности исходного кода в git репозитории ядра

Получение GPG ключей

Актуальные GPG ключи ALT Linux Team находятся в пакете alt-gpgkeys. Чтоб получить ключ нужного разработчика нужно поставить этот пакет, экспортировать из него нужный ключ и импортировать его себе.

 # apt-get update
 # apt-get install -y gnupg alt-gpgkeys

Просмотр ключа kernelbot@altlinux.org:

$ gpg --homedir /usr/lib/alt-gpgkeys --export -a kernelbot@altlinux.org
-----BEGIN PGP PUBLIC KEY BLOCK-----

mQINBGIeFoIBEADmQd7S8XOmycX09w2KQGQhv3YLPUxvHbt6EKxnSHWwMnJc/m4D
09v/Qqxc//Tfo0jtdbQ4xWR1xss+rv/Nro0qbl6GAN2Own6F+YUVPAgjtdd0Z6VF
4o0GzrcOoi/j8JB0zcnlKWCkfqHdKwiL84dCYe3jvxKQOegjJbyM6HfZUeDOzvfa
azQYnQwh/BLFXbdO0V+M1tGarH0p5A0xttxU8/iBmSvUTO42J2WGfixXHuitxFjw
8T0gDpPFsTClQBHdUVCbZeOIsIuKKKgApZfANj8+G01ohV1DmrYwTlRKwkGmVm+I
PwQcAxXpod/EWFFkz9UgPg5jza2idys9S9Q95UhmxpZIwyR5JY2BGu4FNlP4JUFj
EN0TZCkgyVQFdyd9ZTUXgLJfwwLA4mEXQaKGIU8aJZqC/JWeyvdcYIiNcgDw5k57
Hi8nSuCWHUvdzBsVjjQD3dqjWMJk1hnG4QF1ReaCJhBdknQ8swqCbole1JWOWBc9
h7iLrVGIZlz83o4EtT2xCYXANtvwNS2+wgngpcbSVP+Ih8c7yQNgMyNqvY9L2IpG
MqE4F+MlcPF/7YEvQ6PAj5fA/jjXQRxibUI2/57Fi7ra0QX51m91U7dHCFwMf7Tq
BH9WrXB+7+7BJ3uxId0kfrBOwF+MQvE64HvnXUwsxiWXGONCt13ZCKxafwARAQAB
tCNLZXJuZWwgQm90IDxrZXJuZWxib3RAYWx0bGludXgub3JnPokCPgQTAQgAKAUC
Yh4WggIbAwUJEswDAAYLCQgHAwIGFQgCCQoLBBYCAwECHgECF4AACgkQ0D4P+DvT
EoMVHg/6AmbcnSpC1iWnNP9CsZ06BwRhFjDNuCvL/lwn22lt3/x036PHE7C4RGGl
VrNROsULql9EUswZu3/O5x5AljV89lpDJtnleFS3RNWyJdsG01DEeDYN6g1dDP3n
ZpWstGkmys7reXt65myLHE+US4Q+3PwY7hAmvnIlmLJcNdbiffy8C/ofu15BK0gw
7P/Z6AVj4+02PiLtSpTT0ySmEas6WxRZL+TKYB8rUX65r4YJ3KG9+Fb2mRJHweJw
N0X04gMek12bwUpe51oyKPBtG2vVYjiaWg3ijaaawqawuiZMQie95Nw4wORV7cMs
xcxWOAnvvNfhSwCK42t74jRTnBb0Q4gIbUN8rRrUaiH7659JdapDYjW6eGYhhwDE
LwLTpQ0HgVVKRKrhXWIFH5/F75KzcINxUio+QSDi86sRVLBZ1X8c+mGFvBhQa4/E
mlKZM3xJn3I+Bq8rBIB3/Mr9e9z5KdiNqnki7v3IRGHUJxInUxn8Ao9ZSJAipfQV
gcycSih+03xLtU/QFor4CP9EtjVmJf3ki3mm3gWWc6+d7aNDWLH7emPeTqveQZdZ
Z4QOfUvNurnTExkF/gaWb6qJXUZCIznaUYJDJXtHq0+SlETHhGJ/MNLT4E0Jv/F5
j0zGgjXc6y6PDJo3cE7fsMGmiuHNXqvxLhOYeKeD3dfbBsVH5Ak=
=/Hjj
-----END PGP PUBLIC KEY BLOCK-----

Для импорта публичного ключа kernelbot@altlinux.org, под своим пользователем запустите:

 $ gpg --homedir /usr/lib/alt-gpgkeys --export -a kernelbot@altlinux.org | gpg --import

Проверка целостности исходного кода

На каждом git теге из которого собран пакет имеется gpg подпись того кто послал его на сборку. Так как более новые git объекты ссылаются на предыдущие достаточно проверить подпись на последнем (заглавном) из них.

  • Просмотр заглавного (указывающего на HEAD) тэга. Находясь в git репозитории пакета:
 linux$ git tag --points-at HEAD
 kernel-image-std-def-5.10.154-alt1
  • Проверка, что заглавный тэг подписан разработчиком Kernel Bot. Импортируйте его публичный ключ себе, как описано выше, и затем:
 linux$ git verify-tag $(git tag --points-at HEAD)
 gpg: WARNING: unsafe ownership on homedir '/usr/lib/alt-gpgkeys'
 gpg: Signature made Fri 11 Nov 2022 12:24:11 AM MSK
 gpg:                using RSA key D03E0FF83BD31283
 gpg: Good signature from "Kernel Bot <kernelbot@altlinux.org>" [unknown]

Убедитесь в наличии строки "Good signature".