Skip to content
This repository was archived by the owner on May 11, 2021. It is now read-only.

Commit

Permalink
link to rust implementation
Browse files Browse the repository at this point in the history
  • Loading branch information
keppel authored Aug 13, 2020
1 parent 9f2b523 commit 331c4d3
Showing 1 changed file with 2 additions and 38 deletions.
40 changes: 2 additions & 38 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,39 +1,3 @@
# bitcoin-peg
*Cosmos Bitcoin peg zone module for [Lotion](https://github.com/keppel/lotion) and [coins](https://github.com/mappum/coins)*
Development has moved to the Rust implementation of the Cosmos Bitcoin peg [here](https://github.com/nomic-io/nomic).

**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"](./bitcoinPeg.md) 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](https://github.com/nomic-io/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`

```js
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))
```
This repo contains the prototype JavaScript Bitcoin peg implementation and is just kept here for reference.

0 comments on commit 331c4d3

Please sign in to comment.