CSE 539 Applied Cryptography
Project 1: Certificate Operations (Group Project, 2 per group)
Due Date – April 4th 11:59 pm.
Method of Submission: email source code + a readme file to TA. In subject line of e-mail please use : “Applied Crypto Proj 1 submission”. Do not reply to previous mails for turning in the project, it is easier for TA to set up filters this way in the mailbox.
You have been provided 3 certificates in the given zip file. One is a public certificate belonging to the TA (Raghupub.cer). Another is a file containing the private key corresponding to it (Raghupri.pfx), and the third is the CA public certificate (Trustcenter.cer). The certificates have expired, but the program runs through. The password on the pfx file is “raghu”. (without the quotes)
You have to write a java program (You can use any other language, in which case it is your responsibility to run the code during demo). The TA has tested this project on a Linux machine, you are welcome to use any other OS. The program should do the following.
The Java classes you might need for completing the project are.
KeyStore.
Key
CertificateFactory
X509Certificate
PublicKey
Signature
Cipher
You can choose to do the project in Java or in any programming language you prefer, in which case the class to be used may vary.
You may have to show a demo of this project along with other projects at the end of the semester. You have to finish the project and turn it in on the given deadline date. You do not have to e mail the binaries or the certificates, only provide your program.
JAR files: If you have java version less than 1.4 then you can download jar files from bouncy castle: http://www.bouncycastle.org/. The TA tested this program on java 1.6 on a Linux machine and it did not require any jar files. A thread in the sun java forum says that we do not need jar files after jdk 1.3: http://forum.java.sun.com/thread.jspa?threadID=744281&messageID=4262950