Principe : les caractères ont un code ASCII entre celui de 'espace' (32) et celui de tilde '~' (126) , la plage des caractères imprimables.
La plage est large de 126-31 = 95 positions.
chaine encodee :
Le 1er caractère est aléatoire entre ascii 32 et ascii 126 ; c'est la "graine" qui va nous permettre de décaler le caractère suivant (le 1er de la phrase, en fait)
2e carac crypté : codage du 1er carac de la phrase source.
On met de côté ce caractère comme graine du codage suivant.
On fait la somme entre (la graine) et le 1er clair . Si le resultat est trop grand ( > 126) on décale à gauche de la largeur de l'intervalle [ 32; 126] donc : - (126 - 31) , ou -95
On fait ce décalage pour maintenir le résultat dans la plage des caractères imprimables , codes ascii [ 32; 126]
3e carac crypté : même procédé
etc ..
décodage de l'encodée :
1er caractère : on le note, c'est la "graine" pour le suivant
2eme caractère: on lui retranche la préc, si trop petit : on augmente
de la largeur de [32;126] donc : + (126 - 31) + 95
code de test dans le programme
1 votes Thanks 1
fffarid
Erreur au chargement du fichier texte. Projet # https://trinket.io/python3/7ee1c66ff3
fffarid
Tu as pu avoir le code via le lien ? Lorsque j'ai voulu le joindre en fichier, une erreur est survenue.
Lista de comentários
Réponse :
Explications :
Méthode de cryptage :
CODAGE d'une phrase par décalage variable
Principe : les caractères ont un code ASCII entre celui de 'espace' (32) et celui de tilde '~' (126) , la plage des caractères imprimables.
La plage est large de 126-31 = 95 positions.
chaine encodee :
Le 1er caractère est aléatoire entre ascii 32 et ascii 126 ; c'est la "graine" qui va nous permettre de décaler le caractère suivant (le 1er de la phrase, en fait)
2e carac crypté : codage du 1er carac de la phrase source.
On met de côté ce caractère comme graine du codage suivant.
On fait la somme entre (la graine) et le 1er clair . Si le resultat est trop grand ( > 126) on décale à gauche de la largeur de l'intervalle [ 32; 126] donc : - (126 - 31) , ou -95
On fait ce décalage pour maintenir le résultat dans la plage des caractères imprimables , codes ascii [ 32; 126]
3e carac crypté : même procédé
etc ..
décodage de l'encodée :
1er caractère : on le note, c'est la "graine" pour le suivant
2eme caractère: on lui retranche la préc, si trop petit : on augmente
de la largeur de [32;126] donc : + (126 - 31) + 95
code de test dans le programme