Cloudflare Web3 是 Cloudflare 推出的一項功能,旨在為使用區塊鏈技術的應用程序提供更好的安全性和可靠性。該功能為開發人員提供了一個基於 Web3 的開發平台,支援 Ethereum 和 IPFS 等區塊鏈網路。
使用 Cloudflare Web3,開發人員可以使用 Web3 的常用工具來開發和部署區塊鏈應用程序,包括 Solidity 和 Truffle 等開發工具。Cloudflare Web3 還提供了一個去中心化的執行環境,使開發人員可以在無需擔心服務器組態和管理的情況下快速啟動應用程序。
另外,Cloudflare Web3 還提供了一個基於 IPFS 的去中心化內容傳遞網路,該網路使用 IPFS 技術存儲和傳輸數據,使開發人員可以快速構建基於 IPFS 的應用程序,同時提高了可靠性和安全性。
Cloudflare IPFS
之前我 有寫過一篇文章介紹 IPFS是什麼,可以先看過後會更好理解,除了免費的 Public Gateway 外,Cloudflare 也提供付費的私有 Gateway。
目前 Cloudflare 在付費 IPFS 上提供兩個功能 DNSLink gateway 與 Universal Path gateway,前者用於將已經上傳到 IPFS 的檔案掛載到網域上,後者為架設一個公用的 gateway,可用於任何網域上。
由於目前 Cloudflare 沒有提供上傳檔案到 IPFS 的功能,他只能從其他節點拉取檔案,因此當我們需要部署網站到 IPFS 的時候需要自行架設 IPFS 節點,或是另外找平台上傳,如 Pinata。希望 Cloudflare 未來趕緊推出上傳用的節點。

DNSLink Gateway
現在展示如何將上傳到 IPFS 檔案部署到我自己的網域,先到 Cloudflare Dashboard 選擇「Web3」選擇「建立閘道」。
在主機名稱輸入目標網域,閘道類型選擇「IPFS DNSLink」,DNSLink 目標可以輸入 IPFS 的 CID 或 IPNS,如 /ipns/moda.gov.tw、/ipfs/

Universal Path Gateway
Universal Path Gateway 可以建立一個公開用的 IPFS Gateway,允許訪問任何其他 IPFS Domain。先到 Cloudflare Dashboard 選擇「Web3」選擇「建立閘道」。
在主機名稱輸入目標網域,閘道類型選擇「IPFS 通用路徑」,這樣就完成了。
以下圖為例,使用gateway.example.com,當其他人要訪問 IPFS 就可以訪問 https://gateway.example.com/ipns/

自動化更新
當我們要更新某個 IPFS 網域的內容,需要先將檔案上傳到 IPFS 節點,再來要更新 DNS 紀錄,可以透過 ipfs-deploy 的指令,將檔案上傳到 Pinata 等站台,再自動更新 Cloudflare DNS 紀錄。

結語
Cloudflare Web3 提供了一個完整的開發平台,使開發人員可以快速建立安全、可靠的區塊鏈應用程序,同時降低了開發和部署的複雜度。
▶ 閱讀更多本系列文:30 天入門 Cloudflare