Wenn man bereits PGP für die Verschlüsselung nutzt und einen vorhandenen Schlüssel weiter verwenden möchte, dann kann man die private Keys dieses Schlüssel auch nachträglich auf eine OpenPGP Smartcard übertragen. Damit erspart man sich die Verteilung eines neuen Schlüssels und man auch die Beglaubigungen des Web-of-Trust behalten.

GnuPG erstellt standardmäßig Schlüsselpaare mit einem Hauptschlüssel zum Signieren und Beglaubigen sowie einen Unterschlüssel zum Verschlüsseln. Die OpenPGP Smartcard kennt drei Schlüssel, einen Schlüssel zum Signieren, einen Schlüssel zum Verschlüsseln und einen Schlüssel zum Authentifizieren. Man muss den von GnuPG erstellten Haupt- und Unter­schlüssel einzeln auf die korrespondierenden Plätze auf der Smartcard schieben.

Um eine Schlüssel auf die SmartCard zu schieben, ruft man "gnupg2" mit der Funktion "--edit-key" für den Schlüssel auf, den man auf die Smartcard verschieben will:
  1. Mit "toggle" schaltet man auf die Verwaltung der privaten Schlüssel um.
  2. Dann schiebt man mit "keytocard" zuerst den Hauptschlüssel als Signatur-Schlüssel auf die Smartcard auf den passenden Platz (1).
  3. Danach wählt man mit "key 1" den Encryption Subkey aus,
  4. und schiebt den Encryption Subkey auf den passenden Platz (2) auf der Smartcard.
  5. Mit "quit" wird die Bearbeitung beendet und die Änderungen werden ausgeführt..
Ein vollständiges Beispiel: > gpg2 --edit-key mustermann@server.tld
Geheimer Schlüssel ist vorhanden.
...
gpg> toggle

sec rsa2048/8A02F3F6
      erzeugt: 2016-06-18 verfällt: niemals Aufruf: SC
ssb rsa2048/08D68793
      erzeugt: 2016-06-18 verfällt: niemals Aufruf: E

gpg> keytocard
Den Hauptschlüssel wirklich verschieben? (j/N) j
Wählen Sie den Speicherort für den Schlüssel:
      (1) Signatur-Schlüssel
      (3) Authentisierungs-Schlüssel
Ihre Auswahl? 1

gpg> key 1

sec rsa2048/8A02F3F6
      erzeugt: 2016-06-18 verfällt: niemals Aufruf: SC
ssb* rsa2048/08D68793
      erzeugt: 2016-06-18 verfällt: niemals Aufruf: E

gpg> keytocard
Wählen Sie den Speicherort für den Schlüssel:
      (2) Verschlüsselungs-Schlüssel
Ihre Auswahl? 2

gpg> quit
Änderungen speichern? (j/N) j
Danach kann man den Status der Smartcard prüfen und sich davon überzeugen, dass die beiden Schlüssel jetzt als Signature-Key und Encryption-Key auf der Smartcard liegen: > gpg2 --card-status

Reader ...........: 20A0:4108:000036C40000000000000000:0
Application ID ...: D2760001240102010005000036C40000
Version ..........: 2.1
...
PIN retry counter : 3 0 3
Signature counter : 0
Signature key ....: C5DF 0BB0 11B7 3F49 3A37 AFC4 4472 A2E8 8A02 F3F6
created ....: 2016-06-18 15:32:07
Encryption key....: 94E1 D64A 51C0 8C78 CE60 6472 0059 00DC 08D6 8793
created ....: 2016-06-18 15:32:07
Authentication key: [none]
General key info..: pub rsa2048/8A02F3F6
sec rsa2048/8A02F3F6 erzeugt: 2016-06-18 verfällt: niemals
ssb rsa2048/08D68793 erzeugt: 2016-06-18 verfällt: niemals