Script de Chiffrement PHP – JavaScript – V.2.0
Hello Hello,
Bon j’ai vu que mon article sur le chiffrement vous avais pas mal intéressé !
Je me suis donc dis, pourquoi ne pas leurs en faire un, un tout petit peu plus complexifié :)
Voici donc une deuxième itération de mon script :
En Javascript :
[pastacode lang= »php » message= » » highlight= » » provider= »manual »]
function encrypt($msg,$key) {
$x = 0; $z = 0;
$tmp = $msg;
while (strlen($msg) - 1 >= $x ){
$caractere = $tmp[$x];
$clef = $key[$z++];
$tmp[$x] = chr(ord($caractere) + intVal($clef));
$z=($z>strlen($key)-1)?0:$z;++$x;
}
$tmp = base64_encode($tmp);
return $tmp;
}
function decrypt($msg2,$key2) {
$a = 0; $j = 0;
$tmp2 = base64_decode($msg2);
while (strlen($tmp2) - 1 >= $a ){
$caractere2 = $tmp2[$a];
$clef2 = $key2[$b++];
$tmp2[$a] = chr(ord($caractere2) - intVal($clef2));
$b=($b>strlen($key2)-1)?0:$b;$a++;
}
return $tmp2;
}
[/pastacode]
En PHP :
[pastacode lang= »php » message= » » highlight= » » provider= »manual »]
function encrypt($msg,$key) {
$x = 0; $z = 0;
$tmp = $msg;
while (strlen($msg) - 1 >= $x ){
$caractere = $tmp[$x];
$clef = $key[$z++];
$tmp[$x] = chr(ord($caractere) + intVal($clef));
$z=($z>strlen($key)-1)?0:$z;++$x;
}
$tmp = base64_encode($tmp);
return $tmp;
}
function decrypt($msg2,$key2) {
$a = 0; $j = 0;
$tmp2 = base64_decode($msg2);
while (strlen($tmp2) - 1 >= $a ){
$caractere2 = $tmp2[$a];
$clef2 = $key2[$b++];
$tmp2[$a] = chr(ord($caractere2) - intVal($clef2));
$b=($b>strlen($key2)-1)?0:$b;$a++;
}
return $tmp2;
}
[/pastacode]
Toujours dans l’état d’esprit d’incrémentation, cette fois ci, vous pouvez envoyer en clé, une série de chiffre :
Ex : encrypt(« coucou c’est moi ! », « 41524 »);
L’algorithme, va cette fois parcourir, chaque caractère, et les incrémenter à tours de rôle par le caractère de la clé.
Les codes Ascii sont disponible sur mon ancien article : Système de Chiffrement / Dechiffrement pour les nuls !
Voyons un peu le fonctionnement en détails avec le mot « coucou »
Lettre » c » qui correspond au code Ascii 99, auquel j’incrémente via le premier chiffre de ma clé » 4 » soit 99 + 4 => 103, correspondant au code Ascii de la lettre » g «
Lettre » o » qui correspond au code Ascii 111, auquel j’incrémente via le second chiffre de ma clé » 1 » soit 111 + 1 => 112, correspondant au code Ascii de la lettre » p «
Lettre » u » qui correspond au code Ascii 117, auquel j’incrémente via le troisième chiffre de ma clé » 5 » soit 117 + 5 => 122, correspondant au code Ascii de la lettre » z «
Ainsi de suite …
Pour au final obtenir le mot » gpzgpz « , converti en base64 » Z3B6Z3B6 »
Dyrk.org