PGP/SMIME simultaneously with NK PRO 2?

Hello World…:wink:

I have read about my problem that a few years ago it was not possible to use PGP and SMIME simultaneously. Has something changed here in the meantime? Or are there solutions?

Ich habe leider ebenso das Problem, dass einige 2016 und 2018 berichtet haben, eben das gleichzeitige Nutzen von PGP und SMIME nicht möglich zu sein scheint. Das könnte nach meiner Auslegung der Beschreibung zum Nitrkey Pro 2 ja hinfällig geworden sein. Dann fehlt mir aber eine sichere Anleitung!

Ich bin schon froh, nun die OpenPGP Einrichtung Fehlerfrei unter Linux hinbekommen zu haben. Unter Windows ging da gar nichts (hier scheint die Lenovo Hardware (Kartenleser) den Nitrokey zu stören). Nu wollte ich mein Zertifikat einwerfen und dies gelingt nicht (erkennt das Device (Kartenleser) nicht).

Ich hoffe hiermit eine Anleitung zu erhalten, die mir die paralele Nutzung erlaubt.

Viele Grüße/Best Regards,
Martin

Hallo @dangerfreak,

meines Wissens funktioniert es leider nicht dass man PGP und S/MIME simultan auf dem selben Nitrokey nutzen kann.
Ich lasse mich da gerne eines besseren belehren, aber ich habe noch keine Möglichkeit gefunden das zu bewerkstelligen. :wink:

Eine Anleitung für S/MIME findest Du hier [1]

Dein Problem mit dem internen Kartenleser kann ich nachvollziehen, ich habe das selbe Problem unter Linux auf meinem DELL Latitude Notebook. Es wird anscheinend immer der “erste” Kartenleser angesprochen.

beste Grüsse
Jürgen

[1] https://www.nitrokey.com/documentation/smime-email-encryption

Hallo Jürgen,

ich habe hier schon mitgelesen und auch die etwas verwirrende Dokumentation gelesen. Jemand sollte hier mal aufräumen…:wink: Wie schreibt man so schön: Wir erwarten ja eine ansprechend gute Erfahrung mit dem Produkt zu machen. Dazu gehört auch das Produkt genau zu beschreiben. In dieser kann man den Eindruck gewinnen, dass ich zahlreiche Schlüssel und Zertifikate so bunkern kann, das sie sicher sind. Jetzt erfährt man, dass es leider nur EINEN gibt!..ich nimm’s mit Humor, aber wenn man so ein Produkt für die Massen anbieten möchte, wäre eben wenigstens eine leicht verständliche Anleitung dazu relevant.

Ich spiele dann mal weiter mit dem Teil - noch habe ich ihn ja nicht voll ausgereizt. Mal sehen, was er noch so kann - wenn er es denn kann.

Vielen Dank bis hier hin und viele Grüße,
Martin

Hallo Martin,

ja du hast da zum Teil schon recht.
Aber ich muss sagen, dass von allen Produkten die ich bisher probiert
habe, der Nitrokey das vernünftigste ist.
Die GnuPG-Card lasse ich hier absichtlich aussen vor, da diese fast zu
100% Ident zum Nitrokey ist.

Die meisten anderen Produkte schaffen grade mal ein Schlüsselpaar.
Der Feitian ePass ist sogar vom Betriebssystem abhängig; was heisst wenn
man den unter Windows initialisiert läuft er nicht unter Linux/BSD und
umgekehrt.
Yubikey kann (trotz anderslautender Beschreibung) anscheinend nur PGP;
mir ist es nicht gelungen auf diesen einen S/MIME-Key aufzuspielen.

Was dazu kommt ist, dass einzig die Nitrokey’s OpenSource sind.

Vielleicht schafft es ja ein zukünftiger Nitrokey, dass man mehrere
Schlüssel bzw. simultanes PGP und S/MIME nutzen kann. Was jedenfalls
absolut Top wäre.

Lieben Gruss
Jürgen

Hi!

At the moment both certificate and the PGP keys are using the same memory slots on the smart card, hence it is not possible. (edit) From OpenPGP smartcard version 3.3 it seems to be possible, but additionally such use needs changes to the OpenSC implementation. I have created a ticket to track this idea for the future implementation (linked below). From another links you can get an idea, what is the current state.

Hi @szszszsz

Yes it seems to be possible with Cards equal or newer V3.3, but i were not able to get it to run so far. But its good to know that there are some ideas to make this possible.
Will make it easier to handle for those wo are at home in both “worlds” (PGP and S/MIME).

Thanks for open these issues.

regards
Juergen

Hallo Jürgen,

ich habe heute einen Yubikey 5 NFC ein wenig vertesten dürfen - dieser vereint/kombiniert quasi den NK FIDO2 mit dem PRO2 und bietet zusätzlich NFC auch für Smartphones an. Ich war enorm überascht was die da hinbekommen haben - zumal der Preis günstiger ausfällt.

Ich will den Nitrokey nicht schlecht machen - ich finde gut, dass dieser made in Germany ist; wundere mich allerdings etwas über die englisch lastige Seite…naja typisch für die IT Welt!

Bis die Tage und viele Grüße,
Martin

@dangerfreak
Hallo Martin,

Also ich habe das Teil bei mir nicht zu laufen gebracht.
Hast Du NFC fürs Smartphone schon ausprobiert? Bei Mir hat Openkeychain den Yubikey über NFC nicht gefunden.

LG
Jürgen

Hallo Martin,

Ich will den Nitrokey nicht schlecht machen - ich finde gut, dass dieser made in Germany ist; wundere mich allerdings etwas über die englisch lastige Seite…naja typisch für die IT Welt!

Das tust Du nicht, jeder hat irgendwann seine Präferenzen.

Naja der Nitrokey wird ja doch auch weltweit geliefert.
Ich hatte den ersten an einer Universität in den USA in der Hand :slight_smile:

LG
Jürgen

Hallo Jürgen,

ich habe auf Android und iPhone jeweils den Authenicator nutzen können. Openkeychain habe ich gerade mal probiert - der sucht halt meinen PGP-PubKey auf dem Keyserver; und da er dort nicht liegt (ich spiele ja noch), kann ich leider kein Ergebnis liefern. Wieso er den Schlüssel nicht vom Token saugt, ist allerdings sehr merkwürdig.

Viele Grüße,
Martin

Hallo Martin,

ich habe auf Android und iPhone jeweils den Authenicator nutzen können. Openkeychain habe ich gerade mal probiert - der sucht halt meinen PGP-PubKey
auf dem Keyserver; und da er dort nicht liegt (ich spiele ja noch), kann ich leider kein Ergebnis liefern.

Okay, dann hast Du jedenfalls ein Teilergebnis geliefert bekommen,
welches bei mir nicht geklappt hat.
Muss ich dann nochmal probieren.

Wieso er den Schlüssel nicht vom Token saugt, ist allerdings sehr merkwürdig.

Dieses Verhalten begründet sich aus dem Design von PGP/OpenPGP/GnuPG.
Auf dem Token ist ausnahmslos nur der PrivateKey gespeichert. Der PubKey
‘muss’ entweder im lokalen Keyring gespeichert sein, oder auf einem
Keyserver liegen, oder mittels URL (z.B.
http://pubkey.domain.tld/pubkey.asc) auf der Karte/Token referenziert
werden.
Anderenfalls lässt sich das Keypair nicht vervollständigen.

lieben Gruss
Jürgen

Hallo Martin,

ich habe auf Android und iPhone jeweils den Authenicator nutzen können.

vergessen zu fragen: Welches Android Device verwendest Du?

lg
Jürgen

Hallo Jürgen,

ich habe ein Nexus 5X…ich habe die Url nun mal hinzugefügt und einen Pubkey abgelegt. Das funktioniert bei mir auch ohne Ablage auf Keyservern einwandfrei.

Bezüglich Absaugen des pubkey hätte ich angenommen, dass das Tool (Openkeychain) diesen selbst extrahieren kann. Aber gut; so geht es ja auch.

Also mir fängt das nun an Spass zu machen. Ich habe am NK die Keys nochmal neu erzeugt, weil mir die Standard Schlüssellänge zu klein war.

Bisher habe ich das Zeugz an Arch Linux (manjaro), macOS Mojave und Windows 10 vertestet. Am besten läuft es unter Linux (gentoo, arch, ubuntu und debian verteste ich später)…dass finde ich mal geil. Richtig dämlich läuft es mit Outlook in Kombination mit PGP von Symantec. Dieser erzeugt so einen Multipartanteil den ich unter Mojave nicht benutzen kann…sprich, ich muss den verschlüsselten Anteil aufwendig exrahieren und anschließend aus einer Datei heraus entschlüsseln. Also unter macOS ist PGP eher nicht zu gebrauchen - schade.

Viele Grüße,
Martin

Servus Martin,

ich habe ein Nexus 5X…ich habe die Url nun mal hinzugefügt und einen Pubkey abgelegt. Das funktioniert bei mir auch ohne Ablage auf Keyservern
einwandfrei.

Okay das ist dann schon eher ein highclass Device im Gegensatz zu meinem
eigenen :wink:

Bezüglich Absaugen des pubkey hätte ich angenommen, dass das Tool (Openkeychain) diesen selbst extrahieren kann. Aber gut; so geht es ja auch.

Wie gesagt das liegt im Design begründet, da der PubKey nicht im SecKey
mitgespeichert wird … ausser man gibt das bei der Erstellung bzw. beim
Export des SecKeys ausdrücklich an.

Also mir fängt das nun an Spass zu machen. Ich habe am NK die Keys nochmal neu erzeugt, weil mir die Standard Schlüssellänge zu klein war.

Ja, wenn man sich ein wenig eingearbeitet hat, macht das schon sehr viel
Spaß.
Zur Key-Erstellung weiter unten noch was.

Bisher habe ich das Zeugz an Arch Linux (manjaro), macOS Mojave und Windows 10 vertestet.

Okay das ist ein guter Testrahmen :smiley:

Am besten läuft es unter Linux (gentoo, arch, ubuntu und debian verteste ich später)…dass finde ich mal geil.

Die meisten Linux Distros integrieren GnuPG[1] von Werner Koch, was
meines Erachtens die bisher beste Umsetzung des OpenPGP-Standards ist.

Richtig dämlich läuft es mit Outlook in Kombination mit PGP von Symantec.
Dieser erzeugt so einen Multipartanteil den ich unter Mojave nicht benutzen kann…sprich
ich muss den verschlüsselten Anteil aufwendig exrahieren und anschließend aus einer Datei heraus entschlüsseln.

Ehrliche Meinung? Schmeiss das Symantec-Dingens auf den Müll und
verwende GnuPG. → Gpg4win für Windows [2]

Also unter macOS ist PGP eher nicht zu gebrauchen - schade.

Für MacOS gibt es eine native GnuPG Version [3] zum Download; die
funktioniert bei meinen Kollegen einwandfrei

Wenn Du dich etwas weiter damit beschäftigen willst empfehle ich Dir,
die Mailing-Listen von GnuPG [4] zu abonnieren.
Die Wichtigsten sind:

  • gnupg-users
  • gnupg-de

Alternativ noch

  • gnupg-announce
  • gnupg-devel

Bezüglich Key-Erstellung:
Für mich hat es sich bewährt, die GnuPG-Keys auf einem RaspberryPi mit
aktivierten HRNG zu erzeugen, und dann erst auf den Token/Karte zu spielen.
Man hat dann bei Problemen immer noch den Key zur Verfügung und kann
notfalls die Karte zurücksetzen.
Keys zum Spielen erzeuge ich immer nur mit maximal 1 Monat Laufzeit.
Sollte mir mal doch einer in die freie Wildbahn entwischen, ist der nach
ein paar Tagen abgelaufen und kann nicht mehr verwendet werden.

beste Grüsse
Jürgen

[1] https://www.gnupg.org/
[2] Gpg4win - Download Gpg4win
[3] GnuPG for OS X / macOS / Documentation / Download
[4] GnuPG - Mailing lists

Hallo,

es tut mir Leid, dass ich mich jetzt erst einschalten konnte. Dafür kann ich ganz klar sagen: ja, eine gemeinsame Nutzung funktioniert bereits. Zumindest steht dem nichts entgegen, getestet habe ich den Aufbau nicht, wohl aber die Funktionalität in OpenSC implementiert. Alles folgende gilt nur für Nitrokey Pro 2 und Storage 2.

Der Aufbau wurde bisher nicht beschrieben, weil mir der Anwedungsfall sehr exotisch vorkam und andere Aufgaben dringender waren. Auch jetzt kann ich zunächst nur das grobe Vorgehen beschreiben, ich bin aber guter Dinge, dass ihr das auf dieser Basis einmal durchspielen könnt, wenn ihr mögt.

Die Idee/das Vorgehen ist folgendes: Auf den GnuPG “authentication” subkey wird verzichtet, damit in Slot 3 der S/MIME Schlüssel liegen kann. (Früher wurde auch Slot 2 für S/MIME benötigt. Da dies bei den neuen Modellen nicht mehr der Fall ist, funktioniert der Ansatz). Der Aufbau sieht also so aus:

Slot 1 = GnuPG key with SC usage flag (sign and certify)
Slot 2 = GnuPG key with E usage flag (encryption)
Slot 3 = S/MIME key + Cardholder certificate

Basierend auf der ausführlichen Anleitung wird also darauf verzichtet, einen zusätzlichen Subkey zu erstellen und lediglich der Standardkeysatz auf die Karte übertragen. Der S/MIME key-cert Teil kann dann wie in OpenSC beschreiben auf die Karte übertragen werden - aber nur für id 3! Das ganze funktioniert seit OpenSC Version 19.

Liebe Grüße
Alex

Hmm, dafür fällt aber dann die Nutzung mit ssh weg, da der Authenication Key fehlt, oder ?

Es sollte mit etwas wie ssh -I opensc-pkcs11.so $HOST funktionieren :thinking: Aber wie gesagt, ich habe das Szenario nicht ganz durchgespielt. Die Dinge, die ich sonst mit GnuPG und Authentication key machen würde sind:

  • poldi pam login
  • SSH

SSH geht auf die eine oder andere Weise mit OpenSC (siehe oben) und poldi stört sich eigentlich nicht dran, dass es kein valider GnuPG key ist, sondern nutzt einfach nur stumpf den slot 3, soweit ich das sehe.

Hmm, ok ich muss das mal wieder auf dem Mac testen, letztes Mal gab es Konflikte zwischen GnuPG und OpenSC weil beide den NKToken nur für sich haben wollten. Deshalb nutze ich nur GnuPG mit dem SSH Agenden auf dem Mac (hauptsächlich email) . OpenSSH scheint dann den Authentication Key haben zu wollen - andere public Keys ignoriert wohl ssh.

Hallo Alex,

also deine Antwort lässt mein Herz gerade höher schlagen :slight_smile:

Ich werde das in den nächsten Tagen mal austesten und dann eine Rückmeldung geben.

LG
Jürgen

mit poldi pam login habe ich aktuell enorme Probleme.
Ich bin noch am tüfteln, aber aktuell läuft das unter Debian 9 /LMDE 3 gar nicht