1txscript
2========
3
4[![Build Status](https://travis-ci.org/btcsuite/btcd.png?branch=master)](https://travis-ci.org/btcsuite/btcd)
5[![ISC License](http://img.shields.io/badge/license-ISC-blue.svg)](http://copyfree.org)
6[![GoDoc](https://godoc.org/github.com/btcsuite/btcd/txscript?status.png)](http://godoc.org/github.com/btcsuite/btcd/txscript)
7
8Package txscript implements the bitcoin transaction script language.  There is
9a comprehensive test suite.
10
11This package has intentionally been designed so it can be used as a standalone
12package for any projects needing to use or validate bitcoin transaction scripts.
13
14## Bitcoin Scripts
15
16Bitcoin provides a stack-based, FORTH-like language for the scripts in
17the bitcoin transactions.  This language is not turing complete
18although it is still fairly powerful.  A description of the language
19can be found at https://en.bitcoin.it/wiki/Script
20
21## Installation and Updating
22
23```bash
24$ go get -u github.com/btcsuite/btcd/txscript
25```
26
27## Examples
28
29* [Standard Pay-to-pubkey-hash Script](http://godoc.org/github.com/btcsuite/btcd/txscript#example-PayToAddrScript)
30  Demonstrates creating a script which pays to a bitcoin address.  It also
31  prints the created script hex and uses the DisasmString function to display
32  the disassembled script.
33
34* [Extracting Details from Standard Scripts](http://godoc.org/github.com/btcsuite/btcd/txscript#example-ExtractPkScriptAddrs)
35  Demonstrates extracting information from a standard public key script.
36
37* [Manually Signing a Transaction Output](http://godoc.org/github.com/btcsuite/btcd/txscript#example-SignTxOutput)
38  Demonstrates manually creating and signing a redeem transaction.
39
40## GPG Verification Key
41
42All official release tags are signed by Conformal so users can ensure the code
43has not been tampered with and is coming from the btcsuite developers.  To
44verify the signature perform the following:
45
46- Download the public key from the Conformal website at
47  https://opensource.conformal.com/GIT-GPG-KEY-conformal.txt
48
49- Import the public key into your GPG keyring:
50  ```bash
51  gpg --import GIT-GPG-KEY-conformal.txt
52  ```
53
54- Verify the release tag with the following command where `TAG_NAME` is a
55  placeholder for the specific tag:
56  ```bash
57  git tag -v TAG_NAME
58  ```
59
60## License
61
62Package txscript is licensed under the [copyfree](http://copyfree.org) ISC
63License.
64