Naprej Nazaj Kazalo

3. Udeležba na srečanju

3.1 Povzetek nalog udeleženca srečanja

  1. Generati par ključev
  2. Pošljite javni ključ na določen strežnik s ključi (ali koordinatorju)
  3. Pošljite podatke o javnem ključu koordinatorju
  4. Prikažite se na srečanju
  5. Preverite podatke o vaših ključih na srečanju
  6. Preverite podatke o ključih vseh ostalih na srečanju
  7. Podpišite vse preverjene ključe
  8. Pošljite vse podpisane ključe nazaj na strežnik s ključi (ali lastniku ključa)

3.2 Kaj naj udeleženci prinesejo na srečanje?

  1. Njih same - virtualno ne morete prisostvovati
  2. Dve vrsti dokumenta s sliko - vozniško dovoljenje in osebna izkaznica sta dovolj
  3. Key ID, Key Type, Hex Fingerprint and Key Size informacije o svojem ključu na listu
  4. Pisalo

3.3 Česa naj udeleženci Nebi Prinesli na srečanje?

  1. Računalnika

3.4 Zakaj naj nebi prinesli računalnika na srečanje?

Računalnika naj nebi prinesli na srečanje ker lahko binarne zamenjave ali modifilacije sistema enostavno komprimirajo PGP sisteme.

Če naj bi nekdo prinesel prenosnik katerega naj bi vsi uporabljali za podpisovanje ključev na srečanju, nebi nihče dejansko vedel, ali je na računalniku tekel program, ki lovi vtipkane znake, modificirano verzijo GPG-ja, modificirano verzijo Linux jedra ali posebno oblikovano tipkovnico, katerikoli od teh načinov bi se lahko uporabil, da bi pridobili privatne ključe tistih, ki so uporabljali računalnik.

Uporaba računalnika na srečanu bi vas ravno tako naredila ranljive za branje preko ramena, ali bolj kompleksne napade kot je injekcija virusov, ki modificirajo gpg program, da bi izdajali podatke o privatnih ključih.

3.5 Kreiranje lastnega para ključev

Postopek generiranja lastnega para ključev je precej preprost. V osnovi morate le zagnati gpg --gen-key . Kakorkoli, priporočam vam, da ustvarite tudi preklicni certifikat (revocation certificate) za vaše ključe v primeru, da kdaj izgubite dostop do vašega skrivnega ključa (npr. izgubite geslo zanj ali izgubite sam skrivni ključ). Navodila za kreiranje preklicnega certifikata najdete v poglavju 3.7 tega dokumenta.

Navodila spodaj so napisana korak za korakom, z varnostjo v mislih. Naprimer:

Nekateri ljudje, se bodo počutili varne tudi brez vseh teh varnostnih ukrepov. Naprimer, da posedujete prenosnik ali domač računalnik na katerem berete vso elektronsko pošto, se lahko počutite dovolj varno, da na disku tega računalnika shranite vaš par ključev. Lahko tudi varno generirate par ključev katerega veljavnost nikdar ne poteče in katerega lahko uporabljate za identifilacijo in večino komunikacij - ter kreirate še par ključev, ki ga uporabljate za izjemno občutljive komunikacije (če imate kake). Ponovno navodila, ki si sledijo korak za korakom spodaj so napisana z mislijo na čim boljšp varnost. Ni vam jih nujno potrebno slediti, da generirate par ključev. Po drugi strani, le ste izjemno paranoični varnostni "freak" kot sem jaz potem vam bo sledenje spodnjim navodilom prineslo občutek pomirjenosti, ki ga trenutno tako potrebujete.

1) Pojdite na www.gnupg.org, ter k sebi na disk shranite zadnjo verzijo gnupg-ja: gnupg-x.x.x.tar.gz

Opozorilo: Prepričajte se, da imate dejansk vsaj verzijo GnuPG-ja 1.0.6, ker verzije pred to imajo pomembne varnostne luknje v njih.

2) Preverite PGP podpis ter MD5 vsoto GnuPG arhiva:

[vab@firster vab]$ gpg --verify gnupg-x.x.x.tar.gz.sig gnupg-x.x.x.tar.gz
[vab@firster vab]$ md5sum gnupg-x.x.x.tar.gz

3) Razpakirajte arhiv, ga skonfigurirajte, prevedite ter inštalirajte:

[vab@firster vab]$ tar xvzf gnupg-x.x.x.tar.gz
[vab@firster vab]$ cd gnupg-x.x.x
[vab@firster gnupg-x.x.x]$ ./configure
[vab@firster gnupg-x.x.x]$ make
[vab@firster gnupg-x.x.x]$ su
[vab@firster gnupg-x.x.x]# make install
[vab@firster gnupg-x.x.x]# exit
[vab@firster gnupg-x.x.x]$ cd

Če delite sistem na katerega inštalirate GnuPG še z kom, bi morda želeli GnuPG narediti setuid root, tako, da lahko uporablja zaščiten spomin. Če to želite storiti, priporočamo previdnost da preverite vaš arhiv z md5 podpisom, ter pgp podpisom, da si zagotovite da ni trojanski konj.

4) Najdite disketo, na katero boste shranili ključe, ter jo sformatirajte.

[vab@firster vab]$ /sbin/mkfs.ext2 /dev/fd0

4a) "Mount-ajte" disketno enoto ter naredite direktorij, ki pripada vam na njej za vaše ključe:

[vab@firster vab]$ mount /mnt/floppy
[vab@firster vab]$ mkdir /mnt/floppy/.gnupg

ter če je potrebno (odvisno od dostopa do fd0 na vašem sistemu):

[vab@firster vab]$ chown <vaš_uid>:<vaš_gid> /mnt/floppy/.gnupg

4b) Naredite symlink z vašega domačega direktorija na disketo

[vab@firster vab]$ ln -s /mnt/floppy/.gnupg .gnupg

5) Generirajte svoje gnupg ključe

[vab@firster vab]$ gpg --gen-key

5a) Izberite tip ključa, ki ga želite - Privzeto je v redu.

Please select what kind of key you want:
(1) DSA and ElGamal (default)
(2) DSA (sign only)
(4) ElGamal (sign and encrypt)
Your selection? <return>

5b) Izberite velikost svojega ključa: 2048

DSA keypair will have 1024 bits.
About to generate a new ELG-E keypair.
minimum keysize is  768 bits
default keysize is 1024 bits
highest suggested keysize is 2048 bits
What keysize do you want? (1024) 2048<return>
Do you really need such a large keysize? yes<return>

5c) Nastavite življenjsko dobo tega ključa: 5 let je v redu

Requested keysize is 2048 bits
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) 5y<return>
Key expires at Sun Sep 21 16:17:15 2005 EDT
Is this correct (y/n)? y<return>

5d) Vnesite svoje ime/priimek ter elektronsk(i/e) naslov(e)...

Real name: Demo User<return>
Email address: demo@nonexistent.nowhere<return>
Comment:
You selected this USER-ID:
"Demo User <demo@nonexistent.nowhere>"

Change (N)ame, (C)omment, (E)mail or (O)kay/(Q)uit?  O<return>

5e) Izberite si geslo. Izbrati morate dobro geslo. Bilo naj bi dolgo, ter težko za uganiti. Mora biti nekaj, česar ne boste pozabili. Če pozabite svoje geslo ne morete več uporabljati ključa.

5f) Premikajte miško, ter pritisnite nekaj tipk, morda posodobite locate ali naredite večje iskanje z find ukazom. GPG bere iz /dev/random, da dobi več naključnosti za generacijo vaših ključev. /dev/random v glavnem naseljujejo prekinitve.

6) Spremenite svoj ključ, če to želite. Na primer, če imate več elektronskih naslovov in jih želite vse kot veljavne na vaših ključih:

[vab@firster vab]$ gpg --list-secret-keys

/home/vab/.gnupg/secring.gpg
----------------------------
sec  1024D/C01BAFC3 2000-09-21 Demo User <demo@nonexistent.nowhere>
ssb  2048g/7A4087F3 2000-09-21
[vab@firster vab]$ gpg --edit-key C01BAFC3
Command> help
Command> adduid
[...]
Command> save

7) Pošljite vaš ključ na strežnik s ključi

[vab@firster vab]$ gpg --keyserver <strežnik_s_ključi> --send-key <Vaš_Key_ID>

Videti bi morali sporočilo o uspehu kot je tole:

gpg: success sending to `<strežnik_s_ključi>' (status=200)

Tu je pomembno omeniti, da nekateri ljudje verjamejo, da skrivanje ključev (shranjevanje le teh brez objave) pripomore k dodatni varnosti za njihove enkriptirane komunikacije. To je res, ker na strežniku s ključi bi lahko prišlo do vdora ali kompromizacije in vrnili napačen javni ključ, ko bi bil le-ta zahtevan. Nadalje, ključ ma določenem javnem strežniku s ključi morda ni najnovejša verzija ključa. Naprimer dodatni podpisi so morda bili dodani ključu, ki ni bil poslan na strežnik s ključi. To je tudi res ker je za določene tipe napadov na javni enkripcijski sistem, ki ga uporablja PGP potreben javni ključ. Medtem, ko mnogo ljudi pričakuje, da z razumno velikimi ključi ti napadi nebi mogli biti uspešni, tako da je vseeno, ali je javni ključ objavljen, ohranjanje javnega ključa v tajnosti dejansko ojača par ključev.

Jaz ne priporočam da ohranite svoj javni ključ v tajnosti, ker bo to druge odvrnilo od uporabe PGP-ja v njihovih komunikacijah z vami. Če se znova dotaknemo teme o možnosti pokvarjenega ali kompromiranega strežnika s ključi, ki bi vračal napačne ključe, se lahko zaščitite pred tem, da bi vam pošiljali sporočila z pokvarjenimi ključi, tako, da objavite fingerprint svojega ključa v svoji .signature datoteki ali na spletu. Da se posvetimo temi napada vašega para ključev preko dosegljivosti vašega javnega ključa bi rekel, če ste resnično zaskrbljeni glede čvrstosti vašega para ključev ali resnično paranoični glede varnosti vaših komunikacij, lahko generirate dodatne pare ključev (ki potečejo v roku ur ali dni) za vsako komunikacijo ter izmenjate javne ključe teh parov skozi kodirane komunikacije z posamezniki s katerimi želite komunicirati.

Če ne želite imeti svojega ključa na javnem strežniku s ključi lahko preskočite ta korak ter namesto tega pošljete svoj javvni ključ koordinatorju srečanja z sporočilom v katerem napišete, da svojega javnega ključa ne želite imeti na javnem strežniku s ključi. Koordinator lahko prebere informacije o vašem ključi ter posreduje vaš ključ ostalim udeležencem srečanja preko kodirane elektronske pošte, ali kake druge metode, poleg tega pa še sporočilo, da naj se ključ po podpisu vrne lastniku, in se ne pošlje na strežnik s ključi.

8) Generirajte preklicni certifikat. To je neobvezen korak.

Generiranje in shramba preklicnega certifikata vam bo omogočila preklic vašega javnega ključa tudi v primeru da to le tega izgubite dostop zaradi kompromizacije, zaplembe, pozabljenega gesla, ali okvare medija na katerem je bil shranjen. Če želite imeti možnost, da prekličete vaš javni ključ kadar nimate dostopa do vašega skrivnega ključa, generirajte preklicni certifikat ter ga shranite na varnem mestu. Kopijo preklicnega certifikata je pametno natisniti, da ga lahko vseeno vnesete v primeru, da se vam okvari medij na katerem je bil shranjen.

Če pride do kompromizacije vašega preklicnega certifikata, bi dobil posameznik, ki je kompromiziral vaš certifikat možnost uporabe certifikata in potemtakem onemogočiti vaš ključ. Vendar, posameznik ne bo mogel kompromirati vašega skrivnega ključa preko preklicnega certifikata. Torej ne bo zmožen ustvariti ponarejenih podpisov, odkodirati sporočil zakodiranih z vašim parom ključev ali se predstavljati z njim za vas, kot lastnik vaših ključev. Ker je edini možni izid kompromizacije preklicnega certifilata onemogočenje vašega para ključev je v glavnem varna in pametna odlolitev.

Zopet oddelek 3.7 vsebuje več informacij o preklicu ključev.

GnuPG ukaz, ki generira preklicni certifikat je:

[vab@firster vab]$ gpg --output revcert.asc --gen-revoke <key_id>

9) Preko elektronske pošte pošljite podatke o vaših ključih koordinatorju srečanja, ter mu povejte, da pridete na srečanje. Ukaz napisan spodaj bo izpisal podatke, ki jih morate poslati koordinatorju, če uporabljate strežnik s ključi. Te podatke nato lahko pošljete v enkriptiranem sporočilu preko elektronske pošte koordinatorju.

[vab@firster vab]$ gpg --fingerprint <Your_Key_ID>

10) Od-"mountajte" disketo ter jo izvrzite:

[vab@firster vab]$ umount /mnt/floppy

Opomba: Disketo lahko nsoite s seboj za dodatno varnost, ali pa jo lahko pustite v varnem zaklenjenem predalu mize, itd. Svojih ključev NOČETE imeti v .gnupg direktoriju, ki je dosegljiv preko spleta.

11) Prikažite se na srečanju.

3.6 Podpisovanje ključev ostalih

1. korak: Dobite kopijo ključa

Navadno boste delali z strežnika s ključi. Toda če ključ, ki ga podpisujete ni disegljiv na strežniku s ključi ga lahko enostavno uvozite z ukazom

gpg --import datoteka_z_javnim__ključem .

Če pa delate z strežnikom s ključi, pa bo naslednji ukaz shranil ključ s strečnika v vaš javni keyring

[vab@firster vab]$ gpg --keyserver <strežnik_s_ključi> --recv-keys <Key_ID>

Če dobite napako za branje, to pomeni da so strežniki s ključi preobremenjeni. Prosim poskusite znova čez nekaj sekund.

2. korak: Poglejte fingerprint ključa in ga overite

[vab@firster vab]$ gpg --fingerprint <Key_ID>

GPG bo izpisal podatke o ključu (katerega ste ravnokar shranili s strežnika s ključi): fingerprint in <Key_ID >. Preverite, če se fingerprint shranjenega ključa ujema z fingerprintom ključa na vašem spisku, ki ste ga dobili na srečanju. Opozorilo: ne preverjajte fingerprinta na spletni strani strežnika s ključi, ker ni nujno da bam bo poslal isti ključ, kot je prikazan na spletni strani.

3. korak: Podpišite ključ

[vab@firster vab]$ gpg --sign-key <Key_ID>

Če imate več privatnih ključev določite s katerim ključem želite podpisati z ukazom podobmin temule:

[vab@firster vab]$ gpg --default-key <Ključ_ki_ga_boste_uporabili> --sign-key <Key_ID>

Če imate probleme z delom z RSA ključi po vsej verjetnosti uporabljate staro verzijo gnupg­ja. Verzije GnuPG-ja starejše od 1.0.3 ne vsebujejo podpore za RSA algoritem. Opozorilo: morda morate odstraniti starejšo verzijo, ki jo je vašo distribucijo namestila z orodjem za delo s paketi. Verzijo programa, ki ga kličete lahko preverite z sledečim ukazom:

[vab@firster vab]$ gpg --version

4. korak: Vrnite ali pošljite na strežnik s ključi podpisan ključ

Če delate z osebo, ki noče imeti svojih ključev na javnem ku s ključi, bi jim morali pri tem koraku vrniti njihov javni ključ preko metode po njihovi izbiri - navadno preko enkriptirane elektronske pošte. Javnega ključa ne smete poslati na javni strežnik s ključi brez dovoljenja njegovega lastnika. Objava javnega ključa malce zmanjša varnost para ključev, zatorej bi se razumelo kot nevljudno, če bi ključ naredili bolj javen, kot želi njegov lastnik.

Najverjetneje boste delali preko strežnika s ključi. V tem primeru lahko pošljete ključ na strežnik s ključi na sledeč način:

[vab@firster vab]$ gpg --keyserver <strežnik s ključli> --send-key <Key_ID>

Videti bi morali sporočilo podobno temu:

gpg: success sending to `<strežnik_s_ključi>' (status=200)

Čestitke, podpis ključa druge osebe je sedaj končan in vaš podpis je bil dodan v njihov javni ključ. Pot zaupanja je bila vzpostavljena.

3.7 Preklic vašega para ključev

V primeru, da sumite, da je bil vaš skrivni ključ kompromiran, bi morali takoj preklicati vaš javni ključ. Preklic ključa poteka z dodatkom preklicnega certifikata javnega ključa. Preklic ključa da vedeti, da ključ ni več veljaven (varen) in da se ga naj ne uporablja. Enkrat, ko je preklicni certifikat izdan, se ga ne da več preklicati.

Ker je vaš PGP ključ distribuiran (brei kroži) med ljudmi in se ne ureja z centralne točke morate distribuirati preklicni certifikat na isti način kot razširjate vaš javni ključ. Kroženje preklicnega certifikata na isti način kot vaš javni ključ bi navadno pomenilo, da preklicni certifikat pošljete na strežnike s ključi. Če ključa niste poslali na strežnik s ključi lahko kljub temu pošljete preklicni certifikat nanj (v tem primeru bi se poznala razlika med prosto dostopnostjo javnega ključa in nezmožnostjo opozorila oseb da je bil vaš ključ preklican).

Ponovno, ukaz za kreiranje preklicnega certifikata je sledeč:

[vab@firster vab]$ gpg --output revcert.asc --gen-revoke <key_id>

Če se vam dozdeva kdaj in kako je plišlo do komprimizacije vašega ključa in ste generirali preklicni certifilat med generacijo ključa, boste lahko še vedno generirali nov preklicni certifikat, za preklic vašega para ključev, to pa zato, ker vam openPGP omogoča, da opišete razlog preklica, ter napišete še nekaj teksta o tem zakaj ključ preklicujete. Kroženje takšnega preklicnega certifikata ima svoje prednosti in je bolj zaželjeno kot kroženje splošnega preklicnega certifikata generiranega med kreiranjem ključev.


Naprej Nazaj Kazalo