daxpedda and Kevin Lewi
8a7bcf9097
no_std support (#225 )
...
* No std implementation
* Run tests with std
* Adding wasm32-unknown-unknown target
Co-authored-by: Kevin Lewi <[email protected] >
2021-08-11 21:25:07 -07:00
daxpedda
10a38bc58b
Merge GroupWithMapToCurve into Group ( #219 )
...
* Merge `GroupWithMapToCurve` into `Group`
* Remove `hash_to_curve`
* Ristretto improvements
* P-256 improvements
2021-08-01 17:48:56 -07:00
Kevin Lewi
8de2f37235
Updating VOPRF dependency
2021-07-12 15:16:08 -07:00
Kevin Lewi
e6b5a5dcf6
Adding i2osp error checking condition
2021-07-08 19:38:30 -07:00
daxpedda
81b2719587
More missing common traits
2021-06-28 02:06:20 -07:00
daxpedda
eb59676a94
Implement common traits
2021-06-22 20:46:34 -07:00
Kevin Lewi
98f1821897
Adding identity element checks and ensuring non-zero scalar selection
2021-06-15 18:39:33 -07:00
Valentin Tolmer
2c7fe4e382
Implement Clone for every message type
2021-06-15 10:06:32 -07:00
Kevin Lewi
fa0fb48654
Fixing test vector bug with envelope ciphertext serialization and updating VOPRF ( #145 )
2021-02-21 18:44:36 -08:00
Kevin Lewi
e694a88ef9
Exporting rand ( #137 )
2021-02-11 18:10:48 -08:00
Kevin Lewi
6dc1c8b212
Turning KeyPair into a struct ( #119 )
2021-01-25 13:20:36 -08:00
Kevin Lewi and Kevin Lewi
9f414d4a82
Adding VOPRF draft's test vectors ( #95 )
...
Co-authored-by: Kevin Lewi <[email protected] >
2020-12-04 13:19:29 -08:00
Kevin Lewi and Kevin Lewi
4c82dfaf13
Adding info and einfo fields to test vectors ( #92 )
...
Co-authored-by: Kevin Lewi <[email protected] >
2020-11-29 23:06:55 -08:00
Kevin Lewi
f165310c96
Adding expand_message_xmd and RFC compliance with VOPRF and H2C ( #80 )
2020-11-12 10:00:09 -08:00
François Garillot
552a546b6c
Uses conditional compilation to make sure postprocessing is only available in tests
...
See
https://github.com/rust-lang/rust/pull/64010/
2020-11-04 11:55:14 -05:00
Kevin Lewi
c8cbf56336
Conform to voprf spec ( #71 )
2020-11-02 20:15:08 -05:00
François Garillot
81353cb844
fix benchmarks
2020-09-03 15:54:46 -04:00
Kevin Lewi
c2edb2d95e
Adding a hash type to CipherSuite ( #24 )
2020-07-27 15:25:04 -07:00
François Garillot
91137903c6
Add benchmarks for OPRF functions (under a bench feature)
2020-07-22 14:32:58 -04:00
François Garillot and KevinLewi
9d40aa7659
As a way to roll back the genericity, implement an extension trait of group for password-to-curve hashing,
...
This supersedes #18 .
Co-authored-by: KevinLewi <[email protected] >
2020-07-03 21:05:18 -04:00
François Garillot
41cd80ccb5
Make oprf::generate_oprf1 generic in the Digest, as long as it matches the hash-to-curve intake of the group
...
We used to have three problems:
- overuse of the <Sha256 as Digest>::OutputSize, which is just, well, U32. Sometimes used as a parameter (as in generate_oprf1), sometimes as a constant (as in generate_oprf3).
- the `hash_to_curve` operation for `RistrettoPoint` which requires 64 bits of input entropy, is fed 64 bits of which the last 32 are zero,
- the `hash_to_curve` operation for `Curve25519Point` which requires 32 bits of input entropy, is fed 64 bits of which the last 32 are discarded,
This corrects all three and uses U32 where the size of the digest is not meant to be a constraint.
Addresses #15 partially.
2020-07-03 18:28:34 -04:00
François Garillot
bb9c365998
Rename Group::to_bytes() into Group::to_arr(),
...
This brings the `Group` and `SizedBytes` traits into some sort of name
coherence (they both return a GenericArray). This also uses
`&my_generic_array[..]` (i.e. the `Deref` impl) over
`my_generic_array.as_slice()`.
2020-07-03 17:30:32 -04:00
Kevin Lewi
6d02c72aae
Updating to draft-krawczyk-cfrg-opaque-06, reworking envelope construction and removing AEAD ( #14 )
...
Updating to draft-krawczyk-cfrg-opaque-06, reworking envelope construction and removing AEAD
2020-07-02 12:24:53 -07:00
François Garillot
4f9b7fe86f
Update digest & hashes libraries to their latest versions
2020-06-16 06:24:14 -07:00
Kevin Lewi
88696763cc
Initial commit
Rust CI / test + Clippy + rustfmt (push) Has been cancelled
2020-06-05 09:35:14 -07:00