Process iterates for each transaction in transaction pool. Validates each transaction and then sets up all necessary changes in VMDB database. That is sets up all banking objects – transfers, standing orders, direct debits etc.
Process of block finalization
After all transaction are processed, new block at the top of existing blockchain can be created. All transaction plain text bodies are crypted. Crypting keys are stored with transactions records. Hash of new block is calculated using crypted bodies of transactions. New block is written at top of blockchain. New block is added to the external server, for purpouse of later possible blockchain control
All other components of diagram are described here.
Within this flow fly each transaction data. Process of PSTP required all transaction data in order to propagate all necessary changes from transaction written in transaction pool to VMDB.
After propagating changes from transaction, transaction data is updated with corresponding references to new created/updated objects in VMDB
From PSTP to VMDB fly data on newly created/updated business objects. This data is stored in VMDB. Opposite direction fly Ids of new objects created in VMDB. These are used to update transaction records in VMTP by DF2 data flow
During process of block finalization, new record of block is created at the top of blockchain. Transactions have to be updated with new block’s id
Through this flow fly data of new block. Opposite direction comes new block’s id
After new block is created, transactions in encrypted form are written to external server. In order to set the blockchain data to stone. And provide possibility to external verifiers of blockchain to do their work
Whole process starts after some period of time since last block was written is passed, or simply after transaction pool gets filled to certain level with new transactions
Process iterates through each new transaction in pool
Part of iteration mentioned in PF1
After all transactions are validated and corresponding actions taken in VMDB, subprocess of block finalization is called