Aelf Teknik Konuşmalar - Blockchain Çapraz Zincir Teknolojisinin Tasarımı ve Uygulaması - Bölüm 1

Yazan: Wenkai Shi (DNT Forum Sunumundan Alıntı)



Herkese merhaba, ben Wenkai Shi. AElf geliştirici topluluğundanım ve şu anda kıdemli bir geliştirme yöneticisiyim. Son yıllarda AElf çapraz zincir modülünün mimari tasarımı ve geliştirilmesinden sorumluyum. AElf, .Net Core tabanlı bir blockchain platformudur ve Github'daki en aktif projelerden biridir. DotNet ekosisteminin bir parçası olarak bugün çapraz zincir teknolojisini ve AElf çapraz zincir modülünün mimari tasarımını paylaşmak üzere AElf geliştirici topluluğunu temsil etmek için DNT Forumundan faydalandım. Bu, AElf repo adresidir (https://github.com/AElfProject/AElf). Projenin kurulmasından bu yana iki yıl geçti. Geçen hafta itibariyle yaklaşık 230 bin satır C# kodu içeriyor. Şu anda çok yüksek bir frekansta yineleme ve güncelleme yapıyoruz.

Bu sunumun özetine bakalım. Bugün dört modüle bölünecek. Birincisi, Blockchain temel kavramlarını ve Blockchain projelerinin geliştirilmesini kısaca tanıtmaktır. Daha sonra Blockchain endüstrisinde .Net'in şu anki rolü ve gelişimi hakkında konuşacağım. Üçüncü bölüm için tema çapraz zincirdir, çapraz zincirin ihtiyaç ve zorluklarını makro bakış açısıyla ve birkaç çapraz zincir teknolojisini paylaşacağım. Son birim, AElf çapraz zincir teknolojisinin tasarımı ve uygulaması ve AElf'in bunu nasıl başardığıdır.

Blockchain Giriş - Birçoğunuz Blockchain bilgisine sahip olmalı veya en azından Blockchain'i duymalısınız, ancak bugün hala hala Blockchain temel kavramından başlamak zorundayız: Blockchain nedir? Yaygın olarak kabul edilen bir açıklama, “Bir Blockchain; şifreleme kullanılarak bağlanan, bloklar adı verilen ve büyüyen bir kayıt listesidir.” Bazı kayıtları içeren birkaç bloktan oluşan bir zincirdir. Blockchain tüm sorunlara bir derde deva değildir ancak dünya kodla tanımlanabilir, başka bir deyişle, dünya ne olup bittiğini doğru bir şekilde kaydetmek için Blockchain’i kullanabilir. Aslında, şu anda kullandığımız birçok modern yazılım sistemi zaten benzer şeyler yapıyor ancak Blockchain’in avantajının daha doğru ve kesin olduğunu düşünüyorum.

İlk olarak, Blockchain'in doğruluğu üç temel disiplinin teorik desteğine bağlıdır: Bilgisayar Bilimi, Yazılım Mühendisliği, Kriptografi. Bu üç disiplinin konu bilgisi aynı zamanda modern yazılım için vazgeçilmez bir teorik temelidir. Tüm yazılım geliştirme çalışmaları bundan ayrılamaz.

Buna ek olarak Blockchain'in önemli faktörleri; doğruluğunu sağlamak, kurcalanamayan ve merkezi olmayan veriler sağlamaktır. Açıkçası, kurcalanamaz ve merkezsizleşmenin kaçınılmaz bir sonucudur.

Merkezsizleşme nedir? Geleneksel yazılım endüstrisi, hizmetleri genellikle bir kuruluş veya şirket tarafından sağlanır ve sürdürülür. Yazılım hizmetlerini kullanmadan önce bazı kullanıcı anlaşmalarını kabul etmeyi seçiyoruz, bu da ilgili kuruma güvenmeyi seçtiğimiz anlamına geliyor ancak hiç kimse hizmetin başarısız olmayacağını garanti edemez, hiç kimse kuruluşun asla dağılmayacağını garanti edemez. Sorunun neresinde olursa olsun, sonuç olarak beklenmedik şekilde verilerimize yansıyacaktır. Az önce, Blockchain'in kaydetmek istediğiniz dünyanın bölümünü kaydetmek için kullanıldığını söyledik. Blockchain’in merkezsizleşmesi dünyayı kaydetme ve yorumlama hakkını verir ve bunu yapmak isteyen tüm katılımcılara açıktır. Kuruluşlar ve bireyler kaydeden olarak birlikte çalışır ve bu mekanizma verilerin doğruluğunu ve güvenliğini daha iyi korur. Merkezsizleşme kavramı, Blockchain’in temel özelliğidir. Çapraz zincir teknolojisi hakkında daha sonra konuştuğumuzda merkezsizleşmeden tekrardan söz edilecektir.

Blockchain gelişiminin tarihine bakalım. Birçok kişi, Blockchain yerine ilk önce Bitcoin'i duydu. Bitcoin; on yıldan fazla bir süredir vardır ve merkezsizleşme, POW ve diğer tasarım fikirlerini uygulamaya koydu. Bitcoin'den sonra başka bir klasik proje olan Ethereum ortaya çıktı. Blockchain’in güçlendirilmesi ve geliştirilmesinde büyük öneme sahip olan Turing’in tam bir betik dili ve uygulama ortamını destekleyen akıllı sözleşmeler kavramını ortaya koydu. Günümüzde birçok Blockchain projesi Ethereum'da üretiliyor. Ethereum'dan sonra Blockchain ekosistemi, çok çeşitli halka açık ve çatallı zincirlerin yanı sıra farklı senaryolar için Blockchain ve çapraz zincir projeleriyle daha da zenginleşti. Genel olarak, Blockchain teknolojisi daha iyi bir yöne ilerliyor.

Çok fazla Blockchain projesi olduğu için, teknoloji kümesinin seçimi farklı olmalıdır. İkinci modül ise ağırlıklı olarak Blockchain ekosisteminde .Net rolünü tanıtıyor. Birkaç yıl önce, .Net çapraz platform yeteneği zayıftı ve onu rekabetsiz yapan hiçbir Linux ortamı yoktu. Ekosistem geliştirme ortamı zayıftı. Bunlar sıklıkla eleştirilen eksikliklerdir. Şu anda, Blockchain alanındaki .Net oranı nispeten düşüktür ve ana akım hala C ++ / Golang / Rust’dır. Son yıllarda .Net çekirdeğinin hızlı gelişimi ile birçok proje geliştirme yapısı olarak kullanmaya başlamıştır. DotNet çekirdeği; çoklu terminal, çoklu platform yeteneklerinde ortaya çıkmaya başladı. AElf’in DNT forumuna katılımı, Blockchain alanında .Net’in gelişiminin desteklenmeye devam edilmesi anlamına gelir.

KAYNAK: https://medium.com/aelfblockchain/aelf-tech-talks-design-and-practice-of-blockchain-cross-chain-technology-part-1-8e494e48d1bd