Blockchain çekirdek teknolojisi-fikir birliği mekanizması evriminin evrimi (1)

Genel olarak, blok zincirleri tanıtırken sık sık iki örnekten bahsedilir: Biri eski defter tutma modelinin dağıtılmış defterlere genişletilmesi, diğeri ise Bizans Generalleri Problemidir. Dağıtılmış bir defter kullanmanın amacı, her bir düğümün işlemleri doğrulamasına izin vermektir ve Bizans genel sorunu, bu makalede tartışılacak olan mutabakat mekanizması (Konsensüs) olan defterin tutarlılığı ile ilgilidir.

Blok zincirindeki fikir birliği mekanizması, temel olarak bloğu kimin inşa ettiği ve blok zincirinin birliğinin nasıl sürdürüleceği sorununu çözer.Bu sorunun teorik temeli Bizans Hata Toleranslı (BFT) 'dir. BFT 1980'lerden beri incelenmektedir ve şu anda iyi araştırılmış bir teori haline gelmiştir Çözümün ön koşulları ve özel uygulaması için halihazırda mevcut algoritmalar mevcuttur. Bununla birlikte, bu makale BFT ile başlamak niyetinde değil, çünkü analiz edilecek olan şey blok zinciri fikir birliği mekanizmasının evrimi ve Nakamoto BFT'yi benimsemedi. Aslında Bitcoin üzerine araştırmamın başında, POW mekanizmasını uzun süre anladıktan sonra bile Bizans Generalleri sorununu anlamadım. Daha sonra, HyperLedger Fabric'in PBFT'sini ve Xiaoyi projesinin DBFT'sini analiz ederken, Bizans genel problemi ve geleneksel dağıtılmış konsensüs algoritmaları (PAXOS, RAFT) tam olarak açıklanacaktır.

Konsensüs mekanizmasının özü blokların yapımı ve doğrulanmasıdır.POW sistemindeki yapı bloklarının işlemine genellikle "maden" adı verilir ve POS sistemi PPC'nin blok yapım yöntemi genellikle "nane" olarak adlandırılırken, NXT Blok yapım yöntemi genellikle "forge" (forge) olarak adlandırılır.

POW

Mutabakat mekanizması geçmişte genellikle Proof olarak adlandırılıyordu, çünkü Bitcoin Proof-Of-Work (Proof-Of-Work, POW olarak kısaltılır) kullanıyordu. Herkes dağıtılmış defter tutarlılığı konusunu keşfetmeye devam ettikçe, birçok yöntem önerildi.Özellikle, birçok blok zinciri projesi son zamanlarda geleneksel BFT algoritmalarının iyileştirilmesine geri döndü ve düşüncelerindeki "ispat" anlamından fırladı. Ayrıca bir fikir birliği mekanizması olarak özetlenmiştir. İş kanıtı kavramıyla ilk karşılaştığım anı hatırlıyorum, çok şaşırmıştım. Bu ifade tarzı için başım ağrıyor. POW mekanizmasına hakim olduktan sonra, gerçekten anladım. Meslekten olmayanların terimleriyle, "çalışma yoluyla belirli sonuçları elde etmek ve kanıtlamak için sonuçları kullanmaktır. Daha önce yapılan çabalar ". Aslında, günlük işimizde ve yaşamımızda öğrenci sınav puanları, mezuniyet sertifikaları ve ehliyet gibi iş yükü kanıtlarını sık sık kullanırız. Bu kanıtlama yönteminin ayırt edici bir özelliği, belirtilen sonuçları elde etmenin genellikle çok fazla çalışma gerektirmesi, ancak sonuçların kolay olmasıdır. doğrulama. Bir kişinin gerçek zamanlı olarak iş yükünü gerçekten ödeyip ödemediğini izlemek bizim için genellikle zor olduğundan, bunu kanıtlamak için yalnızca iş yükünün sonuçlarını kullanabiliriz.

Bitcoin'in tasarım fikrine dönecek olursak Satoshi Nakamoto, elektronik para biriminin sahiplik sorununu çözmek için asimetrik kriptografi kullandı, işlemlerin varoluş sorununu çözmek için blok zaman damgası kullandı ve üçüncü taraf yapısını kaldırdıktan sonra işlemi çözmek için dağıtılmış defter kullandı. Çözülmesi gereken kalan sorun, çifte ödemedir. Bu, tüm düğüm hesaplarının birleştirilmesini gerektirir ve gerçek eşitlik, herkese hesap tutma hakkı vermelidir. Hesap tutmak basit bir konudur, herkes yapabilir Açıkçası, sonunda birçok benzer defter olacak, ancak bunlardan sadece birine ihtiyacımız var.

Satoshi Nakamoto, defter tutmaya maliyet eklemeyi düşündü. Genel muhasebe, her sayfaya göre kronolojik sırayla sıralanır ve kitap sayfasının nitelikli olup olmadığını ayırt etmek için her kitap sayfası için bir değerlendirme standardı belirlenir. Bu, defter tutmanın zorluğunu artırır ve aynı zamanda her kitabı verir Belirli bir süre içinde yalnızca bir kişinin nitelikli bir kitap sayfası oluşturmasını sağlamak için muhasebenin zorluğunu ayarlamak için sayfaya rastgele bir öğe eklenir. Artan maliyet iş yüküdür ve nitelikli defter sayfası iş yükünün kanıtıdır. Bitcoin için, sözde defter sayfası bir bloktur ve blok, akıllı tasarım sayesinde bir blok zinciri oluşturur. Nitelikli bir blok şu şekilde ifade edilebilir:

F (Nonce) < Hedef

Bunların arasında, Nonce rastgele bir öğedir, Hedef, nitelikli blokların ölçülmesidir ve her muhasebe düğümünün Hedefi aynıdır. Ek olarak, POW'un başarılı bir şekilde çalışması için aşağıdaki iki anlaşma ile işbirliği yapması gerekir: En iyi zincir ilkesi: en uzun zinciri doğru zincir olarak ele alın.

Teşvik ilkesi: Nitelikli bloklar bulmanın ödülleri vardır.

İlk anlaşma zor ve hızlı bir kuraldır, koşulsuz olarak ona uyun.Herkes ya oynamaz ve oynamak istiyorsanız bu ilkeye uymalısınız. Sonuçta ortak amaç tutarlı bir defter bulmaktır ve en uzun zincir en büyük iş yükünü temsil eder. Böyle bir anlaşma yoksa , Herkes yalnızca kendi blok zincirini inşa edecek ve birleştirilemez. Madde 2 iş yükü teşvikleridir. Defter tutmanın bir maliyeti olduğu için, yalnızca gelir herkesi muhasebeye yönlendirebilir. Defter tutma yapı taşına katılmak bir yatırım davranışı haline gelir. Maliyet ve gelir riski, Madde 1 kısıtlamaları altında bir oyun oluşturur. , Tüm düğümleri, mutabık kalınan kurallara göre dürüstçe bloklar oluşturmaya yönlendirmek ve nihayet Nash dengesine ulaşmak.

Spesifik uygulama yöntemi, Bitcoin'in bir karma (Hash) algoritması kullanmasıdır.Karma algoritmasının ilkeleri ve özellikleri bir önceki makalede (Madencilik Evrimi) detaylı olarak tartışılmıştır. Mantıksal olarak, Bitcoin tüm bloğa hash uygulamaktır, ancak gerçek uygulama, tüm blok verilerini hash fonksiyonunun parametreleri olarak kullanmak değildir.Blok kabaca iki kısma ayrılabilir: blok zinciri başlığı ve işlem listesi. İşlem listesi oluşturulur. Merkle ağacı nihayet blok başlığında yerleşik olan Merkleroot'a yoğunlaştırılır. Blok başlığı yalnızca 6 alana ve toplam 80 bayta sahiptir. Bu tasarımın ilk avantajı, hash işlemleri için uygun olmasıdır.Her işlem yalnızca 80 bayt parametre girişi gerektirir. Bu, tüm bloğun verileri değildir, ancak işlem listesindeki herhangi bir değişiklik, hash işleminin sonuçlarına yansıtılabilir.

Bitcoin, SHA256 hash işlemini kullanır ve her seferinde iki ardışık SHA256 işlemi gerçekleştirildiğinde nihai sonuç olarak, önceki işlemin sonucu sonraki işlemin girdisi olarak kullanılır, yani Double SHA256, genellikle SHA256D olarak anılır, yukarıdaki formülü genişletin, bit Jetona uygun engellemeleri değerlendirmenin temeli aşağıdaki gibidir:

SHA256D (nVersion, hashPreBlock, hashMerkleRoot, nTimes, nBits, Nonce) < MAXTARGET / Diff

Formülün sol tarafındaki 6 parametre (blok başlığı) bir önceki makalede açıklanmıştı, MAXTARGET maksimum hedef değer, bir sabittir; Diff zorluğu temsil eder ve tüm ağın zorluğu aynıdır. MAXTARGET / Diff genellikle mevcut hedef değer olarak adlandırılır.

Açıkçası, POW'un temel anlamı şudur: hesaplama gücü ne kadar büyükse, bir bloğu kazma olasılığı o kadar büyük ve blok zincirinin güvenliğini korumanın ağırlığı o kadar büyük. Diğer fikir birliği mekanizmalarıyla karşılaştırıldığında, POW, güvenliği için basit mantık, kolay uygulama,% 50 hata toleransı ve katı matematiksel kanıtlara sahiptir.

POS

POW mükemmel değil.Bunlardan en çok eleştirilen iki ana nokta var: Biri enerji israfı, diğeri ise risk ve getiri oyununun kaçınılmaz olarak ortak madenciliğe yol açacağı ve büyük ölçekli madencilik havuzlarının sistemin ademi merkeziyetçiliği için bir tehdit oluşturabileceği.

Bu yüzden 2011 yılında, Quantum Mechanic adlı bir dijital para meraklısı, Bitcointalk forumunda tamamen tartışılan ve uygulanabilir olduğu kanıtlanan bir Proof-of-Stake (POS) kanıtlama mekanizması önerdi. POW'un esas olarak hesaplama gücüne karşı rekabet ettiğini söylerseniz, hesaplama gücü ne kadar büyük olursa, bir blok kazma olasılığı o kadar artar ve POS rekabet dengesi olur.Genel olarak, elinizde ne kadar çok para varsa, bir bloğu kazma olasılığı o kadar artar. POS nitelikli blok şu şekilde ifade edilebilir:

F (Zaman Damgası) < Hedef * Bakiye

POW ile karşılaştırıldığında, formülün sol tarafındaki arama alanı Nonce'den Zaman Damgasına değişir. Nonce'nin değer aralığı sınırsızdır, Zaman Damgası son derece sınırlıdır. Nitelikli bir bloğun blok süresi, önceki blok süresinin belirtilen aralığı içinde olmalıdır. Çok erken veya çok gelişmiş olan bloklar diğer düğümler tarafından kabul edilmeyecektir. Formülün sağ tarafındaki hedef değer bir ürün faktörü dengesini ortaya koyar.Bakiye ne kadar büyükse, genel hedef değer (Hedef * Bakiye) ne kadar büyükse, bir blok bulmak o kadar kolay olur. Zaman Damgası sınırlı olduğundan, POS basım bloklarının başarı oranı esas olarak Bakiye ile ilgilidir.

POS yalnızca, birden fazla yolla uygulanabilen bir fikir birliği mekanizması konseptini temsil eder.Aşağıdaki, iki klasik uygulama fikrini daha analiz etmeye odaklanmaktadır.

Peercoin

Peercoin (PPC) Ağustos 2012'de piyasaya sürüldü. En büyük yenilik, madencilik yönteminin POW iş kanıtı ve POS özkaynak kanıtının bir karışımı olmasıdır. Bunlar arasında, POW esas olarak para basmak için kullanılır.Gelecekte, madenciliğin zorluğu arttıkça çıktının olması beklenmektedir. Azaltılmış, sistem güvenliği esas olarak POS tarafından korunur. Şu anda blok zincirinde iki tür blok vardır, POW blokları ve POS blokları. PPC'nin yazarı, kimliğini ifşa etmeye isteksiz olan ve aynı zamanda Primecoin'in mucidi olan bir kripto para birimi meraklısı olan Sunny King'dir.

Peercoin'in POS mekanizmasında ustalaşmak için, Sunny King tarafından PPC için özel olarak tasarlanmış birkaç temel kavramı anlamaya odaklanmanız gerekir: Coinstake, Kernel, Stake Modifier, Modifier Interval, Stake Reward, Coinage, vb.

Coinstake

Sunny King, POS gerçekleştirmek için Coinstake adında özel bir işlem tasarladı.Coinstake'in tasarımı Satoshi Nakamoto'nun Coinbase tasarımından ödünç alındı. Temelde, Coinbase ve Coinsake her ikisi de bir işlemdir, ancak giriş ve çıkışlarına bazı katı sınırlar koyarlar.

Ve Coinstake'in tasarımı, sistemin orijinal POW mekanizmasını bozmamak için Coinbase'den farklı olmalı, ikisi arasındaki yapısal farklılıkları karşılaştırmanız yeterli.

Coinbase yapı gereksinimleri:

Giriş miktarı 1'e eşit olmalı ve önceki giriş alanı (önceki işlemin çıktısını belirten) boş olmalıdır. Çıktı miktarı 1'den büyük veya 1'e eşit olmalıdır.

Coinstake yapısı gereksinimleri:

Giriş sayısı 1'den büyük veya 1'e eşittir ve ilk girişin önceki alanı boş olamaz, yani Çekirdek mevcut olmalıdır. Çıkış sayısı 2'den büyük veya eşittir ve ilk çıktı boş olmalıdır.

Bu iki özel işlemin blok zincirindeki konumunun da özel gereksinimleri vardır.Satoshi Nakamoto, her bloğun ilk işleminin Coinbase'e yerleştirilmesi gerektiğini şart koşar, aksine Coinbase bloğun diğer yerlerinde görünemez. Sunny King açıkça bu kuralı bozmak istemiyor, bir kural ekledi POS bloğu için Coinstake ikinci işleme yerleştirilmelidir, aksine Coinstake başka yerde görünemez. Başka bir deyişle, ikinci işlem Coinstake olduğu sürece, bu blok bir POS bloğu olarak değerlendirilir.

Coinbase ve Coinstake ayrı ayrı yayınlanmayacak, sadece blokta var olacak, bu nedenle, istemci düğümlerinin genellikle bellek havuzuna girmesine izin verilmez.Bu iki işlem harcandığında, olgun olup olmadıklarını kontrol etmeleri gerekir.

Çekirdek Protokolü

Coinstake'in ilk girdisine (Giriş 0) Kernel denir. Çekirdek, POS mekanizmasında merkezi bir rol oynar ve nitelikli blokların belirlenmesi bununla yakından ilgilidir. PPC nitelikli blok değerlendirme koşulları şunlardır:

SHA256D (nStakeModifier + txPrev.block.nTime + txPrev.offset + txPrev.nTime + txPrev.vout.n + nTime) < bnTarget * nCoinDayWeight

Formülün sol tarafındaki her parametrenin açık bir tasarım amacı vardır;

nStakeModifier: POS için özel olarak tasarlanmış bir regülatör Yukarıdaki formüle göre, eğer nStakeModifier parametresi yoksa, bir kişi bir jeton aldığında ve ağdan onay aldığında, gelecekte blokları ne zaman oluşturabileceğini hemen önceden hesaplayabilir. Bu açıkça tasarım hedeflerini karşılamıyor.Sunny King, POS madencilerinin blok zincirini gerçek zamanlı olarak çevrimiçi tutmak için POW madencileri gibi kör keşifler yapabileceğini umuyor. NStakeModifier, POS madencilerinin önceden hesaplama yapmasını önlemek için tasarlanmıştır. nStakeModifier, POS bloğunun bir özniteliği olarak anlaşılabilir, her blok bir nStakeModifier değerine karşılık gelir, ancak nStakeModifier her bloğu değiştirmez, ancak anlaşma Değiştirici Aralığının her belirli zamanda yeniden hesaplanması gerektiğini belirtir (Değiştirici Aralığı). Önceki nStakeModifier, en son blok hash değeri ile ilgilidir, bu nedenle POS madencisi, gelecekteki blok hash değerini bilmediği için bunu önceden hesaplayamaz.

Başka bir deyişle, PPC sisteminde, blok zincirinin, madeni para zincirinin (madeni para işlem imzalarının tarihçesi) varlığının yanı sıra, nadiren söz edilen bir zincir de var - öz sermaye düzenleyici zinciri.

Sunny King'in bu regülatörü yalnızca PPC'nin sonraki sürümlerinde eklediğini ve başlangıçta nBits kullandığını belirtmekte fayda var.

txPrev: Kernel'e karşılık gelen önceki işlem.

txPrev.block.nTime: txPrev'in bulunduğu bloğun zaman damgasıdır. Bir işlemin bloğa ne zaman dahil edileceği işlem başlatıcısı tarafından belirlenemez. Düğümün, ileride kendisine faydalı olacak zaman damgasını önceden hesaplayarak hesaplaması mümkündür. Bu parametre Bu, düğümlerin önceden çok sayıda işlem oluşturmak için bu tahmini avantajı kullanmasını önlemektir.

txPrev.offset: TxPrev'in bloktaki ofseti, ağ düğümlerinin aynı anda eşleştirme üretme olasılığını azaltmak için kullanılır.

txPrev.nTime: txPrev yapım süresi, txPrev.offset gibi tasarım hedefleri.

txPrev.vout.n: Kernel'in txPrev'deki çıktı alt simgesi, tasarım hedefi txPrev.offset gibidir.

Denklemin sağ tarafına tekrar bakın,

bnTarget: Nbitlerle kaydedilen POW'daki mevcut zorluk değerine benzer şekilde tüm ağın mevcut hedef zorluk kıyaslama değeri.

nCoinDayWeight: Kernel'in jeton yaşı.

Yukarıdaki formülden, Sunny King'in bir yandan POS madencilerine yeterli rastgelelik sağlamayı umduğu ve diğer yandan, nitelikli blok zincirlerinin bulunmasını etkileyen en büyük faktörün Kernel para birimi olmasını sağlamak için arama alanının kesin olarak Coinstake'in zaman damgası alanıyla sınırlı olduğu görülebilir. yaş.

Bir düğüm bir bloğu taklit ettiğinde, önce Çekirdek olarak kendi UTXO'larından birini seçer, ortak alımı oluşturur, karmayı hesaplar, eğer niteliksizse, yeniden yapılandırır, zaman damgası Zaman yeniden yapılandırma sırasında değişir ve ayrıca Çekirdeği de değiştirebilirsiniz. Nitelikli bir blok bulunana kadar farklı Coinstake'ler bu şekilde tekrarlanır.

Sikke

Yukarıda belirtilen jeton yaşına madeni para günleri de denir. Blok zincirinde 10 gün boyunca 1,5 jeton varsa jeton yaş değeri:

Sikke = 1.5 * 10 = 15

PPC, hesaplamak için doğrudan bakiye (Bakiye) kullanmak yerine para birimi yaşını kullanır. Bir UTXO harcandığında, para birimi yaşı silinir ve yeni UTXO para birimi yaşı 0'dan başlar.

ödül

Genellikle kazanç faizi olarak bilinen öz sermaye teşviki aşağıdaki şekilde hesaplanır:

stakeReward = nCoinAge * 33 / (365 * 33 + 8) * 0.01 * COIN

Formül şu şekilde basitleştirilebilir:

stakeReward = (0.01 * nCoinAge / 365) * COIN

Bunlar arasında, nCoinAge, Coinstake tarafından girilen tüm madeni para yaşlarının toplamıdır.Formül, gelirin% 1 yıllık oranda hesaplandığını gösterir. İdeal bir durumda, tüm madeni paraların yıl boyunca madenciliğe katıldığını varsayarsak, toplam token sayısının yıllık enflasyon oranı% 1'dir.Bu tasarım birçok kişi tarafından eleştirilir ve bu tasarım madencileri bakım için madenciliğe aktif olarak katılmaya teşvik etmez. Blok zincirinin güvenliği, çünkü işlem ücretini dikkate almazsanız, para sahipleri düğümü birkaç ayda bir ya da gerçek zamanlı çevrimiçi para basımı için açar, teorik faydalar aynıdır.

stakeMinAge

POS sistemi ayrıca% 51 madeni para yaşı saldırı riskine sahiptir. Saldırının zorluğunu artırmak için Sunny King, her UTXO'nun para basma yeterliliğine asgari bir yaş (stakeMinAge) kısıtlaması koyar: blok zincirindeki var olma süresi stakeMinAge'dan daha azsa, bir UTXO basım için uygun değildir , PPC minimum para yaşı 8 saattir.

Daha sonra, bazı rakip para birimleri maksimum yaş (stakeMaxAge) sınırını ekledi: bir UTXO blok zincirinde stakeMaxAge'dan daha uzun süredir bulunuyor ve madeni para yaşı her zaman stakeMaxAge olarak hesaplanıyor.

Sunny King tarafından tasarlanan POS mekanizmasında, UTXO bir madenci gibidir.Madencinin bir bloğu başarılı bir şekilde döktükten sonra bir süre dinlenmesi gerekir.Bu nedenle, tüm sistem yeterli sayıda "madencinin" aynı anda blokları çevrimiçi olarak oluşturmasını sağlamalıdır. Sorunsuz bir blok üretim hızı elde etmek mümkündür.

Nextcoin

Eylül 2013'te BCNext adlı bir kullanıcı, Bitcointalk forumunda bir gönderi başlattı ve daha sonra Nextcoin veya kısaca NXT olarak adlandırılan yeni bir saf POS para biriminin çıkarılacağını duyurdu. Doğrudan Bitcoin kaynak kodundan geliştirilen o zamanki diğer altcoinlerin aksine BCNext, NXT'yi sıfırdan geliştirmek için JAVA dilini kullanarak sıfırdan başladı ve blok yapısı, işlem yapısı ve asimetrik kriptografide birçok iyileştirme yaptı. NXT'de pek çok yenilik var Burada sadece en önemli yenilik olan Şeffaf Dövme (Şeffaf Dövme) tartışılıyor.

NXT'nin POS uygulama yöntemi PPC'den tamamen farklıdır. Nitelikli blokları belirleme yöntemi:

vurmak < baseTarget * effectiveBalance * elapseTime

onların arasında,

isabet:

NXT, Satoshi Nakamoto'nun UTXO tasarım şemasını terk etti ve her hesabın bir özel anahtara karşılık geldiği bir hesap bakiyesi şeması benimsedi. Her bloğun bir generationSignature alanı vardır ve isabetin oluşturulması bu alanla ilgilidir. Bir kullanıcının bir blok oluşturması gerektiğinde, önce benzersiz isabetini hesaplar. Hesaplama süreci aşağıdaki gibidir:

Kullanıcı, önceki bloğun nesil imzasını kendi özel anahtarı ile imzalar ve kendi bloğunun nesil imzasını alır.

Karma verileri almak için önceki adımın sonucu üzerinde SHA256 işlemini gerçekleştirin.

Karma verinin ilk 8 baytını (toplam 64 bit) isabet değişkeni olarak alın.

İmza oluşturma tasarımı, PPC'nin stakeModifier'ına bir şekilde benzer, yani NXT blok zincirinin altında gizli bir imza zinciri vardır.

Formülün sağ tarafında,

baseTarget: Tüm ağın zorluğunun temel değeri Bu zorluk, dakika başına bir blok hedefine göre ayarlanır.

effectiveBalance: Hesabın efektif bakiyesi, hesaba yapılan para transferi, efektif bakiye denilen nane hakkına sahip olmak için yeterli onay gerektirir.

elapseTime: Geçerli saat ile önceki blok arasındaki zaman aralığı, currentTime-lastBlockTime'a göre hesaplanır.

Yukarıdaki formül incelendiğinde, formülün sol tarafı hala madencilik olarak kabul ediliyorsa ve sağ tarafı hedef değer olarak kabul ediliyorsa, kullanıcının hiç arama alanı olmadığı görülebilir, çünkü tüm ağ yeni bir blok ürettiğinde, sonraki blok için her biri Kullanıcının kendi isabeti düzeltildi. Formülün sağ tarafında, her kullanıcının hedef değeri, kendi hesabının efektif bakiyesiyle doğru orantılıdır.Ayrıca, zaman geçtikçe, hedef değer artmaya devam eder ve eşitsizlik sonunda kurulur, yani teorik olarak her düğüm madencilik yapabilir. Bu blok, ancak en erken oluşturulan bloğun ilk önce seçilmesi şart koşulmuştur.

NXT'nin dövme mekanizmasını karşılaştırmak için yukarıdaki şekli kullanın. Her silindirin sabit bir yüksekliği vardır (isabet). Yükseklik sınırlayıcı çubuğun yükselmeye devam ettiğini varsayarsak (hedef değer hedefi zamanla artmaya devam eder), tüm silindirler geçebilir (nitelikli) Blok), ancak en kısa yüksekliğe sahip silindir önce geçebilir.

Düğüm segmenti yapı bloğu süreci şu şekildedir: hesap gerçek zamanlı olarak çevrimiçi olmalıdır. Tüm ağda en son blok oluşturulduğunda, her hesap hemen kendi karşılık gelen isabetini hesaplar ve ardından elapseTime = hit / (baseTaret * effectiveBalance) formülüne göre dövme işlemini hesaplar Bloğun beklenen zaman değeri ve bu beklenen zamanı ağdaki diğer düğümlere yayın Bu şekilde, tüm ağdaki her düğüm diğer düğümlerin beklenen zamanını bilir ve böylece bir sonraki bloğu ilk kimin oluşturacağını bilir. Hesap, bloğu kendi zaman penceresinde taklit eder ve hemen tüm ağa yayınlar.Diğer düğümler yeni bir bloğun geçerli olup olmadığını kontrol eder.İlk olarak, bloğun oluşturulan imzasının geçerli olup olmadığını kontrol edin ve yeni bloğun zaman damgasının oluşturulan blokla aynı olup olmadığını kontrol edin. Düğümün önceki sürümünün beklenen zamanı çakışır. İstemci ağda yeni bir blok oluşturulduğunu her algıladığında, beklenen zamanını yeniden hesaplayacak ve tüm ağda yayınlayacaktır.

Vuruş, kullanıcının kendi özel anahtarı ile imzasının sonucu olduğu için, farklı kullanıcılar için çok fazla rastgeleliği vardır.Küçük bir bakiyeye sahip bir kullanıcı bile, yeterince şanslı ve isabet değeri küçükse, hızlı bir şekilde blok oluşturabilir.

NXT bloğunun üretimi rekabet kavramını tamamen terk eder, biraz "Tanrı her şeyi ayarlamıştır". Bir sonraki bloğu kimin üreteceği uzun bir süre kadardır. Tüm ağın yapabileceği tüm düğümler bunu beklemek. O an geldi.

Şekilde gösterildiği gibi, ya düğüm A bloğu kendi dövme zaman penceresi içinde yayınlamazsa, sorun olmazsa, ağ B bloğunu bekler, ancak A ve B birbirinden çok uzak değilse veya ağ iletimi nedeniyle bazı düğümler ilk alırsa A bloğu için, bazı düğümler önce B bloğunu alır ve ağ çatallanır.Şu anda, Bestchain'in ilkesi hala en uzun zinciri, aynı uzunluktaki dalı ve en yüksek blok zaman damgasına sahip dalı tercih etmektir. . Düğüm, blokları tüm şubelere aktarır ve yayınlarsa, bu bir saldırı olur ve ağın en son bloğunun yakınındaki çatal yoğunlaşır. Sorunu hafifletmenin yolu, düğümün yalnızca en uygun dalı kazmasına izin vermektir.Bu, anlaşmaya yansıtılamaz ve yalnızca dürüst düğümlerin öz disiplinine güvenebilir.

Rekabet kavramını terk eden NXT mutabakatı, büyük ölçüde zaman çizelgesine dayanmalıdır. Düğümler gelecekte ne zaman blok oluşturabileceklerini tahmin edebilmelerine rağmen, blokları yayınlamak için o zamana kadar beklemeleri gerekir. Düğüm önceden yayınlarsa, ağdaki diğer düğümler Kabul etmeyecek, BCNext, istemci uygulamasına kısıtlamalar getirir: En son blok için, istemci yalnızca makinenin geçerli saatinden 15 saniye önce ve sonra yayın bloklarını kabul eder. Bu kısıtlama yalnızca sözleşmeye yansıtılamaz Müşterinin gerçek zamanlı yardımına güvenin.

Tüm NXT tokenlerinin önceden mayınlanmış olması şaşırtıcı değil.Bitcoin gibi bir model madenciler tarafından yavaşça yayınlanırsa, kaçınılmaz olarak rekabetçi segmentte bloklar oluşturacak ve rekabet bir kez, blok zinciri hemen bir çatala düşecektir. NXT'nin tüm fikir birliği kurallarının başarılı bir şekilde işleyişinin aslında arkasında potansiyel bir ilgi oyunu vardır, yani madeni paranın sahibi sistemin kullanıcısı ve sistemin yararlanıcısıdır.Blockchain'i korumak ve dürüst bir düğüm olmak için herkes birlikte çalışmalıdır.

Belki bir saldırı yöntemi düşüneceksiniz: Elinizde az miktarda jeton olsa bile, çok sayıda hesap oluşturabilir ve her seferinde küçük bir vuruş bulmak ve hızlıca bloklar oluşturmak için her hesaba az miktarda jeton aktarabilirsiniz. Sonuç olarak, POS, POW'a benzer garip bir duruma dönüşür. BCNext, ilk olarak Bitcoin'in ECDSA'sı yerine ED25519'u kullanan asimetrik imza algoritmasıyla başladı, ilkini hesaplamak ikincisinden daha zor. Ek olarak, vade süresi 1440 bloğa (1 gün) çıkarılır, yani bir hesabın efektif bakiyesi başarılı bir şekilde bir blok oluşturduğunda, bakiyenin bir kısmının sahteciliğe yeniden hak kazanması için 1 gün beklemesi gerekecektir.

Kısa bir çatallanma hala kaçınılmazdır. En son NXT bloğunun yakınında birçok şube olacaktır. Bir işlemin yeterince güvenli olması için daha fazla onay gerektirir. NXT resmi olarak 10 onay önerir.

POS2.0

PPC'nin başarılı operasyonu, aralarında Novacoin (NVC), Blackcoin (BLK) ve benzerlerinin de bulunduğu bir grup takipçiyi hızla çekti. Kara madeni para topluluğu, madeni para çağının daha yüksek ağ ağırlığı elde etmek ve çift harcama saldırılarını başarıyla uygulamak için kötü niyetli düğümler tarafından kötüye kullanılabileceğine inanıyor.Bu nedenle, POS2.0 teknik raporu yayınlandı ve bazı potansiyel güvenlik sorunlarını çözmek için PPC'nin birkaç ayrıntılı optimizasyonu yapıldı. , En önemli gelişme, para birimi yaşı yerine bakiye kullanmaktır. Uygun bloklar için koşullar şunlardır:

F (Timastamp) < Hedef * Madeni para sayısı * Madeni para yaşı

Oluyor:

F (Timastamp) < Hedef * Para sayısı

Bu şekilde, bir UTXO ne kadar uzun süre yerleştirilirse yerleştirilsin, blokları taklit etme yeteneği değişmeden kalır.Bu eylem, düğümleri madeni para basmak, sistem güvenliğini artırmak, saldırı yollarını en aza indirmek ve önemli ölçüde iyileştirmek için daha fazla çevrimiçi tutmaya teşvik edebilir. Ağın çalışmaya devam ettiği düğüm sayısı.

POS3.0

Siyah madeni para topluluğu daha sonra yükseltti ve işlem ücretleri ve zorluk ayarlamaları üzerinde bazı optimizasyonlar yapan POS3.0 sürümünü başlattı.En önemli değişiklik,% 1 yıllık faiz oranı ödül mekanizmasını sabit bir ödülle (blok başına sabit ödül) değiştirmektir. 1.5BLK), bu hareket yalnızca token enflasyon oranını düşürmekle kalmaz (tokenlerin kalıcı olarak kaybolacağı ve düşük değerli ödül mekanizmasının sabit bir toplam miktar tasarım fikrine geri döneceği düşünüldüğünde), aynı zamanda gelir elde etmek için token tutma düğümlerinin gerçek zamanlı olarak çevrimiçi olması gerektiği anlamına gelir.

DPOS

Bitshares projesi Ağustos 2013'te başlatıldı. Bu, blok zincirinde birçok değişiklik yapan ve özellikle göz kamaştırıcı Bitshares X ve polimorfik sayılar olmak üzere birçok yeni kavram ve özelliği tanıtan iddialı bir projedir. Varlık ticareti platformu ve varlık sabitleme gibi yeni terimler, bir süreliğine son derece heyecan verici ve kafa karıştırıcıdır. Şu anda, hem POW hem de POS uzun süredir başarılı bir şekilde çalışıyor ve birbirlerinin artıları ve eksileri defalarca tartışılıyor ve iki kamp bugün hala tartışıyor. Proje planına göre, BitShares'in işlem kapasitesi ve blok hızı için son derece yüksek gereksinimleri vardır Açıkçası ne POW ne de POS gereksinimleri karşılayamaz, bu nedenle BitShares yeni bir konsensüs mekanizması icat etti - Yetkilendirilmiş Teminat Kanıtı (DPOS) Yani stok yetki belgesi.

DPOS'un anlaşılması kolaydır. Modern kurumsal yönetim kurulu sistemine benzer şekilde, BitShares sistemi token sahiplerini hissedar olarak ifade eder.Hissedarlar 101 temsilciye oy verir ve ardından bu temsilciler blok oluşturmaktan sorumludur. Daha sonra çözülmesi gereken temel konular temel olarak şunları içerir: nasıl temsilci seçilebilir, "yönetim kurulundan" özgürce nasıl çekilir ve bloklar oluşturmak için temsilciler arasında nasıl işbirliği yapılır.

Bir token sahibi temsilci olmak isterse, önce açık anahtarıyla blok zincirine kaydolması ve 32 bit uzunluğunda benzersiz bir kimlik tanımlayıcı edinmesi gerekir.Kullanıcılar bu tanımlayıcıya işlem şeklinde oy verebilir ve oy sayısını alabilir. İlk 101 temsilci olarak seçildi. Temsilciler sırayla bloklar oluşturur ve gelir (işlem ücreti) eşit olarak bölünür. Bir temsilci bloğu dürüstçe üretmezse, diğer temsilciler ve hissedarlar tarafından kolayca keşfedilebilir ve derhal "yönetim kurulu" dan atılır ve boş kadro, temsilci tarafından 102. oyla otomatik olarak doldurulur.

Belirli bir perspektiften, DPOS hem ademi merkeziyetçilik hem de merkezileştirme avantajlarına sahip çok merkezli bir sistem olarak anlaşılabilir.

sonuç olarak

Son olarak, yukarıdaki fikir birliği mekanizmalarının avantajlarının ve dezavantajlarının ve özelliklerinin birkaç yönden basit bir karşılaştırmalı analizi:

Emniyet

POS ve DPOS'un benzersiz bir avantajı olan POW'un güvenliği için tam bir matematiksel kanıt vardır. Blockchain fikir birliği mekanizmalarının genellikle hem DDOS saldırılarını hem de çift harcama saldırılarını dikkate alması gerekir. POW,% 51 bilgi işlem gücü saldırı tehdidine sahiptir. Bitcoin'in mevcut süper bilgi işlem gücü, sisteme zarar vermeyi maliyetli hale getirir. POS ayrıca% 51 jeton yaş saldırılarına sahip olacak ve DPOS güvenliği tamamen temsilcilerin dürüstlüğüne bağlı. NXT teorisi hızlı işlemler gerçekleştirebilir, ancak kendi IP'lerini açığa çıkarmak için düğümler oluşturması gerekir, bu nedenle DDOS saldırılarının hedefi olmak kolaydır ve DPOS temsilcilerinin DDOS saldırılarının hedefi olması da kolaydır.

Çevresel koruma

İmkansız üçgen teorisinde (ademi merkeziyetçilik, güvenlik ve çevre koruma aynı anda birleştirilemez), POW enerji tasarrufu ihtiyacını tamamen ortadan kaldırır ve sistem güvenliğini ve ademi merkeziyet özelliklerini korumak için büyük bir hesaplama gücü kullanır. POS ve DPOS neredeyse hiç ekstra güç gerektirmez, ancak diğer iki özellikten fedakarlık yapmak kaçınılmazdır.

Konsensüs hızı

POW'un blok süresini kısaltması zordur, POS blok süresini görece kısaltabilir, özellikle NXT, PPC'nin uygulanmasından daha hızlı olacaktır, DPOS da kısa sürede fikir birliğine varabilir, BitShares şu anda 30 saniyede bir blok üretmektedir. Bununla birlikte, POS çatallara, özellikle NXT'ye daha yatkındır, bu nedenle işlemlerin güvenli kabul edilmeden önce daha fazla onay beklemesi gerekir.

İşlem kapasitesi

Bu, blok zincirinin gelecekteki geliştirilmesinde çözülmesi gereken temel sorundur. Büyük işlem kolaylığı, büyük bant genişliği ve depolama alanı anlamına gelir. POW'un işlem kapasitesinin genişletilmesi zordur ve NXT, çünkü her düğüm bir sonraki bloğu kimin oluşturacağını tahmin edebilir. , İşlemleri doğrudan sahte düğümlere gönderebilir, bu nedenle NXT işlem kapasitesi büyük ölçeklenebilirliğe sahiptir. Belirli bir perspektiften, DPOS hem ademi merkeziyetçilik hem de merkezileştirme avantajlarına sahip çok merkezli bir sistem olarak anlaşılabilir.Temsilci düğümler güçlü sunucular çalıştırıyorsa ve birbirlerinin bant genişliği yeterince büyükse, teorik olarak işlem işleme kapasitesi geleneksel merkezileştirme ile karşılaştırılabilir. Visa gibi bir sistem.

Blok düzgünlüğü

Karma algoritmanın özellikleri nedeniyle, POW sorunsuz bir blok oluşturma hızı elde edebilir ve tüm ağın zorluğu bir süre sonra ayarlanabilir.POS blok üretimi temel olarak denge ile ilgilidir ve kullanıcı dengesinin gradyanı nispeten büyüktür, bu nedenle POS genellikle her blok için ayarlanmalıdır. Tüm ağın temel zorluğu. DPOS, sınırlı temsilcilerin sinerjisine dayanır Temsilciler sık sık girip çıkmazlarsa, bloklar arasında neredeyse sabit bir aralık elde edebilir.

Kesinlik

POW ve PPC rekabet yoluyla bir fikir birliğine varır ve kesinlik yoktur.Teoride, yeterli hesaplama gücü varsa, Bitcoin blok zincirini sıfırdan çıkarmak artık mümkündür, ancak kesinliği elde etmek için algılama noktalarına güvenebilir. NXT ve DPOS, kesinlikle zaman eksenine bağlıdır ve düğümlerin gerçek zamanlı çevrimiçi tespitine dayanır, bu nedenle kesinlik vardır.

Tüm tarafların avantajlarından yola çıkarak kişisel olarak POW'un halka açık zincirler için uygun olduğunu düşünüyorum.Özel bir zincir kurulursa, doğrulama düğümlerinde güven sorunu olmadığı için POS kullanmak daha uygundur.Ancak konsorsiyum zincirinde güvenilmeyen yerel düğümlerin varlığından dolayı DPOS daha uygundur.

Bir sonraki makale PBFT, DBFT, RPCA (Ripple) ve diğer fikir birliği mekanizmalarını analiz edecek.

İlan verildiği andaki standart Bitcoin fiyatı Alış fiyatı: 5565,00TL Satış fiyatı: 5564,00TL

Yazar: başkan yardımcısı Zhou Ye Fei para istilacı teknikleri, DACA blok zinciri Derneği eğitmeni, blok zinciri teknolojisi uzmanları

Yazının kaynağı: Babbitt Information ( Telif hakkı bildirimi: Yazar hakkını saklı tutar. Makale, yazarın bağımsız bakış açısıdır ve Babbitt'in görüşünü temsil etmez.

Soğuk otomobil pazarında parlak bir yer arayan yeni enerji binek otomobil satışları Ocak'tan Mayıs'a kadar 110.000 adede ulaştı
önceki
Bu yılın ilk tayfunu Meihua kuruldu! Bu uzun 1 Mayıs tatili, tayfun size eşlik edecek!
Sonraki
Bahar Şenliği boyunca sizi daha şişman ve şişman yapan 6 çeşit lezzet, kilo verirken dokunmayın!
Avrupa'daki memleketlerinde dizel araçlar da hedef alındı, bunun bir geleceği var mı?
Gökbilimciler şu ana kadar dünya dışı yaşama sahip olma ihtimali en yüksek olan gezegen olan "süper Dünya" yı buldular!
Zayıfsan böyle egzersiz yapmalısın, 90 gün seni yeniden doğuracak!
Zayıf bir pazarda gerçeği gören FAW Toyota, sistem yetenekleriyle istikrarlı bir şekilde büyüyor
Dali Sky'da gişe rekorları kıran sahneler! UFO geliyor olabilir mi?
Bahar Şenliği'nin küçük hedefini tamamlamanıza yardım edin - karnınızı gevşetin ve karın kaslarınızı gösterin!
Araba almak için doğru olanı seçemiyorsanız endişelenmeyin! Temmuz ayında listelenen yeni arabalara göz atın!
İstiridye kabuklu yemişler ve çarpık kuruyemişler sürer, ancak sahili öfkelendirmenin alternatifi yoktur!
Bu egzersiz yöntemi diğerlerinden iki kat daha hızlı kilo verebilir ve 30 günde 10 kilo verebilir!
Güce odaklanın ve yeni Haval H61.3T'de neyin farklı olduğunu görün
Dünyanın sonu mu geliyor? Uzman: İnsanoğlunun 10 yılı kaldı!
To Top