Create an application that uses secured socket connection between two or more computers.
Return the source code tarred and gzipped to lecturer vie email with subject line “[CT30A8800] practical assignment”. Reserve a time from lecturer beforehand for demonstrating your assignment to the lecturer. Prepare to answer to some question concerning your work. Deadline for returning the assignment is January 31 2010. There will be no extensions after this date!
In practical assignment you can make several selections for used algorithms and decide whether you do the algorithms from scratch or use existing libraries. Harder algorithms and self implementation will bring you more points.
You can implement block or stream cipher. Bonus points will be given if you implement both and let user decide which one to use.
Use of same algorithm for keyexhange and signature will give you less points than using two different algorithms. After all, goal is to learn use of different algorithms.
Create solution that fits best for your application. Remember to validate the asymmetric key!
If you wish to use some other algorithms, contact the lecturer
You can use existing crypto libraries in your work. Though one of the security methods have to be done by yourself. You can use any programming language you like, but remember that you have to be able to demonstrate that your code works.
Menezes, van Oorschot, Vanstone: Handbook of applied cryptography