Chainlink: Oracle Makine nasıl Blok Zinciri'ni gerçek dünya ile bağlar

robot
Abstract generation in progress

Oracle Makine Sisteminin Blok Zinciri İçindeki Önemi ve Chainlink'in Uygulama Mekanizması

Oracle Makine, Blok Zinciri alanındaki kritik altyapıdır, zincir üstü akıllı sözleşmelere dış bilgi sağlayabilir. Akıllı sözleşmeler ile Blok Zinciri dış dünyası arasında bir ara katman olarak, Oracle Makine hayati bir rol oynamaktadır, ana işlevi Blok Zinciri üzerindeki akıllı sözleşmelere veri sağlamaktır.

Bir örnek vermek gerekirse, eğer Ethereum ağı üzerinde bir günün ham petrol işlem hacmi verilerini almak için bir akıllı sözleşme dağıttıysak. Akıllı sözleşmenin kendisi doğrudan zincir dışındaki gerçek dünya verilerine erişemediğinden, bu işlevi gerçekleştirmek için bir Oracle Makine aracılığıyla gereklidir. Bu durumda, akıllı sözleşme gerekli tarihin ham petrol işlem hacmini olay günlüğüne yazacaktır. Ardından, zincir dışı bir süreç bu olay günlüğünü izlemek ve abone olmak için başlatılacaktır. İşlemdeki isteği dinlediğinde, bu süreç zincir üzerindeki bir işlemi göndererek sözleşmenin ilgili yöntemlerini çağıracak ve belirtilen tarihin ham petrol işlem hacmi bilgilerini akıllı sözleşmeye yükleyecektir.

Oracle Makine Detaylı Serisi: Chainlink (1. Bölüm)

Chainlink, şu anda Blok Zinciri alanında pazar payı en büyük Oracle Makine projesidir. En güvenli şekilde Blok Zinciri'ne gerçek dünyada üretilen verileri sağlamak amacıyla merkeziyetsiz bir Oracle sistemi olarak tasarlanmıştır. Chainlink, temel Oracle Makine prensipleri üzerine inşa edilen ekonomik teşvik odaklı bir iyi niyet ekosistemi oluşturmak için LINK token'ını kullanmaktadır. Chainlink Oracle Makinesi, LINK token'ının transferi ile tetiklenmektedir ve LINK, Ethereum ağı üzerindeki ERC677 sözleşmesidir. LINK ERC677 token'ı temelinde gerçekleştirilen Oracle Makine işlevi, istek/yanıt modeline aittir.

Oracle Makine Detaylı Serisi: Chainlink (1. Bölüm)

ERC677 token standardı, Chainlink'in Oracle Makine hizmet senaryolarını karşılamak için önerdiği bir standarttır. Bu standart, standart ERC20'nin üzerine transferAndCall yöntemini ekleyerek, ödeme ve hizmet talebini birleştirir. Kullanıcı transferAndCall ile transfer gerçekleştirdiğinde, ERC20'nin transfer işlevinin yanı sıra, alıcı adresinin bir sözleşme adresi olup olmadığını kontrol eder; eğer öyleyse, o adresin onTokenTransfer yöntemini çağırır.

Oracle Makine详解系列之 Chainlink(上)

Chainlink'in uygulamasında, oracle tüketicisi transferAndCall yöntemini kullanarak ödeme yaptığında ve hizmet talep ettiğinde, oracle sözleşmesinin onTokenTransfer yöntemi önce bir dizi güvenlik kontrolü gerçekleştirir. Bu, transferin LINK tokeni olup olmadığını doğrulamayı, veri uzunluğunun sınırı aşmadığını kontrol etmeyi ve fonksiyon seçimcilerini doğrulamayı içerir. Kontroller geçtikten sonra, mevcut oracle sözleşmesinin oracleRequest yöntemini çağırmak için deleGatecall kullanılır.

Oracle Makine Detay Serisi: Chainlink (1. Bölüm)

oracleRequest yöntemi, benzersiz bir requestId oluşturacak, süre aşımını ayarlayacak ve ilgili bilgileri commitments haritasına ekleyecektir. En önemlisi, istek verilerini içeren bir OracleRequest olayı yayımlayacaktır; bu olay, CBOR( biçiminde kodlanmış ) biçiminde basit ikili nesne temsilini kullanır.

Oracle Makine detay serisi: Chainlink (Bölüm 1)

Ağ dışı düğümler bu OracleRequest olaylarını dinleyecek. Yeni bir istek algılandığında, düğüm olay içindeki bilgiyi ayrıştıracak, gerekli verileri almak için API çağrısı yapacak ve ardından oracle sözleşmesinin fulfillOracleRequest yöntemini çağırarak verileri zincire iletecek. Bu yöntem bir dizi doğrulama gerçekleştirecek ve ardından talep eden sözleşmenin geri çağırma fonksiyonunu çağırarak sonucu tüketici sözleşmesine iletecek.

Oracle Makine Detailleri Serisi: Chainlink (1. Bölüm)

Geliştiriciler için, eğer yalnızca mevcut piyasa fiyatlarını kullanmaları gerekiyorsa, Chainlink tarafından sağlanan Price Feed( ayrıca Aggregator) olarak da bilinir. Her ticaret çifti için ayrı bir Price Feed bulunmaktadır, gerçekte bu bir AggregatorProxy sözleşmesidir. Bu sözleşmeler, fiyat hassasiyeti, açıklama, versiyon ve en güncel fiyat verileri gibi birçok sorgulama yöntemini sağlar. Çoğu uygulama senaryosunda, sözleşme yalnızca en güncel fiyatı okumak için latestRoundData() yöntemini çağırmak isteyebilir.

Oracle Makine Detaylı Seri: Chainlink (1)

Dikkate değer olan, USD cinsinden fiyatlandırılan işlem çiftlerinin fiyat hassasiyetinin genellikle 8 haneli olarak standartlaştırılmasıdır; bu, farklı tokenlar arasındaki hassasiyet işleme sorununu basitleştirmektedir. Bu tasarım, geliştiricilerin karmaşık API çağrıları ve veri formatı dönüşümleri ile uğraşmadan akıllı sözleşmelerde gerçek zamanlı fiyat verilerini daha kolay bir şekilde kullanmalarını sağlamaktadır.

Oracle Makine Detay Serisi: Chainlink (1. Bölüm)

View Original
This page may contain third-party content, which is provided for information purposes only (not representations/warranties) and should not be considered as an endorsement of its views by Gate, nor as financial or professional advice. See Disclaimer for details.
  • Reward
  • 8
  • Share
Comment
0/400
staking_grampsvip
· 5h ago
Link'i bir kez daha yükleyelim mi?
View OriginalReply0
DegenWhisperervip
· 17h ago
Chainker gerçekten harika ama biraz pahalı.
View OriginalReply0
MidnightSnapHuntervip
· 17h ago
Chainlink oldukça güvenilir.
View OriginalReply0
HalfPositionRunnervip
· 17h ago
Link'in daha da yükseliş yapması gerektiğini düşünüyorum.
View OriginalReply0
GweiTooHighvip
· 17h ago
link yine mi yükseldi? Tahmin etmeye gerek yok.
View OriginalReply0
SelfRuggervip
· 17h ago
link boğa Al, iş tamam.
View OriginalReply0
GweiWatchervip
· 17h ago
Gerçekten harika, bu fiyat feed gerçekten çok kullanışlı.
View OriginalReply0
PermabullPetevip
· 17h ago
link oldukça güvenilir
View OriginalReply0
  • Pin
Trade Crypto Anywhere Anytime
qrCode
Scan to download Gate app
Community
  • 简体中文
  • English
  • Tiếng Việt
  • 繁體中文
  • Español
  • Русский
  • Français (Afrique)
  • Português (Portugal)
  • Bahasa Indonesia
  • 日本語
  • بالعربية
  • Українська
  • Português (Brasil)