Jude Nelson 47ecd65c37 In-progress refactoring: using virtualchain with a state engine.
* lib --> lib.old (depricating old name and storage operations)
* lib: new state-engine name operations logic, with virtualchain
* remove dead code
* add patch for coinkit
* remove dependencies on coinkit (in the new lib/)
Much more to do--will eventually remove lib.old, and will migrate
some of this code over to blockstore-client.
2015-08-04 02:25:39 -04:00
2015-06-16 11:30:55 -04:00
2015-03-31 15:22:48 -04:00

Blockstore: A Key-Value Store on Bitcoin

Latest Version Downloads License

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

pip install blockstore

Getting Started

First, 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

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