Nostr的技術原理、待解決的關鍵管理問題及如何激勵中繼持續運轉。
第五權利下的新型社交媒體設計已經探索多年,卻並沒有被大規模採用的跡象。在過去的一年裡,隨著加密技術的不斷發展,以及對馬斯克收購推特的擔憂,去中心化社交網路迎來新的機會。
這些社交網路試圖解決的問題:可能包括加強審查制度,使內容審核更加靈活,削弱大型社交媒體公司塑造和跟蹤人們在網上談論的內容的權力等。
隨著新平台的出現和增長,對替代社交網路的選擇往往帶有政治考慮因素。
如 Getr、Parler、Gab 和 Truth Social 這樣網站,都通過將自己宣傳為 Twitter 的言論自由替代品來迎合右派。
我們今天要討論的是,最近廣受關注且具有一定創新性的新型社交媒體協議 Nostr-Damus。其中包括 Nostr 的技術原理、待解決的關鍵管理問題及如何激勵中繼持續運轉。
Nostr 於 2020 年啟動,是一種去中心化協定,允許使用者擁有自己的身份並使用公開金鑰-私密金鑰加密的數位簽章來驗證帖子。然後,這些帖子會傳播到互連伺服器網路。該協定並未使用區塊鏈,因為在早期實驗中發現區塊鏈對於社交網路來說太慢。但在結構上存在相似之處,Nostr 憑藉其自由主義和開源精神在加密人群中找到了早期的利基市場。
Nostr 協議和第一個中繼伺服器由開發人員 fiatjaf 在 2020 年底創建。在引起廣泛關注之前,Nostr 只是一個安靜的小眾協議,致力於成為 Twitter 和 Mastodon 問題的羽量級解決方案。
Mastodon,一個成立於 2016 年的開源網路,允許任何人設置伺服器。該設計通常被描述為「聯合」,並且可能屬於也可能不屬於「Web3」的模糊界限,具體取決於如何定義。Mastodon 允許使用者加入具有自訂內容審核規則的策劃社區。目前註冊用戶達到 200w+,成為了自由派、記者和學者的避風港。
Twitter 和 Mastodon 系統中,身份/用戶名是由運行伺服器的人控制。
Nostr 的核心區別在於:每個用戶都使用公開金鑰/私密金鑰對來處理該功能,而不是使用伺服器運營商所擁有的用戶名,使得 Nostr 抗審查。這是構建整個 Nostr 協議的核心構建塊之一。
「事件」:這是用戶端和用戶端為了發送和檢索消息而連接的中繼伺服器使用的基本物件/資料類型。該協議的總體思路是,用戶端將事件發送到中繼伺服器,中繼伺服器隨後存儲和索引它們,其他用戶端可以與中繼伺服器通信以請求它們已接收和存儲的事件。在最初的 NIP 01 中,定義了三種不同的事件類型:
0:發送有關使用者的中繼資料,例如用戶名、圖片、簡介等。
1:發送短信和基本內容
2:推薦中繼伺服器供關注事件創建者的人連接
所有事件都以特定定義的方式構建。包括創建者的公開金鑰、創建時間戳記、類型(或規範中的種類)、內容有效負載和事件創建者的簽名。另外,還可以有引用其他事件或用戶的標籤,並且有一個 ID 值,該值是除創建者簽名之外的所有內容的雜湊值(類似於比特幣交易的 TXID)。
這讓用戶可以通過驗證簽名(以及擁有該金鑰的人,如果它沒有被破壞的話)來保證資訊確實是由其中的公開金鑰所有者創建的,並保證資訊在他們簽署後沒有被修改。
就像不能在比特幣交易簽署後改變它而不使其失效一樣,用戶也不能在 Nostr 事件的創建者簽署後改變它而不使其成為明顯的欺詐。
事件類型系統從最初的 NIP 得到了相當大的擴展。有一種事件類型用於加密的直接資訊,通過結合發送方的私密金鑰和接收方的公開金鑰來建立一個共用金鑰,其結果與你通過結合發送方的公開金鑰和接收方的私密金鑰得到的金鑰相同(這就是 BIP 47 和沉默支付的工作方式)。也有可替換事件和短暫事件的類型。在可替換事件的情況下(很明顯),它們被設計成事件的原始創建者可以簽署一個新的事件來替換舊的事件。遵循該規範的中繼伺服器將自動從其存儲中刪除舊事件,並在收到後開始向客戶提供較新的版本。短暫事件的設計是這樣的:當發送到中繼站時,它們將被廣播給任何訂閱其創建者的人,但中繼伺服器不應該存儲它們。這就創造了一種可能性,即在其廣播期間,只有線上的人才能看到消息。甚至還有一種事件類型,用來表示對其他人的事件的反應(如喜歡或表情符號)。
說到最後一個問題,事件也可以包含標籤。目前有事件(引用一個確切的 Nostr 事件)、公開金鑰(標記或引用其他使用者)和主題(模仿功能,如電子郵件主題)的標籤類型。所有這些都可以包括指向特定中繼伺服器的指標,從這些伺服器上可以獲取資料,這樣使用者就可以在不同的伺服器上進行實際的互動,也就是說,一個用戶在一個中繼伺服器上發佈他們的內容,可以與另一個使用者在不同的中繼伺服器上發佈的內容進行互動和引用,這樣就可以讓任何使用者以適當的順序連貫地獲取整個交互執行緒,而不需要在找出相關資料的地方進行大量的複雜操作。
在原始 NIP 中,給出了用戶端如何通過訂閱消息/資料結構與中繼伺服器交互的規範,該結構包括用戶端有興趣接收哪些事件的篩檢程式。這些篩檢程式可以根據先前的標準指定使用者的公開金鑰、確切的事件、事件類型,甚至是他們想要的特定時間範圍。使用者甚至可以提交公開金鑰或事件 ID 的首碼,例如「1xjisj ...」。並從以該短字串開頭的公開金鑰接收任何一個或多個事件(這對於從中繼伺服器隱藏實際想要查看的內容非常有用)。
總的來說,協議是一個非常簡單的通用方案,用於在使用者之間傳遞消息,涵蓋了重要的事情,例如保證消息的完整性以及使用公開金鑰身份發送消息的人,同時還促進了後端基礎設施 中繼伺服器可以是高度集中的或允許用戶運行他們自己的個人中繼伺服器,同時彼此無縫交互並且在用戶被禁止使用一個中繼伺服器的情況下不會造成大規模混亂。他們可以轉移到另一個伺服器或運行自己的伺服器,並且他們從之前的伺服器上脫離平台並不會失去他們的數字身份或追隨者,因為他們仍然保持對私密金鑰的控制,並且用戶可以在其他地方找到他們時對其進行身份驗證。
中繼伺服器也可以隨心所欲地運行:免費運營、收取小額費用來發佈或下載消息,甚至還有一個 NIP 要求 hashcash 樣式的工作證明來提交消息。它們可以是一個單一的中繼伺服器,用於託管帖子並將其僅提供給其他用戶,或者一個大規模運行的伺服器,例如 Twitter 或 Reddit(用戶端可以根據需要顯示和組織資訊,這允許類比任何社交媒體)。所有這些都可以無縫交互操作,並且不會將用戶拒之門外。
使用者公開金鑰/私密金鑰是 Nostr 作為協定工作方式不可或缺的一部分。這起到了實際用戶與其他人如何識別他們之間緊密綁定的作用,以防止任何中繼伺服器解除這兩件事的綁定,即將某人的識別字提供給另一個用戶。也解決了用平台最大的問題之一:缺乏對用戶自身身份的控制。
不過這也引入了新的問題:金鑰可能會丟失,金鑰可能會受到損害,如果發生此類事件,用戶將無法尋求幫助。
這將不可避免地需要一種方案,讓使用者以一種可驗證和可發現的方式從一個金鑰對轉換到另一個金鑰對,並可讓他們通過協議與其他使用者互動。整個協議是基於證明一個事件來自一個特定的用戶(身份金鑰),所以一旦某人的金鑰被破壞,所有這些保證都會被拋到九霄雲外。
Nostr 需要一個實際的密碼方案,將一個金鑰的輪換與另一個金鑰聯繫起來。開發人員 fiatjaf 提出了一項可能解決此問題的基本方案的提案。基本思想是採用從單個主種子派生的一長串位址,並創建一組「調整後的」金鑰,類似於 Taproot 樹如何提交給比特幣金鑰。Taproot 獲取 Taproot 樹的 Merkle 樹根並將其「添加」到公開金鑰以創建新的公開金鑰。這可以通過將該 Merkle 樹根添加到私密金鑰來複製,以獲得與新公開金鑰匹配的私密金鑰。Fiatjaf 的想法是將承諾從末尾向後連結到開始,這樣每個經過調整的金鑰實際上都會包含下一個經過調整的金鑰用於創建它的證明。
所以,想像一下從金鑰 Z 開始,鏈中的最後一個。你可以用一些東西來調整它,然後返回並使用調整後的 金鑰 Z (Z' + Y = Y') 創建金鑰 Y 的調整版本。從這裡您可以獲取 Y',然後用它來調整 X (Y' + X = X')。你會一直這樣做回到金鑰 A,得到 A',然後從那裡開始使用該金鑰。當它被破壞時,用戶可以廣播一個包含未調整金鑰 A 和調整金鑰 B' 的事件。這將包含顯示 B' 用於生成 A' 所需的所有資料,並且使用者可以立即停止關注 A' 並轉而關注 B'。他們會明確地知道 B' 是該用戶的下一個金鑰,並改為遵循該金鑰。
不過,這個提議仍然存在一些問題。首先,必須提前生成將要使用的所有金鑰,並且無法輪換到一組全新的金鑰。這可以通過在這個方案中提交一個可以公證這種輪換的主金鑰來解決,或者簡單地從一開始就生成一組非常大的金鑰。任何一條路徑都是可行的,但最終需要保持根金鑰或金鑰材料的安全,並且只向 Nostr 用戶端公開單個快速鍵(Hotkeys)。
然而,該方案不會保護用戶或提供在根金鑰材料丟失或本身受到損害的情況下進行身份恢復的機制。
為了在這裡對潛在的解決方案進行一些討論,換一種思考,將一個金鑰調整為一個主冷金鑰,該主冷金鑰還必須用於簽署從一個金鑰到另一個金鑰的事件輪換。您有金鑰 A',它是通過添加 A 和 M(主金鑰)派生的,輪換事件將是 A、M 和 B'(通過添加 B 和 M 生成)以及 M 的簽名。M 可以是 多重簽名閾值金鑰——三分之二、五分之三等。這可能會增加冗餘以防丟失,並為金鑰輪換提供安全機制。這也打開了使用服務來説明恢復或將其中一些金鑰傳播給可信賴的朋友的大門。它提供了與比特幣本身的多重簽名相同的靈活性。
NIP26 也是一個可能對處理這個問題非常有用的提案。這指定了事件的協議擴展,允許來自一個金鑰的簽名授權另一個金鑰代表它發佈事件。然後,「權杖」或委託的簽名證明將包含在第二個公開金鑰代表第一個公開金鑰發佈的所有事件中。它甚至可以是有時間限制的,因此委託權杖會自動過期並且必須更新。
金鑰管理和安全問題是一個非常大的問題,具有非常大的設計空間,充滿權衡和痛點。但,Nostr 如果不能為用戶保護和維護這些身份的完整性,則完全基於用作身份的公開金鑰/私密金鑰對的協議,將不能被大規模的採用。
整個 Nostr 協議依賴於某個地方的人運行一個中繼伺服器。沒有「Nostr 網路」,只有中繼和連接到中繼的用戶端。需要激勵人們運行中繼器,從長遠來看,這最終將是中繼器能擴展到什麼程度的一個重要部分。除非 Nostr 中繼可以盈利,或者至少可以帶來足夠的資金來支付自己的運營成本,否則永遠不會有與 Twitter 伺服器同樣規模的中繼。
考慮到 Nostr 作為協定的工作方式,完全阻止廣告將非常微不足道,使其成為不可行的解決方案。中繼伺服器可以嘗試使用廣告作為一種收入模式,這顯然是幾乎所有線上免費服務的主要收入模式,但問題在於使用者基本上必須選擇加入。中繼可以很容易地將廣告注入到它們發送給用戶端的事件中,但如果廣告事件不是由它們有意訂閱的公開金鑰創建的,用戶端也可以很容易地將它們從使用者介面中過濾掉。
小額支付是另一個明顯的解決方案,特別是考慮到目前正在嘗試將閃電網路更緊密地集成到 Nostr 應用程式中。這種模式在如何收費方面提供了很大的靈活性。中繼可以只對在那裡發佈事件收費,也可以對下載事件閱讀收費,還可以將兩者結合起來,並根據兩者消耗的資源多少來調整每一種的價格。不過,這種模式能否擴大到像 Twitter 那樣的規模表示懷疑。
內容小額支付在許多基於閃電網路的利基產品中顯示出自己的可行性,但真正擴展到全球規模存在兩個基本問題。
首先,目前還沒有足夠的比特幣採用。即使每個人都神奇地接受為 Nostr 上的每一次小服務交互付費,也沒有足夠多的人持有比特幣來支持像 Twitter 這樣大規模的比特幣。中繼可以通過法幣收取訂閱費用,但這些支付方式不會支援為每個發佈或下載的事件支付一小部分費用。其次,人們實際上已經習慣了這種免費服務。這正是人們所期望的。我並不認為靠小額支付就能真正支持大規模的中繼。
有一種方法可以使小額支付 “更有粘性 ”或更有可持續性,而不需要把它們強加給使用中繼的每一類用戶。關於在 Nostr 之上建立各種應用的討論已經很多了,除了 Twitter 的克隆。GitHub、維琪百科,甚至是 Uber。
最後一個是關鍵:經濟期望。人們非常習慣於在某處發佈招聘廣告時支付費用,或在網上訂購東西時向市場運營商支付一定的費用,但不會為認為應該免費的商品提供服務—穀歌、推特。這可以為中繼站提供一種方法,從他們的用戶那裡創造一個可靠的收入支柱,而不產生大量的摩擦或打破一般潛在用戶的期望。
如果小額支付也將成為一個因素,那麼中繼運營商將不得不運行一個閃電節點,以便首先從用戶那裡接收資金。如果與中繼實施的任何小額支付模型適當協同,這可能會增加收入。中繼伺服器的收入越大,它在閃電網路上需要的流動性就越大,以促進這一點。如果運營商正確地規劃他們如何在網路中部署或分配流動性,那麼除了通過中繼接受或傳輸資料收取的任何費用外,僅運行路由節點的行為本身就可能成為一個不小的收入來源。
Web3 社交項目,除了以上提到的 Nostr 和 Mastodon 之外,還包括 Farcaster 和 Lens 等項目,它們並不會快速取代現有的社交媒體平台。據統計,Twitter 有數億活躍用戶,Facebook 有數十億,但 Mastodon 只有 250 萬用戶,Nostr 僅大約 22w 個唯一用戶身份。許多 Web3 的社交項目都面臨著可用性障礙,這些障礙會減慢大規模採用速度。
媒體與政治必不可分。隨著 Web3 社交專案的激增和公共對話在不同應用程式和協定之間的分裂,可能會產生政治結果。即使,墨西拿長期以來提倡去中心化社交媒體,但仍擔心去中心化會進一步加劇近年來以相互敵對和誤解為標誌的公共話語。
免責聲明:
本文觀點僅代表作者個人觀點,不構成本平台的投資建議,本平台不對文章信息準確性、完整性和及時性作出任何保證,亦不對因使用或信賴文章信息引發的任何損失承擔責任
0.00