 How can assets be transferred between blockchains? How do they agree on the exchange contract? If nobody owns the implementation? Great question, Gabriel. Essentially, the way assets are transferred between blockchains is through a very basic smart contract. By that I mean, as basic, you can also implement it in a simplified language like Bitcoin script. These contracts are usually some form of multi-sig, or some form of merkle proof, that allows you to essentially lock value on one blockchain, and then release an equivalent amount of value on the other blockchain. The two parties who engage in a transfer exchange between two blockchains, this kind of atomic swap between two blockchains, have to agree in order to use that technology, and they have to choose which contract to use. There can be multiple implementations that transfer value between two blockchains, between sidechains, and you choose which implementation you are going to use. If somebody else is also using that implementation, then you can execute a swap with them. Multi-sig and time delays are parts of smart contracts. In some cases, I don't see why you would implement a smart contract system that didn't at least have the ability to have multiple owners or multiple signatures and time delays. I've never seen a smart contract language that didn't have those. Even Bitcoin, which most people don't call a smart contract platform, even Bitcoin script, has the basic ability. You don't need full smart contracts in order to do lightning payment channels. Just the ability to do basic multi-sig and time delays is usually enough. Do the participants of lightning network have to set up a smart contract? What I mean by smart contract is basically a Bitcoin address which has a script inside it, which contains a multi-sig, a time-out, a refund process, or a penalty process. That is used to continuously update the channel. You don't do any of that. Effectively, all of that is done by your lightning node or your lightning wallet automatically for you. It looks very similar to a Bitcoin payment. You'll receive a QR code which has a lightning invoice. You tell your wallet to pay that lightning invoice, and it finds a route within the network through which it can make a series of commitments to transmit a payment to the other party. That will execute in less than a second, in most cases, very, very fast. Your payment will be received at the other end. All of the smart contracts and multi-sig and all of those details managed by the wallets are completely invisible to the user. It just looks like a very, very fast Bitcoin transaction that can have very, very small amounts. You can do amounts that are even less than a Satoshi in terms of the amount of payment, and with very, very low fees, or sometimes no fees at all. Is lightning network a sidechain or a second layer? Very good question, Eric. Lightning is not a sidechain. Lightning is a second layer. That means lightning is a mechanism for transmitting payments off-chain, using an underlying blockchain for security. It allows you to route payments through payment channels, which are smart contracts using multi-sig and time delays. It allows you to transfer, for example, Bitcoin between two participants over a payment channel, without having to record it on the blockchain. Still, those two participants don't need to trust anything, because the underlying Bitcoin security is the basis of trust. Because something like lightning network is a multi-currency routed network, you can have nodes that are participating in lightning that are running Bitcoin. You can have nodes that are participating in lightning that run Litecoin. Theoretically, you could have nodes that participate in the lightning network that run Ethereum or whatever else. The requirements for a blockchain to be lightning-compatible, to be able to interact with these routed payment channels, are that it has certain fundamental security functions, including the ability to do multi-sig, and the ability to do time delays. Together with those two, you can implement what is called a hash-time-lock contract, which is the building block for payment channels and routed payment channels and lightning network. Lightning network is absolutely not a sidechain, it is a second layer. Theoretically, you could use it to connect sidechains to each other. You can, in fact, transmit a lightning payment from Bitcoin, and the recipient receives it in Litecoin, which is another blockchain, because both of them are lightning-compatible. You can effectively, that has made Litecoin and Bitcoin into sidechains of each other, with the Lightning network being the smart contract layer that connects them. If sidechains had to be created as a second layer from the original decentralized Bitcoin blockchain, does this mean centralization? Who runs, keeps, maintains, or is incentivized for that regarding sidechains? Great question, Christian. Sidechains aren't a second layer. The technology that connects two blockchains together is kind of a second layer. Not really. These are transactions within each of the blockchains. But sidechains are not really a layer. They are more a parallel stack, if you like. You have two stacks that operate side by side. You are right. Who runs, keeps, maintains, and is incentivized for the security regarding a sidechain? That is the most important question. Unless you can answer that question, you can't really say anything about the security of the sidechain. And keep in mind, sidechains are not... Sidechain is an attribute of a relationship. To be a sidechain to another blockchain means that one blockchain has the ability to transfer value, or peg value, in and out of another blockchain with some form of atomic swap mechanism. Neither of these is subordinate to the other. The term sidechain is often confusing. Bitcoin can be a sidechain to something else. In fact, if something is a sidechain to Bitcoin, then Bitcoin is a sidechain to this other thing. It simply means a chain on the side.