Muneeb Ali 4074333ea5 Merge pull request #121 from blockstack/dht
use new version of virtualchain
2015-09-20 19:23:22 -04:00
2015-09-08 17:48:51 -04:00
2015-09-18 16:24:19 -04:00
2015-06-16 11:30:55 -04:00
2015-08-11 14:53:29 -04:00

Blockstore: Name Registrations on the Bitcoin Blockchain

PyPI PyPI Slack

Blockstore enables human-readable name registrations on the Bitcoin blockchain, along with the ability to store associated data in external datastores. You can use it to register globally unique names, associate data with those names, and transfer them between Bitcoin addresses. Anyone can perform lookups on those names and securely obtain the data associated with them.

Blockstore uses the Bitcoin blockchain for storing name operations and data hashes, and the Kademlia-based distributed hash table (DHT) and other external datastores for storing the full data files outside of the blockchain.

Installation

NOTE: This repo is going through rapid development for a planned release on Sep 24, 2015. If you notice any issues during installation etc please report them in Github issues. We hope to have a stable, easy to install, version out very soon!

The fastest way to get started with blockstore is to use a docker image:

docker run -it --entrypoint=/bin/bash blockstack/blockstored

(currently installs v0.0.3, see note about next release above)

The docker image comes pre-populated with a snapshot that was processed till a recent block and you won't have to process all the blocks yourself (takes time). Alternatively, you can install a version on your machine directly:

pip install blockstore

(currently installs v0.0.3, see note about next release above)

Getting Started

Start blockstored and index the blockchain:

$ blockstored start

Then, perform name lookups:

$ blockstore-cli lookup swiftonsecurity
{
    "data": "{\"name\":{\"formatted\": \"Taylor Swift\"}}"
}

Next, learn how to register names of your own, as well as transfer them and associate data with them:

Full usage docs

Design

Design decisions

Protocol details

Definitions

FAQ

Contributions

The best way to contribute is to:

  1. decide what changes you'd like to make (you can find inspiration in the tab of issues)
  2. fork the repo
  3. make your changes
  4. submit a pull request

Code contributors

Full contributor list

License

GPL v3. See LICENSE.

Copyright: (c) 2015 by Blockstack.org

Description
No description provided
Readme GPL-3.0 130 MiB
Languages
Rust 94.6%
Clarity 2.4%
TypeScript 2.3%
Shell 0.5%