Jonas Nick
6eaacb19c5
Add raw context getter to Secp256k1 struct
2019-03-01 19:39:55 +00:00
François Garillot
a8a3afe8db
Fix clippy errors
...
Changes include cargo-fix generated, Default impls
2019-02-25 20:12:25 -08:00
François Garillot
bafef68c56
Bumps rand to 0.6.3 & associated updates
2019-02-25 20:09:43 -08:00
Pierre Krieger
9c45944a5f
Remove dependency on libc
2018-12-27 14:39:54 +01:00
Tim Ruffing
b470f70e90
Merge pull request #57 from rust-bitcoin/2018-08-no-index
...
remove `ops::Index` impls for `Signature`
2018-12-03 14:27:08 +01:00
Andrew Poelstra
e5a02bd9a0
add `ThirtyTwoByteHash` hash trait which can be implemented for easier conversion of things to `Message`s
2018-11-10 13:12:10 +00:00
Andrew Poelstra
1f4a4c11a3
change add_*_assign and mul_*_assign to use a byteslice as a tweak, rather than a `SecretKey`
...
This makes more conceptual sense and does not add any new error paths, since even
valid `SecretKey`s were able to be invalid tweaks.
2018-11-10 13:08:18 +00:00
Andrew Poelstra
f93b959b4a
disallow Messages that are not valid secret keys to prevent mistakes related to 0
2018-11-10 13:05:11 +00:00
Andrew Poelstra
8d2347602a
remove `ops::Index` impls for `Signature`
2018-11-10 12:56:19 +00:00
Andrew Poelstra
4b88cfc2fc
Merge pull request #78 from rust-bitcoin/2018-11-remove-without-caps
...
Update upstream libsecp; remove `without_caps` and all use of dummy contexts
2018-11-10 12:51:14 +00:00
Andrew Poelstra
8986aa3d71
export `serde`, `rand` and `libc`; update version to 0.11.5
2018-11-07 20:18:55 +00:00
Andrew Poelstra
93abca5896
remove `without_caps` and every function that used a cap-less context
2018-11-06 22:16:24 +00:00
Andrew Poelstra
68c838f357
change `Debug` impl for `Signature` to use `Display`
2018-11-03 15:52:07 +00:00
Andrew Poelstra
30aa3a0c28
add `fmt::Display` and `str::FromStr` impls for `Signature`
2018-11-03 15:52:05 +00:00
Andrew Poelstra
572adb2873
add `FromStr` implementation for key types
2018-11-03 15:52:03 +00:00
Andrew Poelstra
3563c5f305
Merge pull request #46 from rust-bitcoin/2018-08-context-debug
...
add Debug impl to context object
2018-08-20 18:34:13 +00:00
Andrew Poelstra
7a5617d01d
Merge pull request #44 from rust-bitcoin/2018-07-docs
...
improve documentation
2018-08-20 18:12:42 +00:00
Andrew Poelstra
93d8249028
improve documentation
2018-08-20 17:56:46 +00:00
Dimitris Apostolou
5c6dcf6b5e
Fix typo
2018-08-15 11:03:22 +03:00
Andrew Poelstra
83c7b6d9b7
add Debug impl to context object
2018-08-12 15:23:05 +00:00
Andrew Poelstra
2478930ec1
add feature-gated serde 1.0 support for Signature, SecretKey, PublicKey
2018-07-25 14:44:51 +00:00
Andrew Poelstra
54ddbc74a4
Merge pull request #37 from rust-bitcoin/2018-07-public-key
...
remove `PublicKey::new()` and `PublicKey::is_valid()`
2018-07-25 13:19:10 +00:00
Andrew Poelstra
c3ec027925
remove `PublicKey::new()` and `PublicKey::is_valid()`
2018-07-24 21:24:19 +00:00
Andrew Poelstra
bc773fbdce
add comments for Sync/Send impl
2018-07-24 21:18:03 +00:00
Andrew Poelstra
2aeff4c62f
fix typos
2018-07-24 21:16:52 +00:00
Roman Zeyde
5442e710a8
Remove Schnorr support
...
It was removed from bitcoin-core/libsecp256k1 at e06e878fd7dcc99825025fa99aedb86bc7d5c29f
2018-07-09 15:10:38 +03:00
Thomas Eizinger
20222d50c9
Add docs to new public API
2018-06-08 08:48:28 +08:00
Thomas Eizinger
f13cdfa8a4
Replace Result return type with actual value
...
This introduces the actual breaking API change.
2018-06-08 08:48:02 +08:00
Thomas Eizinger
be7134c7f4
Cleanup obsolete code
...
Remove ContextFlag enum
Remove InvalidContext error-enum variant
Remove unused imports
2018-06-08 08:41:30 +08:00
Thomas Eizinger
f1a88259fb
Introduce generic-based capability handling
...
Add type parameter to Secp256k1
Add PhantomData for C
Separate into structs and traits
Move constructors to own impl blocks
2018-06-06 12:58:29 +08:00
Matt Corallo
e1878c4522
Remove all serde/rustc-serialize stuff
2018-03-21 18:01:33 -04:00
Andrew Poelstra
f14e747431
expose key::{Secret, Public}Key in the crate root for ease of use
2018-01-17 15:38:11 +00:00
Andrew Poelstra
5c54698bf9
make `serde` optional
2017-12-19 22:40:06 +00:00
Andrew Poelstra
12e9f4b90b
make `rustc-serialize` crate optional
2017-12-19 22:36:30 +00:00
Andrew Poelstra
298929600b
make `rand` crate optional
2017-12-19 22:36:27 +00:00
Andrew Poelstra
dba0d67912
remove arrayvec dependency; rename PublicKey::serialize_vec
2017-12-19 20:36:46 +00:00
Tim Ruffing
e71ed3b6d2
Implement serde traits for Signature
2017-07-21 23:58:19 +02:00
Andrew Poelstra
b6887b44a0
add compact signature encoding
2017-07-12 19:55:06 +00:00
Andrew Poelstra
f88eb1d6d7
Merge pull request #14 from petertodd/2017-05-08-use-copy_from_slice
...
Use safe copy_from_slice() rather than unsafe copy_nonoverlapping()
2017-05-08 12:53:19 +00:00
Peter Todd
20c5b903db
Replace unsafe copy_nonoverlapping() with safe copy_from_slice()
2017-05-08 07:31:08 -04:00
Peter Todd
eccd625828
Implement From<[u8;32]> for Message
2017-05-08 07:10:51 -04:00
Peter Todd
70fd5a9e27
Improve Error::InvalidMessage comment
2017-05-08 06:12:25 -04:00
Andrew Poelstra
458a3d9417
Update libsecp to latest master, c18b869e58aa4d3bff6958f370f6b643d1223c44
2016-01-14 18:35:54 +00:00
Andrew Poelstra
4f83a83308
cleanup: remove unused attributes; add `dev` compile feature that'll run clippy
2015-12-19 20:20:47 -06:00
Andrew Poelstra
f613dbbc00
Fix nonce doccoments
2015-12-15 12:48:01 -06:00
Andrew Poelstra
8aa2569818
Expose Schnorr sign/verify
2015-12-15 12:47:07 -06:00
Andrew Poelstra
d35168d626
[BREAKING CHANGE] Fix FFI
2015-11-15 17:00:07 -06:00
Andrew Poelstra
a65f4cf01f
Expose normalize_s function to convert signatures to low-S form
2015-10-26 14:25:18 -05:00
Andrew Poelstra
8e984c5912
Add "lax DER" support; bump major version number for recent build system changes
2015-10-26 12:59:40 -05:00
Andrew Poelstra
f1e1da1213
Update for breaking changes in underlying rustc.
...
This should be a major version number since I changed public constants
in the ffi module. I'm not doing so as the invariant "will the constants
be meaningful to the underlying library" has not changed.
In general this library's version numbers do not map well to the
underlying library, which is as-yet not versioned at all, so users
need to always be running "the lastest" rust-secp256k1 anyway, and
semantic versioning can't really be used meaninfully. So this is a
bit of a judgement call.
2015-10-25 18:26:08 -05:00