Java Program to Implement Caesar Cipher in Java


Caesar cipher is one of the earliest known and simplest ciphers. It is a type of replacement cipher in which each letter of the plaintext is ‘moved’ to a certain place under the alphabet.
For example, with a shift of 1, A will be replaced by B, B becomes C, and so on.
The name of this method is named after Julius Caesar, who apparently used it to communicate with his generals.

 


Caesar Cipher Program in Java


 

  • Caesar Cipher Encryption in Java
import java.util.Scanner;
 
public class CaesarCipherEncryption
 {
  public static void main(String args[])
  {
    String plaintext, encrypted_Message = "";
    int key;
    char alphabet;
    Scanner sc = new Scanner(System.in);
    
    System.out.println("Enter a Plaintext you want to encrypt: ");
    plaintext = sc.nextLine();
    
    System.out.println("Enter encrypted key: ");
    key = sc.nextInt();
 
    for(int i = 0; i < plaintext.length(); i++){
      alphabet = plaintext.charAt(i);
      
      if(alphabet >= 'a' && alphabet <= 'z'){
              alphabet = (char)(alphabet + key);
              
              if(alphabet > 'z'){
                  alphabet = (char)(alphabet - 'z' + 'a' - 1);
              }
              
              encrypted_Message += alphabet;
          }
          else if(alphabet >= 'A' && alphabet <= 'Z'){
              alphabet = (char)(alphabet + key);
              
              if(alphabet > 'Z')
        {
                  alphabet = (char)(alphabet - 'Z' + 'A' - 1);
              }
              
              encrypted_Message += alphabet;
          }
          else {
          	encrypted_Message += alphabet;
          }
    }
    
    System.out.println("Encrypted Message is : = " + encrypted_Message);
  }
}

After execution of above program you will get the output like below:-

 

Example:- If you run above program then it will ask to enter the message to encrypt like below:-

Enter a message to encrypt:
walmart.com
Enter the key: –for encrypt your message
5
Encrypted Message is : = bfqrfwy.htr

 

Enter a message to encrypt:
amazon river
Enter the key: –for encrypt your message
5
Encrypted Message is : = frfets wnajw


  • Caesar Cipher Decryption in Java
import java.util.*;

public class CaesarCipherDecryption
{
  public static void main(String...s){
    String ciphertext, decrypted_Message = "";
    int key;
    char alphabet;
    Scanner sc = new Scanner(System.in);
    
    System.out.println("Enter a encrypted message you want to decrypt: ");
    ciphertext  = sc.nextLine();
    
    System.out.println("Enter decryption key: ");
    key = sc.nextInt();
 
    for(int i = 0; i < ciphertext .length(); ++i){
      alphabet = ciphertext .charAt(i);
      
      if(alphabet >= 'a' && alphabet <= 'z'){
              alphabet = (char)(alphabet - key);
              
              if(alphabet < 'a'){
                  alphabet = (char)(alphabet + 'z' - 'a' + 1);
              }
              
              decrypted_Message += alphabet;
          }
          else if(alphabet >= 'A' && alphabet <= 'Z'){
              alphabet = (char)(alphabet - key);
              
              if(alphabet < 'A'){
                  alphabet = (char)(alphabet + 'Z' - 'A' + 1);
              }
              
              decrypted_Message += alphabet;
          }
          else {
          	decrypted_Message += alphabet;
          }
    }
    
    System.out.println("Decrypted Message is : = " + decrypted_Message);
  }
}

After execution of above program you will get the output like below:-

 

 

Example:- If you run above program then it will ask to enter the message to decrypt like below:-

Enter a message to decrypt:
bfqrfwy.htr
Enter key: –for decrypt your message
5
Decrypted Message : = walmart.com


 

Enter a message to decrypt:
frfets wnajw
Enter key: –for decrypt your message
5
Decrypted Message : = amazon river


 

Leave a Reply

Your email address will not be published. Required fields are marked *