home *** CD-ROM | disk | FTP | other *** search
/ Chip 2003 April / Chip_2003-04_cd1.bin / tema / krypta / articles.php@ID=171 < prev    next >
Text File  |  2003-02-02  |  36KB  |  441 lines

  1. <!doctype html public "-//W3C//DTD HTML 4.0 Transitional//EN">
  2. <html>
  3. <head>
  4.  <title>Krypta.cz - Asymetrickß kryptografie v teorii a praxi</title>
  5.  <link rel="StyleSheet" href="server/main.css" type="text/css">
  6.  <link rel="SHORTCUT ICON" href="server/favicon.ico">
  7.  <meta http-equiv="Content-Type" content="text/html; charset=windows-1250">
  8.  <meta http-equiv="Cache-control" content="no-cache">
  9.  <meta http-equiv="Pragma" content="no-cache">
  10.  <meta http-equiv="Expires" content="0">
  11.  <meta name="robots" content="ALL,FOLLOW">
  12.  <meta http-equiv="Content-language" content="cs">
  13.  <meta name="description" content="Internetov² bezpeΦnostnφ portßl, zab²vajφcφ se kryptografiφ (Üifrovßnφm), ochranou dat, internetovou bezepeΦnostφ a poΦφtaΦov²mi viry">
  14.  <meta name="keywords" content="Üifrovßnφ cryptography pgp des aes rsa dss digital signatures pki linux free bezpeΦnost ochrana hacking cracking virus worm">
  15.  <meta name="copyright" content="Copyright (C) 2000-2002 Krypta.cz - <a href=mailto:michal.till@krypta.cz>Michal Till</a> a <a href=mailto:jan.kulveit@krypta.cz>Jan Kulveit</a>.">
  16.  <!-- No caching for this document.Trying to write to art171.html. ?> -->
  17.  
  18.  <!-- output.php -->
  19.  
  20.   <script language="JavaScript">
  21.   <!-- 
  22. //    if(top != self) { window.top.location.href=document.location; }  -->
  23.   </script>
  24.  
  25.  
  26. <!-- NAVRCHOLU.cz -->
  27. <script language="JavaScript" type="text/javascript">
  28. <!--
  29. pxDepth = screen.pixelDepth;
  30. if (!(pxDepth > 0))
  31.     pxDepth = screen.colorDepth;
  32. if (!(pxDepth > 0))
  33.     pxDepth = 0; 
  34. document.write("<img style=\"position:absolute; top:0px; left: 0px;\" src=\"../hit.navrcholu.cz/hit@id=00039669;n=1;screenx=" + screen.width + ";screeny=" + screen.height + ";cdepth=" + pxDepth + ";ref=" + escape(top.document.referrer) + "\" width=\"1\" height=\"1\" alt=\"\">");
  35. // -->
  36. </script>
  37. <noscript>
  38. <img style="position:absolute; top:0px; left: 0px;" src="../hit.navrcholu.cz/hit@id=00039669;n=1" width="1" height="1" alt="" border="0">
  39. </noscript>
  40. <!-- NAVRCHOLU.cz - konec -->
  41.  
  42. <STYLE Type=text/css>
  43.     BODY                { font-size:110%; background-color: #ffffff; color: #000000; margin: 0px;   background-image: url(images/backgr.gif); }
  44.  
  45.  
  46.  
  47.     .Copyright        { color: #000000; }
  48.     .Copyright A    { color: #000000; }
  49. </STYLE>
  50. </head>
  51. <SCRIPT>
  52. </SCRIPT><SCRIPT Src=charts.php@version=1621></SCRIPT><SCRIPT>
  53.  // Nalezeno  1 polozek. 
  54. var SectionTitles=new Array( "Asymetrickß kryptografie v teorii a pra" , "    MerklyÆs puzzle" , "    Asymetrickß kryptografie" , "    The Knapsack algorithm" , "    Man in the middle attack" , "    Interlock protokol" , "    Digitßlnφ podpisy" , "    D∙v∞ryhodnß t°etφ strana" , "    Public Key Infrastructure" , "    Podepisovacφ a Üifrovacφ klφΦe" , "    KombinovanΘ systΘmy" );
  55. var SectionURLs=new Array( "171" , "171#Title1" , "171#Title2" , "171#Title3" , "171#Title4" , "171#Title5" , "171#Title6" , "171#Title7" , "171#Title8" , "171#Title9" , "171#Title10" );
  56.  
  57. var BrothersNames = new Array("");
  58. var BrothersIDs = new Array("");
  59. //=====INFO======
  60. ItemName='Article171';
  61.  
  62. InIFrame='No';
  63. TableNum=2; 
  64. ItemID=171; 
  65. ArticleType='1'; 
  66. Action='articles'
  67. ItemTitle='Asymetrickß kryptografie v teorii a praxi';
  68. ItemComment='Asymetrickß kryptografie v teorii a praxi';
  69. TabName='Articles'
  70. Parent1Title='Asymetrickß kryptografie' ;
  71. Parent2Title='Kryptografie' ;
  72. Parent1ID='6' ;
  73. Parent2ID='4' ;
  74. ParentTitle='Asymetrickß kryptografie' ;
  75. AuthorName='Michal Till' ;
  76. AuthorDesc='' ;
  77. AuthorEMail='Michal.Till@Seznam.cz' ;
  78. AuthorID='1' ;
  79. ItemDate='4.4.2002';
  80. Views='284' ;
  81. Average='1.67' ;
  82. Grade='1.67' ;
  83. NumVotes='3' ;
  84. SourceName='' ;
  85. SourceURL='' ;
  86. SourceLink='' ;
  87. Ref1URL='' ;
  88. Ref2URL='' ;
  89. Ref3URL='' ;
  90. Ref4URL='' ;
  91. Ref5URL='' ;
  92. Ref1Link='' ;
  93. Ref2Link='' ;
  94. Ref3Link='' ;
  95. Ref4Link='' ;
  96. Ref5Link='' ;
  97. Ref1Desc='' ;
  98. Ref2Desc='' ;
  99. Ref3Desc='' ;
  100. Ref4Desc='' ;
  101. Ref5Desc='' ;
  102. Possible=1 ;
  103. Answer1='' ;
  104. Answer2='' ;
  105. Answer3='' ;
  106. Answer4='' ;
  107. Answer5='' ;
  108. Num1='';
  109. Num2='';
  110. Num3='';
  111. Num4='';
  112. Num5='';
  113. Type= ''; //def
  114. WebName='Krypta.cz';
  115. //====ENDINFO======
  116.  
  117. </SCRIPT>
  118.  
  119. <BODY>
  120. </SCRIPT>
  121. <SCRIPT Language=JavaScript Src="server/startfeatures.php@Rand=ddd "> </SCRIPT><SCRIPT Language=JavaScript Src="server/features.php"> </SCRIPT><!-- Rozdeleni na sloupce -->
  122.  
  123. <TABLE cellspacing="0" cellpadding="0" border="0" width="100%">
  124. <tr>
  125.  
  126. <!-- Levy sloupec -->
  127.  
  128.  
  129.  
  130. <td  width="161" align="center" valign="top">
  131.  
  132. <img src=space.gif height=1 width=161>
  133. <SCRIPT SRC=server/left_js.php@version=1621></SCRIPT></td>
  134.  
  135. <!-- /Levy sloupec -->
  136.  
  137. <!-- Mezera 1-->
  138. <td width=13 bgcolor="#006792" ><img src="images/spacer.gif" width="13" height="1" border="0" alt=""></td>
  139. <!-- /Mezera 1-->
  140.  
  141. <!-- Mezera 2 -->
  142. <td width=1 bgcolor=#1063A5><img src="images/spacer.gif" width="1" height="1" border="0" alt=""></td>
  143. <!-- /Mezera 2-->
  144.  
  145. <!-- Mezera 3 -->
  146. <td width=10><img src="images/spacer.gif" width="10" height="1" border="0" alt=""></td>
  147. <!-- /Mezera 3-->
  148.  
  149.  
  150. <!-- Prostredni sloupec -->
  151. <td align="center" valign="top">
  152.  
  153. <!-- Hlavicka -->
  154. <!-- Horni lista s reklamou -->
  155.  
  156. <TABLE cellspacing="0" cellpadding="0" border="0" width="100%" class="hrlista">
  157. <tr>
  158.  
  159. <!-- Logo-->
  160. <td VAlign=Top>
  161. <a href="default.htm"><img src="images/logo.gif"  style="z-index:100;" vspace=0 cwidth="222" cheight="48" border="0" alt="Krypta.cz - Magazφn o informaΦnφ bezpeΦnosti"></a>
  162. </td>
  163. <!-- /Logo -->
  164.  
  165. <td align=center>
  166. </td></tr></table>
  167. <!-- /Horni lista s reklamou-->
  168. <!-- /Hlavicka -->
  169.  
  170. <TABLE Width=100% Border=0><TD><SCRIPT>
  171. </SCRIPT><SCRIPT>
  172. ArticleHead('Asymetrickß kryptografie v teorii a praxi', 'Michal Till', 'Michal.Till@Seznam.cz', '4.4.2002', '20:40:44', '╚lßnek');
  173. Intro('(Kompilace starÜφch Φlßnk∙). Co je asymetrickß kryptografie? Jakß je jejφ historie, jakΘ byly prvnφ lagoritmy a jakß je praxe dnes? Dnes se v kompilaci nov²ch p°φsp∞vk∙ a starÜφch Φlßnk∙ podφvßme na tuto problematiku komplexn∞ a od zßklad∙. Povφme si o Merklyho sklßdaΦk²ch, batohovΘm algoritmu, hybridnφch systΘmech...');
  174. ArticleBanner_smallres('margin-bottom:10px;margin-top:-3px;');
  175. </SCRIPT>
  176. <DIV Class=Article><SCRIPT>
  177. AuthorData();
  178. if (Type != 'Pure') if ((ArticleType!=19) && (ArticleType!=20)) ShowSections();
  179. ArticleBanner_bigres('margin-top:12px;margin-bottom:-3px;');
  180. </SCRIPT><FONT Size=2><DIV Align=Justify Class=Paragraph>
  181.     SymetrickΘ Üifrovacφ algoritmy jsou v₧dy zalo₧eny na sdφlenΘm tajemstvφ. Kdo znß klφΦ, mß p°φstup k otev°enΘmu textu. Pokud Alice a Bob nesdφlφ klφΦ, nemohou spolu bezpeΦn∞ komunikovat. A prßv∞ bezpeΦnß distribuce Üifrovacφho klφΦe je hlavnφ a nutnß podmφnka pro ·sp∞ÜnΘ pou₧itφ asymetrickΘ kryptografie v praxi. Nenφ toti₧ mo₧nΘ klφΦ p°enßÜet tφm sam²m kanßlem jako nßsledujφcφ zprßvy, takov² postup je pro ob∞ strany naprosto nesmysln². Pokud tento kanßl pova₧ujeme za bezpeΦn² tak v∙bec nemusφme kryptografii pou₧φvat a pokud nikoli, tak je p°enos Üifrovacφho klφΦe naprosto zcestn². 
  182. </DIV></FONT></b></i>
  183. <FONT Size=2><DIV Align=Justify Class=Paragraph>
  184.     Tyto algoritmy ale nevznikly änarßzô a jejich v²voji p°edchßzφ n∞kolik zajφmav²ch systΘm∙, kterΘ ukazujφ zßkladnφ myÜlenky pozd∞ji objevenΘ asymetrickΘ kryptografie.
  185. </DIV></FONT></b></i>
  186. <A Name="Title1"><FONT Size=3><DIV Class=Headline>MerklyÆs puzzle</DIV></font>
  187. <FONT Size=2><DIV Align=Justify Class=Paragraph>
  188.     ╪φkß se, ₧e Merklyho sklßdaΦky byly prvnφm pokusem o bezpeΦnou distribuci hesla, tedy o to, aby se dva subjekty nemusely bßt, ₧e se n∞kdo dozvφ Üifrovacφ klφΦ p°i jeho domluv∞ (tento po₧adavek je hnacφ motor vynßlezu as. k.). Zaklßdß se na nßsledujφcφm jednoduchΘm principu. Alice si vytvo°φ a uschovß (dlouh²) seznam potencionßlnφch klφΦ∙. Tyto klφΦe budeme naz²vat komunikaΦnφ. Dßle vezme generßtor (pseudo)nßhodn²ch Φφsel a vygeneruje stejn∞ poΦetnou mno₧inu klφΦ∙ doΦasn²ch. Ka₧d² komunikaΦnφ klφΦ zaÜifruje jednφm klφΦem doΦasn²m a v²sledn² äbalφkô odeÜle Bobovi Ten si vybere z balφku nßhodnou polo₧ku (jeden komunikaΦnφ klφΦ zaÜifrovan² doΦasn²m klφΦem) a deÜifruje ho hrubou silou (p°edpoklßdß se, ₧e Alice pou₧ila skuteΦn∞ dobr² Üifrovacφ algoritmus, tak₧e Bob m∙₧e pou₧φt pouze tento druh ·toku). Dostane heslo, tj. deÜifrovan² komunikaΦnφ klφΦ, kter²m heslem zaÜifruje dohodnutou zprßvu (nemusφ b²t tajnß) a poÜle ji Alici. Ta sice nevφ jakΘ heslo si Bob vybral, ale m∙₧e se odkßzat na p∙vodnφ nezaÜifrovan² seznam jφ vymyÜlen²ch komunikaΦnφch hesel a vÜechny je vyzkouÜet, Φφm₧ si prßv∞ dohodli heslo. P°φpadn² ·toΦnφk by musel deÜifrovat hesla vÜechna. P°esto₧e je tato metoda zajφmavß, je jasnΘ, ₧e je v praxi nepou₧itelnß, a to hned z n∞kolika d∙vod∙. P°edn∞ Φas nutn² k zφskßnφ dohodnutΘho klφΦe (p°i odposlechu spojenφ) roste pouze lineßrn∞ s poΦtem Alicφ odeslan²ch klφΦ∙. P°i exponencißlnφm r∙stu v²konu poΦφtaΦ∙ (1,7x za rok) by to znamenalo stejn² r∙st velikosti p°enßÜenΘho souboru, pokud bychom cht∞li zachovat stejnou bezpeΦnost. Vzhledem ke zmi≥ovanΘ linearit∞ takΘ cel² systΘm zhavaruje p°i pou₧itφ distribuovan²ch v²poΦt∙.
  189. </DIV></FONT></b></i>
  190. <A Name="Title2"><FONT Size=3><DIV Class=Headline>Asymetrickß kryptografie</DIV></font>
  191. <FONT Size=2><DIV Align=Justify Class=Paragraph>
  192.     Kryptografie s ve°ejn²m klφΦem (neboli asymetrickß) je zalo₧enß na odliÜnΘm principu ne₧ kryptografie s klφΦem tajn²m. Mφsto jednoho klφΦe mß ka₧dß komunikujφcφ strana klφΦe dva. Pomocφ jednoho z nich zprßvu m∙₧eme zaÜifrovat a on si jφ sßm m∙₧e deÜifrovat pouze pomocφ druhΘho. KlφΦi pomocφ kterΘho se Üifruje (ten dßme ve°ejn∞ k dispozici, abychom mohli p°ijφmat ÜifrovanΘ zprßvy) se °φkß ve°ejn² klφΦ (odtud nßzev, sprßvn∞ji by ale bylo äkryptografie s ve°ejn²m a soukrom²m klφΦemô) a klφΦi, pomocφ kterΘho si zprßvu p°φjemce deÜifrujeme (ten si pochopiteln∞ chrßnφme) se °φkß tajn² klφΦ (soukrom², privßtnφà). Pomocφ pokroΦilΘ matematiky lze k n∞kter²m ·Φel∙m pou₧φt oba klφΦe k opaΦn²m operacφm, Φeho₧ se vyu₧φvß nap°. u digitßlnφch podpis∙ (viz nφ₧e). Pro pochopenφ architektury systΘmu je tedy nejd∙le₧it∞jÜφ, ₧e nikdy se nem∙₧e Üifrovat a deÜifrovat tφm sam²m klφΦem, v₧dy musφme pro deÜifrovßnφ pou₧φt ten druh². Oba tyto klφΦe jsou spolu dle pou₧itΘho algoritmu matematicky spjaty, pochopiteln∞ ale ne natolik, aby se dal jeden z druhΘho odvodit. 
  193. </DIV></FONT></b></i>
  194. <A Name="Title3"><FONT Size=3><DIV Class=Headline>The Knapsack algorithm</DIV></font>
  195. <FONT Size=2><DIV Align=Justify Class=Paragraph>
  196.     Tzv. batohov² algoritmus (zalo₧en na batohovΘm problΘmu) je jeden z prvnφch pokus∙ jak se vyrovnat s popisovanou hlavnφ nev²hodou symetrickΘ kryptografie û s nutnostφ bezpeΦnΘho p°enosu Üifrovacφho klφΦe p°edtφm, ne₧ se vlastnφ Üifra pou₧ije. MatematickΘ schΘma, na kterΘm systΘm stojφ, pat°φ do kategorie tzv. NP-complete (non-polynomial, tedy kompletn∞ nepolynomißlnφch) problΘm∙. ╪eÜenφ takov²chto ·loh nenφ zatφm znßmΘ v polynomißlnφm, n²br₧ pouze v exponencißlnφm Φase. VÜechny takovΘto problΘmy jsou na sebe navzßjem p°evoditelnΘ. Pokrok v °eÜenφ jednoho z nich se tedy promφtne na vÜech ostatnφch. 
  197. </DIV></FONT></b></i>
  198. <FONT Size=2><DIV Align=Justify Class=Paragraph>
  199.     Nutno ovÜem podotknout, ₧e algoritmus byl zßhy po svΘm zve°ejn∞nφ rozbit. Samotn² problΘm ale vy°eÜen nebyl. Navr₧enΘ kryptografickΘ schΘma toti₧ neodpovφdalo matematickΘmu problΘmu ·pln∞. Privßtnφ klφΦ, jak se po zkoumßnφ zjistilo, je mo₧nΘ mo₧nΘ vypoΦφtat z klφΦe ve°ejnΘho i bez °eÜenφ p°φsluÜnΘ obtφ₧nΘ ·lohy, tj. batohu v danΘ konfiguraci (viz dßle). 
  200. </DIV></FONT></b></i>
  201. <FONT Size=2><DIV Align=Justify Class=Paragraph>
  202.     M∞jme k dispozici mno₧inu v∞cφ, ka₧dou o urΦitΘ kladnΘ hmotnosti. NaÜφm ·kolem je vybrat takovou podmno₧inu, aby jejφ celkovß "hmotnost" byla rovna n∞jakΘ hodnot∞ w. Jak se ·loha m∙₧e jevit na prvnφ pohled jednoduchß, ve skuteΦnosti Φas pot°ebn² k °eÜenφ nar∙stß exponencißln∞ s celkov²m poΦtem p°edm∞t∙. Na druhou stranu existujφ batohy, jejich₧ °eÜenφ je trivißlnφ. Je to v p°φpad∞, ₧e hmotnost ka₧dΘ polo₧ky nenφ ni₧Üφ, ne₧ hmotnost polo₧ek p°edchßzejφcφch dohromady. Tento batoh naz²vßme superrostoucφ (superincreasing).
  203. </DIV></FONT></b></i>
  204. <FONT Size=2><DIV Align=Justify Class=Paragraph>
  205.     P°i jeho °eÜenφ nejprve vezmeme nejt∞₧Üφ objekt. Pokud je jeho hmotnost menÜφ ne₧ celkovß po₧adovanß suma w, za°adφme jej do ôpou₧it²chö v∞cφ a od w jeho hmotnost odeΦteme. Pokud ne, nechßme jej b²t a pokraΦujeme dßle. Pokud jsme po prozkouÜenφ vÜech v∞cφ nedosßhli cht∞nΘ hmotnosti (tj. kdy₧ w se nerovnß 0), nemß ·loha s tφmto zadßnφm °eÜenφ.
  206. </DIV></FONT></b></i>
  207. <FONT Size=2><DIV Align=Justify Class=Paragraph>
  208.     Konverze z tajnΘho klφΦe, tj. ze superrostoucφho batohu, na klφΦ ve°ejn², tj. na normßlnφ obtφ₧n∞ °eÜiteln² batoh) bude probφhat nßsledujφcφm zp∙sobem. Zvolφme modulo m, co₧ bude Φφslo v∞tÜφ ne₧ celkov² souΦet hodnot ("hmotnost") w. Dßle zvolφme druhΘ Φφslo n tak, ₧e (n,m)=1, jin²mi slovy v a m odeΦteme jsou nesoud∞lnß. Vynßsobφme ka₧dou hodnotu prvku mno₧iny Φφslem n (mod m) a k zaÜifrovßnφ jednoho bitu pou₧ijeme 1, pokud jsme p°φsluÜn² objekt do batohu zahrnuli a 0 pokud ne. 
  209. </DIV></FONT></b></i>
  210. <FONT Size=2><DIV Align=Justify Class=Paragraph>
  211.     P°φjemce vynßsobφ hodnoty zaÜifrovanΘho textu z mod m, co₧ p°edstavuje inverzi n mod m a pou₧ije vznikl² superrostoucφ batoh k deÜifrovßnφ zprßvy. Pokud tedy platφ, ₧e a*z je kongruentnφ s 1 (mod m), snadno ukß₧eme, ₧e (a*n mod m)*z mod m = a. Tohoto vztahu budeme vyu₧φvat p°i vzßjemnΘm p°epoΦφtßvßnφ (tj. vlastn∞ Üifrovßnφ a deÜifrovßnφ) z normßlnφho batohu do superrostoucφho a naopak.
  212. </DIV></FONT></b></i>
  213. <FONT Size=2><DIV Align=Justify Class=Paragraph>
  214.     Uva₧me tedy batoh [3,4,9,19,38,77]. Zvolφme modul m, nap°φklad 155. Jako s m nesoud∞lnΘ n zvolφme t°eba 27. Nynφ vypoΦφtßme hodnoty obtφ₧n∞ °eÜitelnΘho batohu. 3*27 mod 155 = 81, 4*27 mod 155 = 108 apod, celkov∞ budeme Üifrovat s ve°ejn²m klφΦem [81,108,88,48,96,64]. 
  215. </DIV></FONT></b></i>
  216. <FONT Size=2><DIV Align=Justify Class=Paragraph>
  217.     Budeme chtφt zaÜifrovat zprßvu 100110 001101 010001. Podφvßme-li se na prvnφ blok, nalezneme hodnoty 1 na prvnφm, ΦtvrtΘm a pßtΘm mφst∞. To odpovφdß Φφsl∙m 81, 48 a 96 ve ve°ejnΘm batohu, zaÜifrovan² text tedy bude 81+48+96=225. Obdobn∞ 001101 odpovφdß 88+48+64=200 a 010001 odpovφdß 108+64=172. V²sledn² zaÜifrovan² text je tedy [255,200,172]. Jak u₧ bylo °eΦeno, pro deÜifrovßnφ musφme znßt z pro kterΘ platφ n*z = = 1  (mod m) (= = zde p°edstavuje kongruenci). S pomocφ tohoto Φφsla jednoduÜe pro ka₧d² blok spoΦφtßme b*z (mod m). V naÜem p°φpad∞ z=23.
  218. 225*23 mod 155 = 60  = 3+19+38 = 100110, 200*23 mod 155 = 105 = 9+19+77 = 001101 a 172*23 mod 155 = 81  = 4+77    = 010001. Dostali jsme v²slednou hodnotu 100110 001101 010001, kterß odpovφdß p∙vodnφ zprßv∞.
  219. </DIV></FONT></b></i>
  220. <FONT Size=2><DIV Align=Justify Class=Paragraph>
  221.     Pozd∞ji bylo batohovΘ schΘma äobohacenoô o mo₧nost digißlnφho podpisu dokument∙, obdobn∞ jak je tomu mo₧nΘ  jako nap°φklad u algoritmu RSA. O prolomenφ tohoto schΘmatu si m∙₧ete p°eΦφst nap°φklad na http://www.cs.wm.edu/~hallyn/public_key/break.html</a> (z tohoto webu byl p°evzat p°φklad). Pozd∞ji byl tento algoritmus zkouÜen jako iteraΦnφ. ╪φkß se, ₧e se Ralph Merkle vsadil o tisφc dolar∙, ₧e nikdo nerozluÜtφ zprßvu 40ti-nßsobn∞ zaÜifrovanou. Prohrßl.
  222. </DIV></FONT></b></i>
  223. <A Name="Title4"><FONT Size=3><DIV Class=Headline>Man in the middle attack</DIV></font>
  224. <FONT Size=2><DIV Align=Justify Class=Paragraph>
  225.     SchΘma, kterΘ jsme si zatφm nastφnili, bohu₧el poho°φ na n∞kter²ch situacφch, kterΘ by mohli v praxi reßln∞ nastat. Man-in-the-middle attack je jeden z nejznßm∞jÜφch problΘm∙ v informaΦnφ bezpeΦnosti, na kter² se p°i v²voji asymetrick²ch kryptografick²ch technik primßrn∞ bralo ohled. Poznejme tedy, v Φem je jeho sφla a pokusme si vysv∞tlit, jakß opat°enφ je mo₧nΘ ud∞lat.
  226. </DIV></FONT></b></i>
  227. <FONT Size=2><DIV Align=Justify Class=Paragraph>
  228.     Alice nejen₧e neumφ Üachy, ale ani je nikdy nehrßla a tedy neznß pravidla. P°esto ovÜem existuje zp∙sob, jak²m m∙₧e porazit ÜachovΘho velmistra. P°edstavte si, ₧e oslovφ nezßvisle na sob∞ Kasparova a Karpova, p°iΦem₧ ani jeden z nich nevφ o oslavenφ toho druhΘho. Posadφ je do dvou odd∞len²ch mφstnostφ a dß p°ed n∞ dv∞ (r∙znΘ) Üachovnice tak, aby jeden z nich m∞l bφlΘ a druh² ΦernΘ, tedy prßv∞ jeden z nich bude zaΦφnat. K tomu si sedne a poΦkß a₧ zahraje prvnφ tah. Zapamatuje si ho, odejde do druhΘ mφstnosti a zahßjφ partii odkoukan²m tahem. PoΦkß na odpov∞∩ a tu zahraje op∞t v prvnφ mφstnosti. Takto bude pokraΦovat dokud s jednφm z nich nevyhraje (s druh²m prohraje), nebo dokud ob∞ partie neskonΦφ remφzou.
  229. </DIV></FONT></b></i>
  230. <FONT Size=2><DIV Align=Justify Class=Paragraph>
  231.     ProblΘm Üachist∙ z tohoto p°φkladu (tzv. Chess-grandmaster problem) je v tom, ₧e nemajφ ₧ßdn² d∙kaz, ₧e skuteΦn∞ hrajφ s Alicφ. Jak by takΘ mohli, kdy₧ ve skuteΦnosti hrajφ oba spolu a Alice je jenom jak²msi prost°ednφkem. Obdobn² problΘm se objevuje v modernφ kryptografii odjak₧iva: Alice a Bob spolu cht∞jφ bezpeΦn∞ komunikovat a jeliko₧ znajφ principy asymetrickΘho Üifrovßnφ tak v∞dφ, ₧e je to mo₧nΘ, ani₧ by si museli p°edem dohodnout symetrick² Üifrovacφ klφΦ. Uka₧me si, jak by v p°φpad∞ neznalosti popisovanΘho problΘmu postupovali.
  232. </DIV></FONT></b></i>
  233. <FONT Size=2><DIV Align=Justify Class=Paragraph>
  234.     1. Alice poÜle Bobovi sv∙j ve°ejn² klφΦ.
  235. </DIV></FONT></b></i>
  236. <FONT Size=2><DIV Align=Justify Class=Paragraph>
  237.     2. Bob poÜle Alici sv∙j ve°ejn² klφΦ. Tφm majφ navzßjem svoje klφΦe a m∙₧ou bezpeΦn∞ komunikovat.
  238. </DIV></FONT></b></i>
  239. <FONT Size=2><DIV Align=Justify Class=Paragraph>
  240.     3. Jeden posφlß druhΘmu stejn²m kanßlem tajnΘ zaÜifrovanΘ zprßvy.
  241. </DIV></FONT></b></i>
  242. <FONT Size=2><DIV Align=Justify Class=Paragraph>
  243.     P°φpadn² ·toΦnφk M (Mallory) uprost°ed obejde ob∞ strany velmi jednoduÜe: 
  244. </DIV></FONT></b></i>
  245. <FONT Size=2><DIV Align=Justify Class=Paragraph>
  246.     1. Alice poÜle sv∙j ve°ejn² klφΦ.
  247. </DIV></FONT></b></i>
  248. <FONT Size=2><DIV Align=Justify Class=Paragraph>
  249.     2. Mallory ho zachytφ a mφsto toho Bobovi odeÜle sv∙j ve°ejn² klφΦ.
  250. </DIV></FONT></b></i>
  251. <FONT Size=2><DIV Align=Justify Class=Paragraph>
  252.     3. Bob poÜle sv∙j ve°ejn² klφΦ.
  253. </DIV></FONT></b></i>
  254. <FONT Size=2><DIV Align=Justify Class=Paragraph>
  255.     4. Mallory ho zachytφ a mφsto toho Alici odeÜle sv∙j ve°ejn² klφΦ.
  256. </DIV></FONT></b></i>
  257. <FONT Size=2><DIV Align=Justify Class=Paragraph>
  258.     Nynφ, stejn∞ jako v p°φpadu dvou Üachist∙, ka₧dß ze stran komunikuje ve skuteΦnosti s jin²m subjektem, ne₧ si myslφ. Alice pova₧uje obdr₧en² klφΦ za Bob∙v, Bob za Alicin. Mφsto toho ale ob∞ majφ klφΦ Mallory. Jakßkoliv poslanß data Mallory zachytφ, deÜifruje sv²m tajn²m klφΦem, p°eΦte si to (pop°. zm∞nφ), zaÜifruje ve°ejn²m klφΦem druhΘ strany a odeÜle dßle. P°φjemce (Bob) nic nepoznß, dokonce ani v p°φpad∞, ₧e by zprßva byla Alicφ digitßln∞ podepsßna, nebo¥ Mallory to m∙₧e ud∞lat toti₧ stejn∞ tak. 
  259. </DIV></FONT></b></i>
  260. <A Name="Title5"><FONT Size=3><DIV Class=Headline>Interlock protokol</DIV></font>
  261. <FONT Size=2><DIV Align=Justify Class=Paragraph>
  262.     P°esn∞ takovΘmuto druhu ·toku se °φkß Man-in-the-middle Attack, od toho takΘ M, Mallory. Interlock protokol je zajφmav² protokol, kter² tento nep°φjemn² ·tok dokß₧e osob∞ uprost°ed p°enosu ztφ₧it mo₧nost zm∞ny zprßvy. Cel² systΘm, vynalezen² Ronem Rivestem a Adi Shamirem, probφhß podle nßsledujφcφho schΘmatu.
  263.  
  264. 1. Alice poÜle Bobovi sv∙j ve°ejn² klφΦ
  265. </DIV></FONT></b></i>
  266. <FONT Size=2><DIV Align=Justify Class=Paragraph>
  267.     2. Bob poÜle Alici sv∙j ve°ejn² klφΦ
  268. </DIV></FONT></b></i>
  269. <FONT Size=2><DIV Align=Justify Class=Paragraph>
  270.     3. Alice zaÜifruje svojφ zprßvu Bobov²m ve°ejn²m klφΦem a poÜle mu prvnφ polovinu
  271. </DIV></FONT></b></i>
  272. <FONT Size=2><DIV Align=Justify Class=Paragraph>
  273.     4. Bob zaÜifruje svojφ zprßvu Alicin²m ve°ejn²m klφΦem a poÜle jφ polovinu
  274. </DIV></FONT></b></i>
  275. <FONT Size=2><DIV Align=Justify Class=Paragraph>
  276.     5. Alice poÜle Bobovi druhou polovinu.
  277. </DIV></FONT></b></i>
  278. <FONT Size=2><DIV Align=Justify Class=Paragraph>
  279.     6. Bob sestavφ zprßvy dohromady, deÜifruje je a poÜle Alici druhou Φßst svΘ zprßvy.
  280. </DIV></FONT></b></i>
  281. <FONT Size=2><DIV Align=Justify Class=Paragraph>
  282.     Nejd∙le₧it∞jÜφ vlastnost schΘmatu je, ₧e zprßvy nesmφ b²t Φitelnß, resp. deÜifrovatelnΘ, pokud nejsou k dispozici ob∞ poloviny. Jedna (jakßkoliv) polovina zprßvy sama o sob∞ nesmφ znamenat nic. Toho se m∙₧e dosßhnout nap°φklad tak, ₧e zaÜifrovanß zprßva se prost∞ rozd∞lφ na sudΘ a lichΘ bity a ty budou tvo°it dv∞ "poloviny". Pop°φpad∞ pokud je deÜifrovacφ proces zßvisl² na inicializaΦnφm vektoru, m∙₧e tento vektor b²t ve druhΘ polovin∞, ne₧ vlastnφ zprßva.
  283. </DIV></FONT></b></i>
  284. <FONT Size=2><DIV Align=Justify Class=Paragraph>
  285.     Pokud vßm nenφ jasnΘ, jak jsme tφm ztφ₧ili Mallory(mu) man-in-the-middle ·tok, pokuste se protokol podvrhnou (tj. zm∞nit p°enßÜenß data, prost² odposlech je samoz°ejm∞ stßle mo₧n²). P°φpadn² ·toΦnφk samoz°ejm∞ stßle m∙₧e podvrhnout ve°ejnΘ klφΦe obou stran ve krocφch 1 a 2. Jen₧e v kroku 3 mß v ruce pouze jednu polovinu zprßvy urΦenΘ pro Boba a s nφ nem∙₧e nic d∞lat. Pokud jφ nechce poslat, musφ vytvo°it zbrusu novou zprßvu a tu odeslat mφsto p∙vodnφ. V kroku 4 mß ·pln∞ stejn² problΘm se zprßvou pro Alici. Op∞t musφ vymyslet jinou, vlastnφ zprßvu. A₧ v kroku 5 a 6 odchytne druhΘ poloviny zprßv, bude u₧ pozd∞ na to, aby zfalÜoval poloviny prvnφ, proto₧e ty u₧ budou dßvno odeslßny. Nezbude mu nic jinΘho, ne₧ odeslat druhΘ poloviny sv²ch vymyÜlen²ch zprßv. Pokud by dokßzal p°edpovφdat jakΘ zprßvy budou Alice nebo Bob posφlat, m∙₧e protokol samoz°ejm∞ "p°echytraΦit". Ale udr₧ovat smysluplnou komunikaci mezi Alicφ a Bobem, kdy ob∞ strany dφky meziΦlßnku vlastn∞ mluvφ "jinou °eΦφ", je rozhodn∞ podstatn∞ obtφ₧n∞jÜφ, ne₧ jen tak sed∞t na drßt∞ a poslouchat. 
  286. </DIV></FONT></b></i>
  287. <A Name="Title6"><FONT Size=3><DIV Class=Headline>Digitßlnφ podpisy</DIV></font>
  288. <FONT Size=2><DIV Align=Justify Class=Paragraph>
  289.     Digitßlnφ podpisy jsou jednφm z hlavnφch p°φnos∙ asymetrickΘ kryptografie. Mimo vÜude tak proklamovanΘ posφlßnφ da≥ov²ch p°iznßnφ na ·°ady apod. se podφlejφ na obran∞ proti ·toku z jednoho z minul²ch odstavc∙, jeho₧ °eÜenφ jsem zatφm nechal otev°enΘ.
  290. </DIV></FONT></b></i>
  291. <FONT Size=2><DIV Align=Justify Class=Paragraph>
  292.     Digitßlnφ podpis je v praxi jen sekvence Φφsel za urΦit²m dokumentem. Oproti ruΦnφmu podpisu je ovÜem zvlßÜtnφ rozdφl v tom, ₧e ruΦnφ podpisy jednoho Φlov∞ka na dvou r∙zn²ch dokumentech jsou ne-li stejnΘ tak alespo≥ podobnΘ, vedle toho digitßlnφ podpisy jednoho Φlov∞ka pod dv∞ma r∙zn²mi dokumenty jsou naprosto odliÜnΘ. Vedle matematickΘho pozadφ digitßlnφ podpis∙ tomu tak je ze z°ejm²ch d∙vod∙. To, co m∙₧eme ud∞lat ve skuteΦnosti, nap°. okopφrovat n∞Φφ podpis na jak²koliv dokument, bychom mohli na poΦφtaΦi ud∞lat jeÜt∞ snßze, navφc by byl pad∞lek od originßlu naprosto k nerozeznßnφ. 
  293. </DIV></FONT></b></i>
  294. <FONT Size=2><DIV Align=Justify Class=Paragraph>
  295.     KlφΦov²m pojmem, nutn²m k porozum∞nφ filosofii digitßlnφch podpis∙ je tzv. bezpeΦn² v²tah zprßvy (angl. message diegest, hash). V²tah zprßvy (dßle jen v²tah Φi hash) je algoritmus, kter² z jakkoliv dlouhΘ posloupnosti znak∙ (Φφsel) vytvo°φ Φφslo s konstantnφ dΘlkou a to za stanoven²ch podmφnek. Pojem hashovßnφ se objevuje nap°φklad i v oblasti databßzφ. Jednß se o pou₧itφ podobn²ch technik, ovÜem  s odliÜn²mi nßroky na vlastnosti.
  296. </DIV></FONT></b></i>
  297. <FONT Size=2><DIV Align=Justify Class=Paragraph>
  298.     Pro naÜe ·Φely po₧adujeme p°edevÜφm tzv. kryptografickou bezpeΦnost hashovacφho algoritmu, co₧ v praxi znamenß takzvanou jednocestnost vytvo°enΘ funkce. SpoΦφtat hash jakΘkoliv zprßvy musφ b²t velmi jednoduchΘ, ale vymyslet zprßvu tak, aby m∞la n∞jak² konkrΘtnφ hash musφ b²t obtφ₧nΘ. To je zßkladnφ rozdφl mezi hashi a kontrolnφmi souΦty. Nejznßm∞jÜφ v kryptografii pou₧φvanΘ algoritmy jsou MDx (Message Diegest 2, 4, 5), SHA (Secure Hash Algorithm) a RIPE-MD. BezpeΦnost hashovacφ funkce je p°φmo zßvislß na dΘlce v²stupnφho bloku, dßle pak obvykle plat₧, ₧e i malß zm∞na ve vstupu zp∙sobφ velkou zm∞nu ve v²stupu.
  299. </DIV></FONT></b></i>
  300. <FONT Size=2><DIV Align=Justify Class=Paragraph>
  301.     Vlastnφ digitßlnφ podpis funguje v obecnΘ rovin∞ velmi jednoduÜe. Pokud chce Alice podepsat n∞jak² dokument, vygeneruje z n∞j v²tah a zaÜifruje ho sv²m tajn²m klφΦem. Toto p°ilo₧φ k dokumentu, Φφm₧ ho prßv∞ podepsala. Na druhΘ stran∞ Bob separuje podpis od dokumentu, spoΦφtß v²tah z textu a deÜifruje podpis Alicin²m ve°ejn²m klφΦem. Tφm dostane dv∞ hodnoty. Pokud se rovnajφ, je podpis platn² (pou₧il jsem nejjednoduÜÜφ popis asymetrickΘho algoritmu RSA). 
  302. </DIV></FONT></b></i>
  303. <FONT Size=2><DIV Align=Justify Class=Paragraph>
  304.     BezpeΦnost tΘto metody vypl²vß z v²Üe uveden²ch vlastnostφ. Kdyby kdokoliv cht∞l podpis zfalÜovat, musel by mφt jeho tajn² klφΦ. Nebo by takΘ mohl n∞Φφ podpis p°ilo₧it pod jin² dokument. Jen₧e to nejde, proto₧e by se pak neshodovaly v²tahy textu a deÜifrovanΘho podpisu. A nemo₧nost vymyÜlenφ dokumentu s dan²m hashem plyne p°φmo z v²Üe uvßd∞nΘ definice v²tah∙ ze zprßv. Jak je vid∞t, v kryptografii s ve°ejn²m klφΦem vÜe stojφ a padß s bezpeΦn²m uschovßnφm tajnΘho klφΦe. 
  305. </DIV></FONT></b></i>
  306. <FONT Size=2><DIV Align=Justify Class=Paragraph>
  307.     Po digitßlnφm podpisu jsou po₧adovßny t°i hlavnφ vlastnosti, kterΘ jsou p°i uvedenΘm schΘmatu spln∞ny. Prvnφ z nich je autentiΦnost zprßvy, tj. p°φjemce musφ mφt mo₧nost odhalit jakoukoliv jejφ zm∞nu. Toho jsme docφlili pou₧itφm hashovacφ funkce : jakßkoliv zm∞na vstupu zp∙sobφ radikßlnφ (tj. ne·m∞rnou) zm∞nu v²stupu a p°i ov∞°ovßnφ bude podpis neplatn². Druhou po₧adovanou vlastnostφ je nepopiratelnost podpisu, kterou jsme takΘ splnili û jen a prßv∞ vlastnφk mß k tajnΘmu klφΦi (kter² je pro podpis pot°eba) p°φstup. Jak ale zajistit skuteΦnΘ propojenφ podpisu s konkrΘtnφ osobou Φi organizacφ? Mßme podobn² problΘm jako Alice a Bob v p°φpad∞ man-in-the-middle ·toku. Digitßlnφ podpis jednoznaΦn∞ spojφ dokument s dan²m klφΦem, kdo ale spojφ klφΦ s reßln²m subjektem? Pokud si spustφte n∞jak² Üifrovacφ program a zkusφte si vygenerovat pßr klφΦ∙, zeptß se vßs mimo jinΘ i na vaÜe jmΘno. Ka₧d² klφΦ toti₧ musφ b²t nositelem n∞jakΘ jmenovky (nejmΘn∞ jednΘ), aby se poznalo, Φφ ten klφΦ je. Zde je ale kßmen ·razu. Kdokoliv si m∙₧e vytvo°it klφΦe se jmenovkou t°eba Billa Clintona. M∙₧e s nφm Üifrovat, deÜifrovat, podepisovat, nebo ho t°eba vystavit na n∞jakΘm ve°ejnΘm serveru klφΦ∙ lidφ z celΘho sv∞ta. Bude to mφt ale jeden hßΦek: nebude to klφΦ Billa Clintona, ale n∞koho ·pln∞ jinΘho, kter² ten klφΦ podvrhl. 
  308. </DIV></FONT></b></i>
  309. <A Name="Title7"><FONT Size=3><DIV Class=Headline>D∙v∞ryhodnß t°etφ strana</DIV></font>
  310. <FONT Size=2><DIV Align=Justify Class=Paragraph>
  311.     Princip d∙v∞ryhodnΘ t°etφ strany je zaveden² i v "b∞₧nΘm" ₧ivot∞. P°edstavujφ ji notß°i, soudci, komise apod. P°edevÜφm v komerΦnφ poΦφtaΦovΘ oblasti platφ, ₧e t°etφ strana mß co mo₧nß nejv∞tÜφ mφru zßjmu z∙stat d∙v∞ryhodnß jak jen to dlouho jde, proto₧e takto ztracen² kredit by se od klient∙ ji₧ velmi t∞₧ko zφskßval zp∞t. Tφm je zajiÜt∞no, ₧e i tato t°etφ strana mß mimo°ßdn² zßjem na svΘ änepodvr₧enostiô, stejn∞ jako Alice a Bob. D∙v∞ryhodnß t°etφ strana je v tomto p°φpad∞ takzvanß certifikaΦnφ autorita.
  312. </DIV></FONT></b></i>
  313. <FONT Size=2><DIV Align=Justify Class=Paragraph>
  314.     CertifikaΦnφ autorita je instituce-d∙v∞ryhodnß t°etφ strana , kterß sv²m podpisem na cizφm ve°ejnΘm klφΦi stvrzuje, ₧e klφΦ pat°φ skuteΦn∞ tomu subjektu, kter² je napsßn na jmenovce. Jde o vφcemΘn∞ identickou operaci jako digitßlnφ podepisovßnφ dokument∙, rozdφl je pouze v interpretaci v²sledku. Podpis certifikaΦnφ autority pod ve°ejn²m klφΦem se naz²vß (digitßlnφ) certifikßt.
  315. </DIV></FONT></b></i>
  316. <A Name="Title8"><FONT Size=3><DIV Class=Headline>Public Key Infrastructure</DIV></font>
  317. <FONT Size=2><DIV Align=Justify Class=Paragraph>
  318.     SystΘm certifikaΦnφch autorit, certifikßt∙ a ve°ejn²ch klφΦ∙ jednotn∞ naz²vßme Public Key Infrastructure, infrastruktura ve°ejn²ch klφΦ∙, voln∞ji taktΘ₧ v n∞kter²ch p°φpadech pavuΦina d∙v∞ry. BezpeΦnost a konzistence takov²chto struktur je zalo₧ena na zßklad∞ vzßjemnΘ d∙v∞ry jednotliv²ch Φlßnk∙. Z praxe bych jmenoval dva zßkladnφ p°φstupy k budovßnφ architektury PKI : systΘm hierarchick² a systΘm distribuovan². Prßv∞ certifikaΦnφ autority jsou typickΘ pro ten prvn∞ jmenovan². JednotlivΘ subjekty jsou uspo°ßdßny do jakΘhosi (otoΦenΘho) stromu d∙v∞ry, kde ·pln∞ naho°e je takzvanß ko°enovß CA a v listech jsou jednotlivφ certifikovanφ u₧ivatelΘ. Mezi t∞mito krajnφmi souΦßstmi se nachßzejφ jednotlivΘ certifikaΦnφ autority. Ty majφ v₧dy certifikßt od autority nad°azenΘ a naopak vydßvajφ certifikßt jednotliv²m u₧ivatel∙m, pop°. ostatnφm autoritßm (tzv. k°φ₧ovß reference). Pßr ve°ejn²/tajn² klφΦ m∙₧e sßm u₧ivatel vytvo°it a nechat si ho podepsat od  CA, nebo ho m∙₧e generovat CA pro n∞j. Tato situace p°edpoklßdß vztah d∙v∞ry mezi u₧ivateli a CA, nebo¥ ta mß potΘ p°φstup k tajn²m klφΦ∙m u₧ivatel∙. V²hoda je v menÜφm poΦtu starostφ u₧ivatele.Pokud dostanete klφΦ s certifikßtem, vaÜe d∙v∞ra v tento klφΦ zßle₧φ na vaÜφ d∙v∞°e v p°ilo₧en² certifikßt. Pokud v∞°φte, ₧e autorita, kterß ten certifikßt vydala, podepisuje pouze platnΘ klφΦe, budete v∞°it, ₧e tento klφΦ skuteΦn∞ nßle₧φ na jmenovce uvedenΘ osob∞. Pokud jφ nev∞°φte, nemßte nic, o co byste op°eli svoji d∙v∞ru.
  319. </DIV></FONT></b></i>
  320. <FONT Size=2><DIV Align=Justify Class=Paragraph>
  321.     SystΘm distribuovan² je zobecn∞nφm systΘmu hierarchickΘho. Ka₧d² v n∞m z·Φastn∞n² s ubjekt pova₧uje za d∙v∞ryhodnΘ pouze svΘ nejbli₧Üφ sousedy. Snaha jednotlivce tedy je, zφskat pod sv∙j ve°ejn² klφΦ co nejvφce podpis∙ a doufat, ₧e potencionßlnφ dopisovatel bude v∞°it alespo≥ jednomu z nich. Ka₧d² je vlastn∞ takovou malou certifikaΦnφ autoritou pro lidi ze svΘho nejbli₧Üφho okolφ. Tuto ideu p°edstavuje program PGP, naopak d∙v∞ru pouze v CA vy₧adujφ programy jako Outlook, Internet Explorer apod. 
  322. </DIV></FONT></b></i>
  323. <FONT Size=2><DIV Align=Justify Class=Paragraph>
  324.     Podpis CA na AlicinΘm klφΦi Bobovi potvrzuje, ₧e je se skuteΦn∞ jednß o klφΦ Alicin. Bob nemß nejmenÜφ d∙vod v∞°it nepodepsanΘmu podvrhnutΘmu klφΦi, ve skuteΦnosti od Mallory. Je zde vid∞t, ₧e prßv∞ na d∙v∞ryhodnosti t°etφ strany cel² systΘm stojφ. Pokud bude certifikaΦnφ autorita podplatitelnß nebo jejφ data, technologie, servery apod. budou nedostateΦn∞ zabezpeΦenΘ, Mallory bude ve skuteΦnosti jeÜt∞ v lepÜφ situaci, proto₧e (faleÜn²) podpis klφΦe bude tφm vφc Boba klamn∞ ujiÜ¥ovat o jeho pravosti.
  325. </DIV></FONT></b></i>
  326. <A Name="Title9"><FONT Size=3><DIV Class=Headline>Podepisovacφ a Üifrovacφ klφΦe</DIV></font>
  327. <FONT Size=2><DIV Align=Justify Class=Paragraph>
  328.     èifrovacφ program PGP ve svΘ verzi 6.0 p°iÜel s v²znamnou novinkou: takzvanou pod°φzenostφ klφΦ∙. Zßkladnφ myÜlenka je a₧ genißln∞ jednoduchß: odd∞lme Üifrovacφ a podepisovacφ klφΦe od sebe. P°i p°enßÜenφ t∞chto klφΦ∙ nap°φklad e-mailem, se vÜe bude tvß°it jako jeden soubor, ale ve skuteΦnosti nßm bude moci certifikaΦnφ agentura podepsat pouze podepisovacφ klφΦ. To ale ·pln∞ staΦφ proto₧e na zßklad∞ podepsßnφ naÜeho ve°ejnΘho Üifrovacφho klφΦe naÜφm podepisovacφm klφΦem (kter² mßme ov∞°en), budou vÜichni v∞°it i tomuto Üifrovacφmu klφΦi. Nap°φklad p°i ztrßt∞ Üifrovacφho klφΦe si staΦφ vygenerovat nov², podepsat ho a vystavit na serverch s ve°ejn²mi klφΦi. Inteligentnφ Üifrovacφ programy to navφc ud∞lajφ tak, ₧e nov² Üifrovacφ klφΦ jakoby odsune ten star² na druhΘ mφsto, tudφ₧ se bude implicitn∞ Üifrovat novΘmu klφΦi. 
  329. </DIV></FONT></b></i>
  330. <FONT Size=2><DIV Align=Justify Class=Paragraph>
  331.     Toto mß takΘ dalekosßhlΘ ·Φinky na tzv. key-escrow. Key-escrow je slu₧ba poskytovanß t°etφ, vφce Φi mΘn∞ d∙v∞ryhodnou stranou, u kterΘ si m∙₧eme nßÜ tajn² klφΦ uschovat. D∙vody mohou b²t dobrovolnΘ (nap°φklad pro p°φpad ztrßty), ale takΘ nucenΘ, kup°φkladu velkß spoleΦnost m∙₧e chtφt mφt p°φstup k zam∞stnancov∞ prßci v p°φpad∞, ₧e by zem°el nebo byl dlouhodob∞ nemocn². Pakli₧e mß t°etφ strana zßjem pouze o nßÜ Üifrovacφ klφΦ (co₧ je nejΦast∞jÜφ varianta), vy°eÜφme situaci jednoduÜe vygenerovßnφm klφΦe novΘho. Ten bude aktußln∞jÜφ, bude se pou₧φvat implicitn∞, ale star² bude pro deÜifrovßnφ stßle k dispozici. 
  332. </DIV></FONT></b></i>
  333. <A Name="Title10"><FONT Size=3><DIV Class=Headline>KombinovanΘ systΘmy</DIV></font>
  334. <FONT Size=2><DIV Align=Justify Class=Paragraph>
  335.     ProblΘm tak°ka vÜech asymetrick²ch algoritm∙ je v jejich rychlosti. Slo₧itΘ operace umoc≥ovßnφ zabφrajφ tolik Φasu, ₧e Üifrovßnφ pouze asymetrick²m algoritmem by bylo pro svojφ pomalost nepou₧itelnΘ. Proto se pou₧φvajφ tzv. kombinovanΘ systΘmy. Celß operace Üifrovßnφ a deÜifrovßnφ  se navenek tvß°φ jako prßce s asymetrickou Üifrou a ve°ejn²m/tajn²m klφΦem, ovÜem vlastnφ data se Üifrujφ symetricky. Jak je to mo₧n∞?
  336. </DIV></FONT></b></i>
  337. <FONT Size=2><DIV Align=Justify Class=Paragraph>
  338.     Alice nejprve napφÜe tajnou zprßvu, kterou chce zaÜifrovat Bobov²m tajn²m klφΦem a odeslat mu ji. JeÜt∞ p°edtφm vÜak vygeneruje nßhodn² klφΦ o dΘlce po₧adovanΘ symetrick²m algoritmem, kter² mß k dispozici. Tento unikßtnφ klφΦ se naz²vß klφΦ relace (angl. session key, n∞kte°φ to p°eklßdajφ jako klφΦ sezenφ). Pomocφ tohoto nßhodn∞ vygenerovanΘho klφΦe svoji napsanou zprßvu zaÜifruje. PotΘ tento nßhodn² klφΦ zaÜifruje Bobov²m ve°ejn²m klφΦem. Nakonec ho p°idß na konec zaÜifrovanΘ zprßvy a m∙₧e zprßvu odeslat. Na druhΘ stran∞ probφhß proces opaΦn². Bob separuje zaÜifrovan² klφΦ od zprßvy a deÜifruje ho sv²m tajn²m klφΦem. Tφm dostane p∙vodnφ Alicφ vygenerovan² klφΦ relace, kter²m pak deÜifruje samotnou zprßvu. Pomal²m asymetrick²m algoritmem se tedy Üifruje a deÜifruje pouze krßtk² klφΦ relace, dlouh² text zprßvy se Üifruje pomocφ velmi rychlΘho symetrickΘho algoritmu.  Pokud navφc chceme zprßvu poslat vφce p°φjemc∙m, staΦφ p°idat jeden klφΦ relace a zaÜifrovat jin²m ve°ejn²m klφΦem.
  339.  
  340. </DIV></FONT></b></i>
  341. </DIV>
  342. <SCRIPT>
  343. TextEnd('')
  344. </SCRIPT><OL Class=None Type=Disc></OL><SCRIPT>
  345. nie('<br>');AdditionalTablesBegin();
  346.  
  347. CommentsBegin('Asymetrickß kryptografie v teorii a praxi',0);
  348. NoComments()
  349. CommentsEnd();
  350. </SCRIPT><SCRIPT>
  351. ArticleEnd()
  352. </SCRIPT></TABLE>
  353. <!-- /Prostredni sloupec -->
  354.  
  355.  
  356. <!-- Mezera 3 -->
  357.  
  358. <td width=5><img src="images/spacer.gif" width="5" height="1" border="0" alt=""></td>
  359. <!-- /Mezera 3-->
  360.  
  361. <!-- Mezera 2 -->
  362. <td width=1 bgcolor=#1063A5><img src="images/spacer.gif" width="1" height="1" border="0" alt=""></td>
  363. <!-- /Mezera 2-->
  364.  
  365. <!-- Mezera 1-->
  366. <td width=13 bgcolor="#006792" ><img src="images/spacer.gif" width="13" height="1" border="0" alt=""></td>
  367. <!-- /Mezera 1-->
  368.  
  369. <!-- Pravy sloupec -->
  370. <td bgcolor=#006792 width="0" align="center" valign="top">
  371. <SCRIPT SRC=server/right_js.php@version=1621></SCRIPT><br>
  372. </td>
  373. <!-- /Pravy sloupec -->
  374.  
  375.  
  376. </tr>
  377.  
  378. <!-- Bilo -->
  379. <tr>
  380. <td bgcolor=#000000><img src=space.gif height=1 width=1></td>
  381. <td bgcolor=#000000></td>
  382. <td bgcolor=#000000></td>
  383. <td bgcolor=#FFFFFF></td>
  384. <td bgcolor=#FFFFFF></td>
  385. <td bgcolor=#FFFFFF></td>
  386. <td colspan=5 bgcolor=#000000></td>
  387. </tr>
  388. <tr  bgcolor=#FFFFFF>
  389. <td><img src=space.gif height=20 width=1></td>
  390. <td></td>
  391. <td></td>
  392. <td></td>
  393. <td></td>
  394. <td></td>
  395. <td colspan=5></td>
  396. </tr>
  397. <!-- /Bilo-->
  398.  
  399.  
  400.  
  401. </table>
  402. <!-- /Rozdeleni na sloupce -->
  403.  
  404. <SCRIPT>
  405.     Exec(ToExecute);
  406.     ToExecute="";
  407. </SCRIPT>
  408.  
  409. <!-- Dolni lista -->
  410.  
  411.  
  412. <!-- Paticka -->
  413. <TABLE cellspacing="0" cellpadding="0" border="0" width="100%" bgcolor=#ffffff>
  414. <TR><td colspan=5 align="center" bgcolor=#000000><img src=space.gif height=1 width=1></td></TR>
  415. <TR bgcolor=#f0f0f0>
  416. <td align="center">
  417. <IMG Src=images/logo2.gif hspace=10 vspace=5>
  418. </td>
  419. <td>
  420. <DIV Style="margin-top:4px;margin-bottom:4px;" Class=Copyright><FONT Face=Arial Size=1>
  421.  
  422. <b><u>Krypta.cz</u></b> -  Magazφn o informaΦnφ bezpeΦnosti.<br>
  423. Copyright (C) 2000-2002 Krypta.cz - <a href=mailto:michal.till@krypta.cz>Michal Till</a> a <a href=mailto:jan.kulveit@krypta.cz>Jan Kulveit</a>. VÜechna prßva vyhrazena. <br>
  424. Tento server dodr₧uje prßvnφ p°edpisy o ochran∞ osobnφch ·daj∙, vΦetn∞ standardu P3P (<a href=server/policy.xml>policy</a>). </FONT></DIV>
  425. </td>
  426. <td>
  427. <IMG Src=geronimo.gif hspace=10 vspace=5>
  428. </td>
  429. <td>
  430. <DIV Style="margin-top:4px;margin-bottom:4px;" Class=Copyright><FONT Face=Arial Size=1>
  431. RedakΦnφ systΘm Geronimo<br>
  432. Copyright (C) 2001-2002 <a href=mailto:michal.till@krypta.cz>Michal Till</a>
  433. </FONT></DIV>
  434. </td>
  435. </td></tr></table>
  436. <!-- Paticka -->
  437.  
  438. <!-- /Dolni lista -->
  439.  
  440. </body>
  441. </html>