Skip to content

Latest commit

 

History

History
75 lines (46 loc) · 2.11 KB

README.md

File metadata and controls

75 lines (46 loc) · 2.11 KB

Blockstore: A Key-Value Store on Bitcoin

PyPI PyPI PyPI

Blockstore is a generic key-value store on Bitcoin. You can use it register globally unique names, associate data with those names, and transfer them between Bitcoin addresses.

Then, you or 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 distributed hash table for storing the full data files.

Installation

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

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

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

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

Released under the MIT License

Copyright 2015, openname.org