入門讀物|一文詳解BTC生態擴容方案

avatar
律動
12-27

銘文何去何從

前言

2023 年 12 月 6 日,在比特幣投資者們都在為銘文(Inscriptions)給比特幣帶來的漲幅而歡呼的時候,Bitcoin Core 節點客戶端的開發者 Luke Dashjr 澆來了一盆冷水。他認為銘文是一種「垃圾郵件」攻擊,並提交了修復代碼及 CVE 漏洞報告(CVE-2023-50428)。隨後比特幣社區炸開了鍋,繼 2017 年硬分叉的混亂之後,比特幣社區再次陷入激烈的辯論中。

那麼比特幣應該更注重安全性而捨棄掉一些意料之外的 feature 呢,還是應該更加包容意料之外的創新而稍微容忍一點可能的安全性問題呢?

我們知道,比特幣的旅程不僅僅是投機和炒作,更是其生態系統和安全格局不斷演化的歷程。本文旨在深入探討比特幣增長的雙重敘事:其生態系統內不斷擴展的效用和安全措施的強化。我們將探索創新與強大的安全協議的協同作用,如何為數字資產的新時代鋪平道路。

BTC 生態一覽及基礎知識

我們知道作為加密貨幣革命的基石,比特幣一直被人們當做黃金一樣進行價值存儲,在其他公鏈 DEFI 創新如火如荼之時,人們似乎都已經忘了比特幣的存在。

然而,恰恰是在比特幣上,先驅者們最早開啟了穩定幣、Layer2、甚至 DEFI 的實驗,比如現在幣圈的硬通貨 USDT 最早就是發行在比特幣 Omnilayer 網絡上,下圖就是從技術實現角度對比特幣生態的一個基本分類。

包括基於雙向錨定的側鏈、基於輸出腳本(OP_RETURN)的文本解析、基於 Taproot 腳本的銘刻、基於 BIP300 更新升級的驅動鏈和基於狀態通道的閃電網絡等技術。

上面可能很多術語大家還不瞭解,不著急,我們先熟悉以下的基礎知識,然後再一一講解這些生態的技術原理並探討其中的安全問題。

UTXO 是比特幣交易的基本單位

與以太坊的賬戶餘額體系不同,比特幣的系統中並沒有賬戶這個概念。以太坊引入了四顆棵複雜的 Merkle Patricia Trie 來存儲和驗證賬戶狀態的變化。與之相比,比特幣巧妙的利用 UTXO 來更加簡潔的解決了這些問題。

以太坊的四棵樹

比特幣的輸入與輸出

UTXO(Unspent Transaction Outputs,未花費的交易輸出),這個名字聽上去特別拗口,但其實搞清楚輸入、輸出和交易這三個概念後,就很好理解了。

交易的輸入與輸出

熟悉以太坊的朋友應該知道,交易(transaction)是區塊鏈網絡中基本通信單位,一旦交易被打包出塊和確認,就意味著鏈上狀態變更的確定。而在比特幣的交易中,並不是單一的地址對地址的狀態操作,而是多個輸入腳本和輸出腳本構成。

上圖是一筆非常典型的比特幣 2 對 2 交易。理論上,輸入的 BTC 數量和輸出的 BTC 數量應該相等,實際上輸出比輸入少的部分的 BTC 就作為礦工的手續費由出塊礦工賺取,等同於以太坊中的 Gas Fee。

我們可以看到兩個輸入地址在轉移 BTC 的同時,需要在輸入的腳本中做驗證,證明這兩個輸入地址可以花費這兩筆輸入(也就是上一筆的未花費輸出,UTXO),而輸出腳本,則規定了花費兩筆輸出比特幣的條件,也就是在下一次將這筆未花費的輸出作為輸入時,應滿足什麼條件(一般普通轉賬,條件就是輸出地址的簽名,例如上圖,P2wPKH 表示需要 taproot 地址的簽名驗證,P2PKH 則表示需要 legacy 地址私鑰的簽名)。

具體來說,比特幣交易其數據結構如下:

在比特幣交易中,基本結構由兩個關鍵部分組成:輸入和輸出。輸入部分指明瞭交易的發起方,而輸出部分則指明瞭交易的接收方和找零(如果有的話)。交易費用則是輸入總額與輸出總額的差額。由於每一筆交易的輸入都是之前某筆交易的輸出,因此交易的輸出成為了交易結構的核心要素。

這種結構形成了一種鏈式連接。在比特幣網絡中,每一筆合法的交易都可以追溯到之前的一個或多個交易的輸出。這些交易鏈的起點是挖礦獎勵,而終點則是當前尚未被花費的交易輸出。網絡中所有未花費的輸出統稱為比特幣網絡的 UTXO(Unspent Transaction Output)。

在比特幣網絡中,每筆新交易的輸入必須是未花費的輸出。此外,每個輸入還需要前一筆輸出的對應私鑰簽名。比特幣網絡中的每個節點都存儲著當前區塊鏈上的所有 UTXO,以此來驗證新交易的合法性。通過 UTXO 和簽名驗證機制,節點能夠在不追溯整個交易歷史的情況下驗證新交易的合法性,從而簡化了網絡的運行和維護過程。

比特幣獨特的交易結構是符合其白皮書《Bitcoin: A Peer-to-Peer Electronic Cash System》設計的,比特幣是一個電子現金系統,其交易結構就是在模擬現金的交易過程,一個地址上可以花費的數量取決於之前收到的現金數量,每筆交易都是要把這個地址上的所有現金都整體花費出去,而交易的輸出地址通常一個是接收地址,一個是找零地址,就像在超市使用現金交易時的找零。

腳本

在比特幣網絡中,腳本扮演著至關重要的角色。事實上,比特幣交易的每個輸出實際上是指向一個腳本,而不是一個具體的地址。這些腳本就像一組規則,定義了接收方如何才能使用輸出中鎖定的資產。

交易的合法性驗證依賴於兩種腳本:鎖定腳本和解鎖腳本。鎖定腳本存在於交易的輸出中,用於定義解鎖該輸出所需的條件。解鎖腳本則與之相對應,必須遵循鎖定腳本定義的規則來解鎖 UTXO 資產,這些腳本位於交易的輸入部分。這種腳本語言的靈活性使得比特幣可以實現多種條件組合,展示出其作為「部分可編程貨幣」的特性。

在比特幣網絡中,每個節點都運行著一個堆棧解釋器,用於基於「先進先出」的規則解釋這些腳本。

最經典的比特幣腳本主要有兩種常用類型:P2PKH(Pay-to-Public-Key-Hash)和 P2SH(Pay-to-Script-Hash)。P2PKH 是一種簡單的交易類型,其中接收方只需用相應的私鑰簽名即可使用資產。P2SH 則更為複雜,例如在多重簽名的情況下,需要多個私鑰的組合簽名才能使用資產,或者。

這些腳本和驗證機制共同構成了比特幣網絡的核心運作方式,確保了交易的安全性和靈活性。

比如在比特幣中,P2PKH 的 output 腳本規則如下:

Pubkey script: OP_DUP OP_HASH160 OP_EQUALVERIFY OP_CHECKSIG

Input 則需要提供簽名

Signature script: sig

而 P2SH 的 output 腳本規則如下:

Pubkey script: OP_HASH160 OP_EQUAL

Input 需要提供多籤列表

Signature script: [sig] [sig...]

在上述的 2 種腳本規則裡,Pubkey script 代表著鎖定腳本,Signature script 代表著解鎖腳本。OP_開頭的單詞是相關的腳本命令,也是節點所能解析的指令。這些命令規則根據 Pubkey script 的不同來進行劃分,它也決定著解鎖腳本的規則。

比特幣中的腳本機制相對簡單,只是一個基於堆棧式的,解釋相關 OP 指令的引擎,能夠解析的腳本規則並不是太多,不能實現很複雜的邏輯。但它為區塊鏈可編程提供了一個原型,後續一些生態項目其實是基於腳本的原理髮展起來的。而隨著隔離見證和 Taproot 的更新,OP 指令的類型變得更加豐富,每筆交易可包含的腳本大小得到了擴容,比特幣生態迎來了爆發式的增長。

銘文技術原理與安全問題

銘文技術的火爆,離不開比特幣的隔離見證和 Taproot 更新。

技術上看,區塊鏈的去中心化程度越高,其效率通常越低。以比特幣為例,它的每個區塊的大小仍然維持在 1MB,與中本聰最初挖出的第一個區塊大小相同。面對擴容的問題,比特幣社區並沒有選擇簡單直接地增加區塊大小這一路徑。相反,他們採取了一種名為「隔離見證」(Segregated Witness,簡稱 SegWit)的方法,這是一種不需要進行硬分叉的升級方案,旨在通過優化區塊中的數據結構來提高網絡的處理能力和效率。

隔離見證

在比特幣交易中,每筆交易的信息主要分為兩個部分:基礎交易數據和見證數據。基礎交易數據包括了諸如賬戶資金結餘等關鍵財務信息,而見證數據則用於驗證用戶的身份。對用戶來說,他們主要關心的是與資產直接相關的信息,如賬戶資金結餘,而身份驗證的細節並不需要在交易中佔用太多資源。換句話說,接收資產的一方主要關注的是資產是否可用,而不必過分關注發送方的詳細信息。

然而,在比特幣的交易結構中,見證數據(即簽名信息)佔據了大量的存儲空間,這導致轉賬效率降低和交易打包成本增加。為了解決這個問題,隔離見證(SegWit)技術被引入,它的核心思想是將見證數據從主要的交易數據中分離出來,並單獨存儲。這樣做的結果是優化了存儲空間的使用,從而提高了交易效率並減少了成本。

這樣,原有的 1M 大小區塊不變的情況下,每個區塊可以容納的交易更多,而隔離見證數據(也就是各種簽名腳本)則可以佔用額外的 3M 空間,為 Taproot 腳本指令的豐富奠定了存儲基礎。

Taproot

Taproot 是比特幣網絡的一個重要軟分叉升級,旨在提高比特幣腳本的私密性、效率,以及智能合約的處理能力。這次升級被認為是自 2017 年 SegWit 升級之後的一個主要進步。

這次 Taproot 升級包括了三個不同的比特幣改進提案(BIP):Taproot(默克爾抽象語法樹, MAST)、Tapscript,以及一個全新的多籤友好的數字簽名方案,稱為「Schnorr 簽名」。Taproot 的目的是為比特幣用戶提供多種好處,包括提高交易的私密性和降低交易成本。此外,它還將增強比特幣在執行更復雜交易方面的能力,從而擴展其應用範圍。

Taproot 更新直接影響了 3 個生態:一個是 ordinals 協議,它利用了 Taproot 的 script-path spend scripts 腳本來實現附加數據;另一個是閃電網絡升級為 Taproot Asset,從簡單的點對點 BTC 支付進化為點對多且支持發行新的資產;還有一個就是新提出的 BitVM,通過 Taproot 中的 op_booland 和 op_not 來把 bool 電路「蝕刻」到 Taproot 腳本里,從而實現智能合約虛擬機功能。

Ordinals

Ordinals 是 Casey Rodarmor 在 2022 年 12 月發明的協議,它為每個聰(Satoshi)賦予獨特序列號,並在交易中追蹤它們。任何人都可以通過 Ordinals 在 UTXO 的 Taproot 腳本中附加額外的數據,包括文本、圖片、視頻等。

熟悉 Ordinals 的朋友一定知道:比特幣總量是 2100 萬個,每個比特幣包含 10^8 個 Satoshi(聰),所以比特幣網絡上一共有 2100 萬*10^8 個聰,Ordinals 協議會將這些聰區分出來,每個聰都有一個唯一的編號。這是理論上可以做到的,但是實際上做不到。

因為 BTC 網絡出於抵禦粉塵攻擊的原因,轉賬有一個最少 546 聰(segwit 最少 294 聰)的限制,也就是不可以 1 聰 1 聰的轉賬,根據轉賬的地址類型,至少要轉 546 聰或 294 聰,而根據 Ordinals 先進先出的編號理論,至少每個區塊的 1 號~294 號聰是不可分割。

所以所謂的銘刻,並不是銘刻在某個聰上的,而是銘刻在一筆交易的腳本中,而這筆交易至少要包含 294 聰的轉賬,然後由中心化的 indexer(比如 unisat)來追蹤和識別這 294 聰或 456 聰的轉移情況。

銘文在交易中的編碼方式

原則上 Taproot 腳本的花費只能從現有的 Taproot 輸出中進行,所以銘文理論上應該是通過一個兩階段的提交/揭示程序來進行的。首先,在提交交易中,創建一個基於 script path spend 的內容的 Taproot 輸入,並在輸出中指明花費/掲示的簽名條件。其次,在揭示交易中,由提交交易創建的輸出被花費,揭示鏈上的銘文內容。

不過在現實的 indexer 場景中,並不十分關注掲示交易的作用,而是直接在輸入腳本中讀取由一個 OP_FALSE OP_IF ... OP_ENDIF 組成的腳本片段,從其中讀取銘文的內容。

因為 OP_FALSE OP_IF 的指令組合會導致該段腳本不會被執行,所以可以在其中存儲任意內容的字節,而不影響原本腳本的邏輯。

一個包含字符串 "Hello, world!"的文本銘文被序列化如下:

OP_FALSE OP_IF OP_PUSH "ord"OP_1OP_PUSH

"text/plain;charset=utf-8"OP_0OP_PUSH "Hello, world!"OP_ENDIF

Ordinals 協議本質上就是將這一段代碼序列化到 Taproot 腳本里面。

我們從鏈上找一筆交易來詳細說明 ordinals 的編碼原理:

https://explorer.btc.com/btc/transaction/885d037ed114012864c031ed5ed8bbf5f95b95e1ef6469a808e9c08c4808e3ae

我們可以查看這個交易的詳細信息:

我們對 witness 字段從 0063(OP_FALSE OP_IF)開始的編碼進行分析,可以瞭解序列化的編碼內容:

所以只要我們能把這見證腳本中的這部分的代碼解碼出來,就能知道銘刻的內容了。這裡編碼的是純文本信息,其他數據比如 html、圖片、視頻等也都是類似的。

理論上你也可以定義自己的編碼內容,甚至是隻有自己知道的加密內容,只不過這些內容不能在 ordinals 瀏覽器中顯示。

BRC20

2023 年 3 月 9 日,一位名叫 domo 的匿名 Twitter 用戶在推特上發佈了一條推文,在 Ordinals Protocol 之上創建一個同質化代幣標準,稱之為 BRC20 標準。這個想法是可以通過 Ordinals 協議將 JSON 字符串數據刻在 Taproot 腳本中,以部署、鑄造和傳輸同質化的 BRC-20 代幣。

圖 1:BRC-20 代幣的卑微開端(domo 關於該主題的第一個帖子)

來源:Twitter(@domodata)

圖 2:BRC-20 代幣可能的三個初始操作(p = 協議名稱,op = 操作,tick = 股票代碼 / 標識符,max = 最大供應量,lim = 鑄造限制,amt = 數量)

來源:https://domo-2.gitbook.io/brc-20-experiment/,幣安研究

Token 的發起方通過 deploy 將 brc20 代幣部署上鍊,然後參與者通過 mint 來幾乎無成本的獲取 Token(只有礦工費),當 mint 數量超過 max 後,mint 銘文的銘刻會被 indexer 認為是無效的。這之後,擁有 Token 的地址可以通過 transfer 銘文來轉移 Token。

值得注意的是,Ordinals 的創始人 Casey,對 BRC-20 的交易佔據了 Ordinals 協議的大部分比例非常不爽。他曾公開表示 BRC-20 給他創造的 Ordinals 帶來了一堆垃圾。所以,Casey 團隊公開發信,讓幣安把 ORDI 代幣介紹中的 Ordinals 刪掉,他不想讓 Ordinals 協議和 ORDI 扯上關係。

擴展協議

BRC20 swap

目前銘文交易最大的市場、indexer 以及錢包供應商 unisat 針對 BRC20 的交易提出了 BRC20 swap 協議,現在已經可以允許早期用戶進行試用。

之前的銘文交易,只能通過一種叫做 PSBT(部分簽名的比特幣交易)的方式來進行,和 Opensea 的鏈下簽名方案類似,通過中心化的服務來「撮合」買賣雙方的簽名。這就導致 BRC20 資產只能像 NFT 資產那樣通過掛單方式來交易,流動性和交易效率都很低。

brc20 swap 通過在 brc20 協議的 json 串中,引入了一種叫模塊的機制,這個模塊中可以部署一套類似智能合約的腳本。以 swap 模塊為例,用戶可以通過 transfer 將 BRC20 鎖入模塊中,也就是發起一筆給自己的轉賬交易,但是交易中的銘文被鎖在模塊中,用戶在完成交易,或撤出 LP 後,可以發起一筆交易,再把 brc20 代幣提取出來。

目前,brc20 swap 採用黑模塊的擴展模式運行,黑模塊是出於安全考慮,在未經共識和驗證的情況下,通過模塊中的資金總和來確定用戶可以提取的資金,也就是任何用戶不能提取超過鎖入模塊資產總和的資產。

當黑模塊的行為被用戶理解和執行,逐步變得可靠,逐漸被更多索引者接受後,產品從黑模塊過渡到白模塊,達成共識升級。用戶也就可以自由充提資產。

此外,因為 brc20 協議乃至整個 Ordinals 生態依然處於早期,Unisat 佔據較大影響力和聲譽,其為協議提供了完整的交易和餘額查詢等索引服務,有一家獨大的中心化風險。其模塊化運行的架構,使得更多服務商可以參與進來,從而實現索引更加去中心化。

BRC420

Brc420 協議由 RCSV 開發。他們在原有銘文的基礎上,增加了遞歸索引的擴展。通過遞歸的方式定義了更復雜的資產格式。同時,Brc420 在單個銘文的基礎上建立了使用權和版稅之間的約束關係。當用戶 mint 資產時,需要給創作者支付版稅,並且擁有一個銘文時可以分配其使用權併為其設定價格,此舉可激勵 Ordinals 生態更多創新。

Brc420 的提出為銘文生態提供了更廣闊的想象空間,除了可以通過遞歸引用構建更復雜的元宇宙外,也可以通過代碼銘文的遞歸引用,來構建智能合約生態。

ARC20

ARC20 代幣標準是由 Atomicals 協議提供的,在這個標準中,「原子」是基本單位,構建在比特幣的最小單位聰(sat)之上。這意味著每個 ARC20 代幣始終由 1 個 sat 支持。此外,ARC20 還是首個通過工作量證明(PoW)銘文鑄造的代幣協議,允許參與者通過類似挖掘比特幣的方式直接挖掘銘文或 NFT。

將 1 個 ARC20 代幣等同於 1 個 sat 帶來了多個好處:

1. 首先,每個 ARC20 代幣的價值永遠不會低於 1 個 sat,這使得比特幣在此過程中充當了一種「數字黃金錨定」的角色。

2. 其次,驗證交易時只需查詢與 sat 相對應的 UTXO,這與 BRC20 需要鏈下賬本狀態記錄和第三方排序器的複雜性形成對比。

3. 此外,ARC20 的所有操作都可以通過比特幣網絡完成,不需要額外的步驟。

4. 最後,由於 UTXO 的可組合性,理論上可以實現 ARC20 代幣與比特幣的直接交換,這為未來的流動性提供了可能性。

Atomicals 協議為 ARC20 代幣設置了 Bitwork Mining 的特殊前綴參數。代幣發行者可以選擇特殊前綴,而用戶要通過 CPU 挖礦計算出匹配的前綴後,才能獲得鑄造該 ARC20 代幣的資格。這種「一 CPU 一票」的模式與比特幣原教旨主義者們的理念相符。

銘文安全嗎

銘文看上去只是一段「無害」的文本上鍊,並通過中心化的 indexer 來解析,似乎安全問題只是中心化服務上的安全考慮,但在鏈上安全方面,還是需要注意以下幾點:

鏈上安全問題

1. 增加節點負擔

銘文會增加比特幣區塊的大小,這會增加節點在網絡傳播、存儲和驗證區塊時所需的資源。如果銘文過多,會降低比特幣網絡的去中心化程度,使網絡更容易受到攻擊。

2. 降低安全性

銘文可以用於存儲任何類型的數據,包括惡意代碼。如果惡意代碼被添加到比特幣區塊中,可能會導致網絡安全漏洞。

3. 交易需要構造

銘文的交易需要進行交易的構造,並且關注 ordinals 的先入先出規則,以防止由於疏忽導致銘文的索引性被破壞。

4. 買賣存在風險

銘文的交易市場,不論是 OTC 還是 PSBT,都存在資產損失風險。

具體的安全問題

1. 孤塊率和分叉率增加

銘文會增加區塊的大小,這會導致孤塊率和分叉率增加。孤塊是指沒有被其他節點承認的區塊,分叉是指網絡中存在多個競爭的區塊鏈。孤塊和分叉會降低網絡的穩定性和安全性。

2. 攻擊者篡改銘文

攻擊者可以利用銘文的開放性進行篡改攻擊。

例如,攻擊者可以將銘文中存儲的信息替換為惡意代碼,從而在滲透進 indexer 的服務器或通過木馬入侵用戶設備。

3. 錢包使用不當

如果錢包使用不當,錢包不能索引銘文的情況下,很可能錯誤的轉移走銘文,導致資產損失。

4. 釣魚或詐騙

攻擊者可能通過假冒的 unisat 等 indexer 網站,來誘導用戶進行銘文交易,從而竊取用戶資產。

5. PSBT 簽名疏漏

Atomicals Market 曾經因為錯誤的簽名方法使用,而導致用戶資產受損。

相關閱讀:

<The Analysis of the Atomicals Market User Asset Loss>

https://metatrust.io/company/blogs/post/the-analysis-of-the-atomicals-market-user-asset-loss

可採取的措施

1. 限制銘文的大小

可以限制銘文的大小,以減少對節點負擔的影響,這一點文章開頭提到的 Luke 已經在做了。

2. 對銘文進行加密

可以對銘文進行加密,以防止惡意代碼的攻擊。

3. 使用可信的銘文來源

可以使用可信的銘文來源,以防止簽名問題和被釣魚。

4. 使用支持銘文的錢包

使用支持銘文的錢包來進行轉賬活動。

5. 注重銘文代碼及相關腳本的審核

在 brc20-swap 及遞歸銘文的新型實驗中,由於代碼和相關腳本的引入,需要確保這些代碼及腳本的安全性。

總結

從技術和安全的角度說,比特幣銘文本質上還是一種規則繞過的漏洞,taproot 腳本並不是為了存儲數據而出現的,其安全性也存在一些問題。Luke 對 bitcoin core 代碼的修改從安全角度來說是正確的。Luke 並未對比特幣的共識層進行直接修改,而是選擇調整 Spam Filter(策略過濾器)模塊,使得節點在接收到 P2P 廣播消息時,能夠自動過濾掉 Ordinals 交易。在這個策略過濾器中,有多個名為 isStandard() 的函數用於檢查交易的各個方面是否符合標準。如果交易不符合標準,節點接收到的這筆交易將會被迅速丟棄。

換言之,儘管 Ordinals 交易最終還是可以被加入區塊鏈,但大多數節點不會將這類數據加入交易池,這將增加 Ordinals 數據被願意將其打包上鍊的礦池接收的延時。然而,如果某個礦池廣播了一個包含 BRC-20 交易的區塊,其他節點仍然會對其進行認可。

Luke 已經在 Bitcoin Knots 客戶端中推出了對策略過濾器(policy)的修改,並且計劃在 Bitcoin Core 客戶端中引入類似的更改。在這次修改中,他引入了一個新的參數,名為 g_script_size_policy_limit,用於在多個不同的位置限制腳本的大小。這一改動意味著在處理交易時,腳本大小將受到額外的限制,影響著交易的接受和處理方式。

目前,該參數的默認值是 1650Bytes,任何節點客戶端都可以在啟動時通過參數-maxscriptsize 來設置:

不過即使代碼更新,距離礦工節點全部更新為新版本還有很長的一段時間,這段時間,銘文社區的創新者們應該可以創造出更安全的協議。

Metatrust Labs 通過鏈上數據和資產追蹤,在 metaScore 平臺上已經對銘文投資風險進行了評分和監控,同時在 metaScout 平臺上也推出比特幣網絡監控的規則引擎,可以幫助投資者監控比特幣銘文的實時數據。

這一期,我們探索現在熱門的銘文生態的技術原理和可能存在的安全問題,下一期,我們將為大家帶來更加複雜的 Taproot 電路蝕刻技術——bitVM,敬請期待。

關於 MetaTrust Labs

MetaTrust Labs 是新加坡南洋理工大學孵化的領先 Web3 人工智能安全工具和代碼審計服務提供商。我們提供先進的 AI 解決方案,賦予開發者和項目相關者保護 Web3 應用程序和智能合約的能力。我們的綜合服務包括 AI 安全掃描、代碼審計、智能合約監控和交易監控。通過整合 AI,我們確保構建一個安全的生態系統,增強用戶和開發者之間的信任。

官網: https://www.metatrust.io/

Twitter: https://twitter.com/MetaTrustLabs

Linkedin: https://www.linkedin.com/in/metatrust

相关赛道:
來源
免責聲明:以上內容僅為作者觀點,不代表Followin的任何立場,不構成與Followin相關的任何投資建議。
喜歡
收藏
評論