The whiteflag-standard repository on GitHub contains the official specification of the Whiteflag Protocol. The specification is commonly referred to as the Whiteflag Standard, which serves as the common basis for implementation of the protocol.
The GitHub repository is used to publish and maintain the protocol specification with associated artefacts as an open standard. This allows policy makers, developers, operational experts and other specialists to adopt and implement Whiteflag, and to provide feedback for improvement and further development.
The Whiteflag Protocol has been designed with the following guiding principles:
- the protocol is based on blockchain technology, but is “blockchain-agnostic”, i.e. independent of any specific blockchain
- the protocol is as free and open as the underlying blockchain and internet technologies are: anyone can join at any time without permission from anybody else
- the working of the protocol does not rely on any third party, i.e. there is no ownership of the network that is created with the protocol and no dependency on specific software or a system
- the protocol does not have access control, but does provide means of authentication
- the protocol inherits the data integrity and non-repudiation properties of the underlying blockchain(s)
- the protocol allows to use encryption for message confidentiality
- the protocol should be compliant with international rules and standards for armed conflicts
- the protocol is kept as simple as possible, to ensure easy access, easy understanding and easy implementation
- the message formats are fixed to ensure interoperability and a common understanding between the communicating parties
- the protocol is extensible to allow functionality to be added with backwards compatibility
- implementation only requires the use of open standards