dcrd/txscript
Dave Collins 9817166145
secp256k1: Never fail signing.
This modifies the deterministic nonce generation via RFC6979 to accept
an additional parameter for the number of extra iterations to perform to
ensure a stream of deterministic nonces can be generated if needed.

It then updates the signing for both ECDSA and Schnorr to make use of
the new parameter to increment the iteration in the unlikely event a
returned nonce results in an invalid signature so that it will always
generate a valid signature.

Finally, it removes the error return from Sign since it can no longer
fail.
2020-01-31 11:51:27 -06:00
..
data multi: Correct typos. 2019-08-16 17:37:58 -05:00
bench_test.go txscript: Use dcrutil/v2. 2019-06-24 15:13:39 -05:00
consensus_test.go multi: Break coinbase dep on standardness rules. 2018-05-08 12:49:40 -05:00
consensus.go blockchain: Do coinbase nulldata check locally. 2019-06-19 13:26:33 -05:00
doc.go multi: Correct typos. 2019-08-16 17:37:58 -05:00
engine_test.go multi: remove whitespace 2019-11-21 18:31:30 -06:00
engine.go secp256k1: Start v3 module dev cycle. 2020-01-29 13:45:59 -06:00
error_test.go txscript: Introduce zero-alloc script tokenizer. 2019-03-26 14:50:56 -05:00
error.go multi: Correct typos. 2019-08-22 10:20:03 -05:00
example_test.go secp256k1: Start v3 module dev cycle. 2020-01-29 13:45:59 -06:00
go.mod secp256k1: Start v3 module dev cycle. 2020-01-29 13:45:59 -06:00
go.sum chaincfg: Start v3 module dev cycle. 2020-01-29 13:24:14 -06:00
log.go txscript: Remove DisableLog. 2019-06-24 15:13:30 -05:00
opcode_test.go txscript: Make op callbacks take opcode and data. 2019-03-26 14:55:46 -05:00
opcode.go secp256k1: Start v3 module dev cycle. 2020-01-29 13:45:59 -06:00
README.md build: Replace TravisCI with CI via Github actions. 2019-09-20 19:59:04 -05:00
reference_test.go multi: remove whitespace 2019-11-21 18:31:30 -06:00
script_test.go multi: remove whitespace 2019-11-21 18:31:30 -06:00
script.go multi: Correct typos. 2019-08-16 17:37:58 -05:00
scriptbuilder_test.go multi: remove whitespace 2019-11-21 18:31:30 -06:00
scriptbuilder.go txscript: code cleanup 2019-02-08 09:18:53 -05:00
scriptnum_test.go txscript: Remove script num require minimal flag. 2018-07-02 12:14:15 -05:00
scriptnum.go multi: remove whitespace 2019-11-21 18:31:30 -06:00
sigcache_test.go secp256k1: Never fail signing. 2020-01-31 11:51:27 -06:00
sigcache.go secp256k1: Start v3 module dev cycle. 2020-01-29 13:45:59 -06:00
sighash_test.go txscript: Decouple and optimize sighash calc. 2018-05-01 08:51:41 -05:00
sighash.go multi: Correct typos. 2019-08-16 17:37:58 -05:00
sign_test.go secp256k1: Remove unused chainec code. 2020-01-31 11:46:07 -06:00
sign.go secp256k1: Never fail signing. 2020-01-31 11:51:27 -06:00
stack_test.go multi: Correct typos. 2019-08-16 17:37:58 -05:00
stack.go txscript: code cleanup 2019-02-08 09:18:53 -05:00
standard_test.go secp256k1: Start v3 module dev cycle. 2020-01-29 13:45:59 -06:00
standard.go secp256k1: Start v3 module dev cycle. 2020-01-29 13:45:59 -06:00
tokenizer_test.go multi: Correct typos. 2019-08-16 17:37:58 -05:00
tokenizer.go multi: remove whitespace 2019-11-21 18:31:30 -06:00

txscript

Build Status ISC License GoDoc

Package txscript implements the Decred transaction script language. There is a comprehensive test suite.

This package has intentionally been designed so it can be used as a standalone package for any projects needing to use or validate Decred transaction scripts.

Decred Scripts

Decred provides a stack-based, FORTH-like language for the scripts in the Decred transactions. This language is not turing complete although it is still fairly powerful.

Installation and Updating

$ go get -u github.com/decred/dcrd/txscript

Examples

License

Package txscript is licensed under the copyfree ISC License.