Vous n'êtes pas identifié.
Salut tout le monde.
Comme c'est en faisant apprendre que l'on voit si on as compris je vais faire un petit tuto mais il manquera quelque parties,mes questions et si je me trompe merci de me le dire ![]()
Donc premièrement l'algorithme XOR est une action utilisable seulement en binaire.Ce qui veut dire qu'auparavant de crypter/décrypter un texte(ASCII) il faut avoir convertit la chaine ASCII en binaire.
L'algorithme XOR est une méthode de cryptographie à clé symétrique ce qui veut dire que c'est la même pour crypter et pour décrypter.De plus cette algorithme est "reversible" ainsi si on crypt un texte avec une clé "x" on va obtenir notre message(crypter).Maintenant si nous re-cryptons notre message crypter avec la MEME clé nous obtenons le texte de départ.
En quoi consiste l'algorithme?
Cette algorithme comme je l'ai dit auparavant va utiliser les bytes de notre message est de notre clé.
Prenons un petit exemple
Notre message est égal(en binaire) à
01010100
et comme clé
01010000
Maintenant comment utiliser l'algorithme de XOR.Enfaite il est très simple il suffit de faire la comparaison entre le message et la clé si dans une colonne on a deux 1 ou 0 alors XOR renvoi 0 et si dans la colonne il y a un 1 et un 0 zéro alors XOR renvoi 1.Pour notre cas ça donne ceci
01010100
01010000
00000100
1ere ligne notre message(T)
2e ligne notre clé (P)
3e ligne le résultat de l'opération XOR,notre message crypté soit dans notre cas
Pour décrypter on va faire ceci
00000100
01010000
01010100
1ere ligne notre message crypté()
2e ligne notre clé (P)
3e ligne le résultat de l'opération XOR,notre message décrypté soit T dans notre cas
Compliquons maintenant un peux la chose.
Disons que notre message a crypté est Ptifou78 soit 01010000 01110100 01101001 01100110 01101111 01110101 00110111 00111000 en binaire
Avec la clé AB soit 01000001 01000010 en binaire.
Pour crypter cela nous allons faire comme auparavant
01010000 01110100 01101001 01100110 01101111 01110101 00110111 00111000
01000001 01000010 01000001 01000010 01000001 01000010 01000001 01000010
00010001 00110110 00101000 00100100 00101110 00110111 01110110 01111010
1ere ligne notre message (Ptifou78) qui est sur 64bits de base 8
2e ligne notre clé (AB) répéter 4fois pour correspondre à notre message original qui est sur 16bits de base 8 ainsi 4*16=64 on retrouve le nombre de bits de notre message
3e ligne le résultat de l'opération XOR comme auparavant,notre message crypté est donc égal à 6($.7vz
Pour le décrypter on fait pareil qu'avant
00010001 00110110 00101000 00100100 00101110 00110111 01110110 01111010
01000001 01000010 01000001 01000010 01000001 01000010 01000001 01000010
01010000 01110100 01101001 01100110 01101111 01110101 00110111 00111000
1ere ligne notre message crypté (6($.7vz) qui est sur 64bits de base 8
2e ligne notre clé (AB) répéter 4fois pour correspondre à notre message original qui est sur 16bits de base 8 ainsi 4*16=64 on retrouve le nombre de bits de notre message
3e ligne le résultat de l'opération XOR comme auparavant,notre message decrypté est donc égal à Ptifou78
Maintenant j'ai une petite question.Comment opère t-on lorsque notre message fait par exemple 64bits et que notre clé elle fait 24bits car si on suit la même méthode qu'auparavant on va se retrouvé avec une série de 8bits en trop,doit t'on supprimer ces 8bits qui pose problème ainsi on aurait bien 64bits dans notre clé et notre message?
Merci de vos réponses et vos remarques ![]()
Dernière modification par ptifou78 (07-06-2010 21:24:39)
Hors ligne
Donc tu veux dire que c'est impossible de crypté un message de 64bits avec une clé de 24bits?
PS:moi non plus j'aime pas trop le binaire mais bon XOR IS XOR ^^
Hors ligne