Ben Frank, Chainlink Labs'ta Geliştirici İlişkileri Mühendisiyim. Benim asıl işim, bu endüstri hakkında tutkulu olan daha fazla geliştiricinin veya inşaatçının kehanet makineleri hakkında daha fazla bilgi edinmesini sağlamaktır. Mevcut altyapımız altında bulunan akıllı sözleşmelerden yola çıkarak hibrit bir akıllı sözleşme olarak düşünebiliriz. Akıllı sözleşmeler, bilgi işlem hizmetleri dahil olmak üzere Web2 dünyasındaki çeşitli verilerle daha iyi entegre edilebilir ve ardından bu mimariye dayalı olarak, zincirdeki akıllı sözleşmelerin yapabilecekleri büyük ölçüde genişletilir.
Bugünkü paylaşımımda öncelikle oracle makine kavramını tanıtacağım ardından oracle makine kavramından yola çıkarak merkezi olmayan oracle makine ağını ve sunabileceğimiz veri servisleri ve bilgi işlem servisleri dahil bazı servisleri kısaca tanıtacağım.
Kahin nedir?
Web 1'den Web 2'ye ve Web 3'e, ağın ve verilerin durumu sürekli değişiyor. Başlangıçta verileri yalnızca statik olarak okunabilen bir web sitesi hizmeti olan Web1, Web2 aşamasına geldiğinde veriler okunabilir, yazılabilir ve katılım sağlanabilir hale geldi. Birçok büyük şirket kendi hizmetlerine dayalı iş imparatorlukları oluşturmuştur.Tüm kullanıcı verilerini kendi veritabanlarında depolayacaklardır.Gerekirse kullanıcı verilerine fiilen sahip olabilir ve bunları değiştirebilirler. Bu durumda şöyle bir soru ortaya çıkıyor yani internette ya da sanal alemde oluşturduğumuz bazı verilerin bazen bir değeri oluyor peki bu değer kime ait? Bu arka plana dayanarak, Web 3 aşamasında bu sorunu iyi bir şekilde çözebileceğimizi umuyoruz. Web 3 aşamasındaki tüm veriler bir sunucuda veya bir düğümde bulunmaz, merkezi olmayan bir ağa sahiptir ve merkezi olmayan ağ, birden çok düğümden oluşan çok kitaplı bir sistemdir. Veriler birden çok düğümde depolanır ve yalnızca her düğüm verilerin değiştirilmesi ve saklanması konusunda hemfikir olduğunda nihai veriler kaydedilebilir. O zaman bu bize bir fayda sağlayacak, yani verilerde hangi değişikliği yapmak istiyorsak yapalım, önceden kararlaştırılan fikir birliğine göre onu değiştirmemiz gerekiyor. Örneğin, cüzdan bakiyesini değiştirmek istersem, eğer kimse bana para göndermezse, veri sahibi bunu nasıl değiştirmek isterse istesin, sonunda mutabakat sürecinde başarısız olur ve bu da cüzdan bakiyesini değiştirilemez hale getirir. Ancak veri sahibi kurallara uygun bir işlem gönderdiğinde, veriler nihayet değiştirilebilir, bu da çok açık bir fayda sağlar. Aynı zamanda bazı dezavantajları da beraberinde getirmektedir.En büyük dezavantajı ise sistemi deterministik bir sistem haline getirmesidir. Yani süreç boyunca bir mutabakat süreci olacağı için sadece başkalarının doğrulayabileceği işlemleri gerçekleştirebilir. Bir işlem gönderdiğinizde, başkalarının sizin işleminizi yürütmesi gerekir ve diğer düğümler işlemi başarıyla yürütürse, aslında sonucu döndürebilirler. %50'den fazla mı yoksa %70'ten fazla mı olduğu konsensüs algoritmasına bağlıdır. Sonunda, işlem, işleme yazılabilir ve işlem, tam bir işlem haline gelmek için bloğa yazılabilir.
Ancak blockchain dışında bazı API verileri elde etmek ve rasgele sayılar üretmek gibi deterministik olmayan bazı işlemler yapmamız gerekirse, deterministik blockchain sistemi tamamlanamaz. Piyango çekilişimizin rasgele sayılar üretmesi gerekiyor veya zincir üstü protokolün, deterministik olmayan bir işlem olan ve blok zinciri tarafından tamamlanamayan hisse senetleri veya emtia fiyatını elde etmek gibi zincir dışındaki varlık fiyatını bilmesi gerekiyor. . Başka bir örnek API çağrılarıdır.Ağdaki bir düğüm olarak harici API verilerini çağırırsam ve ardından ağdaki diğer düğümlere sonucu söylersem, diğer düğümler de sonucun gerçekliğini doğrulamak için onu yürütür. aynı işlem ve sonuç almak. Ancak harici bir API için, farklı kişiler aynı API'yi farklı zamanlarda getirirse, sunucu kapatılabilir veya hizmet askıya alınabilir veya veriler zaman içinde değişebilir. Aynı şeyi farklı zamanlarda yapıyorsunuz ve aldığınız sonuçlar tutarsız. Sonuç tutarsız olduğu sürece, son işlem bir bloğa girilemez ve onu tamamlamanın bir yolu yoktur. Bu, veri sahipliğine sahip olduktan sonra, bunun getirdiği bazı eksikliklere de katlanmamız gerekiyor.
Bu sorunu çözmek için kehanetlere güvenmemiz gerekiyor. Blok zinciri izole ve deterministik bir sistemdir, zincir dışından aktif olarak veri elde edemez, oracle makinesinin ortaya çıkışı bu sorunu çözmek içindir. İki ya da üç yıl önce kehanet makinesi kavramı ortaya çıktı, ancak o zamanlar çok fazla uygulanabilir senaryo yoktu ve büyük sınırlamaları vardı. Örneğin, bazı piyasa verilerini elde etmek istediğinizde, hisse senedi verilerini blockchain ağına yükleyin veya yürütme için zincire mantık koyacak bir yapı oluşturun, ancak varlık tarafını zincire koyun ve işlemlerin normal ilerlemesini koruyun. akıllı sözleşmeler vb., Şu anda, banka ödemesi veya perakende verileri ve hatta hava koşulları, coğrafi konum gibi diğer bazı genel olay verileri dahil olmak üzere, bazı verilerin zincirden alınması ve veri senkronizasyonunun periyodik olarak gerçekleştirilmesi gerekir. bilgileri, lojistik bilgileri, spor bilgileri vb. Oyun sonuçları vb. Bu veriler oracle makinesi olmadan elde edilemez. Bu, zincirdeki ekolojiyi çok sınırlı hale getirecektir. Web 3 ekosisteminin sürekli gelişmesiyle, Web 3 ve Web 2'nin iki dünyası arasındaki bağlantı giderek daha da yakınlaşacaktır. Web3'ün geniş çapta benimsenmesini veya daha fazla kişi tarafından kullanılmasını istiyorsak, yalnızca zincirdeki orijinal veriler aracılığıyla yapılabilecek bazı işlemlerle sınırlı kalmamalı, çok zengin işlevler sağlamalıdır.
Oracle makinesi muhtemelen 2020'de DeFiSummer olduğunda popüler oldu ve çoğu insan bunu fark etti. Başlangıçta oracle makinesi çok basit şeyler yapıyordu.Örneğin harici bir veri elde edip bunu merkezi olmayan ağa yani blockchaine yüklemek istiyorsanız en kolay yol zincir altında merkezi bir node kurmak yani Bir sunucu oluşturmak, ardından sunucu aracılığıyla veri elde etmek ve son olarak verileri tekilleştirilmiş blok zinciri ağına yazmak, ardından bu modele merkezi kehanet denir. Uygulanması görece basit olmasına rağmen bazı sorunları da beraberinde getirecektir.Örneğin tek noktadan arızalanma riski vardır yani merkezi düğüm kendi temel sebeplerinden dolayı duruş süresine neden olabilir. Diğer bir olasılık ise, zincirdeki akıllı sözleşmenin sağladığı hizmet, merkezi düğümün sağladığı verilere bağlıysa ve zincirdeki akıllı sözleşmeye dahil olan fon miktarı çok büyükse, o zaman bu merkezi kehanet makinesi geçebilir. hizmete bir saldırı başlatmak için manipüle edilebilecek kendi Verileri. Faydalar yeterince büyük olduğu ve teknik yollarla tamlığa ulaşmanın bir yolu olmadığı sürece, bu tek bir başarısızlık noktasıdır. Uygulamayı, Ethereum veya diğer Katman 2 ekosistemleri dahil olmak üzere merkezi olmayan ağa koymak istiyoruz.Aslında, uygulamamızın, yani akıllı sözleşmenin adaletini, dünyadaki yüzlerce veya binlerce oracle düğümü aracılığıyla sağlayabileceğimizi umuyoruz. ağ ve güvenlik.
Elbette, veri terminallerini elde etmek için merkezi düğümlere güvenirsek, güvenliğin diğer yönleri garanti edilebilse bile, ancak en önemli varlık veri terminali güvenliği garanti edemezse, tüm dApp'i anlamsız hale getirecektir. Yani merkezi oracle makinesinden sonra, az önce bahsettiğimiz tek hata noktası riskini iyi bir şekilde çözebilen merkezi olmayan bir oracle makine ağı var. Merkezi olmayan oracle ağındaki en büyük fark, tek bir oracle düğümünün merkezi olmayan ağa hizmet sağlaması değil, merkezi olmayan oracle ağı üzerinden hizmet vermesidir.Bir çeşit Layer2 olarak da anlaşılabilir, yani merkezi olmayan her ağdaki düğümler. oracle ağı, kendi veri kaynakları aracılığıyla veri elde edebilir ve sonuçları elde ettikten sonra, diğer merkezi olmayan ağlarla veri toplama işlemini gerçekleştirebilir; döndürülen veriler ortalama değerden çok fazla sapıyor veya basitçe bir ortalama değer elde edin, ardından verileri toplayın, vb. ve ardından bunu merkezi olmayan ağa yazın. Bu yöntemin getirdiği faydalardan biri, merkezi olmayan oracle ağındaki tüm düğümlerin hizmet vermeyi durdurmadığı sürece hizmetin kesintiye uğramayacağını teknik olarak garanti edebilmesidir, ancak bu olasılık çok düşüktür. Ayrıca veri tarafında, oracle tarafından zincir üzerindeki sözleşmeye sağlanan verilerin tek bir düğüm tarafından değil, birçok düğüm tarafından kontrol edilmesi de garanti edilebilir. Bir saldırı başlatmak için verileri manipüle etmek istiyorsanız, maliyet çok yüksek olacaktır, bu da Katman 2'ye veya hatta temelde başarılı olması pek olası olmayan Ethereum gibi merkezi olmayan bir ağa saldırmaya eşdeğerdir.
Merkezi olmayan ağ, akıllı sözleşmeler tarafından alınan verilerin güvenliğini ve adaletini büyük ölçüde artırabilir. Kullanıcılar için biz sadece merkezi olmayan bir kehanet ağıyız, ancak merkezi olmayan kehanet ağına dayalı olarak veri hizmetleri, bilgi işlem hizmetleri ve zincirler arası hizmetler gibi bazı başka hizmetler sağlayabiliriz. Ağa veri sağlamak oracle makinesini temel alıyorsa, aslında off-chain de tamamlanabilecek daha karmaşık ve maliyetli bazı işlemler var, yani hesaplama için off-chain oracle ağına paketleniyor. ve ardından güvenlik karşılaştırması yüksek blok zincirine geri yazılır. Eğer off-chain'den veri elde edebiliyorsak diğer zincirlerden de veri alıp bu blockchain'e yazabiliriz ki bu aslında cross-chain'dir. Merkezi olmayan oracle ağının güvenliği yeterince güçlü olduğu sürece, veri servislerinin, bilgi işlem servislerinin ve buna dayalı zincirler arası servislerin güvenliğini garanti edebilir. Chainlink, Katman 1 ve Katman 2 verileri dahil olmak üzere Web 3 ve Web 2 verilerini birbirine bağlayabilen merkezi olmayan oracle'lara dayalı çeşitli hizmetler sağlar, böylece herkes mümkün olduğunca çok ilgili veri ve hizmeti elde edebilir.
Chainlink oracles tarafından sağlanan hizmetler nelerdir?
Ardından, Chainlink oracles tarafından sağlanan hizmetleri kısaca tanıtmama izin verin. Elbette Chainlink tabanlı birçok servis var ve bazı servisleri daha uygulanabilir senaryolarla paylaşacağım.
Gelecekte DeFi, GameFi, NFT ve SocialFi alanlarında bazı yenilikler yapmak istiyorsanız, veri elde etmek için bir kehanete ihtiyaç duyma ihtimaliniz yüksek. Çünkü zincir verilerini çok merkezi olmayan ve güvenli bir şekilde elde etmeli ve zincirdeki akıllı sözleşmenize geri yazmalısınız.
İlk hizmet, daha önce sık sık duyduğunuz bir terim de olabilecek fiyat beslemesidir ve 2020'de DeFiSummer'da patlama yapacaktır. 2020'de Uniswap ile başlayan, ardından borç verme sözleşmesi Compound ve ardından sentetik varlık projesi Synthetics ve diğer uygulamalarla başlayan birçok DeFi projesi ortaya çıktı.Sadece güvenli veriler kullanılabildiğinden, hepsinin zincir dışı verilere yönelik büyük bir talebi var. Veriler, kullanıcılar tarafından sözleşmeler aracılığıyla merkezi olmayan bir şekilde kullanılabilir ve kehanetin fiyat besleme hizmeti önemli bir rol oynar.
Yukarıdaki şekil, 3 önemli katılımcının yer aldığı fiyat akışı hizmetinin temel akış şemasıdır. Birincisi, az önce bahsettiğimiz merkezi olmayan kahin makineleri ağı; ikincisi, hepsi veri sağlayıcı olarak hizmet edebilen borsalar veya diğer büyük yetkili kurumlar olabilecek veri sağlayıcıları; üçüncüsü ise bir kullanıcı sözleşmesidir. Yukarıdaki şekilde gösterilen işlem çok basittir.Her veri sağlayıcı, veri kaynağı arayüzü veya hizmeti aracılığıyla Chanlink oracle ağının bir düğümünü sağlayabilir ve oracle ağının her düğümü de kendi hizmetine göre veri alabilir. daha sonra toplama işlemi yoluyla, her bir kanal tarafından elde edilen veriler, zincir üzerinde dağıtılan doğrulama sözleşmesine yazılır. Doğrulamayı geçerse, veriler kaydedilebilir ve gelecekte kullanıcılar tarafından kullanılabilir.İşte tüm süreç bu. Müşterinin sözleşmeyi yalnızca birden çok veriyi elde etmek ve kullanmak için kullanması gerekir.
Az önce bahsettiğimiz Bileşik, Uniswap ve Sentetik gibi fiyat besleme için birçok kullanım durumu vardır, bunların Web2'deki varlıkları Web3'e eşlemesi gerekir ve varlık fiyatlarını sağlamak için harici mekanizmalara ihtiyaçları vardır. Tıpkı bir stablecoin gibi, kaç varlığın aynı sayıda stablecoin çıkarabileceğine bağlıdır ve varlık fiyatı da oracle makinesine göre elde edilmelidir. Ek olarak, bazı varlık yönetimi platformları ve popüler türev alım satım uygulamaları gibi, fiyatlara büyük ölçüde bağımlıdırlar, dolayısıyla bunlar aslında fiyat besleme hizmetlerinin önemli kullanıcılarıdır. Trend açısından bakıldığında, fiyat besleme hizmetlerine olan talep katlanarak artıyor. Daha az aktif pazarlarda bile veri kullanımı artıyor.
Ardından, ikinci daha ayırt edici hizmeti, Any API'yi tanıtacağım.Basitçe söylemek gerekirse, bazı uzun kuyruklu veriler gibi bazı standart dışı verileri elde etmek için zincirdeki akıllı sözleşmelere yardımcı olur. Bu veriler yalnızca belirli kişilere veya belirli sözleşmelere açık olabilir, ancak token fiyatları veya varlık fiyatları gibi standart veriler değildir. Birçok DApp, standart olmayan veriler gerektirir.Örneğin, Web 3 sigorta iş uygulamalarının hava durumu verilerini veya uçuş gecikme verilerini alması gerekir. Örneğin, seçim spor oyunları dahil olmak üzere ESG'ye benzer bazı projeler sera gazı yapabilir, tahmin pazarları ile birleştirilebilir. Any API tabanlı veri marketleri sağlamaktayız.Her data markette kendi verilerine göre harici servis sağlayan çeşitli veri sağlayıcılar bulunmaktadır.Kullanıcı istek gönderdiği sürece,verileri kullanıcı sözleşmesine göre geri yazabilir. hizmet gereksinimleri. . Hem veri sağlayıcısı hem de veri alıcısı piyasa tarafından belirlenir. Kullanıcılar ve veri sağlayıcılar için bir pazar vardır ve Chainlink resmi olarak tüm verileri tekelleştirmez ve ardından zincire veri sağlar.
Any API ve fiyat beslemesinin iş akışı aslında oldukça tutarlıdır.Sözleşme önce bir istek gönderir ve ardından istek Chanlink düğümleri tarafından keşfedilir. Keşiften sonra Chanlink, talebe göre gerekli verileri seçebilir ve ardından blok zincirine geri yazabilir. AnyAPI, kullanıcılara çeşitli veriler sağlayabilir, ancak nispeten hızlı bir şekilde oluşturulmasına rağmen tek bir düğüm tarafından sağlanması gibi bir özelliği vardır. AnyAPI'nin yapmak istediği, daha önce bahsettiğimiz merkezi olmayan ağ oracle makinesi üzerinden veri elde etmek yerine, basit bir şekilde mümkün olan en hızlı şekilde veri elde etmektir.
Daha sonra, veri gereksinimlerinin çeşitliliği arttıkça, birçok standart dışı veri de merkezi olmayan bir şekilde zincire geri yazılmayı umdu. Ayrıca bu yılın Nisan ayı başlarında Functions adında yeni bir hizmet oluşturduk.Basitçe söylemek gerekirse, herhangi bir kullanıcı isteğini merkezi olmayan bir kehanet ağı aracılığıyla yürütür. Kullanıcılar, operasyon programını yazmak için Java gibi bazı gelişmiş programlama dillerini kullanabilirler, artık yalnızca Solidity dilinde yazılamazlar, Java ile yazılan program kesinlikle Solidity'den daha fazladır. İşlevler hizmeti, yazılı programı bir istek halinde kapsülleyebilir ve bunu tüm oracle ağına gönderebilir. Ağdaki her düğüm, bilgi işlem hizmetleri, veri toplama hizmetleri veya diğer hizmetler olabilecek aynı işlemi gerçekleştirecektir. Her düğüm işlemi gerçekleştirip sonucu aldıktan sonra, az önce bahsettiğimiz toplama sürecinden geçer ve ardından bunu akıllı sözleşmeye geri yazar.
Yem fiyatı ile karşılaştırıldığında serbestlik derecesi çok yüksektir. Yani akıllı sözleşmeye istediği yöntemi kullanması için harici bir arayüz verilebilir. Ayrıca, yapması gereken mantığın bir kısmını sözleşmeye yazabilir ve ardından blok zinciri tarafından değil, kehanet makinesi hizmetini doğrudan akıllı sözleşmeye gömmeye eşdeğer olan kehanet makinesi tarafından yürütülür ve hibrit hale gelir. Akıllı sözleşme türü. Bu şekilde yaparsanız, yürütmeniz merkezi olmayan ağ aracılığıyla garanti edilir ve deterministik olmayan işlemleriniz, blok zincirinde yapılamayan ve merkezi olmayan oracle makinesi aracılığıyla gerçekleştirilebilen işlemlerdir. Ağ yürütür ve sonucu döndürür. . Genel olarak, akıllı sözleşmelerin işlevselliğini büyük ölçüde artırabilir. Yapabileceği fonksiyonlar eskisinden daha bol olacak ve client tarafında uygulaması da çok basit.Sözleşmenize sadece iki fonksiyon eklemeniz yeterli ve doğrudan smart'ınızın bir parçası olarak merkezi olmayan oracle ağını kullanabilirsiniz. sözleşme. kullanmak Ayrıca geleneksel Web2 programcıları için çok kolay çünkü yürütme mantığı geleneksel programlama dilleri aracılığıyla tamamlanabilir. Genel süreç değişmedi. İstek gönderilir, ardından merkezi olmayan kehanet ağına gönderilir, yürütüldükten sonra toplanır ve son olarak kullanıcının akıllı sözleşmesine geri yazılır.
Yukarıda oracle makinesi ve oracle makinesine dayalı merkezi olmayan ağın sağlayabileceği bazı hizmetler hakkında paylaştığım şeyler.
View Original
The content is for reference only, not a solicitation or offer. No investment, tax, or legal advice provided. See Disclaimer for more risks disclosure.
Chainlink Mühendisleri: Oracles Web2 ve Web3'ü Nasıl Bağlar?
Konuşma: Frank, Geliştirici İlişkileri Mühendisi, Chainlink Labs
Organizasyon: aididiaojp.eth, Foresight News
Ben Frank, Chainlink Labs'ta Geliştirici İlişkileri Mühendisiyim. Benim asıl işim, bu endüstri hakkında tutkulu olan daha fazla geliştiricinin veya inşaatçının kehanet makineleri hakkında daha fazla bilgi edinmesini sağlamaktır. Mevcut altyapımız altında bulunan akıllı sözleşmelerden yola çıkarak hibrit bir akıllı sözleşme olarak düşünebiliriz. Akıllı sözleşmeler, bilgi işlem hizmetleri dahil olmak üzere Web2 dünyasındaki çeşitli verilerle daha iyi entegre edilebilir ve ardından bu mimariye dayalı olarak, zincirdeki akıllı sözleşmelerin yapabilecekleri büyük ölçüde genişletilir.
Bugünkü paylaşımımda öncelikle oracle makine kavramını tanıtacağım ardından oracle makine kavramından yola çıkarak merkezi olmayan oracle makine ağını ve sunabileceğimiz veri servisleri ve bilgi işlem servisleri dahil bazı servisleri kısaca tanıtacağım.
Kahin nedir?
Web 1'den Web 2'ye ve Web 3'e, ağın ve verilerin durumu sürekli değişiyor. Başlangıçta verileri yalnızca statik olarak okunabilen bir web sitesi hizmeti olan Web1, Web2 aşamasına geldiğinde veriler okunabilir, yazılabilir ve katılım sağlanabilir hale geldi. Birçok büyük şirket kendi hizmetlerine dayalı iş imparatorlukları oluşturmuştur.Tüm kullanıcı verilerini kendi veritabanlarında depolayacaklardır.Gerekirse kullanıcı verilerine fiilen sahip olabilir ve bunları değiştirebilirler. Bu durumda şöyle bir soru ortaya çıkıyor yani internette ya da sanal alemde oluşturduğumuz bazı verilerin bazen bir değeri oluyor peki bu değer kime ait? Bu arka plana dayanarak, Web 3 aşamasında bu sorunu iyi bir şekilde çözebileceğimizi umuyoruz. Web 3 aşamasındaki tüm veriler bir sunucuda veya bir düğümde bulunmaz, merkezi olmayan bir ağa sahiptir ve merkezi olmayan ağ, birden çok düğümden oluşan çok kitaplı bir sistemdir. Veriler birden çok düğümde depolanır ve yalnızca her düğüm verilerin değiştirilmesi ve saklanması konusunda hemfikir olduğunda nihai veriler kaydedilebilir. O zaman bu bize bir fayda sağlayacak, yani verilerde hangi değişikliği yapmak istiyorsak yapalım, önceden kararlaştırılan fikir birliğine göre onu değiştirmemiz gerekiyor. Örneğin, cüzdan bakiyesini değiştirmek istersem, eğer kimse bana para göndermezse, veri sahibi bunu nasıl değiştirmek isterse istesin, sonunda mutabakat sürecinde başarısız olur ve bu da cüzdan bakiyesini değiştirilemez hale getirir. Ancak veri sahibi kurallara uygun bir işlem gönderdiğinde, veriler nihayet değiştirilebilir, bu da çok açık bir fayda sağlar. Aynı zamanda bazı dezavantajları da beraberinde getirmektedir.En büyük dezavantajı ise sistemi deterministik bir sistem haline getirmesidir. Yani süreç boyunca bir mutabakat süreci olacağı için sadece başkalarının doğrulayabileceği işlemleri gerçekleştirebilir. Bir işlem gönderdiğinizde, başkalarının sizin işleminizi yürütmesi gerekir ve diğer düğümler işlemi başarıyla yürütürse, aslında sonucu döndürebilirler. %50'den fazla mı yoksa %70'ten fazla mı olduğu konsensüs algoritmasına bağlıdır. Sonunda, işlem, işleme yazılabilir ve işlem, tam bir işlem haline gelmek için bloğa yazılabilir.
Ancak blockchain dışında bazı API verileri elde etmek ve rasgele sayılar üretmek gibi deterministik olmayan bazı işlemler yapmamız gerekirse, deterministik blockchain sistemi tamamlanamaz. Piyango çekilişimizin rasgele sayılar üretmesi gerekiyor veya zincir üstü protokolün, deterministik olmayan bir işlem olan ve blok zinciri tarafından tamamlanamayan hisse senetleri veya emtia fiyatını elde etmek gibi zincir dışındaki varlık fiyatını bilmesi gerekiyor. . Başka bir örnek API çağrılarıdır.Ağdaki bir düğüm olarak harici API verilerini çağırırsam ve ardından ağdaki diğer düğümlere sonucu söylersem, diğer düğümler de sonucun gerçekliğini doğrulamak için onu yürütür. aynı işlem ve sonuç almak. Ancak harici bir API için, farklı kişiler aynı API'yi farklı zamanlarda getirirse, sunucu kapatılabilir veya hizmet askıya alınabilir veya veriler zaman içinde değişebilir. Aynı şeyi farklı zamanlarda yapıyorsunuz ve aldığınız sonuçlar tutarsız. Sonuç tutarsız olduğu sürece, son işlem bir bloğa girilemez ve onu tamamlamanın bir yolu yoktur. Bu, veri sahipliğine sahip olduktan sonra, bunun getirdiği bazı eksikliklere de katlanmamız gerekiyor.
Bu sorunu çözmek için kehanetlere güvenmemiz gerekiyor. Blok zinciri izole ve deterministik bir sistemdir, zincir dışından aktif olarak veri elde edemez, oracle makinesinin ortaya çıkışı bu sorunu çözmek içindir. İki ya da üç yıl önce kehanet makinesi kavramı ortaya çıktı, ancak o zamanlar çok fazla uygulanabilir senaryo yoktu ve büyük sınırlamaları vardı. Örneğin, bazı piyasa verilerini elde etmek istediğinizde, hisse senedi verilerini blockchain ağına yükleyin veya yürütme için zincire mantık koyacak bir yapı oluşturun, ancak varlık tarafını zincire koyun ve işlemlerin normal ilerlemesini koruyun. akıllı sözleşmeler vb., Şu anda, banka ödemesi veya perakende verileri ve hatta hava koşulları, coğrafi konum gibi diğer bazı genel olay verileri dahil olmak üzere, bazı verilerin zincirden alınması ve veri senkronizasyonunun periyodik olarak gerçekleştirilmesi gerekir. bilgileri, lojistik bilgileri, spor bilgileri vb. Oyun sonuçları vb. Bu veriler oracle makinesi olmadan elde edilemez. Bu, zincirdeki ekolojiyi çok sınırlı hale getirecektir. Web 3 ekosisteminin sürekli gelişmesiyle, Web 3 ve Web 2'nin iki dünyası arasındaki bağlantı giderek daha da yakınlaşacaktır. Web3'ün geniş çapta benimsenmesini veya daha fazla kişi tarafından kullanılmasını istiyorsak, yalnızca zincirdeki orijinal veriler aracılığıyla yapılabilecek bazı işlemlerle sınırlı kalmamalı, çok zengin işlevler sağlamalıdır.
Oracle makinesi muhtemelen 2020'de DeFiSummer olduğunda popüler oldu ve çoğu insan bunu fark etti. Başlangıçta oracle makinesi çok basit şeyler yapıyordu.Örneğin harici bir veri elde edip bunu merkezi olmayan ağa yani blockchaine yüklemek istiyorsanız en kolay yol zincir altında merkezi bir node kurmak yani Bir sunucu oluşturmak, ardından sunucu aracılığıyla veri elde etmek ve son olarak verileri tekilleştirilmiş blok zinciri ağına yazmak, ardından bu modele merkezi kehanet denir. Uygulanması görece basit olmasına rağmen bazı sorunları da beraberinde getirecektir.Örneğin tek noktadan arızalanma riski vardır yani merkezi düğüm kendi temel sebeplerinden dolayı duruş süresine neden olabilir. Diğer bir olasılık ise, zincirdeki akıllı sözleşmenin sağladığı hizmet, merkezi düğümün sağladığı verilere bağlıysa ve zincirdeki akıllı sözleşmeye dahil olan fon miktarı çok büyükse, o zaman bu merkezi kehanet makinesi geçebilir. hizmete bir saldırı başlatmak için manipüle edilebilecek kendi Verileri. Faydalar yeterince büyük olduğu ve teknik yollarla tamlığa ulaşmanın bir yolu olmadığı sürece, bu tek bir başarısızlık noktasıdır. Uygulamayı, Ethereum veya diğer Katman 2 ekosistemleri dahil olmak üzere merkezi olmayan ağa koymak istiyoruz.Aslında, uygulamamızın, yani akıllı sözleşmenin adaletini, dünyadaki yüzlerce veya binlerce oracle düğümü aracılığıyla sağlayabileceğimizi umuyoruz. ağ ve güvenlik.
Elbette, veri terminallerini elde etmek için merkezi düğümlere güvenirsek, güvenliğin diğer yönleri garanti edilebilse bile, ancak en önemli varlık veri terminali güvenliği garanti edemezse, tüm dApp'i anlamsız hale getirecektir. Yani merkezi oracle makinesinden sonra, az önce bahsettiğimiz tek hata noktası riskini iyi bir şekilde çözebilen merkezi olmayan bir oracle makine ağı var. Merkezi olmayan oracle ağındaki en büyük fark, tek bir oracle düğümünün merkezi olmayan ağa hizmet sağlaması değil, merkezi olmayan oracle ağı üzerinden hizmet vermesidir.Bir çeşit Layer2 olarak da anlaşılabilir, yani merkezi olmayan her ağdaki düğümler. oracle ağı, kendi veri kaynakları aracılığıyla veri elde edebilir ve sonuçları elde ettikten sonra, diğer merkezi olmayan ağlarla veri toplama işlemini gerçekleştirebilir; döndürülen veriler ortalama değerden çok fazla sapıyor veya basitçe bir ortalama değer elde edin, ardından verileri toplayın, vb. ve ardından bunu merkezi olmayan ağa yazın. Bu yöntemin getirdiği faydalardan biri, merkezi olmayan oracle ağındaki tüm düğümlerin hizmet vermeyi durdurmadığı sürece hizmetin kesintiye uğramayacağını teknik olarak garanti edebilmesidir, ancak bu olasılık çok düşüktür. Ayrıca veri tarafında, oracle tarafından zincir üzerindeki sözleşmeye sağlanan verilerin tek bir düğüm tarafından değil, birçok düğüm tarafından kontrol edilmesi de garanti edilebilir. Bir saldırı başlatmak için verileri manipüle etmek istiyorsanız, maliyet çok yüksek olacaktır, bu da Katman 2'ye veya hatta temelde başarılı olması pek olası olmayan Ethereum gibi merkezi olmayan bir ağa saldırmaya eşdeğerdir.
Merkezi olmayan ağ, akıllı sözleşmeler tarafından alınan verilerin güvenliğini ve adaletini büyük ölçüde artırabilir. Kullanıcılar için biz sadece merkezi olmayan bir kehanet ağıyız, ancak merkezi olmayan kehanet ağına dayalı olarak veri hizmetleri, bilgi işlem hizmetleri ve zincirler arası hizmetler gibi bazı başka hizmetler sağlayabiliriz. Ağa veri sağlamak oracle makinesini temel alıyorsa, aslında off-chain de tamamlanabilecek daha karmaşık ve maliyetli bazı işlemler var, yani hesaplama için off-chain oracle ağına paketleniyor. ve ardından güvenlik karşılaştırması yüksek blok zincirine geri yazılır. Eğer off-chain'den veri elde edebiliyorsak diğer zincirlerden de veri alıp bu blockchain'e yazabiliriz ki bu aslında cross-chain'dir. Merkezi olmayan oracle ağının güvenliği yeterince güçlü olduğu sürece, veri servislerinin, bilgi işlem servislerinin ve buna dayalı zincirler arası servislerin güvenliğini garanti edebilir. Chainlink, Katman 1 ve Katman 2 verileri dahil olmak üzere Web 3 ve Web 2 verilerini birbirine bağlayabilen merkezi olmayan oracle'lara dayalı çeşitli hizmetler sağlar, böylece herkes mümkün olduğunca çok ilgili veri ve hizmeti elde edebilir.
Chainlink oracles tarafından sağlanan hizmetler nelerdir?
Ardından, Chainlink oracles tarafından sağlanan hizmetleri kısaca tanıtmama izin verin. Elbette Chainlink tabanlı birçok servis var ve bazı servisleri daha uygulanabilir senaryolarla paylaşacağım.
Gelecekte DeFi, GameFi, NFT ve SocialFi alanlarında bazı yenilikler yapmak istiyorsanız, veri elde etmek için bir kehanete ihtiyaç duyma ihtimaliniz yüksek. Çünkü zincir verilerini çok merkezi olmayan ve güvenli bir şekilde elde etmeli ve zincirdeki akıllı sözleşmenize geri yazmalısınız.
İlk hizmet, daha önce sık sık duyduğunuz bir terim de olabilecek fiyat beslemesidir ve 2020'de DeFiSummer'da patlama yapacaktır. 2020'de Uniswap ile başlayan, ardından borç verme sözleşmesi Compound ve ardından sentetik varlık projesi Synthetics ve diğer uygulamalarla başlayan birçok DeFi projesi ortaya çıktı.Sadece güvenli veriler kullanılabildiğinden, hepsinin zincir dışı verilere yönelik büyük bir talebi var. Veriler, kullanıcılar tarafından sözleşmeler aracılığıyla merkezi olmayan bir şekilde kullanılabilir ve kehanetin fiyat besleme hizmeti önemli bir rol oynar.
Yukarıdaki şekil, 3 önemli katılımcının yer aldığı fiyat akışı hizmetinin temel akış şemasıdır. Birincisi, az önce bahsettiğimiz merkezi olmayan kahin makineleri ağı; ikincisi, hepsi veri sağlayıcı olarak hizmet edebilen borsalar veya diğer büyük yetkili kurumlar olabilecek veri sağlayıcıları; üçüncüsü ise bir kullanıcı sözleşmesidir. Yukarıdaki şekilde gösterilen işlem çok basittir.Her veri sağlayıcı, veri kaynağı arayüzü veya hizmeti aracılığıyla Chanlink oracle ağının bir düğümünü sağlayabilir ve oracle ağının her düğümü de kendi hizmetine göre veri alabilir. daha sonra toplama işlemi yoluyla, her bir kanal tarafından elde edilen veriler, zincir üzerinde dağıtılan doğrulama sözleşmesine yazılır. Doğrulamayı geçerse, veriler kaydedilebilir ve gelecekte kullanıcılar tarafından kullanılabilir.İşte tüm süreç bu. Müşterinin sözleşmeyi yalnızca birden çok veriyi elde etmek ve kullanmak için kullanması gerekir.
Az önce bahsettiğimiz Bileşik, Uniswap ve Sentetik gibi fiyat besleme için birçok kullanım durumu vardır, bunların Web2'deki varlıkları Web3'e eşlemesi gerekir ve varlık fiyatlarını sağlamak için harici mekanizmalara ihtiyaçları vardır. Tıpkı bir stablecoin gibi, kaç varlığın aynı sayıda stablecoin çıkarabileceğine bağlıdır ve varlık fiyatı da oracle makinesine göre elde edilmelidir. Ek olarak, bazı varlık yönetimi platformları ve popüler türev alım satım uygulamaları gibi, fiyatlara büyük ölçüde bağımlıdırlar, dolayısıyla bunlar aslında fiyat besleme hizmetlerinin önemli kullanıcılarıdır. Trend açısından bakıldığında, fiyat besleme hizmetlerine olan talep katlanarak artıyor. Daha az aktif pazarlarda bile veri kullanımı artıyor.
Ardından, ikinci daha ayırt edici hizmeti, Any API'yi tanıtacağım.Basitçe söylemek gerekirse, bazı uzun kuyruklu veriler gibi bazı standart dışı verileri elde etmek için zincirdeki akıllı sözleşmelere yardımcı olur. Bu veriler yalnızca belirli kişilere veya belirli sözleşmelere açık olabilir, ancak token fiyatları veya varlık fiyatları gibi standart veriler değildir. Birçok DApp, standart olmayan veriler gerektirir.Örneğin, Web 3 sigorta iş uygulamalarının hava durumu verilerini veya uçuş gecikme verilerini alması gerekir. Örneğin, seçim spor oyunları dahil olmak üzere ESG'ye benzer bazı projeler sera gazı yapabilir, tahmin pazarları ile birleştirilebilir. Any API tabanlı veri marketleri sağlamaktayız.Her data markette kendi verilerine göre harici servis sağlayan çeşitli veri sağlayıcılar bulunmaktadır.Kullanıcı istek gönderdiği sürece,verileri kullanıcı sözleşmesine göre geri yazabilir. hizmet gereksinimleri. . Hem veri sağlayıcısı hem de veri alıcısı piyasa tarafından belirlenir. Kullanıcılar ve veri sağlayıcılar için bir pazar vardır ve Chainlink resmi olarak tüm verileri tekelleştirmez ve ardından zincire veri sağlar.
Any API ve fiyat beslemesinin iş akışı aslında oldukça tutarlıdır.Sözleşme önce bir istek gönderir ve ardından istek Chanlink düğümleri tarafından keşfedilir. Keşiften sonra Chanlink, talebe göre gerekli verileri seçebilir ve ardından blok zincirine geri yazabilir. AnyAPI, kullanıcılara çeşitli veriler sağlayabilir, ancak nispeten hızlı bir şekilde oluşturulmasına rağmen tek bir düğüm tarafından sağlanması gibi bir özelliği vardır. AnyAPI'nin yapmak istediği, daha önce bahsettiğimiz merkezi olmayan ağ oracle makinesi üzerinden veri elde etmek yerine, basit bir şekilde mümkün olan en hızlı şekilde veri elde etmektir.
Daha sonra, veri gereksinimlerinin çeşitliliği arttıkça, birçok standart dışı veri de merkezi olmayan bir şekilde zincire geri yazılmayı umdu. Ayrıca bu yılın Nisan ayı başlarında Functions adında yeni bir hizmet oluşturduk.Basitçe söylemek gerekirse, herhangi bir kullanıcı isteğini merkezi olmayan bir kehanet ağı aracılığıyla yürütür. Kullanıcılar, operasyon programını yazmak için Java gibi bazı gelişmiş programlama dillerini kullanabilirler, artık yalnızca Solidity dilinde yazılamazlar, Java ile yazılan program kesinlikle Solidity'den daha fazladır. İşlevler hizmeti, yazılı programı bir istek halinde kapsülleyebilir ve bunu tüm oracle ağına gönderebilir. Ağdaki her düğüm, bilgi işlem hizmetleri, veri toplama hizmetleri veya diğer hizmetler olabilecek aynı işlemi gerçekleştirecektir. Her düğüm işlemi gerçekleştirip sonucu aldıktan sonra, az önce bahsettiğimiz toplama sürecinden geçer ve ardından bunu akıllı sözleşmeye geri yazar.
Yem fiyatı ile karşılaştırıldığında serbestlik derecesi çok yüksektir. Yani akıllı sözleşmeye istediği yöntemi kullanması için harici bir arayüz verilebilir. Ayrıca, yapması gereken mantığın bir kısmını sözleşmeye yazabilir ve ardından blok zinciri tarafından değil, kehanet makinesi hizmetini doğrudan akıllı sözleşmeye gömmeye eşdeğer olan kehanet makinesi tarafından yürütülür ve hibrit hale gelir. Akıllı sözleşme türü. Bu şekilde yaparsanız, yürütmeniz merkezi olmayan ağ aracılığıyla garanti edilir ve deterministik olmayan işlemleriniz, blok zincirinde yapılamayan ve merkezi olmayan oracle makinesi aracılığıyla gerçekleştirilebilen işlemlerdir. Ağ yürütür ve sonucu döndürür. . Genel olarak, akıllı sözleşmelerin işlevselliğini büyük ölçüde artırabilir. Yapabileceği fonksiyonlar eskisinden daha bol olacak ve client tarafında uygulaması da çok basit.Sözleşmenize sadece iki fonksiyon eklemeniz yeterli ve doğrudan smart'ınızın bir parçası olarak merkezi olmayan oracle ağını kullanabilirsiniz. sözleşme. kullanmak Ayrıca geleneksel Web2 programcıları için çok kolay çünkü yürütme mantığı geleneksel programlama dilleri aracılığıyla tamamlanabilir. Genel süreç değişmedi. İstek gönderilir, ardından merkezi olmayan kehanet ağına gönderilir, yürütüldükten sonra toplanır ve son olarak kullanıcının akıllı sözleşmesine geri yazılır.
Yukarıda oracle makinesi ve oracle makinesine dayalı merkezi olmayan ağın sağlayabileceği bazı hizmetler hakkında paylaştığım şeyler.