如何把以太坊改造成自動支付系統?讀懂 VISA 要用「帳戶抽象」做些什麼

u today Why Is Visa Eyeing Ethereum ETH

沒錯,答案就是——自動扣款。事實上,如果愛麗絲有一個銀行帳戶,自動扣款是個非常簡單的過程,只需將其扣款帳戶與 Visa 卡做個關聯綁定即可。不過在上,執行這樣一個操作並不那麼簡單,然而作為一種新技術,值得我們探索上述場景的解決方案。

在進入正題之前,讓我們先了解一下帳戶的概念,目前網絡上有兩種類型的帳戶:

1、外部擁有帳戶(Externally Owned Accounts),通常被稱為「用戶帳戶」

2、合約帳戶(Contract Accounts),通常被稱為「

控制的用戶帳戶可以發送交易,而智能合約需要關聯代碼才能執行,但智能合約無法「自己發起交易」,因為交易必須始終源自用戶帳戶並由用戶簽名,這些交易包括:以太坊區塊鏈上用戶帳戶之間的簡單代幣轉移,或是觸發一系列通過智能合約執行許多不同操作、更複雜的交易。

那麼,如何在以太坊區塊鏈上實現自動支付呢?

讓我們回顧一下愛麗絲的狀況。

假設愛麗絲在以太坊區塊鏈上擁有一個用戶帳戶,並且把自己的薪水存放在帳戶裡並用來支付房貸、有線電視費和水電費。今天,為了支付她的帳單,必須發起一項交易,將代幣從她的「外部擁有帳戶」轉移到收款人的用戶帳戶。

詳細點說,愛麗絲的「外部擁有帳戶」有一個只有她本人才知道的密鑰/,也只有她可以使用這個私鑰生成橢圓曲線數位簽名算法(ECDSA)簽名,這個前面對於創建有效交易至關重要。然而如果愛麗絲外出度假,誰來生成這個簽名並創建費用支付交易呢?

目前有一種解決方案,就是讓愛麗絲使用託管,即讓第三方控制愛麗絲的私鑰。換句話說,愛麗絲信任第三方來保護她的資金並在她想交易或將資金發送到指定帳戶,這麼做的好處是愛麗絲可以通過資金託管方來生成為預定自動付款創建需的簽名,但壞處是她必須完全信任這個第三方。

那麼,如果愛麗絲因為擔心不想使用託管,而是使用自我保管的錢包並安排自動付款,該怎麼做呢?接下來,讓我們引入另一個概念——帳戶抽象(Account Abstraction)。

什麼是帳戶抽象?

帳戶抽像是一項嘗試通過使用戶帳戶像智能合約一樣運行、並且將用戶帳戶和智能合約合併為一個全新以太坊帳戶類型的提案。未來,帳戶抽象將能使我們為自動支付設計一個簡潔的解決方案,而且在鏈上驗證交易過程中具有更大的靈活性,比如:

1、可通過多重簽名驗證啟用多所有者帳戶。

2、允許使用後量子簽名來驗證交易。

3、允許一個所謂的公共帳戶,任何人都可以通過完全取消簽名驗證來進行交易。

本質上,帳戶抽象允許可編程的有效性來驗證和確認任何區塊鏈交易,基於以太坊協議的交易不必完全基於有效性條件的硬編碼,而是可以基於「定制化」方式將一些條件寫入帳戶智能合約中。

更重要的是,由於可以設置不再包括簽名驗證的有效性規則,帳戶抽象支持自動支付,下面就讓我們來看看如何實現吧。

可委託帳戶——用帳戶抽象來實現以太坊鏈上自動支付功能

Visa 的以太坊自動支付解決方案是利用帳戶抽象概念並創建一種新型帳戶合約——可委託帳戶,其主要想法是擴展交易的可編程有效性規則以包括預先批准的允許列表。簡單來說,帳戶抽象可以將用戶帳戶發起的自動支付操作委託給預先批准的自動支付智能合約。

首先,商戶需要部署自動支付智能合約。當擁有可委託帳戶的用戶訪問商家網站時,他們將看到批准自動支付的請求——類似於 Visa 接受的帳單。此時,用戶可以看到自動支付合約將以用戶的名義執行操作,其中能夠按照用戶需要設定參數,比如每月只能向用戶收費一次、收費不能超過設定的最大金額等。最重要的是,由於這是一個智能合約,用戶可以確信自動支付合約不會以其他方式被執行。

如果用戶同意批准自動支付,錢包會將自動支付合約的地址添加到用戶可委託帳戶的允許合約列表中。

如何把以太坊改造成自動支付系統? 讀懂Visa要用“賬戶抽象”做什麼

除了經常性支付之外,該解決方案還可以滿足現實世界裡的其他不同應用,Visa 委託帳戶解決方案未來甚至可以擴展到第三方帳戶恢復等服務。

在 StarkNet 上實施帳戶抽象

如何把以太坊改造成自動支付系統? 讀懂Visa要用“賬戶抽象”做什麼

由於以太坊尚不支持帳戶抽象,Visa 已經在 StarkNet 上實施可委託帳戶解決方案,StarkNet 是 Layer2 區塊鏈,建立在以太坊區塊鏈之上,以提高交易吞吐量以及其他功能以改善底層區塊鏈結算層能力,由加密初創公司 StarkWare 開發。StarkNet 的帳戶模型就是 Visa 目前所說的帳戶抽象,抽象帳戶則會檢查交易是否來自給定地址。

對於具體帳戶(Concrete Accounts),如果有人向用戶帳戶發送代幣,會與代幣合約交互,代幣合約會檢查用於簽署交易以進行此傳輸的身份(密鑰)是否記錄為代幣的當前所有者。對於抽象帳戶(Abstract Accounts),如果有人向您的帳戶發送代幣,也會與代幣合約交互,代幣合約會檢查用於進行此轉移的身份(合約)是否被記錄為代幣的當前所有者。對於抽象帳戶,重要的是誰(地址)在執行交易,而不是如何(簽名)執行交易。

借助 StarkNet 帳戶模型,Visa 能夠實施可委託帳戶解決方案,從而為自託管錢包啟用自動支付功能。

結論

作為世界上最大的支付網絡之一,Visa 正在積極探索智能合約創新解決方案,以推動實現可編程貨幣和支付。

自動支付是現有區塊鏈基礎設施所缺乏的核心功能之一,但利用帳戶抽象的概念可以為自託管錢包提供自動定期支付功能,甚至可以將自動支付之外的其他現實世界應用引入區塊鏈,繼而為傳統支付渠道和新興支付渠道創造更好的用戶體驗。


(以上內容獲合作夥伴 PANews 授權節錄及轉載,原文連結

聲明:文章僅代表作者個人觀點意見,不代表觀點和立場,所有內容及觀點僅供參考,不構成投資建議。投資者應自行決策與交易,對投資者交易形成的直接間接損失作者及將不承擔任何責任。

本文轉自網路,如有侵權請來信告知,本網站不代表任何投資建議,僅提供資訊,若用戶有任何投資相關行為皆與本站無關

本網站所載的任何資訊均不構成投資建議,投資有賺有賠,投資人應獨立判斷,審慎投資,自負

Related Posts