PQ-Schlüssel lassen sich nicht ablegen
X509Store.Add(certificate, CryptoMode.Hybrid) oder X509StoreExtensions.PersistPqKeys wirft eine
PlatformNotSupportedException, die mit diesem Satz beginnt:
Persisting PQ keys needs the operating system's key store: DPAPI on Windows, the Secret Service (libsecret) on Linux.
Der Zertifikatsspeicher bleibt dabei unverändert.
Umgebung
- macOS.
- Linux ohne Secret Service: Server ohne Desktop, Dienste ohne Anmeldesitzung, Container. Ebenso Linux ohne die Bibliotheken
libsecret-1.so.0undlibglib-2.0.so.0.
Ursache
Die Bibliothek legt PQ-Schlüssel neben dem Zertifikatsspeicher nur ab, wenn ein Schlüsselspeicher des Betriebssystems sie schützt. Unter Windows ist das DPAPI, unter Linux der Secret Service der Sitzung, etwa GNOME Keyring oder KWallet. Fehlt er, schreibt die Bibliothek keine Datei, statt die Schlüssel ungeschützt abzulegen. Die Meldung nennt nach dem ersten Satz, was genau fehlt.
Lösung
- Linux mit Desktop: Installieren Sie das Paket mit
libsecret, etwalibsecret-1-0unter Debian und Ubuntu. Starten Sie den Prozess in einer Sitzung, in der ein Secret Service läuft und entsperrt ist. - Server, Dienste und Container: Legen Sie die Schlüssel als PFX-Datei ab und importieren Sie sie beim Start mit
X509Certificate2ExportExtensions.ImportPfx. Das Kennwort der Datei verwahrt Ihre Geheimnisverwaltung, nicht die Anwendung selbst. Siehe So übertragen Sie Zertifikate mit PQ-Schlüssel als PFX. - macOS: Verwenden Sie PFX-Dateien wie für Server.
de/wiki/pqcrypt/lib/troubleshooting/pq-keys-cannot-be-persisted.txt · Zuletzt geändert: von Wolfgang van der Stille