Script de Chiffrement PHP – JavaScript – V.2.0

2953693-painting_sherlock_holmes_by_ineer-d5krpt4

 

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 :

 

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;
}

 

En PHP :

 

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;
}

 

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 "

 

 

Partagez ce contenu

Laisser une réponse

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *