Bütün diller
Bityuan basit, kararlı ve genişletilebilir bir genel zincir ağıdır. Aralık 2013'te BitYuan doğdu. Başlangıçta pre-mining airdrop + POW konsensüs mekanizması tarafından üretildi. 2015'te BitYuan konsensüs mekanizması POS olarak güncellendi. Dört yılı aşkın tasarım ve araştırmanın ardından, 17 Mayıs 2018'de BitYuan Blockchain 3.0 geliştirildi ve test edildi, ana ağ kullanıma sunuldu ve şu sürüme yükseltildi: SPOS (Güvenli POS), yani güvenli bir POS mutabakat mekanizması rasgele sayıları optimize eden . 6 aydan uzun bir süre sonra, 07 Aralık 2018'de, Bitcoin (BTY) resmi olarak Github'da açık kaynaklı hale geldi.
Bityuan'ın araştırma ve geliştirmesi, uygulanmış ve uygulanmış çok zincirli (paralel halka açık zincir) mimariye sahip bir halka açık zincir projesi olan Hangzhou Complex Beauty Chain33'ün altında yatan teknolojiyi benimsiyor. Bityuan blok zincirinde birden fazla paralel halka açık zincir geliştirilebilir.Her paralel halka açık zincir, yalnızca çeşitli ve bağımsız blok zinciri ekolojik yapısına ve DAPP geliştirmesine sahip olmakla kalmaz, aynı zamanda çoklu zincirler arasında zincirler arası değişim işlevlerini gerçekleştirebilir. Paralel halka açık zincir projelerinin uygulama alanları şunları içerir: sabit para birimi, kırmızı zarflar, sosyal ağ, e-ticaret, zincir üzerinde varlık, zincir üzerinde borç, sertifika depozitosu ve oyunlar.
BitYuan blok zinciri, MVCCKVDB'nin (çok sürümlü KV veri depolama) yenilikçi bir şekilde uygulanmasında başı çekti. Geleneksel blok zincirleri, verileri merkle ağaçları veya MPT ağaçları biçiminde depolar. Veriler her değiştiğinde,< br> Ağaç bir kez yeniden düzenlenecektir ki bu nispeten verimsizdir. Örneğin, 20 katmanlı bir Merkle ağacı için, bir yaprak düğümün verilerini sorgulamak, tamamlamak için 20 okuma işlemi gerektirir, bu da veri sorgusunun verimliliğinin, sıradan veritabanlarının sorgu verimliliğinin yalnızca 1/20'si kadardır ve bu, başına tamamlanabilir. saniye 100.000 okuma işlemine sahip bir sistem, saniyede yalnızca 5.000 işlemin verilerini okuyabilir, bu da sistemin okuma performansını büyük ölçüde sınırlar. Veri yazarken ayrıca ağaç dalına birden fazla düğümün verilerini yüklemek ve son olarak güncellemeden sonra diske yazmak gerekir.Bundaki işlem tüketimi de nispeten büyüktür. BitYuan, veritabanı tasarımında MVCC konseptinden (Multi-Version Concurrency Control) yararlanır ve MAVL veya MPT yapılarının verimsizliğini iyileştirmek için orijinal bir KVMVCC veri depolama formatı tasarlar.Blockchain verilerinden sonra yüksek veri okuma ve yazma performansı sağlama ihtiyacını karşılar belirli bir boyuta kadar büyür.
Hash hesaplama:
statehash=hash (prevstatehash, KVSet, height), önceki bloğun durum Hash bilgisini, bu bloğun durum verisi KVSet bilgisini ve mevcut blok yüksekliği bilgisi (yani sürüm bilgisi).
Her düğümün veri tabanında aşağıdaki karşılıklar depolanacaktır:
hash->height(sürüm)
yükseklik(sürüm)->hash
key:height(sürüm)->değer
lastest:key->value
Veri sorgusu:
İlgili yükseklik (sürüm) statehash'e göre bulunabilir ve yüksekliğe göre karşılık gelen yükseklik bulunduğunda, belirli anahtar değeri, değer değerine karşılık gelir.
Veri doğrulama:
Belirli bir yüksekliğe sahip bir KVSet için hash değerleri prevstatehash, KVSet ve bir önceki bloğun yüksekliğine göre Hash işlemleri yapılabilir. değerler eşleşiyor, veriler Tampering yapmamış, aksi takdirde veriler değiştirilmiş veya veriler yanlış (yükseklik yanlış veya KVSet verileri yanlış).
Verilerin en son sürümünün bakımı:
Özellikle, en son bloğun anahtarını ve değerini saklarken, aynı anda (yeni anahtar) tutun veya güncelleyin (zaten geçmişe sahip olun) Sürüm anahtarı) anahtarı:en son->değer eşleme ilişkisi, yerel anahtar-değer veritabanında depolanır. En son parti verilerini almanız gerektiğinde, en son verileri partilerdeki en son öneke göre sorgulayabilirsiniz (özelleştirilebilir). Olağan anahtar/değer veritabanı önek eşleştirme sorgularını iyi bir şekilde destekleyebildiğinden, sorgu etkinliği nispeten yüksek olacaktır, Merkle ağaç depolama yapısının sorgusundan çok daha yüksek olacaktır.
Blok zincirinin performansını artırmak için, paralel halka açık zincir genellikle DPOS (Paylaşım Yetki Kanıtı Mekanizması) fikir birliğini benimser, yani bilgi işlem gücü ve geniş bant desteği ödemek için zincirde birkaç süper düğüm seçilir.
İşlem bilgileri bloğa paketlenmeli ve blok bilgileri diğer düğümlere yayınlanmalı ve işlem bilgileri, topluluğu ortaklaşa yönetme işlevini yerine getirmek için blokta saklanmalıdır.
Bir genel zincir başarılı olsun ya da olmasın, anahtar ölçütlerden biri zincirdeki düğümlerin sayısıdır. Süper düğüm mekanizması, paralel kamu zincirinin zincir üzerinde hızlı bir şekilde bir ekoloji oluşturmasına yardımcı olabilir ve paralel kamu zinciri ekolojisinin refahını artırmak ve daha istikrarlı, güçlü ve merkezi olmayan bir alan gerçekleştirmek için her bir süper düğümün işletimine ve bakımına güvenebilir. Blockchain sistemi.
Aynı zamanda, paralel halka açık zincir operatörü, süper düğümler için vakfın çeşitli belirteç teşvik mekanizmaları ve işletim yöntemleri ve belirteçlerin yeniden satın alınması yoluyla süper düğümlerin inisiyatifini ve coşkusunu teşvik etmek için bir paralel zincir temeli kurabilir. , işlem prosedürleri Paralel kamu zincirinin sağlıklı ve sürdürülebilir gelişimini desteklemek.
Oracle makinesi, blok zinciri ile gerçek dünya arasındaki bağlantıyı gerçekleştirir. Oracle makinesi, dış dünyanın durumu hakkında imzalar aracılığıyla bilgi sunan güvenilir bir varlıktır, böylece belirsizliği belirlemek için deterministik akıllı sözleşmelere izin verir < br> Dış dünya tepki verir. Kahin makinesi kurcalanamaz, istikrarlı hizmet ve denetlenebilir özelliklere sahiptir.
Oracle sözleşme yayın verileri üç adıma ayrılır:
(1) Veri yayın olayını yayınlayın (tüm ağa bir olayın sonucunun gelecekte duyurulacağını bildirin ve şu durumlarda benzersiz bir olay kimliği atayın) olay oluşmadı ve geri alınabilir).
(2) Yayın öncesi sonuçlar (veri sağlayıcı, zaman sonuçlarını önceden yayınlar, sonuçların denetim tarafından sorunlu olduğu tespit edilirse iptal edilebilirler).
(3) Sonuçları yayınlayın (yayın öncesi sonuçlar denetlendikten sonra, kurcalanamayan ve denetlenip izlenebilen tüm ağda yayınlanacaklardır).
Diğer sözleşmeler (tahmin sözleşmeleri gibi), (tahmin) faaliyetlerini yürütmek için yukarıdaki 1. adımdaki olay kimliğini ve belirli olayları kullanabilir. 3. adımın sonuçları açıklandığında, tahmin sözleşmesi sözleşmenin tamamlanmasını tetikleyecektir. insan müdahalesi olmadan nesnel, güvenilir, denetlenebilir ve izlenebilir bir adil tahmin elde etmek için olay kimliğine karşılık gelen sonuca göre tahmin yerleşimi.