Secure Poker


This project implements poker on the Internet. It will accept one to five players. More than five players tends to spread the deck out too much.

Every player will need a public/private key to play. They will also need to have an account with the house. Startup will have to be coordinated amongst the players. Session keys will be established between the house and the players. The session key is used to encrypt players. cards and for players to sign their bets. The house is responsible for totaling the pot and announcing bets to all players and tracking players banks. Session keys will be destroyed after a players leaves a current session.

The rules of poker can be found at many websites and in many books.  Here is one such site.  The site also contains many links to various on-line casinos.

Implementation:

House

Player


The system should be implemented using your choice of C, C++, or Java.  (and maybe .NET, we're thinking about it!)  It will consist of 2 independant programs that communicate over the network using an XML based protocol. One of these programs simulates the house.  The other program is the user prgogram, and interfaces with the user either as a traditional GUI program, or as a web server serving HTML pages.  Of course, all communications should be secured using SSL.


Resources

Please visit the resources page