Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/lukechilds/build-output-script

Builds a P2PKH Bitcoin transaction output script
https://github.com/lukechilds/build-output-script

bitcoin cryptocurrency ledgerjs outputscript

Last synced: 5 days ago
JSON representation

Builds a P2PKH Bitcoin transaction output script

Awesome Lists containing this project

README

        

# build-output-script

> Builds a P2PKH Bitcoin transaction output script

[![Build Status](https://travis-ci.com/lukechilds/build-output-script.svg?branch=master)](https://travis-ci.com/lukechilds/build-output-script)
[![Coverage Status](https://coveralls.io/repos/github/lukechilds/build-output-script/badge.svg?branch=master)](https://coveralls.io/github/lukechilds/build-output-script?branch=master)
[![npm](https://img.shields.io/npm/v/build-output-script.svg)](https://www.npmjs.com/package/build-output-script)
[![tippin.me](https://badgen.net/badge/%E2%9A%A1%EF%B8%8Ftippin.me/@lukechilds/F0918E)](https://tippin.me/@lukechilds)

Builds a P2PKH Bitcoin transaction output script from an array of P2PKH addresses and amounts. Will also work with any Bitcoin derived cryptocurrencies with a single byte pubkey hash address prefix.

The output script is returned as a hex string and can be passed directly in to ledgerjs.

## Install

```shell
npm install build-output-script
```

## Usage

Send 1 BTC to `1LukeQU5jwebXbMLDVydeH4vFSobRV9rkj`

```js
const buildOutputScript = require('build-output-script');

buildOutputScript([{address: '1LukeQU5jwebXbMLDVydeH4vFSobRV9rkj', value: 100000000}]);
// '0100e1f505000000001976a914da6473ed373e08f46dd8003fca7ba72fbe9c555e88ac'
```

Send 1 BTC to `1LukeQU5jwebXbMLDVydeH4vFSobRV9rkj` and 1 BTC to `1BitcoinEaterAddressDontSendf59kuE`

```js
buildOutputScript([
{address: '1LukeQU5jwebXbMLDVydeH4vFSobRV9rkj', value: 100000000},
{address: '1BitcoinEaterAddressDontSendf59kuE', value: 100000000}
]);
// '0200e1f505000000001976a914da6473ed373e08f46dd8003fca7ba72fbe9c555e88ac00e1f505000000001976a914759d6677091e973b9e9d99f19c68fbf43e3f05f988ac'
```

Send 1 LTC to `Lf8hucmupbtenQ3VPdxvvJ8gTfAsaon2gf`

```js
buildOutputScript([{address: 'Lf8hucmupbtenQ3VPdxvvJ8gTfAsaon2gf', value: 100000000}]);
// '0100e1f505000000001976a914da6473ed373e08f46dd8003fca7ba72fbe9c555e88ac'
```

## API

### buildOutputScript(outputs)

Returns a (hex string) P2PKH transaction output script.

#### outputs

Type: `Array(output[, output])`

An array of one or more output objects.

##### output.address

Type: `String`

A valid P2PKH address.

##### output.value

Type: `Number`

Value to send to `address` in satoshis.

## License

MIT © Luke Childs