Mehrere Encryption-Subkeys

Hallo,

da ich jetzt den Crypto-Stick verwende, musste ich mir einen neuen RSA Subkey zur Verschlüsselung erstellen. Der existierende Elgamal wird ja nicht unterstützt. Jetzt habe ich also zwei Subkeys zur Verschlüsselung.
Wenn mir aber jetzt Freunde eine verschlüsselte Datei schicken, ist diese nur mit dem neuen RSA Key verschlüsselt. Ich dachte GPG verwendet einfach alle (aktiven) Schlüssel. Ich kann bei GPG keinen bestimmten Subkey auswählen, den ich zum verschlüsseln nutzen möchte…
Habe ich da etwas Grundlegendes nicht verstanden?

Grüße
Sven

Die drei Schlüssel im Crypto Stick haben jeweils ausgewiesene Funktionen. Ein Schlüssel ist zum Signieren, der andere zum Authentifizieren und der dritte zum Verschlüsseln. Daher ist eindeutig festgelegt welcher Schlüssel zum Verschlüsseln verwendet wird.

Die Frage war auch eher allgemeiner Natur: PGP unterstützt ja mehrere Subkeys. Wonach sucht sich GPG (unabhängig vom CryptoStick) einen Key zur Verschlüsselung aus.
Zum Besispiel sieht mein Publickey jetzt so aus:
Primary Key (DSA, zur Signierung)

  • Elgamal (zum verschlüsseln, wurde damal automatisch mit angelegt)
  • RSA (zum signieren, kann ich auf den Stick kopieren)
  • RSA (zum verschlüsseln, kann ich auf den Stick verschieben)

Wenn mir jemand jetzt eine verschlüsselte Mail schicken möchte, mit welchem Key soll er dann verschlüsseln (RSA vs. Elgamal). KMail fragt nicht nach…

Die Frage habe ich hier im Forum gestellt, da ich auf Grund des Sticks einen zusätzlichen RSA Key erstellen musste. Daher hatte ich gehofft, dass schonmal jemand über dieses Problem gestolpert ist. Ich hoffer ihr verzeiht diese halb Off-Topic Frage :wink:

Hallo,

aus den bekannten Beweggründen ist zur Zeit der Für mich im Augenblick der Kauf eines Sticks ausgeschlossen. Wegen der Annahme, dass sich in dieser Entwicklungsphase “täglich” etwas ändern wird, habe ich mich mit ihm noch nicht so intensiv befasst. Aber eins macht mich stutzig:

Bei dem asymetrischen Verfahren des PGP verwende ich doch den Öffentlichen Schlüssel des Empfängers zum Verschlüsseln. Was befindet sich nun als dritter Schlüssel auf dem Stick? Mein öffentlicher Schlüssel, damit ich etwas für mich verschlüsseln kann? Hätte natürlich auch einen gewissen Sinn, wenn ich bestimmte auf meinem Rechner liegende, archivierte Dokumente verschlüsseln möchte. Ist aber bestimmt nicht der Hauptzweck des Sticks, oder?

Und wie unterscheiden sich die Schlüssel, mit denen ich von mir verfaßte Dokumente für andere signiere (Schlüssel 1) und von mir archivierte Dokumente für mich verschlüssle (Schlüssel 3)? Es ist doch in beiden Fällen mein geheimer Schlüssel, oder?

Hallo BigBummi,

also ich habe nicht das Gefühl, dass sich täglich etwas ändert. Der Stick funktioniert so wie er soll und auch zuverlässig. Mir bereitet nur der Umstieg ein wenig Kopfzerbrechen (da fehlt mir wahrscheinlich etwas Theorie).

Der Stick speichert nur private Schlüssel. Man kann auf dem Stick auch eine URL zu dem Publickey speichern, wird aber meines Wissens nicht von gpg unterstützt. Wenn Du also auf einem neuen Rechner bist, musst Du Dir erst noch Deinen Publickey herunterladen, was dank der Keyserver aber kein Problem sein sollte.
Aber da wird die Version 2.0 interessant. Die soll ja auch Speicher enthalten und als USB-Stick arbeiten können. Da könnte man dann komfortabel seine Publickeyring speichern. Ich hoffe, dass die Entwicklung gut voranschreitet…

Der dritte Schlüssel, den man auf dem Stick speichern kann, ist zur Authentifizierung gedacht. Als Anwendungsgebiet habe ich ssh gelesen. Nutze ich aber nicht.

Deine letzte Frage habe ich nicht ganz verstanden. Schlüssel 3 ist wie beschrieben ja kein Schlüssel zum verschlüsseln. Du verschlüsselst ja mit dem Publickey (von z.B. einem Keyserver) und entschlüsselst mit dem Privatkey auf dem Stick.

Grüße
Sven

[quote=“avanc”]…

  • RSA (zum verschlüsseln, kann ich auf den Stick verschieben)…[/quote]

Hallo,

aus Jux und Dallerei stelle ich in diesem Forum nie Fragen. Wenn ich hier eine Frage stelle, so steht immer eine Wissenslücke dahinter.

Das ich mit dem Publickey (des Empfängers) verschlüssle, habe ich doch selber geschrieben. Die Wiederholung schließt keine meiner Wissenslücken. Wofür soll der Schlüssel 3 verwendet werden? Diese Frage wurde nicht beantwortet.

Ah, jetzt hat es bei mir klick gemacht. Es muss “zum verschlüsseln, den ensprechenden Privatekey zum entschlüsseln kann ich auf den Stick verschieben” heißen. Entsprechend auch “zur Kontrolle der Signatur, den entsprechenden Privatekey zum signieren kann ich auf den Stick kopieren”. Sorry für die Verwirrung…

Nochmal zur Klärung, was mein Problem ist:

Auf dem Stick habe ich folgende private Schlüssel:

  • RSA zum signieren
  • RSA zum entschlüsseln

Desweiteren habe ich auf einem sicheren Rechner:

  • DSA als Hauptschlüssel zum signieren von anderen Schlüsseln
  • Elgamal zum entschlüsseln (wurde damals mit angelegt)

Mein Publickey enthält folgende Schlüssel:

  • DSA zur Kontrolle der DSA Signatur
  • Elgamal zum verschlüsseln
  • RSA zur Kontrolle der RSA Signatur
  • RSA zum verschlüsseln

Wenn nun jemand etwas für mich verschlüsselt, wird automatisch der RSA Publickey genommen und nicht der Elgamal. Meine Frage ist, wieso gerade der RSA Key verwendet wird? Am besten wäre es doch, wenn die Programme beide verwenden…

@BigBummi

Vielleicht kann ich das mal erschöpfend beantworten:

Es gibt 4 Arten von Keys:

C- certify - dient nur dem Zertifizieren von eigenen und fremden Schlüsseln(Signieren von Schlüsseln)
S- sign - dient nur dem Signieren von Daten(Signatur unter Nachrichten und Daten)
E- encryption- dient nur der Verschlüsselung von Daten
A- authenticate -dient nur Authentifikationsprozessen(SSH ist eine Anwendung, wird von Gnupg nicht benutzt)

Auf dem Crypto-Stick gibt es folgendes:

Signature key …: [none]
Encryption key…: [none]
Authentication key: [none]

Wenn man jetzt noch weiss, das C und S Keys technisch das selbe sind und C Keys nur certify genannt werden um zu unterscheiden, ob damit User-IDs signiert werden oder Daten und normaleweise Hauptschlüssel immer mit S und C angelegt werden, dann ist auch klar das der Signature-Key auch gleichzeitig ein Certification Key beeinhaltet. Der Encryption Key und Authentication Key sind Unterschlüssel des Signaure-Keys. GPG/PGP wählt immer den zur jeweiligen Aktion passenden Schlüssel aus.

Wenn das jetzt zu unverständlich war bitte hier nochmal nachlesen:

hp.kairaven.de/pgp/gpg/gpg4.html

[quote=“Caris”]…
C- certify - dient nur dem Zertifizieren von eigenen und fremden Schlüsseln(Signieren von Schlüsseln)

Wenn man jetzt noch weiss, das C und S Keys technisch das selbe sind … [/quote]

Danke für die doch etwas besser struktuierte Antworten. Nun sind einige Wissenslücken gefüllt. Eine weitere, noch offne, hat mich bisher nicht belastet. Zertifikate und Zertifizierung sind so eine Sache, zu der ich noch keine richtige Beziehung aufbauen konnte. Das bedeutet aber nicht, dass ich schon mal ein Zerfikat selbst erstellt habe, dieses auch irgendwie zertifiziert und dann in MS-Outlook eingebaut hatte. Aber dies fällt wohl eher in die Rubrik “… den sie wußten nicht, was sie taten.” Und deshalb stelle ich hierzu auch keine Fragen. Ich muss ja nicht alles wissen. Ich eben ein Fan des Signieren (öffentliche Schlüssel, Texte oder binäre Dateien) und der Hash-Werte.

@avanc

Kann es sein das der RSA-Key als default gesetzt ist?

Kann man das?

Ich habe mein Problem mal auf der gnupg-user Mailinglist [1] geschildert. Anscheinend wählt gpg immer den neueren Schlüssel. Da dies aber eine Implementierungssache ist, kann es es bei anderen Programmen anders sein. Daher ist wohl das sicherste, nur einen aktiven Key zur Verschlüsselung zu haben.

[1] lists.gnupg.org/pipermail/gnupg-users/2010-November/039828.html