Nodari Chkuaselidze
618ead29b9
pkg: update dependencies and npmignore.
2025-07-03 16:49:42 +04:00
Nodari Chkuaselidze
e13f180c96
types: update blockstore.
2024-09-30 14:29:03 +04:00
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
6aae5c0196
primitives: fix witness and covenant encode methods.
2018-08-06 09:28:48 -07:00
Christopher Jeffrey
a03fcd1a23
pkg: rename to hsd.
2018-08-01 20:00:09 -07:00
Christopher Jeffrey
6920520f6c
names: better dos limits.
2018-08-01 04:40:59 -07:00
Christopher Jeffrey
169da98147
pkg: update deps. remove build.
2018-07-19 05:40:48 -07:00
Christopher Jeffrey
d4782e0cc1
hskd: switch to buffer maps and structs.
2018-07-15 06:22:25 -07:00
Christopher Jeffrey
37c2cfe576
script: addr.version=31 == provable burning. checkoutputverify improvements.
2018-06-12 22:36:52 -07:00
Boyma Fahnbulleh
4f6d9c0298
lib/script: remove calls to dead functions
2018-06-10 13:53:29 -07:00
Christopher Jeffrey
f3db8d8c39
hskd: update links.
2018-06-08 07:13:46 -07:00
Christopher Jeffrey
6bdc73b50e
chain: switch to new name tree. commit only 160 bit name hashes.
2018-05-28 09:02:54 -07:00
Christopher Jeffrey
05bfd80a73
rules: remove cold output.
2018-04-25 20:01:06 -07:00
Christopher Jeffrey
3ea8aec007
hsk: use blake2 for addr hashes.
2018-03-11 18:16:46 -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
0c32c6cb32
primitives: add covenants.
2018-01-05 01:22:32 -08:00
Christopher Jeffrey
ba144845ca
pkg: update bcrypto.
2018-01-04 14:33:39 -08:00
Christopher Jeffrey
63551fa858
hsk: switch to hash256 for p2sh.
2018-01-03 19:23:04 -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
385840554c
script: remove useless vars.
2017-12-29 15:51:29 -08:00
Christopher Jeffrey
d042462870
script/address: fix addr checking for nested p2sh inputs.
2017-12-20 09:52:57 -08:00
Christopher Jeffrey
0e4d32f41b
bcoin: use util.revHex again.
2017-11-17 00:00:36 -08:00
Christopher Jeffrey
0ea7043045
script: remove mast.
2017-11-16 20:51:10 -08:00
Christopher Jeffrey
126e5fe416
bcoin: lint.
2017-11-16 20:44:04 -08:00
Christopher Jeffrey
064bafd5c4
script: classify.
2017-11-16 18:44:38 -08:00
Christopher Jeffrey
c60b8ea125
refactor: switch to bio module.
2017-11-16 11:43:24 -08:00
Christopher Jeffrey
1b39abe157
bcoin: rename bufio and bstring.
2017-11-15 09:02:44 -08:00
Christopher Jeffrey
9a19cdb24d
crypto: start using hash.digest().
2017-11-01 15:41:32 -07:00
Christopher Jeffrey
3ecc9829e3
utils: start using bbuf.
2017-10-30 21:29:49 -07:00
Christopher Jeffrey
7f170f377a
utils: start using bfilter.
2017-10-30 21:22:31 -07:00
Christopher Jeffrey
d6fb654dad
bcoin: remove dependence on util.js.
2017-10-26 04:07:48 -07: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
55f594d616
stack: remove useless checks.
2017-09-01 18:05:26 -07:00
Christopher Jeffrey
b87f557823
tx/script/chain: refactor locktime handling.
2017-08-27 19:07:57 -07:00
Christopher Jeffrey
140eece7dd
script: improve perf of getScripthash.
2017-08-25 20:54:56 -07:00
Christopher Jeffrey
49154be76d
script: refactor opcode and optimize.
2017-08-25 18:54:51 -07:00
Christopher Jeffrey
5fae0c50a1
script: enforce stack size on unexecuted branches.
...
This primarily only affects zero-length scripts. An input script which pushed
this many items onto the stack without failing _is not possible_, but with
segwit, it is possible. However, a witness program would fail due to cleanstack
before there would be any kind of consensus fault. In other words, without this
fix, we still remain in consensus with bitcoin core, but ideally we should want
to fail for the same reason.
2017-08-25 08:08:47 -07:00
Christopher Jeffrey
7145d21c9c
script: improve isCode.
2017-08-24 23:47:22 -07:00
Christopher Jeffrey
47eb484657
script: include opcode and instruction pointer in stack size errors.
2017-08-24 23:13:31 -07:00
Christopher Jeffrey
13892b3b38
encoding: rename written to offset.
2017-08-24 22:36:59 -07:00