Skip to content

Lexicographical Indexing of Transaction Inputs and Outputs

License

Notifications You must be signed in to change notification settings

bitcoinjs/bip69

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

54 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

bip69

NPM Package Build Status

js-standard-style

Lexicographical Indexing of Transaction Inputs and Outputs.

See BIP69.

* Works only with node.js 0.11 or greater (because require Buffer.compare)

Example

var bitcoinjs = require('bitcoinjs-lib')
var bip69 = require('bip69')

var inputs = [{
	"txId": "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
	"vout": 0
}, ...]
var outputs = [{
	"script": new Buffer("76a9145be32612930b8323add2212a4ec03c1562084f8488ac", "hex"),
	"value": 40000000000
}, ...]

// ...

var sortedInputs = bip69.sortInputs(inputs)
var sortedOutputs = bip69.sortOutputs(outputs)

var txb = new bitcoinjs.TransactionBuilder()

sortedInputs.forEach(function (input) {
	txb.addInput(input.txId, input.vout)
})

sortedOutputs.forEach(function (output) {
	txb.addOutput(bitcoinjs.Script.fromBuffer(output.script), output.value)
})

// ... and so on

LICENSE MIT

About

Lexicographical Indexing of Transaction Inputs and Outputs

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published