Blogger Tips and TricksLatest Tips And TricksBlogger Tricks

Playfair Cipher Implementation in java

PROGRAM CODE:




import java.util.Scanner;

public class PlayfairCipherEncryption
{
    private String KeyWord        = new String();
    private String Key            = new String();
    private char   matrix_arr[][] = new char[5][5];

    public void setKey(String k)
    {
        String K_adjust = new String();
        boolean flag = false;
        K_adjust = K_adjust + k.charAt(0);
        for (int i = 1; i < k.length(); i++)
        {
            for (int j = 0; j < K_adjust.length(); j++)
            {
                if (k.charAt(i) == K_adjust.charAt(j))
                {
                    flag = true;
                }
            }
            if (flag == false)
                K_adjust = K_adjust + k.charAt(i);
            flag = false;
        }
        KeyWord = K_adjust;
    }

    public void KeyGen()
    {
        boolean flag = true;
        char current;
        Key = KeyWord;
        for (int i = 0; i < 26; i++)
        {
            current = (char) (i + 97);
            if (current == 'j')
                continue;
            for (int j = 0; j < KeyWord.length(); j++)
            {
                if (current == KeyWord.charAt(j))
                {
                    flag = false;
                    break;
                }
            }
            if (flag)
                Key = Key + current;
            flag = true;
        }
        System.out.println(Key);
        matrix();
    }

    private void matrix()
    {
        int counter = 0;
        for (int i = 0; i < 5; i++)
        {
            for (int j = 0; j < 5; j++)
            {
                matrix_arr[i][j] = Key.charAt(counter);
                System.out.print(matrix_arr[i][j] + " ");
                counter++;
            }
            System.out.println();
        }
    }

    private String format(String old_text)
    {
        int i = 0;
        int len = 0;
        String text = new String();
        len = old_text.length();
        for (int tmp = 0; tmp < len; tmp++)
        {
            if (old_text.charAt(tmp) == 'j')
            {
                text = text + 'i';
            }
            else
                text = text + old_text.charAt(tmp);
        }
        len = text.length();
        for (i = 0; i < len; i = i + 2)
        {
            if (text.charAt(i + 1) == text.charAt(i))
            {
                text = text.substring(0, i + 1) + 'x' + text.substring(i + 1);
            }
        }
        return text;
    }

    private String[] Divid2Pairs(String new_string)
    {
        String Original = format(new_string);
        int size = Original.length();
        if (size % 2 != 0)
        {
            size++;
            Original = Original + 'x';
        }
        String x[] = new String[size / 2];
        int counter = 0;
        for (int i = 0; i < size / 2; i++)
        {
            x[i] = Original.substring(counter, counter + 2);
            counter = counter + 2;
        }
        return x;
    }

    public int[] GetDiminsions(char letter)
    {
        int[] key = new int[2];
        if (letter == 'j')
            letter = 'i';
        for (int i = 0; i < 5; i++)
        {
            for (int j = 0; j < 5; j++)
            {
                if (matrix_arr[i][j] == letter)
                {
                    key[0] = i;
                    key[1] = j;
                    break;
                }
            }
        }
        return key;
    }

    public String encryptMessage(String Source)
    {
        String src_arr[] = Divid2Pairs(Source);
        String Code = new String();
        char one;
        char two;
        int part1[] = new int[2];
        int part2[] = new int[2];
        for (int i = 0; i < src_arr.length; i++)
        {
            one = src_arr[i].charAt(0);
            two = src_arr[i].charAt(1);
            part1 = GetDiminsions(one);
            part2 = GetDiminsions(two);
            if (part1[0] == part2[0])
            {
                if (part1[1] < 4)
                    part1[1]++;
                else
                    part1[1] = 0;
                if (part2[1] < 4)
                    part2[1]++;
                else
                    part2[1] = 0;
            }
            else if (part1[1] == part2[1])
            {
                if (part1[0] < 4)
                    part1[0]++;
                else
                    part1[0] = 0;
                if (part2[0] < 4)
                    part2[0]++;
                else
                    part2[0] = 0;
            }
            else
            {
                int temp = part1[1];
                part1[1] = part2[1];
                part2[1] = temp;
            }
            Code = Code + matrix_arr[part1[0]][part1[1]]
                    + matrix_arr[part2[0]][part2[1]];
        }
        return Code;
    }

    public static void main(String[] args)
    {
        PlayfairCipherEncryption x = new PlayfairCipherEncryption();
        Scanner sc = new Scanner(System.in);
        System.out.println("Enter a keyword:");
        String keyword = sc.next();
        x.setKey(keyword);
        x.KeyGen();
        System.out
                .println("Enter word to encrypt: (Make sure length of message is even)");
        String key_input = sc.next();
        if (key_input.length() % 2 == 0)
        {
            System.out.println("Encryption: " + x.encryptMessage(key_input));
        }
        else
        {
            System.out.println("Message length should be even");
        }
        sc.close();
    }
}


SECURITY LABORATORY (IT6712)

                                        Hi this is our second lab manual from gr-solution.The first lab manual for Mobile Application Development lab has been used more than hundred colleges in tamilnadu and Andra Pradesh.We thank all the buyer and  we also get lot of good feedback.

                     
Hardware Requirements
   RAM Memory -2 GB or more
   Intel Pentium 4 or AMD Athlon 2 GHz (or faster)
   1 GB (or more) available hard disk space

Software Requirements
    Java Runtime Environment 1.6 or above

    GnuPG,KF sensor,Net Strumbler,snort

Lab manual features
*A complete Lab Manual with pdf contain source code,Procedure,software installation procedure and  also software  for all experiment.
*Step by step procedure to install and execute all the programs.
*Anna University Latest Sylabus.
*Easy to execute all the experiment .
*Step by step procedure is available with the manual.So that  easily Run the experiment without the help of other.


A complete Lab Manual with source code for all experiment.

LabManual cost details
                     LAB MANUAL DVD(Rs 1000)
                                              The labmanual with dvd it includes all experiment in pdf,software and installation procedure.The labmanul cost RS1000.The dvd will be reach you with in one or two days.
                    LAB MANUAL SOFT COPY(Rs 700)
                                              The softcopy of lab manual is availabe via email.It includes all experiment in pdf,installation procedure.The labmanual cost RS700.The email will reach you shortly after payment.

Payment method:
                                              The payment has  be made to the following bank account.After payment contact as we will send our lab manual.

contact details:
CELL:8344790950
      
EMAIL:hitechguil@gmail.com 

Bank Account Details:

BANK NAME :STATE BANK OF INDIA
ACCOUNT NO:20222847933
ACCOUNT HOLDER NAME:P GUILBERT RAJ
IFSC CODE:SBIN0010501



EXPERIMENTS 

1)Implement the following SUBSTITUTION & TRANSPOSITION TECHNIQUES concepts:
 
a) Caesar Cipher
2. Implement the following algorithms
a) DES
d) MD5

e) SHA-1

Caesar Cipher implementation in java

PROGRAM:


import java.util.Scanner;

public class ceasercipher
{
    public static final String ALPHABET = "abcdefghijklmnopqrstuvwxyz";

    public static String encrypt(String plainText, int shiftKey)
    {
        plainText = plainText.toLowerCase();
        String cipherText = "";
        for (int i = 0; i < plainText.length(); i++)
        {
            int charPosition = ALPHABET.indexOf(plainText.charAt(i));
            int keyVal = (shiftKey + charPosition) % 26;
            char replaceVal = ALPHABET.charAt(keyVal);
            cipherText += replaceVal;
        }
        return cipherText;
    }

    public static String decrypt(String cipherText, int shiftKey)
    {
        cipherText = cipherText.toLowerCase();
        String plainText = "";
        for (int i = 0; i < cipherText.length(); i++)
        {
            int charPosition = ALPHABET.indexOf(cipherText.charAt(i));
            int keyVal = (charPosition - shiftKey) % 26;
            if (keyVal < 0)
            {
                keyVal = ALPHABET.length() + keyVal;
            }
            char replaceVal = ALPHABET.charAt(keyVal);
            plainText += replaceVal;
        }
        return plainText;
    }

    public static void main(String[] args)
    {
        Scanner sc = new Scanner(System.in);
        System.out.println("Enter the String for Encryption: ");
        String message = new String();
        message = sc.next();
        System.out.println("Encryption message=  "+encrypt(message, 3));
        System.out.println("Decryption message=  "+decrypt(encrypt(message, 3), 3));
        sc.close();
    }
}

OUTPUT:

CREATE A SIMPLE NAVIGATION DRAWER ACTIVITY IN ANDROID STUDIO WITHOUT ANY CODING

                              Navigation drawer is similer to menu.It is an alteration of menu in old GUI environment.If you want to upgrade your software to latest GUI features then go for navigation drawer.Now a days lot of software uses these navigation drawer.Here you can learn how to create a navigation drawer without any coding.The Screen shot of navigation drawer is shown below.



                         
1)Open new project in android studio
2)Select the version of android

3)Now select Navigation Drawer Activity as shown in below

4)Then click finish

 5)Navigation drawer activity is created as shown in below

Flag Counter