Lโรฉvolution rapide des rรฉseaux informatiques, privรฉs ou publics, engendre un volume toujours plus important de donnรฉes sauvegardรฉes et transmises, gรฉnรฉrant ainsi de nouveaux besoins en matiรจre de sรฉcuritรฉ. Dans un monde oรน lโentreprise dรฉpend de plus en plus de son systรจme informatique, la sรฉcuritรฉ est donc devenue une prรฉoccupation primordiale. Dans ce contexte, la cryptographie demeure une partie indispensable de la sรฉcuritรฉ informatique moderne. Nรฉanmoins, tout utilisateur non averti peut ne pas comprendre lโutilitรฉ du chiffrement et risque de sโen passer. Etant une science de coder des messages secrets, la cryptographie prรฉserve le texte en clair de lโindiscrรฉtion des criminels informatiques, fournissant non seulement la confidentialitรฉ des donnรฉes mais aussi lโauthentification, lโintรฉgritรฉ, la non rรฉpudiation et le contrรดle dโaccรจs.
Rappels Mathรฉmatiques
Indicatrice dโEulerย
โข Dรฉfinition
Lโindicatrice dโEuler (ou la fonction indicatrice dโEuler ou Euler totient en anglais), notรฉe avec la lettre grecque phi : ฯ(n) ou ฮฆ(n) est le nombre reprรฉsentant le nombre dโentiers infรฉrieurs ร n qui sont premiers avec n
โข Lโindicatrice dโEuler ฮฆ (n) (indicatrice Euler) se calcule de plusieurs maniรจres, la formule la plus connue est ฮฆ(n) = nQ p/n (1 โ 1/p) oรน p est un facteur premier qui divise n.
โข Thรฉorรจme dโEuler
La fonction indicatrice dโEuler (phi) est utilisรฉe en arithmรฉtique modulaire. Elle est notamment utilisรฉe dans le Thรฉorรจme dโEuler : Soit n est un entier supรฉrieur ร 1 et a un entier premier avec n, alors a ฯ(n) โก 1 mod n
Thรฉorรจme de Fermat
โข Petit thรฉorรจme de Fermat
Le thรฉorรจme de Fermat est un corollaire immรฉdiat du thรฉorรจme dโEuler. Il sโagit du cas particulier oรน n est un nombre premier. Si a nโest pas divisible par p premier, alors a pโ1 โก 1 mod p
โข Grand thรฉorรจme de Fermat
Soit n โฅ 3 un entier. Les solutions de xn + yn = zn , oรน x, y, et z sont des entiers, vรฉrifient toutes xyz = 0.
Notion de Groupe
Dรฉfinition 1 Un groupe est un ensemble non vide muni dโune loi de composition interne (G, โ) tels que :
(1) โ est associative ;
(2) โ admet un neutre eG ;
(2) tout รฉlรฉment de G est symรฉtrisable (admet un symรฉtrique) pour โ .
Si โ est commutative, on dit que (G, โ) est commutatif, ou encore abรฉlien.
Dรฉfinition 2
Un sous-groupe dโun groupe (G, โ) est une partie non vide H de G telle que :
(1) โ induit sur H une loi de composition interne.
(2) Muni de cette loi, H est un groupe.
On note alors : H < G.
Gรฉnรฉralitรฉ sur la Cryptographie
La cryptographie
La cryptographie[W3] permet la transformation, au moyen dโun algorithme de chiffrement, dโun message dit clair en un message chiffrรฉ. Grรขce ร ce procรฉdรฉ, deux interlocuteurs peuvent รฉchanger de maniรจre confidentielle et sรฉcurisรฉe, pourvu quโils possรจdent la clรฉ leur permettant de chiffrer ou de dรฉchiffrer leurs messages. La cryptographie sert aussi dโautres applications telles que lโauthentification et la signature (numรฉrique) des messages.Le chiffrement comprend le traitement,le stockage et la transmission sรฉcurisรฉe des donnรฉรฉs Depuis longtemps, la transmission des donnรฉes sensibles a nรฉcessitรฉ lโutilisation dโun systรจme de sรฉcurisation performant.Les services secrets des grandes puissances รฉconomiques et Politiques ont dรฉveloppรฉ tout dโabord des codages alpha-numรฉriques simples, puis des techniques cryptographiques plus poussรฉes, grรขce ร des lโoutils mathรฉmatique pour rendre leurs donnรฉes sensibles inviolables et inexploitables. La cryptologie, vรฉritable science rรฉgissant le codage de lโinformation, a connu une rรฉelle explosion avec le dรฉveloppement des systรจmes informatiques, passant dโune รจre artisanale et confidentielle ร des systรจmes de trรจs hautes technologies nรฉcessitant une importante puissance de calcul. Elle a connu un plus large essor encore avec lโarrivรฉe des systรจmes de communications modernes (internet, etc…) oรน il y a une nรฉcessitรฉ absolue de protรฉger les donnรฉes รฉchangรฉes pour respecter les individus.
Quโentend-on par clรฉ ?
On appelle clรฉ une valeur utilisรฉe dans un algorithme de cryptographie afin de chiffrer une donnรฉe. Il sโagit en fait dโun nombre complexe dont la taille se mesure en bits. On peut imaginer que la valeur correspondante ร 1024 bits est absolument gigantesque. Plus la clรฉ est grande, plus elle contribue ร รฉlever la sรฉcuritรฉ de la solution. Toutefois, cโest la combinaison dโalgorithme complexe et de clรฉs importantes qui seront la garantie dโune solution bien sรฉcurisรฉe. Les clรฉs doivent รชtre stockรฉes de maniรจre sรฉcurisรฉe de sort que seul leur propriรฉtaire soit en mesure de les reรงevoire et de les utiliser.
Terminologie de la cryptographie
โข Chiffrer : transformer[3] ร lโaide dโune clรฉ de chiffrement un message en clair en un message incomprรฉhensible sans la clรฉ de dรฉchiffrement
โข Dรฉchiffrer : retrouver ร lโaide de la clรฉ de dรฉchiffrement le message en clair ร lโorigine du message chiffrรฉ
โข Chiffre : algorithme utilisรฉ pour le chiffrement
โข Cryptogramme : message chiffrรฉ
โข Dรฉcrypter : retrouver le message en clair correspondant ร un cryptogramme sans connaitre la clรฉ de dรฉchiffrement (โcasserโ le code secret)
โข Cryptographie : science de la protection des messages par des clรฉs
โข Cryptanalyse : science du dรฉcryptage
โข Cryptologie : cryptographie et cryptanalyse .
Symboles usuels
โข Message en clair (plain-text) : P
โข Cryptogramme (cipher-text) : C
โข Clรฉ de chiffrement (encryption-key) : ke
โข Clรฉ de dรฉchiffrement (decryption-key) : kd
โข Fonction de chiffrement (encrypt) : E(ke, P) = C
โข Fonction de dรฉchiffrement (decrypt) : D(kd, C) = P
โข Lโensemble doit respecter : D(kd, E(ke, P)) = P
โข Fonction de hachage (hash/message-digest) : M d(P) = H
|
Table des matiรจres
Introduction Gรฉnรฉrale
Contexte
Problematique
Objectifs
1 Proxy Unidirectionnel et Bidirectionnel
1.1 Rappels Mathรฉmatiques
1.1.1 Indicatrice dโEuler
1.1.2 Thรฉorรจme de Fermat
1.1.3 Notion de Groupe
1.1.4 Notion dโanneau
1.1.5 Corps
1.2 Gรฉnรฉralitรฉ sur la Cryptographie
1.2.1 La cryptographie
1.2.2 Terminologie de la cryptographie
1.2.3 Symboles usuels
1.2.4 Entitรฉs et canaux de communication
1.2.5 Fonctions cryptographiques et terminologies
1.2.6 Principes et Objectifs de la Cryptographie
1.2.7 Systรจmes de la cryptographie
1.2.8 Certificats numรฉriques
1.2.9 Efficacitรฉ des algorithmes de chiffrement
1.2.10 Fonctions de Hachage et Signature Numรฉrique
1.3 Notion de proxy
1.3.1 Fonction proxy de cryptage Unidirectionnel
1.3.2 Fonction proxy de la signature Unidirectionnel
1.3.3 Fonction proxy de cryptage bidirectionnel
1.3.4 Fonction proxy de la signature Bidirectionnel
1.4 Chiffrement et Signature Unidirectionnel
1.4.1 Fonction de Chiffrement Unidirectionnel
1.4.2 Chiffrement Unidirectionnel
1.4.3 Signature Unidirectionnel
1.4.4 Primitives de cryptage unidirectionnel
1.4.5 Primitives de signature unidirectionnelle
1.5 Chiffrement et Signature Bidirectionnel
1.5.1 Chiffrement Bidirectionnel
1.5.2 Signature Bidirectionnel
1.5.3 Primitives de cryptage bidirectionnel
1.5.4 Primitives de signature bidirectionnelle
1.6 Sรฉcuritรฉ des schรฉmas Uni(bi)directionnel
1.6.1 Notion de Sรฉcuritรฉ
1.6.2 Sรฉcuritรฉ pour le chiffrement Uni(bi)directionnel
1.6.3 Sรฉcuritรฉ pour la signature Uni(bi)directionnel
2 RSA Unidirectionnel et Bidirectionnel
2.1 Chiffrement RSA
2.2 Principe du chiffrement
2.3 Signature RSA
2.4 Algorithmes de chiffrement et de signature asymรฉtriques
2.5 Efficacitรฉ et robustesse de RSA
2.6 Un exemple
2.7 Sรฉcuritรฉ de RSA
2.8 RSA Unidirectionnel
2.9 Signature unidirectionnelle basรฉe sur RSA
2.10 RSA Bidirectionnel
2.10.1 Schรฉma de chiffrement bidirectionnel basรฉe sur RSA
2.10.2 Systรจme de signature bidirectionnelle basรฉe sur RSA
3 Application de RSA Standard et RSA Unidirectionnel
3.1 Implรฉmentation de RSA Standard
3.1.1 Chiffrement/dรฉchiffrement
3.1.2 Signature/Vรฉrification
3.2 Implรฉmentation de RSA Unidirectionnel
3.2.1 Chiffrement/Dรฉchiffrement
3.3 Test et Validation
3.3.1 RSA standard
3.3.2 RSA Unidirectionnel
Conclusion