仔細瞭解 StakeNow 的新登錄功能,該功能使用戶能夠利用他們的 Tezos 帳戶登錄服務和去中心化應用程序 (dApps)。

我們可能都熟悉傳統的登錄方式,例如 Google、Facebook 等。我們點擊登錄,可能會收到一條消息,詢問有關收集的數據的問題。然後,我們就登錄了。

我們也應該對區塊鏈服務和 dApp 有同樣的體驗。SIWT 使用 Sign-in-With-Ethereum 等解決方案廣泛採用的標準,使構建者能夠將相同的功能整合到他們的 dApp 和服務中。一鍵登錄是一個非常方便的功能。

讓我們探索 SIWT 以及如何開始使用它。

什麼是 SIWT?

SIWT 是一個簡化開發人員和用戶訪問控制的庫,支持基於 Tezos 的 dApp 和服務的開發。SIWT 允許用戶通過簽署消息來證明他們擁有與其 Tezos 地址相對應的私鑰來進行身份驗證,dApp 會驗證該消息以授予訪問權限。

SIWT 還可以根據鏈上數據(例如 tez 持股或特定交易歷史記錄)添加權限。這允許 dApp 根據鏈上 Tezos 數據控制對 API 或後端服務的訪問。這可以擴展到其他內容,例如 NFT 持股、即將鑄造的允許列表等。

一些網站已經使用 Discourse 插件實現了 SIWT。如果您訪問 Tezos Agora 論壇,您可以使用您的 Tezos 錢包登錄。

單擊“使用 Tezos 登錄”選項後,系統將提示您進入一個屏幕,其中有四個框懸停在繼續該過程的選項上。不要擔心這些框;這是一個 CSS 故障,將在未來幾天內更新。再次單擊“使用 Tezos 登錄”將爲您提供信標身份驗證,選擇您使用的 Tezos 錢包。

完成後,您將被重定向到您選擇的錢包。就我而言,我使用了 Kukai。系統將提示您簽署一些消息,當您創建新帳戶時,您將被引導輸入您的電子郵件和其他詳細信息,例如用戶名或可選全名。完成這些項目並單擊“註冊”後,您現在可以在 Tezos Agora 上使用 Tezos 登錄!

Teia 論壇上也提供使用 Tezos 登錄的功能。您可以按照上述步驟創建帳戶並使用 Tezos 錢包登錄。假設您已經在 Tezos Agora 上有一個帳戶。在這種情況下,您可以按照上述相同的流程操作,但要前往個人資料摘要頁面下的偏好設置。此選項將在關聯帳戶下顯示爲“SIWT”。

區塊鏈不可知標準化和合規性

對於我們上面展示的內容,作爲用戶,我們可能會覺得這裏沒有太多事情發生。登錄並輸入一些詳細信息以訪問論壇,就這樣了,對吧?這與事實相去甚遠。

StakeNow 團隊和 Kukai 的 Klas Harrysson 共同提出了新的 TZIP(Tezos 改進提案)TZIP-33。TZIP 在 Tezos 生態系統的幾乎所有組成部分中都發揮着重要作用,並且不會影響網絡本身。這些內容將屬於協議升級。TZIP 會影響 Tezos 生態系統的互補部分,尤其是新功能、規範或標準。

新的 TZIP 目前處於草案狀態,描述了 SIWT 的動機和工作流程。這裏要展示的主要內容之一是 SIWT 如何改編自使用以太坊登錄 (EIP-4361) 完成的大部分基礎工作。特別是,CAIP-122 等與鏈無關的標準是 SIWT 的重要組成部分。

StakeNow 的 Roy Scheeren 在聊天中與我分享了一些關於此事的內容。

這基本上描述了登錄消息應該是什麼樣子。他們試圖在所有區塊鏈中設定一套特定的標準,以實現一致性。對於消息簽名,大約 95-98% 的以太坊登錄研究成果已被採納爲標準。因此,我們採用了 Tezos 特有的東西,並提出了一個針對 Tezos 的改進建議,該建議遵守所有與鏈無關的標準。

我們所做的主要是對如何使用 OIDC 通過 Tezos 登錄進行概念驗證。OIDC 是安全身份驗證和授權的標準化流程。如果您使用過 Google、GitHub 或 Microsoft 帳戶,它們都提供自己的登錄選項。許多此類提供商都會提供 OIDC 流程,因此如果您有提供商,則可以使用與之完全相同的流程、結構和安全性。

StakeNow 團隊已選擇 Ory Hydra 作爲其 OIDC 提供商。該提供商用於提供概念證明,您可以在其主站點上實時查看。進入站點後,單擊“使用 ODIC 登錄”並開始使用 PoC。只需從彈出的信標身份驗證窗口中選擇您使用的 Tezos 錢包即可。在屏幕上和 Tezos 錢包內連接您的 Tezos 錢包後,系統將提示您簽署一條消息。之後,您現在可以“完成登錄”並完成 OIDC PoC!

如果您想爲您的 dApp/服務實現安全消息簽名,您可以立即集成 SIWT。但是,如上所述,如果您想要標準化身份驗證流程,您還需要 OIDC 提供商。即使沒有它,您仍然可以使用它。無需 OIDC 即可實現遵循 CAIP 標準的簽名。集成 SIWT 的功能已經存在一段時間了,用於客戶端服務器端身份驗證,這些標準和框架比我之前寫的介紹 StakeNow 的“使用 Tezos (SIWT) 登錄”更進了一步。

關於實施 CAIP-122 等鏈中立標準,我們可以看到生態系統中的其他構建者如何構建自己的解決方案,並且可以從圍繞消息簽名的此類標準中受益。例如,如果您在 OBJKT 上籤署一條消息,您可能會注意到您必須在 fx(hash) 上籤署的消息看起來不同。生態系統可以從在 dApp 和 NFT 市場中遵循這些鏈中立標準中受益。

最後的想法

在之前工作的基礎上,StakeNow 已通過 CAIP-122 和新 TZIP TZIP-33 的編寫實現了 SIWT 的標準化。您今天就可以爲您的 dApp/服務實現安全消息簽名。請確保在 Tezos Agora 或 Teia 論壇上啓用 SIWT,或者前往他們的文檔並立即開始集成 SIWT!

《仔細看看使用 Tezos (SIWT) 登錄》最初發表在 Medium 上的 Tezos Commons 中,人們通過強調和迴應這個故事繼續討論。