Freelance Projects

All Freelance Projects at One Location


Encryption Algorithm Protocol  14.05.09

Start-up TCP/IP socket client and server demo programs attached as server.py and client.py

Check that you are able to send a message from the client to the server and that the server can print out that message on the console. At this point the client is sending messages to the server in the clear. The next stage is to modify these programs so that the client will first encrypt the message before sending it and the server will decrypt the message after receiving it. To do this you will implement the RSA algorithm that uses public and private “session” keys.

After accepting a connection, the server will inform the client about the public key to be used in the session. The server uses its private key to decrypt the encrypted message sent by the client. Only the server knows the private key. Once establishing a connection to the server, the client should be able to send a series of messages to the server. The client should prompt the user for a message from the command line. Python has a useful utility function, raw_input(), that can be used to do this. Before sending to the server, each message needs to be encrypted by the client, using the same public key for the session. Your implementation of the RSA encryption and decryption algorithm should be placed in a separate python module, rsa.py, Establish your own encryption protocol. You will need to decide the best way of sending RSA keys through a socket. Also you will need to decide appropriate formats for sending encrypted messages through a socket.

Share and Enjoy:
  • Digg
  • del.icio.us
  • Google Bookmarks
  • Twitter
  • Facebook
  • StumbleUpon
  • Slashdot
  • Technorati
  • BlinkList
  • Reddit
  • DZone
  • Live
  • NewsVine
  • LinkedIn
  • Yahoo! Buzz
  • MySpace
  • Netvibes
  • Tumblr
  • Yahoo! Bookmarks
  • Add to favorites
  • email
  • Print
  • RSS


If you liked this project, make sure you
Subscribe to Freelance Projects RSS feed!