推特在 2019 年底宣布推出去中心化社交媒體協議——Bluesky 計劃,這項計劃是為社交媒體開發一個開放和去中心化的標準,而近期 Bluesky 已宣布其獨立運營。通過這篇文章,我們速來了解 Bluesky 的理念與架構。
— 導讀(Web3Caff 編輯部注)
原文:A Self-Authenticating Social Protocol
作者: Bluesky Team
編譯: zCloak Network
原用標題(譯後): Bluesky:一個具有自我認證功能的社交協議
Bluesky 的使命是推動從平台到協議的演變。用於公共交流的工具應該以公共基礎設施的形式存在於私營公司之外,就像互聯網本身一樣。用於公共交流的開放且持久的去中心化協議可以為用戶提供更多的體驗選擇,可以讓創造者調控他與觀眾的關係,而開發者可以在未經平台許可的情況下自由創新。
為了了解現有的去中心化協議,我們進行了一段時間密集的調研。這項研究始於對生態系統的調研,一直到 Bluesky 團隊成立期間研究仍在進行。從本月的這篇文章開始,我們將公佈初步的工作進展和研究成果。有許多項目創建了去中心化話語協議,包括用於社交的 ActivityPub 和 SSB,用於聊天的 Matrix 和 IRC,以及用於博客的 RSS。雖然它們都取得了相應的成果,但沒有一個完全達到我們想要的目標,即建立一個能在全球範圍實現長期公共交流的去中心化網絡。
可移植性、可擴展性和信任是我們要評估的最重要的因素。可移植性允許人們在更換供應商的時候無損社交生活;可擴展性允許人們參與到全局對話中;信任建立則是讓人們了解服務對它們的數據執行了什麼樣的操作,以及通過讓人們知道數據是如何在他們的信息流中被推廣或被刪除。深入探討下這三點。
可移植性
可移植性是指在不同的服務商之間轉換而不丟失任何內容的能力,就像用戶如何在更換移動運營商的同時而不丟失電話號碼。用戶可以選擇不同內容的可移植性,比如身份、數據、支付抑或其它任何服務。當人們可以在不丟失身份或社交圖譜的情況下隨意更換供應商時,社交媒體就可以再次成為一個富有競爭力的開放市場。
對於電子郵件,不同的供應商會提供不同的電子郵件地址,如果你要更換供應商則相應地址也必須改變。這是聯合社交協議的一個常見問題,其中包括 ActivityPub 和 Matrix。如果你的 ActivityPub 服務器關閉了,你就會失去你與該服務器的賬戶相聯繫身份和關係,其影響無異於任何其它社交平台的關帶來的影響,這種情況以前發生過,並非不可能,因為 ActivityPub 的服務器比現有平台所擁有的要小得多,且通常由志願者管理。而 Bluesky 團隊想要看到,用戶無需服務器的幫助也能簡單自由的切換服務。
可擴展性
社交網絡平台將數以億計的人聚集在一起,進行全球範圍的交流。有的人喜歡 “小而美” 的較小的社區,ActivityPub 和 SSB 就非常適合這類需要緊密聯繫的群體。但我們希望給用戶提供更多的選擇:參與到全球範圍的交流,就像他們現在在大型社交網絡平台上做的那樣。
規模化運營需要規模化的工程。Twitter 的網站在早期經常崩潰,以至於"fail whale" 成為了一種網絡流行語,當然,後來他們解決了這個問題。但現有的去中心化網絡在試圖複製大平台功能的時候並沒能解決這個問題。具體來講,你在社交媒體上搜索一個熱門話題標籤,或找到來自世界各地的帖子,或看到一個擁有 125k 個讚的帖子,這些都是一種服務:它在為你提供整個網絡的全局視圖的同時隱藏其內部的複雜性。但我們團隊為去中心化社交平台的各個方面添加了跨組織網絡,使復雜性被重新暴露。圍繞解決這些方面挑戰的每一步都需要開發一個能用於大規模交流的協議。
去中心化為其它領域增添了新的功能,但當涉及到擴展時,我們的目標是複制社交網絡平台目前提供的全球體驗。由於本地對話天然的適合去中心化的架構,所以現有的去中心化社交協議都被默認為本地對話。但我們的目標是使全球範圍的對話成為可能的同時,保留用戶通過開放協議進行互動所獲得的自由。
信任
去中心化網絡非常複雜,網絡提供者在管理垃圾郵件和信息濫用的同時,需要注意不能無意中造成用戶的偏見以至於失去用戶的信任。這一點相對驅動流量的算法來說甚至更加重要,社交媒體具有塑造文化話語的力量,所以需要存在於一個制衡的系統中。就像在規模和可移植性裡要做的一樣。Bluesky 的目標是通過暴露內部發生的事情並允許用戶調整他們的體驗,來達到從一開始就建立信任的目的。
以中心化開始的社交網絡平台可以採取開放 API 的措施來為用戶提供選擇,這種方式可以恢復對當前服務的信任。然而,Bluesky 要保持的前提是,通過建立一個默認開放的網絡來自下而上地構建一個透明的和可驗證的系統。為此,我們將為用戶提供審計服務性能的方法,並在他們不滿意時提供無損的切換能力。
自我認證協議
我們為實現以上三個目標所採用的概念框架是"自我認證協議" 。在法律上,一個"自我認證"的文件不需要外部證據證明其真實性。在計算機科學中,一個"經過認證的數據結構"可以獨立地驗證其操作。當網絡中的資源可以證明其自身的真實性時,那麼無論這些數據處於何處,本質上都是 “活” 的,也就是說是規範的和可處理的。這與以連接為中心的網絡模型背道而馳,因為在中心化網絡模式下信息由主機認證,當它不再由原始服務器託管時就會變成 “死” 的,慶幸的是,自我認證數據將權限轉移給了用戶,因此在每個託管服務中都能保持數據的規範性和可處理性。
實現自我認證的三個核心組件是:密碼學標識符、內容尋址數據和可驗證計算。前兩個是分佈式系統中熟悉的概念,第三個是一個新興的研究領域,尚未得到廣泛的應用,但我們認為它將產生巨大的影響。
密碼學標識符將用戶與公鑰聯繫起來。自我主權身份是基於為用戶提供密碼學標識符,用戶通過密碼學簽名來證明自己對賬戶擁有控制權,而不是通過數據庫中的登錄記錄來證明。
內容尋址數據意味著內容是通過其加密哈希值來引用的(加密哈希值這是段數據的唯一數字 “指紋”)。基於公鑰和內容地址,用戶可以通過密鑰簽署內容,以證明是用戶創建了內容。數據經過認證後使信任駐留在了數據本身而不是在發現它的地方,這能夠幫助應用程序擺脫客戶端-服務器架構,創造了"用戶生成的權限"。
可驗證計算使用密碼學證明,要檢查一個計算是否正確執行,觀察者不再需要重新執行該計算,而只需要驗證一個密碼學證明就可以了。這可用於隱藏輸入數據來保護用戶隱私,比如在零知識證明中;或者用來壓縮狀態,這些狀態若不被壓縮則必須被存儲以便用於驗證。關於此類密碼學原語的潛力仍在探索之中,尖端的研究正被應用於擴展區塊鏈,而我們 Bluesky 團隊也在探索分佈式社交網絡中可有的新應用。
如何實現
上面我們已經解釋了自我認證協議,現在一起來看看這些組件是如何幫助我們實現目標的。
可移植性直接滿足於自我認證協議。想要更換供應商的用戶可以輕鬆地轉移他們的數據集,包括轉移到他們自己的基礎設施。近年來,如何在一個有加密標識符的系統中處理密鑰管理和用戶名關聯的用戶體驗取得了長足的進步,我們計劃在這些成果上進行構建,即基於新興的標準和最佳實踐進行構建。Bluesky 的理念是為用戶提供多種選擇:既可以使用擁有更多控制權但也承擔更多風險的自我主權解決方案,也可以使用比較方便但放棄一些控制權的託管服務。
通過啟用存儲轉發緩存機制,自我認證數據提供了可擴展性的優勢。自我認證網絡中的聚合器可以在不降低對數據真實性的信任的基礎上,為較小的提供商完成託管數據的工作。通過可驗證計算,這些聚合器甚至能夠生成計算視圖——指標、跟踪圖表、搜索索引等等,同時仍然保持數據的可信性。對創建多來源活動的全局視圖來說這樣的拓撲靈活性是關鍵。
最後,自我認證數據提供了更多可以用來建立信任的機制。它可以保留比如信息由誰發布以及它是否被改變這樣的元數據;使得聲譽和信任圖可以基於用戶、內容和服務構建。可驗證計算所提供的透明度,通過準確地顯示結果是如何產生的,為建立信任提供了一個新的工具。我們相信可驗證計算將在不犧牲信任的情況下為共享索引和社交算法提供巨大的機會,只是這一領域的加密原語仍在完善之中,在它們被應用於任何產品之前需要被積極的研究。
結語
在這篇文章中,我們闡述了我設定的高層次目標以及我們計劃如何實現這些目標。在接下來的幾週,我們將公佈更多對生態系統的調研結果,並開放初步代碼。我們已經開始編寫代碼以驗證想法並迭代一些具體的內容,但一切都還處於試驗階段。你可以期待有一個命令行客戶端以供玩耍,但不要指望在它上面構建你計劃的大型應用程序,因為這個階段充滿著變化。
我們不會把我們正在構建的東西描述為一個聯盟網絡或 P2P 網絡,抑或是區塊鍊網絡,因為它不完全屬於上述任何一類。它可以被描述為一個具有 P2P 特徵的聯盟網絡,但它更側重於自我認證身份、數據這樣的功能,而不是網絡拓撲。我們的團隊在這之前已經建立了領先的去中心化網絡協議和區塊鍊網絡,並且在努力將我們所看到的最好的東西綜合成新的東西。對於某些方面,我們將使用行業已存的解決方案,而對於其它一些方面,則必須想出我們自己的解決方案。
免責聲明:作為區塊鏈信息平台,本站所發布文章僅代表作者及嘉賓個人觀點,與 Web3Caff 立場無關。本文內容僅用於信息分享,均不構成任何投資建議及要約,並請您遵守所在國家或地區的相關法律法規。