Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Peer to Peer Network

ItemEPICImportanceRFCNotes
Peer to Peer Network Library

HI2-6

HI2-30

Status
colourGreen
titleMUST


Plain TCP\IP based protocol with SCALE as de\serialization format.
Transactions Time to Live

Status
colourGreen
titleMUST

Prevent replay of rejected transactions





Blocks Storage

ItemEPICImportanceRFCNotes
World State View

Status
colourGreen
titleMUST


In-memory, read fast data representation of the current World's State.
Kura

HI2-1

HI2-17

HI2-18

HI2-5

Status
colourGreen
titleMUST


Kura is a decorator on top of Disk Block Storage and provides validation and World State View synchronization functionality. 
Blocks SynchronizationHI2-2

Status
colourGreen
titleMUST

Block Synchronization
//TODO Egor Ivkov please add small note about the gossip design and concerns.

Smart Contracts

ItemEPICImportanceRFCNotes
Iroha Special Instructions mechanism

Status
colourGreen
titleMUST



Out of the box set of Iroha Special Instructions

HI2-28

HI2-29

HI2-35

Status
colourGreen
titleMUST


Several Tiers of Iroha Special Instructions provide:

  • Basic building blocks that can be used to build Custom Iroha Special Instructions
  • Maintenance related Iroha Special Instructions (Add Peer, Change Build Block Time, etc.)
  • Iroha Modules related Iroha Special Instructions (Bridge, DEX, etc.)

Non Functional

Target Platforms

Iroha deployment should support GNU/Linux, MacOS and Windows machines with x86 and Arm64 CPUs.

Transactions Processing

Iroha Peer should be able to process 20,000 transactions per second.

Blocks Processing

Iroha should be able to commit a new block every 3 seconds.

https://soramitsucoltd.aha.io/features/HI2-26

https://soramitsucoltd.aha.io/features/
PermissionsHI2-36
#TitleUser StoryImportanceNotes
1Storagehttps://soramitsucoltd.aha.io/features/HI2-1

Status
colourGreen
titleMUST

  • Drive and In-Memory storage capabilities
2Permissions and Event ListenersPermissions in Iroha implemented based on Assets and Iroha Special Instructions.
TriggersHI2-37Permissionshttps://soramitsucoltd.aha.io/features/HI2-36

Status
colourGreenYellow
titleMUST

  • Already implemented in the way, required by internal projects
3Event Listenershttps://soramitsucoltd.aha.io/features/HI2-37
Status
colourYellow
titlecould
4Maintenance Endpoint

Could

Permissions and Event ListenersTriggers in Iroha implemented based on Assets and Iroha Special Instructions.

Maintenance

ItemEPICImportanceRFCNotes
Maintenance Endpoint

HI2-26

HI2-27

Status
colourGreen
titleMUST

Maintenance Endpoint
5Transactions TTL

Clients

ItemEPICImportanceRFCNotes
Rust Client LibraryHI2-32

Status
colourGreen
titleMUST

Discussed in chat, Nikita Puzankov will create an RFC based on the discussion


Iroha Client encapsulates network related functionality and provides "local" Rust Interface for:

  • Submitting of Iroha Special Instructions to Iroha Peer
  • Querying Data from Iroha Peer
  • Maintenance Endpoint API

Non Functional

Target Platforms

Iroha deployment should support GNU/Linux, MacOS and Windows machines with x86 and Arm64 CPUs.

Transactions Processing

Iroha Peer should be able to process 20,000 transactions per second.

Blocks Processing

Iroha should be able to commit a new block every 3 seconds.

User interaction and design

...