Mein Storage wurde heute geliefert und ich habe damit ein wenig experimentiert; ich habe mir die Bedienung und Funktion völlig anders vorgestellt.
- Auf der Webseite steht, dass man die Firmware verifizieren soll. Also habe ich in der App die Exportfunktion benutzt und mich dann gefragt, wo die Firmware wohl gelandet ist. In meinem home habe ich nichts gesehen. Habe dann später gemerkt, dass sie auf dem Stick selbst abgelegt wird. Hätte hier erwartet, dass ich gefragt werde, wo die Firmware landen soll und kam gar nicht darauf, dass der Stick eine frei lesbare Partition hat. Der Zeitstempel 0 der exportierten Firmware hat mich übrigens verwundert.
- Dann habe ich nach der Prüfsumme gesucht, bin auf der github-Seite gelandet und habe dort nur die hex-Dateien und die Prüfsummen dafür gefunden. Der export ist eine bin-Datei und stimmte nicht überein. Ist hex != bin? Gibts eine Konvertierungsmöglichkeit? Keine Informationen darüber. Dann habe ich gesehen, dass es einen zwei Wochen alten 0.9RC gibt und von der 0.5x Version ist keine Spur - stelle in der App auf Updatemodus - hm, “lässt sich nicht ändern” - tja egal, die Fw soll halt drauf. Dann gesehen, dass im Gentoo ebuild das Updateprogramm nicht dabei ist. Na toll, man bekommt den Key nicht mehr aus dem Updatemodus und kann nicht updaten? Hm, dann kompilier ich die Sourcen selber… äh, kein Makefile? Keine Readme dazu? Soll ich mir jetzt aus den Fingern saugen, wie man den Code baut? Windows gebootet und die Updatesoftware für Windows besorgt. Stress mit dem Defender gehabt, aber dafür kann ja nur MS etwas (ist aber ein weiteres i-Tüpfel heute). Dann gemerkt, dass die 0.9er Fw für ein anderes Nitrokey-Produkt ist und dass es für den Storage die 0.50 als neusten Download gibt. Bin mir beinahe sicher, dass ich eigentlich irgendeine 0.50.1 Version 51.1 oder irgendwie sowas auf dem Key hatte, aber das ist ja jetzt nicht mehr zu ändern oder nachzusehen, wenn in dem Menü jetzt 90% der Einträge fehlen, ich die Fw nicht als hex exportiert habe und was einspielen muss, um wieder meine Funktionen zurückzubekommen, wie ich vermute.
- Flashen ging immerhin; hm, die Menüs sind immernoch unvollständig, aber nur unter Linux, nicht unter Windows? Kapier ich nicht, das betrifft doch nicht die nitrokey-app, sondern die Hardware… ach, jetzt muss ich unter Linux den Key erst mounten? Gna, whatever, dann habe ich das entweder beim ersten Einstecken anders gemacht oder der Stick hat sich da anders verhalten. Dann steht in der Anleitung für die Ersteinrichtung, dass man ganz neue Keyhardware eigentlich noch initialisieren muss, das würde man selber machen müssen weil Sicherheit-trara und das würde einige Zeit dauern. Die genannte Funktion gibts aber in keinem einzigen Menü/Reiter/sonstwo. Es gibt auch keinen Screenshot dazu, um es zu vergleichen.
- Egal, das scheint ja trotzdem erstmal zu funktionieren. Dann mal sehen, wie man jetzt in der App Keys erzeugt - öhm, ach dafür muss ich doch gpg benutzen? Hatte irgendwie den Eindruck, der Key könne das selber, vom OS getrennt etc. Oder war das bei Yubi so? Verflixt. Egal, also mit gpg 2.2.7 ed25519 Keys erstellt, weil der Stick laut Key-Übersicht ECC Keys kann. Dann versucht, den Signier-Unterschlüssel mit keytocard auf den Key zu schreiben: “gpg: Das KEYTOCARD Kommando schlug fehl: Ungültiger Wert” Na toll, welcher Wert ist denn ungültig und was wird EIGENTLICH erwartet? Keine Info; also im GPG Handbuch zu dem Thema nachgeschlagen: “Dieser Eintrag muss noch verfasst werden”. Na Halleluja. Na schön, in der Anleitung wird Enigmail empfohlen, dann erzeuge ich halt einen Schlüssel damit und schreibe den auf den Key, das scheint der Dialog ja zu können. Konto auswählen, Passphrase eingeben, Gültigkeit angeben… es poppt ein Warnfenster komplett ohne Text auf und nichts weiter geschieht. Ja, awesome - was ist das Problem, wie kann ich es fixen, brauche ich eine Kristallkugel dafür?
Moment, da steht beim cardinfo “Key attributes …: rsa2048 rsa2048 rsa2048” Dann kann das Ding DOCH kein gpg mit ECC?? Benutzt enigmail gar gpg defaults, wo zumindest ein Subkey wohl in dsa erzeugt wird? Seufz, ich will kein RSA, DSA oder anderes, sondern ed25519… egal, dann erstell ich halt rsa2048 Keys zum testen. Na prima, das keytocard funktioniert auf einmal! Testmail mit enigmail signieren und crypten: “Verschlüsseln fehlgeschlagen” Ja toll, WARUM und bei welchem Kommando denn? Steht nicht da, Enigmail bedarf wieder einer Glaskugel. Egal, Thunderbird ist eh ein hoffnungsloses Programm; Stick ins Smartphone gesteckt. OpenKeychain poppt auf, juhu, immerhin. Jetzt sucht es nach Keys auf Schlüsselserver, Token, sonstwo… nichts gefunden. Mit cardstatus nochmal nachgesehen: Die sind aber drauf! Nochmal ins Smartphone → nö. OKEE, dann erzeug mir halt selber welche, Mensch, die wirste hoffentlich finden! Daten zum Generieren eingeben… PIN eingeben… Speichern auf dem Token fehlgeschlagen - WTF… Wiederholen. Fehlgeschlagen. Raus mit dem Stick… jetzt gehts! Einmal zurück im Dialog, Stick wieder rein, nochmal generieren - ach jetzt gehts doch? Aha, ich habe nun zwei Keys - einen lokalen auf dem Smartphone, einen auf den Key eine Minute später. Meinetwegen… Test mit K9 Mail nach ein bissel Einrichten funktioniert sogar mit dem Schlüssel vom Nitrokey. Stick jetzt in den PC zurück, dieselbe Mail mit Enigmail öffnen… Schlüssel nicht gefunden. Tableflip - Egal, ich will jetzt ed25519 haben und grundsätzlich gehts ja anscheinend. Auf der Webseite steht was zum Support elliptischer Kurven; man kann das Feld mit ‘gpg-connect-agent “SCD SETATTR KEY-ATTR --force 1 22 ed25519” /bye’ umstellen, vielleicht komme ich ja doch dahin, wo ich hin will - Nö, “ungültiger Wert”… seufz.
Ich hätte mir eine richtige Doku gewünscht, die dem Produkt beiliegt, aka Papierhandbuch oder pdf auf dem Stick. Ich hätte mir Klarheit bzgl. der Firmwareversionen gewünscht; ein Aufkleber bei Produktion mit der geflashten Fw und Datum wäre nicht schlecht gewesen (das Ding kann ja zwei Jahre im Lager gelegen haben), ich hätte mir gewünscht, dass der Key oder zumindest die App mir die gpg-Schlüssel erzeugen und dass ich die Felder der Smartcard darüber sehen/anpassen kann.
Ich hab mir gedacht, das ist endlich ein Kryptoprodukt, das meine Oma benutzen kann: auf Knopfdruck bekommt man seine Keys generiert, kann sie am Schlüsselbund mit sich herumtragen und Software kann das automatisch finden und nutzen, ohne dass ich mehr als die PIN eingeben muss. Aber dem ist leider nicht so.
Ich bin gerade ENORM enttäuscht; es war ein langer Tag und vielleicht habe ich mich einfach nur dumm angestellt, aber das war ein ganzer Cluster an Fails auf einmal, die Funktionsweise muss man sich zusammenreimen, die Doku zusammenklauben und das hätte alles so nicht sein sollen; ich komme mir vor wie ein DAU. Und dann das Problem mit der scheinbar fehlenden ed25519-Unterstützung… Kann der Storage jetzt GPG mit ed25519 oder nicht und OpenSSH mit ed25519 oder nicht und wenn ja, wie? Falls nein, muss ich leider vom Umtauschrecht Gebrauch machen.