# THIS FILE IS AUTOMATICALLY GENERATED BY CARGO # # When uploading crates to the registry Cargo will automatically # "normalize" Cargo.toml files for maximal compatibility # with all versions of Cargo and also rewrite `path` dependencies # to registry (e.g., crates.io) dependencies. # # If you are reading this file be aware that the original Cargo.toml # will likely look very different (and much more reasonable). # See Cargo.toml.orig for the original contents. [package] edition = "2021" rust-version = "1.81" name = "tfhe" version = "0.10.0" build = "build.rs" exclude = [ "/docs/", "/c_api_tests/", "/CMakeLists.txt", "/js_on_wasm_tests/", "/web_wasm_parallel_tests/", ] autobins = false autoexamples = false autotests = false autobenches = false description = "TFHE-rs is a fully homomorphic encryption (FHE) library that implements Zama's variant of TFHE." homepage = "https://zama.ai/" documentation = "https://docs.zama.ai/tfhe-rs" readme = "README.md" keywords = [ "fully", "homomorphic", "encryption", "fhe", "cryptography", ] license = "BSD-3-Clause-Clear" repository = "https://github.com/zama-ai/tfhe-rs" [package.metadata.docs.rs] features = [ "x86_64-unix", "boolean", "shortint", "integer", "gpu", "zk-pok", ] rustdoc-args = [ "--html-in-header", "katex-header.html", ] [lib] name = "tfhe" crate-type = [ "lib", "staticlib", "cdylib", ] path = "src/lib.rs" [[example]] name = "boolean_key_sizes" path = "examples/utilities/boolean_key_sizes.rs" required-features = [ "boolean", "internal-keycache", ] [[example]] name = "dark_market" path = "examples/dark_market/main.rs" required-features = [ "integer", "internal-keycache", ] [[example]] name = "dist_tuniform" path = "examples/dist_tuniform.rs" required-features = [ "integer", "internal-keycache", ] [[example]] name = "fhe_strings" path = "examples/fhe_strings/main.rs" required-features = ["integer"] [[example]] name = "generates_test_keys" path = "examples/utilities/generates_test_keys.rs" required-features = [ "boolean", "shortint", "internal-keycache", ] [[example]] name = "hlapi_compact_pk_ct_sizes" path = "examples/utilities/hlapi_compact_pk_ct_sizes.rs" required-features = [ "integer", "internal-keycache", ] [[example]] name = "micro_bench_and" path = "examples/utilities/micro_bench_and.rs" required-features = ["boolean"] [[example]] name = "pbs_count" path = "examples/pbs_count.rs" required-features = [ "integer", "pbs-stats", ] [[example]] name = "print_doc_bench_parameters" path = "examples/utilities/print_doc_bench_parameters.rs" required-features = [ "shortint", "internal-keycache", ] [[example]] name = "regex_engine" path = "examples/regex_engine/main.rs" required-features = ["integer"] [[example]] name = "sha256" path = "examples/sha256.rs" required-features = ["integer"] [[example]] name = "sha256_bool" path = "examples/sha256_bool/main.rs" required-features = ["boolean"] [[example]] name = "shortint_key_sizes" path = "examples/utilities/shortint_key_sizes.rs" required-features = [ "shortint", "internal-keycache", ] [[example]] name = "wasm_benchmarks_parser" path = "examples/utilities/wasm_benchmarks_parser.rs" required-features = [ "shortint", "internal-keycache", ] [[example]] name = "write_params_to_file" path = "examples/utilities/params_to_file.rs" required-features = [ "boolean", "shortint", "internal-keycache", ] [[test]] name = "backward_compatibility_tests" path = "tests/backward_compatibility_tests.rs" [[bench]] name = "boolean-bench" path = "benches/boolean/bench.rs" harness = false required-features = [ "boolean", "internal-keycache", ] [[bench]] name = "dev-bench" path = "benches/core_crypto/dev_bench.rs" harness = false required-features = ["internal-keycache"] [[bench]] name = "glwe_packing_compression-integer-bench" path = "benches/integer/glwe_packing_compression.rs" harness = false required-features = [ "integer", "internal-keycache", ] [[bench]] name = "glwe_packing_compression-shortint-bench" path = "benches/shortint/glwe_packing_compression.rs" harness = false required-features = [ "shortint", "internal-keycache", ] [[bench]] name = "hlapi" path = "benches/high_level_api/bench.rs" harness = false required-features = [ "integer", "internal-keycache", ] [[bench]] name = "integer-bench" path = "benches/integer/bench.rs" harness = false required-features = [ "integer", "internal-keycache", ] [[bench]] name = "integer-signed-bench" path = "benches/integer/signed_bench.rs" harness = false required-features = [ "integer", "internal-keycache", ] [[bench]] name = "keygen" path = "benches/keygen/bench.rs" harness = false required-features = [ "shortint", "internal-keycache", ] [[bench]] name = "ks-bench" path = "benches/core_crypto/ks_bench.rs" harness = false required-features = [ "shortint", "internal-keycache", ] [[bench]] name = "oprf-shortint-bench" path = "benches/shortint/oprf.rs" harness = false required-features = [ "shortint", "internal-keycache", ] [[bench]] name = "pbs-bench" path = "benches/core_crypto/pbs_bench.rs" harness = false required-features = [ "boolean", "shortint", "internal-keycache", ] [[bench]] name = "pbs128-bench" path = "benches/core_crypto/pbs128_bench.rs" harness = false required-features = ["shortint"] [[bench]] name = "shortint-bench" path = "benches/shortint/bench.rs" harness = false required-features = [ "shortint", "internal-keycache", ] [[bench]] name = "utilities" path = "benches/utilities.rs" harness = false required-features = [ "boolean", "shortint", "integer", "internal-keycache", ] [[bench]] name = "zk-pke-bench" path = "benches/integer/zk_pke.rs" harness = false required-features = [ "integer", "zk-pok", "internal-keycache", ] [dependencies.aligned-vec] version = "0.5" features = ["serde"] [dependencies.bincode] version = "1.3.3" [dependencies.bytemuck] version = "1.14.3" [dependencies.concrete-csprng] version = "0.4.1" features = [ "generator_fallback", "parallel", ] [dependencies.concrete-fft] version = "0.5.1" features = [ "serde", "fft128", ] [dependencies.concrete-ntt] version = "0.2.0" [dependencies.console_error_panic_hook] version = "0.1.7" optional = true [dependencies.dyn-stack] version = "0.10" [dependencies.fs2] version = "0.4.3" optional = true [dependencies.getrandom] version = "0.2.8" optional = true [dependencies.itertools] version = "0.11.0" [dependencies.js-sys] version = "0.3" optional = true [dependencies.lazy_static] version = "1.4.0" optional = true [dependencies.paste] version = "1.0.7" [dependencies.pulp] version = "0.18.22" [dependencies.rand_core] version = "0.6.4" features = ["std"] [dependencies.rayon] version = "1.5.0" [dependencies.serde] version = "1.0" features = ["derive"] [dependencies.serde-wasm-bindgen] version = "0.6.0" optional = true [dependencies.sha3] version = "0.10" optional = true [dependencies.tfhe-cuda-backend] version = "0.6.0" optional = true [dependencies.tfhe-versionable] version = "0.3.2" [dependencies.tfhe-zk-pok] version = "0.3.2" optional = true [dependencies.wasm-bindgen] version = ">=0.2.86,<0.2.94" features = ["serde-serialize"] optional = true [dependencies.wasm-bindgen-rayon] version = "1.0" optional = true [dev-dependencies.clap] version = "=4.4.4" features = ["derive"] [dev-dependencies.combine] version = "4.6.6" [dev-dependencies.criterion] version = "0.5.1" [dev-dependencies.doc-comment] version = "0.3.3" [dev-dependencies.env_logger] version = "0.10.0" [dev-dependencies.fs2] version = "0.4.3" [dev-dependencies.hex] version = "0.4.3" [dev-dependencies.itertools] version = "0.11.0" [dev-dependencies.lazy_static] version = "1.4.0" [dev-dependencies.libm] version = "0.2.6" [dev-dependencies.log] version = "0.4.19" [dev-dependencies.rand] version = "0.8.5" [dev-dependencies.rand_distr] version = "0.4.3" [dev-dependencies.ron] version = "0.8" [dev-dependencies.serde_json] version = "1.0.94" [dev-dependencies.statrs] version = "0.16" [dev-dependencies.test-case] version = "3.1.0" [build-dependencies.cbindgen] version = "0.26.0" optional = true [features] __c_api = ["dep:cbindgen"] __force_skip_cbindgen = [] __profiling = [] __wasm_api = [ "dep:wasm-bindgen", "dep:js-sys", "dep:console_error_panic_hook", "dep:serde-wasm-bindgen", "dep:getrandom", "getrandom/js", ] aarch64 = ["generator_aarch64_aes"] aarch64-unix = [ "aarch64", "seeder_unix", ] boolean = [] boolean-c-api = [ "boolean", "__c_api", ] boolean-client-js-wasm-api = [ "boolean", "__wasm_api", ] experimental = [] experimental-force_fft_algo_dif4 = [] generator_aarch64_aes = ["concrete-csprng/generator_aarch64_aes"] generator_x86_64_aesni = ["concrete-csprng/generator_x86_64_aesni"] gpu = ["dep:tfhe-cuda-backend"] high-level-c-api = [ "boolean-c-api", "shortint-c-api", "integer", "__c_api", ] high-level-client-js-wasm-api = [ "boolean", "shortint", "integer", "__wasm_api", ] integer = ["shortint"] integer-client-js-wasm-api = [ "integer", "__wasm_api", ] internal-keycache = [ "dep:lazy_static", "dep:fs2", ] nightly-avx512 = [ "concrete-fft/nightly", "concrete-ntt/nightly", "pulp/nightly", ] parallel-wasm-api = ["dep:wasm-bindgen-rayon"] pbs-stats = [] seeder_unix = ["concrete-csprng/seeder_unix"] seeder_x86_64_rdseed = ["concrete-csprng/seeder_x86_64_rdseed"] shortint = ["dep:sha3"] shortint-c-api = [ "shortint", "__c_api", ] shortint-client-js-wasm-api = [ "shortint", "__wasm_api", ] x86_64 = [ "generator_x86_64_aesni", "seeder_x86_64_rdseed", ] x86_64-unix = [ "x86_64", "seeder_unix", ] zk-pok = ["dep:tfhe-zk-pok"] [lints.rust.unexpected_cfgs] level = "warn" priority = 0 check-cfg = [ "cfg(bench)", "cfg(tarpaulin)", "cfg(tfhe_lints)", ]