原文鏈接:http://devops.com/how-do-we-bring-apis-into-decentralized-web3/

作者:BILL DOERRFELD

翻譯:DRD

翻譯機構:WhaleDAO

字數:1174 詞

基於區塊鏈的應用程序越來越受歡迎,並推動了去中心化的 Web3 運動。同時,Web API 正在幫助跨應用類型的移植數據和重複利用功能,並推動微服務的開發實踐。那麼,我們如何將這兩種模式結合在一起呢 ?

在很多情況下,基於區塊鏈的智能合約可能需要只有 Web API 請求才能實現的數據更新。例如,智能合約可能需要訪問給定的股票行情的最新價格。或者,鏈上活動可能取決於特定時間的天氣情況。無處不在的 API 意味着有成千上萬的功能可以用於手頭的任務。然而,將它們集成到 Web3 應用程序中是很棘手的。

有趣的是,API3 聯盟正在大力引入一種行業標準解決方案,將 API 引入到 Web3 應用程序中。API3 提供了一個廠商中立的標準網關,可以應用於現有 API 之上,幫助它們契合去中心化的應用程序。供應商中立的 API 聯盟已經包含了許多跨不同領域的 API,而且正在獲得越來越多的注意。

我最近會見了 API3 的聯合創始人 Heikki Vänttinen,以瞭解更多關於將傳統 Web API 引入區塊鏈開發的挑戰。Vänttinen 表示,以前的解決方案依賴於第三方中間件或“oracley 預言機”,而將 API 請求和響應系統整合到智能合約中的最佳方式是通過 API 提供商自己把控的節點。這種系統可以幫助基於區塊鏈的應用程序利用無數的軟件即服務解決方案,從本質上把兩個世界結合起來。

Web3 中 API 的狀態

API 的數量呈指數級增長。隨着公司通過數字轉型重塑自我,API 已經成爲連接我們日常使用的應用程序的粘合劑。說到 API,區塊鏈的潛在使用案例越來越多——這項技術不僅僅是加密貨幣 ; 相反,它可以爲許多需要智能賬本的場景提供支持。

由於 API 驅動了現代軟件開發中的大部分功能,所以它們在去中心化應用程序開發中是有意義的。例如,Vänttinen 表示,一個處理借貸的基於區塊鏈的去中心化金融 (DeFi) 應用程序可能希望調用 API 來收集清算價格的原始數據。或者,智能合約可能希望獲得資產的成本,作爲進行交易的條件。連接到公共 API 以檢查當地天氣或航班到達信息可能會影響智能合約的響應方式。

有許多將 API 合併到分佈式賬本系統的用例。然而,Vänttinen 解釋說 :“區塊鏈應用程序不能在本地調用 API。”Vänttinen 表示,這種不兼容性是區塊鏈技術的性質,因爲它需要多方達成共識來維護智能合約。因此,區塊鏈應用程序需要一箇中間件來將區塊鏈節點連接到 API,以中繼來自鏈外的數據響應。

將 API 整合到區塊鏈中

**
**

如 Vänttinen 所述,以前將 API 連接到 Web3 體系結構的嘗試都是圍繞着第三方中間件節點進行的。然而,以這種方式通過外部集成會產生中心化的故障點,這與打造以去中心化的環境爲目的的初衷完全不符。

相反,Vänttinen 提倡一種“第一方 oracle 預言機的方法”,即 API 提供者在其 API 的前置設置一個操作層。這爲智能合約提供了“請求-響應”機制,允許區塊鏈應用程序從鏈上發起 API 請求,並將響應合併到合約中。這種方法保留了分佈式記賬固有的不可變性和無須授權特性。

支持這種架構的一個解決方案是 Airnode,它是一個 Web3 中間件,可以將任何 web API 直接連接到任何區塊鏈應用程序。已經採用 Airnode 的公司組成了 API3 聯盟,該聯盟是“一個由 API 提供商組成的集體,他們已經簽署了相關協議,允許第一方使用他們的 API 用於 Web3 應用程序,”Vänttinen 說。採用 Airnode 模式是 API 公司實現 API 區塊鏈兼容的承諾。”

組建 API3 聯盟是一個旨在擴展智能合約和區塊鏈應用功能的重要舉措。這使得現有的環境能夠調用 API 來發送文本消息或電子郵件,或者獲取體育成績、收集地圖數據等等。迄今爲止,API3 聯盟的參與者來自農業、生物技術、通信、開放銀行、保險、供應鏈管理等部門。該計劃還在不斷接受希望加入市場的 API 提供商。

公共 Web3 集成層的優勢

那麼,採用行業標準中間件實現 Web- API 到區塊鏈連接有什麼好處呢 ? 嗯,根據 Vänttinen 的描述,這是實現複雜的鏈下計算的最佳方式。在鏈上執行復雜的計算是相當消耗資源的,導致了高交易費用。通過在外部來進行復雜的計算,區塊鏈應用程序可以減少操作開銷。Vänttinen 表示 :“該行業早就應該將現實世界與區塊鏈聯繫起來。”(我認爲他指的現實世界是區塊鏈出現之前的其他基礎設施。)

擁有一個行業標準還可以減少 API 提供者支持微技術的開發負擔。Vänttinen 表示,其他解決方案需要內部人員來操作區塊鏈節點,而 Airnode 更像是一個即插即用的 API 網關,可以作爲 Lambda 功能部署在 AWS 上。這使得基於 API 的服務很容易適配 Web3 應用程序,從而迅速打開了一個新的潛在增長領域。

當然,Vänttinen 承認,與鏈下流程同步的概念仍處於非常早期的階段。關於如何在市場上解決這一問題,存在着相互競爭的理念,一些基礎性問題尚未得到解決。例如,大多數工作都集中在獲取原始數據的 Read 操作上。下一步將是讓中間件“oracle 預言機”具備鏈下 \”write\” 功能。此外,支持更多類似於 PUBSUB 的格式對於件監聽器響應效率也很重要。

最終的想法

Web3 趨勢將帶來更多去中心化、基於區塊鏈的應用程序。但是,這樣的應用程序不能在一個封閉的世界中運行。爲了完整的體驗數字化,他們可能需要弄清楚如何將鏈下計算和替代那些通信軟件相結合起來。當然,這需要與 Web API 進行集成,而 Web API 已經成爲雲通信的重要方法。

Vänttinen 說,API3 聯盟“在這裏爲 Web3 的 API 連接問題提出解決方案”。“當數據提供商區塊鏈化時,你甚至可以將其信譽信息整合到這種去中心化的數據 Feed 中……當你談到將鏈下服務和微服務與智能合約連接起來時,這一點的重要性就變得更加明顯。”

Airnode 及圍繞它的 API3 聯盟是一個率先將 API 和智能合約連接起來的項目。但是,這只是在此成熟領域中的一種探索方法。你如何看待這種鏈接模式 ? 一起討論你的經歷 !