Die kryptografische Signatur eines RPM kann mit dem rpm -K
Befehl überprüft werden . Dies gibt eine Zeichenfolge zurück, die gpg
(oder pgp
) enthält und auf endet, OK
wenn sich die Signatur in der RPM-Datenbank befindet und gültig ist.
Wenn das Paket nicht signiert ist, aber die Prüfsummen gültig sind, erhalten Sie immer noch OK
, aber nein gpg
.
Wenn das Paket signiert ist, der Schlüssel jedoch in der RPM-Datenbank fehlt, erhalten Sie (GPG)
(Großbuchstaben) und NOT OKAY
, gefolgt von (MISSING KEYS: GPG#deadbeef)
.
Das ist praktisch, wenn ich herausfinden möchte, welchen Schlüssel ich für die Installation finden muss, damit meine Paketinstallation funktioniert.
Aber was ist, wenn ich überprüfen möchte, welcher der mehreren Schlüssel in meinem RPM-Schlüsselring zum Signieren eines bestimmten Pakets verwendet wurde?
quelle
-a
mit-p packagename.rpm
.Es gibt ein Signaturfeld, das aufgelistet wird über
rpm -qpi package.rpm
zB:quelle
Gehen Sie wie folgt vor, um herauszufinden, welcher GPG-Schlüssel in Ihrer RPM-Datenbank eine bestimmte Drehzahl signiert hat:
Listen Sie alle GPG-Schlüssel in Ihrer RPM-Datenbank auf:
Stellen Sie zunächst sicher, dass die betreffende Drehzahl mit einem Schlüssel in Ihrer RPM-Datenbank signiert ist :
Sie suchen nach dem OK am Ende und nicht nach "NICHT OK" (FEHLENDE SCHLÜSSEL), was bedeutet, dass es signiert wurde, sondern nach einem Schlüssel, der sich nicht in Ihrer RPM-DB befindet.
Richtig, die von uns überprüfte Drehzahl wurde mit einem Schlüssel in unserer RPM-Datenbank signiert.
Und dann erhalten Sie die Schlüssel-ID, mit der die Drehzahl signiert wurde:
Jetzt können Sie sehen, ob die letzten 8 Zeichen der Schlüssel-ID (dh b1275ea3 von fadd8d64b1275ea3) einem der 8 Zeichen entsprechen, die gpg-pubkey- vom ersten Befehl an folgen. Und in diesem Fall schon!
Und dann haben Sie den fraglichen Schlüssel:
Um in diesem Beispiel zu sehen, dass es der HP-Schlüssel war, der diese Drehzahl signiert hat.
Hoffe das hilft. Ich habe eine Weile gebraucht, um es herauszufinden. :-)
quelle
Geben
less <rpm file>
Sie denSignature
Eintrag aus und überprüfen Sie ihn , zB:quelle