mirror of
https://github.com/corda/corda.git
synced 2024-12-23 06:42:33 +00:00
72 lines
3.3 KiB
ReStructuredText
72 lines
3.3 KiB
ReStructuredText
.. _key-concepts-label:
|
|
|
|
Key concepts
|
|
============
|
|
|
|
This section describes the key concepts and features of the Corda platform. It is intended for readers who are new to
|
|
Corda, and want to understand its architecture. It does not contain any code, and is suitable for non-developers.
|
|
|
|
.. note::
|
|
The pages in this section should be read in order.
|
|
|
|
.. toctree::
|
|
:maxdepth: 1
|
|
:hidden:
|
|
|
|
The Network <key-concepts-ecosystem>
|
|
The Ledger <key-concepts-ledger>
|
|
States <key-concepts-states>
|
|
Transactions <key-concepts-transactions>
|
|
Contracts <key-concepts-contracts>
|
|
Flows <key-concepts-flows>
|
|
Consensus <key-concepts-consensus>
|
|
Notary <key-concepts-notaries>
|
|
Vault <key-concepts-vault>
|
|
Time Windows <key-concepts-time-windows>
|
|
Oracles <key-concepts-oracles>
|
|
Nodes <key-concepts-node>
|
|
Transaction Tear-Offs <key-concepts-tearoffs>
|
|
Trade Offs <key-concepts-tradeoffs>
|
|
Deterministic JVM <key-concepts-djvm>
|
|
|
|
|
|
The first topics in this section provide an **overview** of the Corda Distributed Ledger:
|
|
|
|
* :doc:`key-concepts-ecosystem` - The ecosystem that Corda exists in
|
|
* :doc:`key-concepts-ledger` - The ledger, and how facts on the ledger are shared between nodes
|
|
|
|
The second set of topics describe the core **CorDapp Concepts**:
|
|
|
|
* :doc:`key-concepts-states` - The states represent shared facts on the ledger
|
|
* :doc:`key-concepts-transactions` - The transactions update the ledger states
|
|
* :doc:`key-concepts-contracts` - The contracts govern the ways in which states can evolve over time
|
|
* :doc:`key-concepts-flows` - The flows describe the interactions that must occur between parties to achieve consensus (to satisfy some business requirement)
|
|
|
|
.. note::
|
|
When you build a custom CorDapp, your CorDapp will have state, transaction, contract and flow classes.
|
|
|
|
The following **Advanced Corda Concepts** describe important conceptual information:
|
|
|
|
* :doc:`key-concepts-consensus` - How parties on the network reach consensus about shared facts on the ledger
|
|
* :doc:`key-concepts-notaries` - The component that assures uniqueness consensus (prevents double spends)
|
|
* :doc:`key-concepts-vault` - The component that stores on-ledger shared facts for a node
|
|
|
|
Finally, some concepts that expand on other areas:
|
|
|
|
* :doc:`key-concepts-time-windows` - Transactions can be validated as having fallen after, before or within a particular time window
|
|
* :doc:`key-concepts-oracles` - Transactions can include off-ledger facts retrieved using Oracles
|
|
* :doc:`key-concepts-node` - Each node contains an instance of Corda, one or more CorDapps, and so on
|
|
* :doc:`key-concepts-tearoffs` - Transactions can be signed by parties who have access to only a limited view of the transaction parts
|
|
* :doc:`key-concepts-tradeoffs` - Trade-offs that have been made in designing Corda and CorDapps
|
|
* :doc:`key-concepts-djvm` - Information about the importance and details of the deterministic JVM
|
|
|
|
The detailed thinking and rationale behind these concepts are presented in two white papers:
|
|
|
|
* `Corda: An Introduction`_
|
|
* `Corda: A Distributed Ledger`_ (A.K.A. the Technical White Paper)
|
|
|
|
Explanations of the key concepts are also available as `videos <https://vimeo.com/album/4555732/>`_.
|
|
|
|
.. _`Corda: An Introduction`: _static/corda-introductory-whitepaper.pdf
|
|
.. _`Corda: A Distributed Ledger`: _static/corda-technical-whitepaper.pdf
|