Projeyi tanıtmaya ve açıklamaya başlamadan önce yeni öğrenmeye başlayanların da projenin önemini, vizyonu ve misyonunu anlaması açısından bazı kavramların açıklanmasının önemli olacağını düşündüm. Basit anlatımlarla daha etkili bir projeyi tanıma süreci geçireceğimize inanıyorum.

Oracle.

Blockchain ile dış ekosistem arasında veri alış-verişini sağlayan akıllı kontratlardır. Yani aracılardır. Bir blockchain taşıdığı anlam itibariyle direkt olarak yani aracısız kendi dışındaki ekosistemlerle bağlantı kuramaz. Korumalıdır. Bu sebeple dışarıdan veri gelmesi veya dışarıya veri gönderilmesi için gereken aracılar Oracle’lardır. Örneğin bir hisse senedinin fiyatına bağlı bir token yarattığımızı düşünelim. Bu hisse senedinin fiyatının anlık olarak bilgisini bize ulaştıran Oracle’dır. Merkeziyetsiz olabilmesi için ise bu Oracle’ın birden fazla yerden veri çekebilmesi istenmektedir. Bu bize merkeziyetsiz bir veri, fiyat sunar.

Zero Knowledge Proof.

Sıfır Bilgi Kanıtı. ZKP. Bu konsept bir soruyla ortaya çıkıyor: Karşı tarafın bir konudaki bilgisini artırmadan o konuyu bildiğimi nasıl kanıtlayabilirim? Bu konuyu anlatabilmenin en basit yöntemi örneklendirmek. İskambil kartı destesinden bir kart seçtimi düşünün. Bu kart kırmızı bir kart olsun ve ben size bu kartın kırmızı olması dışında hiçbir bilgi vermeden size bunun kırmızı olduğunu kanıtlamak istiyorum.

Peki sizi buna nasıl inandırabilirim?

Eğer destedeki 26 siyah kartın hepsini önünüze koyarsam elimdeki kartın kırmızı olduğuna ikna olursunuz. İşte bu Zero Knowledge Proof’tur. Sizin bildiğiniz tek şey kartın kırmızı olduğudur. Başka hiçbir bilgi artmamıştır.

Bir şeyin Zero Knowledge Proof olabilmesi için aranan 3 kriter vardır:

1. Doğruluk( Correctness) : Taraflar dürüstse, yani sen dürüstsen ben de dürüstsem her şey yolunda demektir. Deste örneğinde taraflar ortada yalnızca 52 adet karttan oluşan bir deste olduğunu konusunda birbirine güvenmektedir.

**2. Sağlamlık ( Soundness) : **Eğer ki bu sırra sahip değilsem kanıtlayamayacağım bir argüman olmalı. Deste örneğini düşünürsek, eğer elimde kırmızı bir kart olmasa 26 adet siyah kart ayıramazdım. Kenara 10–15 ve hatta 25 tane siyah kart ayırsam dahi bu argüman şüphe barındırırdı.

3. Karakteristik ( Characteristic) : Bunu ispatladığımda size ispatlamak istediğimden daha fazlasını öğrenemezsiniz. Yani tamamen benim göstermek istediğim bilgiye göre karakteristik olarak dizayn edilmiş bir kanıt bu. Daha fazlasını içermiyor.

Schelling Noktaları.

SchellingCoin prensibine geçmeden buranın anlaşılması iyi olur diye düşündüm. Schelling Noktası, oyun teorisindeki tanımı ile “iletişimsizlik durumunda insanların varsayılanı seçme eğiliminde oldukları çözümdür.”

Schelling, işbirliği durumunda yani tarafların hepsinin aynı niyet ve beklenti ile herkesin bir diğerinin de aynı eylemi, seçimi yapmaya çalıştığını bildiği sürece bu kararlara ulaşmakta kullanılacak adımların, tahminlerin uyumlu hale gelebileceğini anlatmak istiyor.

Daha iyi anlamak için şunu düşünelim: Tek hedefi birbiriyle buluşmak isteyen, aynı rasyonaliteye ve eğitime sahip Türkiye’de yaşayan ve iletişimi olmayan iki kişiyi düşünelim. Burada dikkat edilmesi gereken nokta hedefimize ulaşmak dışında hiçbir amacın olmaması. İşte bu buluşmayı gerçekleştirebilmek için bazı sosyal, kültürel normlar, ortak toplumsal çerçeve ve referanslar kullanırız.

Nüfus olarak en kalabalık şehir İstanbul diyerek karşı tarafın zaten İstanbul’da olduğunu ya da onun da sizin gibi düşünerek değilse bile İstanbul’a geleceğini düşünebiliriz. İstatistiksel olarak en mantıklı varsayım bu olur.

Peki İstanbul’da neresi? Hem İstanbul’da yaşayan hem de yaşamayan birisi için en bilinen buluşma noktalarından birini seçebiliriz. Mesela Taksim Meydanı.

Peki tarih olarak ne seçebiliriz? Karşı taraf hakkında bir bilgiye (doğum günü vesaire) sahip olmadığımız için ikimiz için de anlam ifade edebilecek bir tarih seçebiliriz. Hatta daha düşük riskli bir seçim olarak kalabalıklar için akla hemen gelen, anlamlı bir gün seçmek daha mantıklı olacaktır. Yılbaşı mesela.

Saat kaçta? Yılbaşını belirlediysek bu tarih için en anlamlı vakit 31 Aralık 23:59 ya da 01 Ocak 00:00 olacaktır. O halde buluşma İstanbul’da 31 Aralık 23:59’da Taksim Meydanı’nda gerçekleşebilir.

İşte bu Schelling Noktasıdır. Geçmiş eylemler ve kararlar, kültürel, sosyal normalar, Schelling noktaları oluşturabilirler. Bazı herkes tarafından bilinen ve herkesin bunu bildiğini bildiğimiz şeyler vardır. Bunlar ortak bir bilinç oluşturmuştur ve Schelling noktaları işte bu ortak bilinçten ortaya çıkar.

“Sonsuza kadar yinelenen bir mantık zinciri!”

SchellingCoin.

SchellingCoin prensibi işte bu teoriden yola çıkılarak üretilmiş bir protokol. Vitalik Buterin’in makalesinde bahsettiği şekli kısaca açıklamak en iyi anlatım olacaktır. (https://blog.ethereum.org/2014/03/28/schellingcoin-a-minimal-trust-universal-data-feed)

Protokolün çalışma mekanizması:

  1. Çift sayılı bir blok sırasında, tüm kullanıcılar ETH adresleri ile birlikte ETH/USD fiyatının bir Hash’ini gönderir. (H + ADDR)

  2. Bir sonraki blokta, kullanıcılar bir önceki blokta hash’ini verdikleri Değeri (N) gönderir.

  3. “Doğru gönderilen değerler”den bir küme oluşturulur. (Doğru gönderilen ifadesi H’nin ilk blokta ve N’nin ikinci blokta gönderildiği, her iki mesajın da sistemde izin verilmiş adresler ile imzalandığı durumları ifade ediyor.) H(N+ADDR)

  4. Doğru gönderilen değerler sıralanır. (Eğer verilerin çoğunluğu aynıysa, yeni bir sıralama yapılır. H(N + PREVHASH + ADDR) Buradaki PrevHash, son bloğun Hash’idir.

  5. 25. ve 75. yüzdelik dilimler arasında doğru bir değer gönderen kullanıcılar ödül kazanır. Bu ödüle de “schells” adı verilir.

Bu sistemin sıkıntılarından birisi %51 saldırısıdır. Çoğunluğun kontrolü ele alması ve sistemi manipüle etmesi.

Bir diğeri ise mikro-hiledir. Temeldeki veri sık sık küçük değişimlere maruz kalan bir değer ise — ki bir şeyin fiyatı böyledir — o halde SchellingCoin içerisindeki çoğu katılımcı aynı zamanda SchellingCoin kullanan bir sistemin de parçasıysa 25/75 sınırı içerisinde kalmaya çalışarak cevapları bir yönde hafifçe değiştirmek isteyebilirler, ve kendi çıkarları doğrultusunda medyanı çok az yukarı(veya aşağı) oynatabilirler. Diğer kullanıcılar da bu mikro-bozulmayı tahmin edecek ve medyan içerisinde kalmak için cevaplarını bu yönde değiştireceklerdir.

Tabii, burada olay katılımcıların mikro-hilenin mümkün olduğunu düşünmeleri. Eğer mümkün görürlerse mümkün olacaktır. Görmezlerse mümkün olamaz. Vitalik’in burada bu soruna getirdiği çözüm; çok spesifik ve net bir değer tanımlamak. “ABC Borsasında ETH/USD’nin HH:MM:00 saatindeki son satıl fiyatı” gibi. Bu durumda cevapların büyük bir kısmı aynı olur ve ve mikro-hile ile medyanı hareket ettirme olasılığı yoktur ama bu da bize merkezileşmeyi getirir.

Çalışma prensibini ve içerdiği problemlerin bir kısmını burada anlamışsınızdır.

Bu 3 kavramı anladığımızda proje üzerinde fikir yürütmemiz daha sağlıklı olacaktır. Sonuçta problemi tanımadan çözümü değerlendiremeyiz.

Blocksense Network.

Blocksense, Oracle veri akışlarının verimli bir şekilde oluşturulması ve tüketilmesi için merkeziyetsiz ve izinsiz bir protokoldür. ZK Rollup olarak tasarlanmıştır.

Burada yapılan her tasarım seçimin bir nedeni var.

Blocksense ağının, SchellingCoin prensibini uygulayan ve tek bir işlem ile hedef zincirde yayınlacak veri güncellemelerini barındıran ve çok sıkı paketlenmiş blokları üretebilen kendi verimli mutabakat mekanizmasına sahip olabilmesini bu tasarım sağlar.

Blocksense ağı tarafında üretilen bloklar birden fazla zincirde yayınlanacaktır. Her bloğa eklenen Zero Knowledge Proof (Sıfır Bilgi Kanıtı); veri üretimi için tüm protokol kurallarına uyulduğunu ve verilerin Stake edenlerin çoğunluğu tarafından desteklendiğini garanti eder. Verilerin gerçekliğini sağlayan ZK kanıtları, herhangi bir EVM uyumlu zincirin yanı sıra WebAssembly veya eBPF run-times’a dayalı zincirlerde de doğrulanabilir. Aynı zamanda, Merkle ağaçlarının gücü sayesinde Blocksense’in veri evreninin sınırsız sayıda sürekli güncellenen veri akışına ölçeklenebilir, geniş bir yayınlanma maliyeti ve erişim maliyeti seçenekleri yelpazesi sunar. Bu da yeni veri akışlarının sunulmasını büyük ölçüde kolaylaştırır. Tüm veriler, daha sonra projenin unsurlarınında da bahsedeceğim bir husus olan korunması gereken itibar ve sık sık rotasyona tabi tutulan komiteler tarafından güvence altına alınmaktadır.

Verilerin doğruluğu kriptografi ve oyun teorisi teşvikleri ile sağlanmaktadır. Yani kullanıcılar verileri doğru sunduğu sürece ödül kazanırlar. Blocksense ağı, Oracle node yazılımını çalıştıran ve protokol üzerinde Stake yapan bir çok veri Raporlayıcısı (Data Reporter) tarafından işletilmektedir. Rastgele seçilmiş Raporlayıcılar o anda elde ettikleri veriyi “Oracle değeri” olarak yayınlarlar. Her bir zaman aralığında her bir Oracle veri beslemesi, Raporlayıcı’ların rastgele bir alt kümesi tarafından güncellenir. Ve raporlayıcıların seçimleri diğer raporlayıcıların çoğunluğuyla uyuşuyorsa ödüllendirilir (Veri akışına bağlı olarak ya eşit ya da yeterince yakın bir değere sahip olmak anlamlarına da gelebilir.) veya seçimleri farklıysa cezalandırılır.

İşte bu rastgele seçimle oluşturulmuş olan alt küme dizaynı önemlidir. Çünkü bu tasarım rüşvet (bribery) ve gizli anlaşma (collusion) ihtimallerinin önüne geçer. Bu, Blocksense’in temel iki özelliğinden birisi olan Gizli Komite Seçimi’dir.

Gizli Komite Seçimi.

Basitçe, tekrar açıklamak gerekirse, belirli bir veri akışı için güncellemeleri yayınlamaktan sorumlu node’ların gizli bir şekilde rastgele seçildiğini anlatır. Her node yalnızca belirli bir komitedeki kendi üyeliğinden haberdarı ve aynı komitede başka hangi node’ların yer aldığından habersizdir. Bu durum, herhangi bir saldırıda kimi hedef alacaklarını bilmeyen kötü niyetli aktörler için hem gizli anlaşmaları hem de rüşveti çok daha zor hale getirir. Normalde Vitalik’in bahsettiği çoğunluğun kontrolü ele alarak veriyi manipüle etmesi problemi mevcut ancak Blocksense’in bu tasarımı bu olasılığı azaltmaktadır. Bu ihtimal hala daha mevcut olsa da olasılığı daha az hale gelir.

Bir diğer temel özellik olan ise Oy Gizliliği.

Oy Gizliliği.

Node’lar tarafından sağlanan güncellemeler gizlenir ve yalnızca nihai toplu sonuçlar kamuya açıklanır. Ağ üzerindeki tüm stake ettiklerini kaybetmelerine sebep olacak sırrı ortaya koymadan oyları için kanıt sağlayamazlar. Taraflar herhangi bir gizli anlaşma ihtimalinde dahi diğer anlaştıkları node’ların neye oy verdiğini bilemeyecektir. Yani yalan söylemeyi seçerseniz, yalan söylemekle ilgilenen diğer raporlayıcıların da rüşveti veren aktörün talep ettiği eylemleri gerçekleştirdiğini ve neye oy verdiğini tahmin etmek zorunda kalacaksınız ve bu zor bir ihtimal olduğu için çoğunluğun oluşması pek olası değildir. O yüzden en mantıklı strateji doğru değeri yayınlamak olacaktır.

Diğer PoS ağları gibi, Blocksense de oylama gücünün yeterli yüzdesini kontrol etmeleri halinde kötü niyetli aktörler tarafından ele geçirilebileceğinden bahsetmiştim. Bunu engellemek için kullanılacak bir başka mekanizma ise oylama gücünün hem Stake miktarının hem de itibarın bir fonksiyonu olarak belirlenmesidir. Burada yeni bir kavram eklenmiştir: İtibar.

Tüm node’ların itibarı düşük başlar ve operatörleri Blocksense yazılımını uygun çalışma süresi ve performansta çalıştırma yeteneklerini gösterdikçe kademeli olarak artar. Yani ne kadar yüksek performanslı doğru değer çıktısı sağlarsanız itibarınız o derece yükselecektir. Node operatörleri, sosyal itibara dayalı olarak protokol kullanıcıları tarafından onayı kolaylaştırması beklenen kimliklerine ilişkin çeşitli kanıtlar sunmaya teşvik edilir. Bu, en büyük veri tüketicilerinin onları daha güvenilir olarak belirlemesini sağlar. Herkes için güvenliği artıran bir küratörlük.

Ayrıca Blocksense veri akışlarını kullanana akıllı sözleşmelerin yaratıcılarına işlem hacimleriyle orantılı olarak kullanıcı kredileri verir. Bu krediler, oylama güçlerini artırmak için belirli Node operatörlerine devredilebilir.

Ayrıca, protokol yeni bir veri besleme değerini kabul etmeden önce önemli ölçüde daha yüksek bir çoğunluk gerektirebileceğinden, kötü niyetli bir güncellemenin yayınlanması için kritik eşiği %51’den daha fazla yapabilir. Yani olası bir kötü niyetli güncellemede daha fazla onay gerektirilebilir. Bu ağın doğruluğunun ve canlılığının sağlanması arasında önemli bir dengeyi temsil eder.

Güncellemelerin Zamanında Sağlanması.

Blocksense ağındaki node operatörleri belirli fiyat akışlarının güncellenmesini geciktirebilir ya da engelleyebilirse, bu durum arbitraj ticaretinde potansiyel olarak kullanılabilecek zincir üstü ( on-chain) fiyat uyuşmazlıklarına yol açabilir.

Blocksense, blok yayınlama işini protokol içindeki üç ayrı rol arasından paylaştırarak böyle bir saldırıyı neredeyse imkansız hale getirmektedir:

1.Raporlayıcılar (The Reporters)

Ağdaki raporlayıcılar, Oracle raporlama görevlerini belirlemekten ve ilgili Oracle komut dosyalarını zamanında yürütmekten sorumludur. Raporlayıcılar, çoğunluk ile aynı fikirde olan bir güncelleme yayınlamaya teşvik edilirler. Bir güncellemeyi atlamak veya yanlış bir değer bildirmek cezalarla sonuçlanır. Dolayısıyla bir raporlayıcı herhangi bir veri akışını bireysel olarak sansürleyemez. Çünkü tanım gereği her güncelleme raporlayıcıların büyük çoğunluğu tarafından imzalanacaktır.

2.Toplayıcılar ( The aggregators)

Toplayıcılar, Raporlayıcıların imzalı veri akışı güncellemelerini yayınladıkları ağdaki Gossip kanallarını izlerler. Mümkün olduğunca çok sayıda güncellemeyi ağa yeniden yayınlacak paketler halinde paketlemeye teşvik edilirler. Bir toplayıcı, raporlayıcıların imzalı güncellemelerini almamış gibi davranarak belirli bir veri akışını sansürlemeye çalışırsa, başka bir toplayıcının ilgili ödülleri talep etmek için akış güncellemesini kendi paketlerine dahil etmesi muhtemeldir.

3.Blok Oluşturucular ( The Block Builders)

Blok Oluşturucular, toplayıcılar (aggregator) tarafından üretilen demetlerin (bundle) hedef zincirde yayınlanacak nihai bloklarda mekanik olarak birleştirilmesinden sorumludur. Bu süreçte, Blok oluşturucunun karışık demetlerin içeriğini herhangi bir şekilde manipüle etmesine izin verilmez ve bu, her bloğun doğru şekilde oluşturulduğunu doğrulayan bir Sıfır Bilgi Devresi (Zero Knowledge Circuit) aracığılıyla sağlanır.

                                                            *

Bir blok ancak yeterli sayıda toplayıcı (aggregator) katkıda bulunmuşsa geçerli kabul edilir. Aynı veri akışı güncellemesinin birçok bireysel toplayıcının paketlerinde bulunması ve bu da oluşturucunun belirli akışların eksik olduğu durumlarda geçerli bir blok oluşturmasını son derece zorlaştırır. Her bir slotta, birden fazla oluşturucu bir blok yayınlama hakkına sahiptir ve bu, belirli bir Blok Oluşturucu çevrimdışı olsa bile, diğerlerinin tüm beslemelere yönelik güncellemeri içeren geçerli bir blok yayınlamak için devreye girmesini sağlar.

En kritik nokta ise protokoldeki farklı rollerin önceden belirlenmemesidir. Yani operatörler sürekli olarak aynı rolde kalmazlar. Ya da hangi rolde olacaklarını bilemezler. Çünkü Blocksense node yazılımı dinamik ve rastgele şekilde rolleri atar ve rol atamalarını otomatik takip eder ve tüm görevleri buna göre yerine getirir.

Yeni veri akışlarının oluşumu.

Blocksense Node yazılımı, çeşitli CPU, GPU ve I/O görevlerini yürütebilen sanal bir makine içerir.

Yeni veri akışları, Blocksense VM için kısa bir program yazarak herkes tarafından oluşturulabilir. Bir kez oluşturulduktan sonra, Oracle, program içeriğinin kriptografik bir hash’i ile tanımlanır. Feed güncellemelerini başlatmak için ilk veri yayınlama ücretlerini karşılamak amacıyla kullanılacak küçük bir fon yatırılabilir ancak. Feed akıllı kontratlar tarafından bir kere kullanılmaya başlandığında, zincir üstü üretilen veri erişim ücretleriyle kendi kendine yeterli hale gelecektir.

Örneğin, yaygın bir oracle türü, belirli bir URL’nin içeriğini indiren bir oracle olacaktır. Daha spesifik bir örnek ise, birden fazla bağımsız kaynağı sorgulayarak ve bunların ortalamasını alarak USD/EUR döviz fiyatını takip eden bir oracle’dır.

Gelecekte, Blocksense ağının Sıfır Bilgi Devreleri, SSL özellikli web sunucularından elde edilen tüm verilerin TLS protokolünde kullanılan şifreleme anahtarlar zincirini takip ederek doğrulamasını sağlayarak ek bir güvenlik katmanı ekleyebilir.

GPU komut dosyaları gibi hesaplama açısından ağır Oracle’lar, veri akışı güncellemelerinin yalnızca küçük bir alt kümesi için daha büyük bir komite tarafından rastgele kontrolleri tetikleyen ağır cezaları içeren özel bir strateji kullanmak üzere tanımlanabilir. Bu, zincir üzerinde Makine Öğrenimi gibi kullanım durumlarının uygun maliyetli bir şekilde uygulanmasını sağlayacaktır.

Şeffaf ve Piyasa Odaklı Ücret Modeli.

Blocksense esnek bir ücret modeli tasarlayarak en popüler veri akışlarına erişimin zaman içinde daha ucuz hale gelmesini sağlarken güvenliklerini de artıyor. Zincirler, canlı bir Defi ekosistemini başlatmak ve sürdürmek için belirli akışları sübvanse etmeyi seçebilir, bunların tümü izinsiz protokollerle etkinleştirilir ve tamamen zincir üzerinde işlenir.

Merkeziyetsiz ve İzinsiz.

Günümüzde yeni verilerin zincire eklenmesi yavaş ve pahalı bir süreç. Ancak Blocksense ağında herkes basit bir komut dosyası yazarak yeni bir veri akışı oluşturabilir. Herkes para yatırarak ve otomatik bir Oracle node’u işleterek veri sağlayıcı olabilir. Herkes zincir üstünde bir dapp ile tüm veri evrenine erişebilir.

Sistem gereksinimleri.

Oracle yazılımı, tüm büyük işletim sistemlerinde çok çeşitli donanımlar üzerinde çalışabilecek, minimum disk alanı tüketecek ve yalnızca kalıcı internet bağlantısı gerektirecektir.

Raporlama iş yükü, kanıt oluşturmak için mevcut bilgi işlem gücüyle ölçeklenecek ve GPU’lara erişimi olan kullanıcılar daha fazla kazanabilecektir.

                                                       *

Tüm tasarım, şeffaflık, uygulanabilirlik ve vizyon bir araya geldiğinde insanı heyecanlandıran bir proje meydana geliyor. Umarım proje ekibi, geliştiricileri, katkı sağlayanları ve komünitesi ile daha da ilerler ve bize böyle bir projede yer almanın gururunu da yaşatırken aynı zamanda kendisiyle beraber gelişme ve büyüme fırsatı sunar.

Blocksense ile ilgili tüm bilgileri elimden geldiğince aktarmaya devam edeceğim.

Okuduğunuz için teşekkür ederim.

Proje Sayfası: https://blocksense.network/

Proje Discord: https://discord.gg/GkS6xmvT

Proje Twitter: https://twitter.com/blocksense_

Contributor: https://twitter.com/megucelt

Mirror文章信息

Mirror原文:查看原文

作者地址:0x4adc2c01991F4E69b5b2aB67330933A51CE475ec

内容类型:application/json

应用名称:MirrorXYZ

内容摘要:21yZaLjdzAp-gAI_38gckhUR5gRNPs94-heloR9XgZ0

原始内容摘要:OE6zJZ3enR5Qr2YvghSaRVEpwxHvxEvtqhBJixZKf3k

区块高度:1371912

发布时间:2024-02-26 13:18:29