Is there any possibility to make a Bitcoin payment without maintaining any channel with them? If you want to get an answer to this question, you need to take a look of Lightning. Then you will discover the basics of building a payment channel. However, getting to know Lightning is not an easy thing to do. That’s because exploring Lightning should only be done after having a good understanding of Bitcoin.
What exactly is Lightning?
Lightning can be defined as a network which consists of off-chain transactions. The transactions don’t go onto the Blockchain. In most of the cases, these are trustless and invalid transactions. The good news is that a person doesn’t need to get the assistance of a miner in order to make sure that a payment is confirmed or that they have been paid. In other words, you are never storing the transaction within a Public blockchain, where it would be duplicated to all the nodes in the network. As a result, Lightning will be abled to resolve some of the most prominent issues Bitcoin is currently facing, which include privacy and scaling.
The Payment Channels
Payment channels are the basic unit of a Lightning Network. They are engaged with the process of signing transactions continuously without submitting to your bank account. In here, both parties connected to the transaction send signed Bitcoins to each other. However, these transactions would never be propagated into the network. The transactions would usually be updated along with each payment. It is also possible for the people to send as many transactions as they want. When a specific transaction is sent to the miner, which takes place at the final step, and if it is confirmed on the blockchain, the channel would close.
When creating a payment channel, both parties included in the transaction will need to use a multisig address. It should be a shared one and both parties will have to agree on it. The channel can be opened by sending a specific amount of Bitcoins into the address. In here, both parties will have to send Bitcoins. It is also important to keep in mind that the amount you can receive is directly proportional to the exact amount that you initially put in.
There are smart contracts, which make sure that the two parties don’t have to trust each other. That’s mainly because there is no possibility for anyone to cheat. On the other hand, it is not possible for a specific party to hold back funds which belong to another party. A later payment cannot be revised by releasing an older transaction either. In order for the channel to perform without any trust, both parties need to be permanently online.
How channels establish a network
As you already know, the transactions that you do via Bitcoin are being validated and confirmed by Bitcoin miners. However, the Lightning transactions would directly go from the sender to the receiver. The receiver would validate and store the transaction.
The process of Lightning is jut associated with two parties. It is somewhat convenient to have two parties, instead of three. However, the picture becomes a little more complicated when a third party is being introduced. The person who initiates the Bitcoin transaction would be sending it to the third party, before it is received by the recipient. As you can see, the third party plays an important role in here. The Lightning network has the ability to eliminate the lags associated with it.
When it comes to a Lightning network, only two parties are associated with the transactions and the payments are being sent via channels. When you add more parties, the transactions would become more complicated. In fact, the primary objective of Lightning has been to eliminate these unnecessary parties from a Bitcoin transaction.
The specific architecture that can be found in a Lightning network is not well-known. However, it is possible to find a large number of endless possibilities. For example, a single person will be able to maintain a large number of channels. As a result, it would be possible to send payments on many different paths. The biggest doubt that you would get when analyzing this scenario is how the entire system works without any trust.
Hash Time Locked Contracts
The above question can be answered with the assistance of hash time locked contracts. When a Bitcoin payment is received, the recipient would create a random value. This random value is more similar to a password. In other words, a hash would be the end result of a cryptographic operation. This operation has two major properties. There is no possibility to recalculate the original value along with the hash. Hashes are one way functions. The random password created would act as a riddle. The person who initiated the transaction will need to solve the riddle. This would accept the transaction and a payment will be made at the end of the day. This is called a Hash Contract. As you can see, the Hash Riddle plays a major role behind Hash Contracts by accepting or rejecting transactions.