COMIT: No need for tokens to connect the three technical requests for the block chain


nnnThe tenX project is the co-founder and CVO of the TenX project, which explains how the COMIT system on which TenX wallet is built is running and outlines how the idea of ​​connecting all block chains can be achieved The technical construction.n
nnAuthor: Dr Julian Hosp.n
nThe last step in using the encrypted currency on a large scale is to link all the block chains, and here I will outline the technical builds that implement this idea. Since I see a large connection to all the block chains of the uber-blockchain there are many drawbacks, I will focus on a solution to reduce the tokens. This will have several advantages:n
nn
nn· No extra tokens are requiredn
nThe user can be in the original block chainn
n· Do not need to trust a centralized third partyn
nn

n
nDr. Julian Hospn
nHowever, this approach still has some drawbacks. Since there is no uber-blockchain or a centralized way to ensure the connection, there is a need for sufficient liquidity between the two connected block chains. For example, if I want to transfer funds from the ETH block chain to the Bitcoin block chain, I need a person from bitcoin to ether. For these two large block chains, you will always find someone willing to move from one direction to another, but how to chain from the etheric currency to a smaller block chain, or from a smaller block Link to another smaller block chain? While I will ask how to solve this problem, I would like to emphasize that liquidity is the key economic factor in this password-safe multi-asset network.n
nn
nBasic building blocksn
nLet’s take a look at the three very basic building blocks needed to connect any two block chains:n
nn· Multi-signature feature (Multisig)n
nHash functionn
n· Timing lock functionn
nn1. Multi-party signature is an old, trustworthy concept that can be compared with a shared checkbook with multiple mandatory signers. Multiple transactions allow the execution of any joint signature rules. In the case of password security, chain and chain, multi-asset real-time transaction network (COMIT), you can use 2-to-2 multi-signature transactions, where two signers must sign the transaction to become valid and accepted by the network (this Example will be after).n
nThis means that multiple signed transactions between the two parties need to be signed by both parties to make the results effective and acceptable to the Internet.n
nIn the following figure, a transaction is created, where a BTC is used as input; however, in order to get it, both parties (Alice and Bob) must sign the deal:n
n

n
n2. The hash function is the standard encryption concept.n
nThese are unidirectional functions that convert arbitrary data (in our example, the secret “s”) into a unique hash “h”. Then, you can safely share the hash h without anybody being able to calculate the secret “s” used to create it. So that we can build a hash lock transaction, this transaction can only use secret knowledge to unlock the funds. In order to span different block chains, we need the same cryptographic hash function as the intelligent contract language of each block chain involved in this path.n
nIn the picture below, someone puts a BTC in a contract, but Alice can take it once she has a secret (she usually gets it from Bob).n
n

n
n3. Time lock is a simple requirement that the funds are locked to future dates. The block chain has two different time locks: relative and absolute. Absolute time locking will lock the transaction output until a fixed time point in the future, and the relative time lock will be output relative to the event or point in time lock. That is, the relative time lock defines a time span relative to a particular point in time. Time lock is a requirement for a no-trust payment channel, and a relative time lock is recommended because they allow the payment channel to be opened indefinitely.n
nIn the following example, someone puts a BTC input, but in order for Alice to get it, she must wait for a pre-defined period of time.n
n

n
nn
nThree in onen
nIf we continue to combine these three building blocks, we will get something called HTLC (Hash Time-Lock Contracts), and their status can be updated on a multi-party signature basis. The HTLC combines the time lock concept used for the refund with the hash lock. If the recipient can provide the hash of the hash before the expiration of the lock, he will be able to retrieve the funds. Otherwise, the sender can safely recover the funds. If one party wants to update the HTLC state, he needs the other party’s approval (signature). This is the multisig function to play.n
nIn the following example, Alice signed a BTC with Bob. If Bob gets a hash value from Alice within a predefined time, Bob can take 1 BTC, otherwise Alice will get the funds automatically after a predefined time.n
n

n
nTwo HTLCs can be coupled to each other, resulting in atomic trading. To this end, the recipient first generates a secret s and calculates its hash value h. The recipient then shares the hash h with the sender, and the sender creates the first conditional transaction, that is, the output is locked by the hash. This output can only be exchanged with secret knowledge. According to the layman, this means that if Bob wants to send it to Alice1 BTC and wants ETH to return, they can open two pay channels (one with BTC, another with ETH) and couple with hash h. As long as Alice is sent to Bob ETH, Bob will send it to Alice BTC. If a person withdraws, the original amount will be returned.n
nNow, we can stack any number of transactions together, because each node in the chain can safely use the same hash to create a transaction, which also depends on knowing the secret s. This hash value is initially shared with the sender, and then they then send the condition to the first node, which needs to know the secret s to exchange it. Then, each node in the route can safely forward the transaction, while adding the same conditions for the transaction exchange. By using HTLC, we can ensure that all transactions through this route can be achieved, or that all payment channel transactions can not be revoked. There is no need to place any trust in any node in the middle of the route. Finally, you have a series of transactions, are relying on the same secret to achieve. When the recipient receives the last transaction and uses the secret to exchange the money, each other node will see the secret used and then can make his own transaction.n
n

n
nAfter the secret s has been shared across the route, each payment channel will settle the transaction back to the channel. This is done by updating the status of the payment channel to the final balance and then invalidating the HTLC transaction by disclosing the invalid keyword k to the payment channel counterpart, which will eventually complete the transaction.n
nIn the case of an intermittent route failure, the time locking mechanism is used as the refund mechanism. The time lock needs to be stacked from the receiver to the sender to ensure that no one can cheat through a shorter time than one of his / her people, so that they can exit first.n
nn
nin conclusion n
nThese transactions can be made between the same block chain, but can also be cross-block chain transactions, as long as you find willing to trade in the two blocks of the chain of people. This is the concept of mobility and routing. We now see the two low-flow block chains linked together, we actually do not necessarily directly between the two transactions. By using a stack of payment channels one by one, money can flow from a low-flow chain to a high-flow chain and then to a final low-flow chain.n
nThis concept links the payment channel to the current large network:n
nn· Password security (depending on the encryption standard),n
nChain (such as lightning network or Raiden network),n
nMulti-asset (cross-chain)n
n· Immediately (do not need to set up in the block chain for a transaction, only to update the transaction between the two sides until the broadcast)n
n· Trading networkn
nnn
nThis is COMIT.n

Leave a Reply

Your email address will not be published. Required fields are marked *