Chiffre César en Java

Sheeraz Gul 12 octobre 2023
  1. Chiffre de César en Java
  2. Cryptage de chiffrement de César en Java
  3. Décryptage du chiffrement de César en Java
Chiffre César en Java

Caesar Cipher est l’une des méthodes les plus simples pour effectuer le cryptage. Ce didacticiel montre comment effectuer le chiffrement et le déchiffrement à l’aide de Caesar Cipher en Java.

Chiffre de César en Java

Caesar Cipher est l’une des premières approches pour effectuer le cryptage; il peut être implémenté dans n’importe quel langage de programmation. L’algorithme est simple ; par exemple, si nous effectuons un chiffrement sur le texte delftstack, l’algorithme Caesar Cipher chiffrera le texte en remplaçant les caractères par la position fixe en dessous des caractères dans l’ordre alphabétique.

Nous passons une clé qui est un entier, pour décider du nombre de positions que nous voulons descendre en cryptant les caractères.

Par exemple, si le texte est ABCD et la clé est 2, le texte crypté sera CDEF. Essayons d’implémenter l’approche de chiffrement Caesar Cipher en Java.

Cryptage de chiffrement de César en Java

Le code ci-dessous illustre l’implémentation du chiffrement Caesar Cipher en Java.

package delftstack;

import java.util.Scanner;

public class Caesar_Cipher_Encrypt {
  public static void main(String... s) {
    String Original_Message, Encrypted_Message = "";
    int Cipher_Key;
    char Message_Char;
    Scanner sc = new Scanner(System.in);
    System.out.println("Please enter a message: ");
    Original_Message = sc.nextLine();
    System.out.println("Enter the key: ");
    Cipher_Key = sc.nextInt();

    for (int i = 0; i < Original_Message.length(); ++i) {
      Message_Char = Original_Message.charAt(i);
      if (Message_Char >= 'a' && Message_Char <= 'z') {
        Message_Char = (char) (Message_Char + Cipher_Key);

        if (Message_Char > 'z') {
          Message_Char = (char) (Message_Char - 'z' + 'a' - 1);
        }

        Encrypted_Message += Message_Char;
      } else if (Message_Char >= 'A' && Message_Char <= 'Z') {
        Message_Char = (char) (Message_Char + Cipher_Key);

        if (Message_Char > 'Z') {
          Message_Char = (char) (Message_Char - 'Z' + 'A' - 1);
        }

        Encrypted_Message += Message_Char;
      } else {
        Encrypted_Message += Message_Char;
      }
    }
    System.out.println("The Encrypted Message is : " + Encrypted_Message);
  }
}

Le code ci-dessus implémente la méthode de chiffrement Caesar Cipher. Voir la sortie :

Please enter a message:
This is delftstack.com
Enter the key:
3
The Encrypted Message is : Wklv lv ghoiwvwdfn.frp

Décryptage du chiffrement de César en Java

Le déchiffrement sera l’opération inverse. Voir la mise en œuvre du décryptage à l’aide de la méthode Caesar Cipher.

package delftstack;

import java.util.Scanner;

public class Caesar_Cipher_Decrypt {
  public static void main(String... s) {
    String Original_Message, Decrypted_Message = "";
    int Cipher_Key;
    char Message_Char;
    Scanner sc = new Scanner(System.in);
    System.out.println("Please enter an encrypted message: ");
    Original_Message = sc.nextLine();
    System.out.println("Enter the key: ");
    Cipher_Key = sc.nextInt();

    for (int i = 0; i < Original_Message.length(); ++i) {
      Message_Char = Original_Message.charAt(i);
      if (Message_Char >= 'a' && Message_Char <= 'z') {
        Message_Char = (char) (Message_Char - Cipher_Key);

        if (Message_Char < 'a') {
          Message_Char = (char) (Message_Char + 'z' - 'a' + 1);
        }

        Decrypted_Message += Message_Char;
      } else if (Message_Char >= 'A' && Message_Char <= 'Z') {
        Message_Char = (char) (Message_Char - Cipher_Key);

        if (Message_Char < 'A') {
          Message_Char = (char) (Message_Char + 'Z' - 'A' + 1);
        }

        Decrypted_Message += Message_Char;
      } else {
        Decrypted_Message += Message_Char;
      }
    }
    System.out.println("The Decrypted Message is : " + Decrypted_Message);
  }
}

Le code ci-dessus implémente le décryptage Caesar Cipher en Java. Voir la sortie :

Please enter an encrypted message:
Wklv lv ghoiwvwdfn.frp
Enter the key:
3
The Decrypted Message is : This is delftstack.com
Auteur: Sheeraz Gul
Sheeraz Gul avatar Sheeraz Gul avatar

Sheeraz is a Doctorate fellow in Computer Science at Northwestern Polytechnical University, Xian, China. He has 7 years of Software Development experience in AI, Web, Database, and Desktop technologies. He writes tutorials in Java, PHP, Python, GoLang, R, etc., to help beginners learn the field of Computer Science.

LinkedIn Facebook

Article connexe - Java Encryption