發布 ZeroNet 0.7,一個創建去中心化網站的平台

經過一年的開發,去中心化網路平台發布 零網0.7,它建議使用比特幣的尋址和驗證機制與 BitTorrent 的分散式交付技術相結合來創建無法審查、偽造或封鎖的網站。 網站內容儲存在訪客電腦上的 P2P 網路中,並使用所有者的數位簽名進行驗證。 使用備用根 DNS 伺服器系統進行尋址 Namecoin。 這個專案是用 Python 編寫的 分發者 在 GPLv2 下獲得許可。

網站上發布的數據經過驗證並鏈接到網站所有者的帳戶,類似於比特幣錢包的鏈接,這也使得控制資訊的相關性和即時更新內容成為可能。 要隱藏 IP 位址,可以使用匿名 Tor 網絡,ZeroNet 內建了對此的支援。 使用者參與他所造訪的所有網站的分發。 下載到本機系統後,檔案將被快取並可使用類似 BitTorrent 的方法從目前電腦進行分發。

要查看ZeroNet站點,只需執行zeronet.py腳本,然後您可以透過URL「http://127.0.0.1:43110/zeronet_address」在瀏覽器中開啟網站(例如,「http://127.0.0.1 :43110 /1HeLLo4uzjaLetFx6NMN3PMwF5qbebTf1D」)。 開啟網站時,程式會尋找附近的同級並下載與要求的頁面關聯的檔案(html、css、圖像等)。
要建立站點,只需執行命令“zeronet.py siteCreate”,之後將產生網站識別碼和私鑰,以使用數位簽章確認作者身分。

對於已建立的站點,將建立一個「data/1HeLLo4usjaLetFx6NMH5PMwF3qbebTf1D」形式的空目錄。 更改此目錄的內容後,必須使用指令「zeronet.py siteSign site_identifier」並輸入私鑰來驗證新版本。 一旦新內容經過驗證,需要使用命令「zeronet.py sitePublish site_id」進行公佈,以便更改後的版本可供同行使用(WebSocket API 用於公佈更改)。 沿著這條鏈,節點將使用數位簽章檢查新版本的完整性,下載新內容並將其傳輸給其他節點。

主要的 能力:

  • 不存在單點故障 - 如果發行版中至少有一個對等點,則網站仍然可以存取;
  • 網站缺乏參考儲存 - 無法透過斷開託管來關閉網站,因為資料位於訪客的所有電腦上;
  • 所有先前查看過的資訊都在快取中,並且可以在離線模式下從當前電腦訪問,而無需訪問全球網路。
  • 支援內容即時更新;
  • 可透過「.bit」區域中的網域名稱註冊進行尋址;
  • 無需預先設定即可工作 - 只需使用軟體解壓縮存檔並運行一個腳本即可;
  • 能夠一鍵克隆網站;
  • 基於格式的無密碼身份驗證 BIP32:帳戶受到與比特幣加密貨幣相同的加密方法的保護;
  • 內建SQL Server,具備P2P資料同步功能;
  • 能夠使用 Tor 實現匿名,並完全支援使用 Tor 隱藏服務 (.onion) 取代 IPv4 位址;
  • TLS 加密支援;
  • 透過 uPnP 自動存取;
  • 可以將具有不同數位簽名的多個作者附加到該網站;
  • 用於建立多用戶配置的插件的可用性(openproxy);
  • 支持廣播新聞源;
  • 適用於任何瀏覽器和作業系統。

ZeroNet 0.7 的主要變化

  • 程式碼經過重新設計,支援Python3,確保相容於Python 3.4-3.8;
  • 實現了受保護的資料庫同步模式;
  • 在可能的情況下,第三方函式庫的主要發行版已停止,以支援外部依賴;
  • 驗證數位簽章的程式碼加速了5-10倍(使用libsecp256k1函式庫;
  • 新增了已產生憑證的隨機化以繞過過濾器;
  • P2P代碼已更新為使用ZeroNet協定;
  • 新增離線模式;
  • 新增UiPluginManager插件,用於安裝和管理第三方插件;
  • 提供對OpenSSL 1.1的全面支援;
  • 連接到對等點時,使用虛擬 SNI 和 ALPN 記錄使連線更類似於透過 HTTPS 呼叫常規網站;

ZeroNet 0.7.0 發佈同一天 形成的 更新 0.7.1,消除了可能允許在客戶端執行程式碼的危險漏洞。 由於渲染模板變數的程式碼中存在錯誤,開放的外部網站可以透過具有無限 ADMIN/NOSANDBOX 權限的 WebSocket 與客戶端系統建立連接,從而可以透過以下方式更改配置參數並在用戶電腦上執行其程式碼:使用open_browser參數進行操作。
該漏洞出現在分支 0.7 以及從修訂版開始的實驗版本中 4188 (20 天前進行的更改)。

來源: opennet.ru

添加評論