Brian Smith
e45ee6e08d
Update documentation in BUILDING.md.
2016-11-07 15:22:18 -10:00
Brian Smith
c96d59a760
Use the v140, not v140-xp toolchain on Windows.
...
The v140-xp toolchain is an optional component and there was a report
from somebody that didn't have it installed. Also, we don't have
testing on Windows XP yet, and it's likely we're depending on libstd
features that don't work on Windows XP. In particular, does
`lazy_static` work on XP?
We can always add support for v140-xp later if/when somebody needs it
and we can test it.
2016-11-07 12:41:53 -10:00
Brian Smith
7564a2e2bf
Work around "private type in public interface" yet again.
2016-11-06 17:35:36 -10:00
Peter Reid
ace4d330ce
Use shared bytes-to-integer function in poly1305.
...
This removes an endianness assumption.
I agree to license my contributions to each file under the terms given
at the top of each file I changed.
2016-11-06 17:21:59 -10:00
Kornelijus Survila
d490c7287b
Fix subkey order in chacha20-poly1305@openssh.com.
...
I agree to license my contributions to each file under the terms given
at the top of each file I changed.
2016-11-06 17:17:23 -10:00
Brian Smith
66602e7310
Refactor & clarify documentation for ECDSA_*_ASN1 algorithms.
2016-11-06 15:48:47 -10:00
Brian Smith
c5b81134c8
Remove ECDSA_P256_SHA512_ASN1
and ECDSA_P384_SHA512_ASN1
.
...
The Chromium/BoringSSL team showed that it isn't necessary to support
ECDSA with SHA-512 for the P-256 and P-384 curves for HTTPS; see
https://groups.google.com/a/chromium.org/d/msg/security-dev/SlfABuvvQas/qOil2X4UBQAJ .
2016-11-06 15:16:59 -10:00
Brian Smith
257b389869
Match digest algorithm with curve in "short s" ECDSA tests.
...
This facilitates removing support for mismatched curve + digest
combinations in the immediate and not-so-immediate future.
2016-11-06 15:16:25 -10:00
Brian Smith
65e2f51280
Remove ECDSA SHA-1 signature support. Bump version to 0.6.0.
...
Research by the BoringSSL team has shown that ECDSA-SHA1 support isn't
needed for HTTPS, so we should be safe to get rid of it.
The version number was bumped because this is an incompatible change.
2016-11-05 19:52:48 -10:00
Brian Smith
d05c8431ea
Rearrange and rename some parameters in the ecdsa!
macro.
2016-11-05 19:52:47 -10:00
Brian Smith
9850ad717f
Clarify documentation for ASN.1 ECDSA verification algorithms.
2016-11-05 19:52:46 -10:00
Kornelijus Survila
8c56627ee9
Fix nonce encoding in chacha20-poly1305@openssh.com.
...
I agree to license my contributions to each file under the terms given
at the top of each file I changed.
2016-10-29 19:48:06 -10:00
Brian Smith
c3f32c7f88
0.5.3.
2016-10-26 19:30:55 -10:00
Brian Smith
2ddd9dacd9
Fix reduction of digest values larger than group order in ECDSA.
...
After chopping off the excess bytes, reduce the value mod `n` by
doing a conditional subtraction. Previously we were wrongly shifting by
an extra bit if the digest value was larger than or equal to `n`.
2016-10-26 19:18:56 -10:00
Brian Smith
af512273b3
Add RFC 6979 test vectors for ecdsa_verify_tests.
2016-10-26 18:48:54 -10:00
Georg Semmler
a0ee4b5763
Move MSVC build logic to own function.
...
I agree to license my contributions to each file under the terms given
at the top of each file I changed.
[Tweaked slightly by Brian.]
2016-10-26 14:15:24 -10:00
Brian Smith
f62c2e7dc1
Use std::path::{Path, PathBuf} in build.rs.
2016-10-26 09:58:25 -10:00
Brian Smith
b4b084e9b7
0.5.2.
2016-10-26 09:35:30 -10:00
Brian Smith
7cbf1a1d92
Zeroize plaintext when tag validation fails in ring::aead.
2016-10-26 09:35:06 -10:00
Brian Smith
74651c5cf9
Change order of operations in chacha20_xor_overlapping
.
...
Instead of leaving `in_prefix_len` bytes of plaintext after the
output, leave `in_prefix_len` bytes of ciphertext, which is safer.
2016-10-26 09:27:10 -10:00
Brian Smith
61e6afc87b
Reformat build.rs.
...
Tweak some things that would be poorly reformatted by rustfmt,
then rustfmt.
2016-10-26 09:27:09 -10:00
Brian Smith
c28c11a4b7
Allow unused_qualifications
to work around libstd bug.
2016-10-25 20:54:21 -10:00
Brian Smith
e6b1d36a3c
Bump version to 0.5.1.
2016-10-25 19:14:58 -10:00
Brian Smith
3ad8179c1f
Fix public-in-private issue in ring::digest::sha1.
2016-10-25 19:14:57 -10:00
Brian Smith
0b7413e4a9
Remove image in build status links in README.md.
...
The badge acts like a tracking beacon, which people working on
security/privacy stuff may not appreciate.
2016-10-25 19:14:56 -10:00
Mikhail Sobolev
8b4639980e
Fix links for oxidation and tls-1.3 projects.
...
The labels were replaced with projects.
2016-10-25 18:47:09 -10:00
Brian Smith
5f293cc447
Add src/rsa/padding.rs to Cargo.toml.
2016-10-24 18:28:27 -10:00
Brian Smith
d5ece3f421
Factor out common Poly1305 key derivation logic.
2016-10-24 16:34:09 -10:00
Brian Smith
8053821b2f
Implement chacha20-poly1305@openssh.com.
2016-10-24 16:34:08 -10:00
Brian Smith
66a1b82e40
Factor out Poly1305 into a separate module.
...
The copyright notice changes are for the tests.
2016-10-24 16:33:59 -10:00
Brian Smith
6f032b0cd4
Factor out ChaCha20 into a separate module.
...
The copyright notice changes are for the tests.
2016-10-24 16:33:38 -10:00
Brian Smith
21cf0d8c84
Name the internal digest state and output array types.
2016-10-24 10:29:17 -10:00
Mathieu Poumeyrol
4efb6f5a1e
Enable NEON support on iOS ARMv7 targets.
...
This is required to get some assembly language code to build.
2016-10-17 09:23:06 -10:00
Tatsuya Kawano
4102ae7cc5
Issue #287 - Support building on *BSD
...
- build.rs
* Default to `gmake` on BSD systems
* Support `MAKE` variable for pointing to correct `make`
- mk/top_of_makefile.mk
* Allow target triple on BSD* not to have abi (e.g. x86_64-unknown-freebsd)
- BUILDING.md
* Add descriptions about `MAKE` variable.
I agree to license my contributions to each file under the terms given
at the top of each file I changed.
2016-10-12 18:16:31 +08:00
Vadim Petrochenkov
5a2c0a2006
Remove use of lint match_of_unit_variant_via_paren_dotdot
.
...
Rust is removing this lint.
2016-10-05 11:23:18 -10:00
Артём Павлов [Artyom Pavlov]
6dac94bac6
Replaced crypto/aes/aes_test.cc with Rust code.
...
I agree to license my contributions to each file under the terms given
at the top of each file I changed.
2016-10-04 16:43:50 -10:00
Артём Павлов [Artyom Pavlov]
3b5ae496b9
Use Rust instead of C for Poly1305 tests.
...
I agree to license my contributions to each file under the terms given
at the top of each file I changed.
2016-10-04 16:35:17 -10:00
Brian Smith
b6cfc4a229
Add TODO about Poly1305 alignment requirement.
2016-10-04 16:29:41 -10:00
Brian Smith
ad8b0e9160
Update Cargo.toml for ChaCha20 test C -> Rust replacement.
...
The replacement was done in commit f5be9c3.
2016-10-01 17:19:12 -10:00
Brian Smith
5f1915293f
Move AEAD test vectors from crypto/cipher/test/ to src/aead/.
2016-10-01 16:39:30 -10:00
Brian Smith
acbf75b912
Remove AES key wrap tests & cipher_test.txt.
...
The AES key wrap code is gone and so is the stuff that
cipher_test.txt tested.
2016-10-01 16:39:28 -10:00
Brian Smith
f11c805e29
Improve comment for is_scalar_within_range
.
...
Use "[1, max_exclusive)" instead of "(0, max_exclusive)". Explain
nuances of its constant-timedness.
2016-10-01 10:36:05 -10:00
David Judd
a0a9328e9b
Remove dependence of non-RSA code on Range struct
...
I agree to license my contributions to each file under the terms
given at the top of each file I changed.
2016-10-01 10:30:21 -10:00
whythat
14fe43dc3c
Reimplement PrintLine() to remove last usage of <stdarg.h> and vararg.
...
I agree to license my contributions to each file under the terms given
at the top of each file I changed.
2016-09-28 09:44:34 -10:00
Brian Smith
737757b93a
Add ring::agreement::EphemeralPrivateKey::algorithm().
2016-09-23 23:42:47 -10:00
Brian Smith
77c8c8091c
Allow unsafe_code everywhere.
...
Since the unsafe code is already in `unsafe` blocks, it's redundant to
also require `#[allow(unsafe_code)]`.
2016-09-18 10:48:44 -10:00
Brian Smith
0cf761264c
Derive Clone and Copy for ring::digest::Digest.
2016-09-18 10:48:43 -10:00
Brian Smith
155b8f697e
Remove ring::aead::CHACHA20_POLY1305_OLD.
...
This was the AEAD construction used in the pre-standardization TLS
ChaCha20-Poly1305 cipher suites, which are no longer relevant. I had
thought it was the same construction used in the OpenSSH
ChaCha20-Poly1305 cipher suite, but I was wrong. Thus, it's useless
now.
2016-09-18 10:48:19 -10:00
Brian Smith
8f144603a9
Bump version number for backward-incompatible API change.
2016-09-12 11:42:01 -10:00
Sam Scott
cb3ce35061
Refactor RSA padding to new Encoding/Verification traits.
...
I agree to license my contributions to each file under the terms given
at the top of each file I changed.
2016-09-12 10:42:45 -10:00