How to Publish a Website on OpenWeb Network

OpenWeb Team
OpenWeb Network
Published in
4 min readMar 20, 2019

OpenWeb Network is the decentralized internet built on Ethereum Blockchain. Since centralized authorities do not control it, the OpenWeb protocol deploys measures to ensure security and integrity of the website published on the network. Anyone with the basic knowledge of development/coding can publish a website on the OpenWeb network. Additionally, we are in the process of developing and integrating an enhanced and more user-friendly interface that will further simplify the process of publishing a website on OpenWeb Network.

As of now, anyone who wishes to publish a website on OpenWeb Network can do so by following these steps:

Step 1: Register a domain

Step 2: Create a Git Repo

Step 3: Install a File Hash Server

Step 4: Submit Information on openweb.network

Register a domain

Firstly, You need to have a domain on OpenWeb Network before publishing a website. If you already have a domain registered on OpenWeb Network, you can skip this step. If not, continue reading.

To register a domain, the users need to:

  1. Send/transfer required number of OWTs from their address to the OpenWeb Network Smart Contract (0x68fcb1f0d07000a84b569ccb647dd8fe320cddaa) for registering a domain and publishing website.
  2. Search for the available domain and register a domain on OpenWeb Network using OWTs.

Here is a detailed step by step video on ‘How to register a domain on OpenWeb Network.’

Create a Git Repo

The users need to create a Git Repository where they need to upload all the files of the website. Click here to see a sample Git Repo.

To get more information on creating a repository on Github, visit https://help.github.com/en/articles/create-a-repo

Install Openweb Fileshash Server

A user who is publishing the website on the OpenWeb Network needs to provide hashes of the root file and internal files. Since the published website is going to be saved on a distributed network of nodes and would be shared peer-to-peer, the hashes will allow the visitor to identify whether the shared website files have been changed or not. This will help in verifying the integrity of the website and ensure that the correct version of the website is delivered to the visitor when they request a host for the website.

Every time a user requests a website from the host, the browser extension matches the hash of files delivered with that from the ones saved on the blockchain. If the filehash matches then the user is delivered the content and in case there is a discrepancy, the content is not delivered to the user.

To generate hashes of the website files, the user needs to install File Hash Server (Node.js) by following these steps:

  1. Clone OpenWeb FilesHash Repository as shown in below images by utilizing this link https://github.com/openweb-network/fileshash-nodejs

2. Install Fileshash, as shown below

3. Run this command: node app.js /path/to/html/directory. The maximum file size allowed in 20mb. The total number of files that can be hashed in one lot is 20.

Copy and save the above hashes in a text editor.

Submit Information on openweb.network

After completing the steps mentioned above successfully and creating the hashes of your website file, follow the steps below to complete the website publishing process:

  1. Visit openweb.network and click on ‘Publish a Website.’
  2. Enter the following information as shown in the image below

i. Domain Name

ii. Git Repo URL

iii. Files Hash

3. Ensure that you have sent the required number of OWTs to the OpenWeb Network Smart Contract and click ‘Publish Website.’

The hashes of the website files will get immutably stored on the Ethereum Blockchain. To make any changes in the file, the user needs to update the hashes of the file and perform a transaction on the Blockchain. The distributed hosts will update the information on the newly published website.

Note: Ensure that you have sent the required number of OWTs to the OpenWeb Network Smart Contract before performing any transaction.

--

--