Steven Roose
e60bfe2f61
Revert the sighash method signatures
...
Hash engines don't product I/O errors, so encoding into them
shouldn't produce errors either.
2020-10-09 16:27:38 +02:00
Andrew Poelstra
3618d7a41d
Merge pull request #485 from ipaljak-tbtl/expose-tx-signature-data
...
Expose serialized data for transaction signatures
2020-10-09 13:24:51 +00:00
Andrew Poelstra
fc60a7fc25
Merge pull request #492 from RCasatta/fix_bench_names
...
fix bench fn names
2020-10-09 13:12:39 +00:00
Steven Roose
5355b36f63
Merge pull request #482 from rust-bitcoin/2020-09-modern
...
Small modernization after MSRV bump
2020-10-09 13:51:22 +02:00
Riccardo Casatta
9a5291c717
fix bench names
2020-10-08 18:21:30 +02:00
Ivan Paljak
e66caab956
Improve error handling, fix forgotten early return
2020-10-08 16:40:30 +02:00
Elichai Turkel
eda47c31c9
Remove redundant code / configurations
2020-10-08 17:11:18 +03:00
Elichai Turkel
2d70623356
Remove deprecated Error::description impl
2020-10-08 17:11:18 +03:00
Elichai Turkel
023fae1f65
Add the dyn keyword where appropriate
2020-10-08 17:11:16 +03:00
Elichai Turkel
efe1a55819
Use new inclusive range syntax
2020-10-08 17:08:51 +03:00
Elichai Turkel
ad0064db14
Remove hex as a dev-dependency
2020-10-08 17:08:48 +03:00
Andrew Poelstra
7c47c9a341
Merge pull request #356 from elichai/2019-12-macros
...
Simplifying macros
2020-10-08 14:05:23 +00:00
Andrew Poelstra
845fe5ae4a
Merge pull request #418 from elichai/2020-03-benchmarks
...
Add benchmarks
2020-10-08 14:05:04 +00:00
Elichai Turkel
46f4f8cf35
Add benchmarks for tx serialization and size
2020-10-08 16:29:26 +03:00
Elichai Turkel
609b9523b8
Add benchmarks for block serialization
2020-10-08 16:28:17 +03:00
Elichai Turkel
fdd6f4f196
Derive macros instead of implementing via macro_rules
2020-10-08 16:17:14 +03:00
Ivan Paljak
c21dabb824
Expose serialized data for transaction signatures
2020-10-08 01:21:10 +02:00
Andrew Poelstra
8c82129442
Merge pull request #480 from LNP-BP/feat/keysource
...
Introducing `bip32::KeySource`: wrapper for `(Fingerprint, DerivationPath)`
2020-10-07 22:23:39 +00:00
Andrew Poelstra
3748e8faf5
Merge pull request #459 from sgeisler/2020-08-extend-derivation-path
...
Allow easy concatenation of bip32 derivation paths
2020-10-07 21:34:17 +00:00
Steven Roose
d92ca87c69
Merge pull request #488 from sgeisler/2020-10-bip32-doc-fix
...
Bip32 documentation fix
2020-10-07 21:15:14 +02:00
Andrew Poelstra
e088fa995a
Merge pull request #444 from stevenroose/bip34
...
Add Block::coinbase and Block::bip34_block_height (BIP-34)
2020-10-07 19:11:55 +00:00
Andrew Poelstra
72af2d57a1
Merge pull request #489 from stevenroose/readme-msrv
...
README: Fix typo in MSRV section
2020-10-07 18:16:38 +00:00
Steven Roose
d5b73f9c8c
README: Refer to MSRV section in Installing Rust section
2020-10-07 19:11:30 +02:00
Steven Roose
9c90b39ebd
Add Block::coinbase and Block::bip34_block_height
2020-10-07 18:54:12 +02:00
Steven Roose
29a74a14ab
Move around impls in block module
...
So that an impl always succeeds the struct type definition.
2020-10-07 18:48:24 +02:00
Andrew Poelstra
71bf8d7bcf
Merge pull request #388 from pandoracore/hashtypes-fns
...
Hash functions for public keys and scripts
2020-10-07 16:40:51 +00:00
Steven Roose
f483646954
README: Fix typo in MSRV section
2020-10-07 17:05:26 +02:00
Andrew Poelstra
d2872fc74a
Merge pull request #486 from RCasatta/expose_secp_features
...
Expose features of secp256k1
2020-10-07 14:57:02 +00:00
Sebastian Geisler
b8c7bc8dcb
Bip32 documentation fix
2020-10-07 16:50:27 +02:00
Riccardo Casatta
31e63cb1d2
Expose features of secp256k1
2020-10-02 09:18:33 +02:00
Dr Maxim Orlovsky
c098dfa7f2
BIP32 KeySource refactored to type aliace
2020-09-14 00:37:29 +02:00
Dr Maxim Orlovsky
aa67f10162
Introducing `bip32::KeySource`: wrapper for `(Fingerprint, DerivationPath)`
2020-09-13 22:49:52 +02:00
Dr Maxim Orlovsky
ff1b4a8dbd
WPubkeyHash constructor failing on uncompressed PublicKey
2020-09-11 15:43:05 +02:00
Dr Maxim Orlovsky
1342d73734
Script hash functions with non-allocating serialization
2020-09-11 15:10:57 +02:00
Dr Maxim Orlovsky
8363c76f5c
Script hash functions (normal and witness)
2020-09-11 15:10:57 +02:00
Dr Maxim Orlovsky
1d9f531581
Pubkey hash functions (normal and witness)
2020-09-11 15:04:26 +02:00
Andrew Poelstra
c1ae3b7955
Merge pull request #477 from rust-bitcoin/revert-465-psbt_updates
...
Revert "Added hash Preimages to psbt"
2020-09-11 11:31:27 +00:00
Andrew Poelstra
c94295c3a9
Revert "Added hash Preimages to psbt"
2020-09-11 11:31:10 +00:00
Andrew Poelstra
3f33bd74e4
Merge pull request #465 from sanket1729/psbt_updates
...
Added hash Preimages to psbt
2020-09-11 11:30:27 +00:00
Andrew Poelstra
49e97cca65
Merge pull request #387 from pandoracore/builder-p2wildcard
...
Refactoring script generating functions into a single place
2020-09-11 11:29:09 +00:00
Andrew Poelstra
ba50c41f49
Merge pull request #476 from apoelstra/2020-09--0.25.0
...
bump version to 0.25, MSRV to 1.29
2020-09-11 11:26:10 +00:00
sanket1729
c1eafff9ef
Added Sighash calculation for psbt
2020-09-11 01:01:33 -05:00
Andrew Poelstra
6138084c5b
bump version to 0.25, MSRV to 1.29
2020-09-10 20:06:10 +00:00
Andrew Poelstra
bcf2c5981d
Merge pull request #475 from apoelstra/2020-09--0.24.0
...
Increase version to 0.24
2020-09-10 19:58:03 +00:00
Andrew Poelstra
1c46b32d2b
update Travis and README for manual rustc 1.22.0 steps
2020-09-10 19:03:01 +00:00
Andrew Poelstra
e2bef1c4a6
bump version to 0.24.0
2020-09-10 19:02:53 +00:00
Andrew Poelstra
440005b16e
Merge pull request #464 from TheBlueMatt/2020-08-pow-clarification
...
Set Params::pow_limit to an attainable value not a theoretical one
2020-09-10 16:46:40 +00:00
Andrew Poelstra
a1450058d9
bump major versions of rust-secp and bitcoin_hashes deps
2020-09-10 16:42:08 +00:00
Andrew Poelstra
05f3451b10
un-deperate contracthash during testing
...
Avoids a rust test runner bug, see https://github.com/rust-lang/rust/issues/47238
2020-09-10 16:40:31 +00:00
Matt Corallo
cf45a61070
Set Params::pow_limit to an attainable value not a theoretical one
...
`cloudhead` on IRC was asking how to properly use
`BlockHeader::validate_pow()` on genesis (or similar) when the
pow_limit field isn't expressible as a compact target (and, thus,
does not actually represent the PoW limit/genesis target). We
swap it for the actual PoW limit by truncating the way a compact
encoding round-trip would.
Note that, in Bitcoin Core, the original value is only ever used
once in its original form:
```
if (bnNew > bnPowLimit) // Note: bnPowLimit is params.powLimit
bnNew = bnPowLimit;
return bnNew.GetCompact();
```
Thus, even if Core adopted our change, as long as there exist no
256-bit integer x which satisfies
`x <= powLimit && x > encoding_roundtrip_truncated(powLimit)` and
`enoding_roundtrip_truncated(x) != powLimit`, the change would have
no impact on consensus.
It is trivial to show that there are no values which are between
the new value
(0x00000000ffff0000000000000000000000000000000000000000000000000000)
and the original value
(0x00000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffff)
which can be encoded in compact form, but it is also critically, no
such values will encode to a compact form of anything different than
the new value as the encoding always truncates the low bits, never
rounding up.
2020-09-10 12:03:51 -04:00