Anton Sitnikov Chief Software Architect, Exactpro
GDG DevFest, Tbilisi
Youtube Channel https://www.youtube.com/c/exactprosystems
R3 Corda: Distributed ledger
for Fintech applications
Chief Software Architect,
• A specialist firm focused on functional and non functional testing of
exchanges, clearing houses, depositories and other market infrastructures
• Incorporated in 2009 with 10 people, our company has
experienced significant growth as satisfied clients
require more services; now employing 550 specialists.
• Part of London Stock Exchange Group (LSEG) from May 2015 till January
2018. Exactpro management buyout from LSEG in January 2018.
Headquartered in UK, with operations in US, Georgia and Russia.
• We provide software testing services for mission critical technology that
underpins global financial markets. Our clients are regulated by FCA, Bank
of England and their counterparts from other countries.
● A Corda network is an authenticated peer-to-peer network of nodes, where each node
is a JVM run-time environment hosting Corda services and executing applications
known as CorDapps.
● All communication between nodes is direct, with TLS-encrypted messages sent over
AMQP/1.0. This means that data is shared only on a need-to-know basis; in Corda,
there are no global broadcasts.
● Corda networks are semi-private. Each network has a identity service that enforces
rules regarding the information that nodes must provide and the know-your-customer
processes that they must complete before being admitted to the network.
Network and Identity
• Identities are attested to by X.509
• Well known identities are published in
the network map
• Confidential identities are only shared
on a need to know basis
NO CASH GEL 100 GEL 50
2019-02-01 timeline 2019-02-24
CONSUMED HISTORICAL STATES UNCONSUMED
BOND 1 BOND 2
• Is identified by a hash
• Is atomic
• Can have multiple input states
• Can have multiple output states
• Should have at least one command
CASH 0 CASH 1
BOND 0 BOND 1
SIG 0 SIG 1
• Transaction validity: For both the proposed transaction, and every transaction in
the chain of transactions that created the current proposed transaction’s inputs:
▪ The transaction is digitally signed by all the required parties
▪ The transaction is contractually valid
• Transaction uniqueness: There exists no other committed transaction that has
consumed any of the inputs to our proposed transaction
• Notaries provide uniqueness consensus which prevents “double-spends”
• Notaries may optionally also validate transactions
• A network can have several notaries, each running a different consensus algorithm
● Vault is stored in relational database
● States are persistent as blobs, AMQP serialized
● State fields can be extracted to database columns
FLOW SUSPENDED AND CHECKPOINTED