# blockstack-ledger

> Simple utility for Blockstack ledger transactions

Latest version **0.9.6** (published 2018-11-16) · MIT license · 0 weekly downloads

> **Deprecated.** This package is deprecated.

## Install

```sh
npm install blockstack-ledger
pnpm add blockstack-ledger
yarn add blockstack-ledger
bun add blockstack-ledger
```

## Health

**Score 10/100 (F)** — status: deprecated.

Negative: deprecated.

## Facts

| | |
|---|---|
| Version | 0.9.6 |
| Published | 2018-11-16 |
| First published | 2018-10-02 |
| Weekly downloads | 0 |
| License | MIT |
| TypeScript types | none |
| Module format | CommonJS |
| Node | >=8 |
| Dependencies | 7 |
| Unpacked size | 96.3 KB |
| Known vulnerabilities | 0 |
| Install scripts | no |
| GitHub stars | 1 |
| Author | Blockstack PBC |
| Maintainers | ablankstein |

## Links

- npm: https://www.npmjs.com/package/blockstack-ledger
- Repository: https://github.com/blockstack/blockstack-ledger-signer
- Homepage: https://github.com/blockstack/blockstack-ledger-signer#readme
- Issues: https://github.com/blockstack/blockstack-ledger-signer/issues
- npm.io page: https://npm.io/package/blockstack-ledger

## Dependencies (7)

- [bigi](https://npm.io/package/bigi.md) ^1.4.2
- [rwlock](https://npm.io/package/rwlock.md) ^5.0.0
- [blockstack](https://npm.io/package/blockstack.md) ^18.1.0
- [babel-runtime](https://npm.io/package/babel-runtime.md) ^6.26.0
- [bitcoinjs-lib](https://npm.io/package/bitcoinjs-lib.md) ^4.0.1
- [varuint-bitcoin](https://npm.io/package/varuint-bitcoin.md) ^1.1.0
- [ablankstein-ledger-hw-app-btc](https://npm.io/package/ablankstein-ledger-hw-app-btc.md) ^4.32.0

## Recent versions

- 0.9.6 (latest) — 2018-11-16
- 0.9.5 (alpha) — 2018-11-16
- 0.9.4 — 2018-11-14
- 0.9.3 — 2018-11-14
- 0.9.2 — 2018-10-13
- 0.9.1 — 2018-10-08
- 0.9.0 — 2018-10-02

## README

## Usage

This package implements the `TransactionSigner` interface from blockstack.js
using Ledger's Bitcoin application.

This provides both single-sig and multi-sig signers.

To use:

```javascript
import { LedgerSigner } from 'blockstack-ledger'
import bsk from 'blockstack'
import Transport from '@ledgerhq/hw-transport-node-hid'

const signer = new LedgerSigner(`m/44'/88'/0'/0/1`, Transport)
bsk.makeTokenTransfer(recipientAddress, 'STACKS', BigInteger.fromHex('10'), '', signer)
    .then((signedTX) => ...)
```

## Building

This library, unfortunately, depends on a _fork_ of the Ledger Bitcoin API. This is because the original
API does not expose the ability to sign a subset of inputs in the transaction (e.g., if you want a transaction
to have three inputs, where only one of the inputs is signed by the Ledger, but the other inputs are signed by other
parties).

## Testing

Until I can figure out how to get the APDU mocking working correctly with ledgerjs, you'll need a device to
test with. That device should be initialized with this seed phrase:

```
taste wrap bright morning legend across favorite brother post umbrella cage erase
```

---
_Source: https://npm.io/package/blockstack-ledger · Machine-readable twin of the npm.io package page. Health data is recomputed on every publish._
