The next gen colored coin client

killerstorm edited this page Jun 24, 2013 · 3 revisions

Features

Existing colored coin clients: WebcoinX, ArmoryX, bitpaint.py.

We need to develop a new one which:

  • will be flexible and versatile
  • can work in stand-alone configuration, but also can be sped up with help of 'server'
  • provide an API for other applications to connect to, or work as a library
  • (relatively) high performance
  • stable, safe, secure
  • (relatively) low overhead (compared to Armory which requires gigabytes of RAM)

General approach

There are several possible software platforms we can use:

  • modification of bitcoind
  • a stand-alone wallet which will connect to bitcoind (preferrably C++ or Python)
  • C++ library which can be used either by standalone client or integrated into existing one

Components

If we are going to develop a stand-alone application, it would have following components (approximately):

  1. [colored coin store](NGCCC colored coin store): keep information about colored transaction outputs
  2. [transaction representation, parsing](NGCCC transactions)
  3. [interactions with bitcoind](NGCCC bitcond access)
  4. [coloring kernel](NGCCC coloring kernels)
  5. [import/verification](NGCCC import) (when you download history from external source, we need to run verification and fill our colored coin store)
  6. [high-level coloring logic](NGCCC coloring logic): maintain the state, get info about new transactions, etc.
  7. [wallet](NGCCC wallet)
  8. [API](NGCCC API)
  9. [color definition management](NGCCC colordef management)
  10. [GUI](NGCCC GUI)
  11. [p2p trade](NGCCC p2ptrade)
You can’t perform that action at this time.
You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session.
Press h to open a hovercard with more details.