Cloudflare 推出分散式隨機數產生器

雲耀公司 呈現 服務 熵聯盟,為了確保組織的運作,已經組成了由幾個有興趣提供高品質隨機數的組織組成的聯盟。 與現有的中心化系統不同,熵聯盟不依賴單一來源,而是使用熵來產生隨機序列, 已收到 來自不同專案參與者控制的幾個不相關的發電機。 由於該項目的分散式性質,對一兩個來源的洩漏或篡改不會導致最終隨機數的洩漏。

應該注意的是,產生的隨機數被分類為不能用於產生加密金鑰的公開可用序列以及隨機數必須保密的區域。 該服務旨在提供無法提前預測的隨機數,但一旦生成,這些數字就會公開,包括用於檢查過去隨機值的可靠性。

公共隨機數每 60 秒產生一次。 每個數字都與其自己的序號(輪)相關聯,透過該序號,您可以隨時從任何參與的伺服器獲取曾經產生的值。 此類隨機數可用於分散式系統、加密貨幣和區塊鏈,其中不同節點必須有權存取單一隨機數產生器(例如,在生成已完成工作證明時),以及在進行各種抽獎和生成隨機數時審核通過選舉過程中的樣本。

使用該服務並部署您自己的節點 建議 工具 德蘭德,用 Go 編寫並根據 MIT 許可證發布。 Drand 以後台進程的形式運行,與參與分散式網路的外部生成器進行通信,並共同產生一個匯總隨機值。 使用下列方法產生總計值 門限密碼學 и 雙線性共軛。 可以在使用者係統上執行匯總隨機值的生成,而無需集中式聚合器的參與。

Drand 也可用於向客戶端提供本地產生的私有隨機數。 為了傳輸隨機數,使用 ECIES 加密方案,其中用戶端會產生私鑰和公鑰。 公鑰從 Drand 傳輸到伺服器。 隨機數使用給定的公鑰加密,並且只能由擁有私鑰的客戶端查看。 要存取伺服器,您可以使用“drand”實用程式(例如,“drand get public group.toml”,其中 group.toml 是要輪詢的節點清單)或 Web API(例如,您可以使用“ curl https:/ /drand.cloudflare.com /api/public" 或使用該程式庫從JavaScript 訪問 德蘭德JS)。 請求元資料以 TOML 格式傳送,回應以 JSON 格式傳回。

目前,已有五家公司和組織加入了熵聯盟計劃,並提供對其熵生成器的存取。 此專案包含的參與者位於不同的國家,使用不同的方法來取得熵:

  • 雲耀斑, 熔岩蘭德,隨機值 正在形成 基於不可預測的流體流動 熔岩燈,其圖像以 CSPRNG(加密安全偽隨機數產生器)的輸入熵提供;
  • EPFL(洛桑聯邦理工學院)、URand、
    使用標準本機產生器 /dev/urandom,它使用鍵盤輸入、滑鼠移動、流量等作為熵來源。

  • 智利大學, 智利大學,地震感測器網路被用作熵源,以及來自無線電廣播、Twitter 活動、以太坊區塊鏈的變化和自製硬體 RNG 生成器的數據;
  • Kudelski Security,ChaChaRand,提供基於 ChaCha20 密碼的 CRNG(加密隨機數產生器);
  • Protocol Labs,InterplanetaryRand,從噪音捕獲器中提取隨機數據,並與 Linux PRNG 和 CPU 內建的偽隨機數產生器結合。

目前,獨立參與者已經啟動了8 個API 的公共存取點,透過這些存取點您既可以查到目前匯總隨機數(例如「curl https://drand.cloudflare.com/api/public」),也可以確定過去某個時刻的值(“curl https://drand.cloudflare.com/api/public?round=1234”):

  • https://drand.cloudflare.com:443
  • https://random.uchile.cl:8080
  • https://drand.cothority.net:7003
  • https://drand.kudelskisecurity.com:443
  • https://drand.lbarman.ch:443
  • https://drand.nikkolasg.xyz:8888
  • https://drand.protocol.ai:8080
  • https://drand.zerobyte.io:8888

來源: opennet.ru

添加評論