Architecture


Overview of the systems structural elements and relationships based on a concrete architecture.
Note that the documentation here describes a specific architecture chosen based on the general Protocols.


System overview

General overview of the system architecture and functionalities.

Protocols

This describes the protocol for the Bit Repository.

  • Message exchange protocol 
    • Message flowDescribes the general messageflow in communication between the Bit Repository components.
    • Protocol messagesDescription of the different protocol messages, which operation it applies to, and their types.
    • Message formatDescription of the the XML basic message structure and format.
  • File Exchange protocolDescribes the underlying protocol used as the File Exchange.
  • Protocol versioningDescribes how a system of components supporting different versions of the protocol should work.
  • Operations descriptionsDocumentation of the different operation primitives that the protocol describes
    • GetFileInfos
    • ReplaceFileOperation to replace a file on one or more pillars in a collection.
    • DeleteFileOperation to remove a file from one or more pillars in a collection
    • GetFileOperation to retrieve a single file from a collection.
    • GetAuditTrailsOperation to retrieve audittrails for a specific collection from one or more contributors
    • PutFileOperation to ingest a file on one or more pillars in a collection.
    • GetChecksumsOperation to get checksums from one or more pillars in a given collection.
    • GetStatusOperation to retrieve status from components in a repository
    • GetFileIDsOperation to get fileIDs from one or more pillars in a given collection.

Security

Description of the security model of the Bit Repository

  • EncryptionTo prevent anybody from eavesdropping on the bit repository data and messages exchanged, all communication is encrypted. 
  • AuthenticationTo ensure messages are transmitted, untampered signature based authentication is used.
  • AuthorisationDescribes how messages requesting operation on a collection are checked against the permission model.