Oracle (Blockchain Oracle) Nedir?

Blockchain oracle, fiyat, hava durumu veya maç sonucu gibi zincir dışındaki verileri akıllı sözleşmelerin kullanabileceği biçimde blockchain’e taşıyan sistemdir. DeFi uygulamalarının çoğu fiyat verisi için oracle’lara dayanır.

Bu sayfada 6
  1. Oracle neden gereklidir?
  2. Oracle nasıl çalışır?
  3. Oracle türleri ve örnekler
  4. Oracle manipülasyonu nedir?
  5. Sık sorulan sorular
  6. Kaynak

Blockchain oracle, zincir dışındaki verileri akıllı sözleşmelerin kullanabileceği biçimde blockchain’e taşıyan sistemdir. Bir kripto paranın dolar fiyatı, bir maçın sonucu ya da hava durumu bilgisi blockchain’in kendi içinde bulunmaz; bu veriler sözleşmeye bir oracle aracılığıyla ulaşır. Borç verme, türev ve stablecoin protokollerinin çoğu doğru çalışabilmek için oracle’lara bağımlıdır.

Oracle neden gereklidir?

Akıllı sözleşmeler, ağdaki bütün düğümlerin aynı sonuca ulaşabilmesi için yalnızca zincir üzerindeki veriyle çalışır. Bir sözleşme internetteki bir siteyi kendisi açıp fiyat okuyamaz; her düğüm farklı anda farklı sonuç görebilir ve ağ uzlaşmaya varamaz. Oracle, dış dünyadaki bilgiyi herkesin aynı şekilde okuyabileceği bir zincir içi kayda dönüştürür.

Bu durum “oracle problemi” olarak bilinir: Blockchain ne kadar güvenli olursa olsun, dışarıdan gelen veri yanlışsa sözleşme de yanlış karar verir. Bu nedenle verinin kim tarafından, hangi kaynaklardan ve nasıl toplandığı en az kodun kendisi kadar önemlidir.

Oracle nasıl çalışır?

Basit bir örnek üzerinden bakalım. Bir DeFi borç verme uygulamasına ETH teminat yatırıp stablecoin borç aldığınızı düşünün. Uygulama, teminatınızın değerini bilmek için ETH/USD fiyatına ihtiyaç duyar. Oracle ağı bu fiyatı birçok borsadan toplar, ortalamasını alır ve düzenli aralıklarla zincirdeki bir sözleşmeye yazar.

ETH fiyatı belirlenen eşiğin altına düşerse protokol oracle’ın bildirdiği fiyata göre pozisyonunuzu tasfiye eder. Oracle hatalı ya da gecikmeli fiyat gönderirse tasfiye yanlış anda gerçekleşebilir veya hiç gerçekleşmeyebilir.

Oracle türleri ve örnekler

  • Merkeziyetsiz oracle ağları: Birden fazla bağımsız düğüm operatörünün veri sağladığı ağlardır. En bilinen örnek Chainlink’tir; Pyth Network de özellikle fiyat verisi alanında yaygın kullanılır.
  • Zincir içi oracle’lar: Fiyatı doğrudan bir DEX havuzundan, örneğin belirli bir süre boyunca ağırlıklı ortalama alarak okur.
  • Merkezi oracle’lar: Tek bir şirketin veya kurumun veri sağladığı yapılardır; basittir ama tek hata noktası oluşturur.

Oracle’lar yalnızca fiyat taşımaz. Doğrulanabilir rastgele sayı üretimi, zincirler arası mesajlaşma ve gerçek dünya varlıklarının rezerv kanıtı da oracle ağlarının sunduğu hizmetler arasındadır.

Oracle manipülasyonu nedir?

Oracle manipülasyonu, bir saldırganın oracle’ın okuduğu fiyatı geçici olarak değiştirip bu yanlış fiyattan kâr elde etmesidir. Özellikle düşük likiditeli tek bir piyasadan fiyat alan protokoller risk altındadır. Ekim 2022’de Solana üzerindeki Mango Markets’ta bir saldırgan, MNGO tokeninin fiyatını kısa sürede yapay olarak yükseltip şişen teminatla protokolden 100 milyon doları aşan varlık borç aldı.

Bu tür olaylar, birden çok kaynaktan veri toplayan, ani sapmaları filtreleyen ve zaman ağırlıklı ortalama kullanan oracle tasarımlarının neden önemli olduğunu gösterir. Kullanıcı açısından pratik ders şudur: Bir DeFi protokolüne para yatırmadan önce belgelerinde hangi oracle’ı kullandığına, fiyatın kaç kaynaktan toplandığına ve küçük tokenler için teminat sınırı konup konmadığına bakın. Kod denetiminin yapılmış olması, dış verinin her koşulda doğru olacağı anlamına gelmez.

Sık sorulan sorular

Oracle ile köprü aynı şey mi?

Hayır. Oracle dış dünyadaki veriyi zincire taşır; köprü ise varlıkları veya mesajları iki blockchain arasında aktarır. Bazı oracle ağları köprü hizmeti de sunar.

Oracle’a neden “kahin” denir?

İngilizce “oracle” kelimesinden gelir. Bu sistemler geleceği tahmin etmez; yalnızca mevcut bir bilgiyi zincire taşır.

Kaynak

Bir sonraki okuma