Pages vues le mois dernier

jeudi 13 juin 2013

L'informatique moderne

Le fondateur de l'informatique moderne

 
Le mathématicien anglais Alan Turing(1912-1954),a été le premier à penser l'ordinateur moderne. Connu pour avoir imaginé une machine et un test portant son nom, il est l’un des fondateurs de l’informatique moderne. Sa machine de Turing est en effet à l’origine de l'informatique et des théories de la programmation.
En 1937, il publie l'article fondateur de la science informatique : il y présente sa machine de Turing, le premier calculateur universel programmable et invente les concepts de programmation et de programme.
Pendant la Seconde Guerre Mondiale, il est employé par les services secrets britanniques pour décoder les messages secrets allemands. Il participe alors à la construction de l'un des premiers ordinateurs programmables au monde : le Colossus
Après la guerre, il poursuit des recherches en intelligence artificielle et invente le test de Turing (test d’intelligence artificielle sur la capacité d’une machine à imiter la conversation humaine).
Persécuté pour son homosexualité, il se donne la mort le 7 juin 1954 en croquant une pomme trempée dans du cyanure. Le logo de la firme Apple – une pomme croquée – serait d'ailleurs un hommage au père de l'informatique moderne.
 

Le système binaire

 
introduction :
Ce pas de géant s'est réalisé en grande partie à partir du développement d'un système de codification qui a permis d'établir des communications efficaces et rapide sur un vaste réseau construit autour de deux agents principaux : les ordinateurs et leurs utilisateurs, c'est-à-dire nous tous. Nous parlons non seulement de sécurité au sens cryptographique, mais aussi dans un sens bien plus large qui recouvre également les notions de fiabilité et d'efficacité. A la base de cette révolution technologique se trouve le système binaire. Ce code extrêmement simple, formé de deux caractères, le 0 et le 1, est le plus usité en informatique, de par sa capacité à exprimer des fonctions logiques qui interagissent dans les circuits éléctronique, des ordinateurs et autres appareils. Chaque 0 et 1 s'appelle bit (binary digit ou chiffre binaire). Une bonne analogie serait de dire que le système binaire est le langage vernaculaire des ordinateurs.
 

Le code ASCII

 
L'une des multiples applications du système binaire est une famille particulières de caractères, conçue de telle maniére que chaque caractère soit représenté par une suite de 8 bits(1 octet).Ces caractères, appelés alphanumériques, sont l'ensemble de signes basique employés dans la communication conventionnelle, que l'on appelle ASCII (sigle de l'American Standard Code for Information Interchange ou "Code américain normalisé pour l'échange d'informations"). Le code ASCII compte 256 caractères, nombre qui résulte de toutes les formes possibles d'ordonner de manière différente un ensemble de 8 zéros et un, c'est-à-dire : 2^8 = 256.
Le code ASCII est le code qui permet la communication entre l'utilisateur et l'ordinateur. Quand on tape au clavier un caractère alphanumérique, l'ordinateur le traduit en octet, c'est-à-dire en une chaîne de 8bits. Ainsi, en écrivant la lettre A, l'ordinateur comprend : 01000001. 
Le tableau suivant montre la relation entre valeurs alphanumériques et décimales des caractères ASCII les plus communément utilisés dans les tâches courantes :
 
 
 
bit 0
 
 
 

Le système hexadécimal

 
Le système hexadécimal arrive eu deuxième rang des codes d'importance notable dans le domaine des ordinateurs. Il s'agit d'un système de numération qui travaille avec seize chiffres uniques(d'où le terme "hexadécimal"), contrairement au système habituel qui en compte dix (décimal). Le système hexadécimal est, si l'on peut dire, le "second langage" de l'ordinateur après le binaire. Rappelons que l'unité de base de la mémoire de l'ordinateur, le Byte, est composé de huit bits, ce qui permet d'atteindre 2^8 = 256 combinaisons différentes de zéros et de uns. On observe que 2^8 = 2^4 X 2^4 = 16 X 16.C'est-à-dire  que la combinaison de deux caractères hexadécimaux équivaut à 1 octet.
Les seize chiffres du système hexadécimal sont les chiffrés traditionnels 0,1,2,3,4,5,6,7,8,9 et six autres, donnés par convention : A,B,C,D,E,F. Pour compter en système hexadécimal, on procède de la manière suivante :
  • De 0 à 15 : 1,2,3,4,5,6,7,8,9,A,B,C,D,E,F.
  • De 16 à 31 : 10,11,12,13,14,15,16,17,18,19,1A,1B,1C,1D,1E,1F.
  • A partir de 32 : 20,21,22,23,24,25,26,27,28,29,2A,2B,2C,2D,...
 Le tableau ci-dessous montre la correspondance entre binaire, décimal et hexadécimal des 16 chiffres de ce deuxième systèmes.
 
Pour passer du binaire à l'hexadécimal, on groupe les bits 4 par 4 de la droite vers la gauche et on termine la conversion selon le tableau précédent. Si le nombre de chiffres binaires n'est pas un multiple de quatre, on complète par des zéros à gauche. Pour passer de l'hexadécimal eu binaire, on convertit chaque chiffre hexadécimal à son équivalent en binaire.
 
Quelle est l'équivalence entre des caractères hexadécimaux et des caractères ASCII?
Chaque caractères ASCII comportent 40 bits (5 octets) et, comme un caractère hexadécimal comporte 4 bits, nous obtenons que 5 caractères ASCII sont équivalents à 10 caractères hexadécimaux.
Voyons maintenant un exemple de codage d'une phrase en hexadécimal, par exemple, "Section CATIC12".
  1. Traduisons "Section CATIC12" en binaire au moyen de la norme ASCII.    
  2. Regroupons les chiffres par 4, si la longueur n'est pas multiple de quatre, on rajoute des zéros à gauche.
  3. En consultant le tableau de conversion du binaire à l'hexadécimal, nous pouvons traduire la phrase.
   
section  = S: 0101 0011, e: 0110 0101, c: 0110 0011, t: 0111 0100, i: 0110 1001, o: 0110 1111,

n: 0110 1110   et   CATIC12 = C: 0100 0011, A: 0100 0001, T: 0101 0100, I: 0100 1001, C: 0100 0011, 1: 0011 0001, 2: 0011 0010.


Section CATIC12 = S:53, e:65, c:63, t:74, i:69, o:6F, n:6E,   C:43, A:41, T:54, I:49, C:43, 1:31, 2:32


L'expression "section CATIC12" se code en hexadécimal, cette fois sans majuscule ni minuscules :
                                    53 65 63 74 69 6F 6E  43 41 54 49 43 31 32.


Système de numération et changements de base

 
Dans un système numérique de n chiffres on dit qu'il est en base n. Les mains de l'homme ont dix doigts et c'est probablement la raison pour laquelle a été inventé le système numérique décimal : le compte se faisait sur les doigts. Un nombre décimal, comme 8453, représente une quantité égale à 8 milliers, plus 4 centaines, plus 5 dizaines, plus 3 unités. Les milliers, les centaines, les dizaines et les unités sont des puissances de la base du système numérique, la base étant 10 dans ce cas. Le nombre 8453 pourrait s'écrire :
                                        8453 = 8x10^3 + 4x10^2 + 5x10^1 + 3x10^0.
 
Par convention, on écrit uniquement les coefficients. Il existe de nombreux systèmes de numération autres que le système décimal (de fait, leur nombre est potentiellement infini). Dans cet article, nous prêterons une attention particulière à deux d'entre eux : le binaire, de base 2, et l'hexadécimal, de base 16. Dans un système de numération binaire, les coefficients n'ont que deux valeurs possibles : 0 et 1.
Les chiffres des nombres binaires sont les coefficients de puissances de 2. Ainsi, le nombre 11011^2 peut s'écrire aussi :
                                        11011^2 = 1x2^4 + 1x2^3 + 0x2^2 + 1x2^1 + 1x2^0.
 
Si nous calculons l'expression à droite de l'égalité, nous obtenons 29, qui est la forme décimale du nombre binaire considéré. A l'inverse, divisons le nombre décimal successivement par 2 (la base du binaire) et notons les reste jusqu'à obtenir un quotient égal à 0. Le nombre binaire aura pour premier chiffre le dernier quotient et les restes suivront, à partir du dernier obtenu. Visualisons le processus en écrivant le nombre 79 en binaire.
 
79 divisé par 2 a pour quotient 39 et il reste 1.
39 divisé par 2 a pour quotient 19 et il reste 1.
19 divisé par 2 a pour quotient 9 et il reste 1.
9 divisé par 2 a pour quotient 4 et il reste 1.
4 divisé par 2 a pour quotient 2 et il reste 0.
2 divisé par 2 a pour quotient 1 et il reste 0.
 
Par conséquent, le nombre 79 s'écrit en binaire : 10011112. On peut vérifier ce résultat dans le tableau ASCII précédent ( il faut prendre en compte que dans la case correspondante, il y a un 0 en plus au début, en raison de l'ajout de zéros à gauche, comme mentionné). La conversion d'un nombre d'un système de numération à  l'autre est appelée "changement de base" du nombre en question.
 

Codes contre la perte d'informations

 
Les différents codes mentionnés précédemment ont pour objectif de permettre des communications sûres et efficaces entre les ordinateurs et les programmes, d'une part, et les utilisateurs, d'autre part. Mais ce langage doit s'appuyer sur une théorie générale de l'information qui pose les bases du processus de communication lui-même. Le premier pas pour établir une telle théorie est tellement élémentaire qu'il ne vous vient certainement pas à l 'esprit : comment mesurer l'information?
Une phrase du style "La pièce jointe pèse 2 kb" est le résultat d'une longue série d'intuitions géniales, déclenchées par un article en deux partie publié en 1948 par l'ingénieur américain Claude E. Shannon, intitulé "Une théorie mathématique de l'information". Dans cet article fondamental, Shannon proposa une unité de mesure de la quantité d'information qu'il appela bit. Le problème général qui donna lieu au travail de Shannon est l'un de ceux avec lesquels nous somme déjà familier : quelle est la meilleur manière de coder un message pour éviter que l'information ne se détériore pendant la transmission? Shannon arriva à la conclusion qu'il était impossible de définir un codage qui empêche dans tous les cas une perte d'information, c'est-à-dire que celle-ci se détériore irrémédiablement. Cette conclusion instructive n'a pas arrêté les efforts déployés pour définir des normes de codage qui, même si elles ne peuvent empêcher cette détérioration, assurent néanmoins des niveaux maximaux de fiabilité et d'intégrité.
 
Lors d'une transmission numérique, le message, une fois généré par l'émetteur (humain, ordinateur...), est codé en binaire puis entre dans le canal de communication, lui-même composé des ordinateurs émetteur et récepteur et du canal proprement dit, physique (câble) ou incorporel (ondes, lumière...). Le passage par le canal est le processus le plus délicat du fait que le message peu être soumis à tous types de perturbations dues à un croisement de signaux, à des changement de température dans les supports physiques, à des baisse de tension qui affectent ces support, etc. Le terme technique utilisé pour désigner ces interférences est le bruit.
Pour minimiser l'impact des bruit, il faut non seulement protéger le canal mais aussi mettre en place des méthodes de détection et de correction des erreurs qui vont invariablement se produire.
 
L'une de ces méthode est la redondance. La redondance consiste à répéter, en fonction de certain critères, certaines caractéristique du message. Voici un exemple qui aide à comprendre le processus. Supposons un alphabet tel que chaque mot étant du type a1 ,a2 ,a3 ,a4 , sont les valeurs des bits composant le mot. Avant d'envoyer le message, on ajoute à chaque mot 3 caractères supplémentaires c1, c2, c3, de manière à ce que le message codé qui circulera dans le canal soit de la forme a1 a2 a3 a4 c1 c2 c3  . Les éléments c1 c2 c3 seront les garants de la sécurité du message et sont appelés codes de parité. Ils sont générés de la manière suivante :
 
c1  =  0 si a1 + a2  +a3  est pair  ou 1 si a1 + a2 + a3  est impair
 
c2  =  0 si a1 + a2  + a3  est pair  ou 1 si a1 + a2 + a3 est impair
 
c3  = 0 si a1  + a2  + a3  est pair ou 1 si a1 + a2 + a3  est impair
 
Au massage 0111 se seront assignés les codes de parité suivants :
 
            Comme 0 + 1 + 1 = 2 est pair, le chiffre c1 = 0
            Comme 0 + 1 + 1 = 2 est pair, le chiffre c2 = 0
            Comme 1 + 1 + 1 = 3 est impair, le chiffre c3 =1.
 
Le message 0111 sera envoyé sous la forme 0111001.
 
 
source: Cédric Villani, Le monde est mathématique, n°2: Codage et cryptographie, mars 2013.
 

 



mercredi 12 juin 2013

Le chiffrement asymétrique

chiffrement à clé publique


Le principe de chiffrement asymétrique (appelé aussi chiffrement à clés publiques) est apparu en 1976.Dans un cryptosystéme asymétrique (ou cryptosystème à clés publiques), les clés existent par paires (le terme de bi-clés est généralement employé) :
  1. Une clé publique pour le chiffrement.
  2. Une clé secrète pour le déchiffrement.
Ainsi, dans un système de chiffrement à clé publique, les utilisateurs choisissent une clé aléatoire qu'ils sont seuls à connaître (il s'agit de la clé privée). A partir de cette clé, ils déduisent chacun automatiquement un algorithme (il s'agit de la clé publique). Les utilisateurs s'échangent cette clé publique au travers d'un canal non sécurisé.
Lorsqu'un utilisateur désire envoyer un message à un autre utilisateur, il lui suffit de chiffrer le message à envoyer au moyen de la clé publique du destinataire (qu'il trouvera par exemple dans un serveur de clés tel qu'un annuaire LDAP). Ce dernier sera en mesure de déchiffrer le message à l'aide de sa clé privée (qu'il est seul à connaître).
 

 
 
Ce système est basé sur une fonction facile à calculer dans un sens (appelée fonction à trappe à sens unique ou en anglais one-way trapdoor function) et mathématiquement très difficile à inverser sans la clé privée (appelée trappe).
A titre d'image, il s'agit pour un utilisateur de créer aléatoirement une petite clé en métal (la clé privée), puis de fabriquer un grand nombre de cadenas (clé publique) qu'il dispose dans un casier accessible à tous (le casier joue le rôle de canal non sécurisé). Pour lui faire parvenir un document, chaque utilisateur peut prendre un cadenas (ouvert), fermer une valisette contenant le document grâce à ce cadenas, puis envoyer la valisette au propriétaire de la clé publique (le propriétaire du cadenas). Seul le propriétaire sera alors en mesure d'ouvrir la valisette avec sa clé privée.
Le problème consistant à se communiquer la clé de déchiffrement n'existe plus, dans la mesure où les clés publiques peuvent être envoyées librement. Le chiffrement par clés publiques permet donc à des personnes d'échanger des messages chiffrés sans pour autant posséder de secret en commun.
 
 


mercredi 29 mai 2013

Le chiffrement symétrique

Cryptage à clef privé

Le chiffrement symétrique (aussi appelé chiffrement à clé privée ou chiffrement à clé secrète) consiste à utiliser la même clé pour le chiffrement et le déchiffrement.Le chiffrement consiste à appliquer une opération (algorithme) sur les données à chiffrer à l'aide de la clé privée, afin de les rendre inintelligibles. Ainsi, le moindre algorithme (tel qu'un OU exclusif) peut rendre le système quasiment inviolable (la sécurité absolue n'existant pas).
Toutefois, dans les années 40, Claude Shannon démontra que pour être totalement sûr, les systèmes à clefs privées doivent utiliser des clefs d'une longueur au moins égale à celle du message à chiffrer. De plus, le chiffrement symétrique impose d'avoir un canal sécurisé pour l'échange de la clé, ce qui dégrade sérieusement l'intérêt d'un tel système de chiffrement.
Le principal inconvénient d'un cryptosystème à clefs secrètes provient de l'échange des clés. En effet, le chiffrement symétrique repose sur l'échange d'un secret (les clés). Ainsi, se pose le problème de la distribution des clés :
D'autre part, un utilisateur souhaitant communiquer avec plusieurs personnes en assurant deux niveaux de confidentialité distincts doit utiliser autant de clés privées qu'il a d'interlocuteurs. Pour un groupe de N personnes utilisant un cryptosystème à clés secrètes, il est nécessaire de distribuer un nombre de clés égal à N * (N-1) / 2.
Ainsi, dans les années 20, Gilbert Vernam et Joseph Mauborgne mirent au point la méthode du One Time Pad (traduisez méthode du masque jetable, parfois appelé « One Time Password » et noté OTP), basée sur une clé privée, générée aléatoirement, utilisée une fois et une seule, puis détruite. À la même époque, le Kremlin et la Maison Blanche étaient reliés par le fameux téléphone rouge, c'est-à-dire un téléphone dont les communications étaient cryptées grâce à une clé privée selon la méthode du masque jetable. La clé privée était alors échangée grâce à la valise diplomatique (jouant le rôle de canal sécurisé).

http://www.commentcamarche.net
 


mardi 28 mai 2013

La machine Enigma


En 1923, l'ingénieur allemand Arthur Scherbius breveta une machine conçue pour faciliter les communications sécurisées. Son nom, Enigma, est devenu synonyme de secret militaire et évoque des images de laboratoires souterrains et de machines à structures compliquées. Avec toute sa  sophistication, Enigma n'est en fait qu'une version améliorée du disque d'Alberti. En raison de sa relative facilité d'utilisation et de la complexité du chiffrement qu'elle permet, Enigma fut choisie par le gouvernement allemand comme base de codage d'une bonne partie de son trafic de communication militaire pendant la Seconde Guerre mondiale. Son décryptage devint ainsi une priorité absolue des gouvernements qui affrontèrent l'Allemagne nazie. L'histoire de son décryptage est un récit fascinant ou interviennent principalement les services de renseignements de Pologne et du Royaume-Uni. Parmi ses héros, un mathématicien génial, Alan Turing, est l'homme que l'on considère comme le père de l'informatique moderne. L'aventure entreprise pour casser le code a eu pour résultat, en outre, le premier ordinateur de l'histoire.
La machine Enigma était un engin électronique très semblable à une machine a écrire. Elle était constituée d'un clavier et d'un tableau lumineux de 26 lettres, de trois rotors, montés sur des axes, avec 26 position possibles, et d'un pupitre de connexion installé entre le clavier et le premier rotor, dont le rôle était de réaliser un premier échange de lettre  en fonction de la manière dont on positionnait les connexions. Le processus physique de chiffrement était relativement simple. D'abord, l'émetteur disposait les connexions et les rotors dans la position de sortie spécifiée par le livre des clés qui étaient valides à ce moment-là. Ensuite, il tapait sur le clavier la première lettre du message en clair et la machine, de manière automatique, générait une autre lettre qui apparaissait sur le tableau lumineux: la première lettre du message chiffré. Ensuite, le premier rotor effectuait une rotation qui le plaçait dans l'une de ses 26 positions possibles. La nouvelle position du rotor comportait en elle-même un nouveau chiffrement des caractères et l'émetteur introduisait alors la deuxième lettre et ainsi de suite.

schéma du fonctionnement d'Enigma
réduit à 6 lettres.
Pour décoder le message, il suffisait d'introduire les caractères chiffrés dans une autre machine Enigma, à condition que les paramètres de sortie de cette dernière soient égaux à ceux de la machine avec laquelle avait été chiffré le message.
Comme on l'a déjà dit, les rotors de l'Enigma avaient 26 positions, une pour chaque lettre de l'alphabet. Ainsi, un rotor pouvait accomplir 26 chiffres distincts. La position initiale du rotor est, par conséquent, la clé. Pour augmenter le nombre de clés possibles, l'Enigma pouvait comporter jusqu'à trois rotors, connectés entre eux mécaniquement. Ainsi, quand le premier rotor faisait un tour complet, le suivant en commençait un autre, et ainsi de suite jusqu'a ce que soient effectuées les rotations complètes des trois rotors, soit un total de 26 X 26 X 26 = 17576 chiffres possibles. En outre, la conception de Scherbius permettait d'intervertir l'ordre des rotors; ce qui augmentait encore le nombre de clés.En plus des trois rotors, Enigma disposait d'un pupitre de connexion, situé entre le premier rotor et le clavier. Ce pupitre de connexion permettait d'intervertir des paires de lettre avant la connexion au rotor, ce qui ajoutait un nombre considérable de clés supplémentaires au chiffrement.

La machine standard disposait de 6 cordons de connexions, avec lesquelles on pouvait intervertir jusqu'à six paire de lettres.
Par conséquent, le nombre total de clés possibles qu'offre la machine Enigma de trois rotors de 26 lettres et un pupitre de connexions de six fiches est le suivant :
  1. En ce qui concerne les rotation des rotors, 26^3=26 X 26 X 26 = 17576 combinaisons.
  2. De même, les trois rotors(1,2,3) pouvaient permuter entre eux et occuper les positions 1-2-3, 1-3-2, 2-1-3, 2-3-1, 3-1-2, 3-2-1; ce qui donne, dans ce cas, six combinaisons supplémentaires possible liées a l'ordre des rotors.
  3. Pour les six fiches du pupitre de connexion; 100 391 791 500 combinaisons, à elles seules.
Le nombre total de clés s'obtient en multipliant les différentes combinaisons énumérées : 6 X 17576 X 100 391 791 500 = 10 586 916 764 424 000. Par conséquent, les machines Enigma pouvaient chiffrer un texte en utilisant plus de dix mille billions de combinaisons différentes. Nul doute que le Reich devait être tranquille en confiant ses communications de plus haut niveau à la machine de Scherbius.

Cédric Villani, Le monde est mathématique, n°2: Codage et cryptographie, mars 2013.
 

mercredi 22 mai 2013

La cryptographie dans l'antiquité


La cryptographie (du grec Kruptos : cacher , et de Graphein : écrire) a toujours existé. Ce sont les Spartiates qui ont, les premiers, compris qu'il fallait plus que de la force pour gagner des batailles. C'est pourquoi ils essayèrent de trouver des moyens de s'envoyer des messages que l'ennemi ne pourrait pas intercepter. Mais ils comprirent très vite qu'il était très difficile d'inventer de nouveaux moyens de communication. Ils essayèrent alors de cacher l'existence même du message , c'est la stéganographie (du grec Steganos : impénétrable et de Graphein : écrire).


Entre le Ve et le VIIe siècle avant J.C, ils inventèrent donc la Scytale ou "bâton de Plutarque" qui était un bâton de bois utilisé pour lire ou écrire un message chiffré. Elle est considérée comme le plus ancien dispositif de cryptographie militaire connue. Elle permettait l'inscription d'un message chiffré sur une fine lanière de cuir ou de parchemin. Après avoir enroulée la lagnère de cuire sur la scytale, le message était écrit en plaçant une lettre sur chaque circonvolution. Un bâton d'un diamètre identique à celui utilisé pour l'encodage était nécessaire pour que le message puisse être déchiffré par le destinataire.
Aux alentours du VIe siècle avant notre ère, Nabuchodonosor, roi de Babylone, employait une méthode originale : il écrivait sur le crâne rasé de ses esclaves, attendait que leurs cheveux aient repoussé, et il les envoyait à ses généraux. Il suffisait ensuite de raser à nouveau le messager pour lire le texte. Il s'agit toutefois de stéganographie à proprement parler et non pas de cryptographie: l'information est cachée et non pas codée.
C'est à partir du Ve siècle avant J.C, que l'une des premières techniques de chiffrement est utilisée dans les textes religieux par les Hébreux qui connaissent plusieurs procédés. Le plus connu appelé Atbash est une méthode de substitution alphabétique inversée.
Plus tard, vers 150 ans avant J.C Polybe un célèbre historien grec et conseiller militaire Romain invente un procédé de cryptage tenant dans un carré de 5 de coté: Le carré de Polybe. 
Il n'y a que 25 lettres alors que l'alphabet en compte 26, et oui le "W" a était enlevé, mais on peut associer deux lettres à une même case. Par exemple, le "W" avec le "V" comme cela se fait en français. On peut aussi agrandir le carré a 36 cases afin d'y ajouter les chiffres ou pour chiffrer un alphabet comportant plus de lettres.
 Le cryptage est assez simple: il suffit de remplacer chaque lettre du mots à chiffrer par le numéro de la rangée, suivi du numéro de la colonne de chaque lettre. Par exemple, pour l'abréviation "CATIC":  le C=13, A=11, T=45, I=24, C=13, ainsi on obtient le message suivant: 13 11 45 24 13. Cependant ce code étant beaucoup trop compliqué pour l'époque, quasiment personne ne l'utilisa avant le XIXe siècle.
Au Ier siècle avant J.C, c'est le célèbre Jules César qui invente la première méthode de cryptographie par substitution mono-alphabétique. Cette méthode très simple et très rapide. Elle consiste à décaler de trois rangs les lettres dans l'alphabet. Elle a été très souvent utilisée et l'est encore de nos jours.

A l'époque, elle est utilisée dans l'armée romaine et bien qu'elle soit beaucoup moins robuste que la technique Atbash, la faible alphabétisation de la population la rend suffisamment efficace.
La longueur du décalage, 3 constitue la clé du chiffrement qu'il suffit de transmettre au destinataire, pour que celui-ci puisse déchiffrer le message, s'il sait déjà qu'il s'agit d'un chiffrement de César. Dans le cas de l'alphabet latin, le chiffre de César n'a que 26 clés possibles (y compris la clé nulle, qui ne modifie pas le texte).

 http://fr.wikipedia.org/wiki/Cryptographie

jeudi 16 mai 2013

Introduction

La cryptographie et la cryptanalyse sont deux branches de la cryptologie qui est une science mathématique.
La cryptographie traditionnelle est l'étude des méthodes permettant de transmettre des données de manière confidentielle. Afin de protéger un message, on lui applique une transformation qui le rend incompréhensible; c'est ce que l'on appelle le chiffrement, qui a partir d'un texte en clair donne un texte chiffré ou cryptogramme. Inversement, le déchiffrement est l'action qui permet de reconstruire le texte en clair ( a partir d'un texte chiffré).
Dans la cryptographie moderne, les transformations en question sont des fonctions mathématiques, appelées algorithmes cryptographique, qui dépendent d'un paramètre appelé clef.

La cryptanalyse, à l'inverse, est l'étude des procédés cryptographiques dans le but de trouver des faiblesses et, en particulier, de pouvoir décrypter des textes chiffrés. Le décryptement est l'action consistant a retrouver le texte en clair sans connaitre la clef de chiffrement.