BlockchainKoinSaati AkademiTeknoloji

Blockchain Dünyasına Farklı Bir Bakış: Oracle

Blockchain Oracle’ları akıllı kontratlara dış dünyadan bilgi akışı sağlayan üçüncü parti hizmetlerdir. Aslında onları farklı tip sistemler arası veri akışı sağlayan köprüler gibi düşünebiliriz.

İşlevi kavramanız için son derece basitleştirilmiş bir örnek vereceğim.
Reha ve Berkay kendi aralarında 25 Temmuz 2020 tarihinde havanın 35 derece olup olmayacağına dair iddiaya girerler. Reha havanın 35 derece olacağını Berkay ise olmayacağını iddia eder. Her ikisi de 100 lira ortaya koyar. E ama para nerede kalacaktır? Güvenebilecekleri kimseyi de bulamazlar. Bir Blockchain Oracle’ına sahip akıllı sözleşme yaparlar. Ve tarih 25 Temmuz 2020 olduğunda havanın 35 derece olmadığını dışarıdan veri olarak alan Oracle bunu akıllı sözleşmeye bildirir ve 200 lira Berkay’ın hesabına aktarılır.

oracle

Neden Oracle?

Blockchain sistemler mimarileri gereği deterministlerdir yani basitçe özetlemek gerekirse bütün düğümleri 2+2 kaçtır sorusuna 4 cevabını veren çocuklar gibi düşünebiliriz. Ama sözleşmelerde ve kurulan ağlarda durumların değişkenlik göstermesi gerekebilir. Örneğin Ertuğrul ve Rukiye aralarındaki sözleşme gereği 200 Dolarlık ETH üzerinden anlaşmış olsunlar. Fakat ETH değerinin anlık olarak değişkenlik gösterdiğini düşünürsek sözleşmemiz danışmak için bu konuda bir API (bir yazılımın başka bir yazılımda tanımlanmış işlevlerini kullanabilmesi için oluşturulmuş bir tanım bütünüdür. Örneğin; Google Adwords) çağıracak ve ardından bu tutarı Reha’nın hesabından Berkay’ın hesabına aktaracak . İşte Blockhain ağındaki her bir düğüm bu işlemi yapmak için bu API’i de çağıracak.

Ama şimdi ne olacak? API’yi bir an sonra bile çağırırlarsa, API değişmiş olabilir — amortismana tabi tutulmuş, saldırıya uğramış veya bir dizi başka nedenden dolayı — ve tüm düğümler farklı bir sonuç alacaktır. Bu, düğümlerin hiçbirinin Blockchain’in gerçek durumunun ne olduğu konusunda hemfikir olamayacağı anlamına gelir ve işlem başarısız olur. Bu nedenle Blockchain’lerin bir çoğu deterministik olarak tasarlanmıştır.

Ancak gerçek dünyayla bağlantı kurmak için Blockchain dünyasına ihtiyacımız var. Örneğin DEX’e (Merkeziyetsiz Borsalar) sahip olabilmemiz için ETH ve diğer kripto para birimlerinin fiyatını bir sözleşmeye almamız gerekiyor. Blockchain’in en önemli amaçlarından biri olan akıllı sözleşmeler için kullanmak için verilere ihtiyacımız var. Peki bu kısıtlama ile bu farklı dünyaları nasıl köprüleyeceğiz?

Bir Blockchain oracle, deterministik bir Blockchain’i zincir dışı verilerle bağlayan herhangi bir cihaz veya varlıktır. Bu Oracle’lar, her veri girişini harici bir işlemle girer. Bu şekilde, Blockchain’in kendisinin kendisini doğrulamak için gereken tüm bilgileri içerdiğinden emin olabiliriz. Bu yüzden Oracle, Blockchain middleware(ara yazılım) olarak bilinir: iki dünya arasındaki köprüdür.

Oracle Problemleri

E kardeşim bu Oracle’ın hiç mi eksiği yok? Dediğinizi duyar gibiyim. Elbette var ama çözümünü sunan bir platform da var. Öncelikle sorunumuza göz atalım;
Şimdi bir adım geriye götürüyorum sizi ve neden ilk etapta on-chain inşa ettiğimizi hatırlayalım. Zincir üzerinde bir şey yapmamızın büyük bir nedeni merkeziyetsizliktir yani bir merkeze sahip olan sistemleri arzu etmediğimiz için akıllı sözleşmeler yaptık. Ancak, veriler bir yerden gelmelidir.

Verileri tek bir API, düğüm veya kaynaktan içe aktarırsak, şimdi blockchain’i ilk etapta kullanmanın tüm amacını esasen kaldırdık. Merkezi bir oracle, bir işletmenin akıllı sözleşmeniz üzerinde güce sahip olduğu ve akıllı sözleşmenizin artık normal bir sözleşmeden daha iyi olmadığı anlamına gelir. Ve merkezi oracle en iyi niyetlere sahip olsa bile, merkezi bir Oracle’ın saldırıya uğradığı, modası geçmiş veya korunmadığı ve felaketin ortaya çıktığı saldırıları zaten gördük. Merkezi Oracle’ların kullanılması akıllı sözleşmelerin avantajını geçersiz kılar ve büyük güvenlik riskleri içerir.

Etherscan

Tamam da Çözüm Ne?

Chainlink

Chainlink bunların her ikisini de çözebilen merkezi olmayan bir Oracle’dır. Yani kişiye, kişilere, kurumlara, vakıflara, derneklere bağlı olmayan bağımsız bir veri sağlayıcıdır. Oracle ağındaki her bir düğüm verileri zincir dışı kaynaklardan bağımsız olarak alır ve zincir üstüne getirir. Ardından veriler toplanır ve böylece sistem deterministik hale getirilir.

Chainlink, akıllı sözleşmelerin gerçek potansiyellerine ulaşmasını sağlamak için gerçek dünyadaki verileri blockchain’e bağlamak için mükemmel bir tercihtir. Bununla birlikte, Chainlink sayesinde blockchain’in sahip olduğu aynı güvenilir merkezi olmayan altyapı konseptinden yararlanıyoruz. Eğer kaynaklar hacklense, silinse, saldırıya maruz kalsa bile Chainlink ağı merkezi olmayan ağdan yararlanacak ve devam edecektir.

Sonuçta, akıllı sözleşmelerin en iyi anlaşma şekli olması için çeşitli ve güvenilir verilere erişmemiz gerekiyor. Bu yüzden Oracle’lara ihtiyacımız var ve bu ihtiyaç  her geçen gün daha da çok artacaktır.

**Kripto paralar hakkında; merak ettikleriniz, öğrenmek istedikleriniz, soru-cevap, güncel analizler için Telegram kanalımızda bizi takip edin ve iletişimde kalın. KoinSaati’nin Telegram Kanalına katılmak için tıklayınız.

Başa dön tuşu