Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen Revision Vorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
nitrokey:linuxmint:3cnfc [21.07.2023 19:36. ] – [Nitrokey 3C NFC und Nitrokey 3A mini und Secure Shell] djangonitrokey:linuxmint:3cnfc [18.11.2024 18:55. ] (aktuell) – Externe Bearbeitung 127.0.0.1
Zeile 1: Zeile 1:
-====== Nitrokey 3C NFC in der Praxis unter Linux Mint 21.(Vera) ====== +====== Nitrokey 3C NFC und Nitrokey 3A mini in der Praxis unter Linux Mint 21.(Victoria) ====== 
-{{:nitrokey:linuxmint:nitrokey_3c_nfc.png?nolink&280 |Bild: Nitrokey 3C NFC USB-Stick}} In diesem Kapitel befassen wir uns eingehend mit dem [[https://shop.nitrokey.com/de_DE/shop/product/nk3cn-nitrokey-3c-nfc-148|Nitrokey 3C NFC]] unter **[[https://linuxmint.com/|Linux Mint 20.2 Cinnamon]]**. Weitere Informationen zu den [[https://www.nitrokey.com/de#comparison|Nitrokey-Sticks]] findet man auch [[https://www.nitrokey.com/de/documentation/installation|hier]] bzw. im [[https://support.nitrokey.com/c/nitrokey-support|Support Forum]].+{{:nitrokey:linuxmint:nitrokey_3.png?300 |Bild: Nitrokey 3C NFC und 3A mini USB-Stick}} In diesem Kapitel befassen wir uns eingehend mit dem [[https://shop.nitrokey.com/de_DE/shop/product/nk3cn-nitrokey-3c-nfc-148|Nitrokey 3C NFC]] und [[https://shop.nitrokey.com/de_DE/shop/product/nk3am-nitrokey-3a-mini-149|Nitrokey 3A mini]] unter **[[https://linuxmint.com/|Linux Mint 21.2 (Victoria)]]**. Weitere Informationen zu den [[https://www.nitrokey.com/de#comparison|Nitrokey-Sticks]] findet man auch [[https://www.nitrokey.com/de/documentation/installation|hier]] bzw. im [[https://support.nitrokey.com/c/nitrokey-support|Support Forum]].
  
-//**Der neue Nitrokey 3 mit NFC, USB-CRust, Common Criteria EAL 6+**+//**Der neue Nitrokey 3 wahlweise mit mit NFC, USB-C oder USB-A Mini sowie Rust, Common Criteria EAL 6+**
 \\ \\
 Der neue Nitrokey 3 ist der beste Nitrokey den wir je entwickelt haben. Er bietet erstmals NFC, USB-C. Der Nitrokey 3 vereint die Funktionen vorheriger Nitrokey Modelle: FIDO2, Einmalpasswörter, OpenPGP Chipkarte, Curve25519, Passwort-Manager, Common Criteria EAL 6+ zertifiziertes Secure Element, Firmware-Updates. Damit werden Ihre Accounts zuverlässig gegen Phishing und Passwort-Diebstahl geschützt und Ihre Kommunikation und Daten verschlüsselt. Mit starker Hardware-Verschlüsselung, vertrauenswürdig dank Open Source, Qualität made in Germany.// <sup>\\ Quelle: https://shop.nitrokey.com/de_DE/shop/product/nk3cn-nitrokey-3c-nfc-148</sup> Der neue Nitrokey 3 ist der beste Nitrokey den wir je entwickelt haben. Er bietet erstmals NFC, USB-C. Der Nitrokey 3 vereint die Funktionen vorheriger Nitrokey Modelle: FIDO2, Einmalpasswörter, OpenPGP Chipkarte, Curve25519, Passwort-Manager, Common Criteria EAL 6+ zertifiziertes Secure Element, Firmware-Updates. Damit werden Ihre Accounts zuverlässig gegen Phishing und Passwort-Diebstahl geschützt und Ihre Kommunikation und Daten verschlüsselt. Mit starker Hardware-Verschlüsselung, vertrauenswürdig dank Open Source, Qualität made in Germany.// <sup>\\ Quelle: https://shop.nitrokey.com/de_DE/shop/product/nk3cn-nitrokey-3c-nfc-148</sup>
  
-Mit Hilfe von asymmetrischen Schlüsselmaterials (PGP und S/MIME) können eMails sowie Dateien und ganze Festplatten verschlüsselt und natürlich auch wieder entschlüsselt werden. Hierzu verwenden wir den [[https://shop.nitrokey.com/de_DE/shop/product/nk3cn-nitrokey-3c-nfc-148|Nitrokey 3C NFC]] welcher [[https://shop.nitrokey.com/de_DE/shop|hier]] für einen Betrag von 49 € erstanden werden kann. In dem folgenden Beitrag gehen wir auf die Verwendung unter [[https://linuxmint.com/|Linux Mint 21.1 Cinnamon]] ein. +Mit Hilfe von asymmetrischen Schlüsselmaterials (PGP und S/MIME) können eMails sowie Dateien und ganze Festplatten verschlüsselt und natürlich auch wieder entschlüsselt werden. Hierzu verwenden wir den [[https://shop.nitrokey.com/de_DE/shop/product/nk3cn-nitrokey-3c-nfc-148|Nitrokey 3C NFC]] welcher [[https://shop.nitrokey.com/de_DE/shop|hier]] für einen Betrag von 49 € erstanden werden kann. In dem folgenden Beitrag gehen wir auf die Verwendung unter [[https://linuxmint.com/|Linux Mint 21.2 (Victoria)]] ein. 
  
  
Zeile 29: Zeile 29:
 I:  If#= 3 Alt= 0 #EPs= 2 Cls=0a(data ) Sub=00 Prot=00 Driver=cdc_acm I:  If#= 3 Alt= 0 #EPs= 2 Cls=0a(data ) Sub=00 Prot=00 Driver=cdc_acm
 E:  Ad=04(O) Atr=02(Bulk) MxPS=  64 Ivl=0ms E:  Ad=04(O) Atr=02(Bulk) MxPS=  64 Ivl=0ms
 +E:  Ad=84(I) Atr=02(Bulk) MxPS=  64 Ivl=0ms
 +</code>
 +
 +Beziehungsweise hier exeplarisch die Ausgabe beim **Nitrokey 3A mini**:
 +<code>T:  Bus=01 Lev=02 Prnt=02 Port=01 Cnt=01 Dev#= 26 Spd=12  MxCh= 0
 +D:  Ver= 2.10 Cls=ef(misc ) Sub=02 Prot=01 MxPS=64 #Cfgs=  1
 +P:  Vendor=20a0 ProdID=42b2 Rev=01.05
 +S:  Manufacturer=Nitrokey
 +S:  Product=Nitrokey 3
 +C:  #Ifs= 4 Cfg#= 1 Atr=80 MxPwr=100mA
 +I:  If#= 0 Alt= 0 #EPs= 2 Cls=0b(scard) Sub=00 Prot=00 Driver=usbfs
 +E:  Ad=01(O) Atr=02(Bulk) MxPS=  64 Ivl=0ms
 +E:  Ad=81(I) Atr=02(Bulk) MxPS=  64 Ivl=0ms
 +I:  If#= 1 Alt= 0 #EPs= 2 Cls=03(HID  ) Sub=00 Prot=00 Driver=usbhid
 +E:  Ad=02(O) Atr=03(Int.) MxPS=  64 Ivl=5ms
 +E:  Ad=82(I) Atr=03(Int.) MxPS=  64 Ivl=5ms
 +I:  If#= 2 Alt= 0 #EPs= 1 Cls=02(commc) Sub=02 Prot=00 Driver=cdc_acm
 +E:  Ad=83(I) Atr=03(Int.) MxPS=   8 Ivl=255ms
 +I:  If#= 3 Alt= 0 #EPs= 2 Cls=0a(data ) Sub=00 Prot=00 Driver=cdc_acm
 +E:  Ad=03(O) Atr=02(Bulk) MxPS=  64 Ivl=0ms
 E:  Ad=84(I) Atr=02(Bulk) MxPS=  64 Ivl=0ms E:  Ad=84(I) Atr=02(Bulk) MxPS=  64 Ivl=0ms
 </code> </code>
Zeile 42: Zeile 62:
    # lsusb    # lsusb
  
-  Bus 001 Device 005: ID 20a0:42b2 Clay Logic+  Bus 001 Device 027: ID 20a0:42b2 Clay Logic Nitrokey 
  
 Im Syslog wird uns beim Anstecken des Sticks dies entsprechend protokolliert: Im Syslog wird uns beim Anstecken des Sticks dies entsprechend protokolliert:
-<code>Nov  3 17:34:33 djangos-thinkpad-x230 kernel: [108360.162781] thinkpad_acpi: battery 1 registered (start 0, stop 0) +<code>Jul 22 11:43:25 djangos-thinkpad-x230 kernel: [26709.462049] usb 1-1.2: new full-speed USB device number 28 using ehci-pci 
-Nov  3 17:34:33 djangos-thinkpad-x230 kernel: [113260.203649] usb 1-1.2: new full-speed USB device number using ehci-pci +Jul 22 11:43:25 djangos-thinkpad-x230 kernel: [26709.574335] usb 1-1.2: New USB device found, idVendor=20a0, idProduct=42b2, bcdDevice= 1.05 
-Nov  3 17:34:33 djangos-thinkpad-x230 kernel: [113260.314951] usb 1-1.2: New USB device found, idVendor=20a0, idProduct=42b2, bcdDevice= 1.00 +Jul 22 11:43:25 djangos-thinkpad-x230 kernel: [26709.574348] usb 1-1.2: New USB device strings: Mfr=1, Product=2, SerialNumber=0 
-Nov  3 17:34:33 djangos-thinkpad-x230 kernel: [113260.314956] usb 1-1.2: New USB device strings: Mfr=1, Product=2, SerialNumber=0 +Jul 22 11:43:25 djangos-thinkpad-x230 kernel: [26709.574353] usb 1-1.2: Product: Nitrokey 3 
-Nov  3 17:34:33 djangos-thinkpad-x230 kernel: [113260.314958] usb 1-1.2: Product: Nitrokey 3 +Jul 22 11:43:25 djangos-thinkpad-x230 kernel: [26709.574356] usb 1-1.2: Manufacturer: Nitrokey 
-Nov  3 17:34:33 djangos-thinkpad-x230 kernel: [113260.314961] usb 1-1.2: Manufacturer: Nitrokey +Jul 22 11:43:25 djangos-thinkpad-x230 kernel: [26709.577711] hid-generic 0003:20A0:42B2.0014hiddev0,hidraw0: USB HID v1.11 Device [Nitrokey Nitrokey 3] on usb-0000:00:1a.0-1.2/input1 
-Nov  3 17:34:33 djangos-thinkpad-x230 kernel: [113260.316882] hid-generic 0003:20A0:42B2.0015hiddev3,hidraw0: USB HID v1.11 Device [Nitrokey Nitrokey 3] on usb-0000:00:1a.0-1.2/input1 +Jul 22 11:43:25 djangos-thinkpad-x230 kernel: [26709.578121] cdc_acm 1-1.2:1.2: ttyACM3: USB ACM device 
-Nov  3 17:34:33 djangos-thinkpad-x230 kernel: [113260.317184] cdc_acm 1-1.2:1.2: ttyACM3: USB ACM device +Jul 22 11:43:25 djangos-thinkpad-x230 mtp-probe: checking bus 1, device 28: "/sys/devices/pci0000:00/0000:00:1a.0/usb1/1-1/1-1.2" 
-Nov  3 17:34:33 djangos-thinkpad-x230 mtp-probe: checking bus 1, device 5: "/sys/devices/pci0000:00/0000:00:1a.0/usb1/1-1/1-1.2" +Jul 22 11:43:25 djangos-thinkpad-x230 mtp-probe: bus: 1, device: 28 was not an MTP device 
-Nov  3 17:34:33 djangos-thinkpad-x230 mtp-probe: bus: 1, device: was not an MTP device +Jul 22 11:43:25 djangos-thinkpad-x230 snapd[999]: hotplug.go:200: hotplug device add event ignored, enable experimental.hotplug 
-Nov  3 17:34:33 djangos-thinkpad-x230 snapd[1106]: hotplug.go:199: hotplug device add event ignored, enable experimental.hotplug +Jul 22 11:43:25 djangos-thinkpad-x230 mtp-probe: checking bus 1, device 28: "/sys/devices/pci0000:00/0000:00:1a.0/usb1/1-1/1-1.2" 
-Nov  3 17:34:33 djangos-thinkpad-x230 mtp-probe: checking bus 1, device 5: "/sys/devices/pci0000:00/0000:00:1a.0/usb1/1-1/1-1.2" +Jul 22 11:43:25 djangos-thinkpad-x230 mtp-probe: bus: 1, device: 28 was not an MTP device</code>
-Nov  3 17:34:33 djangos-thinkpad-x230 mtp-probe: bus: 1, device: was not an MTP device</code>+
  
 ===== Paketabhängigkeiten ===== ===== Paketabhängigkeiten =====
Zeile 66: Zeile 85:
  
 ===== udev-Regeln ===== ===== udev-Regeln =====
-Für den Betrieb unter **[[https://linuxmint.com/|Linux Mint 21.1]]** insbesondere beim **[[nitrokey:nitropadx230|NitroPad X230]]** müssen wir uns noch passende udev-Definitionen **[[https://www.nitrokey.com/sites/default/files/41-nitrokey.rules|hier]]** besorgen.+Für den Betrieb unter **[[https://linuxmint.com/|Linux Mint 21.2]]** insbesondere beim **[[nitrokey:nitropadx230|NitroPad X230]]** müssen wir uns noch passende udev-Definitionen **[[https://www.nitrokey.com/sites/default/files/41-nitrokey.rules|hier]]** besorgen.
  
 Wir wechseln also erst einmal in das entsprechende Konfigurationsverzeichnis ''/etc/udev/rules.d/''. Wir wechseln also erst einmal in das entsprechende Konfigurationsverzeichnis ''/etc/udev/rules.d/''.
Zeile 151: Zeile 170:
    $ nitropy nk3 wink    $ nitropy nk3 wink
 <code>Command line tool to interact with Nitrokey devices 0.4.27</code> <code>Command line tool to interact with Nitrokey devices 0.4.27</code>
 +
 +===== Nitrokey App 2 =====
 +Den Update der Firmware auf den jeweiligen Nitrokey nehmen wir am Besten mit Hilfe der **[[https://github.com/Nitrokey/nitrokey-app2|Nitrokey App V2]]** vor.
 +
 +Dieses Hilfsprogramm holen wir uns nun in der aktuellen Version von der GitHub-Seite mit Hilfe von **''wget''**.
 +   $ wget https://github.com/Nitrokey/nitrokey-app2/releases/download/v2.1.2/nitrokey-app-v2.1.2-x64-linux-binary.tar.gz
 +
 +Anschliessend entpacken wir das heruntergeladene **''tar.gz''**.
 +   $ tar -zvxf nitrokey-app-v2.1.2-x64-linux-binary.tar.gz -C ~/bin/
 +
 +Zu guter Letzt geben wir dem Programm noch die x-Rechte, damit wir es direkt ausführen können.
 +   $ chmod +x ~/bin/nitrokey-app-v2.1.2-x64-linux-binary
 +
 +<WRAP center round important 90%>
 +Unter **Ubuntu 22.04  LTS** und auch unter **Linux Mint 21.2 (Victoria)** scheitert aktuell((Stand: Juli 2023)) der Start des Programms leider noch mit der Fehlermeldung:
 +<code>Traceback (most recent call last):
 +  File "nitrokeyapp/__main__.py", line 6, in <module>
 +ImportError: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.36' not found (required by /tmp/_MEIENQdbd/libstdc++.so.6)
 +[41746] Failed to execute script '__main__' due to unhandled exception!</code>
 +
 +Daher legen wir uns kurzer Hand einfach ein kleines Start-Script an:
 +   $ vim bin/nitrokey-app-v2
 +<file bash bin/nitrokey-app-v2>#!/bin/bash
 +export LD_PRELOAD=/usr/lib/x86_64-linux-gnu/libstdc++.so.6
 +~/bin/nitrokey-app-v2.1.2-x64-linux-binary</file>
 +
 +Auch dieses Script verpassen wir nun noch die **x**-Rechte zum einfachen ausführen.
 +   $ chmod +x bin/nitrokey-app-v2
 +
 +</WRAP>
 +   
 +Zum Starten der **Nitrokey-App v2** rufen wir nun einfach das angelegte Script auf.
 +   $ nitrokey-app-v2
 +
 +{{ :nitrokey:linuxmint:nitrokey_app_v2_01.png?nolink&601 |Bild: Nitrokey App V2}}
 +
 +Über die Auswahl der angezeigten **UUID** auf der linken Seite des angesteckten Nitrokey 3 kann mann dann menügeführt einen Update der Firmware vornehmen.
 +
 +{{ :nitrokey:linuxmint:nitrokey_app_v2_02.png?nolink&600 |Bild: Nitrokey App V2}}
 +
 +Der erfolgreiche Update der Firmware wird entsprechend angezeigt.
 +
 +{{ :nitrokey:linuxmint:nitrokey_app_v2_03.png?nolink&600 |Bild: Nitrokey App V2}}
  
 ===== Anwendungsfälle - Software ===== ===== Anwendungsfälle - Software =====
 ==== GnuPG  ==== ==== GnuPG  ====
-Da es sich bei der Chipkarte des **Nitrokey 3C NFC** um eine standardkompatible OpenPGP-Karte handelt, kann der Kryptostick mit Hilfe von **[[https://www.gnupg.org/|GnuPG]]** verwaltet werden. Hierzu installieren wir uns das Paket **gnupg2**, sofern es nicht bereits bei der Erstkonfiguration unseres Rechner installiert wurde.+Da es sich bei der Chipkarte der beiden **Nitrokey 3C und 3A** jeweils um eine standardkompatible OpenPGP-Karte handelt, kann der Kryptostick mit Hilfe von **[[https://www.gnupg.org/|GnuPG]]** verwaltet werden. Hierzu installieren wir uns das Paket **gnupg2**, sofern es nicht bereits bei der Erstkonfiguration unseres Rechner installiert wurde.
    $ sudo apt install gpg    $ sudo apt install gpg
  
Zeile 287: Zeile 349:
  
 <WRAP center round tip 80%> <WRAP center round tip 80%>
-Laut der [[https://github.com/Nitrokey/opcard-rs/blob/v1.0.0/README.md|opencard-rs]]((**v1.0.0** - Stand Mai 2023)) werden folgende Algorithmen unterstützt:+Laut der [[https://github.com/Nitrokey/opcard-rs/blob/v1.1.1/README.md|opencard-rs]]((**v1.1.1** - Stand Juli 2023)) werden folgende Algorithmen unterstützt:
   * RSA-2048   * RSA-2048
   * RSA-3072 (**__nur__** Schlüssel-Import, **__keine__** Schlüssel-Generierung!)   * RSA-3072 (**__nur__** Schlüssel-Import, **__keine__** Schlüssel-Generierung!)
Zeile 424: Zeile 486:
  
 Real name: Django aka [BOfH] Real name: Django aka [BOfH]
-Email address: secmail@mailserver.guru+Email address: secmail@nausch.org
 Comment: Bastard Operator from Hell Comment: Bastard Operator from Hell
 You selected this USER-ID: You selected this USER-ID:
-    "Django aka [BOfH] (Bastard Operator from Hell) <secmail@mailserver.guru>"+    "Django aka [BOfH] (Bastard Operator from Hell) <secmail@nausch.org>"
  
 Change (N)ame, (C)omment, (E)mail or (O)kay/(Q)uit? o Change (N)ame, (C)omment, (E)mail or (O)kay/(Q)uit? o
Zeile 445: Zeile 507:
 pub   rsa2048 2018-11-26 [SC] pub   rsa2048 2018-11-26 [SC]
       E65B2BDF79A2E2E4C28F6E062E22436430385B49       E65B2BDF79A2E2E4C28F6E062E22436430385B49
-uid                      Django aka [BOfH] (Bastard Operator from Hell) <secmail@mailserver.guru>+uid                      Django aka [BOfH] (Bastard Operator from Hell) <secmail@nausch.org>
 sub   rsa2048 2018-11-26 [A] sub   rsa2048 2018-11-26 [A]
 sub   rsa2048 2018-11-26 [E]</code> sub   rsa2048 2018-11-26 [E]</code>
Zeile 458: Zeile 520:
   Reader ...........: Nitrokey Nitrokey 3 [CCID/ICCD Interface] 00 00   Reader ...........: Nitrokey Nitrokey 3 [CCID/ICCD Interface] 00 00
  
-Ferner muss auf dem Rechner, an dem der Stick angesteckt und administriert werden soll, GnuPG in Version 2.1.16 oder höher installiert sein. Bei Linux Mint 21.ist dies kein Problem da aktuell((Mai '23)) die Version 2.2.27 bereitgestellt wird. Bei Bedarf können wir die Version z.B. wie folgt abfragen.+Ferner muss auf dem Rechner, an dem der Stick angesteckt und administriert werden soll, GnuPG in Version 2.1.16 oder höher installiert sein. Bei Linux Mint 21.ist dies kein Problem da aktuell((Mai '23)) die Version 2.2.27 bereitgestellt wird. Bei Bedarf können wir die Version z.B. wie folgt abfragen.
    $ gpg2 --version | grep gpg    $ gpg2 --version | grep gpg
  
Zeile 603: Zeile 665:
  
 Real name: Django [BOfH] Real name: Django [BOfH]
-Email address: secmail@mailserver.guru+Email address: secmail@nausch.org
 Comment: Bastard Operator from Hell Comment: Bastard Operator from Hell
 You selected this USER-ID: You selected this USER-ID:
-    "Django [BOfH] (Bastard Operator from Hell) <secmail@mailserver.guru>"+    "Django [BOfH] (Bastard Operator from Hell) <secmail@nausch.org>"
  
 Change (N)ame, (C)omment, (E)mail or (O)kay/(Q)uit? o Change (N)ame, (C)omment, (E)mail or (O)kay/(Q)uit? o
Zeile 637: Zeile 699:
       created ....: 2023-05-13 20:29:18       created ....: 2023-05-13 20:29:18
 General key info..:  General key info..: 
-pub  ed25519/8A088B4A80BBD384 2023-05-13 Django [BOfH] (Bastard Operator from Hell) <secmail@mailserver.guru>+pub  ed25519/8A088B4A80BBD384 2023-05-13 Django [BOfH] (Bastard Operator from Hell) <secmail@nausch.org>
 sec>  ed25519/8A088B4A80BBD384  created: 2023-05-13  expires: never      sec>  ed25519/8A088B4A80BBD384  created: 2023-05-13  expires: never     
                                 card-no: 000F 762D73BE                                 card-no: 000F 762D73BE
Zeile 650: Zeile 712:
 <code>pub   ed25519 2023-05-13 [SC] <code>pub   ed25519 2023-05-13 [SC]
       4FEC76FF42F8B44C6903D0A88A088B4A80BBD384       4FEC76FF42F8B44C6903D0A88A088B4A80BBD384
-uid                      Django [BOfH] (Bastard Operator from Hell) <secmail@mailserver.guru>+uid                      Django [BOfH] (Bastard Operator from Hell) <secmail@nausch.org>
 sub   ed25519 2023-05-13 [A] sub   ed25519 2023-05-13 [A]
 sub   cv25519 2023-05-13 [E] sub   cv25519 2023-05-13 [E]
Zeile 667: Zeile 729:
       4FEC76FF42F8B44C6903D0A88A088B4A80BBD384       4FEC76FF42F8B44C6903D0A88A088B4A80BBD384
       Card serial no. = 000F 762D73BE       Card serial no. = 000F 762D73BE
-uid           [ultimate] Django [BOfH] (Bastard Operator from Hell) <secmail@mailserver.guru>+uid           [ultimate] Django [BOfH] (Bastard Operator from Hell) <secmail@nausch.org>
 ssb>  ed25519 2023-05-13 [A] ssb>  ed25519 2023-05-13 [A]
 ssb>  cv25519 2023-05-13 [E] ssb>  cv25519 2023-05-13 [E]
Zeile 681: Zeile 743:
 pub   ed25519 2023-05-13 [SC] pub   ed25519 2023-05-13 [SC]
       4FEC76FF42F8B44C6903D0A88A088B4A80BBD384       4FEC76FF42F8B44C6903D0A88A088B4A80BBD384
-uid           [ultimate] Django [BOfH] (Bastard Operator from Hell) <secmail@mailserver.guru>+uid           [ultimate] Django [BOfH] (Bastard Operator from Hell) <secmail@nausch.org>
 sub   ed25519 2023-05-13 [A] sub   ed25519 2023-05-13 [A]
 sub   cv25519 2023-05-13 [E] sub   cv25519 2023-05-13 [E]
Zeile 689: Zeile 751:
 === Öffentlichen Schlüssel ausgeben === === Öffentlichen Schlüssel ausgeben ===
 Damit wir später unseren öffentlichen Schlüssel auch weitergeben oder zu einem [[https://keyserver.nausch.org|Keyserver]] hoch laden, exportieren wir diesen in eine Datei. Damit wir später unseren öffentlichen Schlüssel auch weitergeben oder zu einem [[https://keyserver.nausch.org|Keyserver]] hoch laden, exportieren wir diesen in eine Datei.
-  $ gpg --export --armor secmail@mailserver.guru > secmail@mailserver.guru.pubkey+  $ gpg --export --armor secmail@nausch.org > secmail@nausch.org.pubkey
  
 Diese Datei enthält unseren Schlüssel in ASCII-lesbarer Form. Diese Datei enthält unseren Schlüssel in ASCII-lesbarer Form.
-  $ cat secmail@mailserver.guru.pubkey +  $ cat secmail@nausch.org.pubkey 
-<file key secmail@mailserver.guru.pubkey>-----BEGIN PGP PUBLIC KEY BLOCK-----+<file key secmail@nausch.org.pubkey>-----BEGIN PGP PUBLIC KEY BLOCK-----
  
 mDMEZF/zHhYJKwYBBAHaRw8BAQdAEOQB0s+yG70M1P9yAck5asjV1acQirjk6Bzo mDMEZF/zHhYJKwYBBAHaRw8BAQdAEOQB0s+yG70M1P9yAck5asjV1acQirjk6Bzo
Zeile 750: Zeile 812:
  
   - Zunächst legen wir uns erst einmal ein beliebiges Testdokument an. <code> $ date >> testdatei.txt</code> Die Datei hat nun folgenden Inhalt:<code> $ cat testdatei.txt</code><code>Sat May 13 06:25:41 PM CEST 2023</code>   - Zunächst legen wir uns erst einmal ein beliebiges Testdokument an. <code> $ date >> testdatei.txt</code> Die Datei hat nun folgenden Inhalt:<code> $ cat testdatei.txt</code><code>Sat May 13 06:25:41 PM CEST 2023</code>
-  - Nun verschlüsseln wir dieses Textdokument: <code> $ gpg2 -o testdatei.txt.pgp -a -r django@mailserver.guru -e testdatei.txt</code><code>gpg: checking the trustdb+  - Nun verschlüsseln wir dieses Textdokument: <code> $ gpg2 -o testdatei.txt.pgp -a -r django@nausch.org -e testdatei.txt</code><code>gpg: checking the trustdb
 gpg: marginals needed: 3  completes needed: 1  trust model: pgp gpg: marginals needed: 3  completes needed: 1  trust model: pgp
 gpg: depth: 0  valid:    signed:    trust: 0-, 0q, 0n, 0m, 0f, 4u</code> Wir haben also nun zwei Dokumente auf der Platte liegen. <code> $ ll testdatei.txt*</code><code>-rw-rw-r-- 1 django django  33 May 13 18:25 testdatei.txt gpg: depth: 0  valid:    signed:    trust: 0-, 0q, 0n, 0m, 0f, 4u</code> Wir haben also nun zwei Dokumente auf der Platte liegen. <code> $ ll testdatei.txt*</code><code>-rw-rw-r-- 1 django django  33 May 13 18:25 testdatei.txt
Zeile 766: Zeile 828:
 -----END PGP MESSAGE-----</code> -----END PGP MESSAGE-----</code>
   - Nun entschlüsseln wir unser Dokument wieder.<code> $ gpg2 --decrypt testdatei.txt.pgp > testdatei-entschlüsselt.txt</code><code>gpg: encrypted with 2048-bit RSA key, ID E7EAD30658E98E14, created 2023-05-13   - Nun entschlüsseln wir unser Dokument wieder.<code> $ gpg2 --decrypt testdatei.txt.pgp > testdatei-entschlüsselt.txt</code><code>gpg: encrypted with 2048-bit RSA key, ID E7EAD30658E98E14, created 2023-05-13
-      "Django <django@mailserver.guru>"</code> Den Inhalt dieser Datei können wir nun nach erfolgter Entschlüsselung natürlich wieder lesen.<code> $ cat testdatei-entschlüsselt.txt</code><code>Sat May 13 06:25:41 PM CEST 2023</code>+      "Django <django@nausch.org>"</code> Den Inhalt dieser Datei können wir nun nach erfolgter Entschlüsselung natürlich wieder lesen.<code> $ cat testdatei-entschlüsselt.txt</code><code>Sat May 13 06:25:41 PM CEST 2023</code>
  
 === Signieren ===  === Signieren === 
Zeile 789: Zeile 851:
                                                                                                                                    ����цi�����\ʝ�l΄Y�-���}�vqR����M"�Z��]�.�>5��o[�+��?���v������V��Y�K��� D�E�"                                                                                                                                    ����цi�����\ʝ�l΄Y�-���}�vqR����M"�Z��]�.�>5��o[�+��?���v������V��Y�K��� D�E�"
                                         �<�SU�`�z�����K��r5�4                                         �<�SU�`�z�����K��r5�4
-9�.��j2�$�K+�;qW�3���/a��w�Lg�N��;�c+���^�z��</code> Die Datei beinhaltet die Signatur zu unserer Datei, also entsprechender Zahlensalat.<code> $ file textdatei.txt.gpg</code><code>textdatei.txt.gpg: data</code>  Dieses Vorgehen macht jedoch nur Sinn, wenn mit der Option ''%%--%%encrypt'' gleichzeitig die Datei verschlüsselt werden soll. Wir signieren nun die Datei mit dem privat-key und verschlüsseln die Datei mit dem public-key unseres eigenen Schlüssels auf dem Nitrokey 3C NFC. So kann die Datei nur von uns selbst wieder aufgemacht werden, sofern man im Besitz des Nitrokey 3C NFC und der zugehörigen PIN ist!<code> $ gpg --encrypt --sign -r secmail@mailserver.guru textdatei.txt</code><code>gpg: detected reader `Nitrokey Nitrokey 3CNFC (FSIJ-1.2.10-43243711) 00 00'+9�.��j2�$�K+�;qW�3���/a��w�Lg�N��;�c+���^�z��</code> Die Datei beinhaltet die Signatur zu unserer Datei, also entsprechender Zahlensalat.<code> $ file textdatei.txt.gpg</code><code>textdatei.txt.gpg: data</code>  Dieses Vorgehen macht jedoch nur Sinn, wenn mit der Option ''%%--%%encrypt'' gleichzeitig die Datei verschlüsselt werden soll. Wir signieren nun die Datei mit dem privat-key und verschlüsseln die Datei mit dem public-key unseres eigenen Schlüssels auf dem Nitrokey 3C NFC. So kann die Datei nur von uns selbst wieder aufgemacht werden, sofern man im Besitz des Nitrokey 3C NFC und der zugehörigen PIN ist!<code> $ gpg --encrypt --sign -r secmail@nausch.org textdatei.txt</code><code>gpg: detected reader `Nitrokey Nitrokey 3CNFC (FSIJ-1.2.10-43243711) 00 00'
 gpg: signatures created so far: 8 gpg: signatures created so far: 8
  
Zeile 824: Zeile 886:
 -----END PGP SIGNATURE-----</code> Mit ''gpg %%-–%%verify'' können wir die Signatur der Datei überprüfen:<code> $ gpg --verify textdatei.txt.asc</code><code>gpg: Signature made Sat 13 May 2023 06:43:34 PM CEST -----END PGP SIGNATURE-----</code> Mit ''gpg %%-–%%verify'' können wir die Signatur der Datei überprüfen:<code> $ gpg --verify textdatei.txt.asc</code><code>gpg: Signature made Sat 13 May 2023 06:43:34 PM CEST
 gpg:                using RSA key E487AC832B033C4F84C5F3D54AC0EAA81F4867CF gpg:                using RSA key E487AC832B033C4F84C5F3D54AC0EAA81F4867CF
-gpg: Good signature from "Django <django@mailserver.guru>" [ultimate]+gpg: Good signature from "Django <django@nausch.org>" [ultimate]
 gpg: WARNING: not a detached signature; file 'textdatei.txt' was NOT verified!</code>Wir verändern nun zu Testzwecken den Inhalt der Testdatei, in dem wir den Text verfälschen. <code> $ vim textdatei.txt.asc</code><code>-----BEGIN PGP SIGNED MESSAGE----- gpg: WARNING: not a detached signature; file 'textdatei.txt' was NOT verified!</code>Wir verändern nun zu Testzwecken den Inhalt der Testdatei, in dem wir den Text verfälschen. <code> $ vim textdatei.txt.asc</code><code>-----BEGIN PGP SIGNED MESSAGE-----
 Hash: SHA256 Hash: SHA256
Zeile 841: Zeile 903:
 -----END PGP SIGNATURE-----</code>Nun überprüfen wir die Signatur der Testdatei, was natürlich postwendend als **BAD signature** angeprangert wird. <code> $ gpg --verify textdatei.txt.asc</code><code>gpg: Signature made Sat 13 May 2023 06:43:34 PM CEST -----END PGP SIGNATURE-----</code>Nun überprüfen wir die Signatur der Testdatei, was natürlich postwendend als **BAD signature** angeprangert wird. <code> $ gpg --verify textdatei.txt.asc</code><code>gpg: Signature made Sat 13 May 2023 06:43:34 PM CEST
 gpg:               using RSA key ID E487AC832B033C4F84C5F3D54AC0EAA81F4867CF gpg:               using RSA key ID E487AC832B033C4F84C5F3D54AC0EAA81F4867CF
-gpg: BAD signature from "Django aka [BOfH] (Bastard Operator from Hell) <secmail@mailserver.guru>"</code>+gpg: BAD signature from "Django aka [BOfH] (Bastard Operator from Hell) <secmail@nausch.org>"</code>
  
 ==== Nitrokey 3C NFC und Thunderbird ====  ==== Nitrokey 3C NFC und Thunderbird ==== 
Zeile 874: Zeile 936:
 ===  Öffentlichen Schlüssel importieren === ===  Öffentlichen Schlüssel importieren ===
 Damit wir unseren PGP-Schlüssel unseres **Nitrokey 3C NFC** zum Verschlüsseln und auch zum Signieren verwenden können, müssen wir noch den öffentlichen Schlüssel dem Thunderbird bekannt machen. Wie bereits beim Abschnitt [[#oeffentlichen_schluessel_ausgeben|GnuPG - Öffentlichen Schlüssel ausgeben]] angesprochen, holen wir uns nun noch unseren public-key aus dem **Nitrokey 3C NFC** und speichern diesen in eine Datei. Damit wir unseren PGP-Schlüssel unseres **Nitrokey 3C NFC** zum Verschlüsseln und auch zum Signieren verwenden können, müssen wir noch den öffentlichen Schlüssel dem Thunderbird bekannt machen. Wie bereits beim Abschnitt [[#oeffentlichen_schluessel_ausgeben|GnuPG - Öffentlichen Schlüssel ausgeben]] angesprochen, holen wir uns nun noch unseren public-key aus dem **Nitrokey 3C NFC** und speichern diesen in eine Datei.
-   $ gpg --export --armor secmail@mailserver.guru > secmail@mailserver.guru.pubkey+   $ gpg --export --armor secmail@nausch.org > secmail@nausch.org.pubkey
  
 Rechts im sog. "Hamburger-Menü" finden wir den Auswahlpunkt **Extras**. Rechts im sog. "Hamburger-Menü" finden wir den Auswahlpunkt **Extras**.
Zeile 1097: Zeile 1159:
   * **[[wiki:start#sicherheit-_und_vertraulichkeit|Zurück zu Projekte und Themenkapitel]]**   * **[[wiki:start#sicherheit-_und_vertraulichkeit|Zurück zu Projekte und Themenkapitel]]**
   * **[[http://dokuwiki.nausch.org/doku.php/|Zurück zur Startseite]]**   * **[[http://dokuwiki.nausch.org/doku.php/|Zurück zur Startseite]]**
 +
  • nitrokey/linuxmint/3cnfc.1689968173.txt.gz
  • Zuletzt geändert: 21.07.2023 19:36.
  • von django