Implémentation du Chiffre du Chemin de Fer (Rail Fence Cipher) en Python

PythonPythonBeginner
Pratiquer maintenant

💡 Ce tutoriel est traduit par l'IA à partir de la version anglaise. Pour voir la version originale, vous pouvez cliquer ici

Introduction

Dans ce projet, vous apprendrez à implémenter le Chiffre du Chemin de Fer (Rail Fence Cipher), une méthode de chiffrement simple qui réarrange les caractères d'un texte pour créer un texte chiffré.

👀 Aperçu

Thisatext.issample

🎯 Tâches

Dans ce projet, vous apprendrez :

  • Comment configurer un répertoire de projet Python et créer les fichiers nécessaires
  • Comment implémenter l'algorithme du Chiffre du Chemin de Fer (Rail Fence Cipher) en Python
  • Comment tester la fonction de chiffrement implémentée

🏆 Réalisations

Après avoir terminé ce projet, vous serez en mesure de :

  • Comprendre les principes de base du Chiffre du Chemin de Fer (Rail Fence Cipher)
  • Implémenter l'algorithme de chiffrement du Chiffre du Chemin de Fer (Rail Fence Cipher) en Python
  • Tester et valider la correction de la fonction de chiffrement implémentée

Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL python(("Python")) -.-> python/BasicConceptsGroup(["Basic Concepts"]) python(("Python")) -.-> python/DataStructuresGroup(["Data Structures"]) python(("Python")) -.-> python/FunctionsGroup(["Functions"]) python(("Python")) -.-> python/FileHandlingGroup(["File Handling"]) python/BasicConceptsGroup -.-> python/strings("Strings") python/BasicConceptsGroup -.-> python/python_shell("Python Shell") python/DataStructuresGroup -.-> python/lists("Lists") python/FunctionsGroup -.-> python/function_definition("Function Definition") python/FileHandlingGroup -.-> python/file_operations("File Operations") subgraph Lab Skills python/strings -.-> lab-302758{{"Implémentation du Chiffre du Chemin de Fer (Rail Fence Cipher) en Python"}} python/python_shell -.-> lab-302758{{"Implémentation du Chiffre du Chemin de Fer (Rail Fence Cipher) en Python"}} python/lists -.-> lab-302758{{"Implémentation du Chiffre du Chemin de Fer (Rail Fence Cipher) en Python"}} python/function_definition -.-> lab-302758{{"Implémentation du Chiffre du Chemin de Fer (Rail Fence Cipher) en Python"}} python/file_operations -.-> lab-302758{{"Implémentation du Chiffre du Chemin de Fer (Rail Fence Cipher) en Python"}} end

Implémenter le Chiffre du Chemin de Fer (Rail Fence Cipher)

Dans cette étape, vous allez implémenter l'algorithme de chiffrement du Chiffre du Chemin de Fer (Rail Fence Cipher) dans le fichier fence.py.

  1. Ouvrez le fichier fence.py dans un éditeur de texte.
  2. Ajoutez le code suivant au fichier :
def rail_fence_cipher(text: str) -> str:
    """
    Encrypts the text using the Rail Fence Cipher method.

    Args:
        text (str): The text to be encrypted.

    Returns:
        str: The encrypted text.
    """
    if text is None or len(text.strip()) == 0:
        return None
    group = text.split()
    grouped_list = [group[i : i + 2] for i in range(0, len(group), 2)]

    first_part = [sublist[0] for sublist in grouped_list]
    second_part = [sublist[1] for sublist in grouped_list if len(sublist) > 1]

    encryption_text = "".join(first_part + second_part)
    return encryption_text


if __name__ == "__main__":
    print(rail_fence_cipher("This is a sample text."))
  1. Implémentez la fonction rail_fence_cipher en suivant ces étapes :

    • Vérifiez si le texte d'entrée text est None ou une chaîne de caractères vide. Dans ce cas, retournez None.
    • Divisez le text en groupes de deux caractères chacun.
    • Extrait le premier caractère de chaque groupe et stockez - les dans une liste.
    • Extrait le deuxième caractère de chaque groupe et stockez - les dans une liste.
    • Concaténez les deux listes pour former le texte chiffré.
    • Retournez le texte chiffré.
  2. Enregistrez le fichier fence.py.

Tester le Chiffre du Chemin de Fer (Rail Fence Cipher)

Dans cette étape, vous allez tester le Chiffre du Chemin de Fer (Rail Fence Cipher) implémenté en exécutant le fichier fence.py.

  1. Ouvrez un terminal et accédez au répertoire du projet.
  2. Exécutez le fichier fence.py :
python3 fence.py
  1. La sortie devrait être le texte chiffré :
Thisatext.issample

Félicitations! Vous avez réussi à implémenter le Chiffre du Chemin de Fer (Rail Fence Cipher) en Python.

✨ Vérifier la solution et pratiquer

Résumé

Félicitations! Vous avez terminé ce projet. Vous pouvez pratiquer plus de laboratoires sur LabEx pour améliorer vos compétences.