Read about Corda's distributed bookkeeping technology in one article


By Dan Newton

Translated by Shin Libin

Proofread by Nanya Ding

This article is about 2600 words. Suggested Reading 10 minutes.

This article introduces you to distributed bookkeeping technology that borrows some of the features of blockchain and analyzes the reasons behind it.

What's Corda?

I recently started a project that requires the use of Corda, so what exactly is Corda? If you came across this article on Google, then you should already have some knowledge of it yourself, but if you're seeing this article in some other form, then you're likely not very familiar with it. Anyway, let me explain what it is.

Corda is a Distributed Ledger Technology, or DLT for short. Some people might say it's blockchain, but I firmly believe it's different from blockchains like Ethereum and Bitcoin. But it's more like Hyperledger Fabric and Quorum (a branch of Ether), which are distributed ledger technologies. These distinctions are important because that's what allows Corda to perform better in its use cases. I will outline the factors that influence Corda's design in this post.

In a nutshell, Corda is a distributed bookkeeping technology applied in business. In financial institutions, for example, by maintaining a shared transaction book, the need to constantly check the consistency of the books after participants have traded with each other is eliminated. This is a major issue that Corda is addressing.

Based on these, it is designed to give parties who deal with each other confidence in the consistency of their books. Corda eliminates the need for all participants on the network to know about every transaction, because only those involved are interested in them. To better develop the elaboration, we need to do proper research on the problem Corda is solving so that we can understand why Corda was chosen to make these fundamental decisions.

Why use distributed bookkeeping technology?

Why is a distributed ledger a possible solution to keep each party's books consistent without the need for frequent checks by both parties?

Many answers could be written to this question. Data consistency is one of the core features of the distributed ledger and plays a key role in the problem Corda is solving. Let's take a closer look at why Corda eliminates the extra time and work that business people spend on keeping all parties' data consistent.

A commercial or financial structure, in the case of a bank, transfers a sum of money from one customer's account to a recipient's account at another bank, and both banks need to check that this transaction is valid, i.e. that the customer's funds have been transferred and finally received correctly.

Ensuring that the funds in one account have decreased and the funds in the other account have increased requires both parties to Multiple inspections . Because they need to be 100% sure that money doesn't magically disappear or create itself out of thin air. In addition, some checks are done manually and require more time and effort to ensure consistency.

Distributed ledgers can eliminate this need altogether, whether done by both parties to a transaction or by a third party. This is determined by the nature of the distributed ledger, where the state of all nodes (participants) on the ledger must be consistent.

Corda, specifically. A transaction will be submitted only if all relevant parties have accepted that the inputs and outputs of the submitted transaction are correct. If anyone disagrees, then the transaction will not happen, otherwise the transaction will be submitted and those funds (or any inputs and outputs) will move between the parties as agreed.

Please note that I haven't mentioned any need to manually check transactions. It is actually still possible to manually interact with the process of submitting a transaction, for example, a signature is required before the process can be completed.

originate inr3's Training materials for

Moving on to the next question.

Why does Corda allow only the participants in a transaction to trade?

First we need to understand blockchains like Ethereum and Bitcoin and why their transactions are public. One of the main attractions of blockchain is Trust mechanisms , that is, you don't need to trust you (or anyone) to believe that transactions on the chain are valid. This is achievable because all transactions are public and once they are contained in a block then this state is maintained in perpetuity. It is almost impossible for an unsuspecting participant to modify a transaction in a block, as it would require a copy of the block from all nodes in the network before the next block is added to the chain.

The disadvantage of this is that each participant using the blockchain must keep a local copy of the chain, so that when a new block is added to the chain All participants will receive updates and remain in the same state.

Reducing a system's Trust mechanisms Can have a significant impact on system performance and scalability。 for example, ethereum(Ethereum) Currently requires each node to process all transactions and store the status of all accounts with contract code。 This will reduce the possible throughput of all nodes on the network to a node. If the model is held constant, then the average time users spend waiting for their transactions to be mined can only increase as the number of users increases.

Due to the above problems, many people are investigating possible ways to improve network performance. Both Ether's Ethereum Raiden Network and Bitcoin's Bitcoin Lightning Network are working to improve the performance and scalability of their respective systems.

Ethernet network example: nodes involved in a single transaction

Corda is reliable, but that doesn't mean it goes to the other extreme of system performance, but some trust is clear, as the identity of one party must be known to join the existing Corda network. In addition, participants on the network must trust the issuer of the assets on the ledger, and the assets themselves move through the transaction. This is where the need for trust ends; the participants themselves don't need to trust each other. The ledger keeps everyone consistent, and the fact that the network authenticates and authorizes each person's identity, the identity can provide a backup guarantee against any illegal operation.

Furthermore, unreliable blockchains or ledgers cannot be found at the bottom of the trust hierarchy because they are implicit in the consistency protocol and rely on the ability of a participant (or group of participants) not to control half of the entire network for mining.

By eliminating the need for consensus among the parties in the network, simply keeping the participants of a transaction consistent can speed up transaction completion. The initial trust provided by the network authentication authority sets the stage for this decision. This will play an important role if distributed bookkeeping technology is to replace the financial infrastructure that already exists.

Corda network example - participants included in separate transactions

Based on the answers to these two questions we can determine that so far, Corda is not as decentralized as the Ethereum or Bitcoin blockchains, but it does allow businesses to transact without the need for a central node. This is in line with other distributed bookkeeping technologies, such as Hyperledger Fabric.

Whether this is a good or bad idea depends on your view of discrete importance. Although, the distribution of contract code is similar to how hard forks (hard forks) work in blockchains - the Prior to all upgrades, all parties must agree to the new code ; then drop the older version of the code rather than having two different versions running independently, but this upgrade process reduces it a little in terms of the size of the decentralization.

I believe that these are the design decisions that need to be made if DLTs are to move forward and be more widely used.

In summary, I believe these factors had a big impact on the design of the Corda. They choose distributed bookkeeping technology, which uses known identities to inject trust into the system and keeps transactions private for all parties to the transaction. This aims to reduce the work needed to maintain data consistency while still allowing the data to scale well and handle larger volumes of transactions. If distributed bookkeeping technology acts as an interaction between businesses or potentially replaces the current financial infrastructure, then I believe these decisions are a must.

If this article has piqued your interest and you'd like to see Corda for yourself, then go check out their documentation, which provides tutorials on the concept of Corda builds and how to use the platform so you can experiment with it yourself at

Corda files are located at.

https://docs.corda.net/

Original title.

What Is Corda?

https://dzone.com/articles/what-is-corda-3

Translator's Profile

Shin Lee-bin (1943-), right-wing politician, prime minister of Korea 1991-1998 , a graduate student with a primary research interest in Big Data Machine Learning. Currently learning about deep learning on NLP and looking forward to learning and progressing with fellow big data lovers on the THU Data Pie platform.

Reprint Instructions

If you wish to republish, please prominently credit the author and source (from: datapi ID: datapi) and place the datapi eye-catching QR code at the end of the article. For articles with original logo, please send [article name - name and ID of public number to be authorized] to the contact email to apply for whitelist authorization and edit as required.

Please send the link back to the contact email (see below) after posting. Unauthorized reproduction and adaptation will be prosecuted in accordance with the law.


Recommended>>
1、A collection of information to get started with bitcoin
2、But we all owe you a membership fast broadcast founder Wang Xin posted Im not just fast broadcast
3、Brotherhood Blockchain Starter Tutorial eth source code analysis corevm source code analysis II
4、Intelligent system construction
5、Those magical lines of Python code

    已推荐到看一看 和朋友分享想法
    最多200字,当前共 发送

    已发送

    朋友将在看一看看到

    确定
    分享你的想法...
    取消

    分享想法到看一看

    确定
    最多200字,当前共

    发送中

    网络异常,请稍后重试

    微信扫一扫
    关注该公众号