-
Notifications
You must be signed in to change notification settings - Fork 79
Transactional Layer
Transactional layer is defined by few abstract interface. A concrete implementation needs to implement them.
A block is a an atomic batch of state modifiers network participants are agreed on.
A block has:
-
a link to a previous block
-
transactional data: a sequence of transactions, where a transaction is an atomic state update. Some metadata is possible as well(transactions Merkle tree root, state Merkle tree root etc)
-
consensus data to check whether a block was generated by a right party in a right way. E.g. "baseTarget" & "generatorSignature" fields in the Nxt block structure, nonce & difficulty in the Bitcoin block structure
-
a signature(s) of a block generator(s)(there is no signature for a block in Bitcoin though)
-
timestamp
-
additional data: block structure version no etc
Block interface in Scorex following this definition pretty well.
A state is a result of sequential blocks applying, starting from a genesis block.