bitcoin-peg

    1.6.3 • Public • Published

    bitcoin-peg

    Cosmos Bitcoin peg zone module for Lotion and coins

    This module is currently under active development but works as a fully-functional prototype on top of Bitcoin testnet.

    This module implements a simplified version of the "Proof-of-Stake Bitcoin Sidechains" design. It works by holding Bitcoin in a special script which is a multisig spendable by consensus of the validators of a Tendermint blockchain.

    This module can be dropped in to any Lotion app to enable the chain to hold reserves of Bitcoin, accept deposits, or pay out withdrawals in a low-trust manner. In addition, it lets the chain timestamp itself on the Bitcoin blockchain, increasing security of the chain by utilizing Bitcoin's proof-of-work.

    Usage

    npm install bitcoin-peg

    let app = lotion()
     
    // create a token using `coins` to be pegged to Bitcoin
    app.use('pbtc', coins({
      handlers: {
        bitcoin: bitcoin.coinsHandler('bitcoin')
      }
    }))
     
    // pick a Bitcoin (or testnet) block header to use as the checkpoint
    let checkpoint = {
      version: 1073733632,
      prevHash: Buffer.from('0000000000000113d4262419a8aa3a4fe928c0ea81893a2d2ffee5258b2085d8', 'hex').reverse(),
      merkleRoot: Buffer.from('baa3bb3f4fb663bf6974831ff3d2c37479f471f1558447dfae92f146539f7d9f', 'hex').reverse(),
      timestamp: 1544602833,
      bits: 0x1a015269,
      nonce: 3714016562,
      height: 1447488
    }
     
    // keep track of the Bitcoin blockchain, and specify the route of the pegged token
    app.use('bitcoin', bitcoin(checkpoint, 'pbtc'))
     
    app.start()
      .then((res) => console.log(res))

    Keywords

    none

    Install

    npm i bitcoin-peg

    DownloadsWeekly Downloads

    0

    Version

    1.6.3

    License

    MIT

    Unpacked Size

    39 kB

    Total Files

    11

    Last publish

    Collaborators

    • mappum