During 2004 Virk and ResultMaker began development on OpenSign. They made a number of enhancements which have influenced the design of the applet.
They also limited the use of VMs to only SUN version 1.4+ so MS JVM couldn't be used with their applet. This was unacceptable for the time being so work was initiated which aimed at moving much of their ideas into the MS-compliant Applet and extending the interface to the server so it could also accomodate the requirements of Virk and ResultMaker.
At the same time TDC was working on extending the Applet to support CD-CARD-based certificates thus extending the support to 3 keystores: CAPI, PKCS12 and CD-CARD. Instead of making the code support 3 keystores it was decided to make it support "n" keystores and make them plugable.
The result is an Applet which to some extent supports: (see Design principles)
This makes it possible to select which combination of keystores a solution should support and so limit the amount of code to be downloaded and filter out unwanted certificates. It also allows licensed code to be part of a pluggable keystore without becoming a part of the open code in OpenOces.
In the future we will try to get the remaining functionality moved to the applet somehow. This can be done by splitting the applet in 2: one advanced with SUN JVM (1.4+) and a basic one which runs on MS JVM (1.1.4+). Or the existing applet can be extended. Or the ResultMaker applet can be modified so it doesn't rely on SUN JVM.