Danke Jan, danke Peter, so langsam verstehe ich die Unterschiede zwischen gpg x509 S/Mime pkcs11 usw. Aber manchmal komme ich mir auch vor wie bei StarTrek. “Ich werde die Deflektorphalanx mit einem Ionenstrahl neu kallibrieren und eine Ebene-3-Diagnose durchführen…”
also, ich beschreib mal wa sich tue:
ubtunu 11.04 frisch eingeloggt:
[code]gpg --card-status
Application ID …: D27600012401020000050000086D0000
Version …: 2.0
Manufacturer …: ZeitControl
Serial number …: 0000086D
Name of cardholder: Janning Vygen
Language prefs …: de
Sex …: unbestimmt
URL of public key : [nicht gesetzt]
Login data …: janning
Signature PIN …: zwingend
Key attributes …: 2048R 2048R 2048R
Max. PIN lengths .: 32 32 32
PIN retry counter : 3 0 3
Signature counter : 0
Signature key …: CBB3 30E2 3DFC 082F AE66 25F5 BF3C D665 BB88 7DA0
created …: 2011-10-03 11:10:35
Encryption key…: 765F 88B8 42CE 149F FCDF 9310 F8EF 4F63 C7D0 D99C
created …: 2011-10-03 11:15:17
Authentication key: 1657 78A3 DAB8 74B9 6BAD B112 9359 08D5 A9EE 88A1
created …: 2011-10-03 11:18:04
General key info…: pub 2048R/BB887DA0 2011-10-03 Janning Vygen vygen@kicktipp.de
sec# 2048R/2560F970 erzeugt: 2011-10-03 verfällt: niemals
ssb> 2048R/BB887DA0 erzeugt: 2011-10-03 verfällt: niemals
Kartennr.: 0005 0000086D
ssb> 2048R/C7D0D99C erzeugt: 2011-10-03 verfällt: niemals
Kartennr.: 0005 0000086D
ssb> 2048R/A9EE88A1 erzeugt: 2011-10-03 verfällt: niemals
Kartennr.: 0005 0000086D
[/code]
Dann Firefox gestartet, Modul libpkcs11_debug.so war schon geladen. Stick wurde angezeigt als Status “Nicht vorhanden”
log Auszug
[quote]140389500208896 11/10 09:55:04 GetSlotInfo: started, Slot=2
140389500208896 11/10 09:55:04 GetTokenInfo: started, Slot=2
140389500208896 11/10 09:55:04 GetTokenInfo: SCardConnect(German Privacy Foundation Crypto Stick v1.2 00 00)=Unknown error: 0xFFFFFFFF8010000B
140389500208896 11/10 09:55:04 GetSlotInfo: started, Slot=1
[/quote]
das kam jede Sekunde, dann habe ich den Stick
ausgesteckt und wieder eingesteckt:
[quote]140389500208896 11/10 09:55:53 GetTokenInfo: started, Slot=2
140389500208896 11/10 09:55:53 SendAPDU: 00:A4:04:00 Lc:6(D2:76:00:01:24:01) Le:0
140389500208896 11/10 09:55:53 SendAPDU: SCardTransmit(12 bytes) => 25 bytes
140389500208896 11/10 09:55:53 SendAPDU: SW=9000 Len=23:62158410D27600012401020000050000086D00008A0105
140389500208896 11/10 09:55:53 SendAPDU: 00:CA:00:4F Lc:0 Le:0(20 bytes)
140389500208896 11/10 09:55:53 SendAPDU: SCardTransmit(5 bytes) => 18 bytes
140389500208896 11/10 09:55:53 SendAPDU: SW=9000 Len=16:D27600012401020000050000086D0000
140389500208896 11/10 09:55:53 card_get_serial: OpenPGP card Version 2.00, Serial 0000086D
140389500208896 11/10 09:55:53 card_init_context: started, Typ=77
140389500208896 11/10 09:55:53 check_SPE: SCardControl() received 12 bytes
140389500208896 11/10 09:55:53 check_SPE: SecPIN 0A
140389500208896 11/10 09:55:53 check_SPE: SecPIN 12
140389500208896 11/10 09:55:53 GetTokenInfo: New Card 0000086D in Slot 2, new Info, Flags=RW,LoginRequired
140389500208896 11/10 09:55:53 GetMechanismList: started, Slot=2
140389500208896 11/10 09:55:53 C_GetMechanismList Slot=2 Count=???
140389500208896 11/10 09:55:53 GetMechanismList: started, Slot=2
140389500208896 11/10 09:55:53 C_GetMechanismList Slot=2 Maxcount=3 Count=3
140389500208896 11/10 09:55:53 OpenSession: started, Slot=2, Flags=RO+Serial, Notify=Yes
140389500208896 11/10 09:55:53 OpenSession: first session
140389500208896 11/10 09:55:53 New Session 1/1: Flags=4,RO State=RO-Public
140390220003136 11/10 09:55:53 GetSlotInfo: started, Slot=2
140390220003136 11/10 09:55:53 GetSlotInfo: started, Slot=1
[/quote]
Wenn ich mir jetzt meine Zertifikate anzeigen lassen will, fragt er nach dem “Master-Passwort” für den Cryptostick.
ich tipp es ein, aber es werden dann keine Zertifikate angezeigt. Alle Tabs außer Server und Zertifizierungsstellen sind leer.
Ich bekomme dann in der Logdatei das zu sehen:
[quote]140390220003136 11/10 09:59:49 Login: started, S1, State:RO-Public, Type:User, Pin=******
140390220003136 11/10 09:59:49 check_SPE: SCardControl() received 12 bytes
140390220003136 11/10 09:59:49 check_SPE: SecPIN 0A
140390220003136 11/10 09:59:49 check_SPE: SecPIN 12
140390220003136 11/10 09:59:49 VerifyPinPCSC: User-PIN=’’, CLA/REF=00/82, Ascii-Format, Min/MaxLen=1/16
140390220003136 11/10 09:59:49 card_get_fbz: PinRef: 0x82
140390220003136 11/10 09:59:49 SendAPDU: 00:CA:00:C4 Lc:0 Le:0(100 bytes)
140390220003136 11/10 09:59:49 SendAPDU: SCardTransmit(5 bytes) => 9 bytes
140390220003136 11/10 09:59:49 SendAPDU: SW=9000 Len=7:00202020030003
140390220003136 11/10 09:59:49 VerifyPinPCSC: card_get_fbz(0x82)=Success, fbz=3
140390220003136 11/10 09:59:49 pin_gui: Mode=INIT
140390220003136 11/10 09:59:49 pin_gui: Mode=ASKPIN
140390220003136 11/10 09:59:49 VerifyPinPCSC: Got PIN ''
140390220003136 11/10 09:59:49 pin_gui: Mode=EXIT
140390220003136 11/10 09:59:49 VerifyPinPCSC: invalid PIN-Length, must 1 <= 0 <= 16
140390220003136 11/10 09:59:49 Login: VerifyPinPCSC()=unspecific error
140390220003136 11/10 09:59:49 FindObject: Init S1 TemplateCount=2
140390220003136 11/10 09:59:49 FindObject: Template0 Token=True
140390220003136 11/10 09:59:49 FindObject: Template1 Class=Certificate
140390220003136 11/10 09:59:49 FindObject: Found=0
140390220003136 11/10 09:59:49 FindObject: Find S1 Max=16 Return
140390220003136 11/10 09:59:49 FindObject: Final S1
[/quote]
Da steht etwas von unspecific error. Ob der PIN korrekt war, msste ich ja am Counter auf dem Stick sehen. Leider kann ich jetzt nach dem Firefox zugegriffen hat nicht mehr auf den Stick mit gpg:
[quote]janning@antilope:~$ gpg --card-status
gpg: selecting openpgp failed: ec=6.108
gpg: OpenPGP Karte ist nicht vorhanden: Allgemeiner Fehler
[/quote]
Da hilft dann wieder das übliche killen des scdaemon. Kann man das irgendwie abstellen? Das nervt total und macht die Sache nicht vertrauenswürdiger (und das sollte sie sein, nicht wahr
Und nach dem Kill des scdaemon komme ich wieder an den Stick und er zeigt mir:
[quote]PIN retry counter : 3 0 3
[/quote]
also vermute ich, dass das Laden des Zertifikats nicht geklappt hat, der PIN aber korrekt war.
Also probiere ich das nochmal mit dem Zertifikat:
[quote]gpg2 --card-edit
…
Befehl> admin
Admin-Befehle sind erlaubt
Befehl> writecert 3 < janning.crt
// hier wird nach der Admin-Pin gefragt
Befehl>
… Keine Antwort, sieht also gut aus??..]
Befehl> readcert 3 > foo.crt
Befehl> quit
[/quote]
Ein diff auf beide Dateien zeigt, dass alles korrekt ist. Beide Dateien sind identisch.
Also Firefox starten, aber hier wird der Cryptostick jetzt gar nicht angezeigt. Rausziehen, neu einstecken.
Dann ist er wieder da.
Aber wenn ich mir die Zertifikate anzeigen lassen will, sehe ich dasselbe wie oben, also erst Eingabe der PIN, dann leere Zertifikatsliste (in allen Tabs, außer Server und Zertifizierungsstellen)
Dann habe ich mal versucht unter Kryptographie-Module den Stick auszuwählen und dort “Einloggen” anzuwählen. Dann kommt die PIN Abfrage und dann “Einloggen fehlgeschlagen”.
Bin ratlos.