[package] authors = ["Brian Smith "] 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.7.3" 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/bits.rs", "src/bssl.rs", "src/c.rs", "src/chacha.rs", "src/chacha_tests.txt", "src/constant_time.rs", "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/ed25519_tests.txt", "src/ec/eddsa.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/ecdsa_verify_tests.txt", "src/ec/suite_b/ops/ops.rs", "src/ec/suite_b/ops/p256.rs", "src/ec/suite_b/ops/p256_neg_tests.txt", "src/ec/suite_b/ops/p256_point_mul_base_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_sum_tests.txt", "src/ec/suite_b/ops/p384.rs", "src/ec/suite_b/ops/p384_div_by_2_tests.txt", "src/ec/suite_b/ops/p384_neg_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_sum_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/ec/x25519.rs", "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/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_pkcs1_sign_tests.txt", "src/rsa/rsa_pkcs1_verify_tests.txt", "src/rsa/rsa_primitive_verify_tests.txt", "src/rsa/rsa_pss_padding_tests.txt", "src/rsa/rsa_pss_sign_tests.txt", "src/rsa/rsa_pss_verify_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/add.c", "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/bn_test.cc", "crypto/bn/bn_tests.txt", "crypto/bn/cmp.c", "crypto/bn/convert.c", "crypto/bn/ctx.c", "crypto/bn/div.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/random.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/rand/sysrand.c", "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", "crypto/test/bn_test_convert.c", "crypto/test/bn_test_lib.c", "crypto/test/bn_test_lib.h", "crypto/test/bn_test_new.c", "crypto/test/bn_test_util.h", "crypto/test/file_test.cc", "crypto/test/file_test.h", "crypto/test/rand.h", "crypto/test/scoped_types.h", "include/openssl/aes.h", "include/openssl/arm_arch.h", "include/openssl/base.h", "include/openssl/bn.h", "include/openssl/cpu.h", "include/openssl/err.h", "include/openssl/mem.h", "include/openssl/opensslconf.h", "include/openssl/rsa.h", "include/openssl/type_check.h", "examples/checkdigest.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.3.2" [target.'cfg(any(target_os = "redox", all(unix, not(any(target_os = "macos", target_os = "ios")))))'.dependencies] lazy_static = "0.2.1" # 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.6" [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 = [] 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