6612 Commits

Author SHA1 Message Date
Brian Smith
0124565a52 Move ECDSA integration/functional tests to tests/. 2017-05-13 00:34:45 -10:00
Brian Smith
21f9750087 Clarify signature_impl::MAX_LEN.
Currently, the only ECC signature algorithm for which we support
generating signatures is Ed25519, but when we add ECDSA support this
adjustment will be required.
2017-05-13 00:33:56 -10:00
Brian Smith
82f3588cac Refactor ring::signature::Signature.
Remove the public constructor, hiding it using the Rust module system
instead of just `#[doc(hidden)]`. Expand its capabilities so that it
can work for more than just Ed25519 signatures, including in particular
(ECC) signatures of all the lengths we need.
2017-05-12 16:27:24 -10:00
Brian Smith
58b31ca53f Clarify Ed25519 API documentation. 2017-05-12 16:27:23 -10:00
Brian Smith
93cdb56916 Rename tests/pkcs8_test.rs to tests/rsa_tests.rs. 2017-05-12 16:26:50 -10:00
Brian Smith
b3b9f106ba Tweak whitespace in lib.rs. 2017-05-12 16:22:49 -10:00
Brian Smith
e03f9e076f Fix a typo in the Ed25519 API documentation. 2017-05-12 16:10:45 -10:00
Brian Smith
748f2c0452 Remove inconsistent "0 +" in addition chain for inversions. 2017-05-12 11:55:27 -10:00
Brian Smith
c78d5d9ef4 Add additional Ed25519 PKCS#8 tests. 2017-05-09 15:01:37 -10:00
Brian Smith
1781ed872b 0.9.4: Implement Copy, Clone, and Debug for hmac::Signature. 2017-05-08 16:16:34 -10:00
Brian Smith
740a1e060e 0.9.3: Prevent multiple copies of *ring* from being linked.
This will only protect against linking multiple copies of version from
0.9.3 onward; i.e. it won't prevent a version like 0.7.6 from being
linked alongside 0.9.3.
2017-05-08 15:57:05 -10:00
Brian Smith
6c31da91cf 0.9.2. 2017-05-08 13:31:17 -10:00
Brian Smith
d828827bd5 Add ring::signature::ED25519_PUBLIC_KEY_LEN. 2017-05-08 13:30:27 -10:00
Brian Smith
3685458651 Move PKCS#8 document formatting to ring::pkcs8. 2017-05-07 18:14:12 -10:00
Brian Smith
d66730fa19 Simplify formatting of Ed25519 PKCS#8 documents. 2017-05-07 18:09:06 -10:00
Brian Smith
74c54980ea Add some PKCS#8 v2 Ed25519 private key test cases. 2017-05-07 13:30:42 -10:00
Brian Smith
66fed8f154 0.9.1. 2017-05-07 11:43:55 -10:00
Brian Smith
0f60416266 Update Ed25519 PKCS#8 support to account for extra octet string.
The private key is wrapped in an extra octet string.
2017-05-07 11:42:22 -10:00
Brian Smith
7f7a5a23f4 Add the Ed25519 PKCS#8 template to the Cargo package. 2017-05-07 10:25:58 -10:00
Brian Smith
f2f3863ec6 0.9.0. 2017-05-07 10:21:19 -10:00
Brian Smith
eacd3b8fa0 Add Ed25519 PKCS#8 support. 2017-05-07 10:21:18 -10:00
Brian Smith
743cefca51 Remove a spurious comma in a comment in documentation. 2017-05-07 10:17:40 -10:00
Brian Smith
15bb419df7 Add note about the ~18 special Ed25519 keys. 2017-05-07 10:07:47 -10:00
Brian Smith
ad5e514365 Use public_key_bytes() in Ed25519KeyPair::from_seed_and_public_key(). 2017-05-07 09:35:14 -10:00
Brian Smith
f575202d04 Add Ed25519KeyPair::from_seed_unchecked(). 2017-05-07 09:34:27 -10:00
Brian Smith
79207747a4 Replace Ed25519KeyPair::from_bytes() with from_seed_and_public_key(). 2017-05-07 09:28:28 -10:00
Brian Smith
f587947fd7 Convert Ed25519 tests to from unit tests to integration tests.
They are integration tests.
2017-05-07 09:23:58 -10:00
Brian Smith
e3769d9fd1 Mark binary files as binary in .gitattributes. 2017-05-07 09:23:57 -10:00
Brian Smith
ab4c97d93b Shorten the addition chain for P-384 inversion mod n. 2017-05-03 00:50:27 -10:00
Brian Smith
df51498154 Shorten the addition chain for P-256 inversion mod n. 2017-05-03 00:50:13 -10:00
Brian Smith
9e0819f7ee Remove support for AMD XOP.
AMD dropped XOP in Ryzen.
2017-05-02 14:31:03 -10:00
Brian Smith
2853cd78be Implement Clone() for ring::digest::SigningContext. 2017-05-01 22:30:38 -10:00
Brian Smith
d4e1578187 0.8.1. 2017-05-01 22:12:25 -10:00
Brian Smith
f3187fdef0 Pad high end, not low end, in big_endian_from_limbs_padded(). 2017-05-01 21:56:37 -10:00
Brian Smith
c7938a4d54 Fix documentation for ECDSAVerificationAlgorithm. 2017-05-01 14:22:45 -10:00
Brian Smith
dd500b80fd Add missing test input file to packaged crate.
`cargo test -p ring` fails when running the tests from the packaged
release without this.
2017-05-01 13:34:51 -10:00
Brian Smith
023ae994bf 0.8.0. 2017-05-01 13:30:14 -10:00
Brian Smith
c4e10248df 0.8.0-alpha1. 2017-05-01 13:24:50 -10:00
Brian Smith
ad1ab02478 Remove SystemRandom::fill().
`SystemRandom` still implements `fill()`, but it must be called
through the `SecureRandom` trait now. Users of *ring* should prefer
to use `SecureRandom` whenever possible and use `SystemRandom` only
to instantiate a `SecureRandom`.
2017-05-01 13:22:38 -10:00
Brian Smith
85fcb8a2f0 Fix Cargo.toml references to refactored Curve25519 code. 2017-05-01 13:17:07 -10:00
Brian Smith
a3ad8815a3 Rename ECDSAParameters to ECDSAVerificationAlgorithm.
This is in preparation for adding `ECDSASigningAlgorithm`.
2017-05-01 13:10:24 -10:00
Brian Smith
2f4c6ea86e Fix code coverage reports.
Integration tests are compiled into separate executables and each
executable needs to be run under kcov.
2017-05-01 09:16:21 -10:00
Brian Smith
7a414a5421 Replace Signature::as_slice() with AsRef<[u8]> implementation.
Make the API more consistent.
2017-05-01 03:00:22 -10:00
Brian Smith
3ebdd8c6a3 Remove non-SSE2 code from 32-bit x86 SHA-2. 2017-04-30 19:34:19 -10:00
Brian Smith
92466b427b Remove non-SSE2 and AVX2 code from 32-bit x86 poly1305. 2017-04-30 19:34:19 -10:00
Brian Smith
0df8522638 Remove non-SSE2 32-bit x86 x86 bn_mul_mont() code. 2017-04-30 19:34:18 -10:00
Brian Smith
aaac30f7e0 Remove non-SSE2 32-bit x86 P-256 code. 2017-04-30 19:34:17 -10:00
Brian Smith
dab5305b30 Add integration tests to the coverage report. 2017-04-30 15:25:05 -10:00
Brian Smith
e3581da4fe Add support for deserializing RSA keys from PKCS#8. 2017-04-30 11:52:45 -10:00
Brian Smith
60867f2642 Remove GFp/err.h and clean up leftover unused bits. 2017-04-27 16:06:22 -10:00