Tarihte yolculuk ve Lightning Network’e ilk adım
Satoshi Nakamoto 2008 yılında Bitcoin’i tanıtmak için insanlara mailler gönderiyordu. James A. Donald adında anonim bir şahıs bu maillere ilk dönen kişi olmuştur.
James A. Donald, Bitcoin gibi bir sisteme gerçekten ihtiyaç olduğunu ancak anladığı kadarı ile Bitcoin’in fazla transfer yapmaya müsait olmadığını ve gerçek bir para olması için bunu yapması gerektiğini Satoshi’ye söylemiştir.
Satoshi Nakamoto Bitcoin’in bir güven zinciri olduğunu, Bitcoin’in hızlanması durumunda merkeziyesizlik ve güvenlikten taviz verileceğini söylemiş, James A. Donald ise Bitcoinleri en küçük birimine kadar binlerce kez gönderebileceğimiz Bitcoin ağını destekleyen anonim bir katman oluşturma fikrini söylemiş ve bu Lightning Network için bilinen ilk fikir olmuştur.
O zaman nedir bu “Katman”
“Katman” yani Layer, bir zincirin üzerinde çalışan, bu zincir ile iletişim kurabilen ayrı bir zincirdir. Bitcoin Layer1 ise Lightning Network ise Layer2’dir.
Eğer Bitcoin’i ölçeklemek ve hızlandırmak Layer1’de (yani zincirin kendisinde) mümkün olmuyorsa, Bitcoin’ler ayrı bir katmana (Layer2) gönderilip burada hızlı bir ödeme sistemi oluşturulabilir. Evet, Lightning Network bir Layer2 çözümdür. Yani Lightning Network aslında Bitcoin’den hariç bir ağdır.
İşte James A. Donald’ın bu fikri 2015 Şubat ayında yapılmaya başlanan Lightning Network’ün kurulması ile elle tutulur bir noktaya gelmeye başlamıştır.
Peki Lightning Network nasıl hızlı olabiliyor?
Çünkü Lightning Network bir blokzincir teknolojisi değildir. Blokzincirler için meşhur trilemmadan bağımsızdır. Bildiğiniz üzere Blokzincirler hızlanabilmek için Güvenlik veya Merkeziyetsizlikten ödün verirler. Ancak Lightning Nework için bu durum söz konusu değildir.
Lightning Network’ü anlatmaya başlamadan önce, Layer2 çözümlerin tek olmadığını ve bir çok farklı Layer2 çözümlerin mevcut olduğunu söylemek gerekir. Layer2 çözümleri 5 başlık altında toplayabiliriz.
State Channels (Lightning Network, Raiden Network)
Side Chains (Liquid Network, Polygon PoS Chain)
Plasma (OMG Plasma, MATIC Plasma)
Validium (zkSwap, DeversiFi)
Rollups (Optimism, zkSync)
Bu çözümlerden örneğin Side Chains tıpkı bir blokzincirdir. Dolayısı ile bir zincir hızlı bir Sidechain ise, mutlaka ya güvenlikten ya da merkeziyetsizlikten ödün vermiş demektir.
Lightning Network ise bir State Channel türüdür. State Channel çözümler bir blokzincir teknolojisi değildir ve hemen her blokzincir için üretilebilecek bir Layer2 çözümdür. Bitcoin için Lightning Network, Ethereum için Raiden Network birer State Channel’dır ve bu zincirler üzerinde çalışan ikinci bir katman yapılardır. State Channellar blokzincir olmadıklarından çok hızlı sistemlerdir ve hemen hemen hepsi aynı mantıkta çalışırlar.
Peki State Channellar nasıl çalışır?
Öncelikle State Channellar için tekrar edelim, bir Layer2 çözümdür. Dolayısı ile Layer1’de olan (yani bildiğimiz Bitcoin ve Ethereum ağındaki) BTC veya ETH’lerin bu katmana taşınması gerekir.
Yani Lightning Network kullanmak için Bitcoin ağından biraz BTC’yi bu ağa getirmek gerekiyor. Bu ön bilgiden sonra çok güzel bir örnek ile Lightning Network’ü anlatmaya çalışalım.
“Kullandığın kadar öde” bir telefon paketi aldığımızı düşünelim. Bu pakete göre her 1 dk için size 0.50 TL’lik bir faturalandırma yapsın.
Diyelim 10 dk boyunca biri ile konuştunuz. Bu konuşmanın faturalandırması Bitcoin ağında olsaydı şöyle bir ödeme metodu olacaktı:
1. dakika bitti: 0.50 TL öde. (Transfer ücreti ver.)
2. dakika bitti: 0.50 TL daha öde (Transfer ücreti ver.)
3. dakika bitti: 0.50 daha öde (Transfer ücreti ver.)
..
.
Bu şekilde 10 dakikayı tamamladığınızda, 10 ayrı dakika için ayrı ayrı 10 ödeme yapmış olacaksınız. Hem 5 TL toplam ödeme yapmış hem de 10 kere transfer ücreti ödeyeceksiniz.
State Channel şunu der. “Sen ile telefoncu arasında bir ödeme kanalı oluşturalım, bu kanal içerisinde taraflar dilediğince transfer yapsınlar, transferleri bitince istedikleri zaman Layer1’e geçerler.”
Yani bu 10 dakikalık görüşme State Channel ile olsaydı, sadece 10 dakikanın sonunda ödeme gerçekleşmiş olacaktı ve ödemeyi alan taraf istediği zaman bu parayı Bitcoin ağına çekebilecekti.
Buradan iki şey öğrendik.
Kanal yalnızca iki kişi arasında açılıyor. Bu kişiler istediği zaman bu kanalı kapatıp, blokzincire geçiş yapabilirler.
Ödeme kanalı blokzincir olmadığından işlemler son derece hızlı ve ucuz oluyor.
Bu kanal içerisindeki bütün ödemeleri ve kayıtları ise Lightning Network’e ait Bitcoin’den ayrı düğümler tutuyor. Dolayısı ile bir kere Bitcoin’den Lightning Network’e geçiş yaptığınızda sonrası için yapılan her işlem Lightning Network ile alakalı. Bitcoin ağı ile işiniz yok.
Lightning ile bir ödeme kanalı açtık ve bu kanalın sadece iki kişi arasında olduğunu öğrendik. Yani bir kanal içerisinde 3 kişi olamaz. Peki başka birisine para göndermek için sıfırdan kanal mı oluşturmak gerekiyor?
Hayır.
Resmi inceleyelim. A kişisinin B kişisi ile bir kanalı olsun. B kişisinin de C kişisi ile ayrı bir kanalı olsun. Bu durumda A kişisi C kişisine direkt para gönderimi yapabilir. Yani kurulan her kanal birbiri ile bağlantılı. A ile C birbiri ile direkt kanal bağlantısı olmamasına rağmen birbirine ödeme yapabilirler.
Durumu biraz daha karıştıracak olursak, A kişisi B kişisine para gönderebilir diyebiliriz. Aralarında direkt bir bağlantı yok ancak kurulan kanallar aracılığı ile gönderim yapılabilmektedir. Dolayısı ile Lightning Network kanalları açıldıkça ve sayıca fazlalaşınca sistem daha da kullanılır olmaktadır.
Peki Lightning Network gerçekten hızlı mı, evet. Lightning Network saniyede milyonlarca, hatta milyarlarca transfer yapabilir ve bu transferler neredeyse bedavaya mal olmaktadır.
Bitcoin’deki transferleri sıraya dizen ve blokzincire ekleyen madenciler ve herkes tarafından kurulan sistemdeki düğümler transferleri kontrol ederler ve olası bir üç kağıta karşı Bitcoin’i güvenle korurlar. Lightning Network bir blokzincir değildir, ancak unutulmamalıdır ki Lightning Network’ün de korunması gerekir.
Lightning Network’ü koruyan düğümler vardır. Bu düğümlere Watchtower denilir. Watchtower’lar işte bu transferleri izlerler, üç kağıt yapan kanalları cezalandırırlar. Watchtowerlar Lightning’deki her kanalı ve hareketi gözlemleyen 3. parti düğümlerdir. Dolayısı ile Watchtower’lar Lightning’deki gizli transferleri ve yapılan kasıtlı üç kağıtları sensörlemiş olurlar.
Her şey mükemmel mi?
Hayır. Öncelikle Lightning Network’ün en büyük problemi kanalı kuran kişilerin online olması gerekliliğidir. Eğer Lightning Network’te kurulan bir kanalda mevcut iki kişiden biri offline duruma geçerse, kanal kullanım dışı kalır. Kanalın tekrar kullanılabilmesi için offline olan kişinin tekrardan online olması gerekir. Yukarıdaki örnekte A — B — C kişileri arasında, A kişisi C’ye gönderim yapacakken B kişisinin offline olması, C kişisinin ödemeyi alamayacağı anlamına gelir. Ödemenin gerçekleşebilmesi için B kişisinin tekrar online olması gerekir. Ayrıca Watchtowerların Lightning ağını kontrol etmesi ağdaki gizliliği tamamen bitirmektedir.
Son sözler ve yorumlarım
Unutulmamalıdır ki, Lightning Network 6 senedir hala daha Beta sürümdedir ve halen deney aşamasındadır. Lightning Network üzerindeki Spam saldırıları vb. konular hala daha çözülmeye çalışılmaktadır ve Lightning üzerinde yüklü transferler hala daha yoktur.
Lightning Network içerisindeki Bitcoin sayısı artsa da, sadece 1700 adet Bitcoin mevcuttur. Bu durum Lightning Network’ün hala daha çok az kullanıldığını gözler önüne sermektedir.
Son olarak, güvenli ve merkeziyersiz blokzincirler için ucuz ve hızlı ödeme yapılmasının en önemli yollarından birisi Layer2 çözümlerdir. Ethereum için Sharding potansiyel bir Layer1 çözümü olsa da, Bitcoin için Sharding mimarisi mümkün değildir. Dolayısı ile Bitcoin için Layer2 çözümler, özellikle Lightning Network Bitcoin’in ödeme aracı olmasındaki belki de en önemli metot olarak görünmektedir.