From f822c70721bd1657d1d3b2cda2db3e66a8ea62e4 Mon Sep 17 00:00:00 2001 From: Harald Hoyer Date: Tue, 18 Feb 2025 10:04:05 +0100 Subject: [PATCH] chore: remove unused `rand` dependency and update crates - Removed `rand` dependency from multiple `.toml` files and updated relevant imports to use `rand_core::OsRng`. - Updated OpenTelemetry dependencies to latest versions and refactored SDK initialization to use `SdkLoggerProvider`. - Bumped versions of several dependencies including `clap`, `awc`, `ring`, and `smallvec` for compatibility and features. Signed-off-by: Harald Hoyer --- Cargo.lock | 218 ++++++++++++++++++-------------- Cargo.toml | 11 +- bin/tee-key-preexec/Cargo.toml | 1 - crates/teepot/Cargo.toml | 1 - crates/teepot/src/config/mod.rs | 21 +-- crates/teepot/src/server/pki.rs | 5 +- crates/teepot/src/sgx/sign.rs | 3 +- 7 files changed, 140 insertions(+), 120 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 808055e..fdb34a6 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -337,9 +337,9 @@ checksum = "55cc3b69f167a1ef2e161439aa98aed94e6028e5f9a59be9a6ffb47aef1651f9" [[package]] name = "anyhow" -version = "1.0.95" +version = "1.0.96" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "34ac096ce696dc2fcabef30516bb13c0a68a11d30131d3df6f04711467681b04" +checksum = "6b964d184e89d9b6b67dd2715bc8e74cf3107fb2b529990c90cf517326150bf4" [[package]] name = "argon2" @@ -458,9 +458,9 @@ dependencies = [ [[package]] name = "aws-lc-rs" -version = "1.12.2" +version = "1.12.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4c2b7ddaa2c56a367ad27a094ad8ef4faacf8a617c2575acb2ba88949df999ca" +checksum = "3c6a895b664295a4ba0c2c0203c7075ea585dd75cd5c37a8efac829e13e460ef" dependencies = [ "aws-lc-sys", "paste", @@ -469,9 +469,9 @@ dependencies = [ [[package]] name = "aws-lc-sys" -version = "0.25.1" +version = "0.26.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "54ac4f13dad353b209b34cbec082338202cbc01c8f00336b55c750c13ac91f8f" +checksum = "0f9dd2e03ee80ca2822dd6ea431163d2ef259f2066a4d6ccaca6d9dcb386aa43" dependencies = [ "bindgen 0.69.5", "cc", @@ -910,9 +910,9 @@ dependencies = [ [[package]] name = "cc" -version = "1.2.13" +version = "1.2.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c7777341816418c02e033934a09f20dc0ccaf65a5201ef8a450ae0105a573fda" +checksum = "0c3d1b2e905a3a7b00a6141adb0e4c0bb941d11caf55349d863942a1cc44e3c9" dependencies = [ "jobserver", "libc", @@ -1002,9 +1002,9 @@ dependencies = [ [[package]] name = "clap" -version = "4.5.28" +version = "4.5.30" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3e77c3243bd94243c03672cb5154667347c457ca271254724f9f393aee1c05ff" +checksum = "92b7b18d71fad5313a1e320fa9897994228ce274b60faa4d694fe0ea89cd9e6d" dependencies = [ "clap_builder", "clap_derive", @@ -1012,9 +1012,9 @@ dependencies = [ [[package]] name = "clap_builder" -version = "4.5.27" +version = "4.5.30" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1b26884eb4b57140e4d2d93652abfa49498b938b3c9179f9fc487b0acc3edad7" +checksum = "a35db2071778a7344791a4fb4f95308b5673d219dee3ae348b86642574ecc90c" dependencies = [ "anstyle", "clap_lex", @@ -1098,7 +1098,7 @@ dependencies = [ "serde", "serde_json", "toml", - "winnow 0.7.1", + "winnow 0.7.3", "yaml-rust2", ] @@ -1724,9 +1724,9 @@ dependencies = [ [[package]] name = "equivalent" -version = "1.0.1" +version = "1.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5443807d6dff69373d433ab9ef5378ad8df50ca6298caf15de6e52e24aaf54d5" +checksum = "877a4ace8713b0bcf2a4e7eec82529c029f1d0619886d18145fea96c3ffe5c0f" [[package]] name = "errno" @@ -2158,9 +2158,9 @@ dependencies = [ [[package]] name = "h2" -version = "0.4.7" +version = "0.4.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ccae279728d634d083c00f6099cb58f01cc99c145b84b8be2f6c74618d79922e" +checksum = "5017294ff4bb30944501348f6f8e42e6ad28f42c8bbef7a74029aff064a4e3c2" dependencies = [ "atomic-waker", "bytes", @@ -2386,7 +2386,7 @@ dependencies = [ "bytes", "futures-channel", "futures-util", - "h2 0.4.7", + "h2 0.4.8", "http 1.2.0", "http-body 1.0.1", "httparse", @@ -2780,6 +2780,15 @@ dependencies = [ "either", ] +[[package]] +name = "itertools" +version = "0.14.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2b192c782037fadd9cfa75548310488aabdbf3d2da73885b31bd0abd03351285" +dependencies = [ + "either", +] + [[package]] name = "itoa" version = "1.0.14" @@ -3229,9 +3238,9 @@ checksum = "68354c5c6bd36d73ff3feceb05efa59b6acb7626617f4962be322a825e61f79a" [[package]] name = "miniz_oxide" -version = "0.8.3" +version = "0.8.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b8402cab7aefae129c6977bb0ff1b8fd9a04eb5b51efc50a70bea51cda0c7924" +checksum = "b3b1c9bd4fe1f0f8b387f6eb9eb3b4a1aa26185e5750efb9140301703f62cd1b" dependencies = [ "adler2", ] @@ -3262,9 +3271,9 @@ checksum = "e94e1e6445d314f972ff7395df2de295fe51b71821694f0b0e1e79c4f12c8577" [[package]] name = "native-tls" -version = "0.2.13" +version = "0.2.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0dab59f8e050d5df8e4dd87d9206fb6f65a483e20ac9fda365ade4fab353196c" +checksum = "87de3442987e9dbec73158d5c715e7ad9072fda936bb03d19d7fa10e00520f0e" dependencies = [ "libc", "log", @@ -3475,9 +3484,9 @@ checksum = "c08d65885ee38876c4f86fa503fb49d7b507c2b62552df7c70b2fce627e06381" [[package]] name = "openssl" -version = "0.10.70" +version = "0.10.71" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "61cfb4e166a8bb8c9b55c500bc2308550148ece889be90f609377e58140f42c6" +checksum = "5e14130c6a98cd258fdcb0fb6d744152343ff729cbfcb28c656a9d12b999fbcd" dependencies = [ "bitflags 2.8.0", "cfg-if", @@ -3507,9 +3516,9 @@ checksum = "d05e27ee213611ffe7d6348b942e8f942b37114c00cc03cec254295a4a17852e" [[package]] name = "openssl-sys" -version = "0.9.105" +version = "0.9.106" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8b22d5b84be05a8d6947c7cb71f7c849aa0f112acd4bf51c2a7c1c988ac0a9dc" +checksum = "8bb61ea9811cc39e3c2069f40b8b8e2e70d8569b361f879786cc7ed48b777cdd" dependencies = [ "cc", "libc", @@ -3529,26 +3538,26 @@ dependencies = [ [[package]] name = "opentelemetry" -version = "0.27.1" +version = "0.28.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ab70038c28ed37b97d8ed414b6429d343a8bbf44c9f79ec854f3a643029ba6d7" +checksum = "236e667b670a5cdf90c258f5a55794ec5ac5027e960c224bff8367a59e1e6426" dependencies = [ "futures-core", "futures-sink", "js-sys", "pin-project-lite", - "thiserror 1.0.69", + "thiserror 2.0.11", "tracing", ] [[package]] name = "opentelemetry-appender-tracing" -version = "0.27.0" +version = "0.28.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ab5feffc321035ad94088a7e5333abb4d84a8726e54a802e736ce9dd7237e85b" +checksum = "c513c7af3bec30113f3d4620134ff923295f1e9c580fda2b8abe0831f925ddc0" dependencies = [ "log", - "opentelemetry 0.27.1", + "opentelemetry 0.28.0", "tracing", "tracing-core", "tracing-log 0.2.0", @@ -3568,6 +3577,20 @@ dependencies = [ "reqwest 0.11.27", ] +[[package]] +name = "opentelemetry-http" +version = "0.28.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a8863faf2910030d139fb48715ad5ff2f35029fc5f244f6d5f689ddcf4d26253" +dependencies = [ + "async-trait", + "bytes", + "http 1.2.0", + "opentelemetry 0.28.0", + "reqwest 0.12.12", + "tracing", +] + [[package]] name = "opentelemetry-otlp" version = "0.13.0" @@ -3577,7 +3600,7 @@ dependencies = [ "async-trait", "futures-core", "http 0.2.12", - "opentelemetry-http", + "opentelemetry-http 0.9.0", "opentelemetry-proto 0.3.0", "opentelemetry-semantic-conventions 0.12.0", "opentelemetry_api", @@ -3591,18 +3614,20 @@ dependencies = [ [[package]] name = "opentelemetry-otlp" -version = "0.27.0" +version = "0.28.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "91cf61a1868dacc576bf2b2a1c3e9ab150af7272909e80085c3173384fe11f76" +checksum = "5bef114c6d41bea83d6dc60eb41720eedd0261a67af57b66dd2b84ac46c01d91" dependencies = [ "async-trait", "futures-core", "http 1.2.0", - "opentelemetry 0.27.1", - "opentelemetry-proto 0.27.0", - "opentelemetry_sdk 0.27.1", + "opentelemetry 0.28.0", + "opentelemetry-http 0.28.0", + "opentelemetry-proto 0.28.0", + "opentelemetry_sdk 0.28.0", "prost 0.13.5", - "thiserror 1.0.69", + "reqwest 0.12.12", + "thiserror 2.0.11", "tokio", "tonic 0.12.3", "tracing", @@ -3622,12 +3647,12 @@ dependencies = [ [[package]] name = "opentelemetry-proto" -version = "0.27.0" +version = "0.28.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a6e05acbfada5ec79023c85368af14abd0b307c015e9064d249b2a950ef459a6" +checksum = "56f8870d3024727e99212eb3bb1762ec16e255e3e6f58eeb3dc8db1aa226746d" dependencies = [ - "opentelemetry 0.27.1", - "opentelemetry_sdk 0.27.1", + "opentelemetry 0.28.0", + "opentelemetry_sdk 0.28.0", "prost 0.13.5", "tonic 0.12.3", ] @@ -3688,20 +3713,20 @@ dependencies = [ [[package]] name = "opentelemetry_sdk" -version = "0.27.1" +version = "0.28.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "231e9d6ceef9b0b2546ddf52335785ce41252bc7474ee8ba05bfad277be13ab8" +checksum = "84dfad6042089c7fc1f6118b7040dc2eb4ab520abbf410b79dc481032af39570" dependencies = [ "async-trait", "futures-channel", "futures-executor", "futures-util", "glob", - "opentelemetry 0.27.1", + "opentelemetry 0.28.0", "percent-encoding", "rand", "serde_json", - "thiserror 1.0.69", + "thiserror 2.0.11", "tokio", "tokio-stream", "tracing", @@ -4123,7 +4148,7 @@ version = "3.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8ecf48c7ca261d60b74ab1a7b20da18bede46776b2e55535cb958eb595c5fa7b" dependencies = [ - "toml_edit 0.22.23", + "toml_edit 0.22.24", ] [[package]] @@ -4242,7 +4267,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8a56d757972c98b346a9b766e3f02746cde6dd1cd1d1d563472929fdd74bec4d" dependencies = [ "anyhow", - "itertools 0.12.1", + "itertools 0.14.0", "proc-macro2", "quote", "syn 2.0.98", @@ -4465,7 +4490,7 @@ dependencies = [ "futures-channel", "futures-core", "futures-util", - "h2 0.4.7", + "h2 0.4.8", "http 1.2.0", "http-body 1.0.1", "http-body-util", @@ -4521,15 +4546,14 @@ dependencies = [ [[package]] name = "ring" -version = "0.17.8" +version = "0.17.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c17fa4cb658e3583423e915b9f3acc01cceaee1860e33d59ebae66adc3a2dc0d" +checksum = "e75ec5e92c4d8aede845126adc388046234541629e76029599ed35a003c7ed24" dependencies = [ "cc", "cfg-if", "getrandom 0.2.15", "libc", - "spin", "untrusted", "windows-sys 0.52.0", ] @@ -4579,7 +4603,7 @@ name = "rtmr-calc" version = "0.3.0" dependencies = [ "anyhow", - "clap 4.5.28", + "clap 4.5.30", "gpt", "hex", "pe-sign", @@ -4630,9 +4654,9 @@ dependencies = [ [[package]] name = "rustls" -version = "0.23.22" +version = "0.23.23" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9fb9263ab4eb695e42321db096e3b8fbd715a59b154d5c88d82db2175b681ba7" +checksum = "47796c98c480fce5406ef69d1c76378375492c3b0a0de587be0c1d9feb12f395" dependencies = [ "aws-lc-rs", "log", @@ -4977,9 +5001,9 @@ dependencies = [ [[package]] name = "serde" -version = "1.0.217" +version = "1.0.218" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "02fc4265df13d6fa1d00ecff087228cc0a2b5f3c0e87e258d8b94a156e984c70" +checksum = "e8dfc9d19bdbf6d17e22319da49161d5d0108e4188e8b680aef6299eed22df60" dependencies = [ "serde_derive", ] @@ -4996,9 +5020,9 @@ dependencies = [ [[package]] name = "serde_derive" -version = "1.0.217" +version = "1.0.218" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5a9bf7cf98d04a2b28aead066b7496853d4779c9cc183c440dbac457641e19a0" +checksum = "f09503e191f4e797cb8aac08e9a4a4695c5edf6a2e70e376d961ddd5c969f82b" dependencies = [ "proc-macro2", "quote", @@ -5007,9 +5031,9 @@ dependencies = [ [[package]] name = "serde_json" -version = "1.0.138" +version = "1.0.139" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d434192e7da787e94a6ea7e9670b26a036d0ca41e0b7efb2676dd32bae872949" +checksum = "44f86c3acccc9c65b153fe1b85a3be07fe5515274ec9f0653b4a0875731c72a6" dependencies = [ "itoa", "memchr", @@ -5162,7 +5186,7 @@ name = "sha384-extend" version = "0.3.0" dependencies = [ "anyhow", - "clap 4.5.28", + "clap 4.5.30", "hex", "sha2", ] @@ -5238,9 +5262,9 @@ dependencies = [ [[package]] name = "smallvec" -version = "1.13.2" +version = "1.14.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3c5e1a9a646d36c3599cd173a41282daf47c44583ad367b8e6837255952e5c67" +checksum = "7fcf8323ef1faaee30a44a340193b1ac6814fd9b7b4e88e9d4519a3e4abe1cfd" [[package]] name = "socket2" @@ -5468,7 +5492,7 @@ name = "tdx-extend" version = "0.3.0" dependencies = [ "anyhow", - "clap 4.5.28", + "clap 4.5.30", "hex", "teepot", "tracing", @@ -5491,8 +5515,7 @@ name = "tee-key-preexec" version = "0.3.0" dependencies = [ "anyhow", - "clap 4.5.28", - "rand", + "clap 4.5.30", "secp256k1 0.30.0", "teepot", "tracing", @@ -5505,7 +5528,7 @@ name = "tee-ratls-preexec" version = "0.3.0" dependencies = [ "anyhow", - "clap 4.5.28", + "clap 4.5.30", "rsa", "teepot", "tracing", @@ -5533,7 +5556,7 @@ version = "0.3.0" dependencies = [ "actix-web", "anyhow", - "clap 4.5.28", + "clap 4.5.30", "serde", "teepot", "tracing", @@ -5549,7 +5572,7 @@ dependencies = [ "anyhow", "awc", "bytemuck", - "clap 4.5.28", + "clap 4.5.30", "hex", "rustls", "serde_json", @@ -5568,7 +5591,7 @@ dependencies = [ "actix-web", "anyhow", "awc", - "clap 4.5.28", + "clap 4.5.30", "rustls", "serde_json", "teepot", @@ -5589,7 +5612,7 @@ dependencies = [ "base64 0.22.1", "bytemuck", "bytes", - "clap 4.5.28", + "clap 4.5.30", "config", "const-oid", "enumset", @@ -5598,15 +5621,14 @@ dependencies = [ "hex", "num-integer", "num-traits", - "opentelemetry 0.27.1", + "opentelemetry 0.28.0", "opentelemetry-appender-tracing", - "opentelemetry-otlp 0.27.0", + "opentelemetry-otlp 0.28.0", "opentelemetry-semantic-conventions 0.28.0", - "opentelemetry_sdk 0.27.1", + "opentelemetry_sdk 0.28.0", "p256", "pgp", "pkcs8 0.10.2", - "rand", "reqwest 0.12.12", "rsa", "rustls", @@ -5640,7 +5662,7 @@ dependencies = [ "actix-web", "anyhow", "awc", - "clap 4.5.28", + "clap 4.5.30", "serde_json", "teepot", "tracing", @@ -5663,7 +5685,7 @@ dependencies = [ "actix-web", "anyhow", "awc", - "clap 4.5.28", + "clap 4.5.30", "serde_json", "teepot", "tracing", @@ -5673,9 +5695,9 @@ dependencies = [ [[package]] name = "tempfile" -version = "3.16.0" +version = "3.17.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "38c246215d7d24f48ae091a2902398798e05d978b24315d6efbc00ede9a8bb91" +checksum = "22e5a0acb1f3f55f65cc4a866c361b2fb2a0ff6366785ae6fbb5f85df07ba230" dependencies = [ "cfg-if", "fastrand", @@ -5933,7 +5955,7 @@ dependencies = [ "serde", "serde_spanned", "toml_datetime", - "toml_edit 0.22.23", + "toml_edit 0.22.24", ] [[package]] @@ -5958,15 +5980,15 @@ dependencies = [ [[package]] name = "toml_edit" -version = "0.22.23" +version = "0.22.24" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "02a8b472d1a3d7c18e2d61a489aee3453fd9031c33e4f55bd533f4a7adca1bee" +checksum = "17b4795ff5edd201c7cd6dca065ae59972ce77d1b80fa0a84d94950ece7d1474" dependencies = [ "indexmap 2.7.1", "serde", "serde_spanned", "toml_datetime", - "winnow 0.7.1", + "winnow 0.7.3", ] [[package]] @@ -6008,7 +6030,7 @@ dependencies = [ "axum 0.7.9", "base64 0.22.1", "bytes", - "h2 0.4.7", + "h2 0.4.8", "http 1.2.0", "http-body 1.0.1", "http-body-util", @@ -6238,9 +6260,9 @@ dependencies = [ [[package]] name = "typenum" -version = "1.17.0" +version = "1.18.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "42ff0bf0c66b8238c6f3b578df37d0b7848e55df8577b3f74f92a69acceeb825" +checksum = "1dccffe3ce07af9386bfd29e80c0ab1a8205a2fc34e4bcd40364df902cfa8f3f" [[package]] name = "uint" @@ -6265,9 +6287,9 @@ dependencies = [ [[package]] name = "unicode-ident" -version = "1.0.16" +version = "1.0.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a210d160f08b701c8721ba1c726c11662f877ea6b7094007e1ca9a1041945034" +checksum = "00e2473a93778eb0bad35909dff6a10d28e63f792f16ed15e404fca9d5eeedbe" [[package]] name = "unicode-width" @@ -6348,9 +6370,9 @@ checksum = "b6c140620e7ffbb22c2dee59cafe6084a59b5ffc27a8859a5f0d494b5d52b6be" [[package]] name = "uuid" -version = "1.13.1" +version = "1.13.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ced87ca4be083373936a67f8de945faa23b6b42384bd5b64434850802c6dccd0" +checksum = "8c1f41ffb7cf259f1ecc2876861a17e7142e63ead296f671f81f6ae85903e0d6" dependencies = [ "getrandom 0.3.1", "serde", @@ -6369,7 +6391,7 @@ dependencies = [ "actix-web", "anyhow", "bytemuck", - "clap 4.5.28", + "clap 4.5.30", "hex", "pgp", "serde_json", @@ -6384,7 +6406,7 @@ dependencies = [ "actix-web", "anyhow", "base64 0.22.1", - "clap 4.5.28", + "clap 4.5.30", "serde_json", "teepot", "tracing", @@ -6409,7 +6431,7 @@ name = "verify-attestation" version = "0.3.0" dependencies = [ "anyhow", - "clap 4.5.28", + "clap 4.5.30", "hex", "secp256k1 0.30.0", "teepot", @@ -6421,7 +6443,7 @@ name = "verify-era-proof-attestation" version = "0.3.0" dependencies = [ "anyhow", - "clap 4.5.28", + "clap 4.5.30", "hex", "jsonrpsee-types 0.24.8", "reqwest 0.12.12", @@ -6847,9 +6869,9 @@ dependencies = [ [[package]] name = "winnow" -version = "0.7.1" +version = "0.7.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "86e376c75f4f43f44db463cf729e0d3acbf954d13e22c51e26e4c264b4ab545f" +checksum = "0e7f4ea97f6f78012141bcdb6a216b2609f0979ada50b20ca5b52dde2eac2bb1" dependencies = [ "memchr", ] diff --git a/Cargo.toml b/Cargo.toml index fb382b2..1fce9ca 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -20,7 +20,7 @@ actix-http = "3" actix-web = { version = "4.5", features = ["rustls-0_23"] } anyhow = "1.0.82" async-trait = "0.1.86" -awc = { version = "3.4", features = ["rustls-0_23-webpki-roots"] } +awc = { version = "3.5", features = ["rustls-0_23-webpki-roots"] } base64 = "0.22.0" bytemuck = { version = "1.15.0", features = ["derive", "min_const_generics", "extern_crate_std"] } bytes = "1" @@ -37,16 +37,15 @@ intel-tee-quote-verification-sys = { version = "0.2.1" } jsonrpsee-types = { version = "0.24", default-features = false } num-integer = "0.1.46" num-traits = "0.2.18" -opentelemetry = { version = "0.27.0", features = ["default", "logs"] } -opentelemetry-appender-tracing = { version = "0.27.0", features = ["experimental_metadata_attributes", "log"] } -opentelemetry-otlp = { version = "0.27.0", features = ["grpc-tonic", "logs"] } +opentelemetry = { version = "0.28.0", features = ["default", "logs"] } +opentelemetry-appender-tracing = { version = "0.28.1", features = ["experimental_metadata_attributes", "log"] } +opentelemetry-otlp = { version = "0.28.0", features = ["grpc-tonic", "logs"] } opentelemetry-semantic-conventions = { version = "0.28.0", features = ["semconv_experimental"] } -opentelemetry_sdk = { version = "0.27.1", features = ["tokio", "rt-tokio"] } +opentelemetry_sdk = { version = "0.28.0", features = ["tokio", "rt-tokio"] } p256 = "0.13.2" pe-sign = "0.1.10" pgp = "0.15" pkcs8 = { version = "0.10" } -rand = { version = "0.8", features = ["std", "std_rng"] } reqwest = { version = "0.12", features = ["json"] } rsa = { version = "0.9.6", features = ["sha2", "pem"] } rustls = { version = "0.23.20" } diff --git a/bin/tee-key-preexec/Cargo.toml b/bin/tee-key-preexec/Cargo.toml index e5a62cc..60a7b93 100644 --- a/bin/tee-key-preexec/Cargo.toml +++ b/bin/tee-key-preexec/Cargo.toml @@ -12,7 +12,6 @@ repository.workspace = true [dependencies] anyhow.workspace = true clap.workspace = true -rand.workspace = true secp256k1.workspace = true teepot.workspace = true tracing.workspace = true diff --git a/crates/teepot/Cargo.toml b/crates/teepot/Cargo.toml index ca0731e..83b7386 100644 --- a/crates/teepot/Cargo.toml +++ b/crates/teepot/Cargo.toml @@ -36,7 +36,6 @@ opentelemetry_sdk.workspace = true p256.workspace = true pgp.workspace = true pkcs8.workspace = true -rand.workspace = true reqwest.workspace = true rsa.workspace = true rustls.workspace = true diff --git a/crates/teepot/src/config/mod.rs b/crates/teepot/src/config/mod.rs index dea99ce..0132c62 100644 --- a/crates/teepot/src/config/mod.rs +++ b/crates/teepot/src/config/mod.rs @@ -10,7 +10,7 @@ use config::{ }; use opentelemetry::KeyValue; use opentelemetry_otlp::WithExportConfig; -use opentelemetry_sdk::{logs::LoggerProvider, runtime, Resource}; +use opentelemetry_sdk::{logs::SdkLoggerProvider, Resource}; use opentelemetry_semantic_conventions::{ attribute::{SERVICE_NAME, SERVICE_VERSION}, SCHEMA_URL, @@ -259,23 +259,24 @@ fn init_telemetry( }), ); // Configure OpenTelemetry resource - let resource = Resource::from_schema_url( - [ - KeyValue::new(SERVICE_NAME, config.crate_name.clone()), - KeyValue::new(SERVICE_VERSION, config.pkg_version.clone()), - ], - SCHEMA_URL, - ); + let resource = Resource::builder() + .with_schema_url( + [ + KeyValue::new(SERVICE_NAME, config.crate_name.clone()), + KeyValue::new(SERVICE_VERSION, config.pkg_version.clone()), + ], + SCHEMA_URL, + ) + .build(); // Configure the OTLP exporter - let logging_provider = LoggerProvider::builder() + let logging_provider = SdkLoggerProvider::builder() .with_batch_exporter( opentelemetry_otlp::LogExporter::builder() .with_tonic() .with_endpoint(&config.otlp.endpoint) .with_protocol(protocol_from_string(&config.otlp.protocol)?) .build()?, - runtime::Tokio, ) .with_resource(resource) .build(); diff --git a/crates/teepot/src/server/pki.rs b/crates/teepot/src/server/pki.rs index 305df84..b7e28d0 100644 --- a/crates/teepot/src/server/pki.rs +++ b/crates/teepot/src/server/pki.rs @@ -13,10 +13,9 @@ use const_oid::{ use intel_tee_quote_verification_rs::tee_qv_get_collateral; use p256::{ecdsa::DerSignature, pkcs8::EncodePrivateKey}; use pkcs8::der; -use rand::rngs::OsRng; use rustls::pki_types::PrivatePkcs8KeyDer; use sha2::{Digest, Sha256}; -use signature::Signer; +use signature::{rand_core::OsRng, Signer}; use std::{str::FromStr, time::Duration}; use tracing::debug; use x509_cert::{ @@ -223,7 +222,7 @@ where S::VerifyingKey: EncodePublicKey, { // Generate a keypair. - let mut rng = rand::rngs::OsRng; + let mut rng = OsRng; let signing_key = p256::ecdsa::SigningKey::random(&mut rng); let verifying_key = signing_key.verifying_key(); let verifying_key_der = verifying_key diff --git a/crates/teepot/src/sgx/sign.rs b/crates/teepot/src/sgx/sign.rs index bb73a98..4019590 100644 --- a/crates/teepot/src/sgx/sign.rs +++ b/crates/teepot/src/sgx/sign.rs @@ -14,6 +14,7 @@ use num_integer::Integer; use num_traits::ToPrimitive; use rsa::{ pkcs1::{DecodeRsaPrivateKey, EncodeRsaPrivateKey, LineEnding}, + rand_core::OsRng, traits::PublicKeyParts, BigUint, Pkcs1v15Sign, RsaPrivateKey, }; @@ -268,7 +269,7 @@ impl PrivateKey for RS256PrivateKey { type Error = rsa::errors::Error; fn generate(exponent: u8) -> Result { - let mut rng = rand::rngs::OsRng; + let mut rng = OsRng; let exp = BigUint::from(exponent); let key = RsaPrivateKey::new_with_exp(&mut rng, 384 * 8, &exp)?; Ok(Self::new(key))