Signal Messenger恢復發布伺服器代碼並整合加密貨幣

開發 Signal 安全通訊系統的 Signal Technology Foundation 已恢復發布信使伺服器部分的程式碼。 該專案的程式碼最初是在 AGPLv3 許可證下開源的,但去年 22 月 XNUMX 日停止發佈公共儲存庫的更改,且沒有任何解釋。 在宣布打算將支付系統整合到 Signal 後,儲存庫更新停止了。

最近,我們開始測試 Signal 中內建的支付系統,該系統基於我們自己的 MobileCoin (MOB) 加密貨幣,由 Signal 協議的作者 Moxie Marlinspike 開發。 大約在同一時間,儲存庫中發布了一年來累積的伺服器元件更改,其中包括支付系統實施的更改。

Signal Messenger恢復發布伺服器代碼並整合加密貨幣

MobileCoin加密貨幣旨在建立一個確保用戶隱私的行動支付網路。 用戶資料僅保留在他們手中,訊號開發人員或基礎設施元素管理員沒有機會存取資金、用戶餘額資料和交易歷史記錄。 支付網路沒有單點控制,基於共享所有權的思想,其本質是所有網路資金都形成為可交換的個人股份的集合。 網路上的資金總量固定為250億MOB。

MobileCoin 是基於儲存所有成功支付歷史的區塊鏈。 要確認資金所有權,您必須有兩把鑰匙——一把用於轉帳的鑰匙和一把用於查看狀態的鑰匙。 對於大多數使用者來說,這些金鑰可以從公共基本金鑰派生出來。 要接收付款,用戶必須向發送者提供兩個與用於發送和驗證資金所有權的現有私鑰相對應的公鑰。 交易在用戶的電腦或智慧型手機上生成,然後傳輸到具有驗證器狀態的節點之一,以便在隔離的飛地中進行處理。 驗證器驗證交易並與 MobileCoin 網路上的其他節點點對點共用交易資訊。

資料只能傳輸到已透過密碼驗證在 enclave 中使用未修改的 MobileCoin 程式碼的節點。 每個隔離的 enclave 都會複製一個狀態機,該狀態機使用 MobileCoin 共識協議將有效交易新增至區塊鏈中以確認付款。 節點還可以扮演完整驗證者的角色,它還可以在內容交付網路上形成並託管計算區塊鏈的公共副本。 產生的區塊鏈不包含允許在不知道用戶金鑰的情況下識別用戶的資訊。 區塊鏈僅包含根據用戶金鑰計算的識別碼、有關資金的加密資料以及用於完整性控制的元資料。

為了確保完整性並防止事後資料損壞,使用 Merkle Tree 樹​​結構,其中每個分支透過聯合(樹)雜湊驗證所有底層分支和節點。 有了最終的雜湊值,使用者可以驗證整個操作歷史記錄的正確性,以及資料庫過去狀態的正確性(資料庫新狀態的根驗證雜湊值是根據過去的狀態計算的) )。

除了驗證器之外,網路還具有觀察者節點,用於驗證驗證器附加到區塊鏈中每個區塊的數位簽章。 觀察者節點不斷監控去中心化網路的完整性,維護自己的區塊鏈本地副本,並為錢包應用程式和交易所客戶端提供 API。 任何人都可以運行驗證器和觀察節點;為此,需要分發相應的服務、Intel SGX 的 enclave 映像和 mobilecoind 守護程式。

Signal 的創建者解釋了將加密貨幣整合到信使中的想法,希望為用戶提供一個易於使用的、保護隱私的支付系統,類似於 Signal 信使確保通訊安全的方式。 密碼學和電腦安全領域的知名專家 Bruce Schneier 批評了 Signal 開發人員的行為。 施奈爾認為,把所有雞蛋放在一個籃子裡並不是最好的解決方案,重點不是它會導致程序的臃腫和復雜,甚至不是區塊鏈的使用是可疑的,更不是它是一種嘗試將Signal 與一種加密貨幣連結起來。

施奈爾認為,關鍵問題在於,在端到端加密應用程式中添加支付系統會帶來額外的威脅,這些威脅與各情報機構和政府監管機構的興趣增加有關。 安全通訊和安全交易可以輕鬆地作為單獨的應用程式實現。 實現強大的端對端加密的應用程式已經受到攻擊,進一步增加反對程度是危險的——當功能結合起來時,對支付系統的影響將必然涉及端對端加密的功能。 如果某一部分死亡,整個系統就會死亡。

來源: opennet.ru

添加評論