Specializovan² t²denφk o v²poΦetnφ technice |
|
Serißl o bezpeΦnosti a informaΦnφm soukromφ |
|
╚ßst 44 - CW 12/98
Zatracen∞ dobrΘ soukromφ s PGPVßclav MatyßÜ ml.
Asi jen st∞₧φ najdete n∞koho, kdo se ochom²tß okolo oboru poΦφtaΦovΘ bezpeΦnosti a nikdy neslyÜel o PGP. PGP se stalo bezesporu fenomΘnem pro mnohΘ u₧ivatele slu₧eb Internetu, p°edevÜφm pak e-mailu. Co vÜechno PGP umo₧≥uje? Nejnov∞jÜφ komerΦnφ verze umo₧≥ujφ spoustu vylepÜenφ a dodatk∙ jako nap°. certifikaΦnφ server (umo₧≥ujφcφ aplikaci hierarchickΘho modelu certifikace/d∙v∞ry), aplikace pro sprßvu bezpeΦnostnφ politiky pro SMTP atd., nßs ale v∞tÜinou zajφmß to, co si m∙₧eme nainstalovat sami a sami takΘ pou₧φvat (pokud mo₧no bezplatn∞). V kostce -- PGP umo₧≥uje jednoduchΘ Üifrovßnφ soubor∙ symetrickou Üifrou vßmi zvolen²m klφΦem, digitßlnφ podpis soubor∙ (vytvo°φ se MD5 haÜ souboru a ten se podepφÜe vaÜim soukrom²m klφΦem) a zaÜifrovßnφ soubor∙ "asymetrickou Üifrou" (v uvozovkßch proto, ₧e se ve skuteΦnosti pou₧φvß blokovß symetrickß Üifra s nßhodn∞ vygenerovan²m klφΦem, kter² je po zaÜifrovßnφ vlastnφho souboru teprve zaÜifrovßn zvolen²m ve°ejn²m klφΦem). Pokud nejste pravideln²mi Φtenß°i serißlu a "kryptohatmatilka" vßm nic ne°φkß, tak v Φßsti v∞novanΘ problΘm∙m s verzemi PGP najdete odkazy na relevantnφ Φlßnky serißlu, kterΘ "zßhadnΘ" pojmy vysv∞tlujφ. V zßjmu rychlosti p°enosu je p°i Üifrovßnφ vyu₧ita komprese (ZIP) a pro aplikace jako je t°eba e-mail se vyu₧φvß k≤dovßnφ dat p°es Radix-64. V podstat∞ tedy vÜe, co pot°ebujete pro bezpeΦnou komunikaci e-mailem, distribuci zaÜifrovan²ch soubor∙ p°es FTP/WWW Φi digitßlnφ podpis jak²chkoliv dat. To je tedy ono pov∞stnΘ PGP ? Ano a ne -- v²Üe uveden² v²Φet funkcφ nenφ vyΦerpßvajφcφ a je takΘ t°eba zvß₧it fakt, ₧e dnes se nejednß jen o samotnΘ PGP, ale o tisφce program∙ umo₧≥ujφcφch nap°. ÜifrovanΘ telefonovßnφ po Internetu, propojenφ PGP a program∙ pro e-mail atd. Vφce se o funkcφch PGP a jeho nßstaveb m∙₧ete doΦφst na URL uvßd∞n²ch v tab. 1, my se v dalÜφm podφvßme na v∞ci, kterΘ se tak Φasto nezmi≥ujφ, ale je dobrΘ o nich v∞d∞t.
Poj∩me ke klφΦovΘmu aspektu Zßkladnφ nßpov∞du lze zφskat spuÜt∞nφm pgp s parametrem -h; jako obvykle je vhodnΘ si skuteΦn∞ p°eΦφst pr∙vodnφ dokumentaci (tΘm∞° v₧dy b²vß p°ibalena v komprimovanΘm balφku, kter² si stßhnete). Na mnoh²ch univerzitßch je pgp u₧ nainstalovßn (p°edevÜφm na unixov²ch strojφch) -- m∙₧ete tak sob∞ uÜet°it prßci a jin²m kapacitu linky. StejnΘ klφΦe lze samoz°ejm∞ pou₧φvat na r∙zn²ch platformßch -- klφΦ vytvo°en² na laptopu Mac nebo Wintel lze bez problΘm∙ pou₧φvat pod Unixem. Vytvo°enφ klφΦe/klφΦ∙ je samoz°ejm∞ prvnφm st∞₧ejnφm krokem pro prßci s PGP. 1. Nejprve si °ßdn∞ zva₧te, kolik pßr∙ klφΦ∙ budete chtφt pou₧φvat. Tedy hlavn∞ se jednß o ochranu soukrom²ch klφΦ∙ t∞chto pßr∙. M∙₧ete stejn² klφΦ pou₧φvat na vÜech strojφch a systΘmech, kterΘ pou₧φvßte; m∙₧ete zvolit r∙znΘ klφΦe pro r∙znΘ ·rovn∞ bezpeΦnosti (jinΘ pro vaÜe osobnφ stroje pod vaÜφ v²hradnφ kontrolou a jinΘ pro firemnφ poΦφtaΦe, kde pou₧φvßte internetovΘ spojenφ). Na p°φkladu tabulek 2--4 vidφte n∞kterΘ mΘ osobnφ klφΦe. DelÜφ (2 048bitov²) pou₧φvßm jen jako zßlo₧nφ, soukrom² klφΦ nikdy nenφ na poΦφtaΦi, kter² je p°ipojen k jakΘkoliv sφti a pokud nenφ pou₧φvßn, tak je ulo₧en pouze na disketßch a ve vytiÜt∞nΘ ASCII podob∞, vÜe v zapeΦet∞nΘ obßlce na bezpeΦnΘm mφst∞. Tento klφΦ je hlavn∞ pou₧φvßn pro potvrzenφ (podpis) operaΦnφho klφΦe o dΘlce 1 024 bit∙. Tento kratÜφ klφΦ pou₧φvßm pro b∞₧nou komunikaci a mßm ho nainstalovßn na n∞kolika strojφch. Dßle mßm t°eba zvlßÜtnφ klφΦ pro podpis znßmek student∙ na brn∞nskΘ Fakult∞ informatiky MU -- tento klφΦ nenφ v∙bec pod mou sprßvou, tak₧e v n∞j mßm minimßlnφ d∙v∞ru. 2. Podle zp∙sobu oΦekßvanΘho pou₧itφ klφΦ∙ zvolte jejich vhodnou dΘlku a popisnΘ ·daje. Stßvajφcφ hranice bezpeΦnosti RSA klφΦ∙ je n∞co pod 600 bit∙, tak₧e doporuΦuji pro klφΦe, kterΘ budete b∞₧n∞ pou₧φvat v blφzkΘ budoucnosti, volit standardnφch 1 024 bit∙, p°φp. dΘlku nad 700 bit∙. V∞tÜφ dΘlka mß smysl v p°φpadech, kdy klφΦ mß b²t vazbou pro budoucφ aplikace nebo klφΦe a takΘ kdy rychlost kryptooperacφ nehraje velkou roli (pamatujte -- Φφm delÜφ klφΦ, tφm pomalejÜφ operace s nφm). Pro popisnΘ ·daje je samoz°ejm∞ vhodnΘ jmΘno a dßle je siln∞ doporuΦovßn e-mail, lze ale volit jakΘkoliv jinΘ ·daje (poÜtovnφ adresa ap.). Pokud budete pou₧φvat stejn² klφΦ pro e-mailovou komunikaci prost°ednictvφm vφce adres (a¥ ji₧ skuteΦnΘ e-mailovΘ schrßnky nebo jen p°esm∞rovßnφ poÜty), uve∩te vÜechny adresy v dodateΦn²ch popisn²ch ·dajφch a pro dokonalΘ zajiÜt∞nφ vazby t∞chto adres tyto v₧dy podepiÜte (viz tab. 4). 3. RozÜφ°enφ vaÜich ve°ejn²ch klφΦ∙ je dalÜφm st∞₧ejnφm krokem. ╖ Nejspolehliv∞jÜφ mechanismus samoz°ejm∞ je, kdy₧ sv²m partner∙m p°edßte osobn∞ (nap°. na disket∞) alespo≥ jeho vytiÜt∞nou ASCII podobu nebo otisk (haÜ) a potΘ zaÜlete klφΦ i elektronickou cestou -- partner pak m∙₧e podle vytiÜt∞nΘ informace zkontrolovat, zda dostal skuteΦn∞ ten prav² klφΦ. Pro tyto ·Φely je nap°. vhodnΘ uvßd∞t otisk klφΦe na vizitkßch atd. ╖ O n∞co mΘn∞ spolehlivou metodou je poslat klφΦ elektronickou cestou a haÜ sd∞lit telefonicky -- pokud druhß strana znß vßÜ hlas, p°φpadn∞ je schopna vßs "prov∞°it" otßzkami, na kterΘ m∙₧ete okam₧it∞ sprßvn∞ odpov∞d∞t jen vy ("jak se jmenovala tvoje prvnφ lßska na gymnßziu", "kde jsme byli naposled na pivu", "kdo zavinil krach naÜeho poslednφho projektu" atd.). MΘn∞ d∙v∞ryhodnou alternativou tΘto metody je Φist∞ elektronickß cesta, kdy tyto otßzky p°ijdou zaÜifrovßny vßmi dodan²m ve°ejn²m klφΦem, vy je musφte deÜifrovat (Φili b²t schnopni pou₧φt soukrom² klφΦ) a zodpov∞d∞t b∞hem krßtkΘho ΦasovΘho intervalu (s mφrnou nadsßzkou pak lze p°edpoklßdat, ₧e jste na n∞ skuteΦn∞ odpov∞d∞li vy). ╖ KlφΦe m∙₧e podepsat a tak "akreditovat" n∞kdo z vaÜich p°ßtel, kte°φ majφ svoje PGP klφΦe ji₧ dostateΦn∞ rozÜφ°eny. Podle toho, jakou d∙v∞ru ve vaÜe p°ßtele majφ jejich partne°i, tak dalece se bude d∙v∞°ovat vaÜim klφΦ∙m. PGP je z tohoto hlediska velmi propracovan² mechanismus -- tranzitivnφ d∙v∞ru lze pomocφ PGP spravovat velmi Üikovn∞. Registrace a ov∞°enφ (na r∙zn²ch ·rovnφch a tedy i s r∙zn²m hodnocenφm d∙v∞ry) pro PGP i WWW prohlφ₧eΦe a Entrust je takΘ mo₧nß v Global Trust Register (viz tab. 1), kter² vychßzφ jednou roΦn∞ v tiÜt∞nΘ a celosv∞tovΘ (a tedy obtφ₧n∞ji pad∞latelnΘ) podob∞, ale i ve formßtu PDF pro Acrobat Reader. ╖ KlφΦe lze pak takΘ rozÜφ°it na servery PGP klφΦ∙ (viz tab. 1), kam ale m∙₧e poslat faleÜnΘ klφΦe ka₧d² (zkuste si najφt nap°. klφΦe z whitehouse.gov), zp°φstupnit p°es WWW (nap°. jako www.cl.cam.ac.uk/~vm206/pgp_publ.html) nebo pro p°φkaz finger v souborech jako .plan (zkuste nap°. finger). Ve vÜech t∞chto p°φpadech je ale vhodnΘ mφt klφΦe podepsßny jin²mi akreditory, p°φp. rozÜφ°eny spolehliv²mi zp∙soby -- tyto metody jsou vhodnΘ pro Üirokou ve°ejnost, vaÜi d∙v∞rnφ p°ßtelΘ by m∞li zφskat vaÜe klφΦe spolehliv∞jÜφ cestou. Analogicky pak zφskejte ve°ejnΘ klφΦe vÜech stran, se kter²mi chcete do budoucna bezpeΦn∞ komunikovat. P°φpadn∞ si takΘ zjist∞te, zda existuje nadstavba nad PGP pro e-mailovΘ klienty, se kter²mi pracujete (vyjd∞te ze zdroj∙ v tab. 1).
Kde je verze 22? Existuje n∞kolik verzφ PGP -- verze p°ed 2.6 jsou dnes ji₧ z praktickΘho hlediska nezajφmavΘ; verze 2.6.x jsou dnes nejrozÜφ°en∞jÜφ; verze 3 byla Φist∞ komerΦnφ od firmy Viacrypt; verze 4 se "nekonala", aby se zabrßnilo zmatk∙m po koupi firmy Viacrypt firmou Pretty Good Privacy, Inc., kterß vypustila a₧ verzi 5.0; poslednφ verzφ dostupnou v dob∞ psanφ Φlßnku pak je verze 5.5. Je d∙le₧itΘ si povÜimnout rozdφlu mezφ verzemi p°ed zlomovou verzφ 5 a verzemi 5.0 a v²Üe. Zatφmco ni₧Üφ verze vyu₧φvaly algoritm∙ RSA (dφly 27 a 30) pro digitßlnφ podpis a asymetrickΘ Üifrovßnφ, IDEA (dφl 29) jako blokovou Üifru a MD5 pro haÜovßnφ (·vod do princip∙ Üifrovßnφ a haÜovßnφ lze nalΘzt v dφlu 26), tak verze 5 a vyÜÜφ podporujφ navφc i algoritmy El-Gamal/DSS (dφl 32) pro asymetrickou kryptografii, RIPEMD-160 a SHA-1 pro haÜovßnφ a blokovΘ Üifry CAST a 3-DES. Pokud pou₧φvßte PGP -- jakoukoliv verzi -- legßln∞ (bezplatn∞ pro osobnφ pou₧itφ nebo °ßdn∞ zakoupenou pro komerΦnφ vyu₧itφ), tak se nemusφte starat o patentovΘ poplatky. V²hoda verze 5 v implicitnφm nastavenφ je -- pro zem∞ jako USA -- ta, ₧e nepou₧φvß algoritmy, na kterΘ se vztahujφ komplikovanß patentovß prßva (a Φasto i poplatky). Nev²hoda je ta, ₧e klφΦe vytvo°enΘ pro verzi 5 s implicitnφm nastavenφm nelze pou₧φt v ni₧Üφch verzφch, proto₧e ty pou₧φvajφ klφΦe RSA. A abychom si nic nezastφrali, jednß se o naprosto zßsadnφ problΘm, zvlßÜt∞ u bezplatn²ch verzφ. Verze 5.0 existuje toti₧ v podstat∞ ve t°ech "variantßch" -- pravß bezplatnß verze nepracuje s RSA klφΦi, pot°ebn² upgrade je pot°eba zakoupit (naÜt∞stφ za velmi mal² poplatek); komerΦnφ verze pracuje s nov²mi i star²mi (RSA) klφΦi. Je takΘ vhodnΘ vzφt v potaz problΘmy s americkou exportnφ politikou v oblasti kryptografie (dφl 38) a pokud se rozhodnete PGP pou₧φvat, pak si nainstalujte mezinßrodnφ verzi PGP. TakΘ je pot°eba zvß₧it fakt, ₧e verze 5 a vyÜÜφ podporujφ mechanismy obnovy klφΦ∙ (key recovery), co₧ pro mnohΘ instalace (nap°. pou₧itφ ve firmßch atd.) je sice velkou v²hodou, ale pro jednotlivce znamenß spφÜe potencißlnφ hrozbu kompromitovßnφ klφΦe.
A je to!? Jakou verzi tedy nainstalovat? Pokud PGP budete pou₧φvat komerΦn∞, tak si jej rad∞ji °ßdn∞ zakupte, nejlΘpe verzi 5.5, p°φp. 5.0, vytvo°te si jak DSS, tak RSA klφΦe (a pokud budete chtφt bezpeΦn∞ komunikovat i s lidmi mimo vaÜi firmu, tak obojφ klφΦe rozÜi°te jak po serverech PGP klφΦ∙, tak i v registrech, jako je Global Trust Register -- odkazy najdete v tabulce Φ. 1). Pro osobnφ pou₧itφ je zatφm (dle mΘho osobnφho nßzoru) vhodn∞jÜφ pou₧φvat verze 2.6.2i nebo 2.6.3i, ale mφt takΘ nainstalovßnu n∞kterou z verzφ 5.x -- v∞tÜinou budete komunikovat s u₧ivateli 2.6.x, ale obΦas se najde n∞kdo s 5.x. PGP Inc. siln∞ tlaΦφ na rozÜφ°enφ verzφ 5.x, ale verze 2.6.x jsou mezi jednotlivci-u₧ivateli Internetu stßle v²razn∞ populßrn∞jÜφ. Velmi d∙le₧it²m rysem PGP je to, ₧e v∞tÜina verzφ je dostupnß nejen jako zkompilovanΘ balφky, ale takΘ jako zdrojov² program. Je tφm umo₧n∞na nezßvislß kontrola, kterΘ se mnozφ kutilovΘ a hacke°i (v kladnΘm slova smyslu) rßdi oddßvajφ a p°φpadnΘ nedostatky pak mohou prezentovat na ve°ejnosti. Princip je zde v podstat∞ stejn² jako u kryptografick²ch algoritm∙ -- rozsßhlß a neomezenß kontrola odbornou ve°ejnostφ odhalφ vφce chyb ne₧ jednorßzovΘ (a¥ u₧ jakkoliv dlouhΘ) otestovßnφ sebelepÜφmi odbornφky. Lze namφtat, ₧e takov² postup umo₧nφ "zl²m" hacker∙m vnΘst chyby do pozm∞n∞n²ch balφk∙ nabφzen²ch r∙zn²mi nßrodnφmi servery atd. Podobnß tvrzenφ -- jak o kryptoalgoritmech, tak i PGP -- najdete Φasto v ΦeskΘm tisku; nejΦast∞ji v "obvyklΘm" ΦeskΘm stylu -- zkritizovat sv∞tov∞ provozovanΘ °eÜenφ a nabφdnout jinou cestu, nejlΘpe beze zmφnky o vlastnφch zßjmech na prosazenφ tΘto cesty. ╚t∞te podobnΘ materißly pozorn∞ a v₧dy se dob°e dφvejte, co vßm jejich auto°i nabφzejφ jako nßhradu za "ÜpatnΘ °eÜenφ". (Pozorn∞ samoz°ejm∞ Φt∞te a zva₧ujte i informace tohoto serißlu!) Daly by se jeÜt∞ popisovat dalÜφ mo₧nosti PGP nebo trampoty jeho otce -- Phila Zimmermanna -- s americkou vlßdou, kterß se jej n∞kolik let pokouÜela zastraÜit hrozbou soudnφch °φzenφ a trest∙, ale nakonec se sama ve°ejnΘho soudnφho °φzenφ zalekla -- ale to u₧ je nßm∞t na jin² Φlßnek. PGP je nßstroj, kter² umo₧nil internetovΘ komunit∞ bezpeΦnou v²m∞nu informacφ. Je ideßlnφm zhmotn∞nφm ideje tohoto serißlu -- bezpeΦnostnφ nßstroj, kter² nßm umo₧≥uje zatracen∞ dobrou ochranu informaΦnφho soukromφ nßs a naÜich p°ßtel. ProΦ tedy o n∞m jenom Φφst -- zkuste to na vlastnφch strojφch.
www.pgp.net a ftp.pgp.net Tab. 1: -- Relevantnφ zdroje na Sφti
-----BEGIN PGP PUBLIC KEY BLOCK----- Version: 2.6.2i mQENAzSHHi8AAAEIANHoIiNFA8Mm9jCb4LYr+tXCdg29/vWNQg+OYStkuIAN AIMR9XZoHLWzrYI6o/3ndIisGgZjZe1x88/tFrb2T37UK1zthQd9/i+mmUAv zspJfr03........r6a5d0PtDR2TLKkaHX1ghWpb9Dmg/ysAqJLoucbYP+4Z eqBl2rZX2rD4k0HtK/+F9cJOqomhm+ckiNu9VkRtcoBSbQ===uRtX -----END PGP PUBLIC KEY BLOCK----- Tab. 2: Takto vypadß ASCII podoba ve°ejnΘho klφΦe, ze zßhlavφ je zjevnΘ o jakou verzi PGP se jednß
pub 2048/971D8145 1997/12/04 Vaclav Matyas Jr. - Long Term Key of 1997 <matyas@fi.muni.cz> Key fingerprint = B9 B3 F9 AA E5 1B 38 0E F9 DF 00 21 CA F6 87 57 Vaclav Matyas Jr. - Long Term Key of 1997 ID2 <Vaclav.Matyas@cl.cam.ac.uk> Tab. 3: Informace o ve°ejnΘm klφΦi z tabulky 2; lze se dozv∞d∞t dΘlku klφΦe (2 048 bit∙), identifikßtor klφΦe (971D8145), datum vytvo°enφ (4. prosince 1997), jmΘno a p°φp. dalÜφ ·daje o vlastnφkovi klφΦe (zbytek prvnφho °adku), otisk klφΦe (jeho MD5 haÜ) -- na druhΘm °ßdku, a p°φpadn∞ dalÜφ ·daje (alternativnφ e-mailovß adresa na t°etφm °ßdku).
pub 1024/275D0671 1996/10/09 Vaclav Matyas <Vaclav.Matyas@cl.cam.ac.uk> sig! 971D8145 1997/12/05 Vaclav Matyas Jr. - Long Term Key of 1997 <matyas@fi.muni.cz> sig! 4B2700B9 1997/01/15 Ross Anderson <rja14@cl.cam.ac.uk> sig! 275D0671 1996/10/10 Vaclav Matyas <Vaclav.Matyas@cl.cam.ac.uk> Vaclav Matyas <vm206@cam.ac.uk> sig! 275D0671 1996/10/11 Vaclav Matyas <Vaclav.Matyas@cl.cam.ac.uk> Vaclav Matyas <vm206@cl.cam.ac.uk> sig! 275D0671 1996/10/09 Vaclav Matyas <Vaclav.Matyas@cl.cam.ac.uk> Vaclav Matyas <matyas@informatics.muni.cz> sig! 275D0671 1996/10/10 Vaclav Matyas <Vaclav.Matyas@cl.cam.ac.uk> Vaclav Matyas <matyas@fi.muni.cz> sig! 275D0671 1996/10/10 Vaclav Matyas <Vaclav.Matyas@cl.cam.ac.uk> Tab. 4 Informace o jinΘm ve°ejnΘm klφΦi, kter² je mj. podepsßn klφΦem z tab. 2/3. VÜimn∞te si takΘ, ₧e vÜechny alternativnφ e-mailovΘ adresy jsou d∙sledn∞ podepsßny, aby se zabrßnilo jakΘkoliv mo₧nosti neautorizovanΘ modifikace.
| COMPUTERWORLD - serißl o bezpeΦnosti | COMPUTERWORLD | IDG CZ homepage | |