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
Andreas Fackler
c72bc9a2a7
Fix build failure if deadlinks is already installed.
7 years ago
Andreas Fackler
bc04ea51e4
Fix formatting and warnings, re-enable other benches.
7 years ago
Fletcher Haynes
4b1e6eecb7
Add benchmark for combining signatures
7 years ago
Andreas Fackler
b786d897e2
Run cargo-deadlinks in CI.
7 years ago
Andreas Fackler
42f4ace5a0
Update authors list.
7 years ago
Vladimir Komendantskiy
e28b77d86d
use Rust 1.29
7 years ago
Fletcher Haynes
e0c488a214
Adds a few more benchmarks for poly operators. Changed benchmarks to use a seeded rng for reproducibility.
7 years ago
DrPeterVanNostrand
5f09f96345
Added type for clearing temporary values.
7 years ago
Andrew Gross
b48a4b6812
Merge pull request #32 from poanetwork/ag_typos
...
Typo fixes, added Code of Conduct file
7 years ago
Andrew Gross
b39cc1f909
Typo fixes, added Code of Conduct file
7 years ago
Vladimir Komendantskiy
a2fa8a4b8f
Merge pull request #28 from poanetwork/try-prefixed-constructors
...
Added 'try_' constructors to secret types.
7 years ago
DrPeterVanNostrand
f7d9c26b9a
Added 'Testing' section to readme.
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
Vladimir Komendantskiy
76ac2a5415
Merge pull request #22 from poanetwork/afck-fmt
...
Use Formatter debug helpers. Hide SecretKeyShares.
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
Andreas Fackler
02109b586e
Benchmark polynomials of different degrees.
7 years ago
DrPeterVanNostrand
d783f2756e
Added benchmarks for polynomial multiplication and interpolation.
7 years ago
Andrew Gross
2f3b061b82
Merge pull request #15 from andogro/ag-README-edits
...
Minor README modifications, added environment variables section.
7 years ago
c0gent
43799fc0cf
Travis: Enable cpu-specific optimizations.
7 years ago
Andrew Gross
9839566799
Minor README modifications, added environment variables section
7 years ago
DrPeterVanNostrand
824eef95ae
Added basic public-key cryptography example.
7 years ago
DrPeterVanNostrand
29498c4d89
Added an example for threshold signing.
7 years ago
Igor Barinov
fdfeeae821
Update README.md
7 years ago
c0gent
ec037173b1
Change license, flesh out README a bit.
...
* The example should eventually be expanded upon.
* The language may need more refinement.
7 years ago
DrPeterVanNostrand
3e6df11c4b
Added example for threshold encryption.
7 years ago
Igor Barinov
d81953b55d
Create LICENSE
...
Add MIT License
7 years ago
Igor Barinov
af4ef8e98a
Delete LICENSE
...
Remove GPL3
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
4c533e6873
changed Travis URL from .com to .org
7 years ago
Vladimir Komendantskiy
4fc709a0a3
added Travis build status on github home page
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
Andreas Fackler
da3bc0b930
Remove output and message queue from HoneyBadger.
7 years ago
Andreas Fackler
ec16c801ac
Add more arithmetic ops to Poly.
7 years ago
Andreas Fackler
23e8ebe967
Accept more types in threshold crypto API.
...
This removes some unnecessary allocation and conversion by accepting
more primitive types and references as the index in threshold decryption
and signing, and as the argument to a polynomial.
7 years ago
Andreas Fackler
a78a14fa9d
Separate keys and key shares.
7 years ago
c0gent
368430be1c
Add `Copy` to `PublicKey` derived impls.
7 years ago
Peter van Nostrand
bd10494d5d
Clear 'Poly' and 'BivarPoly' coeffs on drop.
7 years ago
Peter van Nostrand
77a5829c1d
Replaced clear-on-drop with 'std::ptr::write_volatile'.
7 years ago