SlideShare une entreprise Scribd logo
1  sur  28
Conception d’un algorithme de
chiffrement a flot basé sur
le problème des 3 corps
Un algorithme ?
Le chiffrement ?
- Le chiffrement symétrique
- Le chiffrement asymétrique
Les algorithmes de chiffrement sont équivalents a
 Des fonctions a sens unique avec des portes
dérobés
-Un algorithme de chiffrement ou de déchiffrement
est une une fonction difficile a inverser sans connaître
la clé de chiffrement.
=> Ceci est en quelques sorte analogue a une fonction
a sens unique avec une porte dérobée.
Équations équivalentes a un algorithme de
chiffrement symétrique :
- C = F ( P , K )
- P = G ( C , K )
Équations équivalentes a un algorithme de
chiffrement asymétrique :
- C = F ( P , K1 )
- P = G ( C , K2 )
- K1 = H ( K2 )
Un algorithme de chiffrement à flot ?
Équations équivalentes a un algorithme de
chiffrement a flot :
- K = F ( k )
- C = P xor K
- P = C xor K
Un meta algorithme de chiffrement par flot
Information début ( Variables Entrées )
Clé secrète : Cs.
Texte en claire : M = [ m_0….m_n] .
Information intermédiaire ( Variables Internes )
État interne : E = [E_0…..E_n] .
Flux de clé : K = [k_0….k_n].
Information Fin ( Variables Sortie)
Texte chiffré : C = [c_0…..c_n] .
Initialisation de l’état interne :
E_0 = Initialiser( Cs ).
Boucle de chiffrement :
i de 0 a n faire
E_i+1 = F ( E_i )
k_i = G ( E_i+1 )
c_i = k_i xor p_i
La structure mathématique sous jacente au problème des 3 corps.
La structure mathématique :
Ensemble S ={ [(p1_0,f1_0),(p2_0,f2_0),(p3_0,f3_0)] …
[(p1_i,f1_i),(p2_i,f2_i),(p3_i,f3_i)] …
[(p1_n,f1_n),(p2_n,f2_n),(pi_n,fi_n)] }
Caractérisé par les règles suivantes :
f1_i+1 = F1(p2_i , p3_i )
f2_i+1 = F2(p3_i , p1_i )
f3_i+1 = F3(p1_i , p2_i )
p1_i+1 = G1(f1_i+1 )
p2_i+1 = G2(f2_i+1 )
p3_i+1 = G3(f3_i+1 )
Un meta algorithme de chiffrement par flot basé sur la structure
mathématique sous jacente au problème des 3 corps.
Information début ( Variables Entrées )
Clé secrète : Cs.
Texte en claire : M = [ m_0….m_n] .
Information intermédiaire ( Variables Internes )
État interne : E = { [(p1_0,f1_0),(p2_0,f2_0),(p3_0,f3_0)] …..
[(p1_n,f1_n),(p2_n,f2_n),(p3_n,f3_n)] }
Flux de clé : K = [k_0….k_n].
Information Fin ( Variables Sortie )
Texte chiffré : C = [c_0…..c_n].
Initialisation de l’état interne :
E0 =[ ( p1_0 , f1_0 ) , ( p2_0 , f2_0 ) , ( p3_0, f3_0) ] = Initialiser(Cs ).
Boucle de chiffrement :
i de 0 a n faire
f1_i+1 = F1 ( p2_i , p3_i )
f2_i+1 = F2 ( p3_i , p1_i )
f3_i+1 = F3( p1_i , p2_i )
p1_i+1 = G1 ( f1_i+1 )
p2_i+1 = G2 ( f2_i+1 )
p3_i+1 = G3 ( f3_i+1 )
k_i = p1_i+1
c_i = k_i xor m_i
L’algorithme RC4 :
Clef secrète Cs, composé de l mots de 8 bits, K[0], …, K[l-1].
Initialisation :
Pour i de 0 à 255
S[i] : i.
j : 0
Pour i de 0 à 255 faire
j : ( j + S[i] + K[i mod l ] ) mod 256
échanger S[i] et S[j]
Boucle de chiffrement :
i : 0, j : 0
De i = 0 a n
i : ( i+1 ) mod 256
j : ( j+S[i] ) mod 256
échanger S[i] et S[j].
k_i+1 = S[( S[i] + S[j] ) mod 256 ]
c_i = k_i+1 xor m_i.
L’algorithme 3XRC4 :
Clef secrète Cs =[K1, K2, K3] , Ki=1..3 composé de l mots de 8 bits, ki[0], …, ki[l-1].
Initialisation :
Pour i de 0 à 255
S1[i] : S2[i] : S3[i] : i .
u : v : w : 0
Pour i de 0 à 255 faire
u : ( u + S2[S3[i]] + K1[ i mod l ] ) mod 256
échanger S1[i] et S1[u]
v : ( v + S3[S1[i]] + K2[ i mod l ] ) mod 256
échanger S2[i] et S2[v]
w : ( w + S3[S1[i]] + K3[ i mod l ] ) mod 256
échanger S3[i] et S3[v]
Boucle de chiffrement :
i : u : v : w :0
De i = 0 a n
i : ( i+1 ) mod 256
u : ( u+S2[S3[i]] ) mod N
échanger S1[i] et S1[u]
v : ( v+S3[S1[i]] ) mod 256
échanger S2[i] et S2[v]
w : ( w+S1[S2[i]] ) mod 256
échanger S3[i] et S3[w]
k_i+1 = S1[( S1[i] + S1[u] ) mod 256 ]
c_i = k_i+1 xor m_i.
Présenté par :
Samir Bouftass, Chercheur independant en
cryptographie et membre de l’association
marocaine de cryptographie.
E_mail :crypticator@gmail.com
Site de L’AMC : http://www.amcrypto.org/Root/

Contenu connexe

Tendances

intégrale triple
intégrale tripleintégrale triple
intégrale tripleKum Visal
 
Resumer algorithme recurent
Resumer algorithme recurentResumer algorithme recurent
Resumer algorithme recurentborhen boukthir
 
Dérivation et Intégration numériques
Dérivation et Intégration numériquesDérivation et Intégration numériques
Dérivation et Intégration numériquesJaouad Dabounou
 
Exercice fonctions réciproques
Exercice fonctions réciproquesExercice fonctions réciproques
Exercice fonctions réciproquesYessin Abdelhedi
 
Exercice nombres complexes
Exercice nombres complexesExercice nombres complexes
Exercice nombres complexesYessin Abdelhedi
 
3e tm4 fcts lin_calc litt_arithm
3e tm4 fcts lin_calc litt_arithm3e tm4 fcts lin_calc litt_arithm
3e tm4 fcts lin_calc litt_arithmOTANGAD
 
Circuits logiques combinatoire
Circuits logiques combinatoireCircuits logiques combinatoire
Circuits logiques combinatoirelinuxscout
 
3e tm5 calc litt_trigo_espace
3e tm5 calc litt_trigo_espace3e tm5 calc litt_trigo_espace
3e tm5 calc litt_trigo_espaceOTANGAD
 
Algèbre de boole ionction-logique-p2-1
Algèbre de boole ionction-logique-p2-1Algèbre de boole ionction-logique-p2-1
Algèbre de boole ionction-logique-p2-1linuxscout
 
Analyse numérique interpolation
Analyse numérique interpolationAnalyse numérique interpolation
Analyse numérique interpolationJaouad Dabounou
 
Algèbre de boole
Algèbre de booleAlgèbre de boole
Algèbre de boolelinuxscout
 
Chapitre 2 problème de plus court chemin
Chapitre 2 problème de plus court cheminChapitre 2 problème de plus court chemin
Chapitre 2 problème de plus court cheminSana Aroussi
 
Traitement des images avec matlab
Traitement des images avec matlabTraitement des images avec matlab
Traitement des images avec matlabomar bllaouhamou
 
3e tm3 calc litt_fct_thales
3e tm3 calc litt_fct_thales3e tm3 calc litt_fct_thales
3e tm3 calc litt_fct_thalesOTANGAD
 
165380609 livre-professeur-maths-1ere-s
165380609 livre-professeur-maths-1ere-s165380609 livre-professeur-maths-1ere-s
165380609 livre-professeur-maths-1ere-sEttaoufik Elayedi
 
Serie+d'exercices+ +math+-+translation+-+2ème+sciences
Serie+d'exercices+ +math+-+translation+-+2ème+sciencesSerie+d'exercices+ +math+-+translation+-+2ème+sciences
Serie+d'exercices+ +math+-+translation+-+2ème+sciencesArbi Grami
 

Tendances (20)

intégrale triple
intégrale tripleintégrale triple
intégrale triple
 
Resumer algorithme recurent
Resumer algorithme recurentResumer algorithme recurent
Resumer algorithme recurent
 
Dérivation et Intégration numériques
Dérivation et Intégration numériquesDérivation et Intégration numériques
Dérivation et Intégration numériques
 
Td logique
Td logiqueTd logique
Td logique
 
Exercice fonctions réciproques
Exercice fonctions réciproquesExercice fonctions réciproques
Exercice fonctions réciproques
 
Exercice nombres complexes
Exercice nombres complexesExercice nombres complexes
Exercice nombres complexes
 
3e tm4 fcts lin_calc litt_arithm
3e tm4 fcts lin_calc litt_arithm3e tm4 fcts lin_calc litt_arithm
3e tm4 fcts lin_calc litt_arithm
 
Circuits logiques combinatoire
Circuits logiques combinatoireCircuits logiques combinatoire
Circuits logiques combinatoire
 
Exercice primitives
Exercice primitivesExercice primitives
Exercice primitives
 
3e tm5 calc litt_trigo_espace
3e tm5 calc litt_trigo_espace3e tm5 calc litt_trigo_espace
3e tm5 calc litt_trigo_espace
 
Ensa t09 m
Ensa t09 mEnsa t09 m
Ensa t09 m
 
Algèbre de boole ionction-logique-p2-1
Algèbre de boole ionction-logique-p2-1Algèbre de boole ionction-logique-p2-1
Algèbre de boole ionction-logique-p2-1
 
Analyse numérique interpolation
Analyse numérique interpolationAnalyse numérique interpolation
Analyse numérique interpolation
 
Algèbre de boole
Algèbre de booleAlgèbre de boole
Algèbre de boole
 
Chapitre 2 problème de plus court chemin
Chapitre 2 problème de plus court cheminChapitre 2 problème de plus court chemin
Chapitre 2 problème de plus court chemin
 
Traitement des images avec matlab
Traitement des images avec matlabTraitement des images avec matlab
Traitement des images avec matlab
 
Fiche complexes
Fiche complexesFiche complexes
Fiche complexes
 
3e tm3 calc litt_fct_thales
3e tm3 calc litt_fct_thales3e tm3 calc litt_fct_thales
3e tm3 calc litt_fct_thales
 
165380609 livre-professeur-maths-1ere-s
165380609 livre-professeur-maths-1ere-s165380609 livre-professeur-maths-1ere-s
165380609 livre-professeur-maths-1ere-s
 
Serie+d'exercices+ +math+-+translation+-+2ème+sciences
Serie+d'exercices+ +math+-+translation+-+2ème+sciencesSerie+d'exercices+ +math+-+translation+-+2ème+sciences
Serie+d'exercices+ +math+-+translation+-+2ème+sciences
 

En vedette

Target audience profile task 4
Target audience profile task 4Target audience profile task 4
Target audience profile task 4AS Media Column D
 
Asterisk World Theater Talk Tlc 080319
Asterisk World Theater Talk Tlc 080319Asterisk World Theater Talk Tlc 080319
Asterisk World Theater Talk Tlc 080319Carl Ford
 
Asterisk World2008
Asterisk World2008Asterisk World2008
Asterisk World2008Carl Ford
 
Introduction à la sécurité informatique Volume2
Introduction à la sécurité informatique Volume2Introduction à la sécurité informatique Volume2
Introduction à la sécurité informatique Volume2Sylvain Maret
 
Algorithme de chiffrement RC4, A5/1 & A5/2
Algorithme de chiffrement RC4, A5/1 & A5/2Algorithme de chiffrement RC4, A5/1 & A5/2
Algorithme de chiffrement RC4, A5/1 & A5/2Max Benana
 
Technique de Cryptographie AES, DES et RSA
Technique de Cryptographie AES, DES et RSATechnique de Cryptographie AES, DES et RSA
Technique de Cryptographie AES, DES et RSAHouda Elmoutaoukil
 
Etude et Mise en oeuvre d'une architecture de téléphonie sur IP sécurisée au ...
Etude et Mise en oeuvre d'une architecture de téléphonie sur IP sécurisée au ...Etude et Mise en oeuvre d'une architecture de téléphonie sur IP sécurisée au ...
Etude et Mise en oeuvre d'une architecture de téléphonie sur IP sécurisée au ...stepmike
 
Alphorm.com Support de la Formation Les Sciences Forensiques : L’investigati...
Alphorm.com Support de la Formation Les Sciences Forensiques  : L’investigati...Alphorm.com Support de la Formation Les Sciences Forensiques  : L’investigati...
Alphorm.com Support de la Formation Les Sciences Forensiques : L’investigati...Alphorm
 
Alphorm.com ressources-formation-hacking-et-securite-reseaux-sans-fils
Alphorm.com ressources-formation-hacking-et-securite-reseaux-sans-filsAlphorm.com ressources-formation-hacking-et-securite-reseaux-sans-fils
Alphorm.com ressources-formation-hacking-et-securite-reseaux-sans-filsAlphorm
 
Alphorm.com Support Formation Hacking & Sécurité Expert Vulnérabilités Web
Alphorm.com Support Formation Hacking & Sécurité Expert Vulnérabilités WebAlphorm.com Support Formation Hacking & Sécurité Expert Vulnérabilités Web
Alphorm.com Support Formation Hacking & Sécurité Expert Vulnérabilités WebAlphorm
 
Alphorm.com Support de la formation Hacking & Sécurité, Expert - Vulnérabilit...
Alphorm.com Support de la formation Hacking & Sécurité, Expert - Vulnérabilit...Alphorm.com Support de la formation Hacking & Sécurité, Expert - Vulnérabilit...
Alphorm.com Support de la formation Hacking & Sécurité, Expert - Vulnérabilit...Alphorm
 
Alphorm.com Support de la formation Hacking et Sécurité Metasploit
Alphorm.com Support de la formation Hacking et Sécurité MetasploitAlphorm.com Support de la formation Hacking et Sécurité Metasploit
Alphorm.com Support de la formation Hacking et Sécurité MetasploitAlphorm
 
Alphorm.com Formation Cisco CCNP TSHOOT
Alphorm.com Formation Cisco CCNP TSHOOTAlphorm.com Formation Cisco CCNP TSHOOT
Alphorm.com Formation Cisco CCNP TSHOOTAlphorm
 
Alphorm.com Formation CEHV9 III
Alphorm.com Formation CEHV9 IIIAlphorm.com Formation CEHV9 III
Alphorm.com Formation CEHV9 IIIAlphorm
 
TENDANCES 2014/2015: Sommaire executif
TENDANCES 2014/2015: Sommaire executifTENDANCES 2014/2015: Sommaire executif
TENDANCES 2014/2015: Sommaire executifSonic Boom
 

En vedette (20)

RC4 Technique in Visual Cryptography
RC4 Technique in Visual CryptographyRC4 Technique in Visual Cryptography
RC4 Technique in Visual Cryptography
 
Target audience profile task 4
Target audience profile task 4Target audience profile task 4
Target audience profile task 4
 
Asterisk World Theater Talk Tlc 080319
Asterisk World Theater Talk Tlc 080319Asterisk World Theater Talk Tlc 080319
Asterisk World Theater Talk Tlc 080319
 
Asterisk World2008
Asterisk World2008Asterisk World2008
Asterisk World2008
 
Introduction à la sécurité informatique Volume2
Introduction à la sécurité informatique Volume2Introduction à la sécurité informatique Volume2
Introduction à la sécurité informatique Volume2
 
Telephonie ip
Telephonie ipTelephonie ip
Telephonie ip
 
Algorithme de chiffrement RC4, A5/1 & A5/2
Algorithme de chiffrement RC4, A5/1 & A5/2Algorithme de chiffrement RC4, A5/1 & A5/2
Algorithme de chiffrement RC4, A5/1 & A5/2
 
VoIP
VoIPVoIP
VoIP
 
Technique de Cryptographie AES, DES et RSA
Technique de Cryptographie AES, DES et RSATechnique de Cryptographie AES, DES et RSA
Technique de Cryptographie AES, DES et RSA
 
Etude et Mise en oeuvre d'une architecture de téléphonie sur IP sécurisée au ...
Etude et Mise en oeuvre d'une architecture de téléphonie sur IP sécurisée au ...Etude et Mise en oeuvre d'une architecture de téléphonie sur IP sécurisée au ...
Etude et Mise en oeuvre d'une architecture de téléphonie sur IP sécurisée au ...
 
Etude de la VoIP
Etude de la VoIPEtude de la VoIP
Etude de la VoIP
 
Alphorm.com Support de la Formation Les Sciences Forensiques : L’investigati...
Alphorm.com Support de la Formation Les Sciences Forensiques  : L’investigati...Alphorm.com Support de la Formation Les Sciences Forensiques  : L’investigati...
Alphorm.com Support de la Formation Les Sciences Forensiques : L’investigati...
 
Alphorm.com ressources-formation-hacking-et-securite-reseaux-sans-fils
Alphorm.com ressources-formation-hacking-et-securite-reseaux-sans-filsAlphorm.com ressources-formation-hacking-et-securite-reseaux-sans-fils
Alphorm.com ressources-formation-hacking-et-securite-reseaux-sans-fils
 
Alphorm.com Support Formation Hacking & Sécurité Expert Vulnérabilités Web
Alphorm.com Support Formation Hacking & Sécurité Expert Vulnérabilités WebAlphorm.com Support Formation Hacking & Sécurité Expert Vulnérabilités Web
Alphorm.com Support Formation Hacking & Sécurité Expert Vulnérabilités Web
 
Alphorm.com Support de la formation Hacking & Sécurité, Expert - Vulnérabilit...
Alphorm.com Support de la formation Hacking & Sécurité, Expert - Vulnérabilit...Alphorm.com Support de la formation Hacking & Sécurité, Expert - Vulnérabilit...
Alphorm.com Support de la formation Hacking & Sécurité, Expert - Vulnérabilit...
 
Alphorm.com Support de la formation Hacking et Sécurité Metasploit
Alphorm.com Support de la formation Hacking et Sécurité MetasploitAlphorm.com Support de la formation Hacking et Sécurité Metasploit
Alphorm.com Support de la formation Hacking et Sécurité Metasploit
 
Alphorm.com Formation Cisco CCNP TSHOOT
Alphorm.com Formation Cisco CCNP TSHOOTAlphorm.com Formation Cisco CCNP TSHOOT
Alphorm.com Formation Cisco CCNP TSHOOT
 
Alphorm.com Formation CEHV9 III
Alphorm.com Formation CEHV9 IIIAlphorm.com Formation CEHV9 III
Alphorm.com Formation CEHV9 III
 
Hã gado
Hã gadoHã gado
Hã gado
 
TENDANCES 2014/2015: Sommaire executif
TENDANCES 2014/2015: Sommaire executifTENDANCES 2014/2015: Sommaire executif
TENDANCES 2014/2015: Sommaire executif
 

Similaire à Un algorithme de chiffrement a flot base sur le probleme des 3 corps.

Programmation Dynamique : Mise en œuvre et application à des problèmes en TAL
Programmation Dynamique : Mise en œuvre et application à des problèmes en TALProgrammation Dynamique : Mise en œuvre et application à des problèmes en TAL
Programmation Dynamique : Mise en œuvre et application à des problèmes en TALECAM Brussels Engineering School
 
UML OCL : Cheat Sheet - 10
UML OCL : Cheat Sheet - 10UML OCL : Cheat Sheet - 10
UML OCL : Cheat Sheet - 10megaplanet20
 
Ch8 correction exercices (1)
Ch8 correction exercices (1)Ch8 correction exercices (1)
Ch8 correction exercices (1)abdellah12
 
Examen du seconde semestre eg9
Examen du seconde semestre eg9Examen du seconde semestre eg9
Examen du seconde semestre eg9zeinabze
 
ALF 11 - Diagrame de flux de controlle
ALF 11 - Diagrame de flux de controlleALF 11 - Diagrame de flux de controlle
ALF 11 - Diagrame de flux de controlleAlexandru Radovici
 
Introduction a Matlab Introduction a Matlab
Introduction a Matlab Introduction a MatlabIntroduction a Matlab Introduction a Matlab
Introduction a Matlab Introduction a MatlabMarouaneMyyara2
 
Chapitre 2 plus court chemin
Chapitre 2 plus court cheminChapitre 2 plus court chemin
Chapitre 2 plus court cheminSana Aroussi
 
Exercices corrigés applications linéaires-djeddi kamel
Exercices corrigés applications linéaires-djeddi kamelExercices corrigés applications linéaires-djeddi kamel
Exercices corrigés applications linéaires-djeddi kamelKamel Djeddi
 
Cours de C++ / Tronc commun deuxième année ISIMA
Cours de C++ / Tronc commun deuxième année ISIMACours de C++ / Tronc commun deuxième année ISIMA
Cours de C++ / Tronc commun deuxième année ISIMALoic Yon
 
Algorithmique seconde (corrigés et commentaires)
Algorithmique seconde (corrigés et commentaires)Algorithmique seconde (corrigés et commentaires)
Algorithmique seconde (corrigés et commentaires)DriNox NordisTe
 
Analyse des chaînes ADN par l'algorithme de Cocke-Younger-Kasami
Analyse des chaînes ADN par l'algorithme de Cocke-Younger-KasamiAnalyse des chaînes ADN par l'algorithme de Cocke-Younger-Kasami
Analyse des chaînes ADN par l'algorithme de Cocke-Younger-KasamiLoghin Dumitru
 
ALF 11 - Diagramme de flux de contrôle et WebAssembly
ALF 11 - Diagramme de flux de contrôle et WebAssemblyALF 11 - Diagramme de flux de contrôle et WebAssembly
ALF 11 - Diagramme de flux de contrôle et WebAssemblyAlexandru Radovici
 
Sthack 2015 - Aris "@aris_ada" Adamantiadis - DUAL_EC_DRBG : Une histoire de ...
Sthack 2015 - Aris "@aris_ada" Adamantiadis - DUAL_EC_DRBG : Une histoire de ...Sthack 2015 - Aris "@aris_ada" Adamantiadis - DUAL_EC_DRBG : Une histoire de ...
Sthack 2015 - Aris "@aris_ada" Adamantiadis - DUAL_EC_DRBG : Une histoire de ...StHack
 

Similaire à Un algorithme de chiffrement a flot base sur le probleme des 3 corps. (20)

Video
VideoVideo
Video
 
Programmation Dynamique : Mise en œuvre et application à des problèmes en TAL
Programmation Dynamique : Mise en œuvre et application à des problèmes en TALProgrammation Dynamique : Mise en œuvre et application à des problèmes en TAL
Programmation Dynamique : Mise en œuvre et application à des problèmes en TAL
 
UML OCL : Cheat Sheet - 10
UML OCL : Cheat Sheet - 10UML OCL : Cheat Sheet - 10
UML OCL : Cheat Sheet - 10
 
Ch8 correction exercices (1)
Ch8 correction exercices (1)Ch8 correction exercices (1)
Ch8 correction exercices (1)
 
Mathématiques et Python
Mathématiques et PythonMathématiques et Python
Mathématiques et Python
 
Support programmation orientée objet c# .net version f8
Support programmation orientée objet c#  .net version f8Support programmation orientée objet c#  .net version f8
Support programmation orientée objet c# .net version f8
 
Examen du seconde semestre eg9
Examen du seconde semestre eg9Examen du seconde semestre eg9
Examen du seconde semestre eg9
 
Fic00001
Fic00001Fic00001
Fic00001
 
cours algorithme
cours algorithmecours algorithme
cours algorithme
 
ALF 11 - Diagrame de flux de controlle
ALF 11 - Diagrame de flux de controlleALF 11 - Diagrame de flux de controlle
ALF 11 - Diagrame de flux de controlle
 
Introduction a Matlab Introduction a Matlab
Introduction a Matlab Introduction a MatlabIntroduction a Matlab Introduction a Matlab
Introduction a Matlab Introduction a Matlab
 
Chapitre 2 plus court chemin
Chapitre 2 plus court cheminChapitre 2 plus court chemin
Chapitre 2 plus court chemin
 
Exercices corrigés applications linéaires-djeddi kamel
Exercices corrigés applications linéaires-djeddi kamelExercices corrigés applications linéaires-djeddi kamel
Exercices corrigés applications linéaires-djeddi kamel
 
Rapport tp RSA
Rapport  tp  RSARapport  tp  RSA
Rapport tp RSA
 
Cours de C++ / Tronc commun deuxième année ISIMA
Cours de C++ / Tronc commun deuxième année ISIMACours de C++ / Tronc commun deuxième année ISIMA
Cours de C++ / Tronc commun deuxième année ISIMA
 
Algorithmique seconde (corrigés et commentaires)
Algorithmique seconde (corrigés et commentaires)Algorithmique seconde (corrigés et commentaires)
Algorithmique seconde (corrigés et commentaires)
 
courstic2.pptx
courstic2.pptxcourstic2.pptx
courstic2.pptx
 
Analyse des chaînes ADN par l'algorithme de Cocke-Younger-Kasami
Analyse des chaînes ADN par l'algorithme de Cocke-Younger-KasamiAnalyse des chaînes ADN par l'algorithme de Cocke-Younger-Kasami
Analyse des chaînes ADN par l'algorithme de Cocke-Younger-Kasami
 
ALF 11 - Diagramme de flux de contrôle et WebAssembly
ALF 11 - Diagramme de flux de contrôle et WebAssemblyALF 11 - Diagramme de flux de contrôle et WebAssembly
ALF 11 - Diagramme de flux de contrôle et WebAssembly
 
Sthack 2015 - Aris "@aris_ada" Adamantiadis - DUAL_EC_DRBG : Une histoire de ...
Sthack 2015 - Aris "@aris_ada" Adamantiadis - DUAL_EC_DRBG : Une histoire de ...Sthack 2015 - Aris "@aris_ada" Adamantiadis - DUAL_EC_DRBG : Une histoire de ...
Sthack 2015 - Aris "@aris_ada" Adamantiadis - DUAL_EC_DRBG : Une histoire de ...
 

Un algorithme de chiffrement a flot base sur le probleme des 3 corps.

  • 1. Conception d’un algorithme de chiffrement a flot basé sur le problème des 3 corps
  • 3.
  • 5. - Le chiffrement symétrique - Le chiffrement asymétrique
  • 6.
  • 7. Les algorithmes de chiffrement sont équivalents a  Des fonctions a sens unique avec des portes dérobés
  • 8. -Un algorithme de chiffrement ou de déchiffrement est une une fonction difficile a inverser sans connaître la clé de chiffrement. => Ceci est en quelques sorte analogue a une fonction a sens unique avec une porte dérobée.
  • 9. Équations équivalentes a un algorithme de chiffrement symétrique : - C = F ( P , K ) - P = G ( C , K )
  • 10. Équations équivalentes a un algorithme de chiffrement asymétrique : - C = F ( P , K1 ) - P = G ( C , K2 ) - K1 = H ( K2 )
  • 11. Un algorithme de chiffrement à flot ?
  • 12. Équations équivalentes a un algorithme de chiffrement a flot : - K = F ( k ) - C = P xor K - P = C xor K
  • 13.
  • 14.
  • 15.
  • 16. Un meta algorithme de chiffrement par flot Information début ( Variables Entrées ) Clé secrète : Cs. Texte en claire : M = [ m_0….m_n] . Information intermédiaire ( Variables Internes ) État interne : E = [E_0…..E_n] . Flux de clé : K = [k_0….k_n]. Information Fin ( Variables Sortie) Texte chiffré : C = [c_0…..c_n] .
  • 17. Initialisation de l’état interne : E_0 = Initialiser( Cs ). Boucle de chiffrement : i de 0 a n faire E_i+1 = F ( E_i ) k_i = G ( E_i+1 ) c_i = k_i xor p_i
  • 18. La structure mathématique sous jacente au problème des 3 corps.
  • 19. La structure mathématique : Ensemble S ={ [(p1_0,f1_0),(p2_0,f2_0),(p3_0,f3_0)] … [(p1_i,f1_i),(p2_i,f2_i),(p3_i,f3_i)] … [(p1_n,f1_n),(p2_n,f2_n),(pi_n,fi_n)] } Caractérisé par les règles suivantes : f1_i+1 = F1(p2_i , p3_i ) f2_i+1 = F2(p3_i , p1_i ) f3_i+1 = F3(p1_i , p2_i ) p1_i+1 = G1(f1_i+1 ) p2_i+1 = G2(f2_i+1 ) p3_i+1 = G3(f3_i+1 )
  • 20. Un meta algorithme de chiffrement par flot basé sur la structure mathématique sous jacente au problème des 3 corps. Information début ( Variables Entrées ) Clé secrète : Cs. Texte en claire : M = [ m_0….m_n] . Information intermédiaire ( Variables Internes ) État interne : E = { [(p1_0,f1_0),(p2_0,f2_0),(p3_0,f3_0)] ….. [(p1_n,f1_n),(p2_n,f2_n),(p3_n,f3_n)] } Flux de clé : K = [k_0….k_n]. Information Fin ( Variables Sortie ) Texte chiffré : C = [c_0…..c_n].
  • 21. Initialisation de l’état interne : E0 =[ ( p1_0 , f1_0 ) , ( p2_0 , f2_0 ) , ( p3_0, f3_0) ] = Initialiser(Cs ). Boucle de chiffrement : i de 0 a n faire f1_i+1 = F1 ( p2_i , p3_i ) f2_i+1 = F2 ( p3_i , p1_i ) f3_i+1 = F3( p1_i , p2_i ) p1_i+1 = G1 ( f1_i+1 ) p2_i+1 = G2 ( f2_i+1 ) p3_i+1 = G3 ( f3_i+1 ) k_i = p1_i+1 c_i = k_i xor m_i
  • 22. L’algorithme RC4 : Clef secrète Cs, composé de l mots de 8 bits, K[0], …, K[l-1]. Initialisation : Pour i de 0 à 255 S[i] : i. j : 0 Pour i de 0 à 255 faire j : ( j + S[i] + K[i mod l ] ) mod 256 échanger S[i] et S[j]
  • 23. Boucle de chiffrement : i : 0, j : 0 De i = 0 a n i : ( i+1 ) mod 256 j : ( j+S[i] ) mod 256 échanger S[i] et S[j]. k_i+1 = S[( S[i] + S[j] ) mod 256 ] c_i = k_i+1 xor m_i.
  • 24.
  • 26. Clef secrète Cs =[K1, K2, K3] , Ki=1..3 composé de l mots de 8 bits, ki[0], …, ki[l-1]. Initialisation : Pour i de 0 à 255 S1[i] : S2[i] : S3[i] : i . u : v : w : 0 Pour i de 0 à 255 faire u : ( u + S2[S3[i]] + K1[ i mod l ] ) mod 256 échanger S1[i] et S1[u] v : ( v + S3[S1[i]] + K2[ i mod l ] ) mod 256 échanger S2[i] et S2[v] w : ( w + S3[S1[i]] + K3[ i mod l ] ) mod 256 échanger S3[i] et S3[v]
  • 27. Boucle de chiffrement : i : u : v : w :0 De i = 0 a n i : ( i+1 ) mod 256 u : ( u+S2[S3[i]] ) mod N échanger S1[i] et S1[u] v : ( v+S3[S1[i]] ) mod 256 échanger S2[i] et S2[v] w : ( w+S1[S2[i]] ) mod 256 échanger S3[i] et S3[w] k_i+1 = S1[( S1[i] + S1[u] ) mod 256 ] c_i = k_i+1 xor m_i.
  • 28. Présenté par : Samir Bouftass, Chercheur independant en cryptographie et membre de l’association marocaine de cryptographie. E_mail :crypticator@gmail.com Site de L’AMC : http://www.amcrypto.org/Root/