Bu, blockchain yazılım istemcilerine ve bunların ağdaki düğümlerle ilişkilerine ilişkin temel, üst düzey bir genel bakıştır.
Blok zinciri etrafında güvenlik ve ademi merkeziyet konuları gündeme geldiğinde, tartışma iki kamptan birine, mutabakat mekanizmalarına veya düğüm donanımına düşme eğilimindedir.
Elbette bunların ikisi de ele alınması gereken geçerli ve önemli noktalardır, ancak gözlerden gizlenen başka bir vektör daha vardır.
Bu, düğüm istemcisidir.
Müşteri Nedir?
Blok zinciri/DLT’ler bağlamında, bir istemci, bir düğümü ağa bağlayan ve kullanıcının blok zincirine/bloktan bilgi okumasına/yazmasına izin veren bir yazılım parçasıdır. Bu nedenle, bir madencinin ağa katılmak ve katılmak için donanım cihazına bir yazılım istemcisi yüklemesi gerekir.
Blockchain = Sunucu
Düğüm = istemcili donanım
İstemci = yazılım
İstemciler, işlemleri işlemek için bir yürütme ortamı, işlem verilerinin depolanması, P2P ağ oluşturma araçları ve doğrudan ağ ile arayüz oluşturmak için API’ler dahil olmak üzere temel ağ operasyonel işlevselliği sağlar.
Her blok zincirinin, o belirli zincirin protokol/mutabakat kurallarına uyan kendi istemci yazılımı olmalıdır. Ethereum istemcileri Bitcoin’de çalışmaz ve bir Bitcoin istemcisi Solana’da çalışmaz.
Her müşteri, yazıldığı dile ve kendi benzersiz operasyonel özelliklerine göre değişiklik gösterecektir. (bazıları bellek optimizasyonuna odaklanırken diğerleri yan zinciri başlatmak için konsensüs modülerliği yoluyla performans optimizasyonuna odaklanabilir).
Müşteri Türleri
Genel olarak konuşursak, istemciler düğüm uygulama türlerine göre kategorilere ayrılır. Tipik olarak, bir blok zinciri için dört (3 + 1) türde düğüm istemcisi vardır; tam düğümler, arşiv düğümleri, basit düğümler ve madenci düğümleri.
Tam Düğümler/İstemciler:
Ağ güvenliğine/fikir birliğine katkıda bulunan ve zincirin en son durumunu depolayan bir ağdaki en yaygın düğüm türü. Blokları doğrulayan, işlemleri doğrulayan ve verileri diğer düğümlere sunan ana bilgi taşıyıcıları olarak hareket ederler. Bu düğüm türleri, işletilmek için herhangi bir teşvik sağlamaz, ancak bir zincire doğrudan bağlantı aracı olarak işlev görür.
Arşiv Düğümleri/İstemcileri:
Tüm düğüm türleri arasında bellek açısından en talepkar olan arşiv düğümleri, bir blok zincirinin tüm geçmişini saklar. Bir arşiv düğümünü çalıştırmak için muazzam miktarda depolama alanı gerekir; bu nedenle, bunlar nadiren bireyler tarafından yönetilir. Bir zincir belirli bir aşamaya ulaştığında, sunucu çiftlikleri veya kurumsal düzeyde makine kümeleri gerekir. Bu düğümler, güçlü ağ güvenliği ve kaşifler veya zincir üstü veri analitiği gibi veri bakımından zengin hizmetler sağlamak içindir.
Basit Düğümler/İstemciler:
Bazen SPV (basitleştirilmiş ödeme doğrulama) düğümü olarak da adlandırılan bu istemci sürümü, durumun yalnızca küçük bir bölümünü içerir ve yalnızca belirli bir bilgi kümesiyle ilgili verileri depolar. Hafif düğümler, zincir üzerindeki verilere erişim elde etmek için tam bir düğüme bağlanır. Hafif düğümün iyi bir örneği bir cüzdandır. Cüzdanlar yalnızca belirli bir hesapla ilgili bilgileri gerektirir ve ağ işlemlerine katılma isteği/gereksinimi yoktur. Bunlar, temel kullanıcı uygulamalarının çoğu için istemcilerdir.
Madenci Düğümleri/İstemciler(+1)
Bunun bir +1 olmasının nedeni, bir düğüm istemcisinin bu varyasyonunun tüm blok zincirleri için geçerli olmamasıdır; staking ağlarında mevcut değildir ve yalnızca POW zincirleri için geçerlidir. Adından da anlaşılacağı gibi, madenci düğümlerinin tek bir işlevi vardır, madencilik yapmak. Bu istemci türleri, Bitcoin’deki ASIC’ler gibi tek amaçlı ekipmanlara uygun olacak şekilde gelişti. Bazen bu işlev tam düğüm işlemleriyle iç içe geçer, ancak çoğu zaman ayrı bir işlev olacaktır.
Tek Müşteri İkilemi ve Ortak Endişeler
Bir blockchain ağının yalnızca bir müşterisi olduğunda, bu bir güvenlik sorunu olarak hizmet edebilecek iki ucu keskin bir kılıçtır. Tabii ki, herhangi bir hikayenin her zaman birden çok tarafı vardır, ancak temel gerçek şu ki, istemci protokolünün yalnızca bir uygulamasıyla, bu uygulamadaki tek bir hata/güvenlik açığı/hata potansiyel olarak tüm ağı tehlikeye atabilir.
Soru: İstemcide bir hata bulunduğunda/bulunduğunda ne olur?
1. taraf: O zaman tüm ağ risk altındadır.
2. taraf: tüm geliştirici çabaları tek bir amaca tahsis edilirse, başlangıçta hata riski daha düşüktür.
Soru: Bir bilgisayar korsanı bir istemcide bir güvenlik açığı bulduğunda/bulduğunda ne olur?
1. taraf: O zaman tüm ağ ve katılımcıları risk altındadır.
2. taraf: … yorum yok…
Soru: İstemci, yeni geliştiricilerin katılmasını engelleyecek ve özel olarak eğitilmiş katı bir geliştiriciler kümesi gerektirecek şekilde tasarlanmışsa ne olur?
1. taraf: Bu daha sonra yeniliği engelleyen bir darboğaz yaratır.
yan 2: Bu daha sonra daha kaliteli özel amaçlı geliştiriciler oluşturur.
MCA — Çok İstemcili Mimari
Çoklu İstemci Mimarisi, birden çok istemcinin olduğu bir yazılım tasarım ilkesini ifade eder. bağımsız belirli bir blockchain protokolü için bir istemcinin uygulamaları.
MCA’nın bir blockchain ağının genel sağlığını ve esenliğini iyileştirmesinin dört belirgin nedeni vardır:
- Hata toleransı:
Tüm ağı etkileyen tek bir hata veya güvenlik açığı riski azalır. Örnek olarak, 1.000 düğüm ve 4 istemciden oluşan bir ağ ele alalım. Tek bir istemcinin arızalanması ve tüm ağ düğümlerinin %25’ini devre dışı bırakması durumunda, ağ kesintisiz çalışabilecektir. Yalnızca o bozuk istemci olsaydı, tüm ağ dururdu. - Saldırılara karşı dayanıklılık:
Birden çok bağımsız uygulamada, bir saldırganın ağ üzerinde önemli bir etkiye sahip olması için birden çok uygulamadaki güvenlik açıklarını keşfetmesi ve bunlardan yararlanması gerekir. Bir bilgisayar korsanının/kötü aktörün bir ağı kırmak için geçmesi gereken artan ham kod yüzey alanı ve bireysel karmaşıklık, her yeni müşteriyle birlikte önemli ölçüde artar. - Ademi merkeziyetçilik:
MCA, herhangi bir yeni işlemin eklenebilmesi için birden fazla müşterinin blok zincirinin durumu üzerinde anlaşmaya varmak için protokol konsensüsüne uyması gerektiğinden, ağa hakim olan herhangi bir tek müşterinin bulutlu yayınını azaltır. - Açıklık ve şeffaflık:
Çoklu İstemci Mimarisi, herkesin bir istemci uygulamasının geliştirilmesine katkıda bulunmasına izin vererek açıklığı ve şeffaflığı destekler. Dürüst ürünler üretmek için tek bir ekibe güvenme ihtiyacını en aza indirir. Bunun yerine, benimsemeyi sağlamak için geliştirici ekipleri arasındaki rekabeti artırdı. Ek olarak, bir blockchain protokolünün geliştirilmesi üzerinde çalışan birden fazla taraf, gizli güvenlik açıklarının veya arka kapıların gelişmesini önlemeye yardımcı olabilir. (hepsi yozlaşmadığı ve halka karşı işbirliği yapmadığı sürece)
Crypto’daki MCA’nın mevcut durumu
Projelerin büyük çoğunluğunun yalnızca bir istemci sürümü vardır ve nadiren yenilerinin tanıtılmasından söz edilir. (gelişmekte olan tüm müşteriler finansman gerektirir).
Ancak, Ethereum gibi birkaç teknoloji odaklı OG projesi, Puantiye & (son zamanlarda geliştirme aşamasında) Solana, bu konuyu ciddiye almış ve MCA’nın uygulanmasına öncülük etmektedir.
Her zaman en çeşitli istemci yazılımı setine sahip olduğu için Ethereum’a büyük kredi verilmelidir. Bu yazı itibariyle, var 4 ana aktif uygulama:
— Geth (Tüm müşterilerin ~%70,1’i)
Kullanıcılara bir düğümün herhangi bir sürümünü çalıştırma esnekliği sağlayan en sağlam protokol istemcisi. Ethereum’un GO programlama dilinde uygulanması.
— Nethermind (tüm müşterilerin ~%13,6’sı)
.NET programlama dilinde uygulanan Nethermind, işlemleri Tam düğümler için optimize eden bir protokol yürütme istemcisidir.
— Erigon (tüm müşterilerin ~%10,8’i)
Arşiv düğümleri için depolama verimliliğini en üst düzeye çıkarmaya odaklanan bir Geth istemci çatalı (ayrıca GO programlama dilinde).
– İnanmak (tüm müşterilerin ~%5,5’i)
JAVA dilinde kurumsal odaklı istemci. Hyperledger vakfı tarafından oluşturulan ve açık kaynaklı olan Besu, özel uygulamalar için mutabakat mekanizmalarını değiştirmek için genişletilmiş modülerlik sağlar.
Nihayetinde mükemmel bir çözüm yoktur.
Kişisel olarak, çeşitli müşteri gruplarına sahip olmayı çok destekliyorum, ancak daha fazla müşteri mevcut olsa bile, bunların zaten savaşta test edilmiş daha eski, orijinal müşterilerin yerini alacak kadar dikkat çekmelerinin garanti edilemeyeceğinin farkındayım.
Okuduğunuz için teşekkürler;
Umarım bu, blok zincirindeki yolculuğunuzda size iyi hizmet eder.
Diğer tarafta görüşmek üzere 🥂