- SYNOPSIS
- DESCRIPTION
- RETURN VALUE
- WARNINGS
- INTEROPERABILITÄT
- BEFEHLE
- OPTIONEN
- So ändern Sie die Konfiguration
- Wenn die Option --auto-key-import gesetzt ist und die Signatur einen eingebetteten Schlüssel enthält,
- Wenn ein beliebiger Schlüsselserver konfiguriert ist und der Issuer Fingerprint Teil der Signatur ist
- Schlüsselbezogene Optionen
- Eingabe und Ausgabe
- OpenPGP-protokollspezifische Optionen
- Kompatibilitätsoptionen
- Dinge tun, die man normalerweise nicht tun möchte
- Veraltete Optionen
- BEISPIELE
- SO SPEZIFIZIEREN SIE EINE BENUTZER-ID
- FILTERAUSDRÜCKE
- VERTRAUENSWERTE
- DATEIEN
- HINWEISE
- FEHLER
- SIEHE AUCH
gpg – OpenPGP-Verschlüsselungs- und Signaturtool
SYNOPSIS
gpg [--homedir dir] [--options file] [options] command [args]
DESCRIPTION
gpg ist der OpenPGP-Teil von GNU Privacy Guard (GnuPG). Es ist ein Tool zur Bereitstellung digitaler Verschlüsselungs- und Signaturdienste unter Verwendung des OpenPGP-Standards. gpg bietet eine vollständige Schlüsselverwaltung und alle Funktionen, die Sie von einer vollständigen OpenPGP-Implementierung erwarten würden.
Es gibt zwei Hauptversionen von GnuPG: GnuPG 1.x und GnuPG 2.x. GnuPG 2.x unterstützt moderne Verschlüsselungsalgorithmen und sollte daher gegenüber GnuPG 1.x bevorzugt werden. Sie müssen GnuPG 1.x nur verwenden, wenn Ihre Plattform GnuPG 2.x nicht unterstützt oder wenn Sie Unterstützung für einige Funktionen benötigen, die GnuPG 2.x eingestellt hat, z. B. das Entschlüsseln von Daten, die mit PGP-2-Schlüsseln erstellt wurden.
Wenn Sie nach Version 1 von GnuPG suchen, stellen Sie möglicherweise fest, dass diese Version unter dem Namen gpg1 installiert ist.
RETURN VALUE
Das Programm gibt 0 zurück, wenn keine schwerwiegenden Fehler vorliegen, 1, wenn mindestens eine Signatur ungültig ist, und andere Fehlercodes für schwerwiegende Fehler.
Beachten Sie, dass die Signaturprüfung eine genaue Kenntnis darüber erfordert, was signiert wurde und von wem es signiert wurde. Die ausschließliche Verwendung des Rückgabewerts ist daher keine geeignete Methode, um eine Signatur mit einem Skript zu überprüfen. Verwenden Sie entweder die Statuscodes oder verwenden Sie das Tool gpgv, das für die einfache Signaturprüfung in Skripten entwickelt wurde.
WARNINGS
Verwenden Sie ein gutes Passwort für Ihr Benutzerkonto und stellen Sie sicher, dass alle Sicherheitsprobleme auf Ihrem Computer behoben werden. Setzen Sie außerdem einen angemessenen physischen Schutz für Ihren Computer ein. Erwägen Sie die Verwendung eines guten Passworts als letzte Schutzmaßnahme für Ihren geheimen Schlüssel, falls Ihr Computer gestohlen wird. Es ist wichtig, dass Ihr geheimer Schlüssel nicht weitergegeben wird. Die Verwendung eines tragbaren Tokens oder einer Smartcard mit dem geheimen Schlüssel ist oft ratsam.
Wenn Sie abgetrennte Signaturen überprüfen, stellen Sie sicher, dass das Programm dies weiß; geben Sie entweder beide Dateinamen auf der Befehlszeile an oder verwenden Sie „-“, um STDIN anzugeben.
Für die Verwendung von gpg in Skripten oder bei unbeaufsichtigten Prozessen stellen Sie sicher, dass Sie die maschinenlesbare Schnittstelle und nicht die Standardschnittstelle verwenden, die für die direkte Verwendung durch Menschen bestimmt ist. Die maschinenlesbare Schnittstelle bietet eine stabile und gut dokumentierte API, die unabhängig von der Sprache oder zukünftigen Änderungen von gpg ist. Um diese Schnittstelle zu aktivieren, verwenden Sie die Optionen --with-colons und --status-fd. Für bestimmte Operationen kann auch die Option --command-fd nützlich sein. Sehen Sie sich diese Manpage und die Datei „DETAILS“ für die Spezifikation der Schnittstelle an. Beachten Sie, dass die GnuPG-„Info“-Seiten sowie die PDF-Version des GnuPG-Handbuchs ein Kapitel über die unbeaufsichtigte Verwendung von GnuPG enthalten. Alternativ kann die Bibliothek GPGME als High-Level-Abstraktion auf dieser Schnittstelle verwendet werden.
INTEROPERABILITÄT
GnuPG versucht, eine sehr flexible Implementierung des OpenPGP-Standards zu sein. Insbesondere implementiert GnuPG viele der optionalen Teile des Standards, wie z. B. den SHA-512-Hash und die ZLIB- und BZIP2-Komprimierungsalgorithmen. Es ist wichtig zu beachten, dass nicht alle OpenPGP-Programme diese optionalen Algorithmen implementieren, und dass durch die erzwungene Verwendung über die Optionen --cipher-algo, --digest-algo, --cert-digest-algo oder --compress-algo in GnuPG eine völlig gültige OpenPGP-Nachricht erstellt werden kann, die jedoch vom beabsichtigten Empfänger nicht gelesen werden kann.
Es gibt Dutzende von Varianten von OpenPGP-Programmen, und jedes unterstützt eine etwas andere Teilmenge dieser optionalen Algorithmen. Zum Beispiel unterstützte bis vor Kurzem keine (ungepatchte) Version von PGP den BLOWFISH-Chiffre-Algorithmus. Eine Nachricht, die BLOWFISH verwendet, konnte einfach nicht von einem PGP-Benutzer gelesen werden. Standardmäßig verwendet GnuPG das Standard-OpenPGP-Präferenzsystem, das immer die richtige Wahl trifft und Nachrichten erstellt, die von allen Empfängern verwendet werden können, unabhängig davon, welches OpenPGP-Programm sie verwenden. Überschreiben Sie diese sichere Standardeinstellung nur, wenn Sie wirklich wissen, was Sie tun.
Wenn Sie die sichere Standardeinstellung unbedingt überschreiben müssen oder die Präferenzen für einen bestimmten Schlüssel aus irgendeinem Grund ungültig sind, ist es viel besser, die Optionen --pgp6, --pgp7 oder --pgp8 zu verwenden. Diese Optionen sind sicher, da sie keine bestimmten Algorithmen verletzen, die gegen OpenPGP verstoßen, sondern die verfügbaren Algorithmen auf eine "PGP-sichere" Liste reduzieren.
BEFEHLE
Befehle werden nicht von Optionen unterschieden, außer dass nur ein Befehl erlaubt ist. Im Allgemeinen werden irrelevante Optionen stillschweigend ignoriert und möglicherweise nicht auf ihre Richtigkeit überprüft.
gpg kann ohne Befehle ausgeführt werden. In diesem Fall wird eine Warnung ausgegeben und eine angemessene Aktion ausgeführt, je nach Art der Datei, die als Eingabe angegeben wird (eine verschlüsselte Nachricht wird entschlüsselt, eine Signatur wird verifiziert, eine Datei mit Schlüsseln wird aufgelistet usw.).
Wenn Sie auf Probleme stoßen, fügen Sie der Aufrufung bitte die Option --verbose hinzu, um weitere Diagnosemeldungen anzuzeigen.
Befehle, die nicht spezifisch für die Funktion sind
--version
Gibt die Programmversion und die Lizenzinformationen aus. Beachten Sie, dass Sie diesen Befehl nicht abkürzen können.
--help
-h
Gibt eine Hilfenachricht aus, die die nützlichsten Befehlszeilenoptionen zusammenfasst. Beachten Sie, dass Sie diesen Befehl nicht beliebig abkürzen können (Sie können jedoch die Kurzform -h verwenden).
--warranty
Gibt die Garantieinformationen aus.
--dump-options
Gibt eine Liste aller verfügbaren Optionen und Befehle aus. Beachten Sie, dass Sie diesen Befehl nicht abkürzen können.
Befehle zum Auswählen des Operationstyps
--sign
-s
Signiert eine Nachricht. Dieser Befehl kann mit --encrypt (zum Signieren und Verschlüsseln einer Nachricht), --symmetric (zum Signieren und symmetrischen Verschlüsseln einer Nachricht) oder sowohl --encrypt als auch --symmetric (zum Signieren und Verschlüsseln einer Nachricht, die mit einem geheimen Schlüssel oder einer Passphrase entschlüsselt werden kann) kombiniert werden. Der Signierschlüssel wird standardmäßig ausgewählt oder kann explizit mit den Optionen --local-user und --default-key festgelegt werden.
--clear-sign
--clearsign
Erstellt eine Klartextsignatur. Der Inhalt einer Klartextsignatur ist ohne spezielle Software lesbar. OpenPGP-Software ist nur zur Verifizierung der Signatur erforderlich. Klartextsignaturen können End-of-Line-Leerzeichen zur Plattformunabhängigkeit ändern und sind nicht für die umgekehrte Anwendung gedacht. Der Signaturschlüssel wird standardmäßig ausgewählt oder kann mit den Optionen --local-user und --default-key explizit festgelegt werden.
--detach-sign
-b Erstellt eine separate Signatur.
--encrypt
-e Verschlüsselt Daten für einen oder mehrere öffentliche Schlüssel. Dieser Befehl kann mit --sign kombiniert werden (um eine Nachricht zu signieren und zu verschlüsseln), --symmetric (um eine
Nachricht zu verschlüsseln, die mit einem geheimen Schlüssel oder einer Passphrase entschlüsselt werden kann) oder --sign und --symmetric zusammen (für eine signierte Nachricht, die mit einem geheimen Schlüssel oder einer Passphrase entschlüsselt werden kann). Die Optionen --recipient und zugehörige Optionen geben an, welche öffentlichen Schlüssel für die Verschlüsselung verwendet werden sollen.
--symmetric
-c Verschlüsselt mit einer symmetrischen Chiffre unter Verwendung einer Passphrase. Die standardmäßig verwendete symmetrische Chiffre ist AES-128, kann aber mit der Option --cipher-algo
ausgewählt werden. Dieser Befehl kann mit --sign (für eine signierte und symmetrisch verschlüsselte Nachricht), --encrypt (für eine Nachricht, die mit einem geheimen Schlüssel oder einer Passphrase entschlüsselt werden kann) oder --sign und --encrypt zusammen (für eine signierte Nachricht, die mit einem geheimen Schlüssel oder einer Passphrase entschlüsselt werden kann) kombiniert werden. Gpg speichert die für die symmetrische Verschlüsselung verwendete Passphrase zwischen, sodass eine Entschlüsselungsoperation nicht unbedingt erfordert, dass der Benutzer die Passphrase erneut eingeben muss. Die Option --no-symkey-cache kann verwendet werden, um diese Funktion zu deaktivieren.
--store
Speichert nur (erstellt ein einfaches Literal-Datenpaket).
--decrypt
-d Entschlüsselt die in der Befehlszeile angegebene Datei (oder STDIN, wenn keine Datei angegeben ist) und schreibt sie nach STDOUT (oder in die mit --output angegebene Datei). Wenn die
entschlüsselte Datei signiert ist, wird auch die Signatur überprüft. Dieser Befehl unterscheidet sich von der Standardoperation, da er niemals in die Dateinamen schreibt, die in der Datei enthalten sind, und er Dateien ablehnt, die nicht mit einer verschlüsselten Nachricht beginnen.
--verify
Geht davon aus, dass das erste Argument eine signierte Datei ist, und überprüft diese, ohne eine Ausgabe zu erzeugen. Ohne Argumente wird das Signaturpaket von STDIN gelesen. Wenn nur ein Argument angegeben wird, wird erwartet, dass die angegebene Datei eine vollständige Signatur enthält.
Wenn mehr als ein Argument angegeben wird, sollte das erste Argument eine Datei mit einer separaten Signatur angeben, und die verbleibenden Dateien sollten die signierten Daten enthalten. Um die signierten Daten von STDIN zu lesen, verwenden Sie '-' als zweiten Dateinamen. Aus Sicherheitsgründen liest eine separate Signatur die signierten Daten nicht von STDIN, es sei denn, dies wird explizit angegeben.
Hinweis: Wenn die Option `--batch` nicht verwendet wird, kann gpg davon ausgehen, dass ein einzelnes Argument eine Datei mit einer abgetrennten Signatur ist, und es wird versuchen, die entsprechende Datendatei zu finden, indem bestimmte Suffixe entfernt werden. Die Verwendung dieser historischen Funktion zur Überprüfung einer abgetrennten Signatur wird dringend nicht empfohlen; Sie sollten immer die Datendatei explizit angeben.
Hinweis: Beim Überprüfen einer Klartextsignatur überprüft gpg nur die Klartextdaten, die signiert wurden, und nicht zusätzliche Daten außerhalb der Klartextsignatur oder der direkt nach der Trennlinie folgenden Kopfzeilen. Die Option `--output` kann verwendet werden, um die tatsächlich signierten Daten auszugeben, aber es gibt auch bei diesem Format einige Fallstricke. Es wird empfohlen, Klartextsignaturen zugunsten von abgetrennten Signaturen zu vermeiden.
Hinweis: Mit der Option `--batch` wird die Signaturprüfung bei der ersten fehlerhaften Signatur beendet. Dies ist eine sichere Standardeinstellung für die unbeaufsichtigte Verarbeitung, aber manchmal ist ein Status für alle Signaturen erforderlich. Um dieses frühzeitige Abbruchverhalten zu überschreiben, verwenden Sie die Option `--proc-all-sigs`.
Hinweis: Um zu überprüfen, ob eine Datei mit einem bestimmten Schlüssel signiert wurde, kann die Option `--assert-signer` verwendet werden. Alternativ kann das Tool `gpgv` verwendet werden. `gpgv` ist so konzipiert, dass es signierte Daten mit einer Liste vertrauenswürdiger Schlüssel vergleicht und nur bei einer gültigen Signatur erfolgreich ist. Es hat eine eigene Handbuchseite.
--multifile
Dies modifiziert bestimmte andere Befehle, so dass sie mehrere Dateien für die Verarbeitung über die Befehlszeile akzeptieren oder aus STDIN lesen, wobei jede Dateiname in einer separaten Zeile steht. Dadurch können viele Dateien gleichzeitig verarbeitet werden. `--multifile` kann derzeit zusammen mit `--verify`, `--encrypt` und `--decrypt` verwendet werden. Beachten Sie, dass `--multifile --verify` nicht mit abgetrennten Signaturen verwendet werden darf.
--verify-files
Identisch mit `--multifile --verify`.
--encrypt-files
Identisch mit `--multifile --encrypt`.
--decrypt-files
Identisch mit `--multifile --decrypt`.
--list-keys
-k
--list-public-keys
Listet die angegebenen Schlüssel auf. Wenn keine Schlüssel angegeben sind, werden alle Schlüssel aus den konfigurierten öffentlichen Schlüsselringen aufgelistet.
Verwenden Sie niemals die Ausgabe dieses Befehls in Skripten oder anderen Programmen. Die Ausgabe ist nur für Menschen gedacht, und ihr Format wird sich wahrscheinlich ändern. Die Option `--with-colons` gibt die Ausgabe in einem stabilen, maschinenlesbaren Format aus, das für die Verwendung in Skripten und anderen Programmen bestimmt ist.
--list-secret-keys
-K
Listet die angegebenen geheimen Schlüssel auf. Wenn keine Schlüssel angegeben sind, werden alle bekannten geheimen Schlüssel aufgelistet. Ein `#` nach den anfänglichen Tags `sec` oder `ssb` bedeutet, dass der geheime Schlüssel oder Unter-Schlüssel derzeit nicht verwendet werden kann. Wir sagen auch, dass dieser Schlüssel offline geschaltet wurde (z. B. kann ein Hauptschlüssel offline geschaltet werden, indem der Befehl `--export-secret-subkeys` verwendet wird). Ein `>` nach diesen Tags zeigt an, dass sich der Schlüssel auf einer Smartcard befindet. Siehe auch `--list-keys`.
--check-signatures
--check-sigs
Das Gleiche wie `--list-keys`, aber die Schlüsselsignaturen werden ebenfalls überprüft und aufgelistet. Beachten Sie, dass der Widerrufstatus eines signierenden Schlüssels aus Leistungsgründen nicht angezeigt wird. Dieser Befehl hat die gleiche Wirkung wie die Verwendung von `--list-keys` mit `--with-sig-check`.
Der Status der Verifizierung wird durch ein Flag direkt hinter dem „sig“-Tag angezeigt (und somit vor den unten beschriebenen Flags). Ein „!“ zeigt an, dass die Signatur erfolgreich verifiziert wurde, ein „-“ kennzeichnet eine fehlerhafte Signatur und ein „%“ wird verwendet, wenn beim Überprüfen der Signatur ein Fehler aufgetreten ist (z. B. ein nicht unterstützter Algorithmus). Signaturen, bei denen der öffentliche Schlüssel nicht verfügbar ist, werden nicht aufgelistet; um deren Schlüssel-IDs anzuzeigen, kann der Befehl --list-sigs verwendet werden.
Für jede aufgelistete Signatur gibt es zwischen dem Signaturstatus-Flag und der Schlüssel-ID mehrere Flags. Diese Flags geben zusätzliche Informationen zu jeder Schlüssel-Signatur. Von links nach rechts sind dies die Zahlen 1-3 für die Zertifikatsprüfstufe (siehe --ask-cert-level), „L“ für eine lokale oder nicht exportierbare Signatur (siehe --lsign-key), „R“ für eine nicht widerrufbare Signatur (siehe den Befehl --edit-key „nrsign“), „P“ für eine Signatur, die eine Richtlinien-URL enthält (siehe --cert-policy-url), „N“ für eine Signatur, die eine Anmerkung enthält (siehe --cert-notation), „X“ für eine abgelaufene Signatur (siehe --ask-cert-expire) und die Zahlen 1-9 oder „T“ für 10 und höher, um die Vertrauensstufen der Signatur anzuzeigen (siehe den Befehl --edit-key „tsign“).
--locate-keys
--locate-external-keys
Sucht die als Argumente angegebenen Schlüssel. Dieser Befehl verwendet im Wesentlichen den gleichen Algorithmus wie bei der Suche nach Schlüsseln für die Verschlüsselung und kann daher verwendet werden, um zu sehen, welche Schlüssel GPG möglicherweise verwendet. Insbesondere werden externe Methoden gemäß --auto-key-locate verwendet, um einen Schlüssel zu finden, wenn die Argumente gültige E-Mail-Adressen enthalten. Es werden nur öffentliche Schlüssel aufgelistet.
Die Variante --locate-external-keys berücksichtigt einen lokal vorhandenen Schlüssel nicht und kann daher verwendet werden, um die Aktualisierung eines Schlüssels über die definierten externen Methoden zu erzwingen. Wenn eine Fingerprint angegeben wird und die in --auto-key-locate definierten Methoden LDAP-Server definieren, wird der Schlüssel von diesen Ressourcen abgerufen; definierte, nicht-LDAP-Schlüsselserver werden übersprungen.
--show-keys
Dieser Befehl nimmt OpenPGP-Schlüssel als Eingabe und gibt Informationen darüber auf die gleiche Weise aus, wie der Befehl --list-keys für lokal gespeicherte Schlüssel. Zusätzlich werden auch die Listoptionen show-unusable-uids, show-unusable-subkeys, show-notations und show-policy-urls aktiviert. Wie üblich für die automatisierte Verarbeitung sollte dieser Befehl mit der Option --with-colons kombiniert werden.
--fingerprint
Listet alle Schlüssel (oder die angegebenen) zusammen mit ihren Fingerabdrücken auf. Dies ist die gleiche Ausgabe wie --list-keys, jedoch mit der zusätzlichen Ausgabe einer Zeile mit dem Fingerabdruck. Kann auch mit --check-signatures kombiniert werden. Wenn dieser Befehl zweimal angegeben wird, werden auch die Fingerabdrücke aller sekundären Schlüssel aufgelistet. Dieser Befehl erzwingt auch die übersichtliche Formatierung von Fingerabdrücken, wenn das Schlüssel-ID-Format auf „none“ gesetzt wurde.
--list-packets
Listet nur die Sequenz der Pakete auf. Dieser Befehl ist nur für Debugging-Zwecke nützlich. Bei Verwendung mit der Option --verbose werden die tatsächlichen MPI-Werte ausgegeben und nicht nur deren Längen. Beachten Sie, dass sich die Ausgabe dieses Befehls in neuen Versionen ändern kann.
--edit-card
--card-edit
Zeigt ein Menü an, um mit einer Smartcard zu arbeiten. Der Unterbefehl "help" bietet einen Überblick über die verfügbaren Befehle. Für eine detaillierte Beschreibung siehe das Card HOWTO unter https://gnupg.org/documentation/howtos.html#GnuPG-cardHOWTO. Beachten Sie, dass der Befehl "openpgp" verwendet werden kann, um zur OpenPGP-Anwendung der Karten zu wechseln, die standardmäßig eine andere Anwendung (z. B. PIV) bereitstellen.
--card-status
Zeigt den Inhalt der Smartcard an.
--change-pin
Zeigt ein Menü an, mit dem die PIN einer Smartcard geändert werden kann. Diese Funktionalität ist auch als Unterbefehl "passwd" mit dem Befehl --edit-card verfügbar.
--delete-keys name
Entfernt einen Schlüssel aus dem öffentlichen Schlüsselring. Im Batch-Modus ist entweder --yes erforderlich oder der Schlüssel muss anhand seines Fingerabdrucks angegeben werden. Dies ist ein Schutz vor versehentlichem Löschen mehrerer Schlüssel. Wenn die Ausrufezeichensyntax mit dem Fingerabdruck eines Subschlüssels verwendet wird, wird nur dieser Subschlüssel gelöscht; wenn das Ausrufezeichen mit dem Fingerabdruck des Hauptschlüssels verwendet wird, wird der gesamte öffentliche Schlüssel gelöscht.
--delete-secret-keys name
Entfernt einen Schlüssel aus dem geheimen Schlüsselring. Im Batch-Modus muss der Schlüssel anhand seines Fingerabdrucks angegeben werden. Die Option --yes kann verwendet werden, um gpg-agent anzuweisen, keine Bestätigung anzufordern. Diese zusätzliche Vorsichtsmaßnahme wird getroffen, da gpg nicht sicherstellen kann, dass der geheime Schlüssel (der von gpg-agent verwaltet wird) nur für den gegebenen OpenPGP-öffentlichen Schlüssel verwendet wird. Wenn die Ausrufezeichensyntax mit dem Fingerabdruck eines Subschlüssels verwendet wird, wird nur der geheime Teil dieses Subschlüssels gelöscht; wenn das Ausrufezeichen mit dem Fingerabdruck des Hauptschlüssels verwendet wird, wird nur der geheime Teil des Hauptschlüssels gelöscht.
--delete-secret-and-public-key name
Wie --delete-key, aber wenn ein geheimer Schlüssel vorhanden ist, wird dieser zuerst entfernt. Im Batch-Modus muss der Schlüssel anhand seines Fingerabdrucks angegeben werden. Die Option --yes kann verwendet werden, um gpg-agent anzuweisen, keine Bestätigung anzufordern.
--export
Exportiert entweder alle Schlüssel aus allen Schlüsselringen (Standard-Schlüsselring und diejenigen, die über die Option --keyring registriert wurden), oder, wenn mindestens ein Name angegeben wird, die Schlüssel mit diesem Namen. Die exportierten Schlüssel werden in STDOUT oder in die mit der Option --output angegebene Datei geschrieben. Verwenden Sie diese Option zusammen mit --armor, um die Schlüssel per E-Mail zu versenden.
--send-keys keyIDs
Ähnlich wie --export, sendet aber die Schlüssel an einen Schlüsselserver. Anstelle von Schlüssel-IDs können auch Fingerabdrücke verwendet werden. Senden Sie nicht Ihren gesamten Schlüsselring an einen Schlüsselserver – wählen Sie nur die Schlüssel aus, die neu oder geändert wurden. Wenn keine Schlüssel-IDs angegeben werden, macht gpg nichts.
Achtung: Schlüsselserver sind von Natur aus Write-Only-Systeme, daher ist es nicht möglich, Schlüssel zu löschen, sobald sie an einen Schlüsselserver gesendet wurden.
--export-secret-keys
--export-secret-subkeys
Ähnlich wie --export, exportiert aber stattdessen die geheimen Schlüssel. Die exportierten Schlüssel werden in STDOUT oder in die mit der Option --output angegebene Datei geschrieben. Dieser Befehl wird oft zusammen mit der Option --armor verwendet, um das einfache Drucken des Schlüssels für die Papier-Sicherung zu ermöglichen; das externe Tool paperkey erledigt dies jedoch besser. Beachten Sie, dass das Exportieren eines geheimen Schlüssels ein Sicherheitsrisiko darstellen kann, wenn die exportierten Schlüssel über einen unsicheren Kanal gesendet werden.
Die zweite Form des Befehls hat die besondere Eigenschaft, dass der geheime Teil des Hauptschlüssels ungenutzbar gemacht wird; dies ist eine GNU-Erweiterung zu OpenPGP, und andere Implementierungen sollen diesen Schlüssel nicht erfolgreich importieren können. Die beabsichtigte Verwendung ist die Erstellung eines vollständigen Schlüssels mit einem zusätzlichen Signierschlüssel auf einer dedizierten Maschine. Dieser Befehl exportiert dann den Schlüssel ohne den Hauptschlüssel auf die Hauptmaschine.
GnuPG fordert Sie möglicherweise auf, die Passphrase für den Schlüssel einzugeben. Dies ist erforderlich, da die interne Schutzmethode des geheimen Schlüssels von der im OpenPGP-Protokoll angegebenen Methode abweicht.
--export-ssh-key
Dieser Befehl wird verwendet, um einen Schlüssel im OpenSSH-Format für öffentliche Schlüssel zu exportieren. Er erfordert die Angabe eines Schlüssels auf die übliche Weise und exportiert den neuesten gültigen Unterschlüssel, der über eine Authentifizierungsfunktion verfügt, nach STDOUT oder in die mit der Option --output angegebene Datei. Diese Ausgabe kann dann direkt der Datei „authorized_key“ von ssh hinzugefügt werden.
Durch die Angabe des zu exportierenden Schlüssels mithilfe einer Schlüssel-ID oder eines Fingerabdrucks, gefolgt von einem Ausrufezeichen (!), kann ein bestimmter Unterschlüssel oder der Hauptschlüssel exportiert werden. Dies erfordert nicht einmal, dass der Schlüssel das Flag für die Authentifizierungsfunktion gesetzt hat.
--import
--fast-import
Schlüssel importieren/zusammenführen. Dies fügt die angegebenen Schlüssel zum Schlüsselbund hinzu. Die schnelle Version ist derzeit nur ein Synonym.
Es gibt noch ein paar andere Optionen, die steuern, wie dieser Befehl funktioniert. Am wichtigsten ist hier die Option --import-options merge-only, die keine neuen Schlüssel einfügt, sondern nur neue Signaturen, Benutzer-IDs und Unterschlüssel zusammenführt.
--receive-keys keyIDs
--recv-keys keyIDs
Die Schlüssel mit den angegebenen Schlüssel-IDs von einem Schlüsselserver importieren.
--refresh-keys
Anforderung von Aktualisierungen von einem Schlüsselserver für Schlüssel, die bereits im lokalen Schlüsselbund vorhanden sind. Dies ist nützlich, um einen Schlüssel mit den neuesten Signaturen, Benutzer-IDs usw. zu aktualisieren. Wenn dieser Befehl ohne Argumente aufgerufen wird, werden alle Schlüssel im Schlüsselbund aktualisiert.
--search-keys names
Durchsuchen Sie den Schlüsselserver nach den angegebenen Namen. Mehrere hier angegebene Namen werden miteinander verbunden, um die Suchzeichenfolge für den Schlüsselserver zu erstellen. Beachten Sie, dass Schlüsselserver nach Namen auf eine andere und einfachere Weise suchen als gpg. Die beste Wahl ist die Verwendung einer E-Mail-Adresse. Aus Gründen des Datenschutzes erlauben Schlüsselserver möglicherweise nicht einmal die Suche nach Benutzer-ID oder E-Mail-Adresse und geben daher möglicherweise nur dann Ergebnisse zurück, wenn sie zusammen mit dem Befehl --recv-key verwendet werden, um nach Fingerabdruck oder Schlüssel-ID zu suchen.
--fetch-keys URIs
Ruft die an den angegebenen URIs befindlichen Schlüssel ab. Beachten Sie, dass verschiedene Installationen von GnuPG möglicherweise unterschiedliche Protokolle (HTTP, FTP, LDAP usw.) unterstützen. Bei der Verwendung von HTTPS werden die vom System bereitgestellten Root-Zertifikate von diesem Befehl verwendet.
--update-trustdb
Führt die Wartung der Vertrauensdatenbank durch. Dieser Befehl durchläuft alle Schlüssel und erstellt das Web des Vertrauens. Dies ist ein interaktiver Befehl, da er möglicherweise die Werte für "ownertrust" für Schlüssel abfragen muss. Der Benutzer muss eine Schätzung darüber abgeben, wie sehr er dem Eigentümer des angezeigten Schlüssels vertraut, um andere Schlüssel korrekt zu zertifizieren (signieren). GnuPG fragt nur nach dem "ownertrust"-Wert, wenn dieser noch nicht einem Schlüssel zugewiesen wurde. Mit dem Menü --edit-key kann der zugewiesene Wert jederzeit geändert werden.
--check-trustdb
Führt die Wartung der Vertrauensdatenbank ohne Benutzerinteraktion durch. Von Zeit zu Zeit muss die Vertrauensdatenbank aktualisiert werden, damit abgelaufene Schlüssel oder Signaturen und die resultierenden Änderungen im Web des Vertrauens verfolgt werden können. Normalerweise berechnet GnuPG, wann dies erforderlich ist, und führt es automatisch aus, es sei denn, --no-auto-check-trustdb ist gesetzt. Mit diesem Befehl kann eine Vertrauensdatenbankprüfung jederzeit erzwungen werden. Die Verarbeitung ist identisch mit der von --update-trustdb, überspringt jedoch Schlüssel mit einem noch nicht definierten "ownertrust".
Für die Verwendung in Cron-Jobs kann dieser Befehl zusammen mit --batch verwendet werden, wodurch die Vertrauensdatenbankprüfung nur dann durchgeführt wird, wenn eine Prüfung erforderlich ist. Um eine Ausführung auch im Batch-Modus zu erzwingen, fügen Sie die Option --yes hinzu.
--export-ownertrust
Sendet die "ownertrust"-Werte an STDOUT. Dies ist nützlich für Backup-Zwecke, da diese Werte die einzigen sind, die nicht aus einer beschädigten Vertrauensdatenbank wiederhergestellt werden können. Beispiel: gpg --export-ownertrust > otrust.txt
--import-ownertrust
Aktualisiert die Vertrauensdatenbank mit den in Dateien (oder STDIN, falls nicht angegeben) gespeicherten "ownertrust"-Werten; vorhandene Werte werden überschrieben. Im Falle einer stark beschädigten Vertrauensdatenbank und wenn Sie ein aktuelles Backup der "ownertrust"-Werte haben (z. B. in der Datei "otrust.txt"), können Sie die Vertrauensdatenbank mit diesen Befehlen neu erstellen: cd ~/.gnupg rm trustdb.gpg gpg --import-ownertrust < otrust.txt
--rebuild-keydb-caches
Beim Aktualisieren von Version 1.0.6 auf 1.0.7 sollte dieser Befehl verwendet werden, um Signatur-Caches im Schlüsselbund zu erstellen. Er kann auch in anderen Situationen nützlich sein.
--print-md algo
--print-mds
Gibt die Message Digest des Algorithmus "algo" für alle angegebenen Dateien oder STDIN aus. Mit der zweiten Form (oder einem veralteten "*" für "algo") werden Digests für alle verfügbaren Algorithmen ausgegeben.
--gen-random 0|1|2|16|30 count
Gibt "count" zufällige Bytes des angegebenen Qualitätslevels 0, 1 oder 2 aus. Wenn "count" nicht angegeben oder null ist, wird eine endlose Folge von Zufallsbytes ausgegeben. Wenn es mit --armor verwendet wird, wird die Ausgabe Base64-codiert. Das spezielle Level 16 verwendet ein Qualitätslevel von 1 und gibt einen endlosen Strom von hexadezimal codierten Oktetten aus. Das spezielle Level 30 gibt Zufallswerte als 30 zBase-32-Zeichen aus.
--gen-prime mode Bits
Nutze den Quellcode, Luke :-). Das Ausgabeformat kann sich mit jeder Version ändern.
--enarmor
--dearmor
Packen oder entpacken Sie eine beliebige Eingabe in/aus ein OpenPGP-ASCII-Format. Dies ist eine GnuPG-Erweiterung für OpenPGP und im Allgemeinen nicht sehr nützlich. Der Befehl --dearmor kann auch verwendet werden, um PEM-Formate zu entpacken.
--unwrap
Diese Option ändert den Befehl --decrypt, um die ursprüngliche Nachricht ohne die Verschlüsselungsschicht auszugeben. Daher ist die Ausgabe eine OpenPGP-Datenstruktur, was oft eine signierte OpenPGP-Nachricht bedeutet. Beachten Sie, dass diese Option möglicherweise keine Komprimierungsschicht entfernt, die sich oft unter der Verschlüsselungsschicht befindet.
--tofu-policy {auto|good|unknown|bad|ask} keys
Legen Sie die TOFU-Richtlinie für alle Bindungen fest, die den angegebenen Schlüsseln zugeordnet sind. Weitere Informationen zur Bedeutung der Richtlinien finden Sie unter: [trust-model-tofu]. Die Schlüssel können entweder durch ihren Fingerabdruck (bevorzugt) oder ihre Schlüssel-ID angegeben werden.
So verwalten Sie Ihre Schlüssel
In diesem Abschnitt werden die Hauptbefehle für die Schlüsselverwaltung erläutert.
--quick-generate-key user-id [algo [usage [expire]]]
--quick-gen-key
Dies ist ein einfacher Befehl zum Generieren eines Standard-Schlüssels mit einer Benutzer-ID. Im Gegensatz zu --generate-key wird der Schlüssel direkt generiert, ohne dass eine Reihe von Fragen beantwortet werden müssen. Wenn die Option --yes nicht angegeben wird, wird die Schlüsselerstellung abgebrochen, wenn die angegebene Benutzer-ID bereits im Schlüsselring vorhanden ist.
Wenn dies direkt auf der Konsole ohne spezielle Optionen aufgerufen wird, ist eine Antwort auf eine Bestätigungsaufforderung im Stil von „Fortfahren?“ erforderlich. Wenn die Benutzer-ID bereits im Schlüsselring vorhanden ist, wird eine zweite Aufforderung angezeigt, um die Schlüsselerstellung zu erzwingen.
Wenn algo oder usage angegeben sind, wird nur der primäre Schlüssel erstellt und es werden keine Fragen gestellt. Um ein Ablaufdatum anzugeben, aber dennoch einen primären und sekundären Schlüssel zu erstellen, verwenden Sie „default“ oder „future-default“ für algo und „default“ für usage. Eine Beschreibung dieser optionalen Argumente finden Sie im Befehl --quick-add-key. Die Option usage akzeptiert auch den Wert „cert“, der verwendet werden kann, um einen primären Schlüssel nur für die Zertifizierung zu erstellen; standardmäßig wird ein Schlüssel für die Zertifizierung und Signierung erstellt.
Das Argument expire kann verwendet werden, um ein Ablaufdatum für den Schlüssel anzugeben. Es werden verschiedene Formate unterstützt; häufig werden die ISO-Formate „YYYY-MM-DD“ oder „YYYYMMDDThhmmss“ verwendet. Um den Schlüssel in N Sekunden, N Tagen, N Wochen, N Monaten oder N Jahren ablaufen zu lassen, verwenden Sie „seconds=N“, „Nd“, „Nw“, „Nm“ oder „Ny“ bzw. Wenn kein Wert angegeben oder „-“ verwendet wird, läuft der Schlüssel nach einem angemessenen Standardintervall ab. Die Werte „never“ und „none“ können verwendet werden, um kein Ablaufdatum festzulegen.
Wenn dieser Befehl mit --batch verwendet wird, --pinentry-mode auf „loopback“ gesetzt ist und eine der Passphrase-Optionen (--passphrase, --passphrase-fd oder --passphrase-file) verwendet wird, wird die angegebene Passphrase für den neuen Schlüssel verwendet, und der Agent fragt nicht danach. Um einen Schlüssel ohne Schutz zu erstellen, kann --passphrase „“ verwendet werden.
Um einen OpenPGP-Schlüssel aus den Schlüsseln auf der aktuell eingefügten Smartcard zu erstellen, kann die spezielle Zeichenkette card für algo verwendet werden. Wenn die Karte über einen Verschlüsselungs- und einen Signaturschlüssel verfügt, ermittelt GnuPG diese und erstellt einen OpenPGP-Schlüssel, der aus dem üblichen Primärschlüssel und einem Subschlüssel besteht. Dies funktioniert nur mit bestimmten Smartcards. Beachten Sie, dass der interaktive Befehl --full-gen-key die gleiche Funktionalität bietet, jedoch mit größerer Flexibilität bei der Auswahl der Schlüssel der Smartcard.
Es ist möglich, einen Primärschlüssel und einen Subschlüssel mit nicht standardmäßigen Algorithmen zu erstellen, indem default verwendet und die Standardparameter mit der Option --default-new-key-algo geändert werden.
--quick-set-expire fpr expire [*|subfprs]
Bei zwei angegebenen Argumenten wird die Ablaufzeit des Primärschlüssels mit der Fingerabdruck-ID fpr direkt auf expire gesetzt. Um die Ablaufzeit zu entfernen, kann 0 verwendet werden. Bei drei Argumenten und dem dritten Argument als Sternchen (*) wird die Ablaufzeit aller nicht widerrufenen und noch nicht abgelaufenen Subschlüssel auf expire gesetzt. Bei mehr als zwei Argumenten und einer Liste von Fingerabdruck-IDs für subfprs wird die Ablaufzeit aller nicht widerrufenen Subschlüssel, die diesen Fingerabdruck-IDs entsprechen, auf expire gesetzt.
--quick-add-key fpr [algo [usage [expire]]]
Fügt einen Subschlüssel zum Schlüssel mit der Fingerabdruck-ID fpr hinzu. Ohne die optionalen Argumente wird ein Verschlüsselungs-Subschlüssel hinzugefügt. Wenn eines der Argumente angegeben ist, wird ein spezifischerer Subschlüssel hinzugefügt.
^ lgo kann einer der unterstützten Algorithmen oder Kurvennamen in dem Format sein, das in Schlüssel-Listings verwendet wird. Um den Standardalgorithmus zu verwenden, kann die Zeichenkette default oder - verwendet werden. Unterstützte Algorithmen sind rsa, dsa, elg, ed25519, cv25519 und andere ECC-Kurven. Zum Beispiel fügt die Zeichenkette rsa einen RSA-Schlüssel mit der Standard-Schlüssellänge hinzu; eine Zeichenkette rsa4096 fordert an, dass die Schlüssellänge 4096 Bit beträgt. Die Zeichenkette future-default ist ein Alias für den Algorithmus, der wahrscheinlich in zukünftigen Versionen von GnuPG als Standardalgorithmus verwendet wird. Um die unterstützten ECC-Kurven aufzulisten, kann der Befehl gpg --with-colons --list-config curve verwendet werden.
Abhängig vom angegebenen algo kann der Subschlüssel entweder ein Verschlüsselungs- oder ein Signatur-Subschlüssel sein. Wenn ein Algorithmus zum Signieren und Verschlüsseln geeignet ist und ein solcher Subschlüssel gewünscht ist, muss eine usage-Zeichenkette angegeben werden. Diese Zeichenkette ist entweder default oder -, um die Standardeinstellung beizubehalten, oder eine durch Kommas (oder Leerzeichen) getrennte Liste von Schlüsselwörtern: sign für einen Signatur-Subschlüssel, auth für einen Authentifizierungs-Subschlüssel und encr für einen Verschlüsselungs-Subschlüssel (encrypt kann als Alias für encr verwendet werden). Die gültigen Kombinationen hängen vom Algorithmus ab.
Das Argument expire kann verwendet werden, um ein Ablaufdatum für den Schlüssel anzugeben. Es werden verschiedene Formate unterstützt; häufig werden die ISO-Formate YYYY-MM-DD oder YYYYMMDDThhmmss verwendet. Um den Schlüssel in N Sekunden, N Tagen, N Wochen, N Monaten oder N Jahren ablaufen zu lassen, verwenden Sie seconds=N, Nd, Nw, Nm oder Ny bzw. Wenn kein Wert angegeben oder - verwendet wird, läuft der Schlüssel in einem angemessenen Standardintervall ab. Die Werte never und none können für kein Ablaufdatum verwendet werden.
--quick-add-adsk fpr adskfpr
Fügt direkt einen zusätzlichen Entschlüsselungsschlüssel zum Schlüssel mit dem Fingerabdruck fpr hinzu. adskfpr ist der Fingerabdruck des Verschlüsselungsschlüssels eines anderen Schlüssels. Ein Schlüssel wird hier häufig verwendet, da ein Primärschlüssel standardmäßig keine Verschlüsselungsfunktion hat. Verwenden Sie die Option --with-subkey-fingerprint mit einem Listenbefehl, um die Fingerabdrücke der Schlüssel anzuzeigen. Wenn die Zeichenfolge „default“ für adskfpr verwendet wird, werden alle fehlenden ADSKs, die mit --default-new-key-adsk konfiguriert sind, hinzugefügt.
--generate-key
--gen-key
Generiert ein neues Schlüsselpaar unter Verwendung der aktuellen Standardparameter. Dies ist der Standardbefehl zum Erstellen eines neuen Schlüssels. Zusätzlich zum Schlüssel wird eine Widerrufszertifikat erstellt und im Verzeichnis „openpgp-revocs.d“ unterhalb des GnuPG-Home-Verzeichnisses gespeichert.
--full-generate-key
--full-gen-key
Generiert ein neues Schlüsselpaar mit Dialogen für alle Optionen. Dies ist eine erweiterte Version von --generate-key.
Es gibt auch eine Funktion, mit der Sie Schlüssel im Batch-Modus erstellen können. Sehen Sie sich den Abschnitt „Unbeaufsichtigte Schlüsselerstellung“ im Handbuch an, um zu erfahren, wie Sie dies verwenden.
--generate-revocation name
--gen-revoke name
Generiert ein Widerrufszertifikat für den vollständigen Schlüssel. Um nur einen Subschlüssel oder eine Schlüsselsignatur zu widerrufen, verwenden Sie den Befehl --edit.
Dieser Befehl erstellt lediglich das Widerrufszertifikat, so dass es verwendet werden kann, um den Schlüssel zu widerrufen, falls dies jemals erforderlich sein sollte. Um einen Schlüssel tatsächlich zu widerrufen, muss das erstellte Widerrufszertifikat mit dem Schlüssel zusammengeführt werden, der widerrufen werden soll. Dies geschieht durch das Importieren des Widerrufszertifikats mit dem Befehl --import. Dann muss der widerrufene Schlüssel veröffentlicht werden, was am besten durch das Senden des Schlüssels an einen Schlüsselserver (Befehl --send-key) und durch das Exportieren (--export) in eine Datei erfolgt, die dann an häufige Kommunikationspartner gesendet wird.
--generate-designated-revocation name
--desig-revoke name
Generiert ein bestimmtes Widerrufszertifikat für einen Schlüssel. Dies ermöglicht es einem Benutzer (mit Genehmigung des Schlüsselbesitzers), den Schlüssel einer anderen Person zu widerrufen.
--edit-key
Zeigt ein Menü an, mit dem Sie die meisten Schlüsselverwaltungsaufgaben ausführen können. Es erwartet die Angabe eines Schlüssels in der Befehlszeile.
uid n Schaltet die Auswahl der Benutzer-ID oder fotografischen Benutzer-ID mit dem Index n um. Verwenden Sie * um alle auszuwählen und 0 um alle abzuwählen.
key n Schaltet die Auswahl des Subschlüssels mit dem Index n oder der Schlüssel-ID n um. Verwenden Sie * um alle auszuwählen und 0 um alle abzuwählen.
sign Erstellt eine Signatur für den Schlüssel des Benutzers name. Wenn der Schlüssel noch nicht vom Standardbenutzer (oder den mit -u angegebenen Benutzern) signiert wurde, zeigt das Programm die Informationen des Schlüssels
erneut zusammen mit seinem Fingerabdruck an und fragt, ob er signiert werden soll. Diese
Frage wird für alle mit -u angegebenen Benutzer wiederholt.
lsign Gleich wie „sign“, aber die Signatur wird als nicht exportierbar gekennzeichnet und daher niemals von anderen verwendet. Dies kann verwendet werden, um Schlüssel nur in der lokalen Umgebung gültig zu machen.
nrsign Gleich wie „sign“, aber die Signatur wird als nicht widerrufbar gekennzeichnet und kann daher niemals widerrufen werden.
tsign Erstellt eine Vertrauenssignatur. Dies ist eine Signatur, die die Konzepte der Zertifizierung (wie eine reguläre Signatur) und des Vertrauens (wie der Befehl „trust“) kombiniert. Dies ist im Allgemeinen in verschiedenen Gemeinschaften oder Gruppen nützlich, um das Konzept eines vertrauenswürdigen Vermittlers zu implementieren. Weitere Informationen finden Sie in den Abschnitten „Vertrauenssignatur“ und „Regulärer Ausdruck“ in RFC-4880.
Beachten Sie, dass „l“ (für lokal/nicht exportierbar), „nr“ (für nicht widerrufbar) und „t“ (für Vertrauen) frei gemischt und vor „sign“ verwendet werden können, um eine Signatur eines beliebigen Typs zu erstellen.
Wenn die Option --only-sign-text-ids angegeben ist, werden alle nicht-textbasierten Benutzer-IDs (z. B. Foto-IDs) nicht für die Signierung ausgewählt.
delsig Löscht eine Signatur. Beachten Sie, dass es nicht möglich ist, eine Signatur zu widerrufen, nachdem sie an die Öffentlichkeit gesendet wurde (d. h. an einen Schlüsselserver). Verwenden Sie in diesem Fall besser revsig.
revsig Widerruft eine Signatur. Für jede Signatur, die von einem der geheimen Schlüssel generiert wurde, fragt GnuPG, ob ein Widerrufszertifikat generiert werden soll.
check Überprüft die Signaturen aller ausgewählten Benutzer-IDs. Mit der zusätzlichen Option selfsig werden nur Selbstsignaturen angezeigt.
adduid Erstellt eine zusätzliche Benutzer-ID.
addphoto Erstellt eine fotografische Benutzer-ID. Daraufhin werden Sie aufgefordert, eine JPEG-Datei anzugeben, die in die Benutzer-ID eingebettet wird. Beachten Sie, dass eine sehr große JPEG-Datei zu einem sehr großen Schlüssel führt. Beachten Sie auch, dass einige Programme Ihr JPEG unverändert anzeigen (GnuPG) und einige Programme es so skalieren, dass es in ein Dialogfeld passt (PGP).
showphoto Zeigt die ausgewählte fotografische Benutzer-ID an.
deluid Löscht eine Benutzer-ID oder eine fotografische Benutzer-ID. Beachten Sie, dass es nicht möglich ist, eine Benutzer-ID zu widerrufen, nachdem sie an die Öffentlichkeit gesendet wurde (d. h. an einen Schlüsselserver). Verwenden Sie in diesem Fall besser revuid.
revuid Widerruft eine Benutzer-ID oder eine fotografische Benutzer-ID.
primary Kennzeichnet die aktuelle Benutzer-ID als primäre, entfernt das Flag für die primäre Benutzer-ID von allen anderen Benutzer-IDs und setzt den Zeitstempel aller betroffenen Selbstsignaturen um eine Sekunde nach vorne. Beachten Sie, dass das Festlegen einer Foto-Benutzer-ID als primär diese gegenüber anderen Foto-Benutzer-IDs als primär einstuft und das Festlegen einer regulären Benutzer-ID als primär diese gegenüber anderen regulären Benutzer-IDs als primär einstuft.
keyserver Legt einen bevorzugten Schlüsselserver für die angegebene(n) Benutzer-ID(s) fest. Dies ermöglicht es anderen Benutzern, zu wissen, von wo aus Sie bevorzugen, dass sie Ihren Schlüssel beziehen. Weitere Informationen finden Sie in der Option --keyserver-options honor-keyserver-url. Durch das Setzen eines Wertes von „none“ wird ein vorhandener bevorzugter Schlüsselserver entfernt.
notation Legt eine Name=Wert-Notation für die angegebene(n) Benutzer-ID(s) fest. Weitere Informationen finden Sie in der Option --cert-notation. Durch das Setzen eines Wertes von „none“ werden alle Notationen entfernt, durch das Setzen einer Notation, die mit einem Minuszeichen (-) beginnt, wird diese Notation entfernt, und durch das Setzen einer Notation (ohne den =Wert), die mit einem Minuszeichen beginnt, werden alle Notationen mit diesem Namen entfernt.
pref Zeigt die Präferenzen des ausgewählten Benutzer-IDs an. Dies zeigt die tatsächlichen Präferenzen, ohne die impliziten Präferenzen einzubeziehen.
showpref
Ausführlichere Auflistung der Präferenzen für die ausgewählte Benutzer-ID. Dies zeigt die tatsächlich verwendeten Präferenzen, indem die impliziten Präferenzen von 3DES (Chiffre), SHA-1 (Hash) und Uncompressed (Kompression) hinzugefügt werden, falls diese nicht bereits in der Präferenzliste enthalten sind. Darüber hinaus werden der bevorzugte Keyserver und die Signatur-Notationen (falls vorhanden) angezeigt.
setpref string
Setzt die Liste der Benutzer-ID-Präferenzen für alle (oder nur die ausgewählten) Benutzer-IDs auf den Wert `string`. Das Aufrufen von `setpref` ohne Argumente setzt die Präferenzliste auf den Standardwert zurück (entweder voreingestellt oder über `--default-preference-list` festgelegt), und das Aufrufen von `setpref` mit dem Argument `"none"` setzt eine leere Präferenzliste. Verwenden Sie `gpg --version`, um eine Liste der verfügbaren Algorithmen zu erhalten. Beachten Sie, dass Sie zwar die Präferenzen für eine Attribut-Benutzer-ID (auch bekannt als „Foto-ID“) ändern können, GnuPG jedoch keine Schlüssel über Attribut-Benutzer-IDs auswählt, sodass diese Präferenzen von GnuPG nicht verwendet werden. Beachten Sie, dass eine unbeaufsichtigte Version dieses Befehls als `--quick-update-pref` verfügbar ist.
Beim Festlegen von Präferenzen sollten Sie die Algorithmen in der Reihenfolge auflisten, in der Sie möchten, dass sie von jemand anderem verwendet werden, wenn er eine Nachricht an Ihren Schlüssel verschlüsselt. Wenn Sie 3DES nicht angeben, wird es automatisch am Ende hinzugefügt. Beachten Sie, dass viele Faktoren eine Rolle bei der Auswahl eines Algorithmus spielen (z. B. ist Ihr Schlüssel möglicherweise nicht der einzige Empfänger), und daher die verwendete Remote-OpenPGP-Anwendung möglicherweise nicht genau die von Ihnen gewählte Reihenfolge für eine bestimmte Nachricht einhält. Sie wählt jedoch nur einen Algorithmus aus, der in der Präferenzliste aller Empfängerschlüssel vorhanden ist. Siehe auch den Abschnitt „INTEROPERABILITÄT MIT ANDEREN OPENPGP-PROGRAMMEN“ unten.
addkey Fügt einen Subschlüssel zu diesem Schlüssel hinzu.
addcardkey
Generiert einen Subschlüssel auf einer Karte und fügt ihn zu diesem Schlüssel hinzu.
keytocard
Überträgt den ausgewählten geheimen Subschlüssel (oder den Primärschlüssel, wenn kein Subschlüssel ausgewählt wurde) auf eine Smartcard. Der geheime Schlüssel im Schlüsselring wird durch einen Platzhalter ersetzt, wenn der Schlüssel erfolgreich auf der Karte gespeichert werden konnte und Sie später den Befehl `save` verwenden. Nur bestimmte Schlüsseltypen können auf die Karte übertragen werden. Ein Untermenü ermöglicht die Auswahl der Karte, auf der der Schlüssel gespeichert werden soll. Beachten Sie, dass es nicht möglich ist, diesen Schlüssel von der Karte abzurufen. Wenn die Karte beschädigt wird, geht Ihr geheimer Schlüssel verloren, es sei denn, Sie haben ein Backup an einem anderen Ort.
bkuptocard file
Stellt die angegebene Datei auf einer Karte wieder her. Dieser Befehl kann verwendet werden, um ein Backup-Schlüssel (wie er bei der Karteninitialisierung generiert wurde) auf eine neue Karte zu übertragen. In fast allen Fällen wird dies der Verschlüsselungsschlüssel sein. Sie sollten diesen Befehl nur mit dem entsprechenden öffentlichen Schlüssel verwenden und sicherstellen, dass die als Argument angegebene Datei tatsächlich das wiederherzustellende Backup ist. Sie werden dann aufgefordert, die Passphrase des Backup-Schlüssels und dann die Admin-PIN der Karte einzugeben.
keytotpm
Übertragen Sie die ausgewählte geheime Subkey (oder den Hauptschlüssel, wenn keine Subkey ausgewählt ist) in das TPM-Format. Der geheime Schlüssel im Schlüsselbund wird durch die TPM-Repräsentation dieses Schlüssels ersetzt, die nur vom jeweiligen TPM gelesen werden kann, das sie erstellt hat (wodurch die Schlüsseldatei an den Laptop mit dem TPM gebunden wird). Nur bestimmte Schlüsseltypen können in das TPM übertragen werden (alle TPM-2.0-Systeme müssen die Algorithmen rsa2048 und nistp256 haben, neuere TPMs können jedoch weitere Algorithmen haben). Beachten Sie, dass der Schlüssel selbst nicht in das TPM übertragen wird, sondern lediglich vor Ort vom TPM verschlüsselt wird. Wenn die Schlüsseldatei gelöscht wird, geht der Schlüssel verloren. Sobald er in die TPM-Repräsentation übertragen wurde, kann die Schlüsseldatei nicht mehr in das Nicht-TPM-Format konvertiert werden, und der Schlüssel stirbt mit dem TPM. Daher sollten Sie zuerst eine Sicherungskopie der tatsächlichen geheimen Schlüsseldatei an einem sicheren, externen Speicherort erstellen, bevor Sie sie konvertieren. Es ist wichtig, das physische System-TPM zu verwenden, für das Sie Schreibberechtigungen für die TPM-Ressourcenmanager-Datei (/dev/tpmrm0) haben. Normalerweise bedeutet dies, dass Sie Mitglied der Gruppe tss sein müssen.
delkey Entfernen Sie eine Subkey (sekundärer Schlüssel). Beachten Sie, dass es nicht möglich ist, eine Subkey zurückzuziehen, sobald sie an die Öffentlichkeit (d. h. an einen Schlüsserserver) gesendet wurde. Verwenden Sie in diesem Fall besser revkey. Beachten Sie auch, dass dies nur den öffentlichen Teil eines Schlüssels löscht.
revkey Sperren Sie eine Subkey.
expire Ändern Sie die Gültigkeitsdauer des Schlüssels oder der Subkey. Wenn eine Subkey ausgewählt ist, wird die Gültigkeitsdauer dieser Subkey geändert. Wenn nichts ausgewählt ist, wird die Gültigkeitsdauer des Hauptschlüssels geändert.
trust Ändern Sie den Vertrauenswert des Besitzers für den Schlüssel. Dadurch wird die Vertrauensdatenbank sofort aktualisiert, und es ist keine Speicherung erforderlich.
disable
enable Deaktivieren oder aktivieren Sie einen gesamten Schlüssel. Ein deaktivierter Schlüssel kann normalerweise nicht zum Verschlüsseln verwendet werden.
addrevoker Fügen Sie einen designierten Sperrer zum Schlüssel hinzu. Dies nimmt ein optionales Argument entgegen: "sensitive". Wenn ein designierter Sperrer als sensibel gekennzeichnet wird, wird er standardmäßig nicht exportiert (siehe Exportoptionen).
addadsk Fügen Sie einen zusätzlichen Entschlüsselungsschlüssel hinzu. Der Benutzer wird aufgefordert, den Fingerabdruck eines anderen Verschlüsselungsschlüssels einzugeben. Beachten Sie, dass der genaue Fingerabdruck des Verschlüsselungsschlüssels eines anderen Schlüssels eingegeben werden muss. Dies liegt daran, dass der Hauptschlüssel häufig keine Verschlüsselungsfunktion hat. Verwenden Sie die Option --with-subkey-fingerprint mit einem Befehl zum Auflisten, um die Fingerabdrücke der Subkeys anzuzeigen.
passwd Ändern Sie die Passphrase des geheimen Schlüssels.
toggle Dies ist ein Dummy-Befehl, der nur für die Abwärtskompatibilität vorhanden ist.
clean Komprimieren Sie (durch das Entfernen aller Signaturen mit Ausnahme der Selbstsignatur) alle Benutzer-IDs, die nicht mehr verwendbar sind (z. B. widerrufen oder abgelaufen). Entfernen Sie dann alle Signaturen, die für die Vertrauensberechnungen nicht mehr verwendbar sind. Insbesondere werden alle Signaturen entfernt, die ungültig sind, alle Signaturen, die durch eine spätere Signatur ersetzt werden, widerrufene Signaturen und Signaturen, die von Schlüsseln stammen, die sich nicht im Schlüsselbund befinden.
minimize
Den Schlüssel so klein wie möglich machen. Dies entfernt alle Signaturen von jeder Benutzer-ID mit Ausnahme der neuesten Selbstsignatur.
change-usage
Ändern der Nutzungsflags (Fähigkeiten) des primären Schlüssels oder von Unterschlüsseln. Diese Nutzungsflags (z. B. Certify, Sign, Authenticate, Encrypt) werden bei der Schlüsselerstellung festgelegt. Manchmal ist es nützlich, sie nach der Erstellung ändern zu können (zum Beispiel, um Authenticate hinzuzufügen). Bitte seien Sie dabei vorsichtig; die erlaubten Nutzungsflags hängen vom Schlüsselalgorithmus ab.
cross-certify
Hinzufügen von Kreuz-Zertifizierungssignaturen zu Signier-Unterschlüsseln, die diese möglicherweise noch nicht haben. Kreuz-Zertifizierungssignaturen schützen vor einem subtilen Angriff auf Signier-Unterschlüssel. Siehe --require-cross-certification. Alle neu generierten Schlüssel haben diese Signatur standardmäßig, daher ist dieser Befehl nur nützlich, um ältere Schlüssel auf den neuesten Stand zu bringen.
save Alle Änderungen im Schlüsselbund speichern und beenden.
quit Das Programm beenden, ohne den Schlüsselbund zu aktualisieren.
Die Auflistung zeigt Ihnen den Schlüssel mit seinen Nebenschlüsseln und allen Benutzer-IDs. Die primäre Benutzer-ID wird durch einen Punkt angezeigt, und ausgewählte Schlüssel oder Benutzer-IDs werden durch ein Sternchen angezeigt. Der Vertrauenswert wird beim primären Schlüssel angezeigt: "trust" ist das zugewiesene Besitzervertrauen und "validity" ist die berechnete Gültigkeit des Schlüssels. Gültigkeitswerte werden auch für alle Benutzer-IDs angezeigt. Für mögliche Vertrauenswerte siehe: [trust-values].
--sign-key name
Signiert einen öffentlichen Schlüssel mit Ihrem geheimen Schlüssel. Dies ist eine Kurzversion des Unterbefehls "sign" von --edit-key.
--lsign-key name
Signiert einen öffentlichen Schlüssel mit Ihrem geheimen Schlüssel, markiert ihn aber als nicht exportierbar. Dies ist eine Kurzversion des Unterbefehls "lsign" von --edit-key.
--quick-sign-key fpr [names]
--quick-lsign-key fpr [names]
Direktes Signieren eines Schlüssels von der Passphrase aus ohne weitere Benutzerinteraktion. Der fpr muss der verifizierte primäre Fingerabdruck eines Schlüssels im lokalen Schlüsselbund sein. Wenn keine Namen angegeben sind, werden alle nützlichen Benutzer-IDs signiert; mit angegebenen [names] werden nur nützliche Benutzer-IDs signiert, die einem dieser Namen entsprechen. Standardmäßig, oder wenn ein Name mit einem '*' versehen ist, wird eine Groß-/Kleinschreibung ignorierende Teilstring-Übereinstimmung verwendet. Wenn ein Name mit einem '=' versehen ist, wird eine exakte Übereinstimmung unter Beachtung der Groß-/Kleinschreibung durchgeführt.
Der Befehl --quick-lsign-key markiert die Signaturen als nicht exportierbar. Wenn eine solche nicht exportierbare Signatur bereits existiert, wandelt --quick-sign-key sie in eine exportierbare Signatur um. Wenn Sie eine bestehende Signatur aktualisieren müssen, zum Beispiel um Notationsdaten hinzuzufügen oder zu ändern, müssen Sie die Option --force-sign-key verwenden.
Dieser Befehl verwendet vernünftige Standardwerte und bietet daher nicht die volle Flexibilität des Unterbefehls „sign“ von --edit-key. Seine beabsichtigte Verwendung ist die Unterstützung des unbeaufsichtigten Schlüssel-Signierens durch die Verwendung einer Liste verifizierter Fingerabdrücke.
--quick-add-uid user-id new-user-id
Dieser Befehl fügt einer vorhandenen Schlüssel eine neue Benutzer-ID hinzu. Im Gegensatz zum interaktiven Unterbefehl adduid von --edit-key wird die neue Benutzer-ID unverändert hinzugefügt, wobei nur führende und nachfolgende Leerzeichen entfernt werden. Es wird erwartet, dass sie UTF-8-kodiert ist und keine Prüfungen auf ihr Format durchgeführt werden.
--quick-revoke-uid user-id user-id-to-revoke
Dieser Befehl hebt eine Benutzer-ID auf einem vorhandenen Schlüssel wider. Er kann nicht verwendet werden, um die letzte Benutzer-ID auf einem Schlüssel zu widerrufen (es muss eine nicht widerrufene Benutzer-ID verbleiben). Der Widerrufsgrund ist „Benutzer-ID ist nicht mehr gültig“. Wenn Sie einen anderen Widerrufsgrund oder zusätzlichen Widerrufstext angeben möchten, sollten Sie den interaktiven Unterbefehl revuid von --edit-key verwenden.
--quick-revoke-sig fpr signing-fpr [names]
Dieser Befehl hebt die Schlüsselsignaturen auf, die von signing-fpr für den durch den Fingerabdruck fpr angegebenen Schlüssel erstellt wurden. Wenn Namen angegeben sind, werden nur die Signaturen auf den Benutzer-IDs des Schlüssels, die mit einem der angegebenen Namen übereinstimmen, betroffen (siehe --quick-sign-key). Wenn bereits ein Widerruf vorhanden ist, wird eine Meldung ausgegeben, anstatt einen neuen Widerruf zu erstellen; in diesem Fall wird kein Fehler zurückgegeben. Beachten Sie, dass Schlüsselsignatur-Widerrufe durch eine neuere Schlüsselsignatur überschrieben und dann erneut widerrufen werden können.
--quick-set-primary-uid user-id primary-user-id
Dieser Befehl setzt oder aktualisiert das Flag für die primäre Benutzer-ID auf einem vorhandenen Schlüssel. user-id gibt den Schlüssel an, und primary-user-id gibt die Benutzer-ID an, die als primäre Benutzer-ID gekennzeichnet werden soll. Das Flag für die primäre Benutzer-ID wird von allen anderen Benutzer-IDs entfernt, und der Zeitstempel aller betroffenen Selbstsignaturen wird um eine Sekunde erhöht.
--quick-update-pref user-id
Dieser Befehl aktualisiert die Präferenzliste des Schlüssels auf den aktuellen Standardwert (entweder eingebaut oder über --default-preference-list festgelegt). Dies ist die unbeaufsichtigte Version der Verwendung von „setpref“ im Menü --key-edit, ohne eine Liste anzugeben. Beachten Sie, dass Sie die Präferenzen in einer Schlüsselliste mit --list-options show-pref oder --list-options show-pref-verbose anzeigen können. Sie sollten die aktualisierten Schlüssel auch an Ihre Kollegen verteilen.
--quick-set-ownertrust user-id value
Dieser Befehl setzt das Eignertrust-Flag eines Schlüssels und kann auch verwendet werden, um das Deaktivierungsflag eines Schlüssels zu setzen. Dies ist die unbeaufsichtigte Version der Verwendung von „trust“, „disable“ oder „enable“ im Menü --key-edit.
--change-passphrase user-id
--passwd user-id
Ändert die Passphrase des geheimen Schlüssels, der zum angegebenen Zertifikat (user-id) gehört. Dies ist eine Abkürzung für den Unterbefehl passwd des Menüs --edit-key. Wenn dies zusammen mit der Option --dry-run verwendet wird, wird die Passphrase nicht tatsächlich geändert, sondern nur geprüft, ob die aktuelle Passphrase korrekt ist.
OPTIONEN
GPG bietet eine Reihe von Optionen, um das genaue Verhalten zu steuern und die Standardkonfiguration zu ändern.
Lange Optionen können in einer Optionsdatei (Standard: ~/.gnupg/gpg.conf) gespeichert werden. Kurze Optionsnamen funktionieren nicht – zum Beispiel ist „armor“ eine gültige Option für die Optionsdatei, während „a“ nicht gültig ist. Schreiben Sie nicht die zwei Bindestriche, sondern nur den Namen der Option und alle erforderlichen Argumente. Zeilen, die mit einem Hash-Zeichen („#“) als erstem Nicht-Leerzeichen beginnen, werden ignoriert. Befehle können ebenfalls in dieser Datei gespeichert werden, dies ist jedoch im Allgemeinen nicht sinnvoll, da der Befehl bei jeder Ausführung von gpg automatisch ausgeführt wird.
Beachten Sie, dass die Optionsanalyse gestoppt wird, sobald ein Nicht-Optionsargument gefunden wird. Sie können die Analyse explizit mit der speziellen Option -- beenden.
So ändern Sie die Konfiguration
Diese Optionen werden verwendet, um die Konfiguration zu ändern, und die meisten davon sind normalerweise in der Optionsdatei zu finden.
--default-key name
Verwenden Sie name als Standardschlüssel zum Signieren. Es wird empfohlen, einen Fingerabdruck oder zumindest eine lange Schlüssel-ID für name zu verwenden. Wenn diese Option nicht verwendet wird, ist der Standardschlüssel der erste Schlüssel im geheimen Schlüsselring. Beachten Sie, dass -u oder --local-user diese Option überschreibt. Diese Option kann mehrmals angegeben werden. In diesem Fall wird der letzte Schlüssel verwendet, für den ein geheimer Schlüssel verfügbar ist. Wenn für keinen der angegebenen Werte ein geheimer Schlüssel verfügbar ist, gibt GnuPG keine Fehlermeldung aus, sondern verhält sich so, als ob diese Option nicht angegeben worden wäre.
--default-recipient name
Verwenden Sie name als Standardempfänger, wenn die Option --recipient nicht verwendet wird, und fragen Sie nicht, ob dies ein gültiger Empfänger ist. name muss nicht leer sein, und es wird empfohlen, einen Fingerabdruck für name zu verwenden.
--default-recipient-self
Verwenden Sie den Standardschlüssel als Standardempfänger, wenn die Option --recipient nicht verwendet wird, und fragen Sie nicht, ob dies ein gültiger Empfänger ist. Der Standardschlüssel ist der erste Schlüssel im geheimen Schlüsselring oder der mit --default-key festgelegte Schlüssel.
--no-default-recipient
Setzt --default-recipient und --default-recipient-self zurück. Sollte nicht in einer Optionsdatei verwendet werden.
-v, --verbose
Gibt mehr Informationen während der Verarbeitung aus. Wenn sie zweimal verwendet wird, werden die Eingabedaten detailliert aufgelistet.
--no-verbose
Setzt die Ausführlichkeit auf 0 zurück. Sollte nicht in einer Optionsdatei verwendet werden.
-q, --quiet
Versucht, so wenig Ausgaben wie möglich zu erzeugen. Sollte nicht in einer Optionsdatei verwendet werden.
--batch
--no-batch
Verwendet den Batch-Modus. Es werden keine interaktiven Eingaben angefordert oder interaktive Befehle erlaubt. --no-batch deaktiviert diese Option. Beachten Sie, dass gpg auch dann noch Daten von der Standardeingabe lesen kann, wenn eine Datei über die Befehlszeile angegeben wurde (insbesondere wenn gpg feststellt, dass die Eingabe eine separate Signatur ist und keine Datendatei angegeben wurde). Wenn Sie also nicht möchten, dass Daten über die Standardeingabe gelesen werden, sollten Sie die Standardeingabe mit /dev/null verbinden.
Es wird dringend empfohlen, diese Option zusammen mit den Optionen `--status-fd` und `--with-colons` für jede unbeaufsichtigte Verwendung von gpg zu verwenden. Sollte nicht in einer Optionsdatei verwendet werden.
--no-tty
Stellt sicher, dass das Terminal (TTY) niemals für Ausgaben verwendet wird. Diese Option ist in einigen Fällen erforderlich, da GnuPG manchmal Warnungen an das Terminal ausgibt, auch wenn --batch verwendet wird.
--yes Gehen Sie davon aus, dass auf die meisten Fragen mit „Ja“ geantwortet wird. Sollte nicht in einer Optionsdatei verwendet werden.
--no Gehen Sie davon aus, dass auf die meisten Fragen mit „Nein“ geantwortet wird. Sollte nicht in einer Optionsdatei verwendet werden.
--proc-all-sigs
Diese Option überschreibt das Verhalten der Option --batch, um die Signaturprüfung bei der ersten fehlerhaften Signatur zu stoppen.
--list-filter {select=expr}
Ein Listenfilter kann verwendet werden, um während Befehle zum Auflisten von Schlüsseln nur bestimmte Schlüssel auszugeben. Für die verfügbaren Eigenschaftsnamen siehe die Beschreibung von --import-filter.
--list-options Parameter
Dies ist eine durch Leerzeichen oder Kommas getrennte Zeichenfolge, die Optionen angibt, die beim Auflisten von Schlüsseln und Signaturen verwendet werden (d. h. --list-keys, --check-signatures, --list-public-keys, --list-secret-keys und die Funktionen --edit-key). Optionen können mit einem vorangestellten „no-“ versehen werden (nach den beiden Bindestrichen), um die entgegengesetzte Bedeutung zu erhalten. Die Optionen sind:
show-photos
Verursacht, dass --list-keys, --check-signatures, --list-public-keys und --list-secret-keys alle an den Schlüssel angehängten Foto-IDs anzeigen. Standardmäßig „Nein“. Siehe auch --photo-viewer. Funktioniert nicht mit --with-colons: siehe --attribute-fd für die entsprechende Methode, um Fotodaten für Skripte und andere Frontends abzurufen.
show-usage
Zeigt Nutzungsinformationen für Schlüssel und Unter-Schlüssel in der Standard-Schlüsselliste an. Dies ist eine Liste von Buchstaben, die die zulässige Verwendung für einen Schlüssel angeben (E=Verschlüsselung, S=Signierung, C=Zertifizierung, A=Authentifizierung). Standardmäßig „Ja“.
show-ownertrust
Zeigt den Wert „ownertrust“ für Schlüssel auch in der Standard-Schlüsselliste an. Standardmäßig „Nein“.
show-policy-urls
Zeigt Policy-URLs in den --check-signatures-Listen an. Standardmäßig „Nein“.
show-notations
show-std-notations
show-user-notations
Zeigt alle, IETF-Standard- oder benutzerdefinierten Signaturnotizen in den --check-signatures-Listen an. Standardmäßig „Nein“.
show-keyserver-urls
Zeigt alle bevorzugten Keyserver-URLs in den --check-signatures-Listen an. Standardmäßig „Nein“.
show-uid-validity
Zeigt die berechnete Gültigkeit von Benutzer-IDs während der Schlüssellisten an. Standardmäßig „Ja“.
show-unusable-uids
Zeigt widerrufene und abgelaufene Benutzer-IDs in Schlüssellisten an. Standardmäßig „Nein“.
show-unusable-subkeys
Zeigt widerrufene und abgelaufene Unter-Schlüssel in Schlüssellisten an. Standardmäßig „Nein“.
show-unusable-sigs
Zeigt Schlüsselsignaturen an, die mit schwachen oder nicht unterstützten Algorithmen erstellt wurden.
show-keyring
Zeigt den Namen des Schlüsselrings am Anfang der Schlüssellisten an, um anzuzeigen, zu welchem Schlüsselring ein bestimmter Schlüssel gehört. Standardmäßig „Nein“.
show-sig-expire
Zeigt Signaturablaufdaten (falls vorhanden) während der --check-signatures-Listen an. Standardmäßig „Nein“.
show-sig-subpackets
Schließt Signatur-Subpakete in die Schlüsselliste ein. Diese Option kann eine optionale Argumentliste der aufzulistenden Subpakete entgegennehmen. Wenn kein Argument übergeben wird, werden alle Subpakete aufgelistet. Standardmäßig „Nein“. Diese Option ist nur dann sinnvoll, wenn --with-colons zusammen mit --check-signatures verwendet wird.
show-only-fpr-mbox
Für jede Benutzer-ID, die eine gültige E-Mail-Adresse hat, wird nur der Fingerabdruck und die E-Mail-Adresse ausgegeben.
sort-sigs
Mit den Optionen --list-sigs und --check-sigs werden die Signaturen nach Key-ID und Erstellungszeit sortiert, um die Historie dieser Signaturen besser darzustellen. Die Selbstsignatur wird ebenfalls vor den anderen Signaturen aufgelistet. Standardmäßig ist dies aktiviert. Diese Option hat keine Auswirkung im Modus -with-colons.
--verify-options Parameter
Dies ist eine durch Leerzeichen oder Kommas getrennte Zeichenkette, die Optionen für die Signaturprüfung angibt. Optionen können mit no- versehen werden, um die entgegengesetzte Bedeutung zu erhalten. Die Optionen sind:
show-photos
Zeigt alle vorhandenen Foto-IDs auf dem Schlüssel an, der die Signatur ausgestellt hat. Standardmäßig ist dies deaktiviert. Siehe auch --photo-viewer.
show-policy-urls
Zeigt Policy-URLs in der Signatur an, die überprüft wird. Standardmäßig ist dies aktiviert.
show-notations
show-std-notations
show-user-notations
Zeigt alle, IETF-Standard- oder benutzerdefinierten Signatur-Notationen in der Signatur an, die überprüft wird. Standardmäßig werden IETF-Standard-Notationen verwendet.
show-keyserver-urls
Zeigt alle bevorzugten Keyserver-URLs in der Signatur an, die überprüft wird. Standardmäßig ist dies aktiviert.
show-uid-validity
Zeigt die berechnete Gültigkeit der Benutzer-IDs auf dem Schlüssel an, der die Signatur ausgestellt hat. Standardmäßig ist dies aktiviert.
show-unusable-uids
Zeigt widerrufene und abgelaufene Benutzer-IDs während der Signaturprüfung an. Standardmäßig ist dies deaktiviert.
show-primary-uid-only
Zeigt nur die primäre Benutzer-ID während der Signaturprüfung an. Das bedeutet, dass alle AKA-Zeilen sowie Foto-IDs nicht zusammen mit dem Signaturprüfstatus angezeigt werden.
--enable-large-rsa
--disable-large-rsa
Ermöglicht die Erstellung von RSA-Schlüsseln mit bis zu 8192 Bit. Hinweis: 8192 Bit werden im Allgemeinen nicht empfohlen. Diese großen Schlüssel verbessern die Sicherheit nicht wesentlich, sind aber teurer in der Verwendung und ihre Signaturen und Zertifikate sind größer. Diese Option ist nur verfügbar, wenn die Binärdatei mit Unterstützung für large-secmem erstellt wurde.
--enable-dsa2
--disable-dsa2
Ermöglicht die Hash-Trunkierung für alle DSA-Schlüssel, auch für alte DSA-Schlüssel mit bis zu 1024 Bit. Dies ist auch die Standardeinstellung für --openpgp. Beachten Sie, dass ältere Versionen von GnuPG dieses Flag auch benötigten, um die Generierung von DSA-Schlüsseln mit mehr als 1024 Bit zu ermöglichen.
--photo-viewer Zeichenkette
Dies ist die Befehlszeile, die ausgeführt werden soll, um eine Foto-ID anzuzeigen. %i wird durch einen Dateinamen ersetzt, der das Foto enthält. %I macht dasselbe, aber die Datei wird nicht gelöscht, sobald der Viewer geschlossen wird. Andere Flags sind %k für die Schlüssel-ID, %K für die lange Schlüssel-ID, %f für den Schlüssel-Fingerabdruck, %t für die Erweiterung des Bildtyps (z. B. "jpg"), %T für den MIME-Typ des Bildes (z. B. "image/jpeg"), %v für die berechnete Gültigkeit des angezeigten Bildes (z. B. "f"), %V für die berechnete Gültigkeit als Zeichenkette (z. B. "full"), %U für einen Base32-kodierten Hash der Benutzer-ID und %% für ein echtes Prozentzeichen. Wenn weder %i noch %I vorhanden sind, wird das Foto über die Standardeingabe an den Viewer übergeben.
Unter Unix ist der Standard-Viewer xloadimage -fork -quiet -title 'KeyID 0x%k' STDIN mit einem Fallback auf display -title 'KeyID 0x%k' %i und schließlich auf xdg-open %i. Unter Windows wird !ShellExecute 400 %i verwendet; hier ist der Befehl ein Metabefehl, um diese API-Aufruf zu verwenden, gefolgt von einer Wartezeit in Millisekunden, die verwendet wird, um dem Viewer Zeit zu geben, die temporäre Bilddatei zu lesen, bevor gpg sie wieder löscht. Beachten Sie, dass, wenn Ihr Bildbetrachtungsprogramm nicht sicher ist, die Ausführung von diesem Programm über gpg es nicht sicher macht.
--exec-path string
Legt eine Liste von Verzeichnissen fest, in denen nach Bildbetrachtungsprogrammen gesucht werden soll. Wenn dies nicht angegeben wird, verwenden Bildbetrachtungsprogramme die Umgebungsvariable PATH.
--keyring file
Fügt die angegebene Datei zur aktuellen Liste der Schlüsselringe hinzu. Wenn die Datei mit einer Tilde und einem Schrägstrich beginnt, werden diese durch das Verzeichnis `$HOME` ersetzt. Wenn der Dateiname keinen Schrägstrich enthält, wird davon ausgegangen, dass er sich im GnuPG-Home-Verzeichnis (`~/.gnupg`, es sei denn, `--homedir` oder `$GNUPGHOME` wird verwendet) befindet.
Beachten Sie, dass dies einen Schlüsselring zur aktuellen Liste hinzufügt. Wenn die Absicht darin besteht, nur den angegebenen Schlüsselring zu verwenden, verwenden Sie `--keyring` zusammen mit `--no-default-keyring`.
Wenn die Option `--no-keyring` verwendet wurde, werden keine Schlüsselringe verwendet.
Beachten Sie, dass, wenn die Option `use-keyboxd` in `common.conf` aktiviert ist, keine Schlüsselringe verwendet werden und alle Schlüssel vom `keyboxd`-Prozess in seiner eigenen Datenbank verwaltet werden.
--primary-keyring file
Dies ist eine Variante von `--keyring` und bezeichnet die Datei als primären öffentlichen Schlüsselring. Dies bedeutet, dass neu importierte Schlüssel (über `--import` oder `keyserver --recv-from`) in diesem Schlüsselring gespeichert werden.
--secret-keyring file
Dies ist eine veraltete Option und wird ignoriert. Alle geheimen Schlüssel werden im Verzeichnis `private-keys-v1.d` unterhalb des GnuPG-Home-Verzeichnisses gespeichert.
--trustdb-name file
Verwenden Sie stattdessen die Datei `file` anstelle der Standard-TrustDB. Wenn die Datei mit einer Tilde und einem Schrägstrich beginnt, werden diese durch das Verzeichnis `$HOME` ersetzt. Wenn der Dateiname keinen Schrägstrich enthält, wird davon ausgegangen, dass er sich im GnuPG-Home-Verzeichnis (`~/.gnupg`, wenn `--homedir` oder `$GNUPGHOME` nicht verwendet wird) befindet.
--homedir dir
Legen Sie den Namen des Home-Verzeichnisses auf `dir` fest. Wenn diese Option nicht verwendet wird, ist das Home-Verzeichnis standardmäßig `~/.gnupg`. Sie wird nur dann erkannt, wenn sie in der Befehlszeile angegeben wird. Sie überschreibt auch alle Home-Verzeichnisse, die über die Umgebungsvariable `GNUPGHOME` oder (unter Windows) über den Registrierungseintrag `HKCU\Software\GNU\GnuPG:HomeDir` angegeben werden.
Unter Windows ist es möglich, GnuPG als portable Anwendung zu installieren. In diesem Fall wird nur diese Befehlszeilenoption berücksichtigt; alle anderen Möglichkeiten, ein Home-Verzeichnis festzulegen, werden ignoriert.
--display-charset name
Legen Sie den Namen des nativen Zeichensatzes fest. Dies wird verwendet, um einige Informationszeichenfolgen wie Benutzer-IDs in die richtige UTF-8-Codierung zu konvertieren. Beachten Sie, dass dies nichts mit dem Zeichensatz der zu verschlüsselnden oder zu signierenden Daten zu tun hat; GnuPG wandelt vom Benutzer bereitgestellte Daten nicht um. Wenn diese Option nicht verwendet wird, wird der Standardzeichensatz aus dem aktuellen Gebietsschema bestimmt. Eine Ausführlichkeitsebene von 3 zeigt das ausgewählte Set an. Diese Option sollte nicht unter Windows verwendet werden. Gültige Werte für `name` sind:
iso-8859-1
Das ist der Latin-1-Zeichensatz.
iso-8859-2
Der Latin-2-Zeichensatz.
iso-8859-15
Dies ist derzeit ein Alias für den Latin-1-Zeichensatz.
koi8-r Der übliche russische Zeichensatz (RFC-1489).
utf-8 Umgehen Sie alle Übersetzungen und gehen Sie davon aus, dass das Betriebssystem eine native UTF-8-Kodierung verwendet.
--utf8-strings
--no-utf8-strings
Gehen Sie davon aus, dass Befehlszeilenargumente als UTF-8-Strings angegeben werden. Der Standard (--no-utf8-strings) ist davon auszugehen, dass Argumente in dem durch --display-charset angegebenen Zeichensatz kodiert sind. Diese Optionen wirken sich auf alle nachfolgenden Argumente aus. Beide Optionen können mehrmals verwendet werden. Diese Option sollte nicht in einer Optionsdatei verwendet werden.
Diese Option hat keine Auswirkung unter Windows. Dort wird die intern verwendete UTF-8-Kodierung für die Konsoleneingabe und -ausgabe übersetzt. Die Befehlszeilenargumente werden als Unicode erwartet und in UTF-8 übersetzt. Stellen Sie daher beim Aufrufen dieses Programms aus einem anderen Programm sicher, dass Sie die Unicode-Version von CreateProcess verwenden.
--options datei
Lesen Sie Optionen aus der Datei und versuchen Sie nicht, sie aus der Standardoptionsdatei im Homedir (siehe --homedir) zu lesen. Diese Option wird ignoriert, wenn sie in einer Optionsdatei verwendet wird.
--no-options
Abkürzung für --options /dev/null. Diese Option wird erkannt, bevor versucht wird, eine Optionsdatei zu öffnen. Durch die Verwendung dieser Option wird auch die Erstellung eines '~/.gnupg'-Homedirs verhindert.
-z n
--compress-level n
--bzip2-compress-level n
--no-compress
Legen Sie die Komprimierungsstufe für die ZIP- und ZLIB-Komprimierungsalgorithmen auf n fest. Standardmäßig wird die Standardkomprimierungsstufe von zlib (normalerweise 6) verwendet. --bzip2-compress-level legt die Komprimierungsstufe für den BZIP2-Komprimierungsalgorithmus fest (standardmäßig ebenfalls 6). Dies ist eine andere Option als --compress-level, da BZIP2 für jede zusätzliche Komprimierungsstufe eine beträchtliche Menge an Speicher verwendet.
Option -z setzt beides. Ein Wert von 0 für n deaktiviert die Komprimierung. Ein Wert von -1 erzwingt die Komprimierung mit der Standardstufe. Option --no-compress ist identisch mit -z0.
Außer für den Befehl --store wird immer eine Komprimierung verwendet, es sei denn, GnuPG erkennt, dass die Eingabe bereits komprimiert ist. Um die Verwendung der Komprimierung zu verhindern, verwenden Sie -z0 oder --no-compress; um die Komprimierung zu erzwingen, verwenden Sie -z-1 oder die Option z mit einer anderen Komprimierungsstufe als der Standardstufe, wie sie durch -1 angegeben wird. Beachten Sie, dass diese Überschreibung der Standardeinstellung nur mit z und nicht mit der langen Variante dieser Option funktioniert.
--bzip2-decompress-lowmem
Verwenden Sie eine andere Dekomprimierungsmethode für BZIP2-komprimierte Dateien. Diese alternative Methode verwendet etwas mehr als die Hälfte des Speichers, läuft aber auch mit der halben Geschwindigkeit. Dies ist nützlich unter extremen Speichereinschränkungen, wenn die Datei ursprünglich mit einer hohen --bzip2-compress-level komprimiert wurde.
--mangle-dos-filenames
--no-mangle-dos-filenames
Ältere Versionen von Windows können keine Dateinamen mit mehr als einem Punkt verarbeiten. --mangle-dos-filenames bewirkt, dass GnuPG (anstatt zu ergänzen) die Erweiterung eines Ausgabedateinamens ersetzt, um dieses Problem zu vermeiden. Diese Option ist standardmäßig deaktiviert und hat keine Auswirkungen auf nicht-Windows-Plattformen.
--ask-cert-level
--no-ask-cert-level
Beim Erstellen einer Schlüsselunterschrift wird zur Eingabe eines Zertifizierungslevels aufgefordert. Wenn diese Option nicht angegeben wird, wird das verwendete Zertifizierungslevel über --default-cert-level festgelegt. Siehe --default-cert-level für Informationen zu den einzelnen Leveln und deren Verwendung. --no-ask-cert-level deaktiviert diese Option. Diese Option ist standardmäßig deaktiviert.
--default-cert-level n
Der Standardwert für die Überprüfungsebene beim Signieren eines Schlüssels.
0 bedeutet, dass Sie keine besonderen Ansprüche darüber stellen, wie sorgfältig Sie den Schlüssel überprüft haben.
1 bedeutet, dass Sie glauben, dass der Schlüssel der Person gehört, die behauptet, der Besitzer zu sein, aber Sie den Schlüssel nicht oder gar nicht überprüft haben. Dies ist nützlich für eine
"Persona"-Verifizierung, bei der Sie den Schlüssel eines pseudonymen Benutzers signieren.
2 bedeutet, dass Sie eine einfache Überprüfung des Schlüssels durchgeführt haben. Dies könnte beispielsweise bedeuten, dass Sie den Schlüssel-Fingerabdruck überprüft und die Benutzer-ID auf dem
Schlüssel mit einem Lichtbildausweis verglichen haben.
3 bedeutet, dass Sie eine umfassende Überprüfung des Schlüssels durchgeführt haben. Dies könnte beispielsweise bedeuten, dass Sie den Schlüssel-Fingerabdruck persönlich mit dem Besitzer des
Schlüssels verglichen und anhand eines schwer zu fälschenden Dokuments mit einem Lichtbildausweis (z. B. einem Reisepass) überprüft haben, ob der Name des Schlüsselinhabers mit dem Namen in der Benutzer-ID auf dem Schlüssel übereinstimmt, und schließlich, dass Sie (durch E-Mail-Austausch) überprüft haben, dass die E-Mail-Adresse auf dem Schlüssel dem Schlüsselinhaber gehört.
Beachten Sie, dass die oben genannten Beispiele für die Level 2 und 3 nur Beispiele sind. Letztendlich liegt es an Ihnen, zu entscheiden, was "einfach" und "umfassend" für Sie bedeuten.
Diese Option ist standardmäßig auf 0 (kein besonderer Anspruch) eingestellt.
--min-cert-level
Beim Erstellen der Vertrauensdatenbank werden alle Signaturen mit einem Zertifizierungslevel, das unterhalb dieses Wertes liegt, als ungültig behandelt. Der Standardwert ist 2, wodurch Signaturen des Levels 1 ignoriert werden. Beachten Sie, dass Signaturen des Levels 0 ("kein besonderer Anspruch") immer akzeptiert werden.
--trusted-key long key ID oder Fingerabdruck
Gehen Sie davon aus, dass der angegebene Schlüssel (der als Fingerabdruck angegeben werden sollte) so vertrauenswürdig ist wie einer Ihrer eigenen geheimen Schlüssel. Diese Option ist nützlich, wenn Sie Ihre geheimen Schlüssel (oder einen davon) nicht online speichern möchten, aber dennoch die Gültigkeit des Schlüssels eines bestimmten Empfängers oder Unterzeichners überprüfen können. Wenn der angegebene Schlüssel nicht lokal verfügbar ist, aber ein LDAP-Schlüsselserver konfiguriert ist, wird der fehlende Schlüssel von diesem Server importiert. Der Wert "none" ist ausdrücklich erlaubt, um zwischen der Verwendung einer beliebigen --trusted-key-Option und der Nichtverwendung dieser Option (z. B. aufgrund der Option --no-options) zu unterscheiden.
--add-desig-revoker [sensitiv:]fingerprint
Fügen Sie den durch den Fingerabdruck angegebenen Schlüssel als designierten Widerrufer zu neu erstellten Schlüsseln hinzu. Wenn der Fingerabdruck mit dem Schlüsselwort sensitiv: versehen ist, werden
diese Informationen normalerweise nicht mit dem Schlüssel exportiert. Diese Option kann mehrmals angegeben werden, um mehr als einen designierten Widerrufer hinzuzufügen. Wenn anstelle eines Fingerabdrucks
das Schlüsselwort clear verwendet wird, werden alle zuvor angegebenen Fingerabdrücke verworfen. Designierte Widerrufer werden im Schlüssel als nicht widerrufbar gekennzeichnet. Beachten Sie, dass ein in
einer Parameterdatei angegebener designierter Widerrufer ebenfalls zum Schlüssel hinzugefügt wird.
--default-new-key-adsk fingerprint
Fügt die durch Fingerabdruck angegebene Subschlüssel als zusätzliches Entschlüsselungsschlüssel (ADSK) zu neu erstellten Schlüsseln hinzu. Diese Option kann mehrmals verwendet werden, um mehr als einen ADSK hinzuzufügen. Es ist auch möglich, mehrere durch Leerzeichen oder Komma getrennte Fingerabdrücke als Wert für diese Option anzugeben. Wenn anstelle eines Fingerabdrucks das Schlüsselwort „clear“ verwendet wird, werden alle zuvor angegebenen Fingerabdrücke verworfen (nützlich, um Optionen zu überschreiben, die in einer Konfigurationsdatei angegeben wurden). Der Fingerabdruck muss einen Subschlüssel angeben und benötigt kein Ausrufezeichen als Suffix; er muss im kompakten Format (40 oder 64 hexadezimale Ziffern ohne Leerzeichen) angegeben werden.
--trust-model {pgp|classic|tofu|tofu+pgp|direct|always|auto}
Legt fest, welches Vertrauensmodell GnuPG verwenden soll. Die Modelle sind:
pgp Dies ist das Web of Trust in Kombination mit Vertrauenssignaturen, wie es in PGP 5.x und höher verwendet wird. Dies ist das Standard-Vertrauensmodell beim Erstellen einer neuen Vertrauensdatenbank.
classic
Dies ist das Standard-Web of Trust, das in PGP 2 eingeführt wurde.
tofu
TOFU steht für Trust On First Use (Vertrauen bei der ersten Verwendung). In diesem experimentellen Vertrauensmodell wird beim ersten Erscheinen eines Schlüssels dieser gespeichert. Wenn später ein weiterer Schlüssel mit einer Benutzer-ID mit derselben E-Mail-Adresse angezeigt wird, werden beide Schlüssel als verdächtig markiert. In diesem Fall wird beim nächsten Verwenden eines der Schlüssel eine Warnung angezeigt, die den Konflikt und die möglichen Ursachen (entweder der Benutzer hat einen neuen Schlüssel generiert und vergessen, die alten und neuen Schlüssel zu signieren, der Schlüssel ist eine Fälschung oder es findet ein Man-in-the-Middle-Angriff statt) beschreibt, und der Benutzer wird aufgefordert, die Gültigkeit des betreffenden Schlüssels manuell zu bestätigen.
Da ein potenzieller Angreifer die E-Mail-Adresse kontrollieren kann und somit den Konflikterkennungsalgorithmus umgehen kann, indem er eine E-Mail-Adresse verwendet, die einer vertrauenswürdigen E-Mail-Adresse ähnlich sieht, werden bei der Überprüfung einer Nachricht Statistiken über die Anzahl der mit dem Schlüssel signierten Nachrichten angezeigt. Auf diese Weise kann ein Benutzer Angriffe mit gefälschten Schlüsseln für regelmäßige Korrespondenten leicht erkennen.
Im Vergleich zum Web of Trust bietet TOFU deutlich schwächere Sicherheitsgarantien. Insbesondere hilft TOFU nur bei der Gewährleistung der Konsistenz (d. h., dass die Bindung zwischen einem Schlüssel und einer E-Mail-Adresse nicht geändert wird). Ein großer Vorteil von TOFU ist, dass es wenig Aufwand erfordert, um es korrekt zu verwenden. Um das Web of Trust ordnungsgemäß zu verwenden, müssen Sie Schlüssel aktiv signieren und Benutzer als vertrauenswürdige Vermittler kennzeichnen. Dies ist ein zeitaufwändiger Prozess, und anekdotische Beweise deuten darauf hin, dass selbst sicherheitsbewusste Benutzer selten die Zeit dafür aufwenden und stattdessen auf einen Ad-hoc-TOFU-Prozess zurückgreifen.
Im TOFU-Modell werden Richtlinien mit Bindungen zwischen Schlüsseln und E-Mail-Adressen verknüpft (die aus Benutzer-IDs extrahiert und normalisiert werden). Es gibt fünf Richtlinien, die manuell mit der Option --tofu-policy festgelegt werden können. Die Standardrichtlinie kann mit der Option --tofu-default-policy festgelegt werden.
Die TOFU-Richtlinien sind: auto, good, unknown, bad und ask. Die Richtlinie "auto" wird standardmäßig verwendet (es sei denn, sie wird durch --tofu-default-policy überschrieben) und kennzeichnet eine Bindung als geringfügig vertrauenswürdig. Die Richtlinien "good", "unknown" und "bad" kennzeichnen eine Bindung als vollständig vertrauenswürdig, als unbekanntes Vertrauen bzw. als kein Vertrauen. Die Richtlinie "unknown" ist nützlich, um TOFU nur zur Erkennung von Konflikten zu verwenden, aber niemals eine positive Vertrauensbewertung für eine Bindung zuzuweisen. Die letzte Richtlinie, "ask", fordert den Benutzer auf, das Vertrauen der Bindung anzugeben. Wenn der Batch-Modus aktiviert ist (oder die Eingabe im Kontext nicht geeignet ist), wird der Benutzer nicht aufgefordert, und es wird ein undefinierter Vertrauenslevel zurückgegeben.
tofu+pgp
Dieses experimentelle Vertrauensmodell kombiniert TOFU mit dem Web of Trust. Dies geschieht, indem das Vertrauenslevel für jedes Modell berechnet und dann das maximale Vertrauenslevel verwendet wird, wobei die Vertrauenslevel wie folgt geordnet sind: unknown < undefined < marginal < fully < ultimate < expired < never.
Durch die Festlegung von --tofu-default-policy=unknown kann dieses Modell verwendet werden, um das Web of Trust mit dem Konflikterkennungsalgorithmus von TOFU zu implementieren, ohne die Zuweisung positiver Vertrauenswerte, was einige sicherheitsbewusste Benutzer nicht mögen.
direct Die Schlüsselgültigkeit wird direkt vom Benutzer festgelegt und nicht über das Web of Trust berechnet. Dieses Modell basiert ausschließlich auf dem Schlüssel und unterscheidet nicht zwischen Benutzer-IDs. Beachten Sie, dass beim Wechsel zu einem anderen Vertrauensmodell die für einen Schlüssel zugewiesenen Vertrauenswerte in Owner-Trust-Werte umgewandelt werden, die auch angeben, wie sehr Sie dem Besitzer des Schlüssels vertrauen, um andere Schlüssel zu signieren.
always Überspringen Sie die Schlüsselvalidierung und gehen Sie davon aus, dass die verwendeten Schlüssel immer vollständig gültig sind. Sie verwenden diese Option in der Regel nicht, es sei denn, Sie verwenden ein externes Validierungsschema. Diese Option unterdrückt auch das "[unsicher]" -Tag, das bei Signaturprüfungen angezeigt wird, wenn es keine Hinweise darauf gibt, dass die Benutzer-ID an den Schlüssel gebunden ist. Beachten Sie, dass dieses Vertrauensmodell dennoch die Verwendung von abgelaufenen, widerrufenen oder deaktivierten Schlüsseln nicht zulässt.
auto Wählen Sie das Vertrauensmodell basierend darauf aus, was die interne Vertrauensdatenbank angibt. Dies ist das Standardmodell, wenn eine solche Datenbank bereits vorhanden ist. Beachten Sie, dass ein TOFU-Vertrauensmodell hier nicht berücksichtigt wird und explizit aktiviert werden muss.
--always-trust
Identisch mit --trust-model always.
--assert-signer fpr_or_file
Diese Option prüft, ob mindestens eine gültige Signatur in einer Datei mit dem angegebenen Schlüssel erstellt wurde. Der Schlüssel wird entweder als Fingerabdruck oder als Datei mit einer Liste von Fingerabdrücken angegeben. Der Fingerabdruck muss in kompaktem Format angegeben oder aufgelistet werden (keine Doppelpunkte oder Leerzeichen dazwischen). Diese Option kann mehrmals angegeben werden, und jeder Fingerabdruck wird sowohl mit dem signierenden Schlüssel als auch mit dem entsprechenden primären Schlüssel verglichen. Wenn fpr_or_file eine Datei angibt, werden leere Zeilen sowie alle Zeilen, die mit einem Hash-Zeichen beginnen, ignoriert. Mit dieser Option ist garantiert, dass gpg mit einem Exit-Code von 0 zurückgibt, wenn und nur wenn eine Signatur gefunden wurde, gültig ist und der Schlüssel mit einem der von dieser Option angegebenen Fingerabdrücke übereinstimmt.
--assert-pubkey-algo algolist
Während der Überprüfung der Datensignatur prüft diese Option, ob der verwendete Algorithmus für den öffentlichen Schlüssel mit den in algolist angegebenen Algorithmen übereinstimmt. Diese Option kann mehrmals angegeben werden, um weitere Algorithmen zur Liste hinzuzufügen; die Trennzeichen der Liste sind entweder Kommas oder Leerzeichen.
Die in der Liste angegebenen Algorithmusnamen können entweder wörtliche Namen wie „ed25519“ mit einem optionalen führenden einzelnen Gleichheitszeichen sein oder mit „>“, „>=“, „<=“ oder „<“ versehen sein. Dieser Präfixoperator wird auf den numerischen Teil des Algorithmusnamens angewendet; zum Beispiel 2048 in „rsa2048“ oder 384 in „brainpoolP384r1“. Wenn die führenden Nicht-Ziffern im Namen übereinstimmen, wird der Präfixoperator verwendet, um den numerischen Teil zu vergleichen. Ein nachfolgendes Suffix wird in diesem Fall ignoriert. Zum Beispiel erlaubt eine Algorithmusliste „>rsa3000, >=brainpool384r1, =ed25519“ RSA-Signaturen mit mehr als 3000 Bits, Brainpool-Kurven 384 und 512 sowie den Algorithmus ed25519.
Mit dieser Option ist garantiert, dass gpg (und auch gpgv) nur dann mit dem Exit-Code 0 zurückgibt, wenn alle gültigen Signaturen auf den Daten mit einem übereinstimmenden Algorithmus aus der angegebenen Liste erstellt wurden.
--auto-key-locate mechanisms
--no-auto-key-locate
GnuPG kann mit dieser Option automatisch Schlüssel bei Bedarf finden und abrufen. Dies geschieht beim Verschlüsseln an eine E-Mail-Adresse (in der Form „_“) und wenn keine „_“-Schlüssel im lokalen Schlüsselring vorhanden sind. Diese Option akzeptiert eine beliebige Anzahl der unten aufgeführten Mechanismen in der Reihenfolge, in der sie ausprobiert werden sollen. Anstatt die Mechanismen als kommagetrennte Argumente aufzulisten, kann die Option auch mehrmals angegeben werden, um weitere Mechanismen hinzuzufügen. Die Option `--no-auto-key-locate` oder der Mechanismus „clear“ setzt die Liste zurück. Standardmäßig ist „local,wkd“.
cert Finden Sie einen Schlüssel mithilfe von DNS CERT gemäß RFC-4398.
dane Finden Sie einen Schlüssel mithilfe von DANE gemäß draft-ietf-dane-openpgpkey-05.txt.
wkd Finden Sie einen Schlüssel mithilfe des Web Key Directory-Protokolls.
ldap Finden Sie den Schlüssel mithilfe der konfigurierten LDAP-Server. Diese Methode ähnelt dem Keyserver-Mechanismus, verwendet aber immer nur LDAP-Server.
ntds Finden Sie den Schlüssel mithilfe von Active Directory (nur Windows). Mit diesem Mechanismus kann man auch über den Befehl `--locate-external-key` nach Fingerabdruck suchen. Beachten Sie, dass dieser Mechanismus tatsächlich eine Abkürzung für den Mechanismus „ldap“ ist, der nur „ldap:///“ als Keyserver verwendet.
keyserver
Suchen Sie einen Schlüssel mit einem Schlüsselserver. Mit dieser Methode kann man auch nach Fingerabdruck suchen, indem man den Befehl --locate-external-key verwendet, wenn einer der konfigurierten Schlüsselserver ein LDAP-Server ist.
keyserver-URL
Zusätzlich kann eine Schlüsselserver-URL verwendet werden, wie sie in der dirmngr-Konfiguration verwendet wird, um diesen bestimmten Schlüsselserver abzufragen. Mit dieser Methode kann man auch nach Fingerabdruck suchen, indem man den Befehl --locate-external-key verwendet, wenn die URL einen LDAP-Server angibt.
local
Suchen Sie den Schlüssel mit den lokalen Schlüsselringen. Dieser Mechanismus ermöglicht es dem Benutzer, die Reihenfolge einer lokalen Schlüsselabfrage festzulegen. Die Verwendung von --auto-key-locate local ist daher identisch mit --no-auto-key-locate.
nodefault
Dieses Flag deaktiviert die Standard-Suche in den lokalen Schlüsselringen, die vor allen anderen Mechanismen durchgeführt wird, die durch --auto-key-locate definiert sind. Die Position dieses Mechanismus in der Liste spielt keine Rolle. Er ist nicht erforderlich, wenn auch local verwendet wird.
clear
Dieser Parameter löscht alle definierten Mechanismen. Dies ist nützlich, um in einer Konfigurationsdatei angegebene Mechanismen zu überschreiben. Beachten Sie, dass ein nodefault-Parameter in den Mechanismen ebenfalls gelöscht wird, es sei denn, er wird danach angegeben.
--auto-key-import
--no-auto-key-import
Dies ist ein Offline-Mechanismus, um einen fehlenden Schlüssel für die Signaturverifizierung und für die spätere Verschlüsselung mit diesem Schlüssel zu erhalten. Wenn diese Option aktiviert ist und eine Signatur einen eingebetteten Schlüssel enthält, wird dieser Schlüssel verwendet, um die Signatur zu überprüfen, und bei erfolgreicher Verifizierung wird der Schlüssel importiert. Standardmäßig ist --no-auto-key-import aktiviert.
Auf der Senderseite (Signaturerstellung) muss die Option --include-key-block verwendet werden, um den öffentlichen Teil des signierenden Schlüssels als "Key Block Subpacket" in die Signatur einzufügen.
--auto-key-retrieve
--no-auto-key-retrieve
Diese Optionen aktivieren oder deaktivieren das automatische Abrufen von Schlüsseln von einem Schlüsselserver, wenn Signaturen von Schlüsseln überprüft werden, die sich nicht im lokalen Schlüsselring befinden. Standardmäßig ist --no-auto-key-retrieve aktiviert.
Die Reihenfolge, in der die Methoden zum Suchen des Schlüssels ausprobiert werden, ist:
Wenn die Option --auto-key-import gesetzt ist und die Signatur einen eingebetteten Schlüssel enthält,
wird dieser Schlüssel verwendet, um die Signatur zu überprüfen, und bei erfolgreicher Verifizierung wird dieser Schlüssel importiert.
Wenn in der Signatur ein bevorzugter Schlüsselserver angegeben ist und die Option `honor-keyserver-url` aktiv ist (was nicht der Standard ist), wird dieser Schlüsselserver ausprobiert. Beachten Sie, dass der Ersteller der Signatur die Option `--sig-keyserver-url` verwendet, um den bevorzugten Schlüsselserver für Datensignaturen anzugeben.
Wenn die Signatur die UID des Signaturs enthält (z. B. durch Verwendung von `--sender` beim Erstellen der Signatur), wird eine Web Key Directory (WKD)-Suche durchgeführt. Dies ist die Standardkonfiguration, kann aber deaktiviert werden, indem WKD aus der Liste `auto-key-locate` entfernt oder die Option `--disable-signer-uid` verwendet wird.
Wenn ein beliebiger Schlüsselserver konfiguriert ist und der Issuer Fingerprint Teil der Signatur ist
(seit GnuPG 2.1.16), werden die konfigurierten Schlüsselserver ausprobiert.
Beachten Sie, dass diese Option ein "Web-Bug"-ähnliches Verhalten ermöglicht. Schlüsselserver- oder Web Key Directory-Betreiber können sehen, welche Schlüssel Sie anfordern. Indem Sie Ihnen eine Nachricht senden, die mit einem brandneuen Schlüssel signiert ist (den Sie natürlich nicht in Ihrem lokalen Schlüsselring haben), kann der Betreiber Ihre IP-Adresse und die Zeit, zu der Sie die Signatur überprüft haben, ermitteln.
--keyid-format {none|short|0xshort|long|0xlong}
Wählen Sie, wie Schlüssel-IDs angezeigt werden sollen. „none“ zeigt die Schlüssel-ID überhaupt nicht an, sondern zeigt den Fingerabdruck in einer separaten Zeile an. „short“ ist die traditionelle 8-stellige Schlüssel-ID. „long“ ist die genauere (aber weniger praktische) 16-stellige Schlüssel-ID. Fügen Sie „0x“ hinzu, um „0x“ am Anfang der Schlüssel-ID einzufügen, z. B. 0x99242560. Beachten Sie, dass diese Option ignoriert wird, wenn die Option --with-colons verwendet wird.
--keyserver name
Diese Option ist veraltet – bitte verwenden Sie stattdessen --keyserver in „dirmngr.conf“.
Verwenden Sie name als Ihren Schlüsselserver. Dies ist der Server, mit dem --receive-keys, --send-keys und --search-keys kommunizieren, um Schlüssel von einem Schlüsselserver zu empfangen, Schlüssel an einen Schlüsselserver zu senden und Schlüssel auf einem Schlüsselserver zu suchen. Das Format des Namens ist eine URI: `scheme:[//]keyservername[:port]`. Das Schema ist der Typ des Schlüsselservers: „hkp“/„hkps“ für HTTP- (oder kompatible) Schlüsselserver oder „ldap“/„ldaps“ für LDAP-Schlüsselserver. Beachten Sie, dass Ihre spezielle GnuPG-Installation möglicherweise andere Schlüsselservertypen verfügbar hat. Schlüsselserver-Schemata sind nicht zwischen Groß- und Kleinschreibung zu unterscheiden.
Die meisten Schlüsselserver synchronisieren sich gegenseitig, sodass es im Allgemeinen nicht erforderlich ist, Schlüssel an mehr als einen Server zu senden. Der Schlüsselserver hkp://keys.gnupg.net verwendet Round-Robin-DNS, um bei jeder Verwendung einen anderen Schlüsselserver bereitzustellen.
--keyserver-options {name=value}
Dies ist eine durch Leerzeichen oder Kommas getrennte Zeichenfolge, die Optionen für den Schlüsselserver angibt. Optionen können mit einem „no-“ versehen werden, um die entgegengesetzte Bedeutung zu erzielen. Hier können gültige Import- oder Exportoptionen verwendet werden, um diese beim Importieren (--recv-key) oder Exportieren (--send-key) eines Schlüssels von einem Schlüsselserver anzuwenden. Während nicht alle Optionen für alle Schlüsselservertypen verfügbar sind, sind einige gängige Optionen:
include-revoked
Wenn Sie mit --search-keys nach einem Schlüssel suchen, werden Schlüssel einbezogen, die auf dem Schlüsselserver als widerrufen gekennzeichnet sind. Beachten Sie, dass nicht alle Schlüsselserver zwischen widerrufenen und nicht widerrufenen Schlüsseln unterscheiden, und für solche Schlüsselserver ist diese Option bedeutungslos. Beachten Sie auch, dass die meisten Schlüsselserver keine kryptografische Überprüfung von Schlüsselwiderrufen durchführen, so dass das Deaktivieren dieser Option dazu führen kann, dass Schlüssel übersprungen werden, die fälschlicherweise als widerrufen gekennzeichnet sind.
include-disabled
Wenn Sie mit --search-keys nach einem Schlüssel suchen, werden Schlüssel einbezogen, die auf dem Schlüsselserver als deaktiviert gekennzeichnet sind. Beachten Sie, dass diese Option nicht mit HKP-Schlüsselservern verwendet wird.
auto-key-retrieve
Dies ist ein veraltetes Alias für die Option auto-key-retrieve. Bitte verwenden Sie sie nicht; sie wird in zukünftigen Versionen entfernt.
honor-keyserver-url
Wenn Sie --refresh-keys verwenden, und der betreffende Schlüssel eine bevorzugte Schlüsselserver-URL hat, verwenden Sie dann diesen bevorzugten Schlüsselserver, um den Schlüssel zu aktualisieren. Wenn außerdem auto-key-retrieve gesetzt ist und die Signatur, die überprüft wird, eine bevorzugte Schlüsselserver-URL hat, verwenden Sie dann diesen bevorzugten Schlüsselserver, um den Schlüssel abzurufen. Beachten Sie, dass diese Option einen „Web-Bug“ einführt: Der Ersteller des Schlüssels kann sehen, wann der Schlüssel aktualisiert wird. Aus diesem Grund ist diese Option standardmäßig nicht aktiviert.
include-subkeys
Beim Empfangen eines Schlüssels sollen auch Unter-Schlüssel als potenzielle Ziele berücksichtigt werden. Beachten Sie, dass diese Option nicht mit HKP-Keyservern verwendet wird, da diese das Abrufen von Schlüsseln anhand der Unter-Schlüssel-ID nicht unterstützen.
only-pubkeys
Verhindern Sie das Importieren von geheimen Schlüsseln.
timeout
http-proxy=value
verbose
debug
check-cert
ca-cert-file
Diese Optionen haben seit GnuPG 2.1 keine Funktion mehr. Verwenden Sie stattdessen die Konfigurationsoptionen von dirmngr.
Die Standardliste der Optionen lautet: „self-sigs-only, repair-keys, repair-pks-subkey-bug, export-attributes“. Wenn die tatsächlich verwendete Quelle jedoch ein LDAP-Server ist, wird „no-self-sigs-only“ angenommen, es sei denn, „self-sigs-only“ wurde explizit konfiguriert.
--completes-needed n
Anzahl der vollständig vertrauenswürdigen Benutzer, die erforderlich sind, um einen neuen Schlüsselunterzeichner einzuführen (Standard ist 1).
--marginals-needed n
Anzahl der marginal vertrauenswürdigen Benutzer, die erforderlich sind, um einen neuen Schlüsselunterzeichner einzuführen (Standard ist 3).
--tofu-default-policy {auto|good|unknown|bad|ask}
Die Standard-TOFU-Richtlinie (Standard ist auto). Weitere Informationen zur Bedeutung dieser Option finden Sie unter: [trust-model-tofu].
--max-cert-depth n
Maximale Tiefe einer Zertifikatskette (Standard ist 5).
--no-sig-cache
Nicht den Verifizierungsstatus von Schlüsselsignaturen zwischenspeichern. Das Zwischenspeichern bietet eine deutlich bessere Leistung bei Schlüsselauflistungen. Wenn Sie jedoch vermuten, dass Ihr öffentlicher Schlüsselring nicht vor Schreibmodifikationen geschützt ist, können Sie diese Option verwenden, um das Zwischenspeichern zu deaktivieren. Dies macht wahrscheinlich keinen Sinn, da alle Arten von Schäden entstehen können, wenn jemand anderen Schreibzugriff auf Ihren öffentlichen Schlüsselring hat.
--auto-check-trustdb
--no-auto-check-trustdb
Wenn GnuPG der Meinung ist, dass seine Informationen über das Web of Trust aktualisiert werden müssen, führt es automatisch intern den Befehl --check-trustdb aus. Dies kann ein zeitaufwändiger Prozess sein. --no-auto-check-trustdb deaktiviert diese Option.
--use-agent
--no-use-agent
Dies ist eine Dummy-Option. gpg benötigt immer den Agenten.
--gpg-agent-info
Dies ist eine Dummy-Option. Sie hat keine Wirkung, wenn sie mit gpg verwendet wird.
--agent-program file
Geben Sie ein Agentenprogramm an, das für geheime Schlüsseloperationen verwendet werden soll. Der Standardwert wird durch Ausführen von gpgconf mit der Option --list-dirs bestimmt. Beachten Sie, dass das Pipe-Symbol (|) für eine Regressionstest-Suite verwendet wird und daher nicht im Dateinamen verwendet werden darf.
--dirmngr-program file
Geben Sie ein dirmngr-Programm an, das für den Zugriff auf den Keyserver verwendet werden soll. Der Standardwert ist „/usr/bin/dirmngr“.
--disable-dirmngr
Deaktivieren Sie vollständig die Verwendung von Dirmngr.
--no-autostart
Starten Sie den gpg-Agenten oder dirmngr nicht, wenn dieser noch nicht gestartet wurde und sein Dienst erforderlich ist. Diese Option ist hauptsächlich auf Maschinen nützlich, auf denen die Verbindung zum gpg-Agenten zu einer anderen Maschine umgeleitet wurde. Wenn dirmngr auf der Remote-Maschine erforderlich ist, kann er manuell mit gpgconf --launch dirmngr gestartet werden.
--lock-once
Sperrt die Datenbanken beim ersten Sperranforderung und gibt die Sperre erst nach Beendigung des Prozesses frei.
--lock-multiple
Gibt die Sperren jedes Mal frei, wenn eine Sperre nicht mehr benötigt wird. Verwenden Sie dies, um eine vorherige Option `--lock-once` aus einer Konfigurationsdatei zu überschreiben.
--lock-never
Deaktiviert die Sperrung vollständig. Diese Option sollte nur in sehr speziellen Umgebungen verwendet werden, in denen sichergestellt werden kann, dass nur ein Prozess auf diese Dateien zugreift. Eine bootfähige Diskette mit einem eigenständigen Verschlüsselungssystem würde dies wahrscheinlich verwenden. Eine unsachgemäße Verwendung dieser Option kann zu Daten- und Schlüsselbeschädigungen führen.
--exit-on-status-write-error
Diese Option führt dazu, dass Schreibfehler in der Statusdatei sofort den Prozess beenden. Dies sollte eigentlich die Standardeinstellung sein, hat aber nie so funktioniert, daher benötigen wir eine Option, um dies zu aktivieren, damit die Änderung keine Anwendungen beeinträchtigt, die ihre Ende einer Status-FD-verbundenen Pipe zu früh schließen. Die Verwendung dieser Option zusammen mit `--enable-progress-filter` kann verwendet werden, um langwierige GnuPG-Operationen sauber abzubrechen.
--limit-card-insert-tries n
Wenn n größer als 0 ist, wird die Anzahl der Aufforderungen zum Einlegen einer Smartcard auf N-1 begrenzt. Mit einem Wert von 1 fragt GnuPG also gar nicht erst nach dem Einlegen einer Karte, wenn keine Karte beim Start vorhanden ist. Diese Option ist in der Konfigurationsdatei nützlich, falls eine Anwendung die Smartcard-Unterstützung nicht kennt und unendlich lange auf das Einlegen einer Karte wartet.
--no-random-seed-file
GnuPG verwendet eine Datei, um seinen internen Zufallspool über verschiedene Aufrufe hinweg zu speichern. Dadurch wird die Zufallszahlengenerierung beschleunigt; manchmal sind jedoch keine Schreibvorgänge erwünscht. Diese Option kann verwendet werden, um dies zu erreichen, was jedoch die Zufallszahlengenerierung verlangsamt.
--no-greeting
Unterdrückt die anfängliche Copyright-Nachricht.
--no-secmem-warning
Unterdrückt die Warnung über die Verwendung von "unsicherem Speicher".
--no-permission-warning
Unterdrückt die Warnung über unsichere Dateisystem- und Home-Verzeichnisberechtigungen (--homedir). Beachten Sie, dass die Berechtigungsprüfungen, die GnuPG durchführt, nicht als maßgeblich gedacht sind, sondern lediglich vor bestimmten häufigen Berechtigungsproblemen warnen. Gehen Sie nicht davon aus, dass das Fehlen einer Warnung bedeutet, dass Ihr System sicher ist.
Beachten Sie, dass die Warnung für unsichere --homedir-Berechtigungen nicht in der gpg.conf-Datei unterdrückt werden kann, da dies einem Angreifer ermöglichen würde, eine unsichere gpg.conf-Datei zu platzieren und diese Datei zu verwenden, um Warnungen über sich selbst zu unterdrücken. Die --homedir-Berechtigungswarnung kann nur über die Befehlszeile unterdrückt werden.
--require-secmem
--no-require-secmem
Verweigert die Ausführung, wenn GnuPG keinen sicheren Speicher erhalten kann. Standardmäßig ist dies deaktiviert (d. h. ausführen, aber eine Warnung ausgeben).
--require-cross-certification
--no-require-cross-certification
Beim Überprüfen einer Signatur, die mit einem Subschlüssel erstellt wurde, wird sichergestellt, dass die Quersignatur (das "Back-Signatur") am Subschlüssel vorhanden und gültig ist. Dies schützt vor einem subtilen Angriff auf Subschlüssel, die signieren können. Standardmäßig ist dies für gpg aktiviert.
--expert
--no-expert
Erlauben Sie dem Benutzer, bestimmte unsinnige oder "absurde" Dinge zu tun, wie das Signieren eines abgelaufenen oder widerrufenen Schlüssels, oder bestimmte potenziell inkompatible Dinge, wie das Generieren ungewöhnlicher Schlüsseltypen. Dadurch werden auch bestimmte Warnmeldungen über potenziell inkompatible Aktionen deaktiviert. Wie der Name schon sagt, ist diese Option nur für Experten gedacht. Wenn Sie die Auswirkungen dessen, was dies ermöglicht, nicht vollständig verstehen, lassen Sie es ausgeschaltet. --no-expert deaktiviert diese Option.
Schlüsselbezogene Optionen
--recipient name
-r Verschlüsseln für Benutzer-ID name. Wenn diese Option oder --hidden-recipient nicht angegeben ist, fordert GnuPG die Benutzer-ID an, es sei denn, --default-recipient ist angegeben.
--hidden-recipient name
-R Verschlüsseln für die Benutzer-ID name, aber die Schlüssel-ID dieses Benutzerschlüssels ausblenden. Diese Option hilft, den Empfänger der Nachricht zu verbergen und ist eine begrenzte Gegenmaßnahme gegen die Verkehrsanalyse.
Wenn diese Option oder --recipient nicht angegeben ist, fordert GnuPG die Benutzer-ID an, es sei denn, --default-recipient ist angegeben.
--recipient-file file
-f Diese Option ist ähnlich wie --recipient, mit dem Unterschied, dass sie auf einen Schlüssel in der angegebenen Datei verschlüsselt. file muss der Name einer Datei sein, die genau einen Schlüssel enthält. gpg geht davon aus, dass der Schlüssel in dieser Datei vollständig gültig ist.
--hidden-recipient-file file
-F Diese Option ist ähnlich wie --hidden-recipient, mit dem Unterschied, dass sie auf einen Schlüssel in der angegebenen Datei verschlüsselt. file muss der Name einer Datei sein, die genau einen Schlüssel enthält. gpg geht davon aus, dass der Schlüssel in dieser Datei vollständig gültig ist.
--encrypt-to name
Gleiches wie --recipient, aber diese Option ist für die Verwendung in der Optionsdatei vorgesehen und kann mit Ihrer eigenen Benutzer-ID als "encrypt-to-self" verwendet werden. Es wird empfohlen, einen Fingerabdruck oder zumindest eine lange Schlüssel-ID für name zu verwenden. Diese Schlüssel werden nur verwendet, wenn andere Empfänger angegeben sind, entweder durch die Verwendung von --recipient oder durch die abgefragte Benutzer-ID. Es werden keine Vertrauensprüfungen für diese Benutzer-IDs durchgeführt, und selbst deaktivierte Schlüssel können verwendet werden.
--hidden-encrypt-to name
Gleiches wie --hidden-recipient, aber diese Option ist für die Verwendung in der Optionsdatei vorgesehen und kann mit Ihrer eigenen Benutzer-ID als verstecktes "encrypt-to-self" verwendet werden. Es wird empfohlen, einen Fingerabdruck oder zumindest eine lange Schlüssel-ID für name zu verwenden. Diese Schlüssel werden nur verwendet, wenn andere Empfänger angegeben sind, entweder durch die Verwendung von --recipient oder durch die abgefragte Benutzer-ID. Es werden keine Vertrauensprüfungen für diese Benutzer-IDs durchgeführt, und selbst deaktivierte Schlüssel können verwendet werden.
--no-encrypt-to
Deaktivieren Sie die Verwendung aller --encrypt-to- und --hidden-encrypt-to-Schlüssel.
--group {name=value}
Richtet eine benannte Gruppe ein, die den Aliasen in E-Mail-Programmen ähnelt. Immer wenn der Gruppenname ein Empfänger ist (-r oder --recipient), wird er zu den angegebenen Werten erweitert. Mehrere Gruppen mit demselben Namen werden automatisch zu einer einzigen Gruppe zusammengeführt.
Die Werte sind Schlüssel-IDs oder -Fingerabdrücke, aber jede Schlüsselbeschreibung ist zulässig. Beachten Sie, dass ein Wert mit Leerzeichen als zwei verschiedene Werte behandelt wird. Beachten Sie auch, dass es nur eine Expansionsebene gibt – Sie können keine Gruppe erstellen, die auf eine andere Gruppe verweist. Wenn Sie dies über die Befehlszeile verwenden, ist es möglicherweise erforderlich, das Argument für diese Option in Anführungszeichen zu setzen, um zu verhindern, dass die Shell es als mehrere Argumente behandelt.
--ungroup name
Entfernt einen bestimmten Eintrag aus der mit --group angegebenen Liste.
--no-groups
Entfernt alle Einträge aus der mit --group angegebenen Liste.
--local-user name
-u Verwenden Sie `name` als Schlüssel zum Signieren. Beachten Sie, dass diese Option `--default-key` überschreibt.
--sender mbox
Diese Option hat zwei Zwecke. mbox muss entweder eine vollständige Benutzer-ID sein, die eine gültige E-Mail-Adresse enthält, oder einfach eine E-Mail-Adresse. Die Option kann mehrmals angegeben werden.
Beim Erstellen einer Signatur gibt diese Option die Benutzer-ID des Signierschlüssels an, die zum Erstellen der Signatur verwendet wird, und bettet diese Benutzer-ID in die erstellte Signatur ein (mithilfe des OpenPGP-Subpakets „Signer's User ID“). Wenn die Option mehrmals angegeben wird, wird eine geeignete Benutzer-ID ausgewählt. Wenn der Signierschlüssel jedoch direkt mithilfe einer E-Mail-Adresse angegeben wurde (d. h. nicht mithilfe eines Fingerabdrucks oder einer Schlüssel-ID), wird diese Option verwendet, und die E-Mail-Adresse wird in die erstellte Signatur eingebettet.
Beim Überprüfen einer Signatur wird mbox verwendet, um die von dem TOFU-Code ausgegebenen Informationen auf übereinstimmende Benutzer-IDs zu beschränken. Wenn die Option verwendet wird und die Signatur ein Subpaket „Signer's User ID“ enthält, werden diese Informationen ebenfalls verwendet, um die ausgegebenen Informationen zu beschränken. Beachten Sie, dass GnuPG nur den E-Mail-Adressenteil einer Benutzer-ID berücksichtigt.
Wenn diese Option oder das besagte Subpaket verfügbar ist, entsprechen die von der Option status-fd ausgegebenen TRUST-Zeilen der entsprechenden Benutzer-ID; wenn keine Benutzer-ID bekannt ist, werden die TRUST-Zeilen direkt auf dem Schlüssel berechnet und geben keine Informationen über die Benutzer-ID. In letzterem Fall wird dringend empfohlen, dass Skripte und andere Frontends die VALIDSIG-Zeile auswerten, den Schlüssel abrufen und alle Benutzer-IDs zusammen mit ihren Gültigkeits- (Vertrauens-)informationen ausgeben.
--try-secret-key name
Für versteckte Empfänger benötigt GPG die zum Testen der Entschlüsselung zu verwendenden Schlüssel. Der mit --default-key festgelegte Schlüssel wird immer zuerst ausprobiert, aber dies ist oft nicht ausreichend. Mit dieser Option können zusätzliche Schlüssel festgelegt werden, die zum Testen der Entschlüsselung verwendet werden. Obwohl jede gültige Benutzer-ID für name verwendet werden kann, ist es sinnvoll, mindestens die lange Schlüssel-ID zu verwenden, um Mehrdeutigkeiten zu vermeiden. Beachten Sie, dass gpg-agent möglicherweise ein Pinentry für viele Schlüssel anzeigt, um die Testentschlüsselung durchzuführen. Wenn Sie alle weiteren Testentschlüsselungen stoppen möchten, können Sie stattdessen die Schaltfläche „Fenster schließen“ anstelle der Schaltfläche „Abbrechen“ verwenden.
--try-all-secrets
Betrachten Sie nicht die in der Nachricht gespeicherte Schlüssel-ID, sondern versuchen Sie, alle geheimen Schlüssel der Reihe nach zu verwenden, um den richtigen Entschlüsselungsschlüssel zu finden. Diese Option erzwingt das Verhalten, das von anonymen Empfängern verwendet wird (die durch die Verwendung von --throw-keyids oder --hidden-recipient erstellt wurden), und kann in Fällen nützlich sein, in denen eine verschlüsselte Nachricht eine falsche Schlüssel-ID enthält.
--skip-hidden-recipients
--no-skip-hidden-recipients
Während der Entschlüsselung werden alle anonymen Empfänger übersprungen. Diese Option ist hilfreich, falls Personen die Funktion für anonyme Empfänger verwenden, um ihren eigenen Verschlüsselungsschlüssel vor anderen zu verbergen. Wenn man viele geheime Schlüssel hat, kann dies zu einer erheblichen Beeinträchtigung führen, da alle Schlüssel nacheinander ausprobiert werden, um etwas zu entschlüsseln, für das es eigentlich nicht bestimmt war. Der Nachteil dieser Option ist, dass es derzeit nicht möglich ist, eine Nachricht zu entschlüsseln, die tatsächlich anonyme Empfänger enthält.
Eingabe und Ausgabe
--armor
-a Erstellt eine ASCII-gepufferte Ausgabe. Standardmäßig wird das binäre OpenPGP-Format erstellt.
--no-armor
Geht davon aus, dass die Eingabedaten nicht im ASCII-gepufferten Format vorliegen.
--output file
-o file
Schreibt die Ausgabe in eine Datei. Um in die Standardausgabe zu schreiben, verwenden Sie - als Dateinamen.
--max-output n
Diese Option setzt eine Grenze für die Anzahl der Bytes, die bei der Verarbeitung einer Datei generiert werden. Da OpenPGP verschiedene Kompressionsstufen unterstützt, ist es möglich, dass die Klartextgröße einer bestimmten Nachricht deutlich größer ist als die ursprüngliche OpenPGP-Nachricht. Obwohl GnuPG ordnungsgemäß mit solchen Nachrichten funktioniert, besteht oft der Wunsch, eine maximale Dateigröße festzulegen, die vor der Verarbeitung durch die Betriebssystemgrenzen erreicht wird. Standardmäßig ist 0 eingestellt, was "keine Grenze" bedeutet.
--chunk-size n
Der AEAD-Verschlüsselungsmodus verschlüsselt die Daten in Blöcken, sodass die empfangende Seite am Ende jedes Blocks Übertragungsfehler oder Manipulationen überprüfen kann und dies nicht erst nach dem Empfang aller Daten verzögern muss. Die verwendete Blockgröße beträgt 2^n Byte. Der niedrigste zulässige Wert für n ist 6 (64 Byte), und der höchste ist der Standardwert von 22, der Blöcke erstellt, die nicht größer als 4 MiB sind.
--input-size-hint n
Mit dieser Option kann GPG die Größe der Eingabedaten in Bytes mitgeteilt werden. n muss eine positive Dezimalzahl sein. Diese Option ist nur dann nützlich, wenn die Eingabe nicht aus einer Datei stammt. GPG kann diese Information verwenden, um seine Pufferzuordnungsstrategie zu optimieren. Sie wird auch von der Option --status-fd Zeile "PROGRESS" verwendet, um einen Wert für "total" anzugeben, falls dieser nicht auf andere Weise verfügbar ist.
--key-origin string[,url]
GPG kann den Ursprung eines Schlüssels verfolgen. Bestimmte Ursprünge sind implizit bekannt (z. B. Schlüsselserver, Web-Schlüsselverzeichnis) und werden festgelegt. Beim Standardimport kann der Ursprung der importierten Schlüssel mit dieser Option festgelegt werden. Um die möglichen Werte aufzulisten, verwenden Sie "help" für string. Einige Ursprünge können ein optionales URL-Argument speichern. Diese URL kann nach einem Komma an das Ende von string angehängt werden.
--import-options parameters
Dies ist eine durch Leerzeichen oder Kommas getrennte Zeichenkette, die Optionen für den Import von Schlüsseln angibt. Optionen können mit `no-' versehen werden, um die entgegengesetzte Bedeutung zu erhalten. Die Optionen sind:
import-local-sigs
Erlaubt das Importieren von SchlüsselSignaturen, die als „lokal“ gekennzeichnet sind. Dies ist im Allgemeinen nicht nützlich, es sei denn, ein gemeinsames Schlüsselringschema wird verwendet. Standardmäßig ist dies deaktiviert.
keep-ownertrust
Normalerweise werden alle vorhandenen Ownertrust-Werte eines Schlüssels gelöscht, wenn ein Schlüssel importiert wird. Dies ist im Allgemeinen wünschenswert, damit ein zuvor gelöschter Schlüssel nicht automatisch Ownertrust-Werte erhält, nur weil er importiert wird. Andererseits ist es manchmal notwendig, einen vertrauenswürdigen Satz von Schlüsseln erneut zu importieren, aber die bereits zugewiesenen Ownertrust-Werte beizubehalten. Dies kann durch die Verwendung dieser Option erreicht werden.
repair-pks-subkey-bug
Beim Import wird versucht, die durch den PKS-Keyserver-Bug (vor Version 0.9.6) verursachten Schäden an Schlüsseln mit mehreren Subschlüsseln zu beheben. Beachten Sie, dass dies den beschädigten Schlüssel nicht vollständig reparieren kann, da einige wichtige Daten vom Keyserver entfernt werden, aber es stellt zumindest einen Subschlüssel wieder her. Standardmäßig ist dies für den regulären Befehl --import deaktiviert und für den Befehl --receive-keys aktiviert.
import-show
show-only
Zeigt eine Liste des Schlüssels an, wie er importiert wird, unmittelbar bevor er gespeichert wird. Dies kann mit der Option --dry-run kombiniert werden, um nur die Schlüssel anzuzeigen; die Option show-only ist eine Abkürzung für diese Kombination. Der Befehl --show-keys ist eine weitere Abkürzung dafür. Beachten Sie, dass Suffixe wie „#“ für die Zeilen „sec“ und „sbb“ möglicherweise nicht ausgegeben werden.
import-export
Führt den gesamten Importcode aus, speichert den Schlüssel jedoch nicht im lokalen Schlüsselring, sondern schreibt ihn in die Ausgabe. Die Option export-dane beeinflusst die Ausgabe. Diese Option kann beispielsweise verwendet werden, um alle ungültigen Teile eines Schlüssels zu entfernen, ohne ihn speichern zu müssen.
merge-only
Erlaubt beim Import das Aktualisieren vorhandener Schlüssel, verhindert aber das Importieren neuer Schlüssel. Standardmäßig ist dies deaktiviert.
import-clean
Bereinigt nach dem Import alle Benutzer-IDs des neuen Schlüssels, die nicht verwendet werden können (entfernt alle Signaturen außer der Selbstreferenz-Signatur). Anschließend werden alle Signaturen des neuen Schlüssels entfernt, die nicht verwendet werden können. Dies umfasst Signaturen, die von Schlüsseln ausgestellt wurden, die nicht im Schlüsselring vorhanden sind. Diese Option entspricht der Ausführung des Befehls --edit-key „clean“ nach dem Import. Standardmäßig ist dies deaktiviert.
self-sigs-only
Akzeptiert nur Selbstreferenz-Signaturen beim Importieren eines Schlüssels. Alle anderen Schlüsselsignaturen werden in einem frühen Importstadium übersprungen. Diese Option kann zusammen mit den Keyserver-Optionen verwendet werden, um Versuche zu verhindern, einen Schlüssel mit gefälschten Signaturen von einem Keyserver zu überfluten. Der Nachteil ist, dass alle anderen gültigen Schlüsselsignaturen, wie sie vom Web of Trust benötigt werden, ebenfalls nicht importiert werden. Beachten Sie, dass diese Option in Kombination mit import-clean den letzten Bereinigungsschritt nach dem Zusammenführen des importierten Schlüssels in den vorhandenen Schlüssel unterdrückt.
ignore-attributes
Ignoriert alle Attribut-Benutzer-IDs (Foto-IDs) und deren Signaturen beim Importieren eines Schlüssels.
repair-keys
Behebt nach dem Import verschiedene Probleme mit den Schlüsseln. Zum Beispiel werden Signaturen neu angeordnet und doppelte Signaturen entfernt. Standardmäßig ist dies aktiviert.
bulk-import
Wenn die Option use-keyboxd in common.conf verwendet wird, erfolgt der Import innerhalb
einer einzigen Transaktion.
import-minimal
Importiert den kleinstmöglichen Schlüssel. Dies entfernt alle Signaturen mit Ausnahme der letzten Selbstsignatur für jede Benutzer-ID. Diese Option entspricht dem Ausführen des
Befehls --edit-key minimize nach dem Import. Standardmäßig ist dies deaktiviert.
restore
import-restore
Importiert im Schlüsselwiederherstellungsmodus. Dies importiert alle Daten, die normalerweise während des Imports übersprungen werden, einschließlich aller GnuPG-spezifischen Daten. Alle anderen widersprüchlichen Optionen werden überschrieben.
--import-filter {name=expr}
--export-filter {name=expr}
Diese Optionen definieren einen Import-/Exportfilter, der auf den importierten/exportierten
Schlüsselblock angewendet wird, kurz bevor dieser gespeichert/geschrieben wird. name definiert den zu verwendenden Filtertyp,
expr die auszuwertende Expression. Die Option kann mehrmals verwendet werden, wodurch weitere Ausdrücke zum gleichen Namen hinzugefügt werden.
Die verfügbaren Filtertypen sind:
keep-uid
Dieser Filter behält eine Benutzer-ID-Paket und die zugehörigen abhängigen Pakete im Schlüsselblock bei, wenn
die Expression zu true ausgewertet wird.
drop-subkey
Dieser Filter verwirft die ausgewählten Unter-Schlüssel. Derzeit nur für --exportfilter implementiert.
drop-sig
Dieser Filter verwirft die ausgewählten Schlüsselsignaturen für Benutzer-IDs. Selbstsignaturen werden nicht
berücksichtigt. Derzeit nur für --import-filter implementiert.
select Dieser Filter ist nur von `--list-filter` implementiert. Alle Eigenschaftsnamen können verwendet werden.
Für die Syntax der Expression siehe das Kapitel "FILTER EXPRESSIONS". Die Eigenschaftsnamen für
die Expressions hängen vom jeweiligen Filtertyp ab und werden in der folgenden Tabelle angegeben. Beachten
Sie, dass alle Eigenschaftsnamen auch von --list-filter verwendet werden können.
Eigenschaftsnamen können mit einem durch einen Schrägstrich getrennten Bereich versehen werden. Gültige Bereiche sind "pub" für öffentliche und geheime Hauptschlüssel, "sub" für öffentliche und geheime Unterschlüssel, "uid" für Benutzer-ID-Pakete und "sig" für Signaturpakete. Ungültige Bereiche werden derzeit ignoriert.
Die verfügbaren Eigenschaften sind:
uid Eine Zeichenkette mit der Benutzer-ID. (keep-uid)
mbox Der addr-spec-Teil einer Benutzer-ID mit Mailbox oder einer leeren Zeichenkette. (keep-uid)
algostr
Eine Zeichenkette mit der Beschreibung des Schlüsselalgorithmus. Zum Beispiel "rsa3072" oder "ed25519".
key_algo
Eine Zahl mit dem öffentlichen Schlüsselalgorithmus eines Schlüssel- oder Unterschlüsselpakets. (drop-subkey)
key_size
Eine Zahl mit der effektiven Schlüssellänge eines Schlüssel- oder Unterschlüsselpakets. (drop-subkey)
key_created
key_created_d
Die erste ist der Zeitstempel, zu dem ein öffentlicher Schlüssel oder ein Unterschlüsselpaket erstellt wurde. Die zweite ist das Gleiche, aber als ISO-Zeichenkette, z. B. "2016-08-17". (drop-subkey)
key_expires
key_expires_d
Die Ablaufzeit eines öffentlichen Schlüssels oder Unterschlüssels oder 0, wenn er nicht abläuft. Die zweite ist das Gleiche, aber als ISO-Datumszeichenkette oder eine leere Zeichenkette, z. B. "2038-01-19".
fpr Die hexadezimale Fingerprint des aktuellen Unterschlüssels oder Hauptschlüssels. (drop-subkey)
primary
Ein boolescher Wert, der angibt, ob die Benutzer-ID die primäre ist. (keep-uid)
expired
Ein boolescher Wert, der angibt, ob eine Benutzer-ID (keep-uid), ein Schlüssel (drop-subkey) oder eine Signatur (drop-sig) abgelaufen ist.
revoked
Ein boolescher Wert, der angibt, ob eine Benutzer-ID (keep-uid) oder ein Schlüssel (drop-subkey) widerrufen wurde.
disabled
Ein boolescher Wert, der angibt, ob ein Primärschlüssel deaktiviert ist.
secret Ein boolescher Wert, der angibt, ob ein Schlüssel oder Unterschlüssel ein geheimer Schlüssel ist. (drop-subkey)
usage Eine Zeichenfolge, die die Nutzungsflags für den Unterschlüssel aus der Zeichenfolge „ecsa?“ angibt.
Zum Beispiel wäre ein Unterschlüssel, der nur zum Signieren und zur Authentifizierung verwendet werden kann, eine exakte Übereinstimmung mit „sa“. (drop-subkey)
sig_created
sig_created_d
Das erste ist der Zeitstempel, zu dem ein Signaturpaket erstellt wurde. Das zweite ist dasselbe, wird aber als ISO-Datumstring angegeben, z. B. „2016-08-17“. (drop-sig)
sig_expires
sig_expires_d
Die Ablaufzeit eines Signaturpakets oder 0, wenn es nicht abläuft. Das zweite ist dasselbe, wird aber als ISO-Datumstring oder eine leere Zeichenfolge angegeben, z. B. „2038-01-19“.
sig_algo
Eine Zahl, die den Algorithmus für den öffentlichen Schlüssel eines Signaturpakets angibt. (drop-sig)
sig_digest_algo
Eine Zahl, die den Digest-Algorithmus eines Signaturpakets angibt. (drop-sig)
origin Eine Zeichenfolge, die den Ursprung des Schlüssels angibt oder ein Fragezeichen. Zum Beispiel wird die Zeichenfolge „wkd“ verwendet, wenn ein Schlüssel aus einer Web Key Directory-Abfrage stammt.
lastupd
Der Zeitstempel, zu dem der Schlüssel zuletzt von einem Keyserver oder dem Web Key Directory aktualisiert wurde.
url Eine Zeichenfolge, die die URL enthält, die der letzten Schlüsselabfrage zugeordnet ist.
--export-options Parameter
Dies ist eine durch Leerzeichen oder Kommas getrennte Zeichenfolge, die Optionen für den Export von Schlüsseln angibt. Optionen können mit „no-“ versehen werden, um die entgegengesetzte Bedeutung zu erhalten. Die Optionen sind:
export-local-sigs
Ermöglicht den Export von Schlüsselsignaturen, die als „lokal“ gekennzeichnet sind. Dies ist im Allgemeinen nicht nützlich, es sei denn, ein gemeinsames Schlüsselringschema wird verwendet. Standardmäßig ist dies deaktiviert.
export-attributes
Beinhaltet Benutzer-IDs mit Attributen (Foto-IDs) beim Export. Das Nicht-Einbeziehen von Benutzer-IDs mit Attributen ist nützlich, um Schlüssel zu exportieren, die von einem OpenPGP-Programm verwendet werden sollen, das keine Benutzer-IDs mit Attributen akzeptiert. Standardmäßig ist dies aktiviert.
export-sensitive-revkeys
Beinhaltet Informationen über designierte Widerrufer, die als „sensibel“ gekennzeichnet wurden. Standardmäßig ist dies deaktiviert.
backup
export-backup
Für die Verwendung als Backup exportieren. Die exportierten Daten enthalten alle Daten, die zur späteren Wiederherstellung des Schlüssels oder der Schlüssel mit GnuPG benötigt werden. Das Format ist im Wesentlichen das OpenPGP-Format, jedoch mit GnuPG-spezifischen Daten erweitert. Alle anderen widersprüchlichen Optionen werden außer Kraft gesetzt.
export-clean
Kompakt (entfernt alle Signaturen von) Benutzer-IDs auf dem zu exportierenden Schlüssel, wenn die Benutzer-IDs nicht verwendbar sind. Außerdem werden keine Signaturen exportiert, die nicht verwendbar sind. Dies umfasst Signaturen, die von Schlüsseln ausgestellt wurden, die nicht im Schlüsselring vorhanden sind. Diese Option entspricht dem Ausführen des Befehls „clean“ im Befehl „--edit-key“ vor dem Export, außer dass die lokale Kopie des Schlüssels nicht geändert wird. Standardmäßig ist dies deaktiviert.
export-minimal
Exportiert den kleinstmöglichen Schlüssel. Entfernt alle Signaturen außer der aktuellsten Selbstsignatur für jede Benutzer-ID. Diese Option entspricht der Ausführung des Befehls `--edit-key minimize` vor dem Export, außer dass die lokale Kopie des Schlüssels nicht geändert wird. Standardmäßig nicht aktiviert.
export-revocs
Exportiert nur eigenständige Widerrufzertifikate des Schlüssels. Diese Option exportiert keine Widerrufe von Zertifikaten von Drittanbietern.
export-dane
Gibt anstelle des Schlüsselmaterials OpenPGP DANE-Einträge aus, die in DNS-Zonendateien eingefügt werden können. Vor jedem Eintrag wird eine ORIGIN-Zeile ausgegeben, um die Einträge in die entsprechende Zonendatei umzuleiten.
mode1003
Aktiviert die Verwendung eines neuen geheimen Schlüssel-Exportformats. Dieses Format vermeidet die Verschlüsselung, die im aktuellen OpenPGP-Format erforderlich ist, und verbessert auch die Sicherheit des geheimen Schlüssels, wenn dieser mit einem Passwort geschützt wurde. Beachten Sie, dass ein ungeschützter Schlüssel unverändert exportiert wird und daher nicht sicher ist; die allgemeine Regel für die Übertragung geheimer Schlüssel in einer OpenPGP-verschlüsselten Datei gilt auch in diesem Modus. Versionen von GnuPG vor 2.4.0 können eine solche geheime Datei nicht importieren.
--with-colons
Gibt Schlüssel-Listen mit Doppelpunkten als Trennzeichen aus. Beachten Sie, dass die Ausgabe unabhängig von der Einstellung `--display-charset` in UTF-8 kodiert wird. Dieses Format ist nützlich, wenn GnuPG aus Skripten und anderen Programmen aufgerufen wird, da es leicht maschinell verarbeitet werden kann. Die Details dieses Formats sind in der Datei `doc/DETAILS` dokumentiert, die in der GnuPG-Quellcode-Distribution enthalten ist.
--fixed-list-mode
Verschmilzt die primäre Benutzer-ID und den primären Schlüssel nicht in der `--with-colons`-Listenmodus und gibt alle Zeitstempel als Sekunden seit 1970-01-01 aus. Seit GnuPG 2.0.10 wird dieser Modus immer verwendet, sodass diese Option überflüssig ist; ihre Verwendung schadet jedoch nicht.
--legacy-list-mode
Kehrt zum öffentlichen Schlüssel-Listenmodus vor Version 2.1 zurück. Dies betrifft nur die für Menschen lesbare Ausgabe und nicht die Maschinenschnittstelle (d. h. `--with-colons`). Beachten Sie, dass das Legacy-Format keine geeigneten Informationen für elliptische Kurven liefert.
--with-fingerprint
Entspricht dem Befehl `--fingerprint`, ändert jedoch nur das Ausgabeformat und kann zusammen mit einem anderen Befehl verwendet werden.
--with-subkey-fingerprint
Wenn ein Fingerabdruck für den Primärschlüssel ausgegeben wird, erzwingt diese Option die Ausgabe des Fingerabdrucks für alle Subschlüssel. Dies könnte auch durch die Verwendung von `--with-fingerprint` zweimal erreicht werden, aber durch die Verwendung dieser Option zusammen mit `keyid-format "none"` wird ein kompakter Fingerabdruck ausgegeben.
--with-v5-fingerprint
Gibt in einer Listenmodus-Ausgabe im Doppelpunktformat "fp2"-Zeilen für OpenPGP-Schlüssel der Version 4 aus, die einen Fingerabdruck im V5-Stil haben.
--with-icao-spelling
Gibt die ICAO-Schreibweise des Fingerabdrucks zusätzlich zu den hexadezimalen Ziffern aus.
--with-keygrip
Fügt den Keygrip in den Schlüssel-Listen hinzu. Im `--with-colons`-Modus ist dies implizit für geheime Schlüssel aktiviert.
--with-key-origin
Fügt die lokal gespeicherten Informationen über den Ursprung und die letzte Aktualisierung eines Schlüssels zu einer Schlüsselauflistung hinzu. Im Modus --with-colons wird dies immer ausgegeben. Diese Daten sind derzeit experimentell und sollten nicht als Teil der stabilen API betrachtet werden.
--with-wkd-hash
Gibt eine Web Key Directory-Kennung zusammen mit jeder Benutzer-ID in Schlüsselauflistungen aus. Dies ist ein experimentelles Feature, und die Semantik kann sich ändern.
--with-secret
Fügt Informationen über das Vorhandensein eines geheimen Schlüssels in öffentlichen Schlüsselauflistungen hinzu, die mit --with-colons erstellt wurden.
OpenPGP-protokollspezifische Optionen
--force-ocb
--force-aead
Erzwingt die Verwendung von AEAD-Verschlüsselung anstelle von MDC-Verschlüsselung. AEAD ist eine moderne und schnellere Methode für die authentifizierte Verschlüsselung als die alte MDC-Methode. --force-aead ist ein Alias und veraltet. Siehe auch die Option --chunk-size.
--force-mdc
--disable-mdc
Diese Optionen sind veraltet und haben seit GnuPG 2.2.8 keine Wirkung. MDC wird immer verwendet, es sei denn, die Schlüssel geben an, dass ein AEAD-Algorithmus verwendet werden kann, in diesem Fall wird AEAD verwendet. Beachten Sie jedoch: Wenn die Erstellung einer Legacy-Nachricht ohne MDC ausnahmsweise erforderlich ist, ermöglicht die Option --rfc2440 dies.
--disable-signer-uid
Standardmäßig wird die Benutzer-ID des signierenden Schlüssels in die Datensignatur eingebettet. Ab jetzt wird dies nur dann durchgeführt, wenn der signierende Schlüssel mit einem lokalen Benutzer unter Verwendung einer E-Mail-Adresse oder mit einem Absender angegeben wurde. Diese Information kann dem Verifizierer helfen, den Schlüssel zu finden; siehe Option --auto-key-retrieve.
--include-key-block
--no-include-key-block
Diese Option wird verwendet, um den eigentlichen signierenden Schlüssel in eine Datensignatur einzubetten. Der eingebettete Schlüssel wird auf eine einzelne Benutzer-ID reduziert und enthält nur den zum Erstellen der Signatur verwendeten signierenden Subschlüssel sowie gültige Verschlüsselungssubschlüssel. Alle anderen Informationen werden aus dem Schlüssel entfernt, um ihn und somit die Signatur klein zu halten. Diese Option ist das OpenPGP-Gegenstück zur gpgsm-Option --include-certs und ermöglicht es dem Empfänger einer signierten Nachricht, dem Absender ohne die Verwendung von Online-Verzeichnissen zur Schlüsselsuche zu antworten. Die Standardeinstellung ist --no-include-key-block. Siehe auch die Option --auto-key-import.
--personal-cipher-preferences string
Setzt die Liste der persönlichen Verschlüsselungspräferenzen auf den Wert von String. Verwenden Sie gpg --version, um eine Liste der verfügbaren Algorithmen abzurufen, und verwenden Sie „none“, um keine Präferenz festzulegen. Dies ermöglicht es dem Benutzer, die vom Empfängerschlüssel festgelegte Algorithmusauswahl sicher zu überschreiben, da GPG nur einen Algorithmus auswählt, der von allen Empfängern verwendet werden kann. Die am höchsten bewertete Verschlüsselung in dieser Liste wird auch für den Befehl --symmetric verwendet.
--personal-digest-preferences string
Setzt die Liste der persönlichen Hash-Präferenzen auf den Wert von String. Verwenden Sie gpg --version, um eine Liste der verfügbaren Algorithmen abzurufen, und verwenden Sie „none“, um keine Präferenz festzulegen. Dies ermöglicht es dem Benutzer, die vom Empfängerschlüssel festgelegte Algorithmusauswahl sicher zu überschreiben, da GPG nur einen Algorithmus auswählt, der von allen Empfängern verwendet werden kann. Der am höchsten bewertete Hash-Algorithmus in dieser Liste wird auch beim Signieren ohne Verschlüsselung verwendet (z. B. --clear-sign oder --sign).
--personal-compress-preferences string
Setzt die Liste der persönlichen Kompressionspräferenzen auf den Wert string. Verwenden Sie `gpg --version`, um eine Liste der verfügbaren Algorithmen zu erhalten, und verwenden Sie `none`, um keine Präferenz festzulegen. Dadurch kann der Benutzer die vom Empfänger-Schlüssel festgelegten Algorithmus sicher überschreiben, da GPG nur einen Algorithmus auswählt, der für alle Empfänger verwendbar ist. Der am höchsten eingestufte Kompressionsalgorithmus in dieser Liste wird auch dann verwendet, wenn keine Empfängerschlüssel berücksichtigt werden müssen (z. B. bei `--symmetric`).
--s2k-cipher-algo name
Verwenden Sie `name` als den Chiffre-Algorithmus für die symmetrische Verschlüsselung mit einem Passwort, wenn `--personal-cipher-preferences` und `--cipher-algo` nicht angegeben sind. Der Standardwert ist AES-128.
--s2k-digest-algo name
Verwenden Sie `name` als den Hash-Algorithmus, der zum Verarbeiten der Passwörter für die symmetrische Verschlüsselung verwendet wird. Der Standardwert ist SHA-1.
--s2k-mode n
Wählt aus, wie Passwörter für die symmetrische Verschlüsselung verarbeitet werden. Wenn `n` 0 ist, wird ein einfaches Passwort (was im Allgemeinen nicht empfohlen wird) verwendet. Bei 1 wird dem Passwort ein Salt hinzugefügt (was nicht verwendet werden sollte). Bei 3 (Standard) wird der gesamte Prozess eine bestimmte Anzahl von Malen wiederholt (siehe `--s2k-count`).
--s2k-count n
Gibt an, wie oft die Passwortverarbeitung für die symmetrische Verschlüsselung wiederholt wird. Dieser Wert kann zwischen 1024 und 65011712 liegen. Der Standardwert wird von `gpg-agent` abgefragt. Beachten Sie, dass nicht alle Werte im Bereich von 1024-65011712 zulässig sind, und wenn ein ungültiger Wert ausgewählt wird, rundet GnuPG auf den nächsthöheren zulässigen Wert auf. Diese Option ist nur dann sinnvoll, wenn `--s2k-mode` auf den Standardwert 3 gesetzt ist.
Kompatibilitätsoptionen
Diese Optionen steuern, womit GnuPG kompatibel ist. Es kann jeweils nur eine dieser Optionen aktiv sein. Wenn mehrere Optionen angegeben werden, überschreibt die letzte alle anderen. Beachten Sie, dass die Standardeinstellung fast immer die richtige ist. Sehen Sie sich den Abschnitt „INTEROPERABILITÄT MIT ANDEREN OPENPGP-PROGRAMMEN“ an, bevor Sie eine dieser Optionen verwenden.
--gnupg
Verwendet das Standardverhalten von GnuPG. Dies ist jetzt das Verhalten von LibrePGP, einem anderen Protokollentwurf, der in einigen Fällen mit OpenPGP übereinstimmt.
--openpgp
Setzt alle Paket-, Chiffre- und Hash-Optionen auf ein mit OpenPGP (RFC-9580) kompatibles Verhalten. Beachten Sie, dass nicht der gesamte RFC-9580 von GnuPG implementiert wird. Dies ist die Standardoption, daher ist sie im Allgemeinen nicht erforderlich, kann aber nützlich sein, um eine andere Kompatibilitätsoption in der Datei `gpg.conf` zu überschreiben.
--rfc4880
Setzt alle Paket-, Chiffre- und Hash-Optionen auf ein striktes RFC-4880-Verhalten. RFC-4880 ist die ältere Version des OpenPGP-Standards. Diese Option impliziert `--allow-old-cipher-algos`.
--rfc4880bis
Diese Option ist veraltet; sie wird als Alias für `--gnupg` behandelt.
--rfc2440
Setzt alle Paket-, Chiffre- und Hash-Optionen auf ein striktes RFC-2440-Verhalten. RFC-2440 ist eine sehr alte Version von OpenPGP. Beachten Sie, dass Verschlüsselungspakete mit dieser Option im Legacy-Modus ohne MDC-Schutz erstellt werden. Dies ist gefährlich und sollte daher nur für Experimente verwendet werden. Diese Option impliziert `--allow-old-cipher-algos`. Siehe auch die Option `--ignore-mdc-error`.
--pgp6 Diese Option ist veraltet; sie wird als Alias für --pgp7 behandelt.
--pgp7 Konfiguriert alle Optionen so, dass sie so weit wie möglich mit PGP 7 kompatibel sind. Dies erlaubt die Chiffren IDEA,
3ES, CAST5, AES128, AES192, AES256 und TWOFISH, die Hash-Funktionen MD5, SHA1 und RIPEMD160 sowie
die Kompressionsalgorithmen none und ZIP. Diese Option impliziert --escape-from-lines und deaktiviert --throw-keyids.
--pgp8 Konfiguriert alle Optionen so, dass sie so weit wie möglich mit PGP 8 kompatibel sind. PGP 8 ist dem
OpenPGP-Standard deutlich näher als frühere Versionen von PGP, daher deaktiviert dies lediglich --throw-keyids und setzt --escape-from-lines. Alle Algorithmen sind erlaubt, mit Ausnahme der Hash-Funktionen SHA224, SHA384 und SHA512.
--compliance string
Diese Option kann anstelle einer der oben genannten Optionen verwendet werden. Gültige Werte für string sind die oben genannten Optionsnamen (ohne die doppelten Bindestriche) und möglicherweise andere, wie in der Hilfe für string angezeigt.
--min-rsa-length n
Diese Option passt den Compliance-Modus "de-vs" an, um strengere Anforderungen an die Schlüssellänge zu erzwingen. Beispielsweise wandelt ein Wert von 3000 RSA2048- und DSA2048-Schlüssel in nicht-VS-NfD-konforme Schlüssel um.
--require-compliance
Um zu überprüfen, ob Daten gemäß den Regeln des aktuellen Compliance-Modus verschlüsselt wurden, muss ein gpg-Benutzer die Statuszeilen auswerten. Dies ermöglicht es Frontends, Compliance-Prüfungen flexibler zu handhaben. Für die Verwendung in Skripten ist jedoch die erforderliche Auswertung der Statuszeile mit erheblichem Aufwand verbunden; diese Option kann stattdessen verwendet werden, um sicherzustellen, dass der gpg-Prozess mit einem Fehler beendet wird, wenn die Compliance-Regeln nicht erfüllt sind. Beachten Sie, dass diese Option derzeit nur im Modus "de-vs" wirksam ist.
Dinge tun, die man normalerweise nicht tun möchte
-n
--dry-run
Keine Änderungen vornehmen (dies ist nicht vollständig implementiert).
--list-only
Ändert das Verhalten einiger Befehle. Dies ist ähnlich wie --dry-run, unterscheidet sich jedoch in einigen Fällen. Die Semantik dieser Option kann in Zukunft erweitert werden. Derzeit überspringt sie nur den eigentlichen Dekryptierungsschritt und ermöglicht so eine schnelle Auflistung der Verschlüsselungsschlüssel.
-i
--interactive
Vor dem Überschreiben von Dateien zur Eingabe auffordern.
--compatibility-flags flags
Setzt Kompatibilitätsflags, um Probleme aufgrund von nicht konformen Schlüsseln oder Daten zu beheben. Die Flags werden als durch Komma getrennte Liste von Flag-Namen angegeben und werden bitweise OR-verknüpft. Das spezielle Flag "none" löscht die Liste und ermöglicht es, mit einer leeren Liste neu zu beginnen. Um eine Liste der verfügbaren Flags zu erhalten, kann das einzelne Wort "help" verwendet werden.
--debug-level level
Wählt die Debug-Ebene für die Untersuchung von Problemen aus. level kann ein numerischer Wert oder ein Schlüsselwort sein:
none Keine Debug-Ausgabe. Ein Wert von weniger als 1 kann stattdessen verwendet werden.
basic Einige grundlegende Debug-Meldungen. Ein Wert zwischen 1 und 2 kann anstelle des Schlüsselworts verwendet werden.
advanced
Ausführlichere Debug-Meldungen. Ein Wert zwischen 3 und 5 kann anstelle des Schlüsselworts verwendet werden.
expert Noch detailliertere Meldungen. Ein Wert zwischen 6 und 8 kann anstelle des Schlüsselworts verwendet werden.
guru Alle verfügbaren Debug-Meldungen. Ein Wert größer als 8 kann anstelle des Schlüsselworts verwendet werden. Die Erstellung von Hash-Tracing-Dateien wird nur aktiviert, wenn das Schlüsselwort verwendet wird.
Wie diese Meldungen den tatsächlichen Debugging-Flags zugeordnet werden, ist nicht festgelegt und kann sich in neueren Versionen dieses Programms ändern. Sie werden jedoch sorgfältig ausgewählt, um beim Debugging bestmöglich zu helfen.
--debug flags
Debug-Flags setzen. Alle Flags werden per bitweiser OR-Verknüpfung kombiniert, und Flags können in C-Syntax angegeben werden (z. B. 0x0042) oder als durch Kommas getrennte Liste von Flag-Namen. Um eine Liste aller unterstützten Flags zu erhalten, kann das einzelne Wort "help" verwendet werden. Diese Option ist nur für Debugging-Zwecke nützlich, und das Verhalten kann sich jederzeit ohne Vorankündigung ändern.
--debug-all
Alle nützlichen Debugging-Flags setzen.
--debug-iolbf
Die Standardausgabe in den zeilenweisen Pufferungsmodus versetzen. Diese Option wird nur berücksichtigt, wenn sie über die Befehlszeile angegeben wird.
--debug-set-iobuf-size n
Die Puffergröße der IOBUFs auf n Kilobyte ändern. Durch die Verwendung von 0 wird die aktuelle Größe ausgegeben. Hinweis: Dies ist eine Option nur für Wartungspersonal und kann daher jederzeit ohne Vorankündigung geändert oder entfernt werden.
--debug-allow-large-chunks
Um Softwaretests und -experimente zu erleichtern, ermöglicht diese Option das Festlegen einer Grenze von bis zu 4 EiB (--chunk-size 62).
--debug-ignore-expiration
Diese Option versucht, bestimmte Ablaufdaten für Schlüssel zu überschreiben. Sie ist nur für bestimmte Regressionstests nützlich.
--faked-system-time epoch
Diese Option ist nur für Testzwecke nützlich; sie setzt die Systemzeit auf den Zeitpunkt vor oder nach der angegebenen Epoche zurück, wobei die Epoche die Anzahl der Sekunden ist, die seit dem Jahr 1970 vergangen sind. Alternativ kann die Epoche auch als vollständige ISO-Zeitzeichenfolge angegeben werden (z. B. "20070924T154812").
Wenn Sie die Epoche mit einem Ausrufezeichen (!) versehen, scheint die Systemzeit auf den angegebenen Zeitpunkt eingefroren zu sein.
--full-timestrings
Das Format der ausgegebenen Erstellungs- und Ablaufzeiten von nur dem Datum auf Datum und Uhrzeit ändern. Dies ist im Allgemeinen nicht nützlich, und die gleichen Informationen sind ohnehin im Modus --with-colons verfügbar. Diese längeren Zeichenketten sind auch nicht gut an andere ausgegebene Daten ausgerichtet.
--enable-progress-filter
Bestimmte PROGRESS-Statusausgaben aktivieren. Diese Option ermöglicht es Frontends, eine Fortschrittsanzeige anzuzeigen, während gpg größere Dateien verarbeitet. Die Verwendung hat eine geringfügige Leistungseinbuße zur Folge.
--status-fd n
Spezielle Statuszeichenketten in den Dateideskriptor n schreiben. Siehe die Datei DETAILS in der Dokumentation für eine Liste dieser Zeichenketten.
--status-file file
Wie --status-fd, außer dass die Statusdaten in die Datei file geschrieben werden.
--logger-fd n
Die Protokollausgabe in den Dateideskriptor n und nicht in STDERR schreiben.
--log-file file
--logger-file file
Wie --logger-fd, außer dass die Protokolldaten in die Datei file geschrieben werden. Verwenden Sie „socket://“, um in einen Socket zu protokollieren.
--log-time
Füge allen Protokollausgaben ein Zeitstempelpräfix hinzu, auch wenn keine Protokolldatei verwendet wird.
--attribute-fd n
Schreibe Attribut-Subpakete in den Dateideskriptor n. Dies ist am nützlichsten in Verbindung mit --status-fd, da die Statusmeldungen benötigt werden, um die verschiedenen Subpakete aus dem an den Dateideskriptor gelieferten Datenstrom zu trennen.
--attribute-file file
Wie --attribute-fd, außer dass die Attributdaten in die Datei file geschrieben werden.
--comment string
--no-comments
Verwende string als Kommentarzeichenfolge in Klartextsignaturen und ASCII-gepanzerten Nachrichten oder Schlüsseln (siehe --armor). Das Standardverhalten besteht darin, keine Kommentarzeichenfolge zu verwenden. --comment kann mehrmals wiederholt werden, um mehrere Kommentarzeichenfolgen zu erhalten. --no-comments entfernt alle Kommentare. Es ist eine gute Idee, die Länge eines einzelnen Kommentars unter 60 Zeichen zu halten, um Probleme mit Mailprogrammen zu vermeiden, die solche Zeilen umbrechen. Beachte, dass Kommentarzeilen, wie alle anderen Header-Zeilen, nicht durch die Signatur geschützt sind.
--emit-version
--no-emit-version
Erzwinge die Einbeziehung der Versionszeichenfolge in die ASCII-gepanzerte Ausgabe. Wenn es einmal angegeben wird, wird nur der Name des Programms und die Hauptnummer ausgegeben. Bei zweimaliger Angabe wird auch die Nebenversion ausgegeben, bei dreimaliger Angabe wird die Mikroversion hinzugefügt und bei viermaliger Angabe wird auch eine Betriebssystemidentifikation hinzugefügt. --no-emit-version (Standard) deaktiviert die Versionszeile.
--sig-notation {name=value}
--cert-notation {name=value}
-N, --set-notation {name=value}
Füge das Namens-Wert-Paar als Notationsdaten in die Signatur ein. name muss nur aus druckbaren Zeichen oder Leerzeichen bestehen und muss ein '@'-Zeichen in der Form _ enthalten (wobei der entsprechende Schlüsselname und der Domänenname eingesetzt werden). Dies soll dazu beitragen, eine Verschmutzung des von der IETF reservierten Notationsnamensraums zu verhindern. Das --expert-Flag überschreibt die '@'-Prüfung. value kann eine beliebige druckbare Zeichenfolge sein; sie wird in UTF-8 codiert, daher solltest du sicherstellen, dass deine --display-charset korrekt eingestellt ist. Wenn du name mit einem Ausrufezeichen (!) präfixierst, werden die Notationsdaten als kritisch gekennzeichnet (rfc4880:5.2.3.16). --sig-notation setzt eine Notation für Datensignaturen. --cert-notation setzt eine Notation für Schlüsselsignaturen (Zertifizierungen). --set-notation setzt beides.
Es gibt spezielle Codes, die in Notationsnamen verwendet werden können. "%k" wird durch die Schlüssel-ID des Schlüssels, der signiert wird, ersetzt, "%K" durch die lange Schlüssel-ID des Schlüssels, der signiert wird, "%f" durch den Fingerabdruck des Schlüssels, der signiert wird, "%s" durch die Schlüssel-ID des Schlüssels, der die Signatur erstellt, "%S" durch die lange Schlüssel-ID des Schlüssels, der die Signatur erstellt, "%g" durch den Fingerabdruck des Schlüssels, der die Signatur erstellt (der ein Subschlüssel sein kann), "%p" durch den Fingerabdruck des Primärschlüssels des Schlüssels, der die Signatur erstellt, "%c" durch die Signaturanzahl vom OpenPGP-Smartcard und "%%" ergibt ein einzelnes "%". %k, %K und %f sind nur bei der Erstellung einer Schlüsselsignatur (Zertifizierung) sinnvoll, und %c ist nur bei der Verwendung der OpenPGP-Smartcard sinnvoll.
--known-notation name
Fügt den Namen einer bekannten kritischen Signaturnotation zu einer Liste hinzu. Die Auswirkung davon ist, dass gpg eine Signatur mit einer kritischen Signaturnotation dieses Namens nicht als ungültig kennzeichnet. Beachten Sie, dass gpg standardmäßig bereits einige kritische Signaturnotationsnamen kennt.
--sig-policy-url string
--cert-policy-url string
--set-policy-url string
Verwenden Sie string als Policy-URL für Signaturen (rfc4880:5.2.3.20). Wenn Sie es mit einem Ausrufezeichen (!) versehen, wird das Policy-URL-Paket als kritisch gekennzeichnet. --sig-policy-url legt eine Policy-URL für Datensignaturen fest. --cert-policy-url legt eine Policy-URL für Schlüsselsignaturen (Zertifizierungen) fest. --set-policy-url legt beides fest.
Die gleichen %-Expandos, die für Notationsdaten verwendet werden, stehen hier ebenfalls zur Verfügung.
--sig-keyserver-url string
Verwenden Sie string als bevorzugte Keyserver-URL für Datensignaturen. Wenn Sie es mit einem Ausrufezeichen (!) versehen, wird das Keyserver-URL-Paket als kritisch gekennzeichnet.
Die gleichen %-Expandos, die für Notationsdaten verwendet werden, stehen hier ebenfalls zur Verfügung.
--set-filename string
Verwenden Sie string als Dateinamen, der in den Nachrichten gespeichert wird. Dies überschreibt die Standardeinstellung, bei der der tatsächliche Dateiname der zu verschlüsselnden Datei verwendet wird. Wenn Sie eine leere Zeichenkette für string verwenden, wird der Dateiname effektiv aus der Ausgabe entfernt.
--for-your-eyes-only
--no-for-your-eyes-only
Setzt das Flag "nur für Ihre Augen" in der Nachricht. Dadurch wird verhindert, dass GnuPG die Datei speichert, es sei denn, die Option --output wird angegeben, und PGP verwendet ein "sicheres Anzeigeprogramm" mit einer angeblich Tempest-resistenen Schriftart, um die Nachricht anzuzeigen. Diese Option überschreibt --set-filename. --no-for-your-eyes-only deaktiviert diese Option.
--use-embedded-filename
--no-use-embedded-filename
Versucht, eine Datei mit einem in den Daten eingebetteten Namen zu erstellen. Dies kann eine gefährliche Option sein, da sie es dem Absender ermöglicht, zu steuern, wie Dateien gespeichert werden, und so Dateien überschreiben kann. Standardmäßig ist dies deaktiviert. Beachten Sie, dass die Option --output diese Option überschreibt.
Eine bessere Vorgehensweise als die Verwendung dieser Option ist das Entschlüsseln in eine temporäre Datei und das anschließende Umbenennen dieser Datei in den eingebetteten Dateinamen, nachdem sichergestellt wurde, dass der eingebettete Dateiname harmlos ist. Bei Verwendung der Option `--status-fd` gibt gpg den Dateinamen als Teil der PLAINTEXT-Statusmeldung aus. Wenn der Dateiname wichtig ist, ist die Verwendung von gpgtar eine weitere Option, da gpgtar niemals eine Datei überschreibt, sondern die Dateien in ein neues Verzeichnis entschlüsselt.
Beachten Sie außerdem, dass, es sei denn, eine moderne Version 5-Signatur verwendet wird, der eingebettete Dateiname nicht Teil der signierten Daten ist.
--cipher-algo name
Verwenden Sie name als Verschlüsselungsalgorithmus. Wenn Sie das Programm mit dem Befehl --version ausführen, erhalten Sie eine Liste der unterstützten Algorithmen. Wenn dies nicht verwendet wird, wird der Verschlüsselungsalgorithmus aus den in dem Schlüssel gespeicherten Einstellungen ausgewählt. Im Allgemeinen sollten Sie diese Option nicht verwenden, da sie es Ihnen ermöglicht, den OpenPGP-Standard zu verletzen. Die Option --personal-cipher-preferences ist der sichere Weg, um das gleiche Ziel zu erreichen.
--digest-algo name
Verwende name als Algorithmus für die Message-Digest-Funktion. Wenn das Programm mit dem Befehl --version ausgeführt wird, wird eine Liste der unterstützten Algorithmen angezeigt. Im Allgemeinen sollten Sie diese Option nicht verwenden, da sie es Ihnen ermöglicht, den OpenPGP-Standard zu verletzen. Die Option --personal-digest-preferences ist der sichere Weg, um das gleiche Ziel zu erreichen.
--compress-algo name
Verwende den Komprimierungsalgorithmus name. „zlib“ ist die RFC-1950-ZLIB-Komprimierung. „zip“ ist die RFC-1951-ZIP-Komprimierung, die von PGP verwendet wird. „bzip2“ ist ein moderneres Komprimierungsschema, das einige Dinge besser komprimieren kann als Zip oder Zlib, aber auf Kosten eines höheren Speicherverbrauchs während der Komprimierung und Dekomprimierung. „uncompressed“ oder „none“ deaktiviert die Komprimierung. Wenn diese Option nicht verwendet wird, ist das Standardverhalten, die Präferenzen des Empfängerschlüssels zu prüfen, um zu sehen, welche Algorithmen der Empfänger unterstützt. Wenn alles andere fehlschlägt, wird ZIP für maximale Kompatibilität verwendet.
ZLIB kann bessere Komprimierungsergebnisse als ZIP liefern, da die Komprimierungsfenstergröße nicht auf 8 KB begrenzt ist. BZIP2 kann noch bessere Komprimierungsergebnisse liefern, verbraucht aber deutlich mehr Speicher während der Komprimierung und Dekomprimierung. Dies kann in Situationen mit wenig Speicher von Bedeutung sein. Beachten Sie jedoch, dass PGP (alle Versionen) nur ZIP-Komprimierung unterstützt. Die Verwendung eines anderen Algorithmus als ZIP oder „none“ macht die Nachricht mit PGP unlesbar. Im Allgemeinen sollten Sie diese Option nicht verwenden, da sie es Ihnen ermöglicht, den OpenPGP-Standard zu verletzen. Die Option `--personal-compress-preferences` ist der sichere Weg, um das gleiche Ziel zu erreichen.
--cert-digest-algo name
Verwende name als Message-Digest-Algorithmus, der beim Signieren eines Schlüssels verwendet wird. Wenn das Programm mit dem Befehl --version ausgeführt wird, wird eine Liste der unterstützten Algorithmen angezeigt. Beachten Sie, dass, wenn Sie einen Algorithmus auswählen, den GnuPG unterstützt, andere OpenPGP-Implementierungen dies jedoch nicht tun, einige Benutzer die von Ihnen erstellten Schlüssel signaturen nicht verwenden können oder möglicherweise Ihr gesamter Schlüssel. Beachten Sie auch, dass ein öffentlicher Schlüsselalgorithmus mit dem angegebenen Digest-Algorithmus kompatibel sein muss; die Auswahl eines beliebigen Digest-Algorithmus kann daher zu Fehlermeldungen aus den unteren Krypto-Schichten führen oder zu Sicherheitslücken führen.
--disable-cipher-algo name
Verhindere die Verwendung von name als Verschlüsselungsalgorithmus. Der angegebene Name wird nicht überprüft, so dass ein später geladener Algorithmus trotzdem deaktiviert wird.
--disable-pubkey-algo name
Verhindere die Verwendung von name als Algorithmus für öffentliche Schlüssel. Der angegebene Name wird nicht überprüft, so dass ein später geladener Algorithmus trotzdem deaktiviert wird.
--throw-keyids
--no-throw-keyids
Füge die Empfängerschlüssel-IDs nicht in verschlüsselte Nachrichten ein. Dies hilft, die Empfänger der Nachricht zu verbergen und ist eine begrenzte Gegenmaßnahme gegen die Verkehrsanalyse. ([Durch die Anwendung von etwas sozialer Manipulation kann jeder, der die Nachricht entschlüsseln kann, überprüfen, ob einer der anderen Empfänger derjenige ist, den er verdächtigt.]) Auf der Empfängerseite kann dies den Entschlüsselungsprozess verlangsamen, da alle verfügbaren privaten Schlüssel ausprobiert werden müssen. --no-throw-keyids deaktiviert diese Option. Diese Option ist im Wesentlichen dasselbe wie die Verwendung von --hidden-recipient für alle Empfänger.
--not-dash-escaped
Diese Option ändert das Verhalten von Klartextsignaturen, sodass diese für Patch-Dateien verwendet werden können. Sie sollten eine solche gepanzerte Datei nicht per E-Mail versenden, da alle Leerzeichen und Zeilenenden ebenfalls gehasht werden. Sie können diese Option nicht für Daten verwenden, die mit 5 Bindestrichen am Anfang einer Zeile beginnen, da Patch-Dateien dies nicht haben. Eine spezielle Armor-Header-Zeile informiert GnuPG über diese Option für Klartextsignaturen.
--escape-from-lines
--no-escape-from-lines
Da einige Mailer Zeilen, die mit "From " beginnen, in ">From " ändern, ist es gut, solche Zeilen bei der Erstellung von Klartextsignaturen auf spezielle Weise zu behandeln, um zu verhindern, dass das Mail-System die Signatur beschädigt. Beachten Sie, dass alle anderen PGP-Versionen dies ebenfalls tun. Standardmäßig aktiviert. --no-escape-from-lines deaktiviert diese Option.
--passphrase-repeat n
Geben Sie an, wie oft gpg eine neue Passphrase wiederholen soll. Dies ist hilfreich, um sich eine Passphrase zu merken. Standardmäßig 1 Wiederholung; kann auf 0 gesetzt werden, um die Passphrasewiederholung vollständig zu deaktivieren. Beachten Sie, dass bei einem n größer als 1 das Pinentry-Fenster n+1 Mal angezeigt wird, auch wenn ein modernes Pinentry mit zwei Eingabefeldern verwendet wird.
--passphrase-fd n
Lesen Sie die Passphrase aus dem Dateideskriptor n. Nur die erste Zeile wird aus dem Dateideskriptor n gelesen. Wenn Sie 0 für n verwenden, wird die Passphrase von STDIN gelesen. Dies kann nur verwendet werden, wenn nur eine Passphrase angegeben wird.
Beachten Sie, dass diese Passphrase seit Version 2.0 nur verwendet wird, wenn die Option --batch ebenfalls angegeben wurde. Seit Version 2.1 muss die Option --pinentry-mode auch auf Loopback gesetzt werden.
--passphrase-file datei
Lesen Sie die Passphrase aus der Datei datei. Nur die erste Zeile wird aus der Datei datei gelesen. Dies kann nur verwendet werden, wenn nur eine Passphrase angegeben wird. Offensichtlich ist eine in einer Datei gespeicherte Passphrase von fragwürdiger Sicherheit, wenn andere Benutzer diese Datei lesen können. Verwenden Sie diese Option nicht, wenn Sie es vermeiden können.
Beachten Sie, dass diese Passphrase seit Version 2.0 nur verwendet wird, wenn die Option --batch ebenfalls angegeben wurde. Seit Version 2.1 muss die Option --pinentry-mode auch auf Loopback gesetzt werden.
--passphrase zeichenkette
Verwenden Sie zeichenkette als Passphrase. Dies kann nur verwendet werden, wenn nur eine Passphrase angegeben wird. Offensichtlich ist dies auf einem Multiuser-System von sehr fragwürdiger Sicherheit. Verwenden Sie diese Option nicht, wenn Sie es vermeiden können.
Beachten Sie, dass diese Passphrase seit Version 2.0 nur verwendet wird, wenn die Option --batch ebenfalls angegeben wurde. Seit Version 2.1 muss die Option --pinentry-mode auch auf Loopback gesetzt werden.
--pinentry-mode modus
Setzen Sie den Pinentry-Modus auf modus. Zulässige Werte für modus sind:
default
Verwenden Sie die Standardeinstellung des Agenten, nämlich ask.
ask Erzwingt die Verwendung von Pinentry.
cancel Emuliert die Funktion der Abbrechen-Taste von Pinentry.
error Gibt einen Pinentry-Fehler zurück (``Kein Pinentry'').
loopback
Leitet Pinentry-Anfragen an den Aufrufer weiter. Beachten Sie, dass im Gegensatz zu Pinentry der Benutzer nicht erneut aufgefordert wird, ein Passwort einzugeben, wenn er ein falsches Passwort eingibt.
--no-symkey-cache
Deaktiviert den für die symmetrische Ver- und Entschlüsselung verwendeten Passwort-Cache. Dieser Cache basiert auf dem für die Nachricht spezifischen Salt-Wert (siehe --s2k-mode).
--request-origin origin
Weist gpg an, davon auszugehen, dass die Operation letztendlich von origin stammt. Abhängig von der Quelle werden bestimmte Einschränkungen angewendet, und Pinentry kann eine zusätzliche Anmerkung zur Quelle enthalten. Unterstützte Werte für origin sind: local, was der Standardwert ist, remote, um eine Remote-Quelle anzugeben, oder browser für eine von einem Webbrowser angeforderte Operation.
--command-fd n
Dies ist ein Ersatz für den veralteten Shared-Memory-IPC-Modus. Wenn diese Option aktiviert ist, wird keine Benutzereingabe von der TTY erwartet, sondern von der angegebenen Dateideskriptor. Sie sollte zusammen mit --status-fd verwendet werden. Sehen Sie in der Datei doc/DETAILS in der Quellcode-Distribution nach, um weitere Informationen darüber zu erhalten, wie Sie dies verwenden können.
--command-file datei
Wie --command-fd, außer dass die Befehle aus der Datei datei gelesen werden.
--allow-non-selfsigned-uid
--no-allow-non-selfsigned-uid
Erlaubt das Importieren und Verwenden von Schlüsseln mit Benutzer-IDs, die nicht selbst signiert sind. Dies wird nicht empfohlen, da eine nicht selbst signierte Benutzer-ID leicht gefälscht werden kann. --no-allow-non-selfsigned-uid deaktiviert diese Funktion.
--allow-freeform-uid
Deaktiviert alle Überprüfungen des Formats der Benutzer-ID beim Generieren einer neuen. Diese Option sollte nur in sehr speziellen Umgebungen verwendet werden, da sie nicht das De-facto-Standardformat für Benutzer-IDs gewährleistet.
--ignore-time-conflict
GnuPG überprüft normalerweise, ob die mit Schlüsseln und Signaturen verbundenen Zeitstempel plausible Werte haben. Manchmal scheint eine Signatur aufgrund von Clock-Problemen älter als der Schlüssel zu sein. Diese Option macht diese Überprüfungen zu einer Warnung. Siehe auch --ignore-valid-from für Zeitstempelprobleme bei Subkeys.
--ignore-valid-from
GnuPG wählt und verwendet normalerweise keine Subkeys, die in der Zukunft erstellt wurden. Diese Option erlaubt die Verwendung solcher Schlüssel und zeigt somit das Verhalten vor Version 1.0.7. Sie sollten diese Option nicht verwenden, es sei denn, es gibt ein Clock-Problem. Siehe auch --ignore-time-conflict für Zeitstempelprobleme bei Signaturen.
--ignore-crc-error
Die von OpenPGP verwendete ASCII-Rüstung ist durch eine CRC-Prüfsumme gegen Übertragungsfehler geschützt. Gelegentlich wird die CRC auf dem Übertragungskanal beschädigt, aber der eigentliche Inhalt (der ohnehin durch das OpenPGP-Protokoll geschützt ist) ist immer noch intakt. Diese Option erlaubt GnuPG, CRC-Fehler zu ignorieren.
--ignore-mdc-error
Diese Option wandelt einen Fehler bei der MDC-Integritätsschutzprüfung in eine Warnung um. Sie ist erforderlich, um alte Nachrichten zu entschlüsseln, die keinen MDC verwendet haben. Sie kann auch nützlich sein, wenn eine Nachricht teilweise beschädigt ist, aber es notwendig ist, so viele Daten wie möglich aus dieser beschädigten Nachricht zu extrahieren. Beachten Sie, dass ein fehlender oder fehlgeschlagener MDC ein Hinweis auf einen Angriff sein kann. Verwenden Sie diese Option mit großer Vorsicht; siehe auch die Option --rfc2440.
--allow-old-cipher-algos
Alte Verschlüsselungsalgorithmen wie 3DES, IDEA oder CAST5 verschlüsseln Daten in Blöcken von 64 Bit; moderne Algorithmen verwenden stattdessen Blöcke von 128 Bit. Um bestimmte Angriffe auf diese alten Algorithmen zu vermeiden, wird empfohlen, nicht mehr als 150 MiByte mit demselben Schlüssel zu verschlüsseln. Aus diesem Grund erlaubt gpg nicht die Verwendung von 64-Bit-Blockgrößenalgorithmen für die Verschlüsselung, es sei denn, diese Option ist angegeben. Einige Compliance-Modi setzen oder löschen dieses Flag bereits und daher sollte dieses Flag nach der Einstellung eines Compliance-Modus verwendet werden.
--allow-weak-digest-algos
Signaturen, die mit bekannten schwachen Digest-Algorithmen erstellt wurden, werden normalerweise mit einer Meldung wie „ungültiger Digest-Algorithmus“ abgelehnt. Diese Option ermöglicht die Überprüfung von Signaturen, die mit solchen schwachen Algorithmen erstellt wurden. MD5 ist der einzige Digest-Algorithmus, der standardmäßig als schwach gilt. Siehe auch --weak-digest, um andere Digest-Algorithmen abzulehnen.
--weak-digest name
Der angegebene Digest-Algorithmus wird als schwach behandelt. Signaturen, die mit schwachen Digest-Algorithmen erstellt wurden, werden normalerweise abgelehnt. Diese Option kann mehrmals angegeben werden, wenn mehrere Algorithmen als schwach betrachtet werden sollen. Siehe auch --allow-weak-digest-algos, um die Ablehnung schwacher Digests zu deaktivieren. MD5 wird immer als schwach betrachtet und muss nicht explizit aufgelistet werden.
--allow-weak-key-signatures
Um ein geringes Risiko von Kollisionsangriffen auf Schlüssel-Signaturen von Drittanbietern zu vermeiden, die SHA-1 verwenden, werden diese Schlüssel-Signaturen als ungültig betrachtet. Diese Option ermöglicht es, diese Einschränkung außer Kraft zu setzen.
--override-compliance-check
Dies war eine temporäre Option und hat keine Wirkung mehr.
--no-default-keyring
Fügen Sie nicht das Standard-Schlüsselbund zur Liste der Schlüsselbünde hinzu. Beachten Sie, dass GnuPG für fast alle Operationen einen Schlüsselbund benötigt. Wenn Sie diese Option verwenden und keine alternativen Schlüsselbünde über --keyring angeben, verwendet GnuPG dennoch den Standardschlüsselbund.
Beachten Sie, dass, wenn die Option use-keyboxd in „common.conf“ aktiviert ist, keine Schlüsselbünde verwendet werden und alle Schlüssel von dem keyboxd-Prozess in seiner eigenen Datenbank verwaltet werden.
--no-keyring
Verwenden Sie überhaupt keinen Schlüsselbund. Dies überschreibt die Standardeinstellung und alle Optionen, die Schlüsselbünde angeben.
--skip-verify
Überspringen Sie den Schritt der Signaturüberprüfung. Dies kann verwendet werden, um die Entschlüsselung zu beschleunigen, wenn die Signaturüberprüfung nicht erforderlich ist.
--with-key-data
Geben Sie Schlüsselauflistungen aus, die durch Doppelpunkte getrennt sind (wie --with-colons), und geben Sie die öffentlichen Schlüsseldaten aus.
--list-signatures
--list-sigs
Wie --list-keys, aber auch die Signaturen werden aufgelistet. Dieser Befehl hat die gleiche Wirkung wie die Verwendung von --list-keys mit --with-sig-list. Beachten Sie, dass im Gegensatz zu --check-signatures die Schlüssel-Signaturen nicht überprüft werden. Dieser Befehl kann verwendet werden, um eine Liste der im lokalen Schlüsselbund fehlenden Signierschlüssel zu erstellen; zum Beispiel:
gpg --list-sigs --with-colons USERID | \
awk -F: '$1=="sig" && $2=="?" {if($13){print $13}else{print $5}}'
--fast-list-mode
Ändert die Ausgabe der Listbefehle, um schneller zu arbeiten; dies wird erreicht, indem einige
Teile leer gelassen werden. Einige Anwendungen benötigen die Benutzer-ID und die Vertrauensinformationen, die in
den Listen angezeigt werden, nicht. Durch die Verwendung dieser Option können sie eine schnellere Liste erhalten. Das genaue Verhalten dieser Option kann sich in zukünftigen Versionen ändern. Wenn Ihnen einige Informationen fehlen, verwenden Sie diese Option nicht.
--no-literal
Dies ist nicht für den normalen Gebrauch bestimmt. Verwenden Sie den Quellcode, um zu sehen, wofür dies nützlich sein könnte.
--set-filesize
Dies ist nicht für den normalen Gebrauch bestimmt. Verwenden Sie den Quellcode, um zu sehen, wofür dies nützlich sein könnte.
--show-session-key
Zeigt den für eine Nachricht verwendeten Sitzungsschlüssel an. Siehe --override-session-key für die Gegenstück-Option.
Wir sind der Meinung, dass Schlüsselhinterlegung eine schlechte Sache ist; der Benutzer sollte jedoch die Freiheit haben, zu entscheiden, ob er ins Gefängnis gehen oder den Inhalt einer bestimmten Nachricht offenlegen möchte, ohne alle jemals für einen geheimen Schlüssel verschlüsselten Nachrichten zu gefährden.
Sie können diese Option auch verwenden, wenn Sie eine verschlüsselte Nachricht erhalten, die missbräuchlich oder beleidigend ist, um den Administratoren des Nachrichtensystems zu beweisen, dass der übertragene verschlüsselte Text einem unangemessenen Klartext entspricht, damit sie gegen den verstörenden Benutzer vorgehen können.
--override-session-key string
--override-session-key-fd fd
Verwenden Sie nicht den öffentlichen Schlüssel, sondern den Sitzungsschlüssel string bzw. den Sitzungsschlüssel, der aus der ersten Zeile gelesen wird, die von der Dateideskriptor-Datei fd gelesen wird. Das Format dieser Zeichenkette ist dasselbe wie das, das mit --show-session-key ausgegeben wird. Diese Option wird normalerweise nicht verwendet, ist aber nützlich, falls jemand Sie dazu zwingt, den Inhalt einer verschlüsselten Nachricht preiszugeben; mit dieser Option können Sie dies tun, ohne den geheimen Schlüssel herauszugeben. Beachten Sie, dass die Verwendung von --override-session-key den Sitzungsschlüssel möglicherweise allen lokalen Benutzern über die globale Prozesstabelle offenbart. Oft ist es sinnvoll, diese Option mit --no-keyring zu kombinieren.
--ask-sig-expire
--no-ask-sig-expire
Wenn Sie eine Daten signieren, werden Sie aufgefordert, ein Ablaufdatum anzugeben. Wenn diese Option nicht angegeben ist, wird das über --default-sig-expire festgelegte Ablaufdatum verwendet. --no-ask-sig-expire deaktiviert diese Option.
--default-sig-expire
Das Standard-Ablaufdatum, das für das Ablaufdatum der Signatur verwendet werden soll. Gültige Werte sind "0" für kein Ablaufdatum, eine Zahl, gefolgt von dem Buchstaben d (für Tage), w (für Wochen), m (für Monate) oder y (für Jahre) (z. B. "2m" für zwei Monate oder "5y" für fünf Jahre) oder ein absolutes Datum im Format YYYY-MM-DD. Standardmäßig ist dies "0".
--ask-cert-expire
--no-ask-cert-expire
Wenn Sie eine Schlüssel signieren, werden Sie aufgefordert, ein Ablaufdatum anzugeben. Wenn diese Option nicht angegeben ist, wird das über --default-cert-expire festgelegte Ablaufdatum verwendet. --no-ask-cert-expire deaktiviert diese Option.
--default-cert-expire
Das Standard-Ablaufdatum, das für das Ablaufdatum der Schlüsselsignatur verwendet werden soll. Gültige Werte sind "0" für kein Ablaufdatum, eine Zahl, gefolgt von dem Buchstaben d (für Tage), w (für Wochen), m (für Monate) oder y (für Jahre) (z. B. "2m" für zwei Monate oder "5y" für fünf Jahre) oder ein absolutes Datum im Format YYYY-MM-DD. Standardmäßig ist dies "0".
--default-new-key-algo string
Diese Option kann verwendet werden, um die Standardalgorithmen für die Schlüsselgenerierung zu ändern. Die Zeichenkette ist ähnlich den Argumenten, die für den Befehl --quick-add-key benötigt werden, aber leicht unterschiedlich. Sie müssen den Quellcode konsultieren, um die Details zu erfahren. Beachten Sie, dass die erweiterten Schlüsselgenerierungsbefehle immer verwendet werden können, um einen Schlüsselalgorithmus direkt anzugeben. Das Setzen eines Compliance-Modus setzt oder löscht dieses Flag, daher sollte es nur nach der Einstellung eines Compliance-Modus verwendet werden.
--no-auto-trust-new-key
Beim Erstellen eines neuen Schlüssels wird die Ownertrust-Einstellung des neuen Schlüssels auf "ultimate" gesetzt. Diese Option deaktiviert dies, und der Benutzer muss manuell einen Ownertrust-Wert zuweisen.
--force-sign-key
Diese Option ändert das Verhalten der Befehle --quick-sign-key, --quick-lsign-key und der Unterbefehle "sign" von --edit-key, indem sie die Erstellung einer Schlüsselsignatur erzwingt, auch wenn bereits eine existiert.
--forbid-gen-key
Diese Option ist für die Verwendung in der globalen Konfigurationsdatei vorgesehen, um die Verwendung von Schlüsselgenerierungsbefehlen zu verhindern. Diese Befehle schlagen dann mit dem Fehlercode "Nicht aktiviert" fehl.
--allow-secret-key-import
Diese Option ist veraltet und wird nirgends verwendet.
--allow-multiple-messages
--no-allow-multiple-messages
Dies sind veraltete Optionen; sie haben seit GnuPG 2.2.8 keine Auswirkungen mehr.
--enable-special-filenames
Diese Option aktiviert einen Modus, in dem Dateinamen der Form '-&n', wobei n eine nicht-negative Dezimalzahl ist, sich auf den Dateideskriptor n und nicht auf eine Datei mit diesem Namen beziehen.
--no-expensive-trust-checks
Nur für den experimentellen Gebrauch.
--preserve-permissions
Ändern Sie nicht die Berechtigungen eines geheimen Schlüsselbunds zurück auf Benutzer-Lese-/Schreibberechtigung. Verwenden Sie diese Option nur, wenn Sie genau wissen, was Sie tun.
--default-preference-list string
Setzen Sie die Liste der Standardeinstellungen auf die Zeichenkette. Diese Präferenzliste wird für neue Schlüssel verwendet und wird zur Standardeinstellung für "setpref" im Menü --edit-key.
--default-keyserver-url name
Setzen Sie die Standard-Keyserver-URL auf name. Dieser Keyserver wird verwendet, wenn eine neue Selbstsignatur auf einem Schlüssel geschrieben wird, was die Schlüsselgenerierung und die Änderung der Präferenzen umfasst.
--list-config
Zeigt verschiedene interne Konfigurationsparameter von GnuPG an. Diese Option ist für externe Programme gedacht, die GnuPG aufrufen, um Aufgaben auszuführen, und ist daher im Allgemeinen nicht nützlich. Sehen Sie in der Datei 'doc/DETAILS' in der Quellverteilung nach, um zu erfahren, welche Konfigurationselemente aufgelistet werden können. --list-config kann nur mit --with-colons verwendet werden.
--list-gcrypt-config
Zeigt verschiedene interne Konfigurationsparameter von Libgcrypt an.
--gpgconf-list
Dieser Befehl ist ähnlich wie --list-config, wird aber im Allgemeinen nur intern vom Tool gpgconf verwendet.
--gpgconf-test
Dies ist mehr oder weniger eine Dummy-Aktion. Sie parst jedoch die Konfigurationsdatei und gibt sie mit einem Fehler zurück, wenn die Konfigurationsdatei den Start von gpg verhindern würde. Daher kann sie verwendet werden, um eine Syntaxprüfung der Konfigurationsdatei durchzuführen.
--chuid uid
Ändert den aktuellen Benutzer in uid, was entweder eine Zahl oder ein Name sein kann. Dies kann vom Root-Konto aus verwendet werden, um gpg für einen anderen Benutzer auszuführen. Wenn uid nicht die aktuelle UID ist, wird ein Standard-PATH gesetzt und die Umgebungsvariable GNUPGHOME wird gelöscht. Um letzteres zu überschreiben, kann die Option --homedir verwendet werden. Diese Option hat nur dann eine Wirkung, wenn sie auf der Befehlszeile verwendet wird. Diese Option hat derzeit keine Auswirkungen unter Windows.
Veraltete Optionen
-t, --textmode
--no-textmode
Behandelt Eingabedateien als Text und speichert sie im OpenPGP-kanonischen Textformat mit Standard-"CRLF"-Zeilenenden. Dies setzt auch die erforderlichen Flags, um den Empfänger darüber zu informieren, dass die verschlüsselten oder signierten Daten Text sind und möglicherweise ihre Zeilenenden zurück in das Format konvertiert werden müssen, das das lokale System verwendet. Diese Option war nützlich, wenn zwischen zwei Plattformen mit unterschiedlichen Zeilenendenkonventionen (UNIX-ähnlich zu Mac, Mac zu Windows usw.) kommuniziert wurde. --no-textmode deaktiviert diese Option und ist die Standardeinstellung. Beachten Sie, dass dies eine Legacy-Option ist, die von keiner modernen Software mehr verwendet werden sollte.
--force-v3-sigs
--no-force-v3-sigs
--force-v4-certs
--no-force-v4-certs
Diese Optionen sind veraltet und haben keine Wirkung seit GnuPG 2.1.
--show-photos
--no-show-photos
Verursacht, dass --list-keys, --list-signatures, --list-public-keys, --list-secret-keys und die Überprüfung einer Signatur auch die Foto-ID anzeigen, die dem Schlüssel zugeordnet ist, falls vorhanden. Siehe auch --photo-viewer. Diese Optionen sind veraltet. Verwenden Sie stattdessen --list-options [no-]show-photos und/oder --verify-options [no-]show-photos.
--show-keyring
Zeigt den Namen des Schlüsselbunds am Anfang der Schlüsselauflistungen an, um anzuzeigen, zu welchem Schlüsselbund ein bestimmter Schlüssel gehört. Diese Option ist veraltet: Verwenden Sie stattdessen --list-options [no-]show-keyring.
--show-notation
--no-show-notation
Zeigt Signaturnotationen in den --list-signatures- oder --check-signatures-Auflistungen sowie beim Überprüfen einer Signatur mit einer darin enthaltenen Notation an. Diese Optionen sind veraltet. Verwenden Sie stattdessen --list-options [no-]show-notation und/oder --verify-options [no-]show-notation.
--show-policy-url
--no-show-policy-url
Zeigt Richtlinien-URLs in den --list-signatures- oder --check-signatures-Auflistungen sowie beim Überprüfen einer Signatur mit einer darin enthaltenen Richtlinien-URL an. Diese Optionen sind veraltet. Verwenden Sie stattdessen --list-options [no-]show-policy-url und/oder --verify-options [no-]show-policy-url.
--personal-aead-preferences string
Diese Option ist veraltet und hat keine Wirkung mehr seit Version 2.3.9.
--aead-algo name
Diese Option ist veraltet und hat keine Wirkung mehr seit Version 2.3.9.
BEISPIELE
gpg -se -r Bob file
signiert und verschlüsselt für den Benutzer Bob
gpg --clear-sign datei
erstellt eine Klartextsignatur
gpg -sb datei
erstellt eine separate Signatur
gpg -u 0x12345678 -sb datei
erstellt eine separate Signatur mit dem Schlüssel 0x12345678
gpg --list-keys user_ID
zeigt Schlüssel an
gpg --fingerprint user_ID
zeigt Fingerabdruck an
gpg --verify pgpdatei
gpg --verify signdatei [datendatei]
Überprüft die Signatur der Datei, gibt aber die Daten nicht aus, es sei denn, dies wird angefordert. Die zweite Form wird für separate Signaturen verwendet, wobei signdatei die separate Signatur (ASCII- oder Binärformat) ist und datendatei die signierten Daten sind; wenn dies nicht angegeben ist, wird der Name der Datei, die die signierten Daten enthält, erstellt, indem die Erweiterung (".asc" oder ".sig") von signdatei abgeschnitten wird oder indem der Benutzer nach dem Dateinamen gefragt wird. Wenn die Option --output ebenfalls verwendet wird, werden die signierten Daten in die durch diese Option angegebene Datei geschrieben; verwenden Sie - , um die signierten Daten nach stdout zu schreiben.
SO SPEZIFIZIEREN SIE EINE BENUTZER-ID
Es gibt verschiedene Möglichkeiten, eine Benutzer-ID für GnuPG anzugeben. Einige davon sind nur für gpg gültig, andere nur für gpgsm. Hier ist die vollständige Liste der Möglichkeiten, einen Schlüssel anzugeben:
Durch die Schlüssel-ID. Dieses Format wird aus der Länge der Zeichenkette und ihrem Inhalt oder dem Präfix 0x abgeleitet. Die Schlüssel-ID eines X.509-Zertifikats sind die niedrigsten 64 Bit seines SHA-1-Fingerabdrucks. Die Verwendung von Schlüssel-IDs ist lediglich eine Abkürzung, für alle automatisierten Prozesse sollte der Fingerabdruck verwendet werden.
Bei der Verwendung von gpg kann ein Ausrufezeichen (!) angehängt werden, um die Verwendung des angegebenen primären oder sekundären Schlüssels zu erzwingen und nicht zu versuchen, zu berechnen, welcher primäre oder sekundäre Schlüssel verwendet werden soll.
In den letzten vier Zeilen des Beispiels wird die Schlüssel-ID in ihrer langen Form angegeben, wie sie intern vom OpenPGP-Protokoll verwendet wird. Sie können die lange Schlüssel-ID mit der Option --with-colons anzeigen.
2345674
034E556E
0134756A
0AB123456
234ABBCC34567C4
0323456784E56EAB
01B3FED1347A5612
0234AABBCC34567C4
Durch den Fingerabdruck. Dieses Format wird aus der Länge der Zeichenkette und ihrem Inhalt oder dem Präfix 0x abgeleitet. Beachten Sie, dass nur die 20-Byte-Version des Fingerabdrucks in gpgsm verfügbar ist (d. h. der SHA-1-Hash des Zertifikats).
Bei der Verwendung von gpg kann ein Ausrufezeichen (!) angehängt werden, um die Verwendung des angegebenen primären oder sekundären Schlüssels zu erzwingen und nicht zu versuchen, zu berechnen, welcher primäre oder sekundäre Schlüssel verwendet werden soll.
Der beste Weg, eine Schlüssel-ID anzugeben, ist die Verwendung des Fingerabdrucks. Dies vermeidet jegliche Mehrdeutigkeiten, falls es doppelte Schlüssel-IDs gibt.
1234343434343434434343434343434
1234343434343433434343434343734349A3434
012343434343434343434EAB3484343434343434
0E12343434343434343434EAB3484343434343434
gpgsm akzeptiert auch Doppelpunkte zwischen jedem Paar von hexadezimalen Ziffern, da dies der De-facto-Standard dafür ist, wie X.509-Fingerabdrücke dargestellt werden. Gpg erlaubt auch die Verwendung des durch die Schlüssel-Listbefehle ausgegebenen, durch Leerzeichen getrennten SHA-1-Fingerabdrucks.
Durch eine exakte Übereinstimmung der OpenPGP-Benutzer-ID. Dies wird durch ein führendes Gleichheitszeichen gekennzeichnet. Dies macht für X.509-Zertifikate keinen Sinn.
=Heinrich Heine <_>
Durch eine exakte Übereinstimmung einer E-Mail-Adresse. Dies wird durch die übliche Art der Einschließung der E-Mail-Adresse in spitze Klammern angezeigt.
<_>
Durch Teilübereinstimmung einer E-Mail-Adresse. Dies wird durch ein vorangestelltes @-Zeichen in der Suchzeichenfolge angezeigt. Es wird eine Substring-Suche verwendet, aber nur die E-Mail-Adresse wird berücksichtigt (d. h. innerhalb der spitzen Klammern).
@heinrichh
Durch exakte Übereinstimmung mit dem DN des Subjekts.
Dies wird durch ein führendes Schrägstrich-Zeichen angezeigt, gefolgt von der RFC-2253-kodierten DN des
Subjekts. Beachten Sie, dass Sie nicht die durch den Befehl gpgsm --list-keys ausgegebene Zeichenfolge verwenden können, da diese zur besseren Lesbarkeit neu geordnet und geändert wurde. Verwenden Sie stattdessen --with-colons, um die rohe (aber standardmäßig maskierte) RFC-2253-Zeichenfolge auszugeben.
/CN=Heinrich Heine,O=Poets,L=Paris,C=FR
Durch exakte Übereinstimmung mit dem DN des Ausstellers. Dies wird durch ein führendes Hash-Zeichen angezeigt, gefolgt von einem Schrägstrich und dann gefolgt von der RFC-2253-kodierten DN des Ausstellers. Dies sollte das Stammzertifikat des Ausstellers zurückgeben. Siehe die obige Anmerkung.
#/CN=Root Cert,O=Poets,L=Paris,C=FR
Durch exakte Übereinstimmung mit der Seriennummer und dem DN des Ausstellers. Dies wird durch ein Hash-Zeichen angezeigt, gefolgt von der hexadezimalen Darstellung der Seriennummer, dann gefolgt von einem Schrägstrich und der RFC-2253-kodierten DN des Ausstellers. Siehe die obige Anmerkung.
#4F03/CN=Root Cert,O=Poets,L=Paris,C=FR
Durch Keygrip.
Dies wird durch ein Kaufmanns-At-Zeichen (@) angezeigt, gefolgt von den 40 hexadezimalen Ziffern eines Keygrips. Gpgsm gibt den Keygrip aus, wenn der Befehl --dump-cert verwendet wird.
&D75F22C3F86E355877348498CDC92BD21010A480
Durch Substring-Übereinstimmung. Dies ist der Standardmodus, aber Anwendungen können dies explizit angeben, indem sie einen Stern (*) davor setzen. Die Übereinstimmung ist nicht case-sensitiv.
Heine *Heine
. und + Präfixe
Diese Präfixe sind für die Suche nach am Ende verankerten E-Mails bzw. für einen Wortsuchmodus reserviert. Sie sind noch nicht implementiert und ihre Verwendung ist undefiniert.
Bitte beachten Sie, dass wir das Hash-Zeichen als Kennung wiederverwendet haben, das in früheren Versionen von GnuPG verwendet wurde, um die sogenannte Local-ID anzugeben. Es wird nicht mehr verwendet und es sollte keine Konflikte geben, wenn es mit X.509-Daten verwendet wird.
Die Verwendung des RFC-2253-Formats von DNs hat den Nachteil, dass es nicht möglich ist, sie auf die ursprüngliche Kodierung zurückzumappen. Da unsere Schlüsseldatenbank diese Kodierung jedoch als Metadaten speichert, müssen wir dies nicht tun.
FILTERAUSDRÜCKE
Die Optionen --import-filter und --export-filter verwenden Ausdrücke mit dieser Syntax (eckige Klammern [] geben einen optionalen Teil an und geschweifte Klammern {} eine Wiederholung an, Leerzeichen zwischen den Elementen sind zulässig):
[lc] {[{flag}] PROPNAME op VALUE [lc]}
Der Name einer Eigenschaft (PROPNAME) darf nur aus Buchstaben, Ziffern und Unterstrichen bestehen. Die Beschreibung für den Filtertyp gibt an, welche Eigenschaften definiert sind. Wenn eine undefinierte Eigenschaft verwendet wird, wird ein leerer String zurückgegeben. Sofern nicht anders angegeben, muss der VALUE immer angegeben werden und darf nicht leer sein. Es ist keine Anführungszeichen-Syntax für den Wert definiert, daher darf der Wert nicht die Zeichenketten && oder || enthalten, die als logische Verbindungsoperatoren verwendet werden. Das Flag -- kann verwendet werden, um diese Einschränkung aufzuheben.
Numerische Werte werden als long int berechnet; die Standard-C-Notation gilt. lc ist der logische Verbindungsoperator: entweder && für eine Konjunktion oder || für eine Disjunktion. Eine Konjunktion wird am Anfang eines Ausdrucks angenommen. Konjunktionen haben eine höhere Präzedenz als Disjunktionen. Wenn VALUE mit einem der Zeichen beginnt, die in einem der Operatoren (op) verwendet werden, ist ein Leerzeichen nach dem Operator erforderlich.
Die unterstützten Operatoren (op) sind:
`=~` Die Teilzeichenfolge muss übereinstimmen.
`!~` Die Teilzeichenfolge darf nicht übereinstimmen.
`=` Die vollständige Zeichenfolge muss übereinstimmen.
`<>` Die vollständige Zeichenfolge darf nicht übereinstimmen.
`==` Der numerische Wert muss übereinstimmen.
`!=` Der numerische Wert darf nicht übereinstimmen.
`<=` Der numerische Wert des Feldes muss kleiner oder gleich dem Wert sein.
`<` Der numerische Wert des Feldes muss kleiner als der Wert sein.
`>` Der numerische Wert des Feldes muss größer als der Wert sein.
`>=` Der numerische Wert des Feldes muss größer oder gleich dem Wert sein.
`-le` Der Zeichenfolgenwert des Feldes muss kleiner oder gleich dem Wert sein.
`-lt` Der Zeichenfolgenwert des Feldes muss kleiner als der Wert sein.
`-gt` Der Zeichenfolgenwert des Feldes muss größer als der Wert sein.
`-ge` Der Zeichenfolgenwert des Feldes muss größer oder gleich dem Wert sein.
`-n` Wahr, wenn der Wert nicht leer ist (kein Wert erlaubt).
`-z` Wahr, wenn der Wert leer ist (kein Wert erlaubt).
`-t` Alias für `PROPNAME != 0` (kein Wert erlaubt).
`-f` Alias für `PROPNAME == 0` (kein Wert erlaubt).
Werte für flag müssen durch Leerzeichen getrennt sein. Die unterstützten Flags sind:
`--` `VALUE` erstreckt sich bis zum Ende des Ausdrucks.
`-c` Der Zeichenfolgenvergleich in diesem Teil wird unter Beachtung der Groß- und Kleinschreibung durchgeführt.
`-t` Führende und nachfolgende Leerzeichen werden nicht aus `VALUE` entfernt. Das optionale einzelne Leerzeichen nach dem Operator ist hier erforderlich.
Die Filteroptionen verketten mehrere Spezifikationen für einen Filter desselben Typs. Zum Beispiel die vier Optionen in diesem Beispiel:
`--import-filter keep-uid="uid =~ Alfa"`
`--import-filter keep-uid="&& uid !~ Test"`
`--import-filter keep-uid="|| uid =~ Alpha"`
`--import-filter keep-uid="uid !~ Test"`
was äquivalent ist zu:
`--import-filter \
keep-uid="uid =~ Alfa" && uid !~ Test" || uid =~ Alpha" && "uid !~ Test"`
importiert nur die Benutzer-IDs eines Schlüssels, der die Zeichenfolgen "Alfa" oder "Alpha", aber nicht die Zeichenfolge "Test" enthält.
VERTRAUENSWERTE
Vertrauenswerte werden verwendet, um die Eigentumsverantwortung und die Gültigkeit von Schlüsseln und Benutzer-IDs anzugeben. Sie werden mit Buchstaben oder Zeichenfolgen angezeigt:
`unknown`
Keine Eigentumsverantwortung zugewiesen / noch nicht berechnet.
`e`
abgelaufen
Die Vertrauensberechnung ist fehlgeschlagen; wahrscheinlich aufgrund eines abgelaufenen Schlüssels.
`q`
undefiniert, `undef`
Nicht genügend Informationen für die Berechnung.
`n`
niemals
Niemals diesem Schlüssel vertrauen.
`m`
marginal
Marginal vertrauenswürdig.
`f`
vollständig
Vollständig vertrauenswürdig.
`u`
ultimativ
Absolut vertrauenswürdig.
`r`
widerrufen
Nur für die Gültigkeit: Der Schlüssel oder die Benutzer-ID wurde widerrufen.
`?`
`err`
Das Programm ist auf einen unbekannten Vertrauenswert gestoßen.
DATEIEN
Es gibt einige Konfigurationsdateien, mit denen bestimmte Aspekte des Betriebs von gpg gesteuert werden. Sofern nicht anders angegeben, werden diese im aktuellen Home-Verzeichnis erwartet (siehe: [Option --homedir]).
gpg.conf
Dies ist die Standardkonfigurationsdatei, die von gpg beim Start gelesen wird. Sie kann jede gültige lange Option enthalten; die führenden zwei Bindestriche dürfen nicht eingegeben werden, und die Option darf nicht abgekürzt werden. Dieser Standardname kann über die Befehlszeile geändert werden (siehe: [gpg-option --options]). Sie sollten diese Datei sichern.
common.conf
Dies ist eine optionale Konfigurationsdatei, die von gpg beim Start gelesen wird. Sie kann Optionen enthalten, die für alle Komponenten von GnuPG gelten. Ihre aktuelle Hauptverwendung ist die Option "use-keyboxd". Wenn das Standard-Home-Verzeichnis '~/.gnupg' nicht vorhanden ist, erstellt GnuPG dieses Verzeichnis und eine Datei 'common.conf' mit "use-keyboxd".
Beachten Sie, dass es bei größeren Installationen nützlich ist, vordefinierte Dateien in das Verzeichnis '/etc/skel/.gnupg' zu legen, sodass neu erstellte Benutzer mit einer funktionierenden Konfiguration starten. Für bestehende Benutzer wird ein kleines Hilfsskript bereitgestellt, um diese Dateien zu erstellen (siehe: [addgnupghome]).
Für interne Zwecke erstellt und verwaltet gpg einige andere Dateien; diese befinden sich alle im aktuellen Home-Verzeichnis (siehe: [option --homedir]). Nur das gpg-Programm darf diese Dateien ändern.
~/.gnupg
Dies ist das Standard-Home-Verzeichnis, das verwendet wird, wenn weder die Umgebungsvariable GNUPGHOME noch die Option --homedir angegeben wird.
~/.gnupg/pubring.gpg
Der öffentliche Schlüsselring im Legacy-Format. Sie sollten diese Datei sichern.
Wenn diese Datei nicht verfügbar ist, verwendet gpg standardmäßig das neue Keybox-Format und erstellt eine Datei 'pubring.kbx', es sei denn, diese Datei existiert bereits, in diesem Fall wird diese Datei ebenfalls für OpenPGP-Schlüssel verwendet.
Beachten Sie, dass im Fall, dass sowohl die Dateien 'pubring.gpg' als auch 'pubring.kbx' vorhanden sind, die letztere aber keine OpenPGP-Schlüssel enthält, die Legacy-Datei 'pubring.gpg' verwendet wird. Seien Sie vorsichtig: GnuPG-Versionen vor 2.1 verwenden immer die Datei 'pubring.gpg', da sie das neue Keybox-Format nicht kennen. Wenn Sie GnuPG 1.4 verwenden müssen, um archivierte Daten zu entschlüsseln, sollten Sie diese Datei beibehalten.
~/.gnupg/pubring.gpg.lock
Die Sperrdatei für den öffentlichen Schlüsselring.
~/.gnupg/pubring.kbx
Der öffentliche Schlüsselring im neuen Keybox-Format. Diese Datei wird mit gpgsm gemeinsam genutzt. Sie sollten diese Datei sichern. Siehe oben für die Beziehung zwischen dieser Datei und ihrem Vorgänger.
Um eine vorhandene Datei 'pubring.gpg' in das Keybox-Format zu konvertieren, sichern Sie zuerst die Ownertrust-Werte, benennen Sie dann 'pubring.gpg' in 'publickeys.backup' um, damit sie von keiner GnuPG-Version erkannt wird, führen Sie import aus und stellen Sie dann die Ownertrust-Werte wieder her:
$ cd ~/.gnupg
$ gpg --export-ownertrust >otrust.lst
$ mv pubring.gpg publickeys.backup
$ gpg --import-options restore --import publickeys.backup
$ gpg --import-ownertrust otrust.lst
~/.gnupg/pubring.kbx.lock
Die Sperrdatei für 'pubring.kbx'.
~/.gnupg/secring.gpg
Der Legacy-geheime Schlüsselring, der von GnuPG-Versionen vor 2.1 verwendet wurde. Er wird nicht von GnuPG 1 und neuer verwendet. Möglicherweise möchten Sie ihn aufbewahren, falls Sie GnuPG 1.4 verwenden müssen, um archivierte Daten zu entschlüsseln.
~/.gnupg/secring.gpg.lock
Die Sperrdatei für den Legacy-Schlüsselring.
~/.gnupg/.gpg-v21-migrated
Datei, die angibt, dass eine Migration zu GnuPG 2.1 durchgeführt wurde.
~/.gnupg/trustdb.gpg
Die Vertrauensdatenbank. Es besteht keine Notwendigkeit, diese Datei zu sichern; es ist besser, die eigenen Vertrauenswerte zu sichern (siehe: [Option --export-ownertrust]).
~/.gnupg/trustdb.gpg.lock
Die Sperrdatei für die Vertrauensdatenbank.
~/.gnupg/random_seed
Eine Datei, die verwendet wird, um den Zustand des internen Zufallspools zu speichern.
~/.gnupg/openpgp-revocs.d/
Dies ist das Verzeichnis, in dem gpg vorab generierte Widerrufungszertifikate speichert. Der
Dateiname entspricht dem OpenPGP-Fingerabdruck des jeweiligen Schlüssels. Es wird empfohlen,
diese Zertifikate zu sichern und, falls der primäre private Schlüssel nicht auf der Festplatte gespeichert ist, sie auf ein externes Speichermedium zu verschieben. Jeder, der Zugriff auf diese Dateien hat, kann den entsprechenden Schlüssel widerrufen. Möglicherweise möchten Sie diese ausdrucken. Sie sollten alle Dateien in
diesem Verzeichnis sichern und darauf achten, diese Sicherung sicher aufzubewahren.
Die Operation wird durch einige Umgebungsvariablen weiter gesteuert:
HOME Wird verwendet, um das Standard-Home-Verzeichnis zu finden.
GNUPGHOME
Wenn gesetzt, wird stattdessen dieses Verzeichnis anstelle von "\~/.gnupg" verwendet.
GPG_AGENT_INFO
Diese Variable ist veraltet; sie wurde von GnuPG-Versionen vor 2.1 verwendet.
PINENTRY_USER_DATA
Dieser Wert wird über gpg-agent an pinentry übergeben. Er ist nützlich, um zusätzliche Informationen
an ein benutzerdefiniertes pinentry zu übermitteln.
COLUMNS
LINES Wird verwendet, um die Größe einiger Anzeigen an die volle Größe des Bildschirms anzupassen.
LANGUAGE
Abgesehen von seiner Verwendung durch GNU wird es in der W32-Version verwendet, um die über die Registrierung durchgeführte Sprachauswahl zu überschreiben. Wenn verwendet und auf einen gültigen und verfügbaren Sprachnamen
(langid) gesetzt, wird die Datei mit der Übersetzung aus gpgdir/gnupg.nls/langid.mo geladen. Hier
ist gpgdir das Verzeichnis, aus dem die gpg-Binärdatei geladen wurde. Wenn dies nicht geladen werden kann, wird die Registrierung und als letztes Mittel das native Windows-Locale-System versucht.
GNUPG_BUILD_ROOT
Diese Variable wird nur von der Regressionstest-Suite als Hilfsmittel unter Betriebssystemen ohne
ordnungsgemäße Unterstützung verwendet, um den Namen der Textdatei eines Prozesses zu ermitteln.
GNUPG_EXEC_DEBUG_FLAGS
Diese Variable ermöglicht die Aktivierung von Diagnosen für die Prozessverwaltung. Es wird ein numerischer Dezimalwert erwartet. Bit 0 aktiviert allgemeine Diagnosen, Bit 1 aktiviert bestimmte Warnungen unter
Windows.
Wenn die gpg-Agent-Komponente aufgerufen wird, sendet gpg eine Reihe von Umgebungsvariablen an gpg-agent. Die Namen dieser Variablen können mit dem folgenden Befehl aufgelistet werden:
gpg-connect-agent 'getinfo std_env_names' /bye | awk '$1=="D" {print $2}'
HINWEISE
gpg wird häufig als Backend-Engine von anderer Software verwendet. Um dies zu unterstützen, wurde eine
Maschinenschnittstelle definiert, um eine eindeutige Möglichkeit zu haben. Die Optionen --status-fd und --batch sind
fast immer erforderlich.
Programmatische Verwendung von GnuPG
Bitte erwägen Sie die Verwendung von GPGME anstelle des direkten Aufrufs von gpg. GPGME bietet eine stabile, backend-unabhängige Schnittstelle für viele kryptografische Operationen. Es unterstützt OpenPGP
und S/MIME und ermöglicht auch die Interaktion mit verschiedenen GnuPG-Komponenten.
GPGME bietet eine C-API und wird mit Bindings für C++, Qt und Python geliefert. Bindings für andere Sprachen sind verfügbar.
Ephemere Home-Verzeichnisse
Manchmal möchten Sie die Auswirkungen einer bestimmten Operation eingrenzen, z. B. möchten Sie einen Schlüssel importieren, um ihn zu inspizieren, aber Sie möchten nicht, dass dieser Schlüssel zu Ihrem Schlüsselring hinzugefügt wird. In früheren Versionen von GnuPG war es möglich, alternative Schlüsselringdateien für öffentliche und geheime Schlüssel anzugeben. In modernen GnuPG-Versionen haben wir jedoch die Art und Weise geändert, wie geheime Schlüssel gespeichert werden, um das Material der geheimen Schlüssel besser zu schützen, und es war nicht möglich, diese Schnittstelle beizubehalten.
Der bevorzugte Weg, dies zu tun, ist die Verwendung von ephemeren Home-Verzeichnissen. Diese Technik funktioniert in allen Versionen von GnuPG.
Erstellen Sie ein temporäres Verzeichnis, erstellen (oder kopieren) Sie eine Konfiguration, die Ihren Anforderungen entspricht, und lassen Sie gpg dieses Verzeichnis entweder über die Umgebungsvariable
^ NUPGHOME oder die Option --homedir verwenden. GPGME unterstützt dies auch auf Kontextebene, indem die Engine-Informationen von Kontexten geändert werden. Führen Sie nun die gewünschte Operation aus,
importieren und exportieren Sie bei Bedarf Schlüsselmaterial. Nach Abschluss können Sie das Verzeichnis löschen. Alle GnuPG-Backend-Dienste, die gestartet wurden, erkennen dies und werden heruntergefahren.
Die schnelle Schnittstelle zur Schlüsselmanipulation
Neuere Versionen von GnuPG verfügen über eine Schnittstelle zur Manipulation von Schlüsseln, ohne den interaktiven Befehl --edit-key zu verwenden. Diese Schnittstelle wurde hauptsächlich zum Nutzen von
GPGME hinzugefügt (bitte erwägen Sie die Verwendung von GPGME, siehe den Abschnitt "Programmatische Verwendung von GnuPG" im Handbuch). Diese Schnittstelle wird im Abschnitt "So verwalten Sie Ihre
Schlüssel" beschrieben.
Unbeaufsichtigte Schlüsselgenerierung
Der Befehl --generate-key kann zusammen mit der Option --batch für die unbeaufsichtigte Schlüsselgenerierung verwendet werden. Dies ist der flexibelste Weg, um Schlüssel zu generieren, aber auch der
komplexeste. Erwägen Sie die Verwendung der schnellen Schnittstelle zur Schlüsselmanipulation, die im vorherigen Abschnitt "Die schnelle Schnittstelle zur Schlüsselmanipulation" beschrieben wird.
Die Parameter für den Schlüssel werden entweder von stdin gelesen oder als Datei auf der Befehlszeile angegeben. Das Format der Parameterdatei ist wie folgt: Nur Text, die Zeilenlänge ist auf etwa 1000
Zeichen begrenzt. Zur Angabe von Nicht-ASCII-Zeichen muss die UTF-8-Codierung verwendet werden. Leere Zeilen werden ignoriert. Führende und nachfolgende Leerzeichen werden ignoriert. Ein Hash-Zeichen als
erstes nicht-leeres Zeichen gibt eine Kommentarzeile an. Kontrollanweisungen werden durch ein führendes Prozentzeichen gekennzeichnet, deren Argumente durch Leerzeichen vom Schlüsselwort getrennt sind.
Parameter werden durch ein Schlüsselwort, gefolgt von einem Doppelpunkt, angegeben; Argumente werden durch Leerzeichen getrennt. Der erste Parameter muss Key-Type sein, aber Kontrollanweisungen können
überall platziert werden. Die Reihenfolge der Parameter spielt keine Rolle, außer für Key-Type. Die Parameter werden nur für den generierten Schlüsselblock (primärer und sekundärer Schlüssel) verwendet;
Parameter aus vorherigen Sätzen werden nicht verwendet. Einige Syntaxprüfungen können durchgeführt werden. Die Schlüsselgenerierung endet, wenn entweder das Ende der Parameterdatei erreicht ist, der nächste
^ ey-Type-Parameter gefunden wird oder die Kontrollanweisung %commit gefunden wird.
Kontrollanweisungen:
%echo text
Gibt den Text als Diagnose aus.
%dry-run
Unterdrückt die tatsächliche Schlüsselgenerierung (nützlich zur Syntaxprüfung).
%commit
Führt die Schlüsselgenerierung durch. Beachten Sie, dass implizit bei dem nächsten Parameter ein Commit durchgeführt wird.
%pubring filename
Schreibt den Schlüssel nicht in den Standard- oder über die Befehlszeile angegebenen Schlüsselbund, sondern in die Datei filename.
Dies muss vor dem ersten Commit angegeben werden, die wiederholte Angabe derselben Datei wird ignoriert, die letzte Datei vor einem Commit wird verwendet. Die Datei wird verwendet, bis eine neue Datei angegeben wird (an den Commit-Punkten), und alle Schlüssel werden in diese Datei geschrieben. Wenn eine
neue Datei angegeben wird, wird diese Datei erstellt (und eine vorhandene Datei überschreibt).
Siehe den vorherigen Abschnitt „Ephemeral Home Directories“ für eine robustere Möglichkeit, Nebenwirkungen zu begrenzen.
%secring filename
Diese Option ist in GnuPG 2.1 und höher wirkungslos.
Siehe den vorherigen Abschnitt „Ephemeral Home Directories“.
%ask-passphrase
%no-ask-passphrase
Diese Option ist seit GnuPG Version 2.1 wirkungslos.
%no-protection
Mit dieser Option können Schlüssel ohne Passphrasenschutz erstellt werden. Diese Option ist hauptsächlich für Regressionstests vorgesehen.
%transient-key
Wenn angegeben, werden die Schlüssel mit einem schnelleren und etwas weniger sicheren Zufallszahlengenerator erstellt. Diese Option kann für Schlüssel verwendet werden, die nur für kurze Zeit verwendet werden und keine
volle kryptografische Stärke erfordern. Sie wird nur in Kombination mit der Kontrollanweisung %no-protection wirksam.
Allgemeine Parameter:
Key-Type: algo
Beginnt einen neuen Parameterblock, indem der Typ des primären Schlüssels angegeben wird. Der Algorithmus muss
in der Lage sein, zu signieren. Dies ist ein erforderlicher Parameter. algo kann entweder eine OpenPGP-Algorithmusnummer oder eine Zeichenkette mit dem Algorithmusnamen sein. Der spezielle Wert default kann für algo verwendet werden, um den Standardschlüsseltyp zu erstellen; in diesem Fall darf kein Key-Usage angegeben werden und
default muss auch für Subkey-Type verwendet werden.
Key-Length: nbits
Die angeforderte Länge des generierten Schlüssels in Bit. Der Standardwert wird durch Ausführen des
Befehls gpg --gpgconf-list zurückgegeben. Für ECC-Schlüssel wird dieser Parameter ignoriert.
Key-Curve: curve
Die angeforderte elliptische Kurve des generierten Schlüssels. Dies ist ein erforderlicher Parameter für ECC-Schlüssel. Er wird für Nicht-ECC-Schlüssel ignoriert.
Key-Grip: hexstring
Dies ist optional und wird verwendet, um eine CSR oder ein Zertifikat für einen bereits vorhandenen Schlüssel zu generieren. Key-Length wird ignoriert, wenn dies angegeben wird.
Key-Usage: usage-list
Leerzeichen- oder Komma-getrennte Liste der Schlüsselverwendungen. Zulässige Werte sind encrypt, sign und
auth. Dies wird verwendet, um die Schlüssel-Flags zu generieren. Stellen Sie sicher, dass der Algorithmus diese Verwendung unterstützt. Beachten Sie, dass OpenPGP vorschreibt, dass alle primären Schlüssel die Möglichkeit zur Zertifizierung haben müssen, so dass unabhängig davon, welche Verwendung hier angegeben wird, das Flag cert aktiviert wird. Wenn kein
Key-Usage angegeben wird und Key-Type nicht default ist, werden alle zulässigen Verwendungen für diesen
Algorithmus verwendet; wenn dies nicht angegeben wird, aber default verwendet wird, ist die Verwendung sign.
Subkey-Type: algo
Generiert einen sekundären Schlüssel (Subkey). Derzeit kann nur ein Subkey verarbeitet werden. Siehe auch „Key-Type“ oben.
Subkey-Length: nbits
Länge des sekundären Schlüssels (Subkey) in Bit. Der Standardwert wird durch Ausführen des Befehls „gpg --gpgconf-list“ zurückgegeben.
Subkey-Curve: curve
Schlüsselkurve für einen Subkey; ähnlich wie „Key-Curve“.
Subkey-Usage: usage-list
Schlüsselverwendungslisten für einen Subkey; ähnlich wie „Key-Usage“.
Passphrase: string
Wenn Sie eine Passphrase für den geheimen Schlüssel angeben möchten, geben Sie diese hier ein. Standardmäßig wird der Pinentry-Dialog verwendet, um nach einer Passphrase zu fragen.
Name-Real: name
Name-Comment: comment
Name-Email: email
Die drei Teile eines Benutzernamens. Verwenden Sie hier die UTF-8-Kodierung. Wenn Sie keine davon angeben, wird keine Benutzer-ID erstellt.
Expire-Date: iso-date|(number[d|w|m|y])
Legen Sie das Ablaufdatum für den Schlüssel (und den Subkey) fest. Es kann entweder im ISO-Datumsformat (z. B. „20000815T145012“) oder als Anzahl von Tagen, Wochen, Monaten oder Jahren nach dem Erstellungsdatum eingegeben werden. Die spezielle Notation „seconds=N“ ist ebenfalls zulässig, um eine Anzahl von Sekunden seit der Erstellung anzugeben. Wenn kein Buchstabe angegeben ist, werden Tage angenommen. Beachten Sie, dass keine Prüfung auf den Überlauf des von OpenPGP für Zeitstempel verwendeten Typs durchgeführt wird. Stellen Sie daher sicher, dass der angegebene Wert sinnvoll ist. Obwohl OpenPGP mit Zeitintervallen arbeitet, verwendet GnuPG intern einen absoluten Wert, sodass das letzte Jahr, das wir darstellen können, 2105 ist.
Creation-Date: iso-date
Legen Sie das Erstellungsdatum des Schlüssels fest, wie es in den Schlüsselinformationen gespeichert ist und das auch Teil der Fingerprint-Berechnung ist. Entweder ein Datum wie „1986-04-26“ oder ein vollständiger Zeitstempel wie „19860426T042640“ kann verwendet werden. Die Zeit wird als UTC betrachtet. Die spezielle Notation „seconds=N“ kann verwendet werden, um direkt eine Anzahl von Sekunden seit der Unix-Epoche anzugeben. Wenn es nicht angegeben ist, wird die aktuelle Zeit verwendet.
Preferences: string
Legen Sie die Präferenzwerte für Verschlüsselung, Hash und Komprimierung für diesen Schlüssel fest. Dies erwartet die gleiche Art von Zeichenkette wie der Unterbefehl „setpref“ im Menü „--edit-key“.
Revoker: algo:fpr [sensitive]
Fügen Sie einen designierten Widerrufer zum generierten Schlüssel hinzu. Algo ist der Algorithmus des öffentlichen Schlüssels des designierten Widerrufers (d. h. RSA=1, DSA=17 usw.). fpr ist der Fingerabdruck des designierten Widerrufers. fpr darf keine Leerzeichen oder Doppelpunkte enthalten. Das optionale Flag „sensitive“ kennzeichnet den designierten Widerrufer als sensible Information. Nur v4- und v5-Schlüssel können als designierte Widerrufer verwendet werden.
Keyserver: string
Dies ist ein optionaler Parameter, der die bevorzugte Keyserver-URL für den Schlüssel angibt.
Handle: string
Dies ist ein optionaler Parameter, der nur mit den Statuszeilen KEY_CREATED und KEY_NOT_CREATED verwendet wird. Die Zeichenkette darf maximal 100 Zeichen lang sein und darf keine Leerzeichen enthalten. Es ist nützlich für die Batch-Schlüsselgenerierung, um einen Schlüsselparameterblock mit einer Statuszeile zu verknüpfen.
Hier ist ein Beispiel, wie Sie einen Schlüssel in einem temporären Home-Verzeichnis erstellen: $ export GNUPGHOME="$(mktemp -d)" $ cat >foo <<EOF %echo Generating a basic OpenPGP key Key-Type: DSA Key-Length: 1024 Subkey-Type: ELG-E Subkey-Length: 1024 Name-Real: Joe Tester Name-Comment: with stupid passphrase Name-Email: _ Expire-Date: 0 Passphrase: abc # Do a commit here, so that we can later print "done" :-) %commit %echo done EOF $ gpg --batch --generate-key foo [...] $ gpg --list-secret-keys /tmp/tmp.0NQxB74PEf/pubring.kbx ------------------------------sec dsa1024 2016-12-16 [SCA] 768895903FC1C44045C8CB95EEBDB71E9E849D0 uid [ultimate] Joe Tester (with stupid passphrase) <_> ssb elg1024 2016-12-16 [E]
Wenn Sie einen Schlüssel mit den Standardalgorithmen erstellen möchten, verwenden Sie diese Parameter: %echo Generating a default key Key-Type: default Subkey-Type: default Name-Real: Joe Tester Name-Comment: with stupid passphrase Name-Email: _ Expire-Date: 0 Passphrase: abc # Do a commit here, so that we can later print "done" :-) %commit %echo done
FEHLER
Auf älteren Systemen sollte dieses Programm als setuid(root) installiert sein. Dies ist notwendig, um Speicherseiten zu sperren. Das Sperren von Speicherseiten verhindert, dass das Betriebssystem Speicherseiten (die Passwörter oder andere sensible Daten enthalten können) auf die Festplatte schreibt. Wenn Sie keine Warnmeldung über unsicheren Speicher erhalten, unterstützt Ihr Betriebssystem das Sperren ohne Root-Rechte. Das Programm verwirft Root-Privilegien, sobald der gesperrte Speicher zugewiesen wurde.
Beachten Sie auch, dass einige Systeme (insbesondere Laptops) die Möglichkeit haben, in den "Ruhezustand auf der Festplatte" zu wechseln (auch bekannt als "sicherer Schlaf" oder "Hibernation"). Dabei wird der gesamte Speicher auf die Festplatte geschrieben, bevor das System in einen Energiesparmodus oder sogar in einen ausgeschalteten Zustand versetzt wird. Es sei denn, im Betriebssystem werden Maßnahmen ergriffen, um den gespeicherten Speicher zu schützen, können Passwörter oder andere sensible Daten möglicherweise später daraus wiederhergestellt werden.
Bevor Sie einen Fehler melden, sollten Sie zunächst in den Mailinglisten-Archiven nach ähnlichen Problemen suchen und anschließend prüfen, ob ein solches Problem bereits in unserem Fehler-Tracker unter https://bugs.gnupg.org gemeldet wurde.
SIEHE AUCH
gpgv(1), gpgsm(1), gpg-agent(1)
Die vollständige Dokumentation für dieses Tool wird als Texinfo-Handbuch gepflegt. Wenn GnuPG und das Info-Programm auf Ihrem System ordnungsgemäß installiert sind, sollte der Befehl
info gnupg
Ihnen Zugriff auf das vollständige Handbuch mit einer Menüstruktur und einem Index gewähren.