Hızla Ölçeklendirin: Bitcoin Lightning Ağı Açıklandı

Yayınlanan: 2022-03-11

Bitcoin Lightning Network, Bitcoin'i ana akım benimsemekten alıkoyan tüm sorunların çözümü olarak müjdelenen bağımsız bir çözümdür. Kasvetli ölçekleme sorununu çözmeyi, anında işlem yapmayı, işlem ücretlerini küçük tutmayı ve işlemlerinizi blok zincirinden çıkarmayı iddia ediyor. Çekirdek Bitcoin'den bağımsız bir sistem bu iyileştirmeleri nasıl sunabilir? Sıfır onay ile güvenli işlemler sunarak Bitcoin'in geleneksel kurallarını nasıl ihlal edebilir? Bitcoin Yıldırım Ağı nedir?

Bu yazımızda Bitcoin Lightning Network'ün gerçekte ne olduğunu, sağladığı garantileri nasıl sağlayabildiğini ve mevcut durumunu inceleyeceğiz.

Not: Bu makale Bitcoin'e aşina olduğunuzu varsaymaktadır. Kripto para birimlerinin nasıl çalıştığını bilmiyorsanız veya bilgi tazelemeye ihtiyacınız varsa, Aptallar için Kripto Para Birimi: Bitcoin ve Ötesi'ni okuyun.

Önkoşul: Bitcoin Ölçekleme Problemi

Bitcoin ölçekleme sorununun farkındaysanız, bu bölümü atlamaktan çekinmeyin, ancak bilmiyorsanız veya bilgi tazelemeye ihtiyacınız varsa okumaya devam edin.

Bitcoin'in ölçekleme sorunu var. Bitcoin, tüm işlemleri blok adı verilen bir veri yapısında depolamak için tasarlanmıştır. Bir blok, önceki blok hakkında bilgiler, madencilik ödülleri hakkında çeşitli veriler içerir ve bloğun çoğu sadece işlem verileridir. Bloklar ayrıca maksimum 1 MB boyutunda sabitlenmiştir. Bu son kısım, sorunun olduğu yer.

Blokların boyutu 1 MB olduğundan ve her 10 dakikada bir blok oluşturulduğundan, işlemlerin SegWit olmadığı varsayılarak (daha sonra gelecek) ağ saniyede maksimum 3,3 ile 7 arasında işlem gerçekleştirebilir. Milyarlarca insan ve onların makineleri tarafından toplu kullanım için tasarlanmış bir para birimi için, saniyede 7 işlem sadece eşit değil. Visa ise saniyede 24.000 işlem gerçekleştirebileceğini iddia ediyor.

İşlem sayısı artmaya başladıkça, bireysel işleminiz sınırlı bir blok alanına dahil olmak için birbiriyle rekabet eder ve böylece sizinkinin bloğa dahil olma olasılığı azalmaya başlar. Madenciler bir bloğa hangi işlemlerin dahil edileceğine keyfi olarak karar verebildikleri için, bu durumlarda madencileri işleminizi dahil etmeye teşvik etmenin tek yolu işlem ücretinizi artırmaktır. Bununla birlikte, bu, işlemleri aşırı derecede pahalı hale getirmeye başlar - örneğin, işlem ücretinin 14,86 $ olduğu 92,98 $'lık bu 192 baytlık işlem gibi.

Peki, Bitcoin'i nasıl “ölçeklendiririz”? Büyük Ölçekli Bitcoin Alev Savaşları'nın üç ana düşünce okulu veya - benim onları adlandırmayı sevdiğim gibi - savaşları vardır:

  • Artan blok boyutu: 2X, 8X, …, ∞X
  • Daha küçük işlemler: SegWit ve ark.
  • Yan Zincirler: Bitcoin Yıldırım Ağı

Artan Bitcoin Blok Boyutu

Bunu anlamak oldukça basit: Sorun 1 MB'lik blok sınırıysa, onu büyütün! Bu konudaki tartışmalar şiddetliydi ve hala devam ediyor. Sonunda 1 Ağustos 2017'de Bitcoin (BTC) forklandı ve Bitcoin Cash (BCH) doğdu. İkisi arasındaki en büyük fark, BCH'nin 8 MB bloğa sahip olmasıdır. Bu, blokları çoğunlukla boş tutar ve ücretleri çok düşük tutar.

Bununla birlikte, 8 MB blok, toplam BCH blok zinciri boyutunun çok daha hızlı bir oranda artacağı anlamına gelir ve bu da depolama maliyetlerini madenci sahnesine giriş için önemli ölçüde daha yüksek bir engel haline getirir. Argüman, bunun blok zincirini de güvence altına alan toplam madenci sayısını azaltacağı ve Bitcoin ağının ademi merkeziyetçiliğini ve genel güvenliğini azaltacağıdır.

Daha büyük bloklara yönelik bir başka eleştiri, sorunun kendisini çözmemesidir; bunun yerine, sorunu geçici olarak düzeltir. Daha büyük bloklarla her zaman bir maksimum sınır olacaktır ve maksimum sınır her zaman ulaşmaya çalıştığımız hedef sınırdan çok daha az olacaktır: saniyede 24.000 işlem. Daha büyük 8 MB bloklarıyla bile, BCH'nin saniyede 61 işlem sınırı vardır.

Daha Küçük İşlemler: Ayrılmış Tanık

Diğer çözümler, mevcut işlem formatının en verimli olmadığına ve aynı blokta daha fazla işlemi paketlemeyi amaçladığına işaret ediyor. Bunların en dikkate değer olanı, BIP 91 aracılığıyla önerilen ve 25 Ağustos 2017'de 481824 numaralı blokta etkinleştirilen Ayrılmış Tanık (SegWit) olarak adlandırılır. SegWit artık Bitcoin'in bir parçası, sevinin!

SegWit olmayan ve SegWit bloklarının karşılaştırılması
David A. Harding'in bir çizimine dayalı olarak SegWit olmayan ve SegWit bloklarının karşılaştırılması

SegWit, işlemlerden imza verilerini alır ve bunları işlem bloğundan ayrı bir yapıda saklar, böylece bireysel işlemleri küçültür ve her blok içindeki sınırlı alanı daha iyi kullanır. Bu yapı daha sonra blok zinciri senkronize edilirken isteğe bağlıdır ve diskte küçültülmüş bir boyuta yol açar.

Bu aynı zamanda işlem biçimlendirilebilirliği sorununa bir çözüm getirir ve yalnızca SegWit çıktılarını harcayan işlemler artık savunmasız değildir.

Bitcoin Yıldırım Ağı

Lightning Network, eşler arasında imzalanmış ancak yayınlanmamış işlemleri ileten ve yalnızca fonların nihai yerleşimi için Bitcoin blok zincirine dayanan ikinci katman bir ağdır. Bu, işlemlerin blok boyutuyla sınırlı olmadığı, onay sürelerinin önemsiz olduğu ve Bitcoin blok zincirinin gerçekleşen her işlemi depolaması gerekmediği anlamına gelir.

Bitcoin Lightning Network'ü kim geliştirdi? İlk olarak Joseph Poon ve Thaddeus Dryja tarafından yazılan bir teknik incelemede tanımlanmış, ancak o zamandan beri üçüncü taraf bireyler ve hatta spesifikasyonlara ve uygulamalara katkıda bulunan şirketler ile bir topluluk çabasına dönüşmüştür.

Daha fazla bilgi daha sonra.

SegWit ve Artan Blok Boyutu ve Bitcoin Lightning Network

En iyisi hangisi peki? Cevabımı dayandıracak deneysel bir kanıtım yok, bu yüzden bu bir fikir: Blok alanının (bir la SegWit) daha iyi kullanılmasının iyi bir şey olduğunu düşünmeme rağmen, blok boyutundaki bir artışın itme gibi olacağını düşünüyorum. geleceğe kale direği. Bitcoin kullanımı önemli ölçüde artacak olsaydı, kendimizi blok boyutunda başka bir artış hakkında tartışmanın başlangıcında bulurduk.

Aynı fikirde olmamak? Aşağıda bir yorum bırakın!

Bununla birlikte, Bitcoin Lightning gibi alternatif bir yerleşim ağının harika bir fikir olduğunu düşünürken, gerçek dünyada nasıl çalıştığını görmek için de bekliyorum. Şu an itibariyle, babam ve benim kullanabileceğimiz durumda değil.

Bitcoin Lightning Ağı Açıklandı

Lightning Network'ün, eşler arasında imzalanmış ancak yayınlanmamış işlemleri ileten ve yalnızca fonların nihai yerleşimi için Bitcoin blok zincirine dayanan ikinci katman bir ağ olduğundan daha önce bahsetmiştim.

Bunun gerçek hayatta nasıl çalışacağına bir göz atalım.

Yıldırım Düğümleri ve Kanalları

Bir Lightning düğümü, ağ bağlantılı bir şekilde çalışması, işlemleri doğrulaması ve diğer düğümlerle iletişim kurması bakımından bir Bitcoin düğümüne çok benzer ve ondan farklı olarak çalışır, ancak Bitcoin düğümlerinin geçmişte yapmadığı şeyleri yapar: fonları tutar, otomatik bir finansal aracı olarak hareket eder. , Lightning "kanallarını" kötü niyetli davranışlara karşı aktif olarak izler ve savunmaya geçerek tepki verir (bu daha sonra ayrıntılı olarak açıklanacaktır), vb.

Bu işlevleri yerine getirmek için düğümlerin paraya ihtiyacı vardır.

Not: Bu örnekler, başlangıçta herkesin 7/24 internete bağlı bir Bitcoin Lightning Network düğümü çalıştırdığını varsayıyor, ki bu kesinlikle böyle olmayacak. Bu varsayım, Lightning Wallet ve Lightning Node bölümünde bozulacaktır.

Yıldırım Kanalı Oluşturma

Farz edin ki siz ve arkadaşınız Bob, makul miktarda finansal işlem içeren bir ilişkiniz var. Arada bir öğle yemeğine çıkıyorsunuz ya da film izliyorsunuz. Bazen biriniz nakit sıkıntısı çekiyor, bazen diğeriniz ve genellikle birbirinize Venmo-ing yapıyorsunuz.

Bununla birlikte, kripto savunucuları olarak, ikiniz de Lightning'i denemeye ve her biri yarım bitcoin ile eşit olarak finanse ettiğiniz yeni bir ortak kanal oluşturmaya karar veriyorsunuz (bu çok fazla öğle yemeği).

Bitcoin Lightning Network'te bir kanal oluşturan iki düğümün çizimi

Yeni bir Lightning kanalı oluşturmak, bir işlemi onaylamak için her iki imzanızı da gerektiren çok imzalı bir bitcoin cüzdanı oluşturmaya benzer, ancak bir farkla; Lightning Network teknik incelemesine göre, her biriniz imzalanmış ancak henüz yayınlanmamış bir "Taahhüt İşlemi" alırsınız ve bu, ilk para yatırma işleminizi size geri döndürür. Bu sayede arkadaşlığınız zorlu bir süreçten geçerse veya ikinizden birinin paraya ihtiyacı olursa bu işlemi yayınlayarak kanalı tek taraflı olarak kapatabilirsiniz ve herkes hak ettiği miktarı alır.

Kanallarınızın Olduğu Kişilerle Şimşek İşlemleri Yapmak

Diyelim ki bir gün tekrar öğle yemeğine çıktınız ve Bob'a 8.000 satoshi eşdeğeri (bunu yazarken 0.31 USD) borçlusunuz. Şu anda, bu tutarı kapatmak için Bitcoin kullanırsanız, 0.10 USD ödersiniz ve bir saat beklersiniz, bu da imkansız hale gelir.

Kanal durumlarını güncelleyen iki düğümün çizimi

Ancak Lightning ile, “Taahhüt İşleminizi” ikinizin de tutunacağı yeni bir işlemle değiştirerek bunu ücretsiz olarak yapabilirsiniz. Sadece bu sefer Bob'un 8.000 satoshisi daha var ve senin daha azı var. (Bu noktada eski işlemi yayınlayarak hile yapmayı düşünüyorsanız Kanal Kapatma bölümüne kadar bekleyiniz.)

İşlemi yayınlayabilir ve kanalı kapatabilirsiniz, ancak, kanalı kapatmak işlem ücretlerine neden olur ve ikinizin de miktara hemen ihtiyacı olmadığı için, sadece kanalı tutabilir ve gelecekteki borçları kapatmak için kullanabilirsiniz.

Kanalınız Olmayan Kişilerle Yıldırım İşlemleri Yapmak

Diyelim ki bir gün Bob, arkadaşlarından biri olan Alice'i davet ediyor ve yoğun bir saat sandviç yedikten sonra, ikiniz de Alice'e borçlusunuz çünkü dükkan sadece Coinye'yi (Kanye West'e dava açtıktan sonra terk edilmiş, feshedilmiş bir kripto para birimi) kabul etti ki bu Alice oldu. sahip olmak.

Çok sekmeli bir yıldırım işleminin çizimi

Şimdi, Bob'un Alice ile açık bir kanalı olduğunu varsayarsak, Lightning ile Alice'e Bob aracılığıyla da ödeme yapabilirsiniz. Düğümünüz, sizinle Alice arasındaki en uygun rotayı hesaplar - bu durumda, Bob finansal aracıdır - ve aracıların tümü, isterlerse küçük bir ücretle ileriye doğru para ödeyebilirler.

Bir Kanalı Kapatmak: İki İyi Yol ve Bir Kötü Yol

Bir Yıldırım Kanalını kapatmanın üç yolu vardır:

  1. İşbirliği içinde: Kanaldaki taraflardan herhangi biri bir Bitcoin Lightning kanalının kapatılmasını başlatır ve diğeri onaylar. Zaman kilidi yoktur ve onay onaylanır onaylanmaz para harcamaya hazırdır. Bu, bir kanalı kapatmanın "en iyi" yoludur.
  2. Tek taraflı olarak: Taraflardan biri istediği zaman, diğer taraf onaylamasa dahi kanaldaki taraflardan herhangi biri Bitcoin Lightning kanalını kapatabilir. Bu, diğer tarafın bir “İhlal Çözümü” işlemiyle kapatmaya itiraz edebileceği bir zaman kilidiyle sonuçlanır (aşağıdaki senaryo 3'e bakın), ancak bunun olmadığını varsayalım. Zaman kilidi sona erdikten sonra, fonların kullanımı ücretsizdir. Bu, bir kanalı kapatmanın "kabul edilebilir" bir yoludur.
  3. İhlal Çözümü: Yıldırım işlemleri, fon dağılımının değiştiği imzalı işlemlerin zaman damgalı bir listesi olduğundan, bir tarafın daha fazla fona sahip olduğu eski bir işlemle bir kanalı tek taraflı olarak kapatarak hile yapmaya (güveni ihlal etmeye) çalışması mümkündür (bkz. senaryo 2). Bu, bir zaman kilidi ile sonuçlanır ve bu süre zarfında, mağdur taraf yalnızca kendi fonlarını geri almakla kalmaz, aynı zamanda Bitcoin Lightning Network teknik raporunda açıklandığı gibi bir "İhlal Çözümü" işlemi kullanarak kanalın tüm kapasitesini kaydırabilir.

Lightning Node ve Lightning Cüzdanı

Yukarıdaki örnekte, düğümünüzü internette 7/24 çalışır durumda tutmanız gerektiğini düşündürecek olan Lightning "düğüm" terimini kullandık. Ve evet, haklı olurdun. Lightning Network, düğümlerin her zaman çevrimiçi olacağı şekilde tasarlanmıştır ve ağın maksimum kapasiteye yakın çalışmasını sağlar. Ve eğer kimse bir hile girişimini izlemek için çevrimiçi değilse ve başarılı olursa, kanal normal bir tek taraflı kapanış gibi kapanacak ve sizi parasız bırakacaktır.

Ancak, Lightning Network teknik incelemesi bu soruna bir çare açıklar:

…kişi, karşı tarafın geçersiz bir Taahhüt İşlemi yayınlayıp yayınlamadığını görmek için blok zincirini periyodik olarak izlemeli veya bunu yapması için üçüncü bir tarafı görevlendirmelidir. Üçüncü bir taraf, yalnızca İhlal Çözümü işlemini bu üçüncü tarafa vererek yetkilendirilebilir. Bu üçüncü taraflara çıktıda bir miktar ücret verilerek, karşı tarafın kötü niyetli olması durumunda blok zincirinin böyle bir işlem yayınını izlemeleri teşvik edilebilir. Üçüncü kişi ancak karşı taraf kötü niyetli hareket ettiğinde işlem yapabileceğinden, bu üçüncü kişinin kanalı kapatmaya zorlama yetkisi yoktur.

Bu üçüncü taraflara genellikle gözetleme kuleleri denir ve kullanıcıların her zaman çevrimiçi olma yükünü kaldırmaları gerekir.

Yıldırım Ağının Durumu

27 Mart 2019 itibariyle Bitcoin Lightning Network:

  • 7,5 binden fazla düğümü var
  • 40 bine yakın açık kanalı var
  • Kapasitesi 1 bin BTC'nin biraz üzerinde

Şu oranda büyüyor:

  • saatte 25 düğüm
  • saatte 304 kanal

Play Store'da çok sayıda Lightning Network düğüm uygulaması, hatta Eclair Lightning Wallets bile var. Henüz deneysel, cilasız ve fon almanın önemli bir özelliği yok ama bence eko sistem küçük olsa da sağlıklı büyüyor.

Özellikler ve Uygulamalar

Bitcoin Lightning Network özelliği, Açıklama İsteği (RFC) durumundadır ve Temel Yıldırım Teknolojisi (BOLTS) adı verilen bir dizi belgeden oluşur. Cıvatalar bu yayından itibaren sürekli değişiyor ve katkıları memnuniyetle karşılıyor.

Lightning Network düğümlerinin BOLT uyumlu birkaç uygulaması da vardır:

  • LND: Lightning Network Daemon'un kısaltması olan bu, öncelikle Go tabanlı bir uygulamadır.
  • Eclair: Öncelikle Scala tabanlı bir uygulama.
  • C-lightning: Öncelikle C tabanlı bir uygulama.

Daha fazla kaynak için bu makalenin sonucuna bakın.

Aydınlatma Ağının Avantajları ve Eleştirileri

Peki Lightning Network ile neler başarabiliriz?

  • Gerçek mikro işlemler (kuruşların kesirleri)
  • Akla gelebilecek en düşük ücretler (kuruşların kesirleri)
  • Bir dereceye kadar gizlilik (blok zinciri kaydı yok)

Ancak, daha önce de söylediğim gibi, Lightning Network'e yönelik bir takım eleştiriler var, bunlardan bazıları Lightning'in karşılaştığı geçerli ve mevcut henüz çözülmemiş zorluklar:

  • Yönlendirme ve merkezileştirme: Lightning Network, her gün değişen, açılıp kapanan kanal durumları ile sürekli bir akış içinde olduğundan ve geri dönülecek merkezi bir geçmiş deposu olduğundan, ödeme yollarının her seferinde yeniden hesaplanması gerekir. Bu, ağ küçük olduğunda harikadır, ancak yeterince büyüdüğünde, küçük donanım üzerinde çalışan küçük düğümünüz rotayı hesaplamak için işlem gücüne sahip olmayabilir. Bu sorunun çözümü, sorgulayabileceğiniz gelişmiş bilgiye sahip merkezi bir süper düğüm olabilir. Bu, burada daha ayrıntılı olarak açıklanmaktadır.
  • Çok fazla borç verme: En iyi şekilde bu gönderide anlatılıyor, hatta Ethereum'un kurucu ortağı Vitalik Buterin'i bile dahil ediyor. sonunda 100$'lık fonu hareket ettirir. Bir noktada, büyük miktarları taşımak olanaksız hale gelir. Bunun gerçek dünyada geçerli olup olmadığı henüz belirlenmedi, ancak bu yine de zorlayıcı bir argüman.

Eleştirileri kaçırdım mı? Lütfen aşağıdaki yorumlarda bana bildirin.

Ek Okumalar ve Kaynaklar

Umarım sonunda Lightning Network'ün gerçekte ne olduğunu anlamışsınızdır. Hepsinin altında, sadece kriptografik belirteçlerin değiş tokuşunu temel alan bir mesajlaşma sistemi var. Henüz mükemmel veya yaygın olarak kullanılabilir değil, ancak bu etkileyici bir mühendislik parçası olmadığı anlamına gelmiyor.

Orijinal Bitcoin Lightning Network teknik incelemesini okumanızı tavsiye ederim. Ayrıca daha fazla okuma ve uygulama, kitap ve makale listesi önerebilirim, ancak GitHub kullanıcısı Ben Congdon zaten ileri gitti ve bunu yaptı, bu yüzden kontrol bcongdon/awesome-lightning-network . Teşekkürler Ben! Bir Bitcoin geliştiricisi olarak, bu yeni teknoloji hakkında mümkün olduğunca çok şey okumayı kendinize borçlusunuz.

Tüm bunlar çok fazla bilgiyse, bunu eğlenceli bir notla bitirelim. İşte, Bitcoin'in güzel günleri hakkında konuşmaya çalıştığı iddia edilen Satoshi Craig Wright'ın eğlenceli bir videosu.