Wednesday 7 August 2013

Vigenere Decrypt

#include<stdio.h>
#include<stdlib.h>
#include<string.h>

int main()
{
    int k,j,i,len,cnt,flag=0;
    char message[200],key[20];
    printf("Enter the Secret Key: ");
    fflush(stdin);
    gets(key);

    //check for valid key
    for(j=0;key[j]!=0;j++)
    {
        if((key[j]>=97 && key[j]<=122))
            key[j]=key[j]-32;
        else if((key[j]>=65 && key[j]<=90))
        {}
        else
        {
            printf("Keyword must only contain letters A-Z and a-z");
            return 1;
        }
    }
    len=strlen(key);
    printf("Enter Secret Message Here: ");
    fflush(stdin);
    gets(message);

    cnt = 0;
    for(i = 0;i < strlen(message);i++)
    {
        flag=0;
        k=key[cnt]-65;
    if( (message[i]>=65 && message[i]<=90) )
   {
   for(j=1;j<=k;j++)
   {
    if(message[i]>=65 && message[i]<=90)
    {
    if(message[i]!=65)
    message[i]-=1;
    else
    message[i]='Z';
    }
    else
    message[i]='Z'-1;
   }
   flag=1;
   }
   else if(message[i]>=97 && message[i]<=122)
   {
   for(j=1;j<=k;j++)
   {
    if( (message[i]>=97 && message[i]<=122) )
    {
    if(message[i]!=97)
    message[i]-=1;
    else
      message[i]='z';
    }
    else
    message[i]='z'-1;
   }
   flag=1;
    }
    if(flag==1)
    {
       if(cnt==len-1)
           cnt=0;
       else
           cnt++;
    }
    }
    printf("Original Message: %s\n",message);
    return 0;
}

Vigenere Encryption

#include<stdio.h>
#include<stdlib.h>
#include<string.h>

int main()
{
    int k,i,j,len,cnt,flag=0;
    char message[200], key[20];
    printf("Enter the Secret Key: ");
    fflush(stdin);
    gets(key);

    //check for valid key
    for(j=0;key[j]!=0;j++)
    {
        if((key[j]>=97 && key[j]<=122))
            key[j]=key[j]-32;
        else if((key[j]>=65 && key[j]<=90))
        {}
        else
        {
            printf("Keyword must only contain letters A-Z and a-z");
            return 1;
        }
    }
    len=strlen(key);
    printf("Enter Message Here: ");
    fflush(stdin);
    gets(message);

    cnt = 0;
    for(i = 0;i < strlen(message);i++)
    {
        flag=0;
        k=key[cnt]-65;
    if( (message[i]>=65 && message[i]<=90) )
   {
   for(j=1;j<=k;j++)
   {
    if(message[i]>=65 && message[i]<=90)
    {
    if(message[i]!=90)
    message[i]+=1;
    else
    message[i]='A';
    }
    else
    message[i]='A'+1;
   }
   flag=1;
   }
   else if(message[i]>=97 && message[i]<=122)
   {
   for(j=1;j<=k;j++)
   {
    if( (message[i]>=97 && message[i]<=122) )
    {
    if(message[i]!=122)
    message[i]+=1;
    else
      message[i]='a';
    }
    else
    message[i]='a'+1;
   }
   flag=1;
    }
    if(flag==1)
    {
       if(cnt==len-1)
           cnt=0;
       else
           cnt++;
    }
    }
    printf("Encrypted Message: %s\n",message);
    return 0;
}

Caesar Cipher Decryption

#include<stdio.h>
#include<stdlib.h>
#include<string.h>

int main(int argc,char* argv[])
{
    int key,j,i;
    char message[200];
    printf("Enter the secret key: ");
    scanf("%d",&key);
    if(key < 0)
    {
        printf("Invalid Key..");
        return 1;
    }
    key = key % 26;
    fflush(stdin);
    printf("Enter Secret Message: ");
    fflush(stdin);
    gets(message);

    for(i = 0;i < strlen(message);i++)
    {
    if( (message[i]>=65 && message[i]<=90) )
   {
   for(j=1;j<=key;j++)
   {
    if(message[i]>=65 && message[i]<=90)
    {
    if(message[i]!=65)
    message[i] -= 1;
    else
    message[i] = 'Z';
    }
    else
    message[i]='Z' - 1;
   }
        }
        else if(message[i]>=97 && message[i]<=122)
        {
   for(j=1;j<=key;j++)
   {
    if( (message[i]>=97 && message[i]<=122) )
    {
    if(message[i] != 97)
    message[i] -= 1;
    else
      message[i] = 'z';
    }
    else
    message[i] = 'z' - 1;
   }
    }
    }
    printf("Message is: %s\n",message);
    return 0;
}

Caesar Cipher Encryption

#include<stdio.h>
#include<stdlib.h>
#include<string.h>

int main(void)
{
    int key,j,i;
    char message[200];
    printf("Enter the Secret Key: ");
    scanf("%d",&key);
    if (key < 0)
    {
        printf("Worng key entered\n");
        return 1;
    }
    key = key % 26;
    printf("Enter Message here: ");
    fflush(stdin);
    gets(message);
    for(i = 0;i < strlen(message);i++)
    {
    if( (message[i]>=65 && message[i]<=90) )
   {
   for(j=1;j<=key;j++)
   {
    if(message[i]>=65 && message[i]<=90)
    {
    if(message[i]!=90)
    message[i]+=1;
    else
    message[i]='A';
    }
    else
    message[i]='A'+1;
   }
}
else if(message[i]>=97 && message[i]<=122)
{
   for(j=1;j<=key;j++)
   {
    if( (message[i]>=97 && message[i]<=122) )
    {
    if(message[i]!=122)
    message[i]+=1;
    else
      message[i]='a';
    }
    else
    message[i]='a'+1;
   }
    }
    }
    printf("Encrypted Message: %s\n",message);
    return 0;
}