<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0"
 xmlns:dc="http://purl.org/dc/elements/1.1/"
 xmlns:content="http://purl.org/rss/1.0/modules/content/">
<channel>
	<title><![CDATA[Le Blog de Stockholm]]></title>
	<description><![CDATA[Flux RSS des articles]]></description>
	<pubDate>Sat, 30 Aug 2008 13:39:59 +0200</pubDate>
	<link>http://stockholm.eklablog.com</link>
	<language>fr</language>
	<generator>http://www.eklablog.com</generator>
	
	<item>
		<title><![CDATA[La distribution des clefs]]></title>
		<link>http://stockholm.eklablog.com/article-13185-100891-la-distribution-des-clefs.html</link>
		<dc:creator>Stockholm</dc:creator>
		<description><![CDATA[L&#39;&eacute;tape la plus sensible...]]></description>
		<content:encoded><![CDATA[<div align="justify"><span style="font-size: small">Pla&ccedil;ons-nous dans le cadre id&eacute;al - Alice a mis au point un chiffre parfaitement s&eacute;curitaire, absolument inviolable. Et elle d&eacute;sire l&#39;utiliser pour communiquer avec Bernard.<br /><br />Or, si Bernard n&#39;a pas la clef, il ne pourra pas d&eacute;chiffrer le message. Il faut donc qu&#39;il entre en possession de la clef, d&#39;une mani&egrave;re ou d&#39;une autre. Mais comment le faire sans qu&#39;&Egrave;ve ne s&#39;empare elle aussi de la clef ?</span><br /><br /><br /><span style="font-size: medium; color: #660000"><strong>Solutions historiques</strong></span><br /></div><hr size="2" width="100%" /><div align="justify"><br /><span style="font-size: small">Ce probl&egrave;me a bien &eacute;videmment &eacute;t&eacute; un probl&egrave;me particuli&egrave;rement &eacute;pineux pour les cryptologistes. Car &agrave; quoi bon concevoir un chiffre sans faille si l&#39;ennemi s&#39;empare de la clef ?<br /><br />Une premi&egrave;re solution, utilis&eacute;e par l&#39;arm&eacute;e allemande durant la Seconde Guerre Mondiale, est de distribuer des livres contenant toutes les clefs utilis&eacute;es pour une p&eacute;riode donn&eacute;e. Ce proc&eacute;d&eacute; &eacute;tait particuli&egrave;rement utile pour les sous-marins, partis longtemps en mer. Chaque jour, la clef changeait - et chaque jour, le radio du bord regardait dans son livre la clef du jour.<br />Mais si l&#39;ennemi s&#39;empare d&#39;un livre et obtient ainsi toutes les clefs pour, mettons, un mois entier ?<br />Et c&#39;est ce qui est arriv&eacute; - les services de renseignement britannique ont retrouv&eacute; un livre de clefs &agrave; bord d&#39;un sous-marin coul&eacute;, et cette d&eacute;couverte inestimable a emp&ecirc;ch&eacute; Iain Fleming, le p&egrave;re de James Bond, de mettre un plan audacieux &agrave; ex&eacute;cution. Des espions britanniques devaient se faire passer pour des aviateurs allemands abattus en mer, se faire r&eacute;cup&eacute;rer par un navire du Troisi&egrave;me Reich, et y voler les clefs... Toujours est-il que distribuer un livre de clefs est particuli&egrave;rement hasardeux.<br /><br />Une autre technique, utilis&eacute;e toujours par le r&eacute;gime nazi, consistait, chaque jour, &agrave; envoyer, en t&ecirc;te du premier message transmis, la clef utilis&eacute;e pour la journ&eacute;e, auparavant crypt&eacute;e par un autre syst&egrave;me. C&#39;est ainsi que les op&eacute;rateurs de la machine Enigma proc&eacute;daient. Mais ce syst&egrave;me n&#39;&eacute;tait pas infaillible. En effet, afin d&#39;&eacute;viter les erreurs, la clef &eacute;tait r&eacute;p&eacute;t&eacute;e deux fois - plus qu&#39;il n&#39;en fallait aux cryptanalystes de <a href="http://fr.wikipedia.org/wiki/Bletchley_Park">&lt;Bletchley Park&gt;</a>  pour casser le chiffre quotidien.<br /><br />Quant &agrave; transmettre manuellement la clef, par une rencontre, un mail crypt&eacute; ou un coup de t&eacute;l&eacute;phone, cette solution est inapplicable en cas de conflit, o&ugrave; la clef doit &ecirc;tre diffus&eacute;e rapidement &agrave; un grand nombre d&#39;op&eacute;rateurs sur un immense territoire. Et les techniques ne manquent pas &agrave; &Egrave;ve pour intercepter le chiffre ainsi transmis, entre &eacute;coutes t&eacute;l&eacute;phoniques et espionnage plus moderne.<br /><br />Les cryptologistes ont ainsi longtemps pens&eacute; que la distribution des clefs &eacute;tait un point faible dont rien ne pourrait jamais venir &agrave; bout.<br />Whitfield Diffie et Martin Hellman leur ont prouv&eacute; en 1976 qu&#39;ils avaient tort.</span><br /><br /><br /><span style="font-size: medium; color: #660000"><strong>La cryptographie asym&eacute;trique</strong></span><br /></div><hr size="2" width="100%" /><div align="justify"><br /><span style="font-size: small"># La parabole de la bo&icirc;te et des verrous<br />Imaginons qu&#39;Alice veuille envoyer un cadeau &agrave; Bernard. Elle va le mettre dans une bo&icirc;te, et fermer la bo&icirc;te avec un verrou dont elle a la clef. Mais Bernard ne l&#39;a pas, et ne pourra pas forcer la serrure. Alice peut choisir d&#39;envoyer la clef par courrier s&eacute;par&eacute;, mais &Egrave;ve peut en profiter pour faire une empreinte de la clef.<br />Fine mouche, Alice va ferme la bo&icirc;te avec son cadenas et garder la clef pr&eacute;cieusement avec elle. La bo&icirc;te verrouill&eacute;e partira et Bernard la recevra, toujours verrouill&eacute;e. Il ne pourra pas l&#39;ouvrir, mais il poss&egrave;de un deuxi&egrave;me cadenas (dont lui seul a la clef) qu&#39;il mettra &agrave; c&ocirc;t&eacute; du premier. Bernard renverra la bo&icirc;te ferm&eacute;e avec ses deux cadenas, et Alice va la recevoir avec la double fermeture.<br />Alice enl&egrave;ve alors son propre cadenas et renvoie une nouvelle fois la bo&icirc;te &agrave; Bernard ; celui-ci va la recevoir ferm&eacute;e avec le cadenas dont il a la clef. Bernard pourra donc ouvrir la bo&icirc;te sans probl&egrave;mes et &Egrave;ve, qui n&#39;avait aucune des clefs et ne pouvait pas forcer les serrures, a &eacute;t&eacute; incapable d&#39;ouvrir la bo&icirc;te, m&ecirc;me si elle l&#39;a eu entre les mains.<br /><br />Maintenant, imaginons qu&#39;Alice envoie la bo&icirc;te vide, munie de son cadenas &agrave; elle, ouvert, &agrave; Bernard. Bernard y d&eacute;pose son message, ferme le cadenas, et renvoie la bo&icirc;te &agrave; Alice. Celle-ci pourra ouvrir et lire le message, sans que sa clef ne se soit jamais promen&eacute;e dans la nature.<br /><br />Magique, non ? Si simple, mais il suffisait d&#39;y penser... C&#39;est le dernier cas qui est &agrave; la base de la cryptographie asym&eacute;trique, ou cryptographie &agrave; clef publique. Le premier cas, plus complexe, garantit qu&#39;il s&#39;agit bien d&#39;Alice et de Bernard qui r&eacute;alisent l&#39;&eacute;change ; c&#39;est le principe des signatures num&eacute;riques et des m&eacute;canismes d&#39;authentification utilis&eacute;s, par exemple, pour payer par carte bancaire sur Internet.<br /><br />Il s&#39;agit d&#39;un domaine assez vaste, difficile &agrave; aborder dans son int&eacute;gralit&eacute; dans un seul article, et j&#39;y reviendrai sans doute plus tard.<br />Mais c&#39;est g&eacute;nial, non ?<br /></span></div>]]></content:encoded>
		<pubDate>Mon, 31 Mar 2008 21:51:35 +0200</pubDate>
		<guid isPermaLink="true">http://stockholm.eklablog.com/article-13185-100891-la-distribution-des-clefs.html</guid>
	</item>
	<item>
		<title><![CDATA[Le chiffre Playfair]]></title>
		<link>http://stockholm.eklablog.com/article-13185-79997-le-chiffre-playfair.html</link>
		<dc:creator>Stockholm</dc:creator>
		<description><![CDATA[Un chiffre de substitution monoalphab&eacute;tique au charme tr&egrave;s anglais]]></description>
		<content:encoded><![CDATA[<div style="text-align: justify"><span style="font-size: medium; color: #660033"><span style="font-weight: bold">Principe</span></span><br /></div><hr style="width: 100%; height: 2px; margin-left: 0px; margin-right: 0px" /><div style="text-align: justify"><br /><span style="font-size: small">Remplacer chaque <span style="font-weight: bold">paire</span> de lettres du texte clair par une autre paire. Ainsi, on ne substitue pas l&#39;alphabet lettre &agrave; lettre comme dans le chiffre de C&eacute;sar, mais paire par paire.</span><br /><br /><br /><span style="font-size: medium; color: #660033"><span style="font-weight: bold">Cryptographie</span></span><br /></div><hr style="width: 100%; height: 2px; margin-left: 0px; margin-right: 0px" /><div style="text-align: justify"><br /><span style="font-size: small">Alice construit un <span style="font-weight: bold">tableau de 5 x 5 cases</span> o&ugrave; elle va recopier l&#39;alphabet. Elle commencera par un <span style="font-weight: bold">mot-clef</span>, par exemple L&eacute;onard :</span><br /><br /></div><table border="0" style="text-align: left; margin-left: 0px; margin-right: 0px"><tbody><tr><td style="text-align: center"><span style="font-size: small">&nbsp;L</span></td><td style="text-align: center"><span style="font-size: small">E <br /></span></td><td style="text-align: center"><span style="font-size: small">O <br /></span></td><td style="text-align: center"><span style="font-size: small">N <br /></span></td><td style="text-align: center"><span style="font-size: small">A <br /></span></td></tr><tr><td style="text-align: center"><span style="font-size: small">R <br /></span></td><td style="text-align: center"><span style="font-size: small">D <br /></span></td><td style="text-align: center"><span style="font-size: small">B <br /></span></td><td style="text-align: center"><span style="font-size: small">C <br /></span></td><td style="text-align: center"><span style="font-size: small">F <br /></span></td></tr><tr><td style="text-align: center"><span style="font-size: small">G <br /></span></td><td style="text-align: center"><span style="font-size: small">H <br /></span></td><td style="text-align: center"><span style="font-size: small">I/J <br /></span></td><td style="text-align: center"><span style="font-size: small">K <br /></span></td><td style="text-align: center"><span style="font-size: small">M <br /></span></td></tr><tr><td style="text-align: center"><span style="font-size: small">P <br /></span></td><td style="text-align: center"><span style="font-size: small">Q <br /></span></td><td style="text-align: center"><span style="font-size: small">S <br /></span></td><td style="text-align: center"><span style="font-size: small">T <br /></span></td><td style="text-align: center"><span style="font-size: small">U <br /></span></td></tr><tr><td style="text-align: center"><span style="font-size: small">V <br /></span></td><td style="text-align: center"><span style="font-size: small">W <br /></span></td><td style="text-align: center"><span style="font-size: small">X <br /></span></td><td style="text-align: center"><span style="font-size: small">Y <br /></span></td><td style="text-align: center"><span style="font-size: small">Z <br /></span></td></tr></tbody></table><div style="text-align: justify"><br /><span style="font-size: small">L&#39;alphabet comportant 26 lettres et non 25, il est n&eacute;cessaire de regrouper deux lettres sur une m&ecirc;me case. Il s&#39;agit le plus souvent du I et du J qui sont fusionn&eacute;s, mais il est possible de le faire avec n&#39;importe quelles lettres, &agrave; condition que cela n&#39;emp&ecirc;che pas la compr&eacute;hension du message - fusionner A et E serait ainsi maladroit en raison de leur importante fr&eacute;quence d&#39;apparition. L? t?xt? r?ss?mbl?r?it ? p?u pr?s ? c?l?, puisque seul le sens issu de la connaissance de la langue permet de trancher.<br /><br />Le carr&eacute; construit, il faut <span style="font-weight: bold">scinder le message &agrave; chiffrer en paires de lettres </span>:<br /><br /><span style="color: #3300ff">texte clair : &ocirc; rage, &ocirc; d&eacute;sespoir, &ocirc; vieillesse ennemie !</span><br style="color: #3300ff" /><span style="color: #3300ff">texte s&eacute;par&eacute; en digrammes : or-ag-eo-de-se-sp-oi-ro-vi-ei-ll-es-se-en-em-ie</span><br /><br />Les <span style="font-weight: bold">digrammes</span> se r&eacute;partissent en <span style="font-weight: bold">trois cat&eacute;gories </span>: les deux lettres sont sur la m&ecirc;me ligne, ou sur la m&ecirc;me colonne, ou rien du tout.<br />&nbsp;&nbsp;&nbsp; - <span style="font-weight: bold">les deux lettres sont sur la m&ecirc;me ligne </span>: on les remplace par celles situ&eacute;es imm&eacute;diatement <span style="font-style: italic">&agrave; leur droite</span>. Ainsi, <span style="color: #3300ff">eo</span> devient <span style="color: #3300ff">ON</span> et <span style="color: #3300ff">sp</span> devient <span style="color: #3300ff">TQ</span>. Si une lettre se trouve en fin de ligne, on la remplace par celle situ&eacute;e en d&eacute;but de ligne.<br />&nbsp;&nbsp;&nbsp; - <span style="font-weight: bold">les deux lettres sont sur la m&ecirc;me colonne</span> : on les remplace par celles situ&eacute;es imm&eacute;diatement en dessous d&#39;elles. Ainsi, <span style="color: #3300ff">oi</span> devient <span style="color: #3300ff">BS</span>. Si une lettre se trouve en fin de colonne, on la remplace par celle situ&eacute;e en t&ecirc;te de colonne.<br />&nbsp;&nbsp;&nbsp; - <span style="font-weight: bold">les lettres ne sont ni sur la m&ecirc;me ligne, ni sur la m&ecirc;me colonne</span> : <br />&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;  &nbsp;&nbsp;  + <span style="font-style: italic">la premi&egrave;re lettre</span> sera remplac&eacute;e par celle situ&eacute;e &agrave; l&#39;intersection de la ligne de la premi&egrave;re lettre avec la colonne de la deuxi&egrave;me.<br />&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;  &nbsp;&nbsp;  + <span style="font-style: italic">la deuxi&egrave;me lettre</span> sera remplac&eacute;e par celle situ&eacute;e &agrave; l&#39;intersection de la ligne de la deuxi&egrave;me lettre avec la colonne de la premi&egrave;re.<br />&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;  &nbsp;&nbsp;  + Ainsi, <span style="color: #3300ff">ag</span> devient <span style="color: #3300ff">NM</span>.<br /><br />Ainsi, notre texte de d&eacute;part devient :<br /><span style="color: #3300ff">LBLKONHDPNQEGBEXHOGOEOQYPNOAAOQGOE</span><br /><br />Bernard, pour d&eacute;chiffrer, inversera le processus. Il commencera par d&eacute;couper le message en digrammes et cherchera les correspondances, en inversant droite/gauche et bas/haut.<br /><br /></span><br /><span style="font-size: medium; color: #660033"><strong>Cryptanalyse</strong></span><br /></div><hr style="width: 100%; height: 2px; margin-left: 0px; margin-right: 0px" /><div style="text-align: justify"><br /><span style="font-size: small">Comme dans tout chiffre de substitution, elle repose sur l&#39;<span style="font-weight: bold">analyse de fr&eacute;quences</span>. Il ne faut toutefois pas analyser la fr&eacute;quence des lettres isol&eacute;es, mais celle des <span style="font-weight: bold">digrammes</span>, et la comparer aux fr&eacute;quences de r&eacute;f&eacute;rence. Par ordre de fr&eacute;quence :<br />- <span style="font-style: italic">en fran&ccedil;ais</span> : es, en, ou, de, nt, te, on<br />- <span style="font-style: italic">en anglais</span> : th, he, an, in, er, re, es</span><br /><br /><br /><span style="font-size: medium; color: #660033"><strong>Force et faiblesse</strong></span><br /></div><hr style="width: 100%; height: 2px; margin-left: 0px; margin-right: 0px" /><div style="text-align: justify"><br /><span style="font-size: small">Sa <span style="font-weight: bold">force</span> r&eacute;side en une utilisation relativement rapide (si, si, je vous assure...) et un niveau de s&ucirc;ret&eacute; plus &eacute;lev&eacute; que celui d&#39;un chiffre de type C&eacute;sar.<br />Ses <span style="font-weight: bold">faiblesses</span>, toutefois, sont bien pr&eacute;sentes, car Playfair pr&eacute;sente tous les d&eacute;fauts des chiffres de substitution (fr&eacute;quences toujours apparentes). Heureusement, il a quelques qualit&eacute;s en plus... <br /><br />Donc : mieux que C&eacute;sar, mais moins bien que Vigen&egrave;re.</span><br /></div>]]></content:encoded>
		<pubDate>Thu, 21 Feb 2008 20:02:48 +0100</pubDate>
		<guid isPermaLink="true">http://stockholm.eklablog.com/article-13185-79997-le-chiffre-playfair.html</guid>
	</item>
	<item>
		<title><![CDATA[Vigenère, le Chiffre indéchiffrable]]></title>
		<link>http://stockholm.eklablog.com/article-13185-74338-vigenere-le-chiffre-indechiffrable.html</link>
		<dc:creator>Stockholm</dc:creator>
		<description><![CDATA[Les chiffres de substitution polyalphab&eacute;tiques
Le chiffre de Vigen&egrave;re et sa cryptanalyse (m&eacute;thodes de Babbage-Kasiski et de Bazeries)]]></description>
		<content:encoded><![CDATA[<div style="text-align: justify"><span style="font-size: medium; color: #660033"><span style="font-weight: bold">Principe des chiffres polyalphab&eacute;tiques</span></span><br /></div><hr size="2" style="margin-left: 0px; margin-right: 0px" width="100%" /><div style="text-align: justify"><br /></div><div align="justify"><span style="font-size: small">Dans un chiffre monoalphab&eacute;tique, l&#39;ensemble des lettres est crypt&eacute; &agrave; partir du m&ecirc;me alphabet. Par exemple, un a clair sera toujours un P crypt&eacute;, un z clair toujours un Q crypt&eacute;... Lorsqu&#39;on r&eacute;alise une analyse de fr&eacute;quences, le profil de l&#39;alphabet clair finit toujours par &eacute;merger, d&#39;o&ugrave; la faiblesse de ces chiffres, C&eacute;sar ou autres.</span><br /><br /><span style="font-size: small">Au contraire, dans un chiffre polyalphab&eacute;tique, <strong>chaque lettre est chiffr&eacute;e &agrave; l&#39;aide d&#39;un alphabet crypt&eacute; diff&eacute;rent</strong>, ce qui a pour r&eacute;sultat de brouiller l&#39;analyse de fr&eacute;quences et de rendre impossible l&#39;identification d&#39;un profil d&#39;alphabet (la cryptanalyse reste n&eacute;anmoins possible).</span><br /><span style="font-size: small">Cet article s&#39;int&eacute;ressera uniquement au chiffre de Vigen&egrave;re, mais d&#39;autres existent, tout en &eacute;tant moins complets.</span><br /><br /><span style="font-size: small">Blaise de Vigen&egrave;re, un diplomate fran&ccedil;ais, a d&eacute;crit ce chiffre particulier vers 1560, et celui-ci a longtemps &eacute;t&eacute; consid&eacute;r&eacute; comme&nbsp; toute &eacute;preuve, jusqu&#39;&agrave; ce que Babbage, trois si&egrave;cles plus tard, trouve la faille cach&eacute;e.</span><br /></div><div style="text-align: justify"><br /><br /><br /><span style="font-size: medium; color: #660033"><span style="font-weight: bold">Cryptographie</span></span><br /></div><hr size="2" style="margin-left: 0px; margin-right: 0px" width="100%" /><div style="text-align: justify"><br /></div><div align="justify"><span style="color: #660099"><ins><em><strong><span style="font-size: small"># le Carr&eacute; de Vigen&egrave;re</span></strong></em></ins></span><br /><span style="font-size: small">C&#39;est sur lui que repose le chiffre. Il s&#39;agit d&#39;un tableau comportant 26x26 cases, o&ugrave; l&#39;alphabet est r&eacute;p&eacute;t&eacute; 26 fois :</span><br /></div><div style="text-align: justify"><br /></div><table border="1" cellpadding="1" cellspacing="2" style="text-align: left; margin-left: 0px; margin-right: 0px"><tbody><tr align="center" bgcolor="#08ff7c"> 	<td style="background-color: #ff9933">A</td> 	<td style="background-color: #ff9933">B</td> 	<td style="background-color: #ff9933">C</td> 	<td style="background-color: #ff9933">D</td> 	<td style="background-color: #ff9933">E</td> 	<td style="background-color: #ff9933">F</td> 	<td style="background-color: #ff9933">G</td> 	<td style="background-color: #ff9933">H</td> 	<td style="background-color: #ff9933">I</td> 	<td style="background-color: #ff9933">J</td> 	<td style="background-color: #ff9933">K</td> 	<td style="background-color: #ff9933">L</td> 	<td style="background-color: #ff9933">M</td> 	<td style="background-color: #ff9933">N</td> 	<td style="background-color: #ff9933">O</td> 	<td style="background-color: #ff9933">P</td> 	<td style="background-color: #ff9933">Q</td> 	<td style="background-color: #ff9933">R</td> 	<td style="background-color: #ff9933">S</td> 	<td style="background-color: #ff9933">T</td> 	<td style="background-color: #ff9933">U</td> 	<td style="background-color: #ff9933">V</td> 	<td style="background-color: #ff9933">W</td> 	<td style="background-color: #ff9933">X</td> 	<td style="background-color: #ff9933">Y</td> 	<td style="background-color: #ff9933">Z</td> </tr> <tr align="center" bgcolor="#ffff99"> 	 	<td style="background-color: #ffffff">A</td> 	<td style="background-color: #ffffff">B</td> 	<td style="background-color: #ffffff">C</td> 	<td style="background-color: #ffffff">D</td> 	<td style="background-color: #ffffff">E</td> 	<td style="background-color: #ffffff">F</td> 	<td style="background-color: #ffffff">G</td> 	<td style="background-color: #ffffff">H</td> 	<td style="background-color: #ffffff">I</td> 	<td style="background-color: #ffffff">J</td> 	<td style="background-color: #ffffff">K</td> 	<td style="background-color: #ffffff">L</td> 	<td style="background-color: #ffffff">M</td> 	<td style="background-color: #ffffff">N</td> 	<td style="background-color: #ffffff">O</td> 	<td style="background-color: #ffffff">P</td> 	<td style="background-color: #ffffff">Q</td> 	<td style="background-color: #ffffff">R</td> 	<td style="background-color: #ffffff">S</td> 	<td style="background-color: #ffffff">T</td> 	<td style="background-color: #ffffff">U</td> 	<td style="background-color: #ffffff">V</td> 	<td style="background-color: #ffffff">W</td> 	<td style="background-color: #ffffff">X</td> 	<td style="background-color: #ffffff">Y</td> 	<td style="background-color: #ffffff">Z</td> </tr> <tr align="center" bgcolor="#ffff99"> 	 	<td style="background-color: #ffffff">B</td> 	<td style="background-color: #ffffff">C</td> 	<td style="background-color: #ffffff">D</td> 	<td style="background-color: #ffffff">E</td> 	<td style="background-color: #ffffff">F</td> 	<td style="background-color: #ffffff">G</td> 	<td style="background-color: #ffffff">H</td> 	<td style="background-color: #ffffff">I</td> 	<td style="background-color: #ffffff">J</td> 	<td style="background-color: #ffffff">K</td> 	<td style="background-color: #ffffff">L</td> 	<td style="background-color: #ffffff">M</td> 	<td style="background-color: #ffffff">N</td> 	<td style="background-color: #ffffff">O</td> 	<td style="background-color: #ffffff">P</td> 	<td style="background-color: #ffffff">Q</td> 	<td style="background-color: #ffffff">R</td> 	<td style="background-color: #ffffff">S</td> 	<td style="background-color: #ffffff">T</td> 	<td style="background-color: #ffffff">U</td> 	<td style="background-color: #ffffff">V</td> 	<td style="background-color: #ffffff">W</td> 	<td style="background-color: #ffffff">X</td> 	<td style="background-color: #ffffff">Y</td> 	<td style="background-color: #ffffff">Z</td> 	<td style="background-color: #ffffff">A</td> </tr> <tr align="center" bgcolor="#ffff99"> 	 	<td style="background-color: #ffffff">C</td> 	<td style="background-color: #ffffff">D</td> 	<td style="background-color: #ffffff">E</td> 	<td style="background-color: #ffffff">F</td> 	<td style="background-color: #ffffff">G</td> 	<td style="background-color: #ffffff">H</td> 	<td style="background-color: #ffffff">I</td> 	<td style="background-color: #ffffff">J</td> 	<td style="background-color: #ffffff">K</td> 	<td style="background-color: #ffffff">L</td> 	<td style="background-color: #ffffff">M</td> 	<td style="background-color: #ffffff">N</td> 	<td style="background-color: #ffffff">O</td> 	<td style="background-color: #ffffff">P</td> 	<td style="background-color: #ffffff">Q</td> 	<td style="background-color: #ffffff">R</td> 	<td style="background-color: #ffffff">S</td> 	<td style="background-color: #ffffff">T</td> 	<td style="background-color: #ffffff">U</td> 	<td style="background-color: #ffffff">V</td> 	<td style="background-color: #ffffff">W</td> 	<td style="background-color: #ffffff">X</td> 	<td style="background-color: #ffffff">Y</td> 	<td style="background-color: #ffffff">Z</td> 	<td style="background-color: #ffffff">A</td> 	<td style="background-color: #ffffff">B</td> </tr> <tr align="center" bgcolor="#ffff99"> 	 	<td style="background-color: #ffffff">D</td> 	<td style="background-color: #ffffff">E</td> 	<td style="background-color: #ffffff">F</td> 	<td style="background-color: #ffffff">G</td> 	<td style="background-color: #ffffff">H</td> 	<td style="background-color: #ffffff">I</td> 	<td style="background-color: #ffffff">J</td> 	<td style="background-color: #ffffff">K</td> 	<td style="background-color: #ffffff">L</td> 	<td style="background-color: #ffffff">M</td> 	<td style="background-color: #ffffff">N</td> 	<td style="background-color: #ffffff">O</td> 	<td style="background-color: #ffffff">P</td> 	<td style="background-color: #ffffff">Q</td> 	<td style="background-color: #ffffff">R</td> 	<td style="background-color: #ffffff">S</td> 	<td style="background-color: #ffffff">T</td> 	<td style="background-color: #ffffff">U</td> 	<td style="background-color: #ffffff">V</td> 	<td style="background-color: #ffffff">W</td> 	<td style="background-color: #ffffff">X</td> 	<td style="background-color: #ffffff">Y</td> 	<td style="background-color: #ffffff">Z</td> 	<td style="background-color: #ffffff">A</td> 	<td style="background-color: #ffffff">B</td> 	<td style="background-color: #ffffff">C</td> </tr> <tr align="center" style="background-color: #ffffff"> 	 	<td style="background-color: #ffffff">E</td> 	<td style="background-color: #ffffff">F</td> 	<td style="background-color: #ffffff">G</td> 	<td style="background-color: #ffffff">H</td> 	<td style="background-color: #ffffff">I</td> 	<td style="background-color: #ffffff">J</td> 	<td style="background-color: #ffffff">K</td> 	<td style="background-color: #ffffff">L</td> 	<td style="background-color: #ffffff">M</td> 	<td style="background-color: #ffffff">N</td> 	<td style="background-color: #ffffff">O</td> 	<td style="background-color: #ffffff">P</td> 	<td style="background-color: #ffffff">Q</td> 	<td style="background-color: #ffffff">R</td> 	<td style="background-color: #ffffff">S</td> 	<td style="background-color: #ffffff">T</td> 	<td style="background-color: #ffffff">U</td> 	<td style="background-color: #ffffff">V</td> 	<td style="background-color: #ffffff">W</td> 	<td style="background-color: #ffffff">X</td> 	<td style="background-color: #ffffff">Y</td> 	<td style="background-color: #ffffff">Z</td> 	<td style="background-color: #ffffff">A</td> 	<td style="background-color: #ffffff">B</td> 	<td style="background-color: #ffffff">C</td> 	<td style="background-color: #ffffff">D</td> </tr> <tr align="center" bgcolor="#ffff99"> 	 	<td style="background-color: #ffffff">F</td> 	<td style="background-color: #ffffff">G</td> 	<td style="background-color: #ffffff">H</td> 	<td style="background-color: #ffffff">I</td> 	<td style="background-color: #ffffff">J</td> 	<td style="background-color: #ffffff">K</td> 	<td style="background-color: #ffffff">L</td> 	<td style="background-color: #ffffff">M</td> 	<td style="background-color: #ffffff">N</td> 	<td style="background-color: #ffffff">O</td> 	<td style="background-color: #ffffff">P</td> 	<td style="background-color: #ffffff">Q</td> 	<td style="background-color: #ffffff">R</td> 	<td style="background-color: #ffffff">S</td> 	<td style="background-color: #ffffff">T</td> 	<td style="background-color: #ffffff">U</td> 	<td style="background-color: #ffffff">V</td> 	<td style="background-color: #ffffff">W</td> 	<td style="background-color: #ffffff">X</td> 	<td style="background-color: #ffffff">Y</td> 	<td style="background-color: #ffffff">Z</td> 	<td style="background-color: #ffffff">A</td> 	<td style="background-color: #ffffff">B</td> 	<td style="background-color: #ffffff">C</td> 	<td style="background-color: #ffffff">D</td> 	<td style="background-color: #ffffff">E</td> </tr> <tr align="center" bgcolor="#ffff99"> 	 	<td style="background-color: #ffffff">G</td> 	<td style="background-color: #ffffff">H</td> 	<td style="background-color: #ffffff">I</td> 	<td style="background-color: #ffffff">J</td> 	<td style="background-color: #ffffff">K</td> 	<td style="background-color: #ffffff">L</td> 	<td style="background-color: #ffffff">M</td> 	<td style="background-color: #ffffff">N</td> 	<td style="background-color: #ffffff">O</td> 	<td style="background-color: #ffffff">P</td> 	<td style="background-color: #ffffff">Q</td> 	<td style="background-color: #ffffff">R</td> 	<td style="background-color: #ffffff">S</td> 	<td style="background-color: #ffffff">T</td> 	<td style="background-color: #ffffff">U</td> 	<td style="background-color: #ffffff">V</td> 	<td style="background-color: #ffffff">W</td> 	<td style="background-color: #ffffff">X</td> 	<td style="background-color: #ffffff">Y</td> 	<td style="background-color: #ffffff">Z</td> 	<td style="background-color: #ffffff">A</td> 	<td style="background-color: #ffffff">B</td> 	<td style="background-color: #ffffff">C</td> 	<td style="background-color: #ffffff">D</td> 	<td style="background-color: #ffffff">E</td> 	<td style="background-color: #ffffff">F</td> </tr> <tr align="center" bgcolor="#ffff99"> 	 	<td style="background-color: #ffffff">H</td> 	<td style="background-color: #ffffff">I</td> 	<td style="background-color: #ffffff">J</td> 	<td style="background-color: #ffffff">K</td> 	<td style="background-color: #ffffff">L</td> 	<td style="background-color: #ffffff">M</td> 	<td style="background-color: #ffffff">N</td> 	<td style="background-color: #ffffff">O</td> 	<td style="background-color: #ffffff">P</td> 	<td style="background-color: #ffffff">Q</td> 	<td style="background-color: #ffffff">R</td> 	<td style="background-color: #ffffff">S</td> 	<td style="background-color: #ffffff">T</td> 	<td style="background-color: #ffffff">U</td> 	<td style="background-color: #ffffff">V</td> 	<td style="background-color: #ffffff">W</td> 	<td style="background-color: #ffffff">X</td> 	<td style="background-color: #ffffff">Y</td> 	<td style="background-color: #ffffff">Z</td> 	<td style="background-color: #ffffff">A</td> 	<td style="background-color: #ffffff">B</td> 	<td style="background-color: #ffffff">C</td> 	<td style="background-color: #ffffff">D</td> 	<td style="background-color: #ffffff">E</td> 	<td style="background-color: #ffffff">F</td> 	<td style="background-color: #ffffff">G</td> </tr> <tr align="center" bgcolor="#ffff99"> 	 	<td style="background-color: #ffffff">I</td> 	<td style="background-color: #ffffff">J</td> 	<td style="background-color: #ffffff">K</td> 	<td style="background-color: #ffffff">L</td> 	<td style="background-color: #ffffff">M</td> 	<td style="background-color: #ffffff">N</td> 	<td style="background-color: #ffffff">O</td> 	<td style="background-color: #ffffff">P</td> 	<td style="background-color: #ffffff">Q</td> 	<td style="background-color: #ffffff">R</td> 	<td style="background-color: #ffffff">S</td> 	<td style="background-color: #ffffff">T</td> 	<td style="background-color: #ffffff">U</td> 	<td style="background-color: #ffffff">V</td> 	<td style="background-color: #ffffff">W</td> 	<td style="background-color: #ffffff">X</td> 	<td style="background-color: #ffffff">Y</td> 	<td style="background-color: #ffffff">Z</td> 	<td style="background-color: #ffffff">A</td> 	<td style="background-color: #ffffff">B</td> 	<td style="background-color: #ffffff">C</td> 	<td style="background-color: #ffffff">D</td> 	<td style="background-color: #ffffff">E</td> 	<td style="background-color: #ffffff">F</td> 	<td style="background-color: #ffffff">G</td> 	<td style="background-color: #ffffff">H</td> </tr> <tr align="center" bgcolor="#ffff99"> 	 	<td style="background-color: #ffffff">J</td> 	<td style="background-color: #ffffff">K</td> 	<td style="background-color: #ffffff">L</td> 	<td style="background-color: #ffffff">M</td> 	<td style="background-color: #ffffff">N</td> 	<td style="background-color: #ffffff">O</td> 	<td style="background-color: #ffffff">P</td> 	<td style="background-color: #ffffff">Q</td> 	<td style="background-color: #ffffff">R</td> 	<td style="background-color: #ffffff">S</td> 	<td style="background-color: #ffffff">T</td> 	<td style="background-color: #ffffff">U</td> 	<td style="background-color: #ffffff">V</td> 	<td style="background-color: #ffffff">W</td> 	<td style="background-color: #ffffff">X</td> 	<td style="background-color: #ffffff">Y</td> 	<td style="background-color: #ffffff">Z</td> 	<td style="background-color: #ffffff">A</td> 	<td style="background-color: #ffffff">B</td> 	<td style="background-color: #ffffff">C</td> 	<td style="background-color: #ffffff">D</td> 	<td style="background-color: #ffffff">E</td> 	<td style="background-color: #ffffff">F</td> 	<td style="background-color: #ffffff">G</td> 	<td style="background-color: #ffffff">H</td> 	<td style="background-color: #ffffff">I</td> </tr> <tr align="center" bgcolor="#ffff99"> 	 	<td style="background-color: #ffffff">K</td> 	<td style="background-color: #ffffff">L</td> 	<td style="background-color: #ffffff">M</td> 	<td style="background-color: #ffffff">N</td> 	<td style="background-color: #ffffff">O</td> 	<td style="background-color: #ffffff">P</td> 	<td style="background-color: #ffffff">Q</td> 	<td style="background-color: #ffffff">R</td> 	<td style="background-color: #ffffff">S</td> 	<td style="background-color: #ffffff">T</td> 	<td style="background-color: #ffffff">U</td> 	<td style="background-color: #ffffff">V</td> 	<td style="background-color: #ffffff">W</td> 	<td style="background-color: #ffffff">X</td> 	<td style="background-color: #ffffff">Y</td> 	<td style="background-color: #ffffff">Z</td> 	<td style="background-color: #ffffff">A</td> 	<td style="background-color: #ffffff">B</td> 	<td style="background-color: #ffffff">C</td> 	<td style="background-color: #ffffff">D</td> 	<td style="background-color: #ffffff">E</td> 	<td style="background-color: #ffffff">F</td> 	<td style="background-color: #ffffff">G</td> 	<td style="background-color: #ffffff">H</td> 	<td style="background-color: #ffffff">I</td> 	<td style="background-color: #ffffff">J</td> </tr> <tr align="center" bgcolor="#ffff99"> 	 	<td style="background-color: #ffffff">L</td> 	<td style="background-color: #ffffff">M</td> 	<td style="background-color: #ffffff">N</td> 	<td style="background-color: #ffffff">O</td> 	<td style="background-color: #ffffff">P</td> 	<td style="background-color: #ffffff">Q</td> 	<td style="background-color: #ffffff">R</td> 	<td style="background-color: #ffffff">S</td> 	<td style="background-color: #ffffff">T</td> 	<td style="background-color: #ffffff">U</td> 	<td style="background-color: #ffffff">V</td> 	<td style="background-color: #ffffff">W</td> 	<td style="background-color: #ffffff">X</td> 	<td style="background-color: #ffffff">Y</td> 	<td style="background-color: #ffffff">Z</td> 	<td style="background-color: #ffffff">A</td> 	<td style="background-color: #ffffff">B</td> 	<td style="background-color: #ffffff">C</td> 	<td style="background-color: #ffffff">D</td> 	<td style="background-color: #ffffff">E</td> 	<td style="background-color: #ffffff">F</td> 	<td style="background-color: #ffffff">G</td> 	<td style="background-color: #ffffff">H</td> 	<td style="background-color: #ffffff">I</td> 	<td style="background-color: #ffffff">J</td> 	<td style="background-color: #ffffff">K</td> </tr> <tr align="center" bgcolor="#ffff99"> 	 	<td style="background-color: #ffffff">M</td> 	<td style="background-color: #ffffff">N</td> 	<td style="background-color: #ffffff">O</td> 	<td style="background-color: #ffffff">P</td> 	<td style="background-color: #ffffff">Q</td> 	<td style="background-color: #ffffff">R</td> 	<td style="background-color: #ffffff">S</td> 	<td style="background-color: #ffffff">T</td> 	<td style="background-color: #ffffff">U</td> 	<td style="background-color: #ffffff">V</td> 	<td style="background-color: #ffffff">W</td> 	<td style="background-color: #ffffff">X</td> 	<td style="background-color: #ffffff">Y</td> 	<td style="background-color: #ffffff">Z</td> 	<td style="background-color: #ffffff">A</td> 	<td style="background-color: #ffffff">B</td> 	<td style="background-color: #ffffff">C</td> 	<td style="background-color: #ffffff">D</td> 	<td style="background-color: #ffffff">E</td> 	<td style="background-color: #ffffff">F</td> 	<td style="background-color: #ffffff">G</td> 	<td style="background-color: #ffffff">H</td> 	<td style="background-color: #ffffff">I</td> 	<td style="background-color: #ffffff">J</td> 	<td style="background-color: #ffffff">K</td> 	<td style="background-color: #ffffff">L</td> </tr> <tr align="center" bgcolor="#ffff99"> 	 	<td style="background-color: #ffffff">N</td> 	<td style="background-color: #ffffff">O</td> 	<td style="background-color: #ffffff">P</td> 	<td style="background-color: #ffffff">Q</td> 	<td style="background-color: #ffffff">R</td> 	<td style="background-color: #ffffff">S</td> 	<td style="background-color: #ffffff">T</td> 	<td style="background-color: #ffffff">U</td> 	<td style="background-color: #ffffff">V</td> 	<td style="background-color: #ffffff">W</td> 	<td style="background-color: #ffffff">X</td> 	<td style="background-color: #ffffff">Y</td> 	<td style="background-color: #ffffff">Z</td> 	<td style="background-color: #ffffff">A</td> 	<td style="background-color: #ffffff">B</td> 	<td style="background-color: #ffffff">C</td> 	<td style="background-color: #ffffff">D</td> 	<td style="background-color: #ffffff">E</td> 	<td style="background-color: #ffffff">F</td> 	<td style="background-color: #ffffff">G</td> 	<td style="background-color: #ffffff">H</td> 	<td style="background-color: #ffffff">I</td> 	<td style="background-color: #ffffff">J</td> 	<td style="background-color: #ffffff">K</td> 	<td style="background-color: #ffffff">L</td> 	<td style="background-color: #ffffff">M</td> </tr> <tr align="center" bgcolor="#ffff99"> 	 	<td style="background-color: #ffffff">O</td> 	<td style="background-color: #ffffff">P</td> 	<td style="background-color: #ffffff">Q</td> 	<td style="background-color: #ffffff">R</td> 	<td style="background-color: #ffffff">S</td> 	<td style="background-color: #ffffff">T</td> 	<td style="background-color: #ffffff">U</td> 	<td style="background-color: #ffffff">V</td> 	<td style="background-color: #ffffff">W</td> 	<td style="background-color: #ffffff">X</td> 	<td style="background-color: #ffffff">Y</td> 	<td style="background-color: #ffffff">Z</td> 	<td style="background-color: #ffffff">A</td> 	<td style="background-color: #ffffff">B</td> 	<td style="background-color: #ffffff">C</td> 	<td style="background-color: #ffffff">D</td> 	<td style="background-color: #ffffff">E</td> 	<td style="background-color: #ffffff">F</td> 	<td style="background-color: #ffffff">G</td> 	<td style="background-color: #ffffff">H</td> 	<td style="background-color: #ffffff">I</td> 	<td style="background-color: #ffffff">J</td> 	<td style="background-color: #ffffff">K</td> 	<td style="background-color: #ffffff">L</td> 	<td style="background-color: #ffffff">M</td> 	<td style="background-color: #ffffff">N</td> </tr> <tr align="center" bgcolor="#ffff99"> 	 	<td style="background-color: #ffffff">P</td> 	<td style="background-color: #ffffff">Q</td> 	<td style="background-color: #ffffff">R</td> 	<td style="background-color: #ffffff">S</td> 	<td style="background-color: #ffffff">T</td> 	<td style="background-color: #ffffff">U</td> 	<td style="background-color: #ffffff">V</td> 	<td style="background-color: #ffffff">W</td> 	<td style="background-color: #ffffff">X</td> 	<td style="background-color: #ffffff">Y</td> 	<td style="background-color: #ffffff">Z</td> 	<td style="background-color: #ffffff">A</td> 	<td style="background-color: #ffffff">B</td> 	<td style="background-color: #ffffff">C</td> 	<td style="background-color: #ffffff">D</td> 	<td style="background-color: #ffffff">E</td> 	<td style="background-color: #ffffff">F</td> 	<td style="background-color: #ffffff">G</td> 	<td style="background-color: #ffffff">H</td> 	<td style="background-color: #ffffff">I</td> 	<td style="background-color: #ffffff">J</td> 	<td style="background-color: #ffffff">K</td> 	<td style="background-color: #ffffff">L</td> 	<td style="background-color: #ffffff">M</td> 	<td style="background-color: #ffffff">N</td> 	<td style="background-color: #ffffff">O</td> </tr> <tr align="center" bgcolor="#ffff99"> 	 	<td style="background-color: #ffffff">Q</td> 	<td style="background-color: #ffffff">R</td> 	<td style="background-color: #ffffff">S</td> 	<td style="background-color: #ffffff">T</td> 	<td style="background-color: #ffffff">U</td> 	<td style="background-color: #ffffff">V</td> 	<td style="background-color: #ffffff">W</td> 	<td style="background-color: #ffffff">X</td> 	<td style="background-color: #ffffff">Y</td> 	<td style="background-color: #ffffff">Z</td> 	<td style="background-color: #ffffff">A</td> 	<td style="background-color: #ffffff">B</td> 	<td style="background-color: #ffffff">C</td> 	<td style="background-color: #ffffff">D</td> 	<td style="background-color: #ffffff">E</td> 	<td style="background-color: #ffffff">F</td> 	<td style="background-color: #ffffff">G</td> 	<td style="background-color: #ffffff">H</td> 	<td style="background-color: #ffffff">I</td> 	<td style="background-color: #ffffff">J</td> 	<td style="background-color: #ffffff">K</td> 	<td style="background-color: #ffffff">L</td> 	<td style="background-color: #ffffff">M</td> 	<td style="background-color: #ffffff">N</td> 	<td style="background-color: #ffffff">O</td> 	<td style="background-color: #ffffff">P</td> </tr> <tr align="center" bgcolor="#ffff99"> 	 	<td style="background-color: #ffffff">R</td> 	<td style="background-color: #ffffff">S</td> 	<td style="background-color: #ffffff">T</td> 	<td style="background-color: #ffffff">U</td> 	<td style="background-color: #ffffff">V</td> 	<td style="background-color: #ffffff">W</td> 	<td style="background-color: #ffffff">X</td> 	<td style="background-color: #ffffff">Y</td> 	<td style="background-color: #ffffff">Z</td> 	<td style="background-color: #ffffff">A</td> 	<td style="background-color: #ffffff">B</td> 	<td style="background-color: #ffffff">C</td> 	<td style="background-color: #ffffff">D</td> 	<td style="background-color: #ffffff">E</td> 	<td style="background-color: #ffffff">F</td> 	<td style="background-color: #ffffff">G</td> 	<td style="background-color: #ffffff">H</td> 	<td style="background-color: #ffffff">I</td> 	<td style="background-color: #ffffff">J</td> 	<td style="background-color: #ffffff">K</td> 	<td style="background-color: #ffffff">L</td> 	<td style="background-color: #ffffff">M</td> 	<td style="background-color: #ffffff">N</td> 	<td style="background-color: #ffffff">O</td> 	<td style="background-color: #ffffff">P</td> 	<td style="background-color: #ffffff">Q</td> </tr> <tr align="center" bgcolor="#ffff99"> 	 	<td style="background-color: #ffffff">S</td> 	<td style="background-color: #ffffff">T</td> 	<td style="background-color: #ffffff">U</td> 	<td style="background-color: #ffffff">V</td> 	<td style="background-color: #ffffff">W</td> 	<td style="background-color: #ffffff">X</td> 	<td style="background-color: #ffffff">Y</td> 	<td style="background-color: #ffffff">Z</td> 	<td style="background-color: #ffffff">A</td> 	<td style="background-color: #ffffff">B</td> 	<td style="background-color: #ffffff">C</td> 	<td style="background-color: #ffffff">D</td> 	<td style="background-color: #ffffff">E</td> 	<td style="background-color: #ffffff">F</td> 	<td style="background-color: #ffffff">G</td> 	<td style="background-color: #ffffff">H</td> 	<td style="background-color: #ffffff">I</td> 	<td style="background-color: #ffffff">J</td> 	<td style="background-color: #ffffff">K</td> 	<td style="background-color: #ffffff">L</td> 	<td style="background-color: #ffffff">M</td> 	<td style="background-color: #ffffff">N</td> 	<td style="background-color: #ffffff">O</td> 	<td style="background-color: #ffffff">P</td> 	<td style="background-color: #ffffff">Q</td> 	<td style="background-color: #ffffff">R</td> </tr> <tr align="center" bgcolor="#ffff99"> 	 	<td style="background-color: #ffffff">T</td> 	<td style="background-color: #ffffff">U</td> 	<td style="background-color: #ffffff">V</td> 	<td style="background-color: #ffffff">W</td> 	<td style="background-color: #ffffff">X</td> 	<td style="background-color: #ffffff">Y</td> 	<td style="background-color: #ffffff">Z</td> 	<td style="background-color: #ffffff">A</td> 	<td style="background-color: #ffffff">B</td> 	<td style="background-color: #ffffff">C</td> 	<td style="background-color: #ffffff">D</td> 	<td style="background-color: #ffffff">E</td> 	<td style="background-color: #ffffff">F</td> 	<td style="background-color: #ffffff">G</td> 	<td style="background-color: #ffffff">H</td> 	<td style="background-color: #ffffff">I</td> 	<td style="background-color: #ffffff">J</td> 	<td style="background-color: #ffffff">K</td> 	<td style="background-color: #ffffff">L</td> 	<td style="background-color: #ffffff">M</td> 	<td style="background-color: #ffffff">N</td> 	<td style="background-color: #ffffff">O</td> 	<td style="background-color: #ffffff">P</td> 	<td style="background-color: #ffffff">Q</td> 	<td style="background-color: #ffffff">R</td> 	<td style="background-color: #ffffff">S</td> </tr> <tr align="center" bgcolor="#ffff99"> 	 	<td style="background-color: #ffffff">U</td> 	<td style="background-color: #ffffff">V</td> 	<td style="background-color: #ffffff">W</td> 	<td style="background-color: #ffffff">X</td> 	<td style="background-color: #ffffff">Y</td> 	<td style="background-color: #ffffff">Z</td> 	<td style="background-color: #ffffff">A</td> 	<td style="background-color: #ffffff">B</td> 	<td style="background-color: #ffffff">C</td> 	<td style="background-color: #ffffff">D</td> 	<td style="background-color: #ffffff">E</td> 	<td style="background-color: #ffffff">F</td> 	<td style="background-color: #ffffff">G</td> 	<td style="background-color: #ffffff">H</td> 	<td style="background-color: #ffffff">I</td> 	<td style="background-color: #ffffff">J</td> 	<td style="background-color: #ffffff">K</td> 	<td style="background-color: #ffffff">L</td> 	<td style="background-color: #ffffff">M</td> 	<td style="background-color: #ffffff">N</td> 	<td style="background-color: #ffffff">O</td> 	<td style="background-color: #ffffff">P</td> 	<td style="background-color: #ffffff">Q</td> 	<td style="background-color: #ffffff">R</td> 	<td style="background-color: #ffffff">S</td> 	<td style="background-color: #ffffff">T</td> </tr> <tr align="center" bgcolor="#ffff99"> 	 	<td style="background-color: #ffffff">V</td> 	<td style="background-color: #ffffff">W</td> 	<td style="background-color: #ffffff">X</td> 	<td style="background-color: #ffffff">Y</td> 	<td style="background-color: #ffffff">Z</td> 	<td style="background-color: #ffffff">A</td> 	<td style="background-color: #ffffff">B</td> 	<td style="background-color: #ffffff">C</td> 	<td style="background-color: #ffffff">D</td> 	<td style="background-color: #ffffff">E</td> 	<td style="background-color: #ffffff">F</td> 	<td style="background-color: #ffffff">G</td> 	<td style="background-color: #ffffff">H</td> 	<td style="background-color: #ffffff">I</td> 	<td style="background-color: #ffffff">J</td> 	<td style="background-color: #ffffff">K</td> 	<td style="background-color: #ffffff">L</td> 	<td style="background-color: #ffffff">M</td> 	<td style="background-color: #ffffff">N</td> 	<td style="background-color: #ffffff">O</td> 	<td style="background-color: #ffffff">P</td> 	<td style="background-color: #ffffff">Q</td> 	<td style="background-color: #ffffff">R</td> 	<td style="background-color: #ffffff">S</td> 	<td style="background-color: #ffffff">T</td> 	<td style="background-color: #ffffff">U</td> </tr> <tr align="center" bgcolor="#ffff99"> 	 	<td style="background-color: #ffffff">W</td> 	<td style="background-color: #ffffff">X</td> 	<td style="background-color: #ffffff">Y</td> 	<td style="background-color: #ffffff">Z</td> 	<td style="background-color: #ffffff">A</td> 	<td style="background-color: #ffffff">B</td> 	<td style="background-color: #ffffff">C</td> 	<td style="background-color: #ffffff">D</td> 	<td style="background-color: #ffffff">E</td> 	<td style="background-color: #ffffff">F</td> 	<td style="background-color: #ffffff">G</td> 	<td style="background-color: #ffffff">H</td> 	<td style="background-color: #ffffff">I</td> 	<td style="background-color: #ffffff">J</td> 	<td style="background-color: #ffffff">K</td> 	<td style="background-color: #ffffff">L</td> 	<td style="background-color: #ffffff">M</td> 	<td style="background-color: #ffffff">N</td> 	<td style="background-color: #ffffff">O</td> 	<td style="background-color: #ffffff">P</td> 	<td style="background-color: #ffffff">Q</td> 	<td style="background-color: #ffffff">R</td> 	<td style="background-color: #ffffff">S</td> 	<td style="background-color: #ffffff">T</td> 	<td style="background-color: #ffffff">U</td> 	<td style="background-color: #ffffff">V</td> </tr> <tr align="center" bgcolor="#ffff99"> 	 	<td style="background-color: #ffffff">X</td> 	<td style="background-color: #ffffff">Y</td> 	<td style="background-color: #ffffff">Z</td> 	<td style="background-color: #ffffff">A</td> 	<td style="background-color: #ffffff">B</td> 	<td style="background-color: #ffffff">C</td> 	<td style="background-color: #ffffff">D</td> 	<td style="background-color: #ffffff">E</td> 	<td style="background-color: #ffffff">F</td> 	<td style="background-color: #ffffff">G</td> 	<td style="background-color: #ffffff">H</td> 	<td style="background-color: #ffffff">I</td> 	<td style="background-color: #ffffff">J</td> 	<td style="background-color: #ffffff">K</td> 	<td style="background-color: #ffffff">L</td> 	<td style="background-color: #ffffff">M</td> 	<td style="background-color: #ffffff">N</td> 	<td style="background-color: #ffffff">O</td> 	<td style="background-color: #ffffff">P</td> 	<td style="background-color: #ffffff">Q</td> 	<td style="background-color: #ffffff">R</td> 	<td style="background-color: #ffffff">S</td> 	<td style="background-color: #ffffff">T</td> 	<td style="background-color: #ffffff">U</td> 	<td style="background-color: #ffffff">V</td> 	<td style="background-color: #ffffff">W</td> </tr> <tr align="center" bgcolor="#ffff99"> 	 	<td style="background-color: #ffffff">Y</td> 	<td style="background-color: #ffffff">Z</td> 	<td style="background-color: #ffffff">A</td> 	<td style="background-color: #ffffff">B</td> 	<td style="background-color: #ffffff">C</td> 	<td style="background-color: #ffffff">D</td> 	<td style="background-color: #ffffff">E</td> 	<td style="background-color: #ffffff">F</td> 	<td style="background-color: #ffffff">G</td> 	<td style="background-color: #ffffff">H</td> 	<td style="background-color: #ffffff">I</td> 	<td style="background-color: #ffffff">J</td> 	<td style="background-color: #ffffff">K</td> 	<td style="background-color: #ffffff">L</td> 	<td style="background-color: #ffffff">M</td> 	<td style="background-color: #ffffff">N</td> 	<td style="background-color: #ffffff">O</td> 	<td style="background-color: #ffffff">P</td> 	<td style="background-color: #ffffff">Q</td> 	<td style="background-color: #ffffff">R</td> 	<td style="background-color: #ffffff">S</td> 	<td style="background-color: #ffffff">T</td> 	<td style="background-color: #ffffff">U</td> 	<td style="background-color: #ffffff">V</td> 	<td style="background-color: #ffffff">W</td> 	<td style="background-color: #ffffff">X</td> </tr> <tr align="center" bgcolor="#ffff99"> 	 	<td style="background-color: #ffffff">Z</td> 	<td style="background-color: #ffffff">A</td> 	<td style="background-color: #ffffff">B</td> 	<td style="background-color: #ffffff">C</td> 	<td style="background-color: #ffffff">D</td> 	<td style="background-color: #ffffff">E</td> 	<td style="background-color: #ffffff">F</td> 	<td style="background-color: #ffffff">G</td> 	<td style="background-color: #ffffff">H</td> 	<td style="background-color: #ffffff">I</td> 	<td style="background-color: #ffffff">J</td> 	<td style="background-color: #ffffff">K</td> 	<td style="background-color: #ffffff">L</td> 	<td style="background-color: #ffffff">M</td> 	<td style="background-color: #ffffff">N</td> 	<td style="background-color: #ffffff">O</td> 	<td style="background-color: #ffffff">P</td> 	<td style="background-color: #ffffff">Q</td> 	<td style="background-color: #ffffff">R</td> 	<td style="background-color: #ffffff">S</td> 	<td style="background-color: #ffffff">T</td> 	<td style="background-color: #ffffff">U</td> 	<td style="background-color: #ffffff">V</td> 	<td style="background-color: #ffffff">W</td> 	<td style="background-color: #ffffff">X</td> 	<td style="background-color: #ffffff">Y</td> </tr> </tbody></table><div style="text-align: justify"><br /><div align="justify"><span style="font-size: small">En orange figure l&#39;alphabet clair, suivi des 26 r&eacute;p&eacute;titions avec d&eacute;calage d&#39;une lettre &agrave; chaque fois.<br /><br />Alice va d&eacute;finir un mot-clef, par exemple NUIT, qui lui servira &agrave; crypter le message. Voyons comment :</span><br /></div><br /></div><table border="0" style="width: 420px; height: 79px; text-align: left; margin-left: 0px; margin-right: 0px"><tbody><tr><td><span style="font-size: small">texte clair&nbsp;</span></td><td><span style="font-size: small">&nbsp;r</span></td><td><span style="font-size: small">d <br /></span></td><td><span style="font-size: small">v <br /></span></td><td><span style="font-size: small">l <br /></span></td><td><span style="font-size: small">u <br /></span></td><td><span style="font-size: small">n <br /></span></td><td><span style="font-size: small">d <br /></span></td><td><span style="font-size: small">i <br /></span></td><td><span style="font-size: small">d<br /></span></td><td><span style="font-size: small">i <br /></span></td><td><span style="font-size: small">x <br /></span></td><td><span style="font-size: small">h <br /></span></td><td><span style="font-size: small">e <br /></span></td><td><span style="font-size: small">u <br /></span></td><td><span style="font-size: small">r <br /></span></td><td><span style="font-size: small">e <br /></span></td><td><span style="font-size: small">s <br /></span></td></tr><tr><td><span style="font-size: small">&nbsp;mot-clef</span></td><td><span style="font-size: small">&nbsp;N</span></td><td><span style="font-size: small">U<br /></span></td><td><span style="font-size: small">I<br /></span></td><td><span style="font-size: small">T<br /></span></td><td><span style="font-size: small">N <br /></span></td><td><span style="font-size: small">U <br /></span></td><td><span style="font-size: small">I <br /></span></td><td><span style="font-size: small">T <br /></span></td><td><span style="font-size: small">N <br /></span></td><td><span style="font-size: small">U<br /></span></td><td><span style="font-size: small">I<br /></span></td><td><span style="font-size: small">T<br /></span></td><td><span style="font-size: small">N<br /></span></td><td><span style="font-size: small">U<br /></span></td><td><span style="font-size: small">I<br /></span></td><td><span style="font-size: small">T <br /></span></td><td><span style="font-size: small">N<br /></span></td></tr><tr><td><span style="font-size: small">&nbsp;texte chiffr&eacute;<br /></span></td><td><span style="font-size: small">E<br /></span></td><td><span style="font-size: small">X <br /></span></td><td><span style="font-size: small">D <br /></span></td><td><span style="font-size: small">E<br /></span></td><td><span style="font-size: small">H <br /></span></td><td><span style="font-size: small">H <br /></span></td><td><span style="font-size: small">L <br /></span></td><td><span style="font-size: small">B <br /></span></td><td><span style="font-size: small">Q <br /></span></td><td><span style="font-size: small">C <br /></span></td><td><span style="font-size: small">F <br /></span></td><td><span style="font-size: small">A <br /></span></td><td><span style="font-size: small">R <br /></span></td><td><span style="font-size: small">O <br /></span></td><td><span style="font-size: small">Z <br /></span></td><td><span style="font-size: small">X <br /></span></td><td><span style="font-size: small">F <br /></span></td></tr></tbody></table><div style="text-align: justify"><br /><span style="font-size: small">Pour chaque lettre claire, on utilisera l&#39;alphabet commen&ccedil;ant par la lettre du mot-clef correspondant. Ainsi, le premier r est chiffr&eacute; &agrave; l&#39;aide de l&#39;alphabet du carr&eacute; commen&ccedil;ant par NOPQ... C&#39;est ce qui fait la force du chiffre de Vigen&egrave;re : une m&ecirc;me lettre est chiffr&eacute;e par plusieurs autres (dans l&#39;exemple, r est chiffr&eacute; par E et Z), et une m&ecirc;me lettre chiffr&eacute;e correspond &agrave; plusieurs lettres claires (le H est &agrave; la fois u et n, par exemple). Des mots entiers peuvent &ecirc;tre chiffr&eacute;s de mani&egrave;re diff&eacute;rente.</span><br /><br /><br /><span style="font-size: medium; color: #660033"><strong>Cryptanalyse : la m&eacute;thode Babbage-Kasiski</strong></span><br /></div><hr style="width: 100%; height: 2px; margin-left: 0px; margin-right: 0px" /><div style="text-align: justify"><br /><span style="font-size: small">Le chiffre de Vigen&egrave;re est longtemps rest&eacute; le chiffre ind&eacute;chiffrable. Deux m&eacute;thodes principales de cryptanalyse existent, celle de Babbage et Kasiski, et celle du commandant Bazerie.<br /><br /><span style="color: #660099"><ins><em><strong># la m&eacute;thode Babbage-Kasiski</strong></em></ins></span><br />Elle consiste &agrave; <strong>chercher les r&eacute;p&eacute;titions dans le texte chiffr&eacute;</strong>. En effet, lorsque le message est assez long, il est fatal que la clef va se r&eacute;p&eacute;ter sur deux s&eacute;quences de texte identiques - la s&eacute;quence chiffr&eacute;e sera donc la m&ecirc;me.<br />Afin d&#39;&eacute;viter d&#39;&ecirc;tre parasit&eacute; par des s&eacute;quences chiffr&eacute;es identiques par hasard, il est pr&eacute;f&eacute;rable de rechercher uniquement les s&eacute;quences de <strong>quatre lettres et plus</strong>.<br /></span><br /><span style="font-size: small">ex : (<a href="http://www.apprendre-en-ligne.net/crypto/vigenere/decodevig.html">&lt;source&gt;</a> )<br /><br /></span><span style="font-size: small; font-family: Courier New,Courier,mono; color: #000000">KQOWE          FVJPU JUUNU KGLME KJINM WUXFQ MKJBG WRLFN FGHUD </span> <span style="font-size: small; font-family: Courier New,Courier,mono; color: #ee6600"><strong>WUU</strong></span><span style="font-size: small; font-family: Courier New,Courier,mono; color: #000000">MB          SVLPS NCMUE KQC</span><span style="font-size: small; font-family: Courier New,Courier,mono">TE          SWR<span style="color: #0000ff"><strong>EE K</strong></span></span><span style="font-size: small; font-family: Courier New,Courier,mono; color: #000000">OYSS          IWCTU AXYOT APXPL WPNTC GOJBG FQHTD <span style="color: #00aa22"><strong>WXIZA</strong></span>          <span style="color: #00aa22"><strong>YG</strong></span>FFN SXCSE YNCTS SPNTU JNYTG</span><span style="font-size: small; font-family: Courier New,Courier,mono">          GWZGR <span style="color: #ee6600"><strong>WUU</strong></span></span><span style="font-size: small; font-family: Courier New,Courier,mono; color: #000000">NE          JUUQE APYME KQHUI DUXFP GUYTS MTFFS H</span><span style="font-size: small; font-family: Courier New,Courier,mono; color: #ff0000"><strong>NUOC          ZGM</strong></span><span style="font-size: small; font-family: Courier New,Courier,mono; color: #000000">RU          WEYTR GKMEE DCTVR ECFBD JQCUS WVBPN LGOYL SKMTE FVJJT WWMFM WPNME MTMHR          SPXFS SKFFS T<span style="color: #ff0000"><strong>NUOC ZGM</strong></span><strong>DO EOY</strong><span style="color: #0000ff"><strong>EE          K</strong></span>CPJR GPMUR SKHFR SEIUE VGOYC <span style="color: #00aa22"><strong>WXIZA          YG</strong></span>OSA ANY<strong>DO EOY</strong>JL WUNHA MEBFE LXYVL WNOJN SIOFR WUCCE          SWKVI D<span style="color: #990099"><strong>GMU</strong></span>C GOCRU WGNMA AFFVN SIUDE          KQHCE UCPFC MPVSU DGAVE MNYMA MVLFM AOYFN TQCUA FVFJN XKLNE IWCWO DCCUL          WRIFT W<span style="color: #990099"><strong>GMU</strong></span>S WOVMA TNYBU HTCOC WFYTN          MGYTQ MKBBN LGFBT WOJFT WGNTE JKNEE DCLDH WTVBU VGFBI JG</span><span style="font-size: small"><br /><br />Apr&egrave;s avoir rep&eacute;r&eacute; les s&eacute;quences de plus que quatre lettres se r&eacute;p&eacute;tant, il faut compter les intervalles s&eacute;parant celles-ci. Ensuite, en cherchant les facteurs communs des diff&eacute;rents intervalles, on cherche les longueurs possibles de la clef :<br /></span><br /></div><table border="1" cellpadding="1" cellspacing="2" style="text-align: left; margin-left: 0px; margin-right: 0px"><tbody><tr><td><span style="font-size: small">&nbsp;</span></td>         <td><span style="font-size: small">&nbsp;</span></td>         <td bgcolor="#ccccff" colspan="7"><span style="font-size: small">Longueurs de clef possibles</span></td>     </tr>     <tr align="center">         <td bgcolor="#ccccff"><span style="font-size: small">S&eacute;quence r&eacute;p&eacute;t&eacute;e</span></td>         <td bgcolor="#ccccff"><span style="font-size: small">Espace de r&eacute;p&eacute;tition</span></td>         <td align="center"><span style="font-size: small">2 </span></td> 	<td align="center"><span style="font-size: small">3 </span></td>         <td align="center"><span style="font-size: small">5 </span></td>         <td align="center"><span style="font-size: small">19</span></td>     </tr>     <tr align="center">         <td align="center"><span style="font-size: small; color: #ee6600"><strong>WUU</strong></span></td>         <td align="center"><span style="font-size: small">95</span></td>         <td align="center"><span style="font-size: small">&nbsp; &nbsp;</span></td>         <td align="center"><span style="font-size: small">&nbsp; &nbsp;</span></td>         <td align="center" bgcolor="#ff6633"><span style="font-size: small">x</span></td>         <td align="center"><span style="font-size: small">x</span></td>     </tr>     <tr align="center">         <td align="center"><span style="font-size: small; color: #0000ff"><strong>EEK</strong></span></td>         <td align="center"><span style="font-size: small">200</span></td>         <td align="center"><span style="font-size: small">x</span></td>         <td align="center"><span style="font-size: small">&nbsp; &nbsp;</span></td>         <td align="center" bgcolor="#ff6633"><span style="font-size: small">x</span></td>         <td align="center"><span style="font-size: small">&nbsp;</span></td>     </tr>     <tr align="center">         <td align="center"><span style="font-size: small; color: #00aa22"><strong>WXIZAYG</strong></span></td>         <td align="center"><span style="font-size: small">190</span></td>         <td><span style="font-size: small">x</span></td>         <td align="center"><span style="font-size: small">&nbsp; &nbsp;</span></td>         <td align="center" bgcolor="#ff6633"><span style="font-size: small">x</span></td>         <td><span style="font-size: small">x</span></td>     </tr>     <tr align="center">         <td align="center"><span style="font-size: small; color: #ff0000"><strong>NUOCZGM</strong></span></td>         <td align="center"><span style="font-size: small">80</span></td>         <td><span style="font-size: small">x</span></td>         <td align="center"><span style="font-size: small">&nbsp; &nbsp;</span></td>         <td align="center" bgcolor="#ff6633"><span style="font-size: small">x</span></td>         <td><span style="font-size: small">&nbsp; </span></td>     </tr>     <tr align="center">         <td align="center"><span style="font-size: small; color: #000000"><strong>DOEOY</strong></span></td>         <td align="center"><span style="font-size: small">45</span></td>         <td align="center"><span style="font-size: small">&nbsp;</span></td>         <td align="center"><span style="font-size: small">x</span></td>         <td align="center" bgcolor="#ff6633"><span style="font-size: small">x</span></td>         <td><span style="font-size: small">&nbsp; </span></td>     </tr>     <tr align="center">         <td align="center"><span style="font-size: small; color: #990099"><strong>GMU</strong></span></td>         <td align="center"><span style="font-size: small">90</span></td>         <td align="center"><span style="font-size: small">x</span></td>         <td align="center"><span style="font-size: small">x</span></td>         <td align="center" bgcolor="#ff6633"><span style="font-size: small">x</span></td>         <td><span style="font-size: small">&nbsp; </span></td></tr></tbody></table><div style="text-align: justify"><br />I<span style="font-size: small">ci, il appara&icirc;t que la seule longueur commune &agrave; toutes les r&eacute;p&eacute;titions est 5. La clef comporte donc 5 caract&egrave;res.<br /><br /><span style="color: #660099"><ins><em><strong># Et pour d&eacute;terminer le mot-clef ?</strong></em></ins></span><br />Comme on sait maintenant que la clef comporte cinq caract&egrave;res, on sait &eacute;galement que, toutes les cinq lettres, c&#39;est le m&ecirc;me alphabet qui est utilis&eacute;.<br />L&#39;<strong>analyse de fr&eacute;quences</strong> retrouve alors toute son utilit&eacute;. En &eacute;tablissant un tableau de fr&eacute;quences pour chaque alphabet de la clef, il est possible de retrouver au fur et &agrave; mesure chaque lettre de la clef et, partant, de reconstituer le message clair.<br /><br />Le texte de l&#39;exemple devient donc :<br /><em>Souvent pour s&#39;amuser les hommes d&#39;&eacute;quipage prennent des albatros, vastes oiseaux des mers, qui suivent, indolents compagnons de voyage, le navire glissant sur les gouffres amers. A peine les ont-ils d&eacute;pos&eacute;s sur les planches que ces rois de l&#39;azur, maladroits et honteux, laissent piteusement leurs grandes ailes blanches, comme des avirons, tra&icirc;ner &agrave; c&ocirc;t&eacute; d&#39;eux. Ce voyageur ail&eacute;, comme il est gauche et veule, lui nagu&egrave;re si beau, qu&#39;il est comique et laid. L&#39;un agace son bec avec un br&ucirc;le-gueule, l&#39;autre mime en boitant l&#39;infirme qui volait. Le po&egrave;te est semblable au prince des nu&eacute;es, qui hante la temp&ecirc;te et se rit de l&#39;archer.</em> (Baudelaire, L&#39;Albatros)</span><br /><br /><br /><span style="font-size: medium; color: #660033"><strong>Cryptanalyse : la m&eacute;thode Bazeries</strong></span><br /></div><hr style="width: 100%; height: 2px; margin-left: 0px; margin-right: 0px" /><div style="text-align: justify"><br /><span style="font-size: small">Pour ceux qui ont eu le courage de lire jusque l&agrave;, une m&eacute;hode plus simple et moins fastidieuse que celle de Babbage et Kasiski.<br /><br />Elle se base sur la technique du <strong>mot probable</strong>. On suppose ainsi que le message intercept&eacute; renferme un mot particulier, par exemple &quot;attaque&quot;, &quot;m&eacute;t&eacute;o&quot; ou n&#39;importe quoi d&#39;autre.<br />On va donc chercher ce mot, qui n&#39;est pas le mot-clef mais va permettre de le d&eacute;couvrir, en prenant une &agrave; une des s&eacute;quences du nombre de lettres du mot-clef et en soustrayant les lettres entre elles, jusqu&#39;&agrave; ce qu&#39;apparaisse un <strong>motif de lettres r&eacute;p&eacute;t&eacute;es</strong>, qui sera le mot-clef.<br /><br />Plus de d&eacute;tails <a href="http://www.apprendre-en-ligne.net/crypto/vigenere/motprobvig.html">&lt;ici&gt;</a>. Je n&#39;aime pas cette m&eacute;thode, d&#39;une approche tr&egrave;s r&eacute;ductive. Elle est s&ucirc;rement payante en temps de conflits, lorsque les messages envoy&eacute;s sont tr&egrave;s courts, mais emp&ecirc;che une approche plus globale du chiffre de Vigen&egrave;re.</span><br /><br /><br /><span style="font-size: medium; color: #660033"><strong>Force et faiblesse</strong></span><br /></div><hr style="width: 100%; height: 2px; margin-left: 0px; margin-right: 0px" /><div style="text-align: justify"><br /><span style="font-size: small">La force du Vigen&egrave;re r&eacute;side dans l&#39;<strong>utilisation de plusieurs alphabets</strong>, et rend la cryptanalyse plus complexe - les exemples choisis utilisent un clef courte avec donc une grande probabilit&eacute; de r&eacute;p&eacute;titions, mais une <strong>clef aussi longue que le message</strong> rend en th&eacute;orie le chiffre totalement s&eacute;curitaire. Des chiffres d&eacute;riv&eacute;s du Vigen&egrave;re, comme par exemple le Grand Chiffre de Louis XIV, ont tenu les cryptanalyste en &eacute;chec alors m&ecirc;me que l&#39;on savait briser le Vigen&egrave;re.<br /><br />Vigen&egrave;re reste donc enti&egrave;rement d&#39;actualit&eacute;, au contraire des <a href="http://stockholm.eklablog.com/article-13185-63805-les-chiffres-monoalphabetiques-de-substitution.html">&lt;chiffres monoalphab&eacute;tiques&gt;</a>  et des <a href="http://stockholm.eklablog.com/article-13185-68805-les-chiffres-monoalphabetiques-de-transposition.html">&lt;chiffres de transposition simples&gt;</a> .<br />Et promis, si j&#39;apprends &agrave; coder, je ferai un bel applet pour briser le Vigen&egrave;re - on peut en trouver des tout pr&ecirc;ts sur Internet, mais je n&#39;aime pas beaucoup ce qui est tout m&acirc;ch&eacute;. C&#39;est tellement plus rigolo de le faire soi-m&ecirc;me !<br /></span><span class="citation" class="citation"></span></div>]]></content:encoded>
		<pubDate>Fri, 08 Feb 2008 22:23:33 +0100</pubDate>
		<guid isPermaLink="true">http://stockholm.eklablog.com/article-13185-74338-vigenere-le-chiffre-indechiffrable.html</guid>
	</item>
	<item>
		<title><![CDATA[Les chiffres monoalphabétiques de transposition]]></title>
		<link>http://stockholm.eklablog.com/article-13185-68805-les-chiffres-monoalphabetiques-de-transposition.html</link>
		<dc:creator>Stockholm</dc:creator>
		<description><![CDATA[Les principes de la transposition]]></description>
		<content:encoded><![CDATA[<div align="justify"><span style="font-size: medium; color: #990033"><strong>Cryptographie</strong></span><br /></div><hr size="2" width="100%" /><div align="justify"><br /><span style="font-size: small">Dans un chiffre de transposition, chaque lettre reste ce qu&#39;elle est. Un <em>a</em> sera toujours un <em>a</em>, un <em>t</em> toujours un <em>t</em>. Le principe est celui des anagrammes : <strong>m&eacute;langer les lettres composant le message.</strong><br />Ainsi, <em>bac </em>et <em>cab </em>sont des anagrammes - il suffit d&#39;appliquer ce principe &agrave; l&#39;ensemble du message, en suivant une r&egrave;gle d&eacute;finie afin que Bernard puisse d&eacute;chiffrer le message.<br /><br /><span style="color: #660066"><ins><em><strong>&curren; Le Rail Fence</strong></em></ins></span><br />Il s&#39;agit d&#39;un classique du genre. Le principe : <strong>&eacute;crire le message sur x lignes, et r&eacute;&eacute;crire le message en prenant une lettre sur chaque ligne</strong> :<br /><br />ex : on souhaite crypter la phrase &quot;Les partiels sont dans un mois.&quot; avec un Rail Fence &agrave; deux lignes.<br /><br /><span style="color: #336633">1&egrave;re &eacute;tape : &eacute;crire le texte sur deux lignes (Alice)</span><br /></span></div><table border="0"><tbody><tr><td><span style="font-size: small">L&nbsp;</span></td><td><span style="font-size: small">e <br /></span></td><td><span style="font-size: small">s <br /></span></td><td><span style="font-size: small">p <br /></span></td><td><span style="font-size: small">a <br /></span></td><td><span style="font-size: small">r <br /></span></td><td><span style="font-size: small">t <br /></span></td><td><span style="font-size: small">i <br /></span></td><td><span style="font-size: small">e <br /></span></td><td><span style="font-size: small">l <br /></span></td><td><span style="font-size: small">s <br /></span></td><td><span style="font-size: small">s <br /></span></td><td><span style="font-size: small">o <br /></span></td></tr><tr><td><span style="font-size: small">n <br /></span></td><td><span style="font-size: small">t <br /></span></td><td><span style="font-size: small">d <br /></span></td><td><span style="font-size: small">a <br /></span></td><td><span style="font-size: small">n <br /></span></td><td><span style="font-size: small">s <br /></span></td><td><span style="font-size: small">u <br /></span></td><td><span style="font-size: small">n <br /></span></td><td><span style="font-size: small">m <br /></span></td><td><span style="font-size: small">o <br /></span></td><td><span style="font-size: small">i <br /></span></td><td><span style="font-size: small">s <br /></span></td><td><span style="font-size: small">. <br /></span></td></tr></tbody></table><div align="justify"><span style="font-size: small"><br /><span style="color: #336633">2&egrave;me &eacute;tape : r&eacute;&eacute;crire le message suivant le chiffre (Alice)</span><br />-&gt; <em>Lnetsdpaanrstuinemlosisso</em>.<br /><br /><span style="color: #336633">3&egrave;me &eacute;tape : lecture par Bernard</span><br />Il est bien &eacute;videmment crucial que Bernard connaisse le nombre de lignes utilis&eacute;. Il lui suffira de recopier le texte chiffr&eacute; sur autant de lignes qu&#39;Alice en a utilis&eacute; pour reconstituer le tableau de d&eacute;part et voir appara&icirc;tre le texte clair.</span><span style="font-size: small"><br /><br />&curren; D&#39;autres techniques peuvent &ecirc;tre utilis&eacute;es pour m&eacute;langer les lettres, mais le r&eacute;sultat est toujours le m&ecirc;me : un anagramme du message d&#39;origine.<br /><br />&curren; La transposition est davantage utilis&eacute;e en combinaison avec un chiffre de substitution que seule (chiffre ADFGVX par exemple), mais le principe reste le m&ecirc;me. Le cadre est toutefois diff&eacute;rent et m&eacute;rite &agrave; lui seul un article entier - donc, on verra &ccedil;a plus tard.<br /></span><br /><br /><span style="font-size: medium; color: #990033"><strong>Cryptanalyse</strong></span><br /></div><hr size="2" width="100%" /><div align="justify"><br /><span style="font-size: small">&curren; Inutile de <strong>chercher tous les anagrammes possibles</strong> (sauf pour un message extr&ecirc;mement court), c&#39;est fatigant et beaucoup trop long. Il est toujours possible de commencer par essayer quelques chiffres simples (un Rail Fence &agrave; deux ou trois lignes, par exemple). On ne sait jamais, &ccedil;a pourrait marcher, si Alice n&#39;a pas recherch&eacute; un bon niveau de s&eacute;curit&eacute;.<br /><br /><span style="color: #660066"><ins><em><strong>&curren; L&#39;analyse de fr&eacute;quence</strong></em></ins></span><br />Elle doit rester le premier r&eacute;flexe face &agrave; un texte chiffr&eacute;. Dans le cas d&#39;un chiffre de transposition, <strong>les fr&eacute;quences de la langue originelle seront respect&eacute;es</strong>, chaque lettre restant ce qu&#39;elle est (seule sa place dans le message est modifi&eacute;e). Elle n&#39;apporte donc pas grand-chose, &agrave; part permettre d&#39;identifier qu&#39;il s&#39;agit d&#39;un chiffre monoalphab&eacute;tique de transposition.<br /><br /><span style="color: #660066"><ins><em><strong>&curren; Identifier des s&eacute;quences</strong></em></ins></span><br />La langue ayant &eacute;t&eacute; identifi&eacute;e, il faut rechercher des s&eacute;quences se r&eacute;p&eacute;tant. En fran&ccedil;ais, il est assez pratique de commencer par <strong>rechercher les doublons</strong>&nbsp; (dans l&#39;ordre: ss, ll, mm, rr, tt, nn, pp, ee, cc, ff) et les <strong>mots de trois lettres</strong> les plus fr&eacute;quents ( que, les, son, mon, pas, lui, une, des, qui, est) ou <strong>d&#39;autres s&eacute;quences courantes</strong> (ion, ent...).<br />L&#39;objectif est donc globalement, contrairement aux chiffres de substitution, de retrouver l&#39;algorithme utilis&eacute;.<br /><br /><span style="color: #660066"><ins><em><strong>&curren; Les mots probables</strong></em></ins></span><br />Si vous avez une id&eacute;e du contenu du message, il est possible d&#39;essayer de retrouver certains mots afin d&#39;identifier la s&eacute;quence de chiffrement.<br /><br /><span style="color: #660066"><ins><em><strong>&curren; Chercher des anagrammes</strong></em></ins></span><br />Il est possible de chercher des anagrammes des premiers caract&egrave;res. L&#39;apparition d&#39;une s&eacute;quence pronon&ccedil;able ou ayant un sens permet alors d&#39;identifier la clef. Mais attention, un Rail Fence utilisant de nombreuses lignes d&eacute;courage ce genre de pratiques.<br /></span><br /><br /><br /><span style="font-size: medium; color: #990033"><strong>Force et faiblesse<br /></strong></span></div><hr size="2" width="100%" /><div align="justify"><br /><span style="font-size: small">Un chiffre de transposition est <strong>&quot;relativement&quot; solide</strong> ; en effet, la cryptanalyse est assez emm...nuyeuse avec l&#39;impossibilit&eacute; d&#39;utiliser les analyses de fr&eacute;quence. Le coupler avec un chiffre de substitution renforce encore la s&eacute;curit&eacute;, mais attention, il n&#39;est surtout pas infaillible ! Il d&eacute;couragera les cryptanalystes novices (et encore) sans pour autant barrer la route aux autres.<br />Bref, &agrave; ne pas utiliser pour les documents importants !<br /></span></div>]]></content:encoded>
		<pubDate>Thu, 24 Jan 2008 17:57:01 +0100</pubDate>
		<guid isPermaLink="true">http://stockholm.eklablog.com/article-13185-68805-les-chiffres-monoalphabetiques-de-transposition.html</guid>
	</item>
	<item>
		<title><![CDATA[[Programmation] Les analyses de fréquence]]></title>
		<link>http://stockholm.eklablog.com/article-13185-65223-programmation-les-analyses-de-frequence.html</link>
		<dc:creator>Stockholm</dc:creator>
		<description><![CDATA[Un programme d&#39;analyse de fr&eacute;quence pour TI-83+]]></description>
		<content:encoded><![CDATA[ <div align="justify"><span style="font-size: small">Parce que calculer les fr&eacute;quences &agrave; la main est lassant (baste encore pour un chiffre monoalphab&eacute;tique, mais quand il s&#39;agit d&#39;un chiffre polyalphab&eacute;tique avec une clef &agrave; rallonges, &agrave; force...), un petit programme pour que la calculette fasse tout &agrave; votre place.<br /> <br /> Dans le programme, T est le nombre total de caract&egrave;res et N le nombre d&#39;apparitions de chaque lettre. La calculatrice demandera 26 fois N, une fois pour chaque lettre (si vous disposez de moins de lettres, rien de plus facile que de changer &ccedil;a) et affichera aussit&ocirc;t la fr&eacute;quence en pourcentage. Apr&egrave;s la 26&egrave;me boucle, le programme s&#39;arr&ecirc;tera tout seul.<br /> <br /> <div class="code"> :0-&gt;B<br /> :Prompt T<br /> :Lbl A<br /> :Prompt N<br /> :N/T-&gt;F<br /> :F*100-&gt;F<br /> :Disp F<br /> :(B+1)-&gt;B<br /> :If B&ne;26<br /> :Goto A<br /> :If B=26<br /> :Stop<br /> </div> <br /><br />Je m&#39;excuse aupr&egrave;s des pros en programmation qui passent par ici, mais j&#39;ai trouv&eacute; plus simple de ne pas faire remplir de tableau...</span></div> ]]></content:encoded>
		<pubDate>Fri, 11 Jan 2008 12:00:59 +0100</pubDate>
		<guid isPermaLink="true">http://stockholm.eklablog.com/article-13185-65223-programmation-les-analyses-de-frequence.html</guid>
	</item>
	<item>
		<title><![CDATA[Les chiffres monoalphabétiques de substitution]]></title>
		<link>http://stockholm.eklablog.com/article-13185-63805-les-chiffres-monoalphabetiques-de-substitution.html</link>
		<dc:creator>Stockholm</dc:creator>
		<description><![CDATA[Chiffre de C&eacute;sar et ses d&eacute;riv&eacute;s

L&#39;analyse de fr&eacute;quences]]></description>
		<content:encoded><![CDATA[<div style="text-align: justify"><span style="font-size: medium; color: #660000"><span style="font-weight: bold">Principe</span></span><br /></div><hr size="2" style="margin-left: 0px; margin-right: 0px" width="100%" /><div style="text-align: justify"><br /><span style="font-size: small">Il s&#39;agit de remplacer une lettre de l&#39;alphabet par une autre (ou par un symbole unique).</span><br /><br /><br /><span style="font-size: medium; color: #660000"><span style="font-weight: bold">Cryptologie</span></span><br /></div><hr size="2" style="margin-left: 0px; margin-right: 0px" width="100%" /><div style="text-align: justify"><br /><span style="font-size: small"><br />Il faut tout d&#39;abord <span style="font-weight: bold">m&eacute;langer les lettres de l&#39;alphabet</span> selon un sch&eacute;ma connu d&#39;Alice et de Bernard. Plusieurs possibilit&eacute;s existent afin de crypter l&#39;alphabet :<br /><br />&nbsp;&nbsp;&nbsp; - <span style="font-style: italic; color: #336600">le chiffre de C&eacute;sar</span> : conserve l&#39;ordre des lettres ; se contente de d&eacute;caler le d&eacute;but de l&#39;alphabet de x rangs (historiquement, C&eacute;sar, qui utilisait une grande quantit&eacute; de chiffres durant ses campagnes, d&eacute;calait de trois rangs, avec a devenant C, b devenant D, et ainsi de suite). Il fournit donc 26 alphabets possibles.<br /><br />&nbsp;&nbsp;&nbsp; - <span style="font-style: italic; color: #336600">l&#39;utilisation d&#39;un mot-clef en d&eacute;but d&#39;alphabet</span>, puis reprendre l&#39;ordre des lettres restantes: STOCKHLMBDEFGIJNPQRUVWXYZ. Facile &agrave; utiliser, cette technique augmente consid&eacute;rablement le nombre d&#39;alphabets disponibles.<br /><br />&nbsp;&nbsp;&nbsp; - <span style="font-style: italic; color: #336600">le m&eacute;lange plus al&eacute;atoire des lettres</span>, par exemple en les inscrivant horizontalement dans un tableau de 5x5 (le I et le J &eacute;tant alors confondus) et en r&eacute;&eacute;crivant l&#39;alphabet en lisant verticalement le tableau.<br /></span><br /><br /><span style="font-size: medium; color: #660000"><span style="font-weight: bold">Cryptanalyse</span></span><br /></div><hr size="2" style="margin-left: 0px; margin-right: 0px" width="100%" /><div style="text-align: justify"><br /><span style="font-size: small">Le <span style="font-weight: bold">niveau de s&eacute;curit&eacute;</span> offert par les chiffres monoalphab&eacute;tiques de substitution est <span style="font-weight: bold">tr&egrave;s faible</span>. Un cryptanalyste entra&icirc;n&eacute; n&#39;aura ainsi besoin que d&#39;une vingtaine de minutes pour d&eacute;chiffrer un message de plusieurs pages... Une utilisation en dehors des salles de classe est ainsi fortement d&eacute;conseill&eacute;e !<br /><br />Il ne faut bien entendu pas chercher toutes les clefs possibles. Bien que cette technique puisse &ecirc;tre utilis&eacute;e avec succ&egrave;s sur le chiffre de C&eacute;sar, elle est inutilement longue et p&eacute;nible, en plus d&#39;&ecirc;tre mise en &eacute;chec par des chiffres un tantinet plus &eacute;labor&eacute;s.<br /><br />Le moyen &agrave; utiliser consiste &agrave; <span style="font-weight: bold">analyser les fr&eacute;quences d&#39;apparition des lettres</span>. En effet, chaque langue utilise les lettres de son alphabet avec une fr&eacute;quence donn&eacute;e, variant peu d&#39;un texte &agrave; l&#39;autre. Il faut bien entendu disposer d&#39;un message assez long pour que l&#39;analyse soit efficace, mais d&eacute;j&agrave; &agrave; partir d&#39;une trentaine de caract&egrave;res il est possible de deviner le profil des fr&eacute;quences.<br />Historiquement, l&#39;analyse fr&eacute;quentielle a &eacute;t&eacute; d&eacute;couverte par <span style="font-style: italic">Al-Kindi </span>au IX&egrave;me si&egrave;cle&nbsp; (<em>Manuscrit sur le d&eacute;chiffrement des messages cryptographiques)</em> ; elle a permis &agrave; Charles Babbage, dix si&egrave;cles plus tard, de faire c&eacute;der le tout-puissant chiffre polyalphab&eacute;tique de Vigen&egrave;re, apr&egrave;s avoir &eacute;t&eacute; largement utilis&eacute;e dans les cours et les cabinets noirs des diff&eacute;rentes diplomaties.<br />Apr&egrave;s avoir compt&eacute; le nombre d&#39;apparitions de chaque caract&egrave;re et l&#39;avoir rapport&eacute; au total des caract&egrave;res (calculant ainsi la fr&eacute;quence de chaque lettre de l&#39;alphabet chiffr&eacute;), il faut comparer les r&eacute;sultats &agrave; un <span style="font-weight: bold">tableau de r&eacute;f&eacute;rence</span>. Ainsi, pour le fran&ccedil;ais et l&#39;anglais, on aura :<br /><br /></span></div><table border="0" style="text-align: left; margin-left: 0px; margin-right: 0px"><tbody><tr><td style="border-style: solid; border-width: 1px"><span style="font-size: small">&nbsp;</span></td><td style="border-style: solid; border-width: 1px"><span style="font-size: small"><span style="font-weight: bold">Fran&ccedil;ais </span><br /></span></td><td style="border-style: solid; border-width: 1px"><span style="font-size: small"><span style="font-weight: bold">Anglais </span><br /></span></td></tr><tr><td style="border-style: solid; border-width: 1px"><span style="font-size: small">&nbsp;A <br /></span></td><td style="border-style: solid; border-width: 1px"><span style="font-size: small">&nbsp;<span style="font-weight: bold">9,42</span></span></td><td style="border-style: solid; border-width: 1px"><span style="font-size: small">&nbsp;8,08</span></td></tr><tr><td style="border-style: solid; border-width: 1px"><span style="font-size: small">&nbsp;B</span></td><td style="border-style: solid; border-width: 1px"><span style="font-size: small">1,02 <br /></span></td><td style="border-style: solid; border-width: 1px"><span style="font-size: small">1,67 <br /></span></td></tr><tr><td style="border-style: solid; border-width: 1px"><span style="font-size: small">&nbsp;C</span></td><td style="border-style: solid; border-width: 1px"><span style="font-size: small">2,64 <br /></span></td><td style="border-style: solid; border-width: 1px"><span style="font-size: small">3,18 <br /></span></td></tr><tr><td style="border-style: solid; border-width: 1px"><span style="font-size: small">&nbsp;D</span></td><td style="border-style: solid; border-width: 1px"><span style="font-size: small">3,39 <br /></span></td><td style="border-style: solid; border-width: 1px"><span style="font-size: small">3,99 <br /></span></td></tr><tr><td style="border-style: solid; border-width: 1px"><span style="font-size: small">&nbsp;E</span></td><td style="border-style: solid; border-width: 1px"><span style="font-size: small"><span style="font-style: italic; font-weight: bold">15,87 </span><br /></span></td><td style="border-style: solid; border-width: 1px"><span style="font-size: small">12,56 <br /></span></td></tr><tr><td style="border-style: solid; border-width: 1px"><span style="font-size: small">&nbsp;F</span></td><td style="border-style: solid; border-width: 1px"><span style="font-size: small">&nbsp;0,95</span></td><td style="border-style: solid; border-width: 1px"><span style="font-size: small">2,17 <br /></span></td></tr><tr><td style="border-style: solid; border-width: 1px"><span style="font-size: small">&nbsp;G</span></td><td style="border-style: solid; border-width: 1px"><span style="font-size: small">1,04 <br /></span></td><td style="border-style: solid; border-width: 1px"><span style="font-size: small">1,80 <br /></span></td></tr><tr><td style="border-style: solid; border-width: 1px"><span style="font-size: small">&nbsp;H</span></td><td style="border-style: solid; border-width: 1px"><span style="font-size: small">&nbsp;0,77</span></td><td style="border-style: solid; border-width: 1px"><span style="font-size: small">5,27 <br /></span></td></tr><tr><td style="border-style: solid; border-width: 1px"><span style="font-size: small">&nbsp;I</span></td><td style="border-style: solid; border-width: 1px"><span style="font-size: small"><span style="font-weight: bold">8,41 </span><br /></span></td><td style="border-style: solid; border-width: 1px"><span style="font-size: small">7,24 <br /></span></td></tr><tr><td style="border-style: solid; border-width: 1px"><span style="font-size: small">&nbsp;J</span></td><td style="border-style: solid; border-width: 1px"><span style="font-size: small"><span style="font-style: italic">0,89 </span><br /></span></td><td style="border-style: solid; border-width: 1px"><span style="font-size: small">0,14 <br /></span></td></tr><tr><td style="border-style: solid; border-width: 1px"><span style="font-size: small">&nbsp;K</span></td><td style="border-style: solid; border-width: 1px"><span style="font-size: small"><span style="font-style: italic">&asymp; 0</span> <br /></span></td><td style="border-style: solid; border-width: 1px"><span style="font-size: small">0,63 <br /></span></td></tr><tr><td style="border-style: solid; border-width: 1px"><span style="font-size: small">&nbsp;L</span></td><td style="border-style: solid; border-width: 1px"><span style="font-size: small">&nbsp;5,34</span></td><td style="border-style: solid; border-width: 1px"><span style="font-size: small">4,04 <br /></span></td></tr><tr><td style="border-style: solid; border-width: 1px"><span style="font-size: small">&nbsp;M</span></td><td style="border-style: solid; border-width: 1px"><span style="font-size: small">3,24 <br /></span></td><td style="border-style: solid; border-width: 1px"><span style="font-size: small">2,60 <br /></span></td></tr><tr><td style="border-style: solid; border-width: 1px"><span style="font-size: small">&nbsp;N</span></td><td style="border-style: solid; border-width: 1px"><span style="font-size: small"><span style="font-weight: bold">7,15 </span><br /></span></td><td style="border-style: solid; border-width: 1px"><span style="font-size: small">7,38 <br /></span></td></tr><tr><td style="border-style: solid; border-width: 1px"><span style="font-size: small">&nbsp;O</span></td><td style="border-style: solid; border-width: 1px"><span style="font-size: small">5,14 <br /></span></td><td style="border-style: solid; border-width: 1px"><span style="font-size: small">7,47 <br /></span></td></tr><tr><td style="border-style: solid; border-width: 1px"><span style="font-size: small">&nbsp;P</span></td><td style="border-style: solid; border-width: 1px"><span style="font-size: small">2,86 <br /></span></td><td style="border-style: solid; border-width: 1px"><span style="font-size: small">1,91 <br /></span></td></tr><tr><td style="border-style: solid; border-width: 1px"><span style="font-size: small">&nbsp;Q</span></td><td style="border-style: solid; border-width: 1px"><span style="font-size: small">1,06 <br /></span></td><td style="border-style: solid; border-width: 1px"><span style="font-size: small">0,09 <br /></span></td></tr><tr><td style="border-style: solid; border-width: 1px"><span style="font-size: small">&nbsp;R</span></td><td style="border-style: solid; border-width: 1px"><span style="font-size: small">6,46 <br /></span></td><td style="border-style: solid; border-width: 1px"><span style="font-size: small">6,42 <br /></span></td></tr><tr><td style="border-style: solid; border-width: 1px"><span style="font-size: small">&nbsp;S</span></td><td style="border-style: solid; border-width: 1px"><span style="font-size: small"><span style="font-weight: bold">7,90 </span><br /></span></td><td style="border-style: solid; border-width: 1px"><span style="font-size: small">6,59 <br /></span></td></tr><tr><td style="border-style: solid; border-width: 1px"><span style="font-size: small">&nbsp;T</span></td><td style="border-style: solid; border-width: 1px"><span style="font-size: small"><span style="font-weight: bold">7,26 </span><br /></span></td><td style="border-style: solid; border-width: 1px"><span style="font-size: small">9,15 <br /></span></td></tr><tr><td style="border-style: solid; border-width: 1px"><span style="font-size: small">&nbsp;U</span></td><td style="border-style: solid; border-width: 1px"><span style="font-size: small">6,24 <br /></span></td><td style="border-style: solid; border-width: 1px"><span style="font-size: small">2,79 <br /></span></td></tr><tr><td style="border-style: solid; border-width: 1px"><span style="font-size: small">&nbsp;V</span></td><td style="border-style: solid; border-width: 1px"><span style="font-size: small">&nbsp;2,15</span></td><td style="border-style: solid; border-width: 1px"><span style="font-size: small">1,00 <br /></span></td></tr><tr><td style="border-style: solid; border-width: 1px"><span style="font-size: small">&nbsp;W</span></td><td style="border-style: solid; border-width: 1px"><span style="font-size: small">&nbsp;&asymp; 0</span></td><td style="border-style: solid; border-width: 1px"><span style="font-size: small">1,89 <br /></span></td></tr><tr><td style="border-style: solid; border-width: 1px"><span style="font-size: small">&nbsp;X</span></td><td style="border-style: solid; border-width: 1px"><span style="font-size: small">&nbsp;0,30</span></td><td style="border-style: solid; border-width: 1px"><span style="font-size: small">0,21 <br /></span></td></tr><tr><td style="border-style: solid; border-width: 1px"><span style="font-size: small">&nbsp;Y</span></td><td style="border-style: solid; border-width: 1px"><span style="font-size: small"><span style="font-style: italic">0,24</span> <br /></span></td><td style="border-style: solid; border-width: 1px"><span style="font-size: small">1,65 <br /></span></td></tr><tr><td style="border-style: solid; border-width: 1px"><span style="font-size: small">&nbsp;Z</span></td><td style="border-style: solid; border-width: 1px"><span style="font-size: small"><span style="font-style: italic">0,32</span> <br /></span></td><td style="border-style: solid; border-width: 1px"><span style="font-size: small">0,07 <br /></span></td></tr></tbody></table><div style="text-align: justify"><span style="font-size: small"><br />NB: dans le cas o&ugrave; le message est court et ne permet pas une analyse de bonne qualit&eacute;, si l&#39;alphabet est dans l&#39;ordre, la fin de l&#39;alphabet (WXYZ) peut &ecirc;tre rep&eacute;r&eacute;e par une succession de 4 lettres de fr&eacute;quence nulle.<br /><br />Les f&eacute;rus de <span style="font-weight: bold">Scrabble </span>auront sans doute remarqu&eacute; que la quantit&eacute; de tuiles de chaque lettre et le nombre de point qu&#39;elles rapportent sont correll&eacute;s &agrave; la fr&eacute;quence d&#39;utilisation des lettres dans le langage usuel.<br /><br />Dans certains cas, il peut &ecirc;tre utile de se servir d&#39;un <span style="font-weight: bold">tableau de fr&eacute;quences adapt&eacute; au type de texte</span> &agrave; d&eacute;chiffrer. En effet, dans les transmission militaires, par exemple, le style t&eacute;l&eacute;graphique utilis&eacute; omet les pr&eacute;positions et utilise des abbr&eacute;viations, modifiant ainsi le profil de fr&eacute;quences.<br /><br />L&#39;analyse de fr&eacute;quences peut toutefois &ecirc;tre mise en &eacute;chec par l&#39;omission d&eacute;lib&eacute;r&eacute;e d&#39;une lettre fr&eacute;quente (comme ll&#39;a&nbsp; fait Georges Perec dans <span style="font-style: italic">La Disparition</span>, &eacute;crite sans la lettre e). Il sera alors possible d&#39;utiliser la technique des mots probables : estimer qu&#39;il est probable qu&#39;un mot donn&eacute; se trouve dans le texte chiffr&eacute;, et tenter de le retrouver. Il faut pour cela avoir une id&eacute;e, m&ecirc;me grossi&egrave;re, du contenu, mais pas forc&eacute;ment.<br />On peut aussi tenter de retrouver des doublons de lettres fr&eacute;quents (ss, ff, ll, etc... ainsi que les appariements les plus courants : es, en, le, ede, les, lle...)<br /><br />Les chiffres monoalphab&eacute;tiques de substitution ont &eacute;t&eacute; les premiers &agrave; &ecirc;tre utilis&eacute;s, d&egrave;s l&#39;Antiquit&eacute;, et sont &eacute;galement les plus faciles &agrave; briser. Une simple analyse de fr&eacute;quences en vient &agrave; bout, mais ils restent populaires parmi le grand public et peuvent &ecirc;tre une bonne id&eacute;e pour organiser une course au tr&eacute;sor pour l&#39;anniversaire du petit dernier... Mais il vaut en revanche mieux les oublier pour transmettre des messages sensibles &agrave; ses contacts !<br /></span></div>]]></content:encoded>
		<pubDate>Sat, 05 Jan 2008 17:20:03 +0100</pubDate>
		<guid isPermaLink="true">http://stockholm.eklablog.com/article-13185-63805-les-chiffres-monoalphabetiques-de-substitution.html</guid>
	</item>
	<item>
		<title><![CDATA[Généralités]]></title>
		<link>http://stockholm.eklablog.com/article-13185-62980-generalites.html</link>
		<dc:creator>Stockholm</dc:creator>
		<description><![CDATA[Pour commencer, quelques d&eacute;finitions :
 Cryptologie : science des codes et des chiffres 
&nbsp;&nbsp;&nbsp; - cryptographie (chiffrement) : technique consistant &agrave; appliquer un algorythme (le chiffre, ou code secret) transformant ou m&eacute;langeant les caract&egrave;res d&#39;un...]]></description>
		<content:encoded><![CDATA[<div align="justify"><span style="font-size: small">Pour commencer, quelques d&eacute;finitions :<br /><br style="font-style: italic; text-decoration: underline; color: #660000" /><strong style="font-style: italic; text-decoration: underline; color: #660000">Cryptologie </strong><span style="font-style: italic; text-decoration: underline; color: #660000">: science des codes et des chiffres</span><br />&nbsp;&nbsp;&nbsp; - <span style="font-style: italic; color: #336600">cryptographie (chiffrement)</span> : technique consistant &agrave; appliquer un algorythme (le chiffre, ou code secret) transformant ou m&eacute;langeant les caract&egrave;res d&#39;un texte &agrave; l&#39;aide d&#39;une clef<br />&nbsp;&nbsp;&nbsp; - <span style="font-style: italic; color: #336600">cryptanalyse </span>: technique consistant &agrave; briser le secret d&#39;un chiffre sans en avoir la clef.<br /><br />Un code est le remplacement d&#39;un mot par un autre mot (ex: les noms de code... 007 au lieu de James Bond &eacute;tant sans doute le plus connu !).<br /><br /><span style="font-style: italic; text-decoration: underline; color: #660000">On distingue </span><strong style="font-style: italic; text-decoration: underline; color: #660000">deux principaux types de chiffrement</strong><span style="font-style: italic; text-decoration: underline; color: #660000"> :</span><br />&nbsp;&nbsp;&nbsp; - <em><span style="color: #336600">les chiffres sym&eacute;triques</span> </em>: le m&ecirc;me algorythme est appliqu&eacute; pour chiffrer et pour d&eacute;chiffrer, en inversant le sens. Le niveau de s&eacute;curit&eacute; est tr&egrave;s variable, allant d&#39;une s&eacute;curit&eacute; quasi-inexistante (le chiffre de C&eacute;sar, par exemple) &agrave; un niveau requ&eacute;rant deux si&egrave;cles aux cryptanalystes pour &ecirc;tre bris&eacute; (comme le chiffre de Vigen&egrave;re ou le Grand Chiffre de Louis XIV)<br />&nbsp;&nbsp;&nbsp; <em>- <span style="color: #336600">les chiffres asym&eacute;triques</span></em> : il s&#39;agit d&#39;une forme de cryptage extr&ecirc;mement s&eacute;curitaire, reposant sur l&#39;utilisation de deux clefs diff&eacute;rentes, l&#39;une publique (pour le chiffrement) et l&#39;autre priv&eacute;e (pour le d&eacute;chiffrement)<br /><br /><strong>Alice </strong>et <strong>Bernard </strong>sont des personnages fictifs fr&eacute;quemment utilis&eacute;s en cryptologie. Alice est l&#39;exp&eacute;ditrice du message, l&#39;auteur du chiffrement, et Bernard est le destinataire qui d&eacute;code le message. Ils sont &eacute;pi&eacute;s par <strong>Eve</strong>, la cryptanalyste qui tente de briser la clef de cryptage.<br /><br />Je pr&eacute;senterai dans cette rubrique les diff&eacute;rents types de chiffres existants, avec &eacute;galement la mani&egrave;re de les briser.<br /></span></div>]]></content:encoded>
		<pubDate>Thu, 03 Jan 2008 14:32:59 +0100</pubDate>
		<guid isPermaLink="true">http://stockholm.eklablog.com/article-13185-62980-generalites.html</guid>
	</item>
</channel>
</rss><!--mdp=-->