From 5d5cf40586731cc4112ccd03f7872e8deb110ae4 Mon Sep 17 00:00:00 2001 From: Daniel Quinn Date: Wed, 18 Feb 2015 15:45:08 +0100 Subject: [PATCH] Cleaned up some of the language Some of the English wasn't quite right, so I thought you'd appreciate some fixes. I've also added syntax highlighting for the bash code blocks, and switched out the use of `-` to use the more-common `*` for bulletted lists. Lastly, I fixed some spelling. --- README.md | 112 +++++++++++++++++++++++++++++++++--------------------- 1 file changed, 69 insertions(+), 43 deletions(-) diff --git a/README.md b/README.md index b58fc90a..8b58077f 100644 --- a/README.md +++ b/README.md @@ -1,22 +1,34 @@ # ZeroNet -Decentralized websites using Bitcoin crypto and BitTorrent network +Decentralized websites using Bitcoin crypto and the BitTorrent network ## Why? - - We believe in open, free and uncensored network and communication. - - No single point of failure: Site goes on until at least 1 peer serving it. - - No hosting costs: Site served by visitors. - - Impossible to shut down: It's nowhere because it's everywhere. - - Fast and works offline: You can access the site even if your internet is gone. + +* We believe in open, free, and uncensored network and communication. +* No single point of failure: Site remains online so long as at least 1 peer + serving it. +* No hosting costs: Sites are served by visitors. +* Impossible to shut down: It's nowhere because it's everywhere. +* Fast and works offline: You can access the site even if your internet is + unavailable. ## How does it work? - - After starting `zeronet.py` you will be able to visit zeronet sites using http://127.0.0.1:43110/{zeronet_address} (eg. http://127.0.0.1:43110/1EU1tbG9oC1A8jz2ouVwGZyQ5asrNsE4Vr). - - When you visit a new zeronet site, it's trying to find peers using BitTorrent network and download the site files (html, css, js...) from them. - - Each visited sites become also served by You. - - Every site containing a `site.json` which holds all other files sha512 hash and a sign generated using site's private key. - - If the site owner (who has the private key for the site address) modifies the site, then he/she signs the new `content.json` and publish it to the peers. After the peers have verified the `content.json` integrity (using the sign), they download the modified files and publish the new content to other peers. + +* After starting `zeronet.py` you will be able to visit zeronet sites using + `http://127.0.0.1:43110/{zeronet_address}` (eg. + `http://127.0.0.1:43110/1EU1tbG9oC1A8jz2ouVwGZyQ5asrNsE4Vr`). +* When you visit a new zeronet site, it tries to find peers using the BitTorrent + network so it can download the site files (html, css, js...) from them. +* Each visited site becomes also served by you. +* Every site contains a `site.json` which holds all other files in a sha512 hash + and a signature generated using site's private key. +* If the site owner (who has the private key for the site address) modifies the + site, then he/she signs the new `content.json` and publishes it to the peers. + After the peers have verified the `content.json` integrity (using the + signature), they download the modified files and publish the new content to + other peers. ## Screenshot @@ -25,39 +37,45 @@ Decentralized websites using Bitcoin crypto and BitTorrent network ## How to join? -Windows: - - [Install Python 2.7](https://www.python.org/ftp/python/2.7.9/python-2.7.9.msi) - - [Install Python ZeroMQ](http://zeronet.io/files/windows/pyzmq-14.4.1.win32-py2.7.exe) - - [Install Python Greenlet](http://zeronet.io/files/windows/greenlet-0.4.5.win32-py2.7.exe) - - [Install Python Gevent](http://zeronet.io/files/windows/gevent-1.0.1.win32-py2.7.exe) - - [Install Python MsgPack](http://zeronet.io/files/windows/msgpack-python-0.4.2.win32-py2.7.exe) - - start `start.py` -Linux (Debian): - - `apt-get install python-pip` - - `pip install pyzmq` (if it drops a compile error then run `apt-get install python-dev` and try again) - - `pip install gevent` - - `pip install msgpack-python` - - start using `python zeronet.py` +### Windows -Linux (Without root access): - - `wget https://bootstrap.pypa.io/get-pip.py` - - `python get-pip.py --user pyzmq gevent msgpack-python` - - start using `python zeronet.py` +* [Install Python 2.7](https://www.python.org/ftp/python/2.7.9/python-2.7.9.msi) +* [Install Python ZeroMQ](http://zeronet.io/files/windows/pyzmq-14.4.1.win32-py2.7.exe) +* [Install Python Greenlet](http://zeronet.io/files/windows/greenlet-0.4.5.win32-py2.7.exe) +* [Install Python Gevent](http://zeronet.io/files/windows/gevent-1.0.1.win32-py2.7.exe) +* [Install Python MsgPack](http://zeronet.io/files/windows/msgpack-python-0.4.2.win32-py2.7.exe) +* Start `start.py` +### Linux + +#### Debian + +* `apt-get install python-dev python-pip` +* `pip install pyzmq gevent msgpack-python` +* Start with `python zeronet.py` + +#### Without root access + +* `wget https://bootstrap.pypa.io/get-pip.py` +* `python get-pip.py --user pyzmq gevent msgpack-python` +* Start with `python zeronet.py` ## Current limitations - - No torrent-like, file splitting big file support - - Just as anonymous as the bittorrent - - File transactions not compressed or encrypted yet - - No private sites - - You must have an open port to publish new changes - - Timeout problems on slow connections + +* No torrent-like, file splitting for big file support +* Just as anonymous as the Bittorrent +* File transactions are not compressed or encrypted yet +* No private sites +* You must have an open port to publish new changes +* Timeout problems on slow connections ## How can I create a ZeroNet site? + Shut down zeronet if you are running it already -``` + +```bash $ zeronet.py siteCreate ... - Site private key: 23DKQpzxhbVBrAtvLEc2uvk7DZweh4qL3fn3jpM3LgHDczMK2TtYUq @@ -67,27 +85,35 @@ $ zeronet.py siteCreate $ zeronet.py ... ``` -Congratulations, you are done! Now anyone can access your site using http://localhost:43110/13DNDkMUExRf9Xa9ogwPKqp7zyHFEqbhC2 + +Congratulations, you're finished! Now anyone can access your site using +`http://localhost:43110/13DNDkMUExRf9Xa9ogwPKqp7zyHFEqbhC2` Next steps: [ZeroNet Developer Documentation](https://github.com/HelloZeroNet/ZeroNet/wiki/ZeroNet-Developer-Documentation) ## How can I modify a ZeroNet site? -- Modify files located in data/13DNDkMUExRf9Xa9ogwPKqp7zyHFEqbhC2 directory. After you done: -``` + +* Modify files located in data/13DNDkMUExRf9Xa9ogwPKqp7zyHFEqbhC2 directory. + After you're finished: + +```bash $ zeronet.py siteSign 13DNDkMUExRf9Xa9ogwPKqp7zyHFEqbhC2 - Signing site: 13DNDkMUExRf9Xa9ogwPKqp7zyHFEqbhC2... Private key (input hidden): ``` -- Enter your private key you got when created the site, then: -``` + +* Enter the private key you got when created the site, then: + +```bash $ zeronet.py sitePublish 13DNDkMUExRf9Xa9ogwPKqp7zyHFEqbhC2 ... Site:13DNDk..bhC2 Publishing to 3/10 peers... Site:13DNDk..bhC2 Successfuly published to 3 peers - Serving files.... ``` -- That's it! You successfuly signed and published your modifications. + +* That's it! You've successfully signed and published your modifications. ## If you want to help keep this project alive @@ -97,5 +123,5 @@ Bitcoin: 1QDhxQ6PraUZa21ET5fYUCPgdrwBomnFgX #### Thank you! -- More info, help, changelog, zeronet sites: http://www.reddit.com/r/zeronet/ -- Come, chat with us: [#zeronet @ FreeNode](https://kiwiirc.com/client/irc.freenode.net/zeronet) +* More info, help, changelog, zeronet sites: http://www.reddit.com/r/zeronet/ +* Come, chat with us: [#zeronet @ FreeNode](https://kiwiirc.com/client/irc.freenode.net/zeronet)