This service module implements Confidentiality and Authenticity.
It uses the Comm Block to open connections and to read and write data in ComPoints and Channels. The default protocol that is used is TCP, but we now have a constructor that allows the specification of the procotol to use. Please note that this is completely untested, and it's quite unclear whether the used mechanism for building a StatementMan-session work. HTTP might work, Mail probably not.
After opening a SecComPoint, a statement session is opened. Objects that are written are supplied with a sequence number and combined in a so called Message. Messages are simply encrypted and have a MAC attached by the StatementTransaction methods encipher() and generateMAC().
If a MAC of a received message could not be verified or the sequence number is not the expected one, an exception is thrown.
Please note the BasicServices class variable WITH_CERTIFICATE_AND_STATEMENT. If set to false, no Statement- or CertificateMan calls will be done. This also means that there is no encryption or integrity checking. The default value is true. This variable is usefull if you have no certificates or an unstable version of the certificate/statement block.
For further documentation, see: