6.0 KiB
6.0 KiB
OurWorld Blockchain
This blockchain has been implemented for the Digital FreeZone Company OurWorld of Zanzibar.
The blockchain has unique properties
- run by trusted parties who have strong agreement with the OurWorld Digital Freezone
- it can run very flexible smart contracts
- the smart contracts can interact with multiple blockchains at once
- every execution is logged for in a blockchain log system which can not be modified (WORM)
- the result of actions are records being changed in a normal SQL relational database
- certain fields of this database can be private
- the consensus mechanism is very strong
Initial Smart Contracts
Implementation Details
Implemented using consensus engine which has unique properties
- super flexible execution is possible (flexible contracts as above)
- each execution is logged and auditable afterwards
- secure by consensus ring (which is a custom made blockchain based on Tendermint)
- the data is stored in relational database (postgresql)
- the consensus ring guarantees correct execution and consensus over the databases
- each validator has 1 database
- the validators can talk to multiple blockchains e.g. Stellar, ...
the blockchain has following components
- Validator
- is a node which runs all the components as described below
- Consensus_Engine
- every RPC (remote procedure call) request goes over the engine
- the engine make sure all RPC's are executed in order and reach all Validator
- Blockchain_DB = Blockchain Database
- a SQL Database
- Blockchain_Logger = logger whichs records all changes, logs, ... and stores them on the Zero-Stor
- Zero-Stor = is a key valye stor which stores everything in containers which are encoded, encrypted, compressed and dispersed to multiple Zero-DB's
- Zero-Stor will check validity of the data and makes sure data can never be corrupted nor lost
- the Zero-Stor is used in WORM mode which means Write One Time, read Many Times
- Zero-DB = the storage engine behind which stores the info on the storage device
- Build_Engine:
- builds the code (if needed) to run by the Execution_Engine
- will check the hashes and signatures to make sure the right code is run
- Execution_Engine
- there can be more than one and they can even be created in multiple languages
- they will execute all the logic (the smart contracts)
- only if all execution engines have the same result the the consensus engine will agree with the RPC request and the transaction is valid.
Consensus Engine
Is a proper proof of stake blockchain