Devrandom
4826d0c6cc
no_std support
...
Based on the original work by Justin Moon.
*MSRV unchanged from 1.29.0.*
When `std` is off, `no-std` must be on, and we use the [`alloc`](https://doc.rust-lang.org/alloc/ ) and core2 crates. The `alloc` crate requires the user define a global allocator.
* Import from `core` and `alloc` instead of `std`
* `alloc` only used if `no-std` is on
* Create `std` feature
* Create `no-std` feature which adds a core2 dependency to polyfill `std::io` features. This is an experimental feature and should be
used with caution.
* CI runs tests `no-std`
* MSRV for `no-std` is 1.51 or so
2021-07-15 09:04:49 +02:00
Sebastian
b0ae2a6842
Merge pull request #521 from RCasatta/errors_enum
...
Errors enum improvements
2021-06-15 14:01:56 +02:00
Riccardo Casatta
0eaf45ca81
Use boxed sliced instead of Vec in InvalidPreimageHashPair variant
2021-06-13 22:33:52 +02:00
Riccardo Casatta
781b0e014a
Box big Transaction type in psbt error
2021-06-13 22:33:48 +02:00
Devrandom
95aa3bf153
std -> core
2021-06-11 17:28:04 +02:00
Dr Maxim Orlovsky
c0b7defc86
More non-API breaking error derives depending on upstream PRs
2021-05-04 03:58:56 +02:00
Riccardo Casatta
c96f7ec71c
use markdown autolink syntax for urls with no text
2021-05-03 13:46:10 +02:00
Dr. Maxim Orlovsky
68096242d3
Merge pull request #594 from RCasatta/capped
...
Count bytes read in encoding
2021-05-01 16:28:57 +02:00
Riccardo Casatta
f692c4a938
Limit bytes read with Take
2021-04-28 09:33:37 +02:00
Dr Maxim Orlovsky
b17d7fc31c
Moving keys under `util::ecdsa`, re-exporting them at `util::key`
...
This is the first step in introducing Schnorr key support as per #588
2021-04-12 14:17:42 +02:00
Steven Roose
7df0d14f1a
Merge pull request #577 from RCasatta/proprietary_key
...
Include proprietary key in deserialized PSBT
2021-03-15 12:16:30 +00:00
Riccardo Casatta
7e25c133d8
Include proprietary keys in deserialized fields
2021-03-13 15:41:07 +01:00
Riccardo Casatta
fcd7200efe
Proprietary key test failing rtt
2021-03-13 15:19:21 +01:00
Dr Maxim Orlovsky
7b7b73f6d2
Improving PSBT FromStr error type
2021-02-22 12:46:22 +01:00
Dr Maxim Orlovsky
79f2729b20
Improving PSBT error tests
2021-02-22 12:46:22 +01:00
Dr Maxim Orlovsky
94102fa597
PSBT Base64 serialization test cases
2021-02-22 12:46:22 +01:00
Dr Maxim Orlovsky
072e1d1b86
PSBT Display & FromStr using Base64 serialization
2021-02-22 12:46:22 +01:00
Antoine Poinsot
e36f3a38e4
transaction: deprecate SigHashType::from_u32 in favor of from_u32_consensus
...
Signed-off-by: Antoine Poinsot <darosior@protonmail.com>
2021-02-19 11:36:44 +01:00
Steven Roose
61918dfe81
Change the signature of consensus_encode to return io::Error's
...
This is instead of encode::Errors because the encoders should
not be allowed to return errors that don't originate in the writer
they are writing into.
This is a part of the method definition that has been relied upon for a
while already.
2021-01-12 17:39:41 +00:00
Steven Roose
5fd92d1c09
psbt: Serialize maps with byte values using hex
2020-12-30 16:32:52 +01:00
Steven Roose
a05f8feec6
serde_util: Rename the btreemap module to btreemap_as_seq
...
So that we can later distinguish other modules over maps.
2020-12-30 16:32:52 +01:00
Steven Roose
a9c13272a0
psbt: Fix serde for maps with non-string keys and binary values
2020-12-30 16:32:52 +01:00
Steven Roose
e5f3bca2b4
Add serde_utils module to fix JSON serialization
2020-12-30 16:32:52 +01:00
Steven Roose
cdedb0a9d5
psbt::raw: Use hex::format_hex to format the raw key bytes
2020-12-30 16:32:52 +01:00
Steven Roose
94b7371424
Replace serde_struct_impl with derive-based impls
2020-12-30 16:32:52 +01:00
Dr Maxim Orlovsky
7400bccb60
PSBT: proprietary keys type system according to BIP 174
2020-12-21 12:22:35 +01:00
Dr Maxim Orlovsky
c3024c3ebb
PSBT: basic support for proprietary keys
2020-12-21 12:17:07 +01:00
Dr Maxim Orlovsky
7f5c2795d6
PSBT global xpub merging algorithm reworked
2020-12-20 11:41:24 +01:00
Dr Maxim Orlovsky
b84faa7f5e
PSBT: Improved global keys version and xpub handling
2020-12-16 16:46:28 +01:00
Dr Maxim Orlovsky
21c11e3315
BSPT: Improving global xpub merging algorithm
2020-12-16 16:39:46 +01:00
Dr Maxim Orlovsky
8b1666295c
Nits in new PSBT global types reviews
2020-12-15 16:04:02 +01:00
Dr Maxim Orlovsky
0235abfac2
Improving PSBT merge with dedicated 1.29 rustc borrow scope
2020-12-15 15:50:18 +01:00
Dr Maxim Orlovsky
df8635c5fe
PSBT: Key pair serialization for new global keys
...
Conflicts:
src/util/psbt/map/global.rs
2020-12-15 15:50:18 +01:00
Dr Maxim Orlovsky
2f838218a8
PSBT: merging new global keys
...
Plus necessary changes to BIP 32 implementations and error type
2020-12-15 15:47:37 +01:00
Dr Maxim Orlovsky
af61d7e7bc
PSBT: adding global types (version, xpub)
2020-12-15 15:47:37 +01:00
Dr Maxim Orlovsky
881f4d75dd
PSBT: Making hash preimage constant names match BIP 174
2020-12-07 16:35:28 +01:00
Dr Maxim Orlovsky
214e10baef
PSBT types are now constants
2020-12-07 15:37:16 +01:00
Dr Maxim Orlovsky
27037e2c72
PSBT: Making RIPEMD160 hash match standard name
2020-12-05 15:46:30 +01:00
Dr Maxim Orlovsky
9b106ee161
PSBT: making BIP32 field name match spec type names
2020-12-05 15:45:20 +01:00
Dr Maxim Orlovsky
b5f0e9e144
Fixing serde impl for PSBT inputs
2020-11-06 17:01:34 +01:00
Andrew Poelstra
d3210b39fb
Merge pull request #507 from stevenroose/pubkey-write-result
...
Change PublicKey::write_into to return Result
2020-11-05 19:21:39 +00:00
Andrew Poelstra
35d729d9f0
Merge pull request #478 from sanket1729/psbt_again
...
Psbt hash preimages (again)
2020-11-05 17:49:58 +00:00
Steven Roose
9699c622fc
Return Result<(), io::Error> from PublicKey::write_into
2020-10-23 21:31:12 +01:00
Dr Maxim Orlovsky
00c3466363
Serde implementation for PSBT
2020-10-14 16:31:24 +02:00
sanket1729
57b63d4b52
Add tests for psbt hash serde
2020-10-11 21:51:03 -05:00
sanket1729
48151ef204
Added Hash preimages to psbt
...
Added hash preimages to psbt as per updated bip174
2020-10-11 21:51:02 -05:00
Elichai Turkel
2d70623356
Remove deprecated Error::description impl
2020-10-08 17:11:18 +03: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
Andrew Poelstra
c94295c3a9
Revert "Added hash Preimages to psbt"
2020-09-11 11:31:10 +00:00