Xiaoyi Zhang Zhengwen: CTO'ya yazılan ana akım blok zinciri mimarisinin yatay analizi

I.Giriş

İnsanların blockchain hakkında konuştuğunu sık sık duyuyorum. 2009'da Bitcoin'in doğuşundan bu yana, çeşitli blockchain sistemleri veya blockchain tabanlı uygulamalar sürekli geliştirildi ve çok sayıda senaryoya uygulandı. Zincir teknolojisinin kendisi sürekli olarak değişmekte ve gelişmektedir.

Blockchain ayrıca dağıtılmış bir defter olarak adlandırılır ve karşılığı, bir banka gibi merkezi bir defterdir. Merkezileştirilmiş bir defterden farklı olarak, dağıtılmış bir defter, defterin güvenliğini sağlamak için tüm katılan düğümlerdeki defter verilerini yedekli olarak depolamaya dayanır. Basitçe söylemek gerekirse, blok zinciri üç temel teknolojiyi kullanacaktır: Noktadan noktaya ağ teknolojisi, kriptografi teknolojisi ve dağıtılmış fikir birliği algoritması. Genel olarak, blockchain sistemi ayrıca ücretsiz olarak akıllı sözleşme adı verilen bir işlevi de "büker". Akıllı sözleşmeler, blockchain sisteminin gerekli bir parçası olmasa da, blockchain'in doğasında bulunan ademi merkeziyetçilik nedeniyle akıllı sözleşmeler için güvenilir bir hesaplama ortamı sağlayabilir.

Farklı senaryoların ihtiyaçlarına uyum sağlamak için, blockchain sisteminin genellikle kimlik doğrulama, fikir birliği mekanizması, anahtar yönetimi, iş hacmi, yanıt süresi, gizlilik gibi belirli iş gereksinimlerini karşılamak için gerçek uygulama sürecinde çeşitli dönüşümlerden geçmesi gerekir. Koruma, yasal gereklilikler vb. Bununla birlikte, blok zinciri sistemlerini gerçekten uygulayan şirketler genellikle bu dönüşümü gerçekleştirme yeteneğine sahip değildir, bu nedenle, özel blok zinciri sistemlerini özelleştirmek için bazı çerçeveler yavaş yavaş piyasada görünmektedir.Bu çerçeveleri kullanarak, işletmeler için kolayca özelleştirilebilirler. Kendi iş ihtiyaçları için blockchain sistemi.

Bu makale, özelliklerinin neler olduğunu ve aralarındaki farkların neler olduğunu görmek için piyasadaki birkaç tipik blok zinciri çerçevesinin yatay bir karşılaştırmasını yapacak. Karşılaştırmanın tarafsızlığını ve adaletini korumak için bu makale yalnızca açık kaynaklı blok zinciri çerçevesini tartışacaktır.

2. Her blok zinciri mimarisine kısa bir giriş

1. Bitcoin

Bitcoin (bitcoin), Satoshi Nakamoto (Satoshi Nakamoto) adlı bir kişi tarafından 2008 yılında yayınlanan "Bitcoin: Bir Eşler Arası Elektronik Nakit Sistemi" adlı bir makaleden türetilmiştir. Nakit Sistemi), elektronik bir para birimini ve onun "Bitcoin" adlı algoritmasını tanımlayan kağıt. Sonraki yıllarda Bitcoin büyümeye ve olgunlaşmaya devam etti ve temelindeki teknoloji yavaş yavaş insanlar tarafından fark edildi ve soyutlandı.Bu blockchain teknolojisidir. Blockchain'in yaratıcısı olan Bitcoin, büyük blockchain ailesinde çok önemli bir konuma sahiptir.Bitcoin teknolojisine dayalı olarak geliştirilen alt coinlerin sayısı gökyüzündeki yıldızlar gibidir ve sayılamaz. Satoshi Nakamotonun Bitcoin'i tasarlamadaki amacının, çevrimiçi ödemelerin doğrudan bir taraf tarafından başlatılabilmesi ve diğer tarafa herhangi bir aracı olmadan ödenebilmesi için tamamen eşler arası bir ağa dayalı bir elektronik nakit sistemi gerçekleştirmek olduğu kağıttan anlaşılabilir. nın-nin Ajans . Özetle, Bitcoin'in aşağıdaki tasarım hedeflerine ulaşmasını umuyor:

  • Para birimi merkezi bir otorite olmadan verilebilir
  • Aracı olmadan ödeyebilirsiniz
  • Kullanıcıları anonim tutun
  • İşlem geri alınamaz

Elektronik nakit sistemi perspektifinden bakıldığında, temelde Bitcoin'de yukarıdaki hedeflere ulaşılmıştır, ancak yine de şekillendirilebilirlik saldırıları, blok kapasitesi kısıtlamaları, blok çatalları, ölçeklenebilirlik vb. Gibi çözülmesi gereken bazı teknik sorunlar vardır.

Uygulama senaryoları açısından, şu anda Bitcoin mimarisine dayalı olarak çok sayıda dijital para birimi projesi tasarlanmaktadır.Ayrıca, renkli madeni paralar, tØ vb. Gibi bazı daha pratik uygulama durumları da vardır.

Renkli madeni paralar (renkli madeni paralar), bazı belirli bitcoinlerin giriş ve çıkışlarını dikkatlice takip ederek, bunları diğer bitcoinlerden ayırt edebilirsiniz.Bu belirli bitcoinlere renkli paralar denir. Bitcoin'in nominal değeriyle hiçbir ilgisi olmayan bir değere sahip olan bazı özel nitelikleri vardır.Bu renkli madeni paraların bu özelliğini kullanmak, geliştiricilerin Bitcoin ağında başka dijital varlıklar oluşturmalarına olanak tanır. Renkli madeni paralar bitcoin'lerdir, depolama ve transfer üçüncü bir taraf gerektirmez ve mevcut bitcoin temel ağı kullanılabilir.

tØ, Bitcoin blok zincirinin finans alanındaki uygulamasıdır.Amerikalı çevrimiçi perakendeci Overstock tarafından başlatılan, blockchain tabanlı özel ve halka açık bir hisse senedi ticaret platformudur.

2. Ethereum

Ethereum'un (ethereum) amacı, Turing tam diline sahip bir blok zinciri sağlamaktır.Bu dil ile, keyfi durum geçiş işlevleri yazmak için sözleşmeler oluşturulabilir.Kullanıcılar, mantığı uygulamak ve oluşturmak için birkaç satır kod kullanabilir. Blockchain tabanlı bir uygulama ve para birimi dışındaki senaryolarda kullanılır. Ethereum'un tasarım fikri, herhangi bir uygulamayı doğrudan "desteklemek" değildir, ancak Turing'in eksiksiz programlama dili, teorik olarak herhangi bir sözleşme mantığının ve her türlü uygulamanın oluşturulabileceği anlamına gelir. Özetle, Bitcoin işlevlerine ek olarak, Ethereum aşağıdaki tasarım hedeflerine sahiptir:

  • Turing'in eksiksiz sözleşme dili
  • Yerleşik kalıcı durum depolaması

Şu anda Ethereum'a dayalı yüzlerce sözleşme projesi var.En ünlüleri Augur, TheDAO, Digix, FirstBlood vb.

Augur, Ethereum blockchain teknolojisine dayalı merkezi olmayan bir tahmin pazarı platformudur. Kullanıcılar, bahisleri tahmin etmek ve oynamak için dijital para birimini kullanabilir ve karşı taraf risklerini ve sunucu merkezileştirme risklerini etkili bir şekilde ortadan kaldırabilen etkinliğin sonucunu tahmin etmek için kitlelerin bilgeliğine güvenebilirler. Alan kısıtlamaları nedeniyle Ethereum akıllı sözleşme platformuna dayalı projeler çok fazla tanıtılmayacak. Ethereum koduna göre değiştirilen birçok blok zinciri projesi de var, ancak neredeyse hepsi kapalı kaynaklı projelerdir ve sadece bazı genel özelliklere güvenerek çıkarılabilir, bu yüzden bunları bu makalede tartışmayacağım.

3. Kumaş

Fabric, IBM ve DAH tarafından geliştirilen bir blok zinciri çerçevesidir ve Hyperledger'ın proje üyelerinden biridir. İşlevi Ethereum'a benzer ve aynı zamanda dağıtılmış bir akıllı sözleşme platformudur. Ancak Ethereum ve Bitcoin'den farklı olarak, halka açık bir zincir değil, baştan beri bir çerçevedir ve yerleşik bir token yoktur.

Hyperledger, blockchain teknolojisini ve standartlarını teşvik etmek için 2015 yılında Linux Vakfı tarafından başlatılan açık kaynaklı bir projedir. Katılan üyeler şunları içerir: ABN AMRO, Accenture ve bir düzineden fazla farklı paydaş. Hedef, Üyelerin, farklı sektörlerden çeşitli kullanıcı vakalarını karşılamak ve iş süreçlerini basitleştirmek için açık bir platform oluşturmak üzere birlikte çalışmasına izin verin.

Bir blok zinciri çerçevesi olarak Fabric, uygulama süreci sırasında uygulama senaryosuna göre karşılık gelen modülü kolayca seçebilmesi için, fikir birliği mekanizması ve kimlik doğrulama gibi bileşenleri modülerleştirmek için gevşek bağlı bir tasarım kullanır. Buna ek olarak Fabric, akıllı sözleşmelerin neredeyse tüm üst düzey dillerde yazılabilmesi için akıllı sözleşme kodunu (zincir kodu) docker'da çalıştırmak için konteyner teknolojisini de kullanır. Aşağıdakiler, Fabricin tasarım hedeflerinden bazılarıdır:

  • Modüler tasarım, bileşenler değiştirilebilir
  • Docker üzerinde çalışan akıllı sözleşme

Şu anda, Fabric mimarisi kullanılarak geliştirilen birçok kavram kanıtı (POC) projesi uygulama aşamasındadır ve bazı finans kuruluşları bunları denemiştir, ancak proje henüz başladığından beri olgun bir uygulama bulunmamaktadır.

4. Zincirleme DNA

Onchain DNA (Onchain Dağıtılmış Ağ Mimarisi), Şangay merkezli blockchain başlangıç şirketi "Distributed Technology" tarafından geliştirilen bir blockchain mimarisidir. Aynı anda farklı uygulama türlerini ve genel zincirler, ittifak zincirleri ve özel zincirler gibi senaryoları destekleyebilir. İş sistemlerine hızlı bir şekilde entegre edin. Dağıtım Teknolojisi aynı zamanda Hyperledger'ın bir üyesidir.

Ethereum ve Fabric'ten farklı olarak Onchain DNA, sistemin alt kısmında birden fazla dijital varlığı destekler.Kullanıcılar doğrudan zincir üzerinde kendi varlık türlerini oluşturabilir ve ihracını ve işlem mantığını kontrol etmek için akıllı sözleşmeleri kullanabilir. Blok zinciri uygulama senaryolarının çoğu için dijital varlıklar vazgeçilmezdir ve her dijital varlık için akıllı sözleşmelere dayalı bir dizi iş süreci geliştirmek çok israf ve verimsizdir. Bu nedenle, blok zincirinin altından doğrudan dijital varlık işlevleri sağlamak çok gereklidir. Dijital varlıkları hiç gerektirmeyen uygulama senaryoları için, Onchain DNA tarafından sağlanan akıllı sözleşme işlevine dayalı isteğe bağlı özel mantık da yazabilirsiniz.

Onchain DNA'nın ana tasarım hedefleri aşağıdaki gibidir:

  • Birden çok dijital varlık için temel destek
  • Turing'in eksiksiz akıllı sözleşmesi ve kalıcı durumu
  • Zincirler arası birlikte çalışabilirlik
  • İşlemin kesinliği

Şu anda, birçok finans kurumu, bankalar, aracı kurumlar, ödeme, kayıt ve ödeme kurumları vb. Gibi blockchain kavram kanıtı ürünler geliştirmek için Onchain DNA mimarisini benimsemiştir. Ek olarak, Xiaoyi ve Fransız Zinciri gibi halihazırda iniş yapan bazı blok zinciri projeleri de var.

Antshares, varlıkların sayısallaştırılmasında konumlandırılmış, fiziksel dünyadaki varlıkları ve hakları dijitalleştiren halka açık bir zincirdir ve kayıt ve yayın işlemleri, transfer işlemleri, takas ve ödeme ve diğer finansal hizmetler merkezi olmayan ağ protokolü için eşler arası bir ağ kullanır. Topluluk tabanlı bir geliştirme modelini benimser ve Onchain DNA ile mimaride tutarlıdır, böylece Onchain DNA'ya dayalı herhangi bir blockchain sistemiyle birlikte çalışabilir.

LawChain, dünyanın ilk büyük ölçekli ticari yasal mevduat blok zinciridir.Çok sayıda kurum tarafından kurulan ve işletilen Onchain DNA blockchain teknolojisine dayalı bir kanıt kayıt ve koruma sistemidir. Sistemin merkezi bir kontrol noktası yoktur ve veriler bir kez girildiğinde, tek bir kurum veya düğüm kurcalanamaz, böylece adli mevduat gerekliliklerini karşılar.

5. Corda

Corda, New York merkezli bir blockchain startup şirketi olan R3CEV tarafından geliştirildi.Onun başlattığı R3 blockchain ittifakı, Wells Fargo, Bank of America ve New York Mellon gibi düzinelerce dev bankanın katılımını sağladı. Banka, Citibank, Commerzbank, Deutsche Bank, HSBC, Mitsubishi UFJ Financial Group, Morgan Stanley, National Australia Bank, Royal Bank of Canada, Nordic Bank (SEB), Societe Generale, vb. Corda'nın banka ve bankalar arası işlere adanmış teknik bir mimari olduğu R3 üyelerinin bileşiminden de görülebilmektedir. R3, Corda'nın bir blockchain olmadığını iddia etse de, bir blockchain'in bazı önemli özelliklerine sahiptir.

Corda, Java ve Kotlin tarafından geliştirilmiştir ve akıllı sözleşmeler ve veri erişim arayüzleri gibi çeşitli işlevlerinde tamamen Java'ya güvenmektedir. Corda'nın tasarım hedefleri esas olarak:

  • Global muhasebe defteri yok
  • İşlemlerin çoklu ödeme problemini çözmek noterlere kalmıştır.
  • İşlemi sadece işlemin katılımcıları ve noterler görebilir

Bu nedenle, tüm Corda işlemleri tüm ağa yayınlanmayacaktır ve tüm düğümler doğrudan iletişim kurar ve P2P ağı yoktur. Bu, ağ ölçeğinin küçük bir ölçekle sınırlı olmasına, büyük ölçekli bir ittifak zinciri oluşturamamasına ve uygulanabilir iş senaryolarının nispeten dar olmasına neden oldu.

Üç, teknoloji karşılaştırması

Daha sonra, önceki makalede bahsedilen blok zinciri çerçeveleri için bir dizi teknik karşılaştırma yapacak ve farklı boyutlardaki farklılıklarını ve benzerliklerini tartışacağız.

1. Dijital Varlıklar

Blok zincirinin yerleşik belirteci genellikle ekonomik bir teşvik modelidir ve spam işlemlerini önlemek için bir araçtır. Bitcoin, yalnızca bir yerleşik jetonla doğar ve bu nedenle, Bitcoin'e ek dijital varlıklar eklemek için harici bir protokol katmanı kullanılmadıkça, Bitcoin sistemindeki tüm "işlemler" esasen aktarımdır.

Ethereum ve Onchain DNA, yerleşik tokenlere sahiptir.Yukarıda bahsedilen ekonomik teşvikler ve spam önlemeye ek olarak, sistemin yerleşik işlevleri için bir ücretlendirme kanalı da sağlarlar. Örneğin, Ethereum'un akıllı sözleşme işleminin GAS tüketmesi ve Onchain DNA'nın dijital varlıklarının oluşturulması için de belirli miktarda token tüketmesi gerekiyor (isteğe bağlı).

Ethereum ve Fabric'in yerleşik çoklu dijital varlık desteği yoktur, ancak akıllı sözleşmeler yoluyla ilgili işlevleri yerine getirir. Bu yaklaşımın avantajı, sistem tasarımının çok kısa olması ve varlıkların davranışının yüksek derecede özgürlükle keyfi olarak belirlenebilmesidir. Bununla birlikte, böyle bir tasarım bir dizi olumsuz etki de beraberinde getirecektir.Örneğin, tüm varlık yaratıcıları kendi başlarına tekrar eden iş mantığı yazmak zorundadır ve kullanıcıların varlıklarını birleşik bir şekilde çalıştırma yolu yoktur.

Aksine, Onchain DNA ve Corda, altta birden fazla dijital varlığı destekleme yöntemini benimseyerek varlık oluşturucuların kendi varlık türlerini kolayca oluşturmalarına olanak tanır ve kullanıcılar aynı müşterideki tüm varlıkları yönetebilir. Daha karmaşık mantığa sahip iş senaryoları için, varlıkların işlevini geliştirmek için akıllı sözleşmeler kullanabilir veya varlıklarla hiçbir ilgisi olmayan bir iş mantığı oluşturabilirler.

2. Hesap Sistemi

UTXO (Harcanmamış İşlem Çıktısı) böyle bir mekanizmadır: her dijital para birimi bir hesabın mülkiyeti altında kaydedilecektir ve bir dijital para biriminin iki durumu vardır, yani henüz harcanmamış veya harcanmıştır. Bir dijital para biriminin kullanılması gerektiğinde, durumunu harcanmış olarak işaretleyin, ona eşdeğer yeni bir dijital para birimi oluşturun ve sahipliğini yeni hesap altında kaydedin. Bu süreçte, harcanan olarak işaretlenen dijital para birimi işlemin girdisi olarak adlandırılır ve oluşturulan yeni dijital para birimi işlemin çıktısı olarak adlandırılır.Bir işlem birden çok girdi ve birden çok girdi içerebilir Çıktı, ancak girdi ve çıkışın toplamı eşit olmalıdır. Bir hesabın bakiyesini hesaplamak için, hesapta kayıtlı tüm dijital para birimlerinin değerlerini toplamanız yeterlidir.

Bitcoin ve Corda, UTXO gibi bir hesap mekanizması kullanırken, Ethereum daha sezgisel bir denge mekanizması kullanır: her hesabın bir durumu vardır, hesabın mevcut bakiyesi doğrudan duruma kaydedilir ve transferin mantığı bir Tutarın bir kısmını hesaptan çıkarın ve ilgili tutarı başka bir hesaba ekleyin Çıkarılan kısım ve eklenen kısım eşit olmalıdır. Onchain DNA, hesap mekanizmasında bu iki mod ile uyumludur.

Peki UTXO modu ile denge modu arasındaki fark nedir? UTXO'nun en büyük avantajı, UTXO tabanlı işlemlerin paralel olarak doğrulanabilmesi ve isteğe bağlı olarak sıralanabilmesidir, çünkü tüm UTXO'lar birbiriyle ilişkili değildir, bu da blok zincirinin gelecekteki ölçeklenebilirliğine ve denge tabanlı tasarıma büyük ölçüde yardımcı olacaktır. Böyle bir avantaj yoktur; buna karşılık, denge tasarımının avantajı, tasarım fikrinin çok özlü ve sezgisel olmasıdır, bu da program uygulaması için uygundur, özellikle akıllı sözleşmelerde, UTXO'nun durumu ile başa çıkmak çok zordur. Bu nedenle, akıllı sözleşmeleri ana işlevi olarak kullanan Ethereum, denge tasarımını seçerken, Bitcoin, Onchain DNA, Corda ve diğer dijital varlık merkezli mimariler UTXO tasarımına daha yatkındır.

Kimlik doğrulama ile ilgili olarak, Bitcoin ve Ethereum temelde kimlik doğrulama tasarımına sahip değildir. Nedeni basittir, çünkü hem mahremiyeti hem de anonimliğe vurgu yapar, ancak denetime ve merkezileştirmeye karşıdır.Kimlik doğrulama, bazı merkezleri veya Zayıflamış merkezi kurum. Fabric, Onchain DNA ve Corda, kullanıcı kimliklerini doğrulamak için oybirliğiyle dijital sertifikaları kullanmayı seçti. Bunun nedeni, bu üçünün mevcut finansal sisteme uygulanacak tasarım hedeflerine sahip olması ve finansal sistemin uyumluluğu dikkate alması ve denetimi kabul etmesi gerektiğidir. Ek olarak, mevcut finansal sistem, blockchain sistemiyle hızlı bir şekilde entegre edilebilmesi için büyük ölçekli bir dijital sertifika şemasını benimsemiştir.

3. Fikir birliği mekanizması

Konsensüs mekanizması, dağıtılmış sistemin çekirdek algoritmasıdır.Dağıtılmış sistemin verileri katılan düğümler arasında dağıldığından, bu dağınık verilerin bir algoritma aracılığıyla tutarlı tutulması gerekir, aksi takdirde sistem düzgün çalışmayacaktır. Geleneksel dağıtılmış sistemlerden farklı olarak, blok zinciri merkezi olmayan bir sistemdir ve çok sayıda finansal varlık taşıyabilir, bu nedenle merkezi bir dağıtılmış sistem iken genel arızalar yerine çok sayıda Bizans arızasıyla karşılaşabilir. Nadiren Bizans başarısızlığıyla karşılaşır. Bu nedenle, blok zincirinin fikir birliği mekanizması geleneksel dağıtılmış sistemden oldukça farklıdır.

Bitcoin ve Ethereum, defter verilerinin tutarlılığını sağlamak için bir Çalışma Kanıtı mekanizması kullanır. İş kanıtı aynı zamanda bir simge dağıtım mekanizmasıdır.Düğümleri ekonomik teşvikler yoluyla blok yapım sürecine katılmaya teşvik eder.Bir blok oluştururken, bir düğümün bloğun gerekli zorluk gereksinimlerini karşılaması için rastgele bir sayı tüketmesi gerekir. Blok zinciri çatalladığında, dürüst düğümler daha büyük iş yüküne sahip zinciri seçecek ve daha küçük iş yüküne sahip zinciri atacaktır. Tüm düğümlerin kar amaçlı olduğu ve daha küçük bir iş yüküne sahip bir zincir seçmenin kendisinin elde ettiği teşvikleri geçersiz kılacağı varsayıldığından, tüm düğümler sonunda dürüst olacak, böylece her düğümün blok zinciri verileri tutarlı olacaktır. .

Böyle bir blok zincirini bir çalışma kanıtı mekanizmasıyla sürdürmek için, ağın güvenliğini sağlamak için tüm ağın büyük ölçekli bir hesaplama gücü desteğine sahip olması gerekir, aksi takdirde defter verileri kurcalanabilir. Buna ek olarak, ağı korumak için büyük miktarda bilgi işlem gücü korunsa bile, iş kanıtı işlemlerin kesinliğini temelde garanti edemez.Örneğin, Bitcoin genellikle Orphaned Blocks ve izole bloklarda bulunan işlemler oluşturur. İptal edilebilir. Bu nedenle Bitcoin, kullanıcıların işlemin kabul edilebilir bir olasılıkla tamamlandığını düşünebilmeleri için genellikle 6 bloğun onaylanmasını yani yaklaşık 1 saat beklemelerini gerektirir ve bu olasılık nihai değildir - asla Önceki işlemleri iptal etmeye çalışan tüm ağı aşan muazzam bir bilgi işlem gücü olup olmadığını biliyorum. Büyük bilgi işlem gücünü sürdürmek için elektriğin maliyeti de oldukça fazla.Bu nedenle, Ethereum zaten iş kanıtı mekanizmasından diğer fikir birliği mekanizmalarına geçmek için bir plan tasarlıyor.

Hem Fabric hem de Onchain DNA, Bizans Hata Tolerans modeline dayalı bir fikir birliği mekanizması tasarladı. Düğümler, sıradan düğümlere ve hesaplama düğümlerine bölünmüştür (Doğrulama Eşi). Blok oluşturma sürecine yalnızca muhasebe düğümleri katılır. Bu rollerin ayrılması, algoritma tasarımcılarının fikir birliği algoritmalarını çalıştıran düğümlerin sayısını sınırlamasına olanak tanır. Kontrol edilebilir bir ölçekte.

Bizans hataya dayanıklı modeli, ağdaki düğümler için varsayımlar ve gereksinimler yapar: Konsensusta Bizans başarısızlığına sahip olacak f düğümleri varsa, ağın çatallanmasını önlemek için en az 3f + 1 düğümünün mutabakata katılması gerekir. Bu model altında, her bir düğümün bağımsız olarak bir blok oluşturduğu çalışma kanıtı mekanizmasının aksine, her bloğun inşası, tamamlanması için en az 2f + 1 düğümün katılımını gerektirir. Bir blok oluşturulduktan sonra, 2f + 1 dürüst defter tutma düğümleri aynı yükseklikte iki farklı bloğu imzalayıp doğrulamayacağı için iptal edilemez.

Buna karşılık, iş yükünden korunma mekanizması son derece yüksek esneklik ve kullanılabilirlik sağlar, çünkü her düğüm bağımsız olarak bir blok oluşturur ve diğer düğümlerin katılımını neredeyse hiç gerektirmez.Düğümler, yalnızca ağın tamamı kalsa bile ağa herhangi bir zamanda katılabilir veya ağdan çıkabilir. Bir sonraki düğümde, ağ çalışmaya devam edebilir, ancak buna bağlı olarak işlemin sonunu da kaybeder; Bizans'ın hataya dayanıklı mekanizması bunun tersidir, belirli bir esneklik ve kullanılabilirlik derecesinden ödün verir, muhasebe düğümü bunun yerine çevrimiçi hizmetler sunmalıdır. Ağdan çekilin, hesaplama düğümlerinin 1 / 3'ü çalışmaz hale geldiğinde ağ kullanılamaz hale gelir, ancak işlemin kesinliğini garanti eder.

4. Akıllı Sözleşme

Akıllı sözleşme, ilk olarak 1994 yılında, neredeyse İnternet ile aynı yaşta olan kriptograf Nick Szabo tarafından önerilen bir kavramdır. Akıllı sözleşmeler, sözleşme şartlarını otomatik olarak uygulayabilen bilgisayar programlarını ifade eder.Bitcoin ortaya çıkmadan önce, güvenli ve güvenilir bir yürütme ortamı olmadığı için, akıllı sözleşmeler gerçekte uygulanamazdı. Ademi merkeziyetçilik, açıklık ve şeffaflığı nedeniyle, blok zinciri doğal olarak akıllı sözleşmeler için güvenilir bir yürütme ortamı sağlayabilir. Bu nedenle, neredeyse tüm yeni blok zinciri çerçevelerinin yerleşik akıllı sözleşme işlevleri vardır.

Bitcoin, imza doğrulama ve çoklu imza doğrulama gibi işlemlerin basit geçerliliğini doğrulamak için benzersiz bir komut dosyası kodu çalıştırabilen yerleşik yığın tabanlı bir komut dosyası yürütme motoruna sahiptir. Bu betik dili kasıtlı olarak tam Turing olmayan, yeterince basit ancak para birimi transferlerinin çeşitli ihtiyaçlarını karşılamak için yeterli olacak şekilde tasarlanmıştır.

Ethereum, ana işlevi olarak Turing eksiksiz akıllı sözleşmelerine sahip ilk blok zinciridir.Kullanıcılar, Ethereum platformunda kendi sözleşmelerini oluşturabilir ve sözleşmenin içeriği para birimi transferleri dahil herhangi bir mantığı içerebilir. Sözleşme, Ethereum ekibi tarafından özellikle akıllı sözleşmeler yazmak için geliştirilmiş üst düzey bir dil olan Solidity adlı bir dilde yazılmıştır.Sözdizimi JavaScript'e benzer.Sonunda bayt kodunda derlenir ve EVM (Ethereum Sanal Makinesi) üzerinde çalıştırılır. ) İçinde. EVM, yığın, bellek, depolama ve bir dizi özel komut seti gibi sanal donanım sağlar.Tüm kodlar bir sanal alanda çalışır. Sözleşmeler arasında birbirini arama yeteneği sağlar ve hatta çalışma zamanında yürütülmek üzere diğer sözleşmelerin kodunu dinamik olarak yükleyebilir. Bu yetenek Ethereum sözleşmelerini çok esnek hale getirir, ancak sözleşmenin işlevini de belirsizleştirebilir.

Ethereum'un kendi dil ve sanal makine geliştirme fikrinin aksine Fabric, akıllı sözleşme işlevlerini desteklemek için mevcut konteyner teknolojisini kullanmayı seçti. Fabric'in akıllı sözleşmeleri teorik olarak herhangi bir dilde yazılabilir, bu da geliştiricilere oldukça dostça davranır.Yeni bir dil öğrenmelerine gerek kalmaz, mevcut iş kodlarını ve zengin geliştirme kitaplıklarını yeniden kullanabilir ve tanıdık geliştirmelerini kullanabilirler. aracı. Tersine, docker kullanan akıllı sözleşme mimarisinin de birçok sorunu vardır: Birincisi, akıllı sözleşmenin yürütme sürecini kontrol etmek zordur, böylece işlevleri kısıtlanamaz; ikincisi, sözleşme işlemi tarafından tüketilen bilgi işlem kaynaklarını doğru bir şekilde belirleyemez. değerlendirilmesi;

Ek olarak, docker çalıştırmak nispeten kaynak tüketen bir işlemdir ve bu da mobil cihazlarda sözleşmelerin çalıştırılmasını zorlaştırır.Son olarak, farklı düğümlerin donanım yapılandırması, sözleşmede atıfta bulunulan geliştirme kitaplıkları vb., Sözleşmenin davranışının çok fazla olmasına neden olabilir. Güçlü belirsizlik.

Onchain DNA, akıllı sözleşme işlevi için temel destek olarak AVM'yi (Antshares Sanal Makinesi) kullanır. AVM, mikro çekirdekli, platformdan bağımsız bir akıllı sözleşme yürütme ortamıdır. Yığın işlemleri, akış kontrolü, mantıksal işlemler, aritmetik işlemler, kriptografik işlemler, dizgi işlemleri ve dizi işlemlerini içeren bir dizi talimat sağlar. Donanım açısından , Yalnızca iki hesaplama yığını sağlar. Bununla birlikte, blok zinciri uygulayıcılarının kendi sanal donanımlarını oluşturmalarına ve onu arayüzler şeklinde akıllı sözleşmelere açmalarına izin verdiği için, sözleşmeler platformla ilgili verileri, kalıcı depolamayı ve çalışma zamanında İnternet'e erişim sağlayabilir. Bu, sözleşmenin davranışını da belirsizleştirse de, blok zincirinin uygulayıcısı, sanal donanımı makul bir şekilde programlayarak bu belirsizliği ortadan kaldırabilir. Bununla birlikte, şu anda AVM'yi destekleyen bir derleyici ve geliştirme ortamı olmadığından, AVM'ye dayalı akıllı sözleşmeler geliştirmeyi çok zorlaştırmaktadır.Geliştiriciler, yüksek teknoloji gerektiren sözleşmeleri yazmak için assembly'ye benzer bir sözdizimi kullanmak zorundadır. kabiliyet.

Corda'nın akıllı sözleşme işlevleri, tıpkı kendisi gibi JVM'ye (Java Virtual Machine) dayanmaktadır. Bu nedenle, Java, Kotlin vb. Gibi herhangi bir JVM uyumlu dili geliştirme için kullanabilirsiniz. Ancak, üzerinde çalışan sözleşme betiklerini belirleyici hale getirmek için JVM'yi değiştirmiştir. Geliştirme süreci kabaca şu şekildedir: Sözleşme arayüzünü uygulayan bir sınıf oluşturmak için Java'yı kullanın ve işlemi doğrulamak için doğrulama adında bir işlev sağlayın. İşlev, geçerli işlemi bir parametre olarak kabul eder. Doğrulama başarısız olursa, bir istisna atılır ve istisna yoksa doğrulama geçilir. Corda, kalıcılık işlevini sağlamak için JPA (Java Persistence Mimarisi) kullanır, SQL ifadelerini ve yaygın olarak kullanılan veritabanlarını destekler, ancak ilgili eklentileri yüklemesi gerekir ve veriler yalnızca sözleşme uygulayıcısının düğümünde depolandığından, global kalıcı depolama gerçekleştirilemez.

5. Ölçeklenebilirlik

Blok zincirinin veri yapısı genellikle yalnızca ek kayıtların eklenebilmesi, ancak kayıtların değiştirilememesi veya silinememesi şeklindedir.Gerçekten tam geçmiş verileri kaydeder, böylece yeni eklenen düğümler tüm ağın tüm işlem geçmişini güven olmadan doğrulama yeteneğine sahip olur. Diğer düğümler. Bu özellik, ademi merkeziyetçiliğin rahatlığını getirir, ancak aynı zamanda blok zinciri sisteminin ölçeklenebilirliğini de etkiler, çünkü blok, tüm sabit disk dolana kadar sonsuz bir şekilde büyüyecektir. Bu nedenle, sürekli artan verilerle başa çıkmak için bir alan geri dönüşüm mekanizması sağlamak gerekir.

Bitcoin, işlem karmalarını depolamak için Merkle ağacının kullanılmasını önerdi.Sabit disk alanının geri kazanılması gerektiğinde, yalnızca eski işlemlerin Merkle ağacından kaldırılması gerekir. İşlem bilgisi olmayan bir blok başlığının boyutu sadece 80 bayttır. Her 10 dakikada bir Bitcoin blok oluşturma oranına göre, her yıl üretilen veriler yaklaşık 4,2 MB, tüm blok başlıkları bellekte saklansa bile sorun değil.

Bitcoin blok sıkıştırması temelinde, Ethereum, Fabric ve Onchain DNA, sabit disk alanından tasarruf etmek için durum anlık görüntülerini benimsemiştir. Spesifik olarak, blok başlığının yapısı sadece geçerli bloktaki tüm işlemlerin kök karmasını değil, aynı zamanda geçerli bloktaki ve tüm geçmiş bloklardaki durumun kök karmasını da kaydeder. Bu durumlar tüm UTXO'ları, hesap bakiyelerini, sözleşme depolamasını vb. İçerir, bu nedenle düğümlerin yalnızca en son blokları tutması ve durum bilgilerini tamamlaması gerekir.

Ölçeklenebilirliğin bir diğer önemli göstergesi de işlem hacmi. Ağ yapısı, şifreleme algoritması, fikir birliği mekanizması vb. Gibi verimi belirleyen birçok faktör vardır, ancak en önemlisi işlemlerin paralel olarak doğrulanıp doğrulanamayacağıdır. İşlemler paralel olarak doğrulanabilirse, işlem hacmi yalnızca gelecekte CPU sayısı artırılarak artırılabilir. UTXO sistemine dayalı Bitcoin, işlemleri paralel olarak kolayca doğrulayabilir, çünkü UTXO'lar ilişkili değildir ve herhangi bir UTXO'nun durum değişikliği bağımsız olarak gerçekleştirilebilir ve sırayla hiçbir ilgisi yoktur; bakiye tabanlı hesap sistemi böyle değildir. Paralellik elde etmek kolaydır, çünkü aynı hesapta varlık işlemlerini gerçekleştirmek için aynı anda birden fazla işlem gerçekleşebilir ve bu da işlemek için bazı ek adımlar gerektirir. Örneğin, hesaptaki bakiyenin 10 yuan olduğunu ve hesap için iki işlemin aynı anda gerçekleştiğini, hesapta ilk işlemin +5 yuan ve ikinci işlemin hesapta -11 yuan olduğunu varsayalım. Daha sonra ilk işlem ilk yapılırsa, her iki işlem de başarılı olur ve son bakiye 4 yuan; ikinci işlem ilk gerçekleştirilirse, yetersiz bakiye nedeniyle başarısız olur, yalnızca ilk işlem başarılı olur ve son bakiye olur 15 yuan.

İşlemlerin paralel olarak doğrulanması için belirleyici rol, akıllı sözleşmenin durumu devam ettirme yeteneğine sahip olup olmadığıdır. Bir grup sözleşme vatansız ise, o zaman herhangi bir yan etki olmaksızın herhangi bir sırayla icra edilebilir; aksine, sözleşme bir grup devleti etkileyebiliyorsa, o zaman sözleşmenin sonuçlarını farklı bir sırada yürütün Farklı olacak. Örneğin, mevduat faizini hesaplayan bir sözleşmenin iki alt işlevi vardır: mevduat ve faiz ödemesi. Hesapta 100 yuan olduğunu ve faiz oranının% 10 olduğunu varsayalım.Şimdi aynı anda iki işlem gerçekleşti.İlk işlem 100 yuan yatırmak ve ikinci işlem faiz ödemektir. İlk işlem ilk yapılırsa, son hesap bakiyesi: (100 + 100) *% 110 = 220 yuan; eğer ikinci işlem önce gerçekleştirilirse, hesap bakiyesi şu şekilde olacaktır: 100 *% 110 + 100 = 210 yuan . Durum kalıcılığı yeteneklerine sahip akıllı sözleşmelerin sırayla ilişkili olduğu görülebilir, bu nedenle eşzamanlı olarak doğrulamak zordur, özellikle sözleşmeler hala birbirini arayabiliyorsa, durum daha karmaşık olacaktır.

Şu anda Fabric bu sorunu çözmek için iyi bir yol önermedi; Corda'nın bu sorunu yok, çünkü işlem katılımcıları ve noterler doğrulayabildiği sürece işlemin kendisi tüm ağa yayınlanmayacak. Hem Ethereum hem de Onchain DNA'nın yöntemleri bölümlere ayrılmış, yani her sözleşme farklı mantıksal alanlara bölünmüş, her alandaki sözleşmeler sırayla yürütülüyor ve farklı alanlar paralel olarak yürütülüyor.

Ethereum, sözleşme adresinin ilk baytını bölüm temeli olarak kullanır ve sonuçta 256 bölüm elde edilir.Her sözleşme kendi bölümünde çalışır ve yalnızca aynı bölümdeki sözleşmeleri çağırabilir. Ancak bu yaklaşım aslında sorunu etkili bir şekilde çözmez, çünkü her zaman yaygın olarak kullanılan bazı ortak temel sözleşmeler vardır ve arayan sözleşmelerinin çoğu aynı bölümde toplanır.

Onchain DNA, sözleşmeleri işlev sözleşmelerine (işlev kodu) ve uygulama sözleşmelerine (uygulama kodu) ayırır. Bunlar arasında işlevsel sözleşme, diğer sözleşmeler tarafından çağrılan ve vatansız olarak beyan edilmesi gereken yeniden kullanılabilir işlevsel işlevler sağlamak için özel olarak kullanılır. Bu, sözleşme birleştirme olgusunun çoğunu ortadan kaldırır ve yalnızca uygulama sözleşmeleri kendi durumlarını kurtarabilir, bu nedenle Uygulama sözleşmelerini yürütürken, onlar için dinamik bir bölümleme şeması benimsenir: sözleşmeler yürütülmeden önce, çağrı ağaçları ilk olarak hesaplanır ve çağrı ağaçlarının kesişimiyle sözleşmeler yürütme için aynı bölüme yerleştirilir.

Dört, benzersiz özellik

1. Hayalet Protokolü

Ghost Protokolü, Ethereum'un mevcut POW algoritmasının bir iyileştirmesidir.Motivasyonu, yüksek blok geçersiz kılma oranı nedeniyle mevcut hızlı onaylanmış blok zincirinin düşük güvenliğidir. Bloğun tüm ağa yayılması belirli bir zaman aldığından, madenci A bir blok kazarsa ve sonra madenci B, A bloğu B'ye yayılmadan önce başka bir blok kazarsa, madenci B'nin bloğu geçersiz olacaktır. Ve ağ güvenliğine katkıda bulunmadı. A, tüm ağın bilgi işlem gücünün% 30'una sahip bir madencilik havuzuysa ve B, hesaplama gücünün% 10'una sahipse, A, zamanın% 70'inde ve B% 90'ında geçersiz bloklar oluşturma riskiyle karşı karşıya kalacaktır. Blok.

Hayalet protokol, hangi zincirin "en uzun" olduğunu hesaplarken atık blokları dahil ederek, ağ güvenliğini azaltmanın ilk sorununu çözer; yani, yalnızca bir bloğun üst öğesi ve daha önce değil Hangi bloğun en büyük çalışma kanıtına sahip olduğunu hesaplamak için, ata bloğunun eski alt bloğu olan ata bloğu (Ethereum terminolojisinde "amca blok" olarak adlandırılır) da eklenir. Ethereum, yeni bloğun "amca bloğu" olarak onaylanmasına katkıda bulunan atık bloklar için ödülün% 87,5'ini ödüyor ve bunları hesaplamaya dahil eden "yeğen bloğu" ödülün% 12,5'ini alacak. Hesaplamalar, teşvikli beş katmanlı hayalet protokolünün, blok oluşturma süresi 15 saniye olduğunda bile% 95'in üzerinde bir verimlilik sağladığını ve% 25 bilgi işlem gücüne sahip madenciler için merkezileştirmenin faydalarının% 3'ten az olduğunu gösteriyor.

2. Ulusal gizli algoritma

Ulusal Kriptografik Algoritma, simetrik şifreleme algoritması SM1, eliptik eğri asimetrik şifreleme algoritması SM2, karma algoritma SM3 vb. Dahil olmak üzere Çin Devlet Kriptografi İdaresi tarafından formüle edilen bir dizi ticari kriptografik algoritmadır.

Blok zinciri, kriptografik algoritmaları kullanırken genellikle AES, ECDSA, SHA2 gibi uluslararası standartları kullanır. Yerel finans kurumları kriptografik çözümleri seçtiklerinde, genellikle ulusal gizli algoritmaları dikkate alırlar.

Onchain DNA, isteğe bağlı kriptografi modülleri sağlar.Güvenlik ve politika risklerini çözen farklı uygulama senaryoları için farklı kriptografi standartları seçilebilir.

3. Çapraz zincir birlikte çalışabilirlik

Şu anda, blok zincir teknolojisi yüz çiçeğin çiçek açtığı bir çağda ve yüzlerce düşünce okulu birbiri ardına ortaya çıktı.Blok zincirler arasında birlikte çalışabilirlik çok önemli ve acil bir ihtiyaç haline geldi. Kurumsal kullanıcıların işlerini farklı zincirler arasında taşıması gerekebilir; sıradan kullanıcıların farklı zincirler arasında varlıkları değiş tokuş etmesi gerekebilir; merkez bankasının dijital yasal para biriminin çeşitli blok zincirlerde dolaşması gerekebilir.

Onchain DNA, zincirler arası birlikte çalışabilirlik protokolü sağlar.Bu çapraz zincir protokolü sayesinde kullanıcılar, varlık işlemlerini, sözleşme yürütmeyi ve diğer işlemleri farklı blok zincirlerinde gerçekleştirebilir ve bu işlemin her blok zincirinde işlem tutarlılığını sağlayabilir. .

4. Zincirsiz yapı

Corda'nın beyaz bültende belirttiği gibi, bir zincir yapısı yoktur ve işlemler tüm ağa yayınlanmaz, yalnızca işlem katılımcıları ve noterler arasında gönderilir. Bu nedenle, verilere yalnızca erişime ihtiyacı olan kişiler tarafından erişilebilir ve gizlilik sızıntısı sorunu önlenir. Global zincir yapısı olmadığından, her düğüm tüm işlemleri ağın tamamında depolamak yerine, yalnızca kendisiyle ilgili işlemleri saklar ve bu da büyük ölçüde yerden tasarruf sağlar.

V. Özet

Bu makale, çeşitli mevcut blok zinciri çerçevelerinin özelliklerini ve işlevlerini birden çok boyuttan karşılaştırır ve tartışır ve çeşitli yönlerden avantaj ve dezavantajlarının yanı sıra uygulama alanındaki uygulanabilirlik ve sınırlamalarını açıklar.

Bitcoin, blockchain teknolojisinin prototipi olmasına ve teknik mimarisinin madencilik, Turing dışı bütünlük gibi kısıtlamaları nedeniyle çok önemli bir konuma sahip olmasına rağmen, karmaşık iş senaryolarına uygulanması zordur, ancak çok uygundur. Para basımı için kullanılır.

Ethereum aynı zamanda madencilik biçimini benimsese de, hayalet protokolü madenciliğin verimliliğini artırıyor, yeni fikir birliği algoritmaları da geliştiriliyor ve halka imzalı karışık para birimi gibi kriptografiye dayalı daha fazla gizlilik koruma şeması da geliştirildi. Çözüm, Merkezi Olmayan Otonom Organizasyon oluşturmak için çok uygundur.

Hem Fabric hem de Onchain DNA, finansal alandaki uygulama senaryoları da dahil olmak üzere çeşitli özel iş birliği zincirlerini özelleştirmek için uygun kurumsal düzeyde blok zinciri çözümleri olarak konumlandırılmıştır. Aradaki fark, Fabric'in akıllı sözleşmelerle yönlendirilmesi, Onchain DNA'sının ise dijital varlıklar tarafından yönlendirilmesidir; İlki, karmaşık özel iş süreçleri geliştirmek için daha uygunken, ikincisi dijital varlık merkezli bir finansal iş sistemi veya hak tescil sirkülasyonu oluşturmak için daha uygundur. Sistem ve güçlü ölçeklenebilirliğe sahiptir.

Corda

erik@antshares.org QQ 451931692

7303.00 7262.00

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.

Bu 4 hareket dizlerinizi "cezalandırmak" içindir Diziniz iyi mi?
önceki
"Ekolojik" sistem, SAIC-GM'nin hızlı ve istikrarlı büyümesinin arkasındaki itici güçtür
Sonraki
Önce kas mı kazanıyorsunuz yoksa yağ mı kaybediyorsunuz? Nasıl kas ve daha fazla yağ kaybedebilirim?
SUV pazarı iyimser olmaya devam ediyor ve talep yükseltmeleri, niteliksel değişikliklere niceliksel değişikliklere yol açıyor
Kas kazanmak teknik bir iştir: 5 kas kazanma becerisi, çaylak fitness ustasına izin verin!
Mars o kadar huzurlu değil: toz şiddetli, kasırga uzayda görülebilir!
Hafta sonu "saldırı" sporları gibi mi? Çabuk durun! "Rabdomiyoliz" e dikkat edin
Yüzyıllık meyveli kek Antarktika'da ortaya çıktı, iyi korunmuş ve neredeyse yenilebilir, denemeye cesaret edebilir misiniz?
Kör görüş alanı çok korkunç, yaklaşık 100.000 yuan panoramik görüntüye sahip 5 model önerin
Çin-ABD yarı iletken ihracat verisi anlaşmazlığı: On milyarlarca fark nereye gitti?
Diğerlerinden daha yaşlanmak istemiyor musunuz? Yağ eklemek istemiyor musunuz? O zaman zindeliğe gelin!
Bu arabalar sadece güzel ve pahalı değil, aynı zamanda iç mekanı da sportif
Yaz aylarında kilo vermeye uygun üç çeşit egzersiz, "tüm vücudu inceltmek" için sadece birini seçin!
Uzmanlar doğruladı: Uzaylılar büyük olasılıkla burada yaşıyor, dünyadan çok da uzak değil!
To Top