OpenPGP-avaimen luominen laitteessa#
Seuraavissa ohjeissa selitetään OpenPGP-avainten luominen suoraan Nitrokey-ohjelmalla. Tämä tehdään käyttämällä GnuPG:n komentoriviliittymää. Sinun on siis asennettava GnuPG järjestelmääsi. Uusin GnuPG-versio Windowsille löytyy täältä ja uusin versio MacOS:lle löytyy täältä. Linux-järjestelmien käyttäjät asentavat GnuPG:n paketinhallinnan avulla.
Muista
Nämä ohjeet perustuvat GnuPG:n versioon 2.2.6 tai uudempaan. Joihinkin Linux-jakeluihin on asennettu vanhempi versio. Tässä tapauksessa valitse jokin muu menetelmä, joka on lueteltu täällä tai asenna uudempi versio, jos mahdollista.
Avainten tuottaminen#
Seuraavissa kuvauksissa selitetään perusavaimen luominen laitteessa GnuPG:n komentorivikäyttöliittymän avulla. Oletusarvoisesti luodaan 2048-bittisiä RSA-avaimia. Jos haluat muuttaa avainalgoritmia ja -pituutta, tutustu ensin seuraavaan osioon.
Avaa komentorivi ja kirjoita gpg2 --card-edit
.
To open the Windows command line please push the Windows-key and R-key. Now type ‘cmd.exe’ in the text field and hit enter. To open a Terminal on macOS or GNU/Linux please use the application search (e.g. spotlight on macOS).
> gpg2 --card-edit
Reader ...........: 20A0:4108:0000320E0000000000000000:0
Application ID ...: D27600012401020100050000320E0000
Version ..........: 2.1
Manufacturer .....: ZeitControl
Serial number ....: 0000320E
Name of cardholder: [not set]
Language prefs ...: de
Sex ..............: unspecified
URL of public key : [not set]
Login data .......: [not set]
Signature PIN ....: forced
Key attributes ...: rsa2048 rsa2048 rsa2048
Max. PIN lengths .: 32 32 32
PIN retry counter : 3 0 3
Signature counter : 0
Signature key ....: [none]
Encryption key....: [none]
Authentication key: [none]
General key info..: [none]
gpg/card>
Nyt olet GnuPG:n interaktiivisessa käyttöliittymässä. Aktivoi admin-komennot admin
ja käytä sen jälkeen generate
aloittaaksesi avainten luomisen.
gpg/card> admin
Admin commands are allowed
gpg/card> generate
Make off-card backup of encryption key? (Y/n) n
Please note that the factory settings of the PINs are
PIN = '123456' Admin PIN = '12345678'
You should change them using the command --change-pin
Please specify how long the key should be valid.
0 = key does not expire
<n> = key expires in n days
<n>w = key expires in n weeks
<n>m = key expires in n months
<n>y = key expires in n years
Key is valid for? (0)
Key does not expire at all
Is this correct? (y/N) y
GnuPG needs to construct a user ID to identify your key.
Real name: Jane Doe
Email address: jane@example.com
Comment:
You selected this USER-ID:
"Jane Doe <jane@doecom>"
Change (N)ame, (C)omment, (E)mail or (O)kay/(Q)uit? O
gpg: key 817E149CA002B92F marked as ultimately trusted
gpg: revocation certificate stored as '/home/nitrokey//.gnupg/openpgp-revocs.d/E62F445E8BB4B5085C031F5381
7E149CA002B92F.rev'
public and secret key created and signed.
gpg/card>
</jane@doe.com></n></n></n></n>
Älä luo ehdotettua kortin ulkopuolista varmuuskopiota. Tämä ”varmuuskopio” tallentaa vain salausavaimen, mutta ei allekirjoitus- ja todentamisavaimia. Jos laite katoaa, et voi palauttaa koko avainsarjaa. Toisaalta se ei siis ole täydellinen varmuuskopio (käytä sen sijaan tämän ohjeen, jos tarvitset sellaista), ja toisaalta vaarana on, että joku muu voi saada salausavaimesi haltuunsa. Laitteessa tapahtuvan avainten luomisen etuna on varmistaa, että avaimet säilytetään turvallisesti. Siksi suosittelemme jättämään tämän puolivarmistuksen väliin.
Nyt sinulla on laitteessasi täydellinen avainsarja, jota voit käyttää sivustollamme luetelluissa erilaisissa sovelluksissa. Kirjoita quit
ja paina enteriä poistuaksesi.
Muuta keskeisiä ominaisuuksia#
Tässä osassa käsitellään avainattribuuttien muuttamista. Jos haluat käyttää oletusarvoja, voit jatkaa seuraavassa osassa.
Avaa komentorivi ja kirjoita gpg2 --card-edit --expert
.
> gpg2 --card-edit --expert
Reader ...........: 20A0:4108:0000320E0000000000000000:0
Application ID ...: D27600012401020100050000320E0000
Version ..........: 2.1
Manufacturer .....: ZeitControl
Serial number ....: 0000320E
Name of cardholder: [not set]
Language prefs ...: de
Sex ..............: unspecified
URL of public key : [not set]
Login data .......: [not set]
Signature PIN ....: forced
Key attributes ...: rsa2048 rsa2048 rsa2048
Max. PIN lengths .: 32 32 32
PIN retry counter : 3 0 3
Signature counter : 0
Signature key ....: [none]
Encryption key....: [none]
Authentication key: [none]
General key info..: [none]
Nyt olet GnuPG:n interaktiivisessa käyttöliittymässä. Kuten näet yllä olevasta ”Key attributes” -kentästä, oletusarvoksi on asetettu rsa2048. Voit muuttaa niitä aktivoimalla hallintakomennot admin
ja käyttämällä sen jälkeen key-attr
muuttaaksesi avainten attribuutteja.
gpg/card> admin
Admin commands are allowed
gpg/card> key-attr
Changing card key attribute for: Signature key
Please select what kind of key you want:
(1) RSA
(2) ECC
Your selection? 1
What keysize do you want? (2048) 4096
The card will now be re-configured to generate a key of 4096 bits
Changing card key attribute for: Encryption key
Please select what kind of key you want:
(1) RSA
(2) ECC
Your selection? 1
What keysize do you want? (2048) 4096
The card will now be re-configured to generate a key of 4096 bits
Changing card key attribute for: Authentication key
Please select what kind of key you want:
(1) RSA
(2) ECC
Your selection? 1
What keysize do you want? (2048) 4096
The card will now be re-configured to generate a key of 4096 bits
Voit valita kunkin avaimen attribuutin (eli allekirjoituksen, salauksen ja todennusavaimen). Useimmat ihmiset käyttävät samoja attribuutteja jokaiselle avaimelle. Kirjoita list<x>
nähdäksesi tulokset (katso kenttää ”Key attributes”, jossa lukee nyt rsa4096).
gpg/card> list
Reader ...........: 20A0:4108:0000320E0000000000000000:0
Application ID ...: D27600012401020100050000320E0000
Version ..........: 2.1
Manufacturer .....: ZeitControl
Serial number ....: 0000320E
Name of cardholder: [not set]
Language prefs ...: de
Sex ..............: unspecified
URL of public key : [not set]
Login data .......: [not set]
Signature PIN ....: forced
Key attributes ...: rsa4096 rsa4096 rsa4096
Max. PIN lengths .: 32 32 32
PIN retry counter : 3 0 3
Signature counter : 0
Signature key ....: [none]
Encryption key....: [none]
Authentication key: [none]
General key info..: [none]
Kirjoita quit
ja paina enter-näppäintä poistuaksesi tai jatka suoraan edellisestä osiosta luodaksesi näppäimet juuri asettamillasi näppäinominaisuuksilla.
Seuraavassa taulukossa esitetään, mitä algoritmia voidaan käyttää missäkin laitteessa.
Aloita |
Pro + varastointi |
Pro 2 + varastointi 2 |
|
---|---|---|---|
rsa1024 |
✓ |
✓ |
|
rsa2048 |
✓ |
✓ |
✓ |
rsa3072 |
✓ |
✓ |
|
rsa4096 |
✓ |
✓ |
|
curve25519 (ECC) |
✓ |
||
NIST (ECC) |
✓ |
✓ |
|
Brainpool (ECC) |
✓ |
||
secp256k1 |
✓ |
Julkisen avaimen vienti ja avainpalvelimen käyttö#
Vaikka voit aloittaa Nitrokey-avaimesi käytön heti sen jälkeen, kun olet luonut avaimet järjestelmässäsi, sinun on tuotava julkinen avaimesi jokaiseen järjestelmään, jossa haluat käyttää Nitrokey-avainta. Sinulla on siis kaksi vaihtoehtoa: Joko tallennat julkisen avaimen mihin tahansa haluamaasi paikkaan ja käytät sitä toisessa järjestelmässä tai tallennat julkisen avaimen verkkosivulle/avainpalvelimelle.
Julkisen avaimen tiedoston luominen#
Jos haluat saada yksinkertaisen tiedoston julkisesta avaimestasi, voit käyttää gpg2 --armor --export keyID > pubkey.asc
. Käytä joko sormenjälkeä ”keyID:nä” (katso gpg -K
saadaksesi sen) tai käytä vain sähköpostiosoitettasi tunnisteena.
Voit pitää tätä tiedostoa mukanasi tai lähettää sen kenelle tahansa haluamallesi henkilölle. Tämä tiedosto ei ole lainkaan salainen. Jos haluat käyttää Nitrokeyta toisessa järjestelmässä, tuot ensin tämän julkisen avaimen gpg2 --import pubkey.asc
kautta ja kirjoitat sitten gpg2 --card-status
, jotta järjestelmä tietää, mistä tätä avainta pitää etsiä. Siinä kaikki.
Julkisen avaimen lataaminen#
Jos et halua kantaa julkista avaintietoa mukanasi, voit ladata sen keyserveriin. Voit tehdä tämän kirjoittamalla gpg --keyserver search.keyserver.net --send-key keyID
. Jos käytät toista konetta, voit vain tuoda sen käyttämällä gpg --keyserver search.keyserver.net --recv-key keyID
.
Another possibility is to change the URL setting on your card. Start gpg
–card-edit again and first set the URL where the key is situated (e.g. on the keyserver or on your webpage etc.) via the url
command. From now on you can import the key on another system by just using the fetch
command within the gpg --card-edit
environment.