Distributed Web Gateway

Simplify, speed up, and secure access to both the Ethereum network and the InterPlanetary File System (IPFS)

Use Cloudflare's gateways to access the Distributed Web easily, quickly, and securely, no software required.

Serve content hosted on IPFS or interact with an Ethereum distributed app from a custom domain over HTTPs.

Distributed Web Gateway Terms of Use

space ipfs lt
IPFS
Ethereum
gateway header lt

IPFS Gateway

Browse files stored on IPFS easily and securely with Cloudflare’s Distributed Web Gateway without downloading software. Serve your own content hosted on IPFS from a custom domain over HTTPs.

InterPlanetary File System (IPFS)

ipfs space lt2

What is IPFS?

The IPFS is a distributed file storage protocol that allows computers all over the globe to store and serve files as part of a giant peer-to-peer network.

Any computer, anywhere in the world, can download the IPFS software and start hosting and serving files.

If someone runs IPFS on their computer and uploads a file to the IPFS network, that file can be viewed and downloaded by anyone else in the world who is also running IPFS.

ipfs replicate lt2

How does IPFS Work?

Distributed Computers Join the Network: Any computer can download the IPFS software and start adding and requesting files from the network.

Unique Hash Created for Every File: Every file added to IPFS is given an address derived from a hash of the file’s content. That address is like a fingerprint. It belongs uniquely to that file and will be the same, no matter where the file is stored in IPFS.

ipfs securesite lt2

Why Are People Using IPFS?

Ensure Integrity of Content

Every file on IPFS has a unique address determined by the exact bits that comprise the file. If even a single bit changes, the whole address changes. This allows the users to know for sure if a file has ever been tampered with.

Host with Redundancy

Achieve resiliency because every file on IPFS can be hosted in many different places, yet accessed from the same address. If one computer hosting the file goes offline, the network will just retrieve the file from another computer.

Browse IPFS with Cloudflare's Gateway

Generally, to access content stored on IPFS, you have to be running an IPFS node. That means downloading dedicated software and allocating local storage space on your computer. Cloudflare’s Distributed Web Gateway makes all of that unnecessary. Cloudflare’s gateway allows you to browse any file stored on the public IPFS network by going to cloudflare-ipfs.com/

No need to download anything. No need to give up local storage space. It all happens in your browser.

global distribution lt

Faster Access

Cloudflare’s gateway helps speed up delivery of IPFS content. By caching IPFS content in our 200+ data centers, Cloudflare can deliver content requested through our gateway from a data center near you.

fingerprint verified lt

Built in Security

For each file that Cloudflare’s gateway requests on your behalf, we check the hash of the file to ensure that the content hasn’t been modified in transit. Our gateway also serves all content over HTTPS, protecting it from manipulation.

Learn How to Connect Your Website to IPFS

Curious about what types of content you can run on IPFS? Click here to go to an example.

If you want to put your own files on IPFS, go to the Developer Docs to learn how.

Connecting Your Website

If you have content stored in IPFS that you want to serve from a custom domain name, you can do so in just a few minutes using this gateway. All you need is a domain name you own, access to your DNS records, and the hash of the content stored on IPFS. More in-depth instructions, including how to get your content onto IPFS in the first place, can be found in our developer documentation.

Here are the key steps to take:

  1. Go to your DNS settings for your domain. If your website is on Cloudflare, the DNS settings are accessible from your dashboard. If your website is not on Cloudflare, and you need help finding the DNS records, look here .
  2. Add a CNAME record from your domain (e.g. www.example.com) to cloudflare-ipfs.com. Note: if your website is on Cloudflare, the little cloud next to this record will automatically turn gray. Because you’ve CNAME’d to our gateway, you’ll automatically receive Cloudflare's enterprise-level performance and security enhancements, but you won’t be able to control those settings yourself.
  3. Add a TXT record with the name _dnslink.your.website and value dnslink=/ipfs/<your_ipfs_hash_here>
    1. If your website is on Cloudflare, then you're done! If not, proceed to the next steps.
    2. Once you have added those records, type your domain name (e.g. www.example.com) into the text box below and click Submit.
    3. This will generate an SSL certificate, which will allow traffic from your domain to be served securely over HTTPS. Be prepared to wait up to 90 seconds. You will receive a confirmation message when the certificate has been successfully issued. When you see that message the certificate has been issued, and any request to https://www.example.com will automatically resolve to https://cloudflare-ipfs.com/ipfs/<your_ipfs_hash_here>.

Distributed Web Gateway Terms of Use

ethereum Gateway 2x

What is the Ethereum Gateway?

The Cloudflare Ethereum Gateway will provide access to the Ethereum network that you can provision through your own custom hostname. Using the gateway, users can add interactive elements to sites powered by Ethereum smart contracts, a decentralized compute platform.

Moreover, in conjunction with Cloudflare's IPFS gateway, users can host websites and other resources in a decentralized manner. This, with the added speed, security and reliability provided by the Cloudflare global network.

What is Ethereum?

Ethereum is a distributed, virtual compute network that stores and enforces policies defined by smart contracts. The Ethereum network is made up of many globally distributed nodes that build a consensus in the form of a blockchain, based on the transfer and execution of currency

Anyone, anywhere can become a node on the Ethereum network by simply running a compatible Ethereum daemon such as https://github.com/ethereum/go-ethereum.

Any transaction created by an individual is verified and agreed upon by the entire network, and becomes part of the global consensus.

How does Ethereum work?

Any user that joins the network can start performing transactions and running/writing smart contracts. Whatever the results, these will be added to the global consensus on the Ethereum blockchain.

Every transaction that takes place is identified with a block that joins the blockchain. Each block and transaction have a unique identifier that enable them to be read by any node on the network.

Once something is written onto the blockchain, it stays there forever. This provides a historical reference at which this piece of data will always be available.

Why are people using Ethereum?

The Ethereum network represents a huge decentralized computing platform, with expressive policies and programs that are run as smart contracts.

  • Integrity and resiliency of content: The advantage of this approach is that any change to the network is agreed upon by all nodes on the network and added to the blockchain. This means that there is no way of subverting the trust of the system without compromising a huge number of globally distributed nodes.

  • A new computing paradigm: The Ethereum network is growing rapidly, and represents a new approach in how large distributed systems and computing platforms can be built.

Interact with the Ethereum network using Cloudflare's gateway

Instead of running your own node that connects to the Ethereum network, which can be difficult and costly, connect to Cloudflare's distributed web gateway instead! The Cloudflare Ethereum gateway allows anyone to get access to the Ethereum network. This includes viewing the current state of the network and supplying their own transactions to be added to the consensus.

All connections with the network take place in the browser, nothing needs to run on your local machine.

  • Fast Access: Benefit from Cloudflare's global edge network to reach the Ethereum network. We use the power of Cloudflare's global cache to speed up all responses from our gateway. We use our own product Argo Tunnel to speed up the routing of your queries across our network. This means that you can interact with the network from a data center close by, rather than a node that is thousands of miles anyway.

  • Built-in Security: All communication with the Ethereum gateway is encrypted as it takes place over HTTPS. Traffic between the Cloudflare edge and the gateway is protected using Argo Tunnel.

  • Simply JSON: All queries to the Ethereum network are simply JSON structs. See the Developer Docs for a list of the supported API for the Cloudflare gateway. A full description of the official API is also available here.

Learn how to connect to the network

It is now possible to connect your website to the Cloudflare Ethereum gateway and bring the Ethereum network closer to your own website's visitors. After you connect your website to the Ethereum gateway, visitors will be able to access the Ethereum network through your domain. All you need to get started is a domain that you own!

These are the steps to get started:

  • Go to your DNS settings for your domain. If your website is on Cloudflare, the DNS settings are accessible from your dashboard. If your website is not on Cloudflare, and you need help finding the DNS records, see here.
  • Add a CNAME record from your domain (e.g. www.example.com) to cloudflare-eth.com Note: if your website is on Cloudflare, the little cloud next to this record will automatically turn gray. Because you’ve CNAME’d to our gateway, you’ll automatically receive Cloudflare's enterprise-level performance and security enhancements, but you won’t be able to control those settings yourself.
  • Once you have added those records:
  • Type your domain name (e.g. www.example.com) into the text box below and click "Submit".
  • This will generate an SSL certificate, which will allow traffic from your domain to be served securely over HTTPS. Be prepared to wait up to 90 seconds. You will receive a confirmation message when the certificate has been successfully issued. When this has been issued, then any Ethereum RPC query to your website will automatically resolve to https://cloudflare-eth.com/ and the response will be served from the Ethereum network.