Commit graph

47 commits

Author SHA1 Message Date
Nodari Chkuaselidze
8fcfa1a591
types: update primitives, coins, script and covenants. 2024-09-28 18:24:51 +04:00
Christopher Jeffrey (JJ)
1286e582cd
Merge pull request #198 from tynes/sighash-singlereverse
sighash `singlereverse`
2019-07-31 17:41:31 -07:00
Matthew Zipkin
580a9b2286
script: [consensus] remove OP_CHECKOUTPUT and OP_CHECKOUTPUTVERIFY 2019-07-29 11:09:08 -07:00
Mark Tyneway
779e314dcb
script: sighash SINGLEREVERSE
Implement a new sighash type SINGLEREVERSE. This
sighash type is similar to SINGLE, but is different
because instead of committing to the same output
index as the input's index being signed, it commits
to the index at (outputs.length-1) - index.

If the first input was signed with SINGLEREVERSE,
then it would only commit to the final output.
This is useful because covenants are "linked", so
that the next covenant in the series must be at the
same index as the input. This new sighash type allows
a user to commit to the covenant input but not the
output for that covenant.

This is a building block for atomic name swaps on chain.
2019-06-21 11:33:30 -06:00
Christopher Jeffrey
a03fcd1a23
pkg: rename to hsd. 2018-08-01 20:00:09 -07:00
Christopher Jeffrey
169da98147
pkg: update deps. remove build. 2018-07-19 05:40:48 -07:00
Christopher Jeffrey
f3db8d8c39
hskd: update links. 2018-06-08 07:13:46 -07:00
Christopher Jeffrey
05bfd80a73
rules: remove cold output. 2018-04-25 20:01:06 -07:00
Christopher Jeffrey
16247a8451
covenants: include old revocation system. 2018-03-11 17:46:38 -07:00
Christopher Jeffrey
d1a6e7a666
script: switch back to bitcoin opcodes for better cross-chain. 2018-03-02 20:14:43 -08:00
Christopher Jeffrey
e8c2337fbe
hsk: update copyright. 2018-02-01 13:40:45 -08:00
Christopher Jeffrey
c090793e79
hsk: rename to hsk. 2018-02-01 13:28:31 -08:00
Christopher Jeffrey
ba144845ca
pkg: update bcrypto. 2018-01-04 14:33:39 -08:00
Christopher Jeffrey
09e56d6144
hsk: use 64 byte signatures everywhere. 2018-01-03 18:58:48 -08:00
Christopher Jeffrey
6e0d489aec
handshake: finish cleaning up bitcoin. 2018-01-02 20:24:56 -08:00
Christopher Jeffrey
c9c7baaff0
handshake: initial work. 2017-12-31 16:46:13 -08:00
Christopher Jeffrey
01abb3d667
types: cleanup types. 2017-12-30 03:49:28 -08:00
Christopher Jeffrey
0ea7043045
script: remove mast. 2017-11-16 20:51:10 -08:00
Christopher Jeffrey
064bafd5c4
script: classify. 2017-11-16 18:44:38 -08:00
Christopher Jeffrey
5ca5cd5a96
script: do not use util.reverse. 2017-10-25 23:55:38 -07:00
Christopher Jeffrey
71182864e7
bcoin: use bcrypto. remove crypto module. 2017-10-25 21:21:39 -07:00
Christopher Jeffrey
49154be76d
script: refactor opcode and optimize. 2017-08-25 18:54:51 -07:00
Christopher Jeffrey
d6ce66bce9
script: refactor script and stack mutation.
This allows more reasonable signing behavior and eliminates all polymorphism.
2017-08-24 17:34:20 -07:00
Christopher Jeffrey
a6b2c23a41
script: start using scriptnum implementation. 2017-08-20 15:13:17 -07:00
Christopher Jeffrey
e7bc53c995
test: refactor script and tx test parsing. 2017-08-11 00:07:48 -07:00
Christopher Jeffrey
62152a1005
util: remove util.inherits. inline inheritance. 2017-08-06 19:45:10 -07:00
Christopher Jeffrey
4ce070fad4
validation: use stricter validation for ints. 2017-08-06 14:43:22 -07:00
Christopher Jeffrey
6ba8eb9951
eslint: more style rules. 2017-07-31 18:21:03 -07:00
Christopher Jeffrey
55cf07a871
refactor: style for const/let and returns. 2017-07-31 18:21:02 -07:00
Christopher Jeffrey
6f3988e861
refactor: use const as much as possible. 2017-07-31 18:21:02 -07:00
Christopher Jeffrey
9cc5c393b4
eslint: use prefer-const. 2017-07-31 18:21:02 -07:00
Christopher Jeffrey
7eefb773be
refactor: use maps and sets wherever possible. 2017-07-25 05:15:47 -07:00
Christopher Jeffrey
053561f2ba
errors: fix stack traces. 2017-07-17 14:26:43 -07:00
Christopher Jeffrey
296e65d0fd
refactor: use es6 template strings everywhere. 2017-07-17 14:26:39 -07:00
Christopher Jeffrey
c53f4cf89e
refactor: switch to const/let. 2017-07-17 14:26:37 -07:00
Christopher Jeffrey
e00472891d
refactor: start using for...of. 2017-07-17 14:26:37 -07:00
Christopher Jeffrey
fa3e98b274
crypto: rename ec to secp256k1. 2017-06-27 02:48:19 -07:00
Christopher Jeffrey
33ffb780b3
refactor: expose int64 and big numbers as modules. 2017-06-22 03:59:49 -07:00
Christopher Jeffrey
a1e9999f29
script: refactor execution. 2017-06-11 23:37:55 -07:00
Christopher Jeffrey
30b8a458ed
script: do not pass flags to Script.num. 2017-06-10 01:22:01 -07:00
Christopher Jeffrey
8893131e08
script: move static methods off of script constructor. 2017-06-10 01:20:05 -07:00
Christopher Jeffrey
28cd43045d
refactor: avoid using new Buffer() due to its new perf implications. 2017-05-30 21:11:10 -07:00
Christopher Jeffrey
e3c0b123a0
docs: build and expose scripterror properly. 2017-02-07 16:09:25 -08:00
Christopher Jeffrey
4e7df6ef87
docs: get jsdoc compiling again. 2017-02-03 22:47:26 -08:00
Christopher Jeffrey
d338f62078
protocol: constants changes. 2017-01-10 04:57:41 -08:00
Christopher Jeffrey
29e03892e7
script: some refactoring. 2017-01-09 00:03:59 -08:00
Christopher Jeffrey
75430cae8b
refactor: more moving. 2017-01-06 10:18:21 -08:00
Renamed from lib/script/encoding.js (Browse further)