Andreas Fackler
009ec6ceee
Make SerdeSecret's field public.
...
Otherwise it's impossible to actually use the wrapper to serialize an
existing secret key.
6 years ago
Andreas Fackler
c486b93631
Make several types Ord, PartialOrd.
...
Also fixes some new Clippy and rustfmt issues and extends documentation.
6 years ago
Sebastian Geisler
7a077846c9
Add documentation to secret keys pointing to SerdeSecret
6 years ago
Sebastian Geisler
ce1c30f9b4
Address @afck's comments
...
* make SerializeSecret private
* simplify serde impls
6 years ago
Sebastian Geisler
cd490bcdee
Implement ser/de for SecretKeyShare
6 years ago
Sebastian Geisler
a17cff2041
Implement ser/de for SecretKey
6 years ago
Sebastian Geisler
823609b53e
Add SerdeSecret wrapper type and SerializeSecret trait
6 years ago
David Irvine
43f615c953
Cargo fix update. Also update dependencies, minus lazy static due to issues with criterion.
6 years ago
Andreas Fackler
dbb9fae896
Version 0.3.0
6 years ago
Andreas Fackler
9ab09897bd
Update docs.rs link.
6 years ago
Andreas Fackler
8b6fa87cdc
Export serde_impl::FieldWrap.
6 years ago
Andreas Fackler
a14e7d1867
Migrate to rand 0.6.
6 years ago
Andreas Fackler
1b1df40c67
Upgrade to Rust 1.31.0 and edition 2018.
6 years ago
Andreas Fackler
c2d63b214a
Add missing_docs lint, extend docs.
6 years ago
Andreas Fackler
c7eda7a14a
Make serialization less wasteful.
...
This removes the unneeded length from key and signature representation,
removing 8 bytes from each. Also adds `from_bytes` and `to_bytes`
methods to convert keys and signatures.
6 years ago
Andreas Fackler
05cde32d01
Instead of macro_use, use use.
7 years ago
Andreas Fackler
54026f5fe7
Upgrade to Rust 1.30.0.
7 years ago
Andreas Fackler
1d613c2113
Make hash_g2 public.
...
This function can be useful, to avoid redundant hashing of a long message.
7 years ago
Andreas Fackler
29b40fffa7
Use hex_fmt 0.2.0.
7 years ago
Andreas Fackler
2ca1d2ef7d
Fix negative overflow, add interpolation test. ( #52 )
7 years ago
Andreas Fackler
20de873356
Replace HexBytes with the hex_fmt crate.
7 years ago
Marc Brinkmann
d133bb6d79
Mocktography ( #49 )
...
Added mocktography (feature `use-insecure-test-only-mock-crypto) and factored out CI execution script.
7 years ago
Andreas Fackler
90f63e34e9
Remove explicit Send+Sync impl for Error.
7 years ago
Andreas Fackler
d9da30835f
Reorder: public imports come last.
7 years ago
Andreas Fackler
3d324bb8d7
Optimize polynomial interpolation in the curve.
...
Slightly reduce the number of multiplication and division operations in
the scalar field.
7 years ago
Andreas Fackler
214e5f81cf
Remove try_ methods.
7 years ago
Andreas Fackler
ad11ceaed6
Remove mlock.
...
It currently causes too many problems to be practical. We will re-enable
it once we have a dedicated allocator for locked memory.
7 years ago
Andreas Fackler
191cf0b741
Reexport pairing.
...
Since we are reexporting some of the pairing types, we should also
export pairing itself, to make all the matching traits available and
avoid version conflicts.
7 years ago
Andreas Fackler
0efdad4d69
Prepare for adding mock cryptography for testing.
...
* Add a feature flag (that doesn't do anything yet).
* Give `clear_fr` a stronger type to prevent mistakes and ensure the
right amount of memory gets cleared.
* Re-export the engine and related types from `lib.rs`.
7 years ago
Marc Brinkmann
d69590bedc
Convert all uses of `Bls12` and friends to refer to root `lib.rs` instead of importing from pairing directly.
7 years ago
Andreas Fackler
84e8b69a24
Validate polynomial degrees: fix panics.
7 years ago
Andreas Fackler
0bb41bd990
Merge xor_vec and hash_bytes.
...
They are only used together, and the API of `xor_vec` is a bit dangerous
since it silently stops at the minimum of the two arguments' lengths.
7 years ago
Marc Brinkmann
3645668bff
Add an API that allows specifying the RNG to be used for encryption.
7 years ago
DrPeterVanNostrand
5f09f96345
Added type for clearing temporary values.
7 years ago
DrPeterVanNostrand
72d1c607f8
Added 'try_' constructors to secret types.
7 years ago
Andreas Fackler
ded335f236
Simplify Poly multiplication, speed up interpolation. ( #23 )
...
* Simplify Poly multiplication, speed up interpolation.
Also add more `Mul` implementations.
* Postpone division: speed up interpolation some more.
* Speed up interpolation: re-use base polynomial.
7 years ago
Andreas Fackler
a03d258e9d
Use Formatter debug helpers. Hide SecretKeyShares.
...
Output "..." in the `Debug` implementation of `SecretKeyShare`, to make
it consistent with `SecretKey`.
7 years ago
Marc Brinkmann
a7cd6e0529
Update to Rust `beta` channel.
7 years ago
DrPeterVanNostrand
69ff326430
Added env-var 'MLOCK_SECRETS' to disable memory locks.
7 years ago
DrPeterVanNostrand
8f6dce18f2
Added mlocking for secret types.
7 years ago
Andreas Fackler
2d17d0e783
Replace ring with tiny-keccak.
7 years ago
Vladimir Komendantskiy
bf98f1271f
removed protobuf support
7 years ago
Vladimir Komendantskiy
150389c591
allow for using Error with inside other errors outside this crate
7 years ago
Vladimir Komendantskiy
b7ab849a16
converted errors from error_chain to failure
7 years ago
Vladimir Komendantskiy
394e4ce140
separated crypto module from hbbft crate
7 years ago