"Hyperledger Fabric sahte bir blok zinciridir!"

Yazar | Stuart Popejoy

Derleme | Krallık Mührü

Üretildi | Blockchain Kampı (blockchain_camp)

Libra'nın piyasaya sürülmesinden bu yana, uzun süredir sessiz olan blockchain topluluğu tekrar aktif hale geldi ve blockchain işini keşfeden bazı şirketler de gizlice rekabet ediyor. Bu büyük şirketlerin genellikle Bitcoin ve Ethereum gibi mevcut blok zincirlerine göz yumduğunu da fark ettiğinize inanıyorum. Bunun nedeni, verilerin önemini tam olarak anladıkları için, verileri halka açan Bitcoin ve Ethereum gibi halka açık blok zincirlerini seçmeyecekler, ancak katılımcıları katılmaları için kontrol edebilecek özel blok zincirleri için yumuşak bir noktaya sahip olacaklar.

Özel blok zincirleri söz konusu olduğunda, IBM'den bahsedilmesi gerekir. IBM, özel blok zinciri alanında bir lider olarak tanımlanabilir. Blok zinciri ürünü Hyperledger Fabric, birçok blok zinciri geliştiricisinin ilk tercihidir.Aynı zamanda IBM, Wal-Mart ve Antai Sigorta ve Finans Grubu gibi büyük şirketlerle güçlerini birleştirmiştir. Kurumsal blok zincirindeki fırsatı değerlendirmek ve avantajları genişletmek için blok zinciri iniş sahnesinin araştırılması. Twitter'daki bazı istatistiklere göre, yalnızca geçen yıl IBM blockchain patentlerinin sayısı arttı 30 % 0.

Açık kaynaklı kar amacı gütmeyen kuruluş Hyperledger Foundation'a (kısa süre önce katılan Microsoft ve müşteri ilişkileri yönetimi platformu Salesforce dahil) katkıda bulunan birçok kişiden biri olarak, IBM'in Hyperledger Fabric'in geliştirilmesini teşvik etmek için kan harcadığı söylenebilir, bu da Hyperledger Fabric'in sahip olacağı ve Bitcoin, Ethereum ve diğer yaygın blok zincirleri aynı özelliklere sahiptir ve aynı zamanda "kurumsal senaryolara uygun olmayan" özellikler silinecektir.

IBM, Hyperledger Fabric'i bir blockchain olarak adlandırsa ve izin verilen bir blockchain ile veya halka açık bir blockchain ile karşılaştırılsın, onu bir blockchain adına pazarlasa da, Hyperledger Fabric gerçek anlamda çok şey feda etti. Blok zincirinin özellikleri.

Hyperledger Fabric'in mimarisi herhangi bir blockchain platformundan çok daha karmaşık olsa da, kurcalama direnci ve saldırı önleme gibi güvenlik özellikleri açısından hala tatmin edici değildir. Ayrıca "özel" bir blok zincirinin ihtiyaçlarınızı karşılamak için en azından ölçeklenebilirliği ve performansı garanti edebileceğini düşünebilirsiniz, ancak Hyperledger Fabric'in bu iki özelliği de sizi hayal kırıklığına uğratacaktır. Kısacası, Hyperledger Fabric'e dayalı deneyler karmaşık ve güvensiz blok zincirleri sorunuyla karşı karşıya kalacak ve blok zincirlerinin ölçeklenebilirliği, hızlı iş büyümesinin getirdiği talepleri karşılamayabilir.

Bu bağlamda, Eski JP Morgan Chase Blockchain Takım Lideri Karakter Stuart Popejoy Hatta IBM'in sahte bir blockchain yaptığını iddia ederek, kafasına çivi çaktı!

Neden Stuart Popejoy düşünmek IBM sahte bir blockchain yaptı ? Bu makale size anlatıyor.

[Açıklama: Makale yalnızca kişisel görüşleri temsil eder ve içeriği ve fikirleri CSDN'nin konumunu temsil etmez]

Hyperledger Fabric performans indeksi Yanıltıcı

2016 yılında JPMorgan Chase'de çalıştığımda, bankacılık endüstrisindeki potansiyel blockchain uygulamaları ve blockchain'e stratejik yatırımları incelemek için en son teknolojide uzmanlaşmış bir ekibe liderlik ettim. Çalışmanın bir parçası olarak Hyperledger, Axoni, Symbiont, Ripple ve Ethereum'un erken sürümlerinin derinlemesine analizini yaptık. O zamanlar piyasadaki birkaç blok zinciri projesinin teknik olarak gerçek işletme senaryoları için uygun olmadığı açıktı. Ne yazık ki, Hyperledger Fabric bu temel sorunu hala çözemiyor. O zaman düşündüğümüz ayrıntılar şunları içeriyordu:

  • Blockchain'in akıllı sözleşme dili, karmaşık iş mantığını güvenli ve basit bir şekilde nasıl ifade eder?

  • Açık anahtar imzasının geçerliliği nasıl sağlanır?

  • Ölçeklenebilirliği sağlamak için performansı büyük ölçüde düşürmeden blok zincirindeki diğer katılımcılara (düğümlere) katılmak mümkün müdür?

  • Bu uzun vadeli şirketler, seçilen blok zincirinin gelecekte diğer kamu veya özel blok zincirleriyle kolayca birlikte çalışıp çalışamayacağını da değerlendirecekler mi?

Bu ayrıntıların analizinden, IBMin Hyperledger Fabric'inin temelde blok zincirinin gerekli unsurlarından yoksun olduğuna ve performans göstergelerinin yanıltıcı olduğuna inanıyorum.Uzun vadeli işin fizibilitesi, insanları düşündürmekten başka yardımcı olamaz. Çok Soru işareti.

TPS'yi ve sıradan kişilerin dijital oyunlarını kandıran düğümlerin sayısını blok zincirinin benimsenmesi için standart olarak görmedik, ancak bu dijital oyunların daha fazlasını deneyimledikten sonra, okuyuculara blok zincirinin ne olduğunu ve neyin bölge olmadığını söylemenin gerekli olduğunu düşünüyoruz. Blok zinciri.

Blockchain nedir? Blockchain nedir?

IBM blok zincirinin konumunu daha iyi anlamak için blok zinciri tanımına dönmemiz gerekiyor. Blok zincirinin özü, merkezi olmayan, değiştirilemez bir defterdir.Olaylar veya işlemler defterde saklanır ve deftere hangi verilerin eklendiği, tamamen fikir birliği mekanizması tarafından belirlenir. Bitcoin ve Ethereum gibi halka açık blok zincirlerinde bu fikir birliği, iş kanıtı veya "madencilik" yoluyla elde edilir. İzin verilen blok zincirinde, katılımcılar fikir birliğinin içeriğini oylamak için kriptografik imzalar sağlar ve böylece bir fikir birliğine varır. Her iki durumda da hiçbir merkezi kurum müdahale etmeyecek.

IBMin blok zinciri tanımı, ademi merkeziyetçilik ve değişmezliğin iki unsurunu devam ettiriyor, ancak kolaylık sağlamak için merkezi olmayan konsensüs mekanizmasını atlıyor. Hyperledger Fabric bir dereceye kadar bunu yapmıyor Gerçek bir fikir birliği mekanizmasına ihtiyaç vardır. Bunun yerine, Hyperledger Fabric, Kafka adlı bir "sipariş hizmeti" önerir.

Ancak sorun şu ki, kriptografik algoritmalara dayalı bir yaptırım yoksa, yüksek derecede demokratikleştirme yoksa ve katılımcıların oylarının güvenliğini sağlayacak kriptografik bir mekanizma yoksa, o zaman birinin blok zinciri defterine müdahale edip etmediğini kanıtlayamazsınız. Hataya dayanıklı bir mekanizma ile fikir birliği, blok zincirinin ayırt edici bir özelliğidir. Bu olmadan, IBM'in "blok zinciri" yalnızca zaman damgalı projelerin bir listesidir.

Hyperledger Fabric mimarisi, kötü niyetli katılımcılar tarafından istismar edilebilecek birçok güvenlik açığını ortaya çıkarır. Örneğin, bir açık anahtar şifreleme mekanizması ve "ağ içinde" doğrulayıcı imzalar sunar, ancak bu ana güvenlik garantileri yalnızca harici olarak imzalanmış bir işlem gönderildikten sonra üretilir.

Bu, herhangi bir işlemin kaynağının yalnızca harici bir kullanıcının açık anahtar imzasıyla garanti edildiği ve sistemin hiçbir şekilde müdahale edemediği Bitcoin'in ve diğer blok zincirlerinin zaman içinde kanıtlanmış güvenlik modelini temelden ortadan kaldırır.

Keskin bir tezatla, Hyperledger Fabric'teki tek önemli imza, doğrulayıcının imzasıdır ve kullanıcının imzası, blockchain ağı aracılığıyla çoğaltılan herhangi bir veritabanında kaybolur.

Hyperledger Fabric 1.0 işlem yaşam döngüsü, resim kaynağı: developer.ibm .com

Hyperledger Fabric tarafından sağlanan API'nin yardımıyla, blok zincirine bir işlem eklemek aşağıdaki adımları gerektirir:

Bir işlem ön teklifi gönderildikten sonra, onaylayan eş (ciro eş) mantığını akıllı sözleşme dili zincir kodu aracılığıyla yürütür, aynı zamanda durum veritabanını sorgular ve kullanılacak okuma-yazma setini (REset) oluşturur. Oluşturulan okuma-yazma seti, işlem ön teklifine yanıtı döndürür. Daha sonra, sistem bir okuma-yazma seti ile bir işlem ön teklifi sunacaktır. Sipariş hizmeti, bloğa bir grup işlem ekleyecektir. Tüm düğümler, sipariş hizmeti tarafından gönderilen blok bilgilerini alacaktır, ancak blok zincirindeki verilerin güvenliğini sağlamak için bloktaki işlem bilgilerini doğrulamaları gerekir.Adımlar aşağıdaki gibidir:

  • Onay düğümünün yürütme stratejisini doğrulayın;

  • Geçerli durum veritabanındaki okuma-yazma kümesinin sürümünü doğrulayın;

  • Blok bilgilerini blok zincirine gönderin;

  • Doğrulanmış işlem bilgilerini eyalet veritabanına gönderin.

Hyperledger Fabric araştırmacıları, bu dijital oyunları oynamak için hiçbir çabadan kaçınmadı ve sözde performans göstergeleri üzerinde kafa yordu, çünkü temelde Hyperledger Fabric mimarisi en iyi performansı korurken genişletilemez. Hyperledger Fabric, katılımcılar arasında gizliliği sağlamak için çok zincirli bir ortam ("kanallar" olarak adlandırılır) kullanır. Bu gizlilik, özel "kurumsal" blok zincirlerinin önemli bir özelliğidir, ancak kaçınılmaz olarak bazı ödünler getirecek ve Çok Blok zincirinin karmaşıklığını artırın.

Bununla birlikte, kurumsal blok zincirlerinin gerektirdiği ölçeklenebilirlik açısından, çok zincirli bir çözüm iyi bir seçim değildir, çünkü bunu yapmak dağıtım sürecini çok karmaşık hale getirecek, düğümlerin eşit olmayan dağıtımını, güvenilmez akıllı sözleşmeleri ve Çok Olası arıza noktalarını artırın.

Bu nedenle, Hyperledger Fabric blok zincirinin dağıtımdan sonraki performans göstergeleri tatmin edici değildir ve düğüm sayısı arttıkça performans hızla düşecektir ve iddia edilen performansı tek bir kanalın performansıdır: Birden fazla kanalda tüm blok zinciri ağıyla etkileşim kurmak istiyorsanız, bu sözde performans göstergelerinin hiçbir anlamı yoktur. .

Yine de, her bağımsız kanal için, blok zincirinin saniye başına işlem hacmi 800 işaretini neredeyse geçemez, ancak 16 kanal yapılandırmasına sahip bir blok zinciri bile 1500 TPS'ye neredeyse hiç ulaşamaz. Üst verim sınırı çalışmasını sürdürmek için gecikme süresi 10 ila 20 saniyeye ulaşabilir.

Hyperledger Fabric'in çalışma hızını artırmayı amaçlayan son zamanlarda yapılan bazı çalışmalar, saniyede şaşırtıcı bir 20.000 işlem gerçekleştirmesine izin vermiştir. Bununla birlikte, performanstaki çarpıcı artışın arkasında, Hyperledger Fabric'i yapan araştırmacılar tarafından Hyperledger Fabric mimarisinin büyük ölçekli "sihirli modifikasyonu" yatmaktadır. Yaklaşık hale gelen blok zinciri dört farklı hale geldi: Onaylayıcılar artık doğrulayıcı olarak hareket etmiyor ve Kafka tek uygulanabilir sipariş hizmeti olarak kabul ediliyor . Sonuçta, bunlar hala yalnızca tek kanallı performanstır, yani paylaşılan bir güven kaynağı olarak tüm blok zinciri kavramına ters düştüğü anlamına gelir.

Not: Teorik olarak, Hyperledger Fabric, blok zinciri fikir birliğini gerçek anlamda kullanabilir, ancak bunu yaparken, blok zinciri çok yavaşlayacak ve üretim ortamındaki yavaşlık ölümcül olacaktır, bu nedenle üretim ortamında kimse olmayacaktır. onu kullanın.

Akıllı sözleşmeler neden önemlidir?

Blockchain'i değerlendirdiğimizde, son düşüncemiz, blockchain'in özel veritabanını nasıl genişleteceği ve blockchain araçlarının (örneğin, akıllı sözleşme dili) işletmenin iş ölçeği hızla gelişirken zinciri nasıl kaybetmeyeceğidir. Akıllı sözleşmenin sadece bir kod parçası olmadığı, şirketin iş mantığının somutlaşmış hali olduğu unutulmamalıdır. Akıllı sözleşmeler, blockchain üzerindeki mülkiyet haklarının kaydını, dijital kimliklerin doğrulanmasını gerçekleştirebilir ve hatta kullanılmış araba alıcıları ve satıcıları arasında emanet işlemleri gerçekleştirmek için kullanılabilir. En önemli şey, akıllı sözleşmenin güvenilir olması ve her zaman verdiğiniz kurallara göre hareket etmesidir.

Blockchain üzerinde iş mantığı oluştururken gerçekleştirmek istediğiniz işlemleri (satın alma, satma, paket verileri vb.) İfade etmek için akıllı sözleşmeler kullanmanız gerekir. Akıllı sözleşme dili basit ve kullanımı kolaysa, patronunuz veya hissedarlarınızla iletişim kurmak istediğiniz iş mantığını hızlı bir şekilde oluşturabilirsiniz. Daha da önemlisi, akıllı sözleşmelerin çok güçlü olduğunu ve işinize fayda veya bazı olumlu etkiler getirebileceğini kesinlikle umacaksınız.

Hyperledger Fabric'in akıllı sözleşmeleri ("Chaincode" olarak adlandırılır), ortak Javascript dili ve Go dili dahil olmak üzere çeşitli programlama dillerinde yazılabilir. Bununla birlikte, geliştiricilerin çok iyi bildiği genel bir programlama dili kullanarak geliştirme, iki ucu keskin bir kılıçtır. Çok Geliştirme sürecini basitleştirirken, özellikle blok zinciri için geliştirilen programlama dillerinden daha güvenlidir. Çok Zayıfladı. Hyperledger Fabric'te gittikçe daha fazla hak birikirse, her zaman risk alan insanlar olacaktır.

Şu anda, eğer kod kusurlu veya yanlış ise (çünkü blok zinciri için tasarlanmadığı için) milyonlarca dolarlık kayba neden olabilir. Bu nedenle, akıllı sözleşme dilinin özellikle blok zinciri için tasarlanması ve güvenlik için optimize edilmesi gerektiğine inanıyoruz. İdeal olarak, akıllı sözleşme dili de öğrenmesi kolay olmalı ve bir blockchain ortamında kolayca kullanılabilmelidir.

Chaincode bu yönlerden tamamen başarısız olmuştur.Bir geliştirici olarak "Hello World" adlı ilk programın diğer dillerde sadece birkaç satırda uygulanabileceğini, ancak Chaincode'da aslında 150 gerektirdiğini gördük. Birçok satır. Daha fazla kod, daha fazla güvenlik açığı olabilir. Milyonlarca dolarlık kayba neden olabilecek bu kadar büyük miktarda kodda gizlenmiş birçok güvenlik açığı olabilir.

Akıllı sözleşmeler yazmak ve okumak o kadar zor olmamalı. Geliştiriciler, gönderim ve argüman keşfi gibi düşük seviyeli sorunlarla uğraşmak zorundadır. Daha fazla kod, daha fazla güvenlik açığı olabilir.

Hyperledger Fabric'i bir "Merhaba Dünya" akıllı sözleşmesi yazmak için kullanın, resim kaynağı: Chainhero, Kadena

Geleceğe hazır değil

Blockchain ekosisteminde, gittikçe daha sofistike gözlemciler, özel blok zincirlerinin ve halka açık blok zincirlerinin tamamen izole edilemeyeceğini, ancak işbirliğine doğru ilerleyecek, birbirlerini tamamlayacak ve birlikte teşvik edeceklerini fark etmeye başlıyor: özel blok zinciri Jetonumun herkese açık blok zincirindeki müşterilere sunulacağını umuyorum ve genel blok zincirinde dağıtılan merkezi olmayan uygulamalar da özel verileri özel blok zincirinde saklamak isteyecek.

Ne yazık ki, Hyperledger Fabric ve R3 Corda, mimarinin tamamen uyumsuzluğundan dolayı halka açık blok zincirinden ayrılmıştır.Akıllı sözleşmelerin sorumluluğu da vardır, çünkü akıllı sözleşme dilleri kamu ve özel blok zincirlerinde kullanılamaz. Sorunsuz bir şekilde geçiş yapın.

IBM, diğer büyük şirketlerle derinlemesine işbirliği yoluyla birçok kurumsal blok zinciri standardının geliştirilmesine öncülük etti, ancak blok zinciri teknolojisinin gerçekte neler yapabileceğini derinlemesine keşfetmek için yüzeysel glitz'i ortadan kaldırmak önemlidir.

IBM'in sözde "blok zinciri" teknolojisi, güvenlik, performans ve güvenilirlik gibi birçok açıdan kusurlara sahiptir.Başka bir deyişle, IBM, işlerini geliştirmek için blok zincir kullanmak isteyen şirketler için düşük kaliteli bir çözüm sağlar. Blockchain'in değerini daha iyi anlamak için, deneyimli müşteriler daha iyi araçlara, daha iyi blockchain performansına, daha iyi vizyona ve bu teknolojinin nasıl kullanılacağına dair gerçek bir anlayışa sahip blok zinciri çözümlerini seçecekler.

SON

Sipariş ettiğiniz her "izlemeyi" cidden bir favori olarak değerlendirdim

Üç başlangıç, üç geçiş, bu sefer GitHub Top 1'de 100.000 satırlık çekirdek C kodu ile
önceki
Düzinelerce önerilen sistem belgesi onaylandı ve çoğaltılamaz: kaynak kodu ve veri kümesi eksik
Sonraki
GitHub hesaplarının birçok yerde kullanımı sınırlıdır; Python'un babası, yorumlayıcıyı yeniden düzenlemeyi düşünür; 62 yaşındaki programcı bir mantık bombası yerleştirdi | Developer Weekly
Ali Dharma Akademisi, son iki yıldır AI yapıyor
Üç gün üst üste sıcak arama, "Haber Ağı" keskin eleştirmenleri de yeterince seviyor
wxPython + PyOpenGL ile 3B veri analizi için güçlü bir araç oluşturun! | CSDN blog seçimi
Boom out 8-0 kilit kazanın! Japonya'nın ilk Asya Oyunları şampiyonu Kento Momota sezonun beşinci tacını kazandı
React, ön uç geliştirme boşluğunda nasıl bir köprü haline geliyor?
Haber Bülteni: Python önemli bir "siyah malzeme" olmuştur! Programcı: Madden
İkinci bir "Google" ı taklit edebilir mi?
"Teknoloji odaklı inovasyon" kurumsal gelişim için yeni bir yön haline geliyor. Geliştiriciler kendilerini nasıl uygulamalı?
Go dili on yıldır kuruldu, Go2 kullanıma hazır
Alt veritabanı ve alt tablo nasıl doğru bir şekilde alınır?
Büyük veri çağı burada, geliştiriciler nasıl saldırmalı?
To Top