OpenPGP card not available: general error

Hallo,

ich versuche den Nitrokey Pro unter Linux für Mail-Verschlüsselung mit PGP und S/MIME zu verwenden. Leider ist beides nicht möglich. Bei S/MIME bekomme ich das Zertifikat nicht auf den Nitrokey (siehe [How to import S/MIME Cert for mail signing / decryption on Nitrokey Pro)), bei PGP wird der Nitrokey erst gar nicht erkannt.

gpg --card-status
gpg: selecting openpgp failed: ec=6.108
gpg: OpenPGP card not available: general error
gpg2 --card-status
gpg: selecting openpgp failed: Card error
gpg: OpenPGP card not available: Card error

Ich habe das mit meheren Nitrokeys versucht, und unter drei neu installierten Linux Systemen (xUbuntu, Ubuntu, Ubuntu-Gnome) doch erhalte stets den gleichen Fehler.

Installationsbeschreibungen sind leider widersprüchlich und teilweise fehlerhaft. Unter nitrokey.com/de/documentation/installation wird opensc empfohlen, hier fehlen die schliessenden tags. Unter nitrokey.com/de/installation wird dagegen empfohlen opensc zu deinstallieren pcsclite stattdessen zu verwenden. Vielleicht könntet ihr mal eure Doku aufräumen.

Da sich das S/MIME Zertifikat nicht kopieren lässt und GPG den Nitrokey gar nicht erst findet ist Mail-Verschlüsselung überhaupt nicht möglch.

Versionen
*ubuntu 15.10
Linux 4.2.0-27-generic x86_64
gpg (GnuPG) 1.4.18
gpg (GnuPG) 2.0.28
gpg-agent (GnuPG) 2.0.28
libgcrypt 1.6.3
OpenSC 0.15.0 [gcc 4.9.2]

Grüße

TL,DR
Mail-Verschlüsselung unter Linux mit GPG oder S/MIME nicht möglich auf Nitrokey Pro

Hat Dein User Lese- und Schreibrecht für den Nitrokey?

[code]start cmd:> lsusb
…]
Bus 007 Device 005: ID 20a0:4108 Clay Logic
…]

ls -l /dev/bus/usb/007/005
crw-rw-r–+ 1 root plugdev 189, 772 12. Feb 14:30 /dev/bus/usb/007/005

id
uid=1000(hl) …],300(plugdev)[/code]

Gnome ist problematisch, lieber in einer anderen Umgebung testen:

bugs.launchpad.net/ubuntu/+sour … bug/884856
gniibe.org/memo/notebook/gno … tings.html

Berechtigungen stimmen alle. Ich habe derweil eine semi-praktikable Lösung unter blogs.fsfe.org/jens.lechtenboerger/2013/04/19/how-to-set-up-your-fellowship-card/ gefunden:

Tatsächlich lässt sich der Nitrokey mit pgp managen, wenn der service pcscd beendet wird. Allerdings kann dann opensc nicht mehr auf den key zugreifen.

Heisst das, ich muss mich enscheiden, ob ich den Nitrokey als smartcard für opensc / pcscd oder für gpg / scdaemon verwenden will? Wenn ja, welche Schnittstelle gibt es dann für Firefox / Thunderbird zum Zertifikat auf dem Nitrokey?

Leider harmonisieren diese Anwendungen nicht besonders gut miteinander. Um beide quasi gleichzeitig zu verwenden kannst Du den jeweiligen Daemon starten und dann den anderen stoppen.

Grundsätzlich benötigt Firefox einen PKCS#11 Treiber. Hier gibt es mehrere Möglichkeiten:

  • OpenSC ist recht gängig und funktioniert gut.
  • Peter Kochs Treiber: smartcard-auth.de/
  • Vielversprechend ist ein PKCS#11-Treiber auf Basis von SCDaemon, weil er das von Dir beschriebene Problem zwischen PCSCD und SCDaemon vermeidet. Davon gibt es eine erste Version, die jedoch m.E. nur das Authentifizierungs-Zertifikat des Nitrokey verwenden kann. Siehe: github.com/sektioneins/scd-pkcs … ntegration