314 lines
10 KiB
TOML
314 lines
10 KiB
TOML
[package]
|
|
authors = ["Brian Smith <brian@briansmith.org>"]
|
|
build = "build.rs"
|
|
categories = ["cryptography", "no-std"]
|
|
description = "Safe, fast, small crypto using Rust."
|
|
documentation = "https://briansmith.org/rustdoc/ring/"
|
|
keywords = ["crypto", "cryptography", "rand", "ECC", "RSA"]
|
|
license-file = "LICENSE"
|
|
name = "ring"
|
|
readme = "README.md"
|
|
repository = "https://github.com/briansmith/ring"
|
|
version = "0.9.4"
|
|
|
|
# Prevent multiple versions of *ring* from being linked into the same program.
|
|
links = "ring-asm"
|
|
|
|
exclude = [
|
|
# The presence of .gitignore is used to differentiate non-packaged builds
|
|
# from packaged builds in build.rs.
|
|
".gitignore",
|
|
"pregenerated/tmp",
|
|
]
|
|
include = [
|
|
"LICENSE",
|
|
"Cargo.toml",
|
|
|
|
"Makefile",
|
|
"mk/ring.mk",
|
|
"mk/bottom_of_makefile.mk",
|
|
"mk/top_of_makefile.mk",
|
|
|
|
"pregenerated/*",
|
|
|
|
"build.rs",
|
|
|
|
"src/aead/aead.rs",
|
|
"src/aead/aes_128_gcm_tests.txt",
|
|
"src/aead/aes_256_gcm_tests.txt",
|
|
"src/aead/aes_gcm.rs",
|
|
"src/aead/aes_tests.txt",
|
|
"src/aead/chacha20_poly1305.rs",
|
|
"src/aead/chacha20_poly1305_openssh.rs",
|
|
"src/aead/chacha20_poly1305_tests.txt",
|
|
"src/agreement.rs",
|
|
"src/arithmetic/arithmetic.rs",
|
|
"src/arithmetic/montgomery.rs",
|
|
"src/bits.rs",
|
|
"src/bssl.rs",
|
|
"src/c.rs",
|
|
"src/chacha.rs",
|
|
"src/chacha_tests.txt",
|
|
"src/constant_time.rs",
|
|
"src/data/alg-rsa-encryption.der",
|
|
"src/der.rs",
|
|
"src/digest/digest.rs",
|
|
"src/digest/digest_tests.txt",
|
|
"src/digest/sha1.rs",
|
|
"src/ec/ec.rs",
|
|
"src/ec/ecdh_tests.txt",
|
|
"src/ec/curve25519/curve25519.rs",
|
|
"src/ec/curve25519/ed25519.rs",
|
|
"src/ec/curve25519/ed25519_pkcs8_v2_template.der",
|
|
"src/ec/curve25519/ops.rs",
|
|
"src/ec/curve25519/x25519.rs",
|
|
"src/ec/suite_b/curve.rs",
|
|
"src/ec/suite_b/ecdh.rs",
|
|
"src/ec/suite_b/ecdsa.rs",
|
|
"src/ec/suite_b/ecdsa_digest_scalar_tests.txt",
|
|
"src/ec/suite_b/ops/elem.rs",
|
|
"src/ec/suite_b/ops/ops.rs",
|
|
"src/ec/suite_b/ops/p256.rs",
|
|
"src/ec/suite_b/ops/p256_elem_mul_tests.txt",
|
|
"src/ec/suite_b/ops/p256_elem_neg_tests.txt",
|
|
"src/ec/suite_b/ops/p256_elem_sum_tests.txt",
|
|
"src/ec/suite_b/ops/p256_point_double_tests.txt",
|
|
"src/ec/suite_b/ops/p256_point_mul_base_tests.txt",
|
|
"src/ec/suite_b/ops/p256_point_mul_serialized_tests.txt",
|
|
"src/ec/suite_b/ops/p256_point_mul_tests.txt",
|
|
"src/ec/suite_b/ops/p256_point_sum_tests.txt",
|
|
"src/ec/suite_b/ops/p256_point_sum_mixed_tests.txt",
|
|
"src/ec/suite_b/ops/p256_scalar_mul_tests.txt",
|
|
"src/ec/suite_b/ops/p256_scalar_square_tests.txt",
|
|
"src/ec/suite_b/ops/p384.rs",
|
|
"src/ec/suite_b/ops/p384_elem_div_by_2_tests.txt",
|
|
"src/ec/suite_b/ops/p384_elem_mul_tests.txt",
|
|
"src/ec/suite_b/ops/p384_elem_neg_tests.txt",
|
|
"src/ec/suite_b/ops/p384_elem_sum_tests.txt",
|
|
"src/ec/suite_b/ops/p384_point_double_tests.txt",
|
|
"src/ec/suite_b/ops/p384_point_mul_base_tests.txt",
|
|
"src/ec/suite_b/ops/p384_point_mul_tests.txt",
|
|
"src/ec/suite_b/ops/p384_point_sum_tests.txt",
|
|
"src/ec/suite_b/ops/p384_scalar_mul_tests.txt",
|
|
"src/ec/suite_b/private_key.rs",
|
|
"src/ec/suite_b/public_key.rs",
|
|
"src/ec/suite_b/suite_b.rs",
|
|
"src/ec/suite_b/suite_b_public_key_tests.txt",
|
|
"src/error.rs",
|
|
"src/limb.rs",
|
|
"src/hkdf.rs",
|
|
"src/hkdf_tests.txt",
|
|
"src/hmac.rs",
|
|
"src/hmac_generate_serializable_tests.txt",
|
|
"src/hmac_tests.txt",
|
|
"src/init.rs",
|
|
"src/lib.rs",
|
|
"src/pbkdf2.rs",
|
|
"src/pbkdf2_tests.txt",
|
|
"src/pkcs8.rs",
|
|
"src/poly1305.rs",
|
|
"src/poly1305_test.txt",
|
|
"src/polyfill.rs",
|
|
"src/rand.rs",
|
|
"src/rsa/bigint.rs",
|
|
"src/rsa/bigint_elem_exp_consttime_tests.txt",
|
|
"src/rsa/bigint_elem_exp_vartime_tests.txt",
|
|
"src/rsa/bigint_elem_mul_tests.txt",
|
|
"src/rsa/bigint_elem_reduced_once_tests.txt",
|
|
"src/rsa/bigint_elem_reduced_tests.txt",
|
|
"src/rsa/bigint_elem_squared_tests.txt",
|
|
"src/rsa/blinding.rs",
|
|
"src/rsa/padding.rs",
|
|
"src/rsa/random.rs",
|
|
"src/rsa/rsa.rs",
|
|
"src/rsa/rsa_pss_padding_tests.txt",
|
|
"src/rsa/signature_rsa_example_private_key.der",
|
|
"src/rsa/signature_rsa_example_public_key.der",
|
|
"src/rsa/signing.rs",
|
|
"src/rsa/verification.rs",
|
|
"src/signature.rs",
|
|
"src/test.rs",
|
|
"src/test_1_syntax_error_tests.txt",
|
|
"src/test_1_tests.txt",
|
|
"src/test_3_tests.txt",
|
|
"crypto/aes/aes.c",
|
|
"crypto/aes/asm/aes-586.pl",
|
|
"crypto/aes/asm/aes-armv4.pl",
|
|
"crypto/aes/asm/aes-x86_64.pl",
|
|
"crypto/aes/asm/aesni-x86.pl",
|
|
"crypto/aes/asm/aesni-x86_64.pl",
|
|
"crypto/aes/asm/aesv8-armx.pl",
|
|
"crypto/aes/asm/bsaes-armv7.pl",
|
|
"crypto/aes/asm/bsaes-x86_64.pl",
|
|
"crypto/aes/asm/vpaes-x86.pl",
|
|
"crypto/aes/asm/vpaes-x86_64.pl",
|
|
"crypto/bn/asm/armv4-mont.pl",
|
|
"crypto/bn/asm/armv8-mont.pl",
|
|
"crypto/bn/asm/x86-mont.pl",
|
|
"crypto/bn/asm/x86_64-mont.pl",
|
|
"crypto/bn/asm/x86_64-mont5.pl",
|
|
"crypto/bn/bn.c",
|
|
"crypto/bn/exponentiation.c",
|
|
"crypto/bn/gcd.c",
|
|
"crypto/bn/generic.c",
|
|
"crypto/bn/internal.h",
|
|
"crypto/bn/montgomery.c",
|
|
"crypto/bn/montgomery_inv.c",
|
|
"crypto/bn/mul.c",
|
|
"crypto/bn/shift.c",
|
|
"crypto/chacha/asm/chacha-armv4.pl",
|
|
"crypto/chacha/asm/chacha-armv8.pl",
|
|
"crypto/chacha/asm/chacha-x86.pl",
|
|
"crypto/chacha/asm/chacha-x86_64.pl",
|
|
"crypto/cipher/e_aes.c",
|
|
"crypto/cipher/internal.h",
|
|
"crypto/constant_time_test.c",
|
|
"crypto/cpu-aarch64-linux.c",
|
|
"crypto/cpu-arm-linux.c",
|
|
"crypto/cpu-arm.c",
|
|
"crypto/cpu-intel.c",
|
|
"crypto/crypto.c",
|
|
"crypto/curve25519/asm/x25519-asm-arm.S",
|
|
"crypto/curve25519/asm/x25519-asm-x86_64.S",
|
|
"crypto/curve25519/curve25519.c",
|
|
"crypto/curve25519/internal.h",
|
|
"crypto/curve25519/x25519-x86_64.c",
|
|
"crypto/ec/asm/ecp_nistz256-armv4.pl",
|
|
"crypto/ec/asm/ecp_nistz256-armv8.pl",
|
|
"crypto/ec/asm/ecp_nistz256-x86.pl",
|
|
"crypto/ec/asm/ecp_nistz256-x86_64.pl",
|
|
"crypto/ec/asm/p256-x86_64-asm.pl",
|
|
"crypto/ec/ecp_nistz.c",
|
|
"crypto/ec/ecp_nistz.h",
|
|
"crypto/ec/ecp_nistz256.c",
|
|
"crypto/ec/ecp_nistz256.h",
|
|
"crypto/ec/ecp_nistz256_table.inl",
|
|
"crypto/ec/ecp_nistz384.h",
|
|
"crypto/ec/ecp_nistz384.inl",
|
|
"crypto/ec/ecp_nistz384_mul.inl",
|
|
"crypto/ec/gfp_constant_time.c",
|
|
"crypto/ec/gfp_internal.h",
|
|
"crypto/ec/gfp_limbs.inl",
|
|
"crypto/ec/gfp_p256.c",
|
|
"crypto/ec/gfp_p384.c",
|
|
"crypto/internal.h",
|
|
"crypto/limbs/limbs.c",
|
|
"crypto/limbs/limbs.h",
|
|
"crypto/limbs/limbs.inl",
|
|
"crypto/mem.c",
|
|
"crypto/modes/asm/aesni-gcm-x86_64.pl",
|
|
"crypto/modes/asm/ghash-armv4.pl",
|
|
"crypto/modes/asm/ghash-x86.pl",
|
|
"crypto/modes/asm/ghash-x86_64.pl",
|
|
"crypto/modes/asm/ghashv8-armx.pl",
|
|
"crypto/modes/gcm.c",
|
|
"crypto/modes/internal.h",
|
|
"crypto/perlasm/arm-xlate.pl",
|
|
"crypto/perlasm/readme",
|
|
"crypto/perlasm/x86asm.pl",
|
|
"crypto/perlasm/x86gas.pl",
|
|
"crypto/perlasm/x86nasm.pl",
|
|
"crypto/perlasm/x86_64-xlate.pl",
|
|
"crypto/poly1305/asm/poly1305-armv4.pl",
|
|
"crypto/poly1305/asm/poly1305-armv8.pl",
|
|
"crypto/poly1305/asm/poly1305-x86.pl",
|
|
"crypto/poly1305/asm/poly1305-x86_64.pl",
|
|
"crypto/rsa/rsa.c",
|
|
"crypto/sha/asm/sha256-586.pl",
|
|
"crypto/sha/asm/sha256-armv4.pl",
|
|
"crypto/sha/asm/sha512-586.pl",
|
|
"crypto/sha/asm/sha512-armv4.pl",
|
|
"crypto/sha/asm/sha512-armv8.pl",
|
|
"crypto/sha/asm/sha512-x86_64.pl",
|
|
"include/GFp/aes.h",
|
|
"include/GFp/arm_arch.h",
|
|
"include/GFp/base.h",
|
|
"include/GFp/bn.h",
|
|
"include/GFp/cpu.h",
|
|
"include/GFp/mem.h",
|
|
"include/GFp/type_check.h",
|
|
"examples/checkdigest.rs",
|
|
"tests/ecdsa_tests.rs",
|
|
"tests/ecdsa_verify_asn1_tests.txt",
|
|
"tests/ecdsa_verify_fixed_tests.txt",
|
|
"tests/ed25519_tests.rs",
|
|
"tests/ed25519_tests.txt",
|
|
"tests/ed25519_from_pkcs8_tests.txt",
|
|
"tests/ed25519_from_pkcs8_unchecked_tests.txt",
|
|
"tests/pkcs8_test_ecPublicKey_p256.pk8",
|
|
"tests/pkcs8_test_ecPublicKey_p256_RSAPrivateKey.pk8",
|
|
"tests/pkcs8_test_rsaEncryption_2048_e3.pk8",
|
|
"tests/pkcs8_test_rsaEncryption_2048_e65537.pk8",
|
|
"tests/pkcs8_test_rsaEncryption_3072_e65537.pk8",
|
|
"tests/rsa_pkcs1_sign_tests.txt",
|
|
"tests/rsa_pkcs1_verify_tests.txt",
|
|
"tests/rsa_primitive_verify_tests.txt",
|
|
"tests/rsa_pss_sign_tests.txt",
|
|
"tests/rsa_pss_verify_tests.txt",
|
|
"tests/rsa_tests.rs",
|
|
"third-party/NIST/README.md",
|
|
"third-party/NIST/sha256sums.txt",
|
|
"third-party/NIST/SHAVS/SHA1LongMsg.rsp",
|
|
"third-party/NIST/SHAVS/SHA1Monte.rsp",
|
|
"third-party/NIST/SHAVS/SHA1ShortMsg.rsp",
|
|
"third-party/NIST/SHAVS/SHA224LongMsg.rsp",
|
|
"third-party/NIST/SHAVS/SHA224Monte.rsp",
|
|
"third-party/NIST/SHAVS/SHA224ShortMsg.rsp",
|
|
"third-party/NIST/SHAVS/SHA256LongMsg.rsp",
|
|
"third-party/NIST/SHAVS/SHA256Monte.rsp",
|
|
"third-party/NIST/SHAVS/SHA256ShortMsg.rsp",
|
|
"third-party/NIST/SHAVS/SHA384LongMsg.rsp",
|
|
"third-party/NIST/SHAVS/SHA384Monte.rsp",
|
|
"third-party/NIST/SHAVS/SHA384ShortMsg.rsp",
|
|
"third-party/NIST/SHAVS/SHA512LongMsg.rsp",
|
|
"third-party/NIST/SHAVS/SHA512Monte.rsp",
|
|
"third-party/NIST/SHAVS/SHA512ShortMsg.rsp",
|
|
]
|
|
|
|
[lib]
|
|
name = "ring"
|
|
|
|
[dependencies]
|
|
libc = "0.2.20"
|
|
untrusted = "0.5"
|
|
|
|
[target.'cfg(any(target_os = "redox", all(unix, not(any(target_os = "macos", target_os = "ios")))))'.dependencies]
|
|
lazy_static = "0.2.6"
|
|
|
|
|
|
# Keep this in sync with `[dependencies]` in pregenerate_asm/Cargo.toml.
|
|
[build-dependencies]
|
|
# we do not use the gcc parallel feature because we do the
|
|
# parallelism ourself. This gives us a much higher level of
|
|
# control about what should be parallised in which way
|
|
gcc = "0.3"
|
|
rayon = "0.7"
|
|
|
|
[features]
|
|
# These features are documented in the top-level module's documentation.
|
|
default = ["use_heap", "dev_urandom_fallback"]
|
|
dev_urandom_fallback = []
|
|
internal_benches = []
|
|
rsa_signing = ["use_heap"]
|
|
slow_tests = []
|
|
test_logging = []
|
|
use_heap = []
|
|
|
|
# XXX: debug = false because of https://github.com/rust-lang/rust/issues/34122
|
|
|
|
[profile.bench]
|
|
opt-level = 3
|
|
debug = false
|
|
rpath = false
|
|
lto = true
|
|
debug-assertions = false
|
|
codegen-units = 1
|
|
|
|
[profile.release]
|
|
opt-level = 3
|
|
debug = false
|
|
rpath = false
|
|
lto = true
|
|
debug-assertions = false
|
|
codegen-units = 1
|