0% found this document useful (0 votes)
2K views3 pages

Caesar Cipher

This document contains source code for a Java program that implements the Caesar cipher for encryption and decryption of plaintext messages. It includes sample test data and explanations of the code. The program allows the user to choose between encrypting plaintext to ciphertext or decrypting ciphertext to plaintext using a Caesar cipher with a key of 3. The code includes arrays to store the alphabet letters and loops through the input text shifting each letter by the key amount to encrypt or decrypt based on the user's selection.
Copyright
© Attribution Non-Commercial (BY-NC)
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
2K views3 pages

Caesar Cipher

This document contains source code for a Java program that implements the Caesar cipher for encryption and decryption of plaintext messages. It includes sample test data and explanations of the code. The program allows the user to choose between encrypting plaintext to ciphertext or decrypting ciphertext to plaintext using a Caesar cipher with a key of 3. The code includes arrays to store the alphabet letters and loops through the input text shifting each letter by the key amount to encrypt or decrypt based on the user's selection.
Copyright
© Attribution Non-Commercial (BY-NC)
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 3

Name: Dil Prasad Kuwor Date: 9/22/2010

Roll no. : 064/02


Subject: Cryptography
Assignment no. : Lab No. 2

Q.1 Generate the Caesar cipher text of given plain text and also decrypt the generated cipher text.
Also give the user the facility to change the value of key.

Testing Data
Encryption
Plain Text :- meet me after the toga party
Cipher Text :- PHHW PH DIWHU WKH WRJD SDUWB ( n = 3)
Decryption
Cipher Text :- khoor eurwkhu
Plain Text :- HELLO BROTHER

Java Code:

import java.util.*;
class CeasarCipher
{
public static void findPlainText()
{
String letter[] = {"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" };
String plainText="", cipherTxt;
System.out.println("Enter a ciphertext");
Scanner in = new Scanner(System.in);
cipherTxt = in.nextLine();
int index = 0;
for(int i=0; i<cipherTxt.length(); i++)
{
char c = cipherTxt.charAt(i);
String val = String.valueOf(c);
if(val.equals(" "))
{
plainText = plainText + " ";
}
else
{
for(int j=0; j<letter.length; j++)
{
if(val.equalsIgnoreCase(letter[j]))
{
index = j;
break;
}
}

if(index < 3)
{

1
index = (25 - index);
plainText = plainText + letter[index];
}
else
{
plainText = plainText + letter[index - 3];
}
}
}
System.out.println("Plain text of "+cipherTxt+" is "+ plainText);
}
public static void findCeaserCipher()
{

String letter[] = {"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" };
String plainText, cipherTxt = "";
System.out.println("Enter a plaintext");
Scanner in = new Scanner(System.in);
plainText = in.nextLine();
int index = 0;
for(int i=0; i<plainText.length(); i++)
{
char c = plainText.charAt(i);
String val = String.valueOf(c);
if(val.equals(" "))
{
cipherTxt = cipherTxt + " ";
}
else
{
for(int j=0; j<letter.length; j++)
{
if(val.equalsIgnoreCase(letter[j]))
{
index = j;
break;
}

if(index > 22)


{
index = (index + 3) % 26;
cipherTxt = cipherTxt + letter[index];
}
else
{
cipherTxt = cipherTxt + letter[index + 3];
}

2
}

System.out.println("Cipher text of "+plainText+" is "+ cipherTxt);


}
public static void main (String[] args)
{

Scanner in = new Scanner(System.in);


System.out.println("Enter the choice:");
System.out.println("1. Plain text to cipher text.");
System.out.println("2. cipher text to plain text.");
int choice = in.nextInt();
switch(choice)
{
case 1:
findCeaserCipher();
break;
case 2:
findPlainText();
break;
default:
System.out.printf("Invalide Choice");
break;

}
}
}

Output:

You might also like