Sunteți pe pagina 1din 11

SHANTILAL SHAH ENGINEERING COLLEGE, BHAVNAGAR

INFORMATION TECHNOLOGY DEPARTMENT


SUBJECT- INFORMATION SECURITY
PRACTICAL 1
AIM : WRITE A C PROGRAM TO IMPLEMENT CEASER CIPHER.
#include<stdio.h>
#include<conio.h>
#include<string.h>
#include<stdlib.h>
#include<math.h>
void main()
{
char txt[26],c[26]={'\0'};
int key=0,n[26],a[26]={0},i;
clrscr();
printf("Enter the text:");
scanf("%s",txt);
printf("\nEnter the key:");
scanf("%d",&key);
for(i=0;txt[i]!='\0';i++)
{
if(txt[i]>=96)
{
n[i]=txt[i]-97;
a[i]=(n[i]+key)%26;
c[i]=a[i]+97;
}
else
{
n[i]=txt[i]-65;
a[i]=(n[i]+key)%26;
c[i]=a[i]+65;
}
}
printf("\nEncrypted string is:%s",c);
getch();
for(i=0;c[i]!='\0';i++)
{
if(c[i]>=96)
{
n[i]=c[i]-97;
a[i]=(n[i]-key+26)%26;
c[i]=a[i]+97;
}
else
{

Name- CHETAN M PRAJAPATI


B3
Page - 1 -

En. No- 090430116073

Batch-

SHANTILAL SHAH ENGINEERING COLLEGE, BHAVNAGAR


INFORMATION TECHNOLOGY DEPARTMENT
SUBJECT- INFORMATION SECURITY
n[i]=c[i]-65;
a[i]=(n[i]-key+26)%26;
c[i]=a[i]+65;
}
}
printf("\nDecrypted string is:%s",c);
getch();
}
OUTPUT :
Enter the text: HELLO
Enter the key: 4
Encrypted string is: LIPPS
Decrypted string is: HELLO

PRACTICAL 2

Name- CHETAN M PRAJAPATI


B3
Page - 2 -

En. No- 090430116073

Batch-

SHANTILAL SHAH ENGINEERING COLLEGE, BHAVNAGAR


INFORMATION TECHNOLOGY DEPARTMENT
SUBJECT- INFORMATION SECURITY
AIM : WRITE A C PROGRAM TO IMPLEMENT MONOALPHABETIC CIPHER.
#include<stdio.h>
#include<conio.h>
#include<math.h>
#include<stdlib.h>
void main()
{
char c[26]={'\0'},a[26]={'\0'},str[26]={'S','D','F','G','H','J','K','L','A','Q','W','E','R','T','Y','U','I','O','P',
'Z','X','C','V','N','B','M'};
int i,n=0;
clrscr();
printf("Enter a string:");
scanf("%s",c);
for(i=0 ; c[i]!='\0' ; i++)
{
a[i] = str[c[i]-'A'];
}
printf("\nEncryption:%s",a);
getch();
for(i=0 ; a[i]!='\0' ; i++)
{
for(n=0;n<26;n++)
{
if(a[i]==str[n])
break;
}
c[i] = n + 'A';
}
c[i+1]='\0';
printf("\n\nDecryption:%s",c);
getch();
}
OUTPUT :
Enter a string: ABCDEFG
Encryption: SDFGHJK
Decryption: ABCDEFG
PRACTICAL 3
AIM : WRITE A C PROGRAM TO IMPLEMENT HOMOPHONIC CIPHER.

Name- CHETAN M PRAJAPATI


B3
Page - 3 -

En. No- 090430116073

Batch-

SHANTILAL SHAH ENGINEERING COLLEGE, BHAVNAGAR


INFORMATION TECHNOLOGY DEPARTMENT
SUBJECT- INFORMATION SECURITY
#include<stdio.h>
#include<conio.h>
#include<stdlib.h>
#include<string.h>
void main()
{
char c[3][26]={{ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25},
{26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51},
{52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77}};
char a[26]={'\0'};
int n[26]={0},i,j,k;
clrscr();
printf("Enter text:");
scanf("%s",a);
printf("\n\n\t Encrypted: ");
for(i=0;a[i]!='\0';i++)
{
n[i] = c[rand()%3][a[i]-97];
printf("%d ",n[i]);
}
getch();
printf("\n\n\tDecrypted : ");
for(i=0;n[i]!='\0';i++)
{
for(j=0;j<3;j++)
{
for(k=0;k<26;k++)
if(n[i]==c[j][k]) goto aa;
}
aa: printf("%c",k+'a');
}
getch();
}
OUTPUT :
Enter text: hijklmn
Encrypted: 33 34 61 36 37 38 13
Decrypted : hijklmn
PRACTICAL 4
AIM : WRITE A C PROGRAM TO IMPLEMENT RAILFENCE CIPHER.

Name- CHETAN M PRAJAPATI


B3
Page - 4 -

En. No- 090430116073

Batch-

SHANTILAL SHAH ENGINEERING COLLEGE, BHAVNAGAR


INFORMATION TECHNOLOGY DEPARTMENT
SUBJECT- INFORMATION SECURITY
#include<stdio.h>
#include<conio.h>
#include<stdlib.h>
#include<string.h>
void main()
{
char plaintxt[50],cipher1[50],cipher2[50],decrypt[50];
int j=0,k=0,i;
clrscr();
printf("Enter string :");
scanf("%s",plaintxt);
printf("\nThe encrypted string is : ");
for(i=0;plaintxt[i]!='\0';i=i+2)
{
cipher1[j]=plaintxt[i];
printf("%c",cipher1[j]);
j++;
}
cipher1[j]='\0';
for(i=1;i<=strlen(plaintxt);i=i+2)
{
cipher2[k]=plaintxt[i];
printf("%c",cipher2[k]);
k++;
}
cipher2[k]='\0';
j=0;
k=0;
printf("\nThe decrypted string is : ");
for(i=0;i<=strlen(plaintxt);i++)
{
if(i%2==0)
{
decrypt[i]=cipher1[j];
j++;
}
else
{
decrypt[i]=cipher2[k];
k++;
}
}
decrypt[i]='\0';
printf("%s",decrypt);
getch();
}

Name- CHETAN M PRAJAPATI


B3
Page - 5 -

En. No- 090430116073

Batch-

SHANTILAL SHAH ENGINEERING COLLEGE, BHAVNAGAR


INFORMATION TECHNOLOGY DEPARTMENT
SUBJECT- INFORMATION SECURITY

OUTPUT :
Enter string : COMEHOME
The encrypted string is : CMHMOEOE
The decrypted string is : COMEHOME

PRACTICAL 5
AIM : WRITE A C PROGRAM TO IMPLEMENT PLAYFAIR CIPHER.
#include<stdio.h>
#include<conio.h>

Name- CHETAN M PRAJAPATI


B3
Page - 6 -

En. No- 090430116073

Batch-

SHANTILAL SHAH ENGINEERING COLLEGE, BHAVNAGAR


INFORMATION TECHNOLOGY DEPARTMENT
SUBJECT- INFORMATION SECURITY
#include<stdlib.h>
#include<string.h>
void main()
{
int k[5][5]={{'l','d','c','e','a'},{'b','f','g','h','i'},{'k','m','n','o','p'},{'q','r','s','t','u'},{'v','w','x','y','z'}};
int x, i1, i2, j1, j2;
char m[26]={'\0'}, e[26]={'\0'}, d[26]={'\0'};
clrscr();
printf("Enter a message :: ");
scanf("%s",m);
if(strlen(m)%2!=0) m[strlen(m)]='x';
for(x=0 ; x<strlen(m) ; x=x+2)
{
for(i1=0 ; i1<5 ; i1++)
for(j1=0 ; j1<5 ; j1++)
{
if(m[x]=='j') m[x]='i';
if(m[x]==k[i1][j1]) goto aa;
}
aa:
for(i2=0 ; i2<5 ; i2++)
for(j2=0 ; j2<5 ; j2++)
{
if(m[x+1]=='j') m[x]='i';
if(m[x+1]==k[i2][j2]) goto bb;
}
bb:
if(i1==i2)
{
e[x] = k[i1][(j1+1)%5];
e[x+1] = k[i2][(j2+1)%5];
}
else if(j1==j2)
{
e[x] = k[(i1+1)%5][j1];
e[x+1] = k[(i2+1)%5][j2];
}
else
{
e[x] = k[i1][j2];
e[x+1] = k[i2][j1];
}
}
printf("\n\nEncrypted :: %s",e);
getch();

Name- CHETAN M PRAJAPATI


B3
Page - 7 -

En. No- 090430116073

Batch-

SHANTILAL SHAH ENGINEERING COLLEGE, BHAVNAGAR


INFORMATION TECHNOLOGY DEPARTMENT
SUBJECT- INFORMATION SECURITY
for(x=0 ; x<strlen(e) ; x=x+2)
{
for(i1=0 ; i1<5 ; i1++)
for(j1=0 ; j1<5 ; j1++)
if(e[x]==k[i1][j1]) goto cc;
cc:
for(i2=0 ; i2<5 ; i2++)
for(j2=0 ; j2<5 ; j2++)
if(e[x+1]==k[i2][j2]) goto dd;
dd:
if(i1==i2)
{
d[x] = k[i1][(j1+4)%5];
d[x+1] = k[i2][(j2+4)%5];
}
else if(j1==j2)
{
d[x] = k[(i1+4)%5][j1];
d[x+1] = k[(i2+4)%5][j2];
}
else
{
d[x] = k[i1][j2];
d[x+1] = k[i2][j1];
}
}
printf("\n\nDecrypted :: %s",d);
getch();
}
OUTPUT :
Enter a message :: ldce
Encrypted :: dcea
Decrypted :: ldce

PRACTICAL 6
AIM : WRITE A C PROGRAM TO IMPLEMENT HILL CIPHER.
#include<stdio.h>
#include<conio.h>
#include<stdlib.h>

Name- CHETAN M PRAJAPATI


B3
Page - 8 -

En. No- 090430116073

Batch-

SHANTILAL SHAH ENGINEERING COLLEGE, BHAVNAGAR


INFORMATION TECHNOLOGY DEPARTMENT
SUBJECT- INFORMATION SECURITY
void matrixMul(int str[],int n);
void decrypt(int str[],int n);
void main()
{
clrscr();
char str[20];
int i,input[3] = {2,0,19},d;
printf("The cipher method : Hill Cipher");
printf("\n Enter a String : ");
scanf("%s",str);
//TRANSFERING FROM STRING TO NUMBERS
for(i=0;i<3;i++)
{
d=str[i];
input[i] = d - 65;
}
printf("\n\n\n\t Encrypting the String... \n\n");
// CALLING MATRIX TO MULTIPLY WITH RANDOM NUMBERS
matrixMul(input,3);
printf("\n\n\n \t Decrypting the matrix : \n\n");
decrypt(input,3);
getch();
}
void matrixMul(int str[], int n)
{
int i,j,sum[3];
int matrix[3][3]= {{6,24,1},{13,16,10},{20,17,15}} ;
// MULTIPLYING MATRIX
for(i=0;i<n;i++)
{
sum[i] = 0;
for(j=0;j<n;j++)
{
sum[i] = sum[i] + matrix[i][j]*str[j];
}
sum[i] = sum[i] % 26;
}
// PRINTING THE ENCRYPTED MATRIX
for(i=0;i<n;i++)
{

Name- CHETAN M PRAJAPATI


B3
Page - 9 -

En. No- 090430116073

Batch-

SHANTILAL SHAH ENGINEERING COLLEGE, BHAVNAGAR


INFORMATION TECHNOLOGY DEPARTMENT
SUBJECT- INFORMATION SECURITY
printf("\n sum[%d] = %d",i,sum[i]);
str[i] = sum[i];
}
}
// DECRYPTING THE MATRIX
void decrypt(int str[],int n)
{
int i,j,sum[3];
int matrix[3][3]= {{8,5,10},{21,8,21},{21,12,8}} ;
//MULTIPLYING MATRIX
for(i=0;i<n;i++)
{
sum[i] = 0;
for(j=0;j<n;j++)
{
sum[i] = sum[i] + matrix[i][j]*str[j];
}
sum[i] = sum[i] % 26;
}
// PRINTING THE DECRYPTED MATRIX
for(i=0;i<n;i++)
{
printf("\n decrypt[%d] = %d",i,sum[i]);
}
}

OUTPUT :
The cipher method : Hill Cipher
Enter a String : CAT
Encrypting the String...
sum[0] = 5
sum[1] = 8
sum[2] = 13

Name- CHETAN M PRAJAPATI


B3
Page - 10 -

En. No- 090430116073

Batch-

SHANTILAL SHAH ENGINEERING COLLEGE, BHAVNAGAR


INFORMATION TECHNOLOGY DEPARTMENT
SUBJECT- INFORMATION SECURITY

Decrypting the matrix :


decrypt[0] = 2
decrypt[1] = 0
decrypt[2] = 19

Name- CHETAN M PRAJAPATI


B3
Page - 11 -

En. No- 090430116073

Batch-

S-ar putea să vă placă și