Chiffrement de césar en Javascript

Dans ce tutoriel nous allons découvrir comment utiliser le chiffre de César pour crypter un message. Le chiffrement de César, également connu sous le nom de chiffrement par décalage, est l’une des formes les plus anciennes et les plus simples de chiffrement d’un message. Il s’agit d’un type de chiffrement par substitution dans lequel chaque lettre du message d’origine est remplacée par une lettre correspondant à un certain nombre de lettres décalées vers le haut ou vers le bas dans l’alphabet.
 
 

Exemple:
texte = ABCD, Clé = 10
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
Décalage de 10 vers la droite, A est remplacé par K
Décalage de 10 vers la droite, B est remplacé par L
Décalage de 10 vers la droite, C est remplacé par M
Décalage de 10 vers la droite, D est remplacé par N

La sortie :

KLMN

 

Implémentation en JavaScript
function cesar(str, amount) {
	
	if (amount < 0)
		return cesar(str, amount + 26);
	
	// variable pour stocker le résultat
	var res = '';
	// Parcourir chaque caractére
	for (var i = 0; i < str.length; i++) {
		// Récupérer le caractére que nous allons ajouter
		var c = str[i];
		// Vérifier si c'est une lettre
		if (c.match(/[a-z]/i)) {
			// Récupérer son code
			var code = str.charCodeAt(i);
			// Lettres majuscules
			if ((code >= 65) && (code <= 90))
				c = String.fromCharCode(((code - 65 + amount) % 26) + 65);
			// Lettres minuscules
			else if ((code >= 97) && (code <= 122))
				c = String.fromCharCode(((code - 97 + amount) % 26) + 97);
		}
		// Ajouter le caractére
		res += c;
	}
	// Résultat
	return res;
};

console.log(cesar("ABCD", 10))

La sortie :

KLMN
QCM Javascript

Laisser un commentaire

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