René Pickhardt is a self employed Data Science Consultant who has studied Mathematics, Physics and Chinese. Besides data analysis and extracting knowledge from data he is interested in scaling computer systems. After becoming aware of the Lightning Network in 2017 as the scaling solution to blockchain technologies and getting convinced that it is a viable solution he became an independent contributor to the Lightning Network Protocol in his free time. He has created the award winning lib_autopilot.py – a recommendation engine for nodes to automatically create channels. He also came up with the Just In Time Routing Algorithm (JIT-Routing) to increase the reliability of payments. During this work René realized that due to its novelty currently only a few people seem to fully understand the technology stack behind the lightning network.
Since he has 10 years of experience working in education he decided to focus on teaching as his main contribution to the Lightning Network community. That is why he decided to run a mostly technical Youtube channel about the Lightning Network and has recently committed to creating the first open source book about the Lightning Network. He is very pleased to hold a few sessions at the Blockchain Training Conference.
1. Bitcoin Payment Channels on the Lightning Network – A dive into the channel protocol
2. Onion Routing of Bitcoin payments on the Lightning Network with Hashed Time Locked Contracts
3. Path finding, Autopilots and Topology creation of the Lightning Network
1. We study the construction of the currently implemented payment channel mechanism. This is achieved by comparing the core idea of the construction with HTTP long polling. We take a high level view on the bitcoin scripts that are needed to create a Revocable Sequence Maturity Contract. After this construction is explained we look at why getting rid of transaction malleability (which was achieved with the segwit upgrade) was crucial to be able to securely set up Lightning Network payment channels. Understanding the basics of the cryptography we will also look at the Channel Protocol defined in BOLT 02 (Basics of Lightning Technologies is the name of the protocol specification for the Lightning Network) which includes the communication and data flow between peers on the Lightning Network to open and close a payment channel.
If time permits we will discuss problems and downsides (like asymmetric state or the difficulty to backup lightning nodes) with the current construction and proposals that could improve on them.
2. We start by comparing the payment process of Bitcoin in which the recipient can be offline with that of the Lightning Network where both parties are heavily involved in communication. We understand the concept of atomicity and understand on a visual level by comparing with a real world court system how a series of Hashed time locked contracts enable the forwarding of funds across a network of payment channels in a way that we do not have to trust the intermediary nodes. This will show how the Lightning Network is an effort to reduce the Bitcoin Blockchain to what it is best at – decentralizing trust – and move the value transaction layer off chain away from the slow Blockchain technology.
We will then look into more details how HTLCs are transported via onion Routing based on the SPHINX Mix format defined in BOLT 04. Once this is achieved we go back to BOLT 2 and add the last piece to the channel update protocol which is the protocol of how two nodes agree to set up and settle HTLCs.
If time permits we will discuss problems and downsides (like pathfinding, uncertainty or stuck payments) with the current construction and proposals that could improve on them.
3. In this rather research oriented talk we take a data science perspective and focus on the network part of the Lightning Network. After a short introduction of the Gossip protocol we discuss the issues with pathfinding and the incentives for nodes participate in routing. We will understand how the betweeness centrality score is roughly proportional to the expected earned routing fees of a node. We discuss how recommendation engines like the lib_autopilot.py can help us to create a robust network topology that increases the success of routing and decreases the difficulty of path finding. We will also look at other path finding strategies like JIT-Routing, Atomic Multipath Routing, trampoline payments as well as some ideas for congestion and flow control.
Since this session is research oriented the concrete topics are only tentative and might be changed on short notice and in response to ongoing trends.