sockets - My server responds that request received but doesn't show encrypted text and decrypted in java -


my problem making client/server can cryptography using beaufortalgo. server after receiving request stuck in processing , doesn't give response in form of data. please help.

this server side app

// step 1: importing required package import java.net.*;  import java.util.scanner; import java.io.*;   import javax.swing.*;   public class echoserver{  public static void main(string args[]){   try {        //step 2: create server socket        serversocket ss = new serversocket(1555);       system.out.println("server started...");        /* loop accept method of server       socket , wait new connection request.        server continuously listen requests        */       while(true) {        // step 3: wait incoming connection       socket s = ss.accept();       system.out.println("connection request recieved");        // step 4: i/o streams        inputstream = s.getinputstream();       inputstreamreader isr= new inputstreamreader(is);       bufferedreader br = new bufferedreader(isr);        outputstream os = s.getoutputstream();       printwriter pw = new printwriter(os,true);       // step 5: send / receive message       // reading name sent client       string name = br.readline();       // appending “hello” received name       string msg = "hello server recieved message";       // sending client        // code encrption decryption      string key,plain,cipher="",compstring;      compstring="abcdefghijklmnopqrstuvwxyz";      int charinc=0,diff,ciphernum=0;      char tablechar='a',plainchar;      key="doeeephoeee";      key=key.tolowercase();      key=key.replaceall(" ","");      plain=msg;      plain=plain.tolowercase();      plain=plain.replaceall(" ","");      if(key.length()<plain.length())      {        diff=plain.length()-key.length();        for(int i=0;i<diff;i++)        {        key=key+key.charat(i);        if(i==key.length())        {          i=0;        }        }      }      for(int ed=0;ed<2;ed++)      {      for(int k=0;k<key.length();k++)      {      for(int j=0;j<plain.length();j++)      {      plainchar=plain.charat(charinc);     if(plainchar==tablechar)     {       tablechar=key.charat(charinc);       for(int i=0;i<26;i++)       {         if(plainchar==compstring.charat(i))         {           ciphernum=i;           i=26;         }       }       for(int i=0;i<ciphernum;i++)       {         if(tablechar=='a')         {           tablechar='z';           i++;         }         tablechar--;       }     }     else     {       tablechar++;       j--;     }      }      charinc++;      cipher=cipher+tablechar;      }      if(ed==0)      {      system.out.println("encrypted text: ");      system.out.println(cipher);      pw.println(cipher);      }      else      {      system.out.println("decrypted text: ");      system.out.println(cipher);      }      plain=name;      cipher="";      tablechar='a';      ciphernum=0;      charinc=0;      }       // closing communication sockey       s.close();       } // end while       }catch(exception ex){       system.out.println(ex);        }        }       } // end class  

the other part client app down here.

// step 1: importing required package   import java.net.*;   import java.io.*;   import javax.swing.*;  public class echoclient{public static void main(string args[]){  try {   //step 2: create communication socket   /* if server run on same machine can pass “localhost” server address.notice port no similar 1 passed while creating server socket */  socket s = new socket("localhost", 1555);   // step 3: i/o streams   inputstream = s.getinputstream();  inputstreamreader isr= new inputstreamreader(is);  bufferedreader br = new bufferedreader(isr);   outputstream os = s.getoutputstream();   printwriter pw = new printwriter(os,true);    // step 4: send / receive message  // asking user enter his/her name  string msg = joptionpane.showinputdialog( "enter message");  // reading message (name appended hello)  // server  string name = br.readline(); // displaying received message   //code encrption decryption    string key,plain,cipher="",compstring;   compstring="abcdefghijklmnopqrstuvwxyz";   int charinc=0,diff,ciphernum=0;   char tablechar='a',plainchar;   key="doeeephoeee";   key=key.tolowercase();   key=key.replaceall(" ","");   plain=msg;   plain=plain.tolowercase();   plain=plain.replaceall(" ","");   if(key.length()<plain.length())   {     diff=plain.length()-key.length();     for(int i=0;i<diff;i++)     {     key=key+key.charat(i);     if(i==key.length())     {       i=0;     }     }   }   for(int ed=0;ed<2;ed++)   {   for(int k=0;k<key.length();k++)   {   for(int j=0;j<plain.length();j++)   {   plainchar=plain.charat(charinc);  if(plainchar==tablechar)  {    tablechar=key.charat(charinc);    for(int i=0;i<26;i++)    {      if(plainchar==compstring.charat(i))      {        ciphernum=i;        i=26;      }    }    for(int i=0;i<ciphernum;i++)    {      if(tablechar=='a')      {        tablechar='z';        i++;      }      tablechar--;    }  }  else  {    tablechar++;    j--;  }   }   charinc++;   cipher=cipher+tablechar;   }   if(ed==0)   {   system.out.println("encrypted text: ");   system.out.println(cipher);   pw.println(cipher);   }   else   {   system.out.println("decrypted text: ");   system.out.println(cipher); joptionpane.showmessagedialog(null , cipher);    }   plain=name;   cipher="";   tablechar='a';   ciphernum=0;   charinc=0;   }   // closing communication socket  s.close();  }catch(exception ex){  system.out.println(ex);  }   }   } // end class  

now see output
output of code
server started... connection request recieved

from have posted have synchronization problems. both client , server calling br.readline() pw.println(). have write on 1 side. example:

     // client      pw.println ("client connected");      br.readline ();      string cipher = br.readline ();       //server      string msg = br.readline ();      pw.println ("server running");      pw.println (cipher); 

the thing if 1 side writing other side reading , vice versa.


Comments

Popular posts from this blog

c# - Validate object ID from GET to POST -

node.js - Custom Model Validator SailsJS -

php - Find a regex to take part of Email -