TL-DR; We published the Centrifuge Protocol Paper, a technical deep dive that walks you through the inner workings of Centrifuge OS. Read it here
Protocol + Paper
The Centrifuge Protocol Paper serves as a reference for the core protocol, and the rules that must be adhered to by any node in the Centrifuge peer-to-peer network. These rules include message specification, signature generation, and validation, as well as how the Ethereum-based smart contracts fit into the picture. Along with the first implementation, go-centrifuge, the paper gives you a complete understanding of the inner workings of the protocol and allows anyone to build software that interacts with other Centrifuge nodes on the network.
As a quick refresher, Centrifuge is building a protocol for the financial supply chain. An open network that connects businesses in global supply chains, enables them to exchange business documents in a private way while allowing for an immutable single source of truth for said documents. In addition, it provides users with the possibility to create a digital representation of the assets exchanged on the network, in the form of Non-Fungible Tokens (NFTs), as well as a bunch of other cool stuff!
What’s in the Protocol Paper?
The Protocol Paper details how we are building Centrifuge OS. If you would like to understand why, please refer to this recent lightning talk by our CEO Maex.
If you’re curious and want to dive right in, then just go ahead and read it here.
The paper starts by giving an overview of Centrifuge: the core components made up of a collection of Ethereum Smart Contracts, that represent the identities of network participants, document anchors and NFTs, and the peer to peer network implemented on libp2p, through which documents are sent back and forth between the network participants.
Additionally, the paper describes how the business documents are exchanged. More specifically, how the off chain documents are structured and how we ensure third-party verification (off-chain) when two nodes (i.e two users) reach consensus on the state of a document.
We dive into the details on user identities, the different Merkle trees, and the field serialization format. We explain our user mintable NFTs, the digital representation of the off-chain assets: how they are minted, and how they are validated and checked against the root hash of the off-chain asset (whether an invoice or another type of document).
We are excited to share the inner workings of Centrifuge with you. Read the Protocol Paper here.
As the protocol is continually evolving, the protocol paper will be updated too. We invite everyone to contribute to its development. We’re looking forward to hearing your comments and as always, if there are any questions, feel free to join our slack channel or comment directly in the Github repository.
We look forward to your questions, feedback, and input.
✌️The Centrifuge Team
Special thanks to Josselin Feist (Trail of Bits), Sarah Anne Friend, Maria Kleppisch, Maya Byskov and Charly Fei for reading the paper and providing useful comments and feedback.