En fait c'est un chiffrement par substitution ton algo alors !?
Ca ressemble a un algo de chiffrement par substitution polyalphabetique.
Ce genre d'algorithmes est cassable si on utilise de longs textes et c'est le cas avec des emails.
Les techniques utilisées sont dites par "analyses frequentielles". On estime la probabilité d'apparition d'un element en fonction d'un dictionnaire connu (si par exemple on estime que tes mails sont ecrits en francais, la lettre e apparait plus souvent etc... ou bien après on cherche les probabilités d'apparitions de suites de lettres (par exemple la lettre q apparait très souvent voire quasi tt le temps avant un u , etc.....)
Et par déduction statistique on peut arriver à decrypter le message chiffré.
Est-ce que ton code ne ferait pas carrément une substitution monoalphabetique (un caractere remplacé toujours par le meme autre ?) : dans ce cas c'est encore plus vite cassé (chiffrement de César, ROT13, ...)
Si ton code fait une substitution polyalphabetique, alors regarde cet article sur le chiffrement de Vigenere :
http://fr.wikipedia.org/wiki/Cryptanalyse_du_chiffre_de_Vigen%C3%A8re
Ca resume bien ce que je t'ai dit.
Le 27 mars 2015 à 09:32:25 vava740 a écrit :
Ne fais pas ta propre crypto (à moins que ce soit vraiment ton domaine d'expertise). Utilise des algorythmes reconnus et éprouvés, tels que l'AES256 pour un chiffrement symétrique, que tu peux utiliser en PHP avec les fonctions mcrypt_.
Exactement : c'est un conseil très sage ;)
Sauf si tu cherches à te faire la main sur le monde de la cryptographie, bien sur d'un point de vue pédagogique c'est toujours très bien de faire ce genre de choses.
Bravo en tout cas pour ton algo : l'important c'est déjà qu'il soit fonctionnel mais il ne faut pas que tu cherches à protéger des secrets d'état avec ça ;)
Message édité le 27 mars 2015 à 14:48:07 par Romuald_78