npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

cosign

v0.2.1

Published

Bitcoin Transaction Tool

Downloads

15

Readme

Build bitcoin transactions

Usage: cosign [options] COMMAND [command parameters]

Options: -f, --file Load/store transaction state to/from FILE

Theory of operation

All operation revolves around an internal database, which is modified via execution of a command operation: 1. cosign reads transaction state file (JSON). Default "txstatedb.json". 2. cosign executes command given on command line, updating transaction state. 3. cosign writes transaction state file, overwriting previous version.

"transaction state" is anything involving the given transaction being built, examined or modified.

A session begins when a new database is initialized, using the "init" command.

Dependencies

node.js -- http://nodejs.org/

node modules ("npm install $module_name"): optimist libcoin -- https://github.com/gasteve/node-libcoin

cosign command summary

If the command notes "(RPC)", that indicates bitcoind wallet and RPC are used. If the command notes "(JSON)", that indicates a local, AES-encrypted JSON wallet file is used.

clean Remove transaction state database, and any associated temporary files.

dump Inspect transaction state database.

help List this command summary.

init Initialize new transaction state database.

inputs TXID1 VOUT1 TXID2 VOUT2... Raw transaction building. Append to list of TX inputs.

inputs.clear Clear list of TX inputs.

multisig N-REQUIRED KEY1 KEY2 KEY3... Begin new multi-sig tx

nreq N-REQUIRED Specify number of sigs required for a multisig tx

outputs ADDRESS1 VALUE1 ADDRESS2 VALUE2... Raw transaction building. Append to list of TX outputs.

outputs.clear Clear list of TX outputs.

pubkey.get ADDRESS

Obtain full pubkey, given bitcoin address (pubkey hash),
from bitcoind wallet (RPC) or local wallet file (JSON).

pubkeys KEY1 KEY2 KEY3... Append to list of pubkeys / bitcoin addresses

pubkeys.clear Clear list of pubkeys.

raw SERIALIZED-TX Input serialized transaction from command line

raw.append FILE Append FILE to in-memory serialized transaction data.

raw.clear Clear serialized tx data.

raw.create create raw transaction, given inputs and outputs.

raw.decode (RPC) decode raw transaction to readable JSON object.

raw.get TXID (RPC) get raw transaction, given hash txid.

raw.read FILE Input serialized transaction from file.

raw.send (RPC) broadcast raw transaction to network, returning a transaction id.

raw.sign [anyonecanpay] (RPC) sign raw transaction, if possible. Uses keys in bitcoind's wallet.

If the optional argument "anyonecanpay" is supplied,
outputs are locked, but third party inputs may change.

raw.write FILE Output serialized transaction to file.

wallet.msig (RPC, JSON) Commit in-memory multisig data (N-Required, Keys) to wallet, returning a multisig payment address.

Encryption (walletpassphrase) note

The user is expected to authenticate with bitcoind RPC prior to using this tool, if this tool will require access to private keys for the operation (e.g. signing).