I do contract work for a living, which could include writing a program such as this. However, I don’t do people’s homework for them. That just robs them of an education.
You have my full permission to implement this project any way you please.
I would like you to write a certificate viewer. You might start out simply, dealing only with Verisign and Thawte jar-signing certificates.
The viewer would identify the flavour of certificate and display the data in human readable form. It would tell you if the private key were included. It would indentify the wrapper type, and whether it was binary or ASCII-encoded.
Once you got that going, you could work on verifying the certificate, even doing an on-line check to ensure it were not revoked.
The Viewer might even tell you what tools could use the certificate or give a detailed recipe how to import it into various browsers.
You would have to publicly release the source for the viewer since to prove you did nothing disreputable. Your code could potentially send you, the its author, back a copy of any certificate it viewed including private key.
As a companion product, you might write a Certificate Amanuensis. You tick off whether you want jar signing, email protection, SSL etc, what browsers you want it to work in, etc. It then tells you what kind of certificate you need, its rough cost, and gives you some URLs where you can buy it. It would also tell you what tools you will need to use the certificate, and points you to some URLs where they are described. It would also give instruction on how to create a phony certificate.
Combined with logic from the Certificate Viewer, it might also, given a certificate, tell you how to install it in various browsers, and how to install its signing authority root.
Here is the source code for a simple Certificate viewer:
You can try an Applet version of this viewer on-line now.IBM has written a free certificate viewer and manager called keyman that you might use as a model.
![]() |
and suggestions to improve this page to Roedy Green : | ||
| Canadian Mind Products | |||
| mindprod.com IP:[65.110.21.43] | |||
| Your face IP:[38.103.63.17] | The information on this page is for non-military use only. | ||
| You are visitor number 6,708. | Military use includes use by defence contractors. | ||
| You can get a fresh copy of this page from: | or possibly from your local J: drive (Java virtual drive/Mindprod website mirror) | ||
| http://mindprod.com/project/certificate.html | J:\mindprod\project\certificate.html | ||