Page 1 sur 1
Chiffrage
Posté : 19 déc. 2006, 01:08
par hackman61
bonsoir à tous, voici ma question :
est il possible de crypter du texte en incrementant les lettres , par exemple A=E, etc, le must serait de pouvoir le faire avec la table ASCII , a=1er caractere de la table..etc , avec du texte en clair ds un formulaire, puis clique sur "GO" et la on se retrouve avec un texte crypté,,deplus, en décrementant, on peux-pe etre le decrypter??
Merci d'avance pour votre aide!
Nicolas.
Posté : 19 déc. 2006, 06:59
par Ripat
Ce que tu veux faire s'appelle le chiffrement de César. Ce type de chiffrement symétrique est très facile à casser, il suffit de calculer la fréquence de chacune des lettres. Sachant que les e et i sont les plus fréquentes, on peut facilement trouver la clé de chiffrement.
Regarde plutôt du côté de la bibliothèque mcrypt de PHP. Tuto sur ce site.
Posté : 19 déc. 2006, 20:02
par hackman61
merci des renseignements, mais je veux juste tester, je vais pas chiffrer des documents confidentiels, c'est pour voir comment sa fonctionne, alor on peut pas??On peut juste avec la bibliothèque mcrypt de PHP??
Posté : 19 déc. 2006, 21:57
par Cyrano
Si tu peux, il suffit de concevoir ton propre algorithme, mais ce ne sera pas comparable avec un vrai chiffrement.
Pour la méthodologie à suivre, tu pourrais utiliser un tableau indexé par exemple :
$lettres = array('a','b','c',... etc...);
à partir de là, tu as :
$lettre[0] = 'a';
$lettre[1] = 'b';
//..etc...
Grosso modo, il suffit alors de créer une petite fonction qui, pour une lettre donnée va retourner la lettre correspondante selon le chiffre décidé : +1, +5, +12 ou ce que tu veux et ôtant le nombre de lettre si le résultat est supérieur à 26.
Posté : 19 déc. 2006, 22:11
par Hubert Roksor
En fait on peut faire encore plus simple avec strtr(), et je ne parle même pas de str_rot13()
Par exemple :
<pre><?php
$alphabet = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz';
$cle = str_shuffle($alphabet);
$phrase = 'Ceci est un texte';
$cryptee = strtr($phrase, $alphabet, $cle);
$decryptee = strtr($cryptee, $cle, $alphabet);
echo "Phrase cryptée : ", $cryptee, "\n";
echo "Clé : ", $cle, "\n";
echo "Phrase décryptée : ", $decryptee, "\n";
La clé ici est aléatoire, mais tu peux faire ta propre clé en mélangeant les lettres de l'alphabet.
Posté : 20 déc. 2006, 13:56
par hackman61
c'est parfait, merci beaucoup à vous!!
