Project-Structure » History » Revision 4
Revision 3 (Tobias Wich, 09/14/2012 05:40 PM) → Revision 4/17 (Tobias Wich, 09/17/2012 05:03 PM)
h1. Project-Structure
The overall project structure has been derived from the high level design of the Open eCard App (see [["Sicherheit 2012 submission":https://redmine.vserver-001.urospace.de/attachments/14/Open-eCard-App-2011-12-05.pdf]]) and is depicted in the following figure:
!Open-eCard-App-Design_690.6x476.4.png!
h2. wsdef
Contains web service definitions (.xsd, .wsdl) and related utilities.
* class-list-plugin
* wsdef-client
h2. common
Contains common utilities and helper classes.
h2. crypto
Contains basic crypto modules.
* bouncy-android
h2. saml
Contains the functionality for [["SAML-ECP":http://www.oasis-open.org/committees/download.php/41209/sstc-saml-ecp-v2.0-wd02.pdf]].
h2. esign
Contains signature-related functionality.
h2. transport
Contains modules related to the transport of messages.
* dispatcher
* paos
* [[TLS-Design|tls]]
h2. gui
Contains user interfaces for the different platforms.
* gui-common
* swing
* android
h2. ifd
Contains the interface device (IFD) components for the different platforms. The following figure provides an
overview of the relationship between the different ifd modules:
!IFD-Module-Structure_656x280.png!
* ifd-common
* protocols
Contains IFD-related trusted channel protocols, which can be used with @EstablishChannel@. Currently the following protocols are supported:
* pace
* scio-backend
Provides an implementation of [["javax.smartcardio":http://docs.oracle.com/javase/6/docs/jre/api/security/smartcardio/spec/javax/smartcardio/package-summary.html]] for different platforms.
* oma
Maps [["javax.smartcardio":http://docs.oracle.com/javase/6/docs/jre/api/security/smartcardio/spec/javax/smartcardio/package-summary.html]] to the [["Transport API within the Open Mobile API":http://www.simalliance.org/en?t=/documentManager/sfdoc.file.supply&e=UTF-8&i=1185787014303&l=0&fileID=1322061907922]].
* android-nfc
Maps [["javax.smartcardio":http://docs.oracle.com/javase/6/docs/jre/api/security/smartcardio/spec/javax/smartcardio/package-summary.html]] to [["android.nfc":http://developer.android.com/reference/android/nfc/package-summary.html]].
* pcsc
Is necessary to embed the java default implementation of the SmartcardIO into the scio-backend context.
* ifd-core
Implements the IFD-API including the mapping to [["javax.smartcardio":http://docs.oracle.com/javase/6/docs/jre/api/security/smartcardio/spec/javax/smartcardio/package-summary.html]]
h2. sal
Contains the service access layer (SAL) components.
* sal-lite
* protocols
* eac
* crypto-lite
h2. recognition
Features CardInfo-based card type recognition.
h2. event-manager
Provides an easy to use interface for ifd-related events.
h2. browser
Contains components for the integration of the Open eCard App into popular browsers.
* object-handler
* pkcs11
!TLS-module-structure_667x404.5.png!
* tls-channel-binding
h2. control-interface
* [[Control_Interface#Activation|TCToken]]
* [[Control_Interface#GetStatus1|Status]]
h2. client
Contains modules for the different forms of the Open eCard App.
* applet
* android
* j2me