比特幣交易所 比特幣交易所
Ctrl+D 比特幣交易所
ads

智能合約中的OAuth和API認證_INK

Author:

Time:1900/1/1 0:00:00

OAuth是主流的API認證和授權方式,用戶無須暴露其身份信息即可訪問各種網站和應用。乍一看,我們似乎很難從OAuth這樣的鏈下Web2服務中獲取數據并上傳至鏈上智能合約。然而,有了Chainlink外部適配器?,就可以在鏈下展開復雜的運算,這與基于OAuth的API認證無任何差異。接入外部適配器后,就可以使用OAuth訪問更多安全的鏈下數據源,并輕松實現與鏈上智能合約的交互。我們可以從Solidity或其他智能合約中調用這些安全的API,訪問各種服務并同時保障安全。本文將為大家分步驟展示Reddit外部適配器。OAuth是什么?

你上網的時候通常需要證明自己的身份。最簡單的證明方式是使用用戶名和密碼,這也被稱為密碼認證或基礎認證。然而,還有一種方式也可以證明我們的真實身份,那就是讓別人來為我們做擔保。這就是OAuth的工作原理,它是一種第三方通證認證,即其中一方為另一方做認證。OAuth的運行機制是,雙方委托第三方通過數字通證的方式證明其中一方的身份。以下這個例子可以簡明扼要地概括其精髓:Bob希望從Alice手中獲取數據,但不希望把密碼交給Alice或暴露自己的身份信息。Bob和Alice有個共同的朋友,Margaret。Margaret跟Bob說她可以給他發一個臨時通證,Bob可以用這個通證向Alice獲取數據,Alice不需要知道Bob叫什么名字,也不需要獲得任何Bob的個人信息。Alice只知道請求數據的人是可以相信的。Margaret借給Bob一個通證從Alice那獲取數據,這有點類似你把酒店房卡借給別人。一旦在系統中添加了OAuth,就多出了一個步驟,即訪問所需的數據,因為你得先等待可信第三方響應才能繼續下去。基礎認證只需輸入密碼就可以,而OAuth認證則需等待從第三方獲得通證。我們都知道,以太坊等區塊鏈的流程是同步執行的,也就是說這類區塊鏈只能同時做一件事,因此等待通證獲得API響應的過程就會顯得有點笨重。另外,Solidity需要等待通證傳回才能調用新的API,這也會造成gas浪費。有一個好辦法可以解決這個問題,那就是使用Chainlink外部適配器統一訪問鏈下數據源,這不僅可以加速智能合約的OAuth認證,還可以降低gas成本。在Nodejs中使用OAuth

智能合約中USDC供應量百分比已上升至42.08%:金色財經報道,Glassnode 3 月 27 日發布的最新報告強調,智能合約中 USDC 供應量的百分比有望飆升。數據表明該百分比已上升至 42.08%,創六個月高點。USDT 在智能合約中的供應量占比為 14.0%,今年最高占比僅為 14.7%。這表明 USDC 被更廣泛地用于與智能合約相關的交易。[2023/3/28 13:30:37]

外部適配器可以實現在Solidity智能合約中完成OAuth認證,我們在開發外部適配器時,首先要決定是自己親自開發OAuthhandler還是試用別人開發的handler。OAuthhandler是指一段代碼,讓我們可以輕松處理登入和登出。絕大多數情況下,如果已經有現成的解決方案,我們就不必重復勞動了。一些平臺已經采用了OAuth認證,你一般可以找到現成的OAuthhandler。比如,我們找到了這個非常好用的Reddithandler,我們可以運行代碼查看其功能。這里有兩個主要的函數:async_getToken()以及_makeRequest(method,url,data,token)_getToken()函數的作用是獲取通證,_makeRequest函數的作用是向RedditURL發送最終認證請求以及通證。在這個實現中,這兩個函數可以被_sendRequest一起調用。我們可以看到_getToken()函數實際上是通過基礎認證方式與第三方交互的。

Filecoin將于3月推出智能合約:2月17日消息,根據Filecoin生態增長負責人“HQHan.eth”的推文,去中心化存儲項目Filecoin將于3月推出智能合約,使其成為一個成熟的L1。據悉,FVM可為Filecoin帶來智能合約功能。Filecoin官方也轉發并確認了這一時間。

Filecoin此前表示將于2023年3月上線FVM。FVM將智能合約與可證明存儲相結合,可被用于部署可編程存儲原語言、跨鏈互操作性橋、以數據為中心的去中心化自治組織(DAO)以及Layer2解決方案等。[2023/2/17 12:12:55]

_makeRequest()函數使用的是通證而不是密碼。

Arbitrum:將對核心智能合約進行升級以修復WETH網關出現的“exitNum”未正確遞增問題:金色財經報道,Arbitrum Developers發推稱,WETH網關出現“exitNum”未正確遞增問題,Arbitrum將對核心智能合約進行升級更新,包括在L2WethGateway中增加exitNum并在L1WethGateway中禁用“tradable exit”功能,還添加相關測試用例。

Arbitrum表示,帶有重復“exitNum”的全部提現交易被執行完成后,將會重新激活L1WethGateway中的“tradable exit”功能。[2023/2/12 12:02:02]

現成的可以拿來用,這點無可厚非,但同時我們也要理解它的運行機制,這樣當有需要的時候也能自己動手開發。現在OAuth的代碼已經都完成了,接下來就可以把外部適配器模板中的內容替換掉了!你可以隨意選擇自己喜歡的適配器,但是我們在這里用的是Chainlink外部適配器模板。如果你之前看過關于開發外部適配器的文章,那么接下來的內容應該對你來說非常簡單!我們可以把這些代碼全部復制粘貼到我們的外部適配器中,不過更好的方法是直接導入,這樣我們就可以把全部精力放在Solidity和智能合約代碼上,而不是認證環節。Reddit外部適配器

Cardano網絡的Plutus智能合約數量突破1000個:1月28日消息,2021年9月,Cardano(ADA)網絡進行重大升級,包含智能合約功能,提高了ADA的可擴展性和速度。

從那以后,Plutus(基于Cardano的智能合約平臺)出現顯著增長,僅在四個月內就達到1000份合約的里程碑。截至1月27日,Cardano網絡上的Plutus腳本(智能合約)總數為1003個。(Finbold)[2022/1/28 9:20:14]

現在OAuthhandler設置好了,我們可以把它添加到我們的Chainlink外部適配器中,方法跟其他Chainlink適配器完全一樣。我們可以將適配器添加到列表中,然后使用OAuth認證開展任何所需的計算任務。如果仔細研究Reddit外部適配器的代碼,可以看到開發框架跟index.js中的完全一樣。與上一篇關于外部適配器的文章一樣,我們也只需更新index.js中的代碼。最大的不同點是我們在這里安裝了一個新的包,即Reddit包,代碼如下:constReddit=require('reddit')我們所有的身份認證信息都可以這樣添加:

網友爆料:BCH可以做出強制鎖倉的智能合約功能:微博網友“BCH愛好者BruceLee”剛剛發文表示:剛看到BCH可以做出強制鎖倉的智能合約功能,原理是這樣的。把你的BCH發送到一個特定的智能合約地址中,只有當BCH的USD報價到達預設數值的時候,你才可以把幣從合約里面取出來。之前已經有開發者寫出了合約的范本,不過那時候還沒有可用的Oracle提供BCH報價。但是現在隨著anyhedge的逐漸普及,anyhedge團隊提供的Oracle服務可能會被廣泛采用,以后可能會有錢包集成這個小功能,畢竟確實有人需要。這種依靠智能合約強制鎖倉的辦法是最安全的,只需要你保存好私鑰,幣就不會丟,還能防止自己手賤在中途賣出。[2021/1/14 16:10:50]

一旦你在Reddit網站創建了一個APP,就會獲得REDDIT_API_KEY和REDDIT_API_SECRET,并用于適配器中。我們可以利用外部適配器的許多參數來定制化智能合約發送到Reddit的內容。

這些定制化參數都可以在RedditAPI文檔中找到。我們對模板還做了一個比較大的修改,那就是我們沒有用Requester對象發送請求,而是使用了Reddit對象,代碼如下:

代碼寫完以后可以來測試一下!設置四個環境變量,然后運行以下代碼:

打開另外一個終端,用以下命令進行測試:

你在輸出中就可以看到在Reddit上發布的內容了!如果有時間,你還可以查看TwitterChainlink外部適配器,并根據智能合約的交互情況發布Twitter狀態。以上就是使用OAuth和Reddit外部適配器與智能合約交互的第一步。你需要使用一個安裝了外部適配器的節點,并在節點中設置身份認證信息。歡迎大家查看Chainlink文檔?,了解如何進行下一步操作。如果你使用OAuth在智能合約中開發出了有趣的應用,請上傳至market.link?,幫助其他人也實現智能合約與鏈下世界交互。除此之外,你還可以展示你個人的智能合約開發實力。如果你是一名開發者,并希望快速將智能合約連接至鏈下數據和系統,請查看?我們的開發者文檔并加入我們在?Discord上的技術討論群。如果你希望透過電話具體討論集成細節,請點擊此處聯系我們。

Tags:AUTHDITREDINKAUTH幣SMARTCREDIT價格REDLC幣tronlink怎么用

比特幣交易所
SEC起訴Ripple,是扼殺創新還是控制風險?_ripple

編者按:本文來自鏈新,作者:馮銘一把達摩克利斯之劍正懸掛于XRP持有者的頭上。2020年12月22日,美國證券交易委員會正式發布了針對Ripple公司及其創始人BradleyGarlinghou.

1900/1/1 0:00:00
區塊鏈技術在醫療保健領域的應用展望_ALT

編者按:本文來自鏈新,作者:AshwinNaphade,編譯:陳一鳴近年來,全球醫療保健行業的價值呈指數級增長,2018年達到逾8.45萬億美元.

1900/1/1 0:00:00
加密貨幣是什么,有何投資風險?_加密貨幣

在這篇文章中,我們將介紹加密貨幣和區塊鏈的基礎知識:加密貨幣的運行原理。我們將分析加密貨幣如何在2009年第一次問世,十幾年間該領域的最大發展,以及加密貨幣投資的主要風險.

1900/1/1 0:00:00
貝萊德、高盛正在加快腳步,比特幣處于糾結階段_比特幣

根據周三公布的監管文件,世界上最大的資產管理公司—貝萊德在1月31日的報告日持有價值6147842.02美元的CME比特幣期貨合約,所持份額占貝萊德龐大的全球分配基金的0.03%.

1900/1/1 0:00:00
區塊鏈落地應用瞄向海洋生態可持續場景,來看Trace Protocol如何改變人們生活?_區塊鏈

如果你不是很喜歡金融,那么或許你會對目前的區塊鏈落地、尤其是公鏈應用落地感到失望。很少有實體企業或者公司,真正的在用基于公有鏈的產品.

1900/1/1 0:00:00
Tether試圖更透明,但會越描越黑嗎?_ETHER

Odaily星球日報譯者|Moni Tether聲稱其代幣有超過350億美元的儲備金作為后盾,但真是如此嗎?內容概述1、昨天,Tether發布了儲備金審計的證明.

1900/1/1 0:00:00
ads