diff --git a/rust/basic_ethereum/Cargo.lock b/rust/basic_ethereum/Cargo.lock index 7cc70636f..b4d4eaca0 100644 --- a/rust/basic_ethereum/Cargo.lock +++ b/rust/basic_ethereum/Cargo.lock @@ -96,21 +96,6 @@ dependencies = [ "syn 2.0.68", ] -[[package]] -name = "android-tzdata" -version = "0.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e999941b234f3131b00bc13c22d06e8c5ff726d1b6318ac7eb276997bbb4fef0" - -[[package]] -name = "android_system_properties" -version = "0.1.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "819e7219dbd41043ac279b19830f2efc897156490d7fd6ea916720117ee66311" -dependencies = [ - "libc", -] - [[package]] name = "anyhow" version = "1.0.86" @@ -342,7 +327,6 @@ dependencies = [ "getrandom", "ic-cdk 0.15.0", "ic-crypto-ecdsa-secp256k1", - "ic-crypto-extended-bip32", "ic-crypto-sha3", "ic-ethereum-types", "num-traits", @@ -356,15 +340,6 @@ version = "0.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3a8241f3ebb85c056b509d4327ad0358fbbba6ffb340bf388f26350aeda225b1" -[[package]] -name = "bincode" -version = "1.3.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b1f45e9417d87227c7a56d22e471c6206462cba514c7590c09aff4cf6d1ddcad" -dependencies = [ - "serde", -] - [[package]] name = "binread" version = "2.2.0" @@ -427,16 +402,6 @@ dependencies = [ "wyz", ] -[[package]] -name = "block-buffer" -version = "0.9.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4152116fd6e9dadb291ae18fc1ec3575ed6d84c29642d97890f4b4a3417297e4" -dependencies = [ - "block-padding", - "generic-array", -] - [[package]] name = "block-buffer" version = "0.10.4" @@ -446,12 +411,6 @@ dependencies = [ "generic-array", ] -[[package]] -name = "block-padding" -version = "0.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8d696c370c750c948ada61c69a0ee2cbbb9c50b1019ddb86d9317157a99c2cae" - [[package]] name = "blst" version = "0.3.12" @@ -476,16 +435,6 @@ version = "1.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c3ac9f8b63eca6fd385229b3675f6cc0dc5c8a5c8a54a59d4f52ffd670d87b0c" -[[package]] -name = "byte-unit" -version = "4.0.19" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "da78b32057b8fdfc352504708feeba7216dcd65a2c9ab02978cbd288d1279b6c" -dependencies = [ - "serde", - "utf8-width", -] - [[package]] name = "byteorder" version = "1.5.0" @@ -578,19 +527,6 @@ version = "1.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd" -[[package]] -name = "chrono" -version = "0.4.38" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a21f936df1771bf62b77f047b726c4625ff2e8aa607c01ec06e5a05bd8463401" -dependencies = [ - "android-tzdata", - "iana-time-zone", - "num-traits", - "serde", - "windows-targets 0.52.6", -] - [[package]] name = "codespan-reporting" version = "0.11.1" @@ -601,42 +537,6 @@ dependencies = [ "unicode-width", ] -[[package]] -name = "comparable" -version = "0.5.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eb513ee8037bf08c5270ecefa48da249f4c58e57a71ccfce0a5b0877d2a20eb2" -dependencies = [ - "comparable_derive", - "comparable_helper", - "pretty_assertions", - "serde", -] - -[[package]] -name = "comparable_derive" -version = "0.5.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a54b9c40054eb8999c5d1d36fdc90e4e5f7ff0d1d9621706f360b3cbc8beb828" -dependencies = [ - "convert_case 0.4.0", - "proc-macro2", - "quote", - "syn 1.0.109", -] - -[[package]] -name = "comparable_helper" -version = "0.5.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fb5437e327e861081c91270becff184859f706e3e50f5301a9d4dc8eb50752c3" -dependencies = [ - "convert_case 0.6.0", - "proc-macro2", - "quote", - "syn 1.0.109", -] - [[package]] name = "const-hex" version = "1.12.0" @@ -733,69 +633,6 @@ dependencies = [ "typenum", ] -[[package]] -name = "curve25519-dalek" -version = "4.1.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "97fb8b7c4503de7d6ae7b42ab72a5a59857b4c937ec27a3d4539dba95b5ab2be" -dependencies = [ - "cfg-if", - "cpufeatures", - "curve25519-dalek-derive", - "fiat-crypto", - "group", - "rand_core", - "rustc_version 0.4.0", - "subtle", - "zeroize", -] - -[[package]] -name = "curve25519-dalek-derive" -version = "0.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f46882e17999c6cc590af592290432be3bce0428cb0d5f8b6715e4dc7b383eb3" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.68", -] - -[[package]] -name = "darling" -version = "0.13.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a01d95850c592940db9b8194bc39f4bc0e89dee5c4265e4b1807c34a9aba453c" -dependencies = [ - "darling_core", - "darling_macro", -] - -[[package]] -name = "darling_core" -version = "0.13.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "859d65a907b6852c9361e3185c862aae7fafd2887876799fa55f5f99dc40d610" -dependencies = [ - "fnv", - "ident_case", - "proc-macro2", - "quote", - "strsim", - "syn 1.0.109", -] - -[[package]] -name = "darling_macro" -version = "0.13.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9c972679f83bdf9c42bd905396b6c3588a843a17f0f16dfcfa3e2c5d57441835" -dependencies = [ - "darling_core", - "quote", - "syn 1.0.109", -] - [[package]] name = "data-encoding" version = "2.6.0" @@ -846,12 +683,6 @@ dependencies = [ "syn 2.0.68", ] -[[package]] -name = "diff" -version = "0.1.13" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "56254986775e3233ffa9c4d7d3faaf6d36a2c09d30b20687e9f88bc8bafc16c8" - [[package]] name = "digest" version = "0.9.0" @@ -867,7 +698,7 @@ version = "0.10.7" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9ed9a281f7bc9b7576e61468ba615a66a5c8cfdff42420a70aa82701a3b1e292" dependencies = [ - "block-buffer 0.10.4", + "block-buffer", "const-oid", "crypto-common", "subtle", @@ -958,15 +789,6 @@ version = "1.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "5443807d6dff69373d433ab9ef5378ad8df50ca6298caf15de6e52e24aaf54d5" -[[package]] -name = "erased-serde" -version = "0.3.31" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6c138974f9d5e7fe373eb04df7cae98833802ae4b11c24ac7039a21d5af4b26c" -dependencies = [ - "serde", -] - [[package]] name = "errno" version = "0.3.9" @@ -1009,19 +831,6 @@ dependencies = [ "bytes", ] -[[package]] -name = "fe-derive" -version = "0.9.0" -source = "git+https://github.com/dfinity/ic?tag=release-2024-06-26_23-01-base#2e269c77aa2f6b2353ddad6a4ac3d5ddcac196b1" -dependencies = [ - "hex", - "num-bigint-dig", - "num-traits", - "proc-macro2", - "quote", - "syn 1.0.109", -] - [[package]] name = "ff" version = "0.13.0" @@ -1032,12 +841,6 @@ dependencies = [ "subtle", ] -[[package]] -name = "fiat-crypto" -version = "0.2.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "28dea519a9695b9977216879a3ebfddf92f1c08c05d984f8996aecd6ecdc811d" - [[package]] name = "fixed-hash" version = "0.8.0" @@ -1206,24 +1009,12 @@ dependencies = [ "tracing", ] -[[package]] -name = "half" -version = "1.8.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1b43ede17f21864e81be2fa654110bf1e793774238d86ef8555c37e6519c0403" - [[package]] name = "hashbrown" version = "0.14.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e5274423e17b7c9fc20b6e7e208532f9b19825d82dfd615708b70edd83df41f1" -[[package]] -name = "heck" -version = "0.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2304e00983f87ffb38b55b444b5e3b60a884b5d30c0fca7d82fe33449bbe55ea" - [[package]] name = "hermit-abi" version = "0.3.9" @@ -1367,69 +1158,6 @@ dependencies = [ "tracing", ] -[[package]] -name = "iana-time-zone" -version = "0.1.60" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e7ffbb5a1b541ea2561f8c41c087286cc091e21e556a4f09a8f6cbf17b69b141" -dependencies = [ - "android_system_properties", - "core-foundation-sys", - "iana-time-zone-haiku", - "js-sys", - "wasm-bindgen", - "windows-core", -] - -[[package]] -name = "iana-time-zone-haiku" -version = "0.1.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f31827a206f56af32e590ba56d5d2d085f558508192593743f16b2306495269f" -dependencies = [ - "cc", -] - -[[package]] -name = "ic-base-types" -version = "0.9.0" -source = "git+https://github.com/dfinity/ic?tag=release-2024-06-26_23-01-base#2e269c77aa2f6b2353ddad6a4ac3d5ddcac196b1" -dependencies = [ - "byte-unit", - "bytes", - "candid", - "comparable", - "ic-crypto-sha2", - "ic-protobuf", - "phantom_newtype", - "prost", - "serde", -] - -[[package]] -name = "ic-btc-interface" -version = "0.2.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b0152e14e697b0e988dbfdcb3f7e352d1c76a65b7d2d75c5d76bad22c3aca10d" -dependencies = [ - "candid", - "serde", - "serde_bytes", -] - -[[package]] -name = "ic-btc-types-internal" -version = "0.9.0" -source = "git+https://github.com/dfinity/ic?tag=release-2024-06-26_23-01-base#2e269c77aa2f6b2353ddad6a4ac3d5ddcac196b1" -dependencies = [ - "candid", - "ic-btc-interface", - "ic-error-types", - "ic-protobuf", - "serde", - "serde_bytes", -] - [[package]] name = "ic-cdk" version = "0.14.0" @@ -1484,163 +1212,34 @@ dependencies = [ "syn 2.0.68", ] -[[package]] -name = "ic-constants" -version = "0.9.0" -source = "git+https://github.com/dfinity/ic?tag=release-2024-06-26_23-01-base#2e269c77aa2f6b2353ddad6a4ac3d5ddcac196b1" - [[package]] name = "ic-crypto-ecdsa-secp256k1" version = "0.9.0" -source = "git+https://github.com/dfinity/ic?tag=release-2024-06-26_23-01-base#2e269c77aa2f6b2353ddad6a4ac3d5ddcac196b1" +source = "git+https://github.com/dfinity/ic?tag=release-2024-08-21_15-36-base#b0ade55f7e8999e2842fe3f49df163ba224b71a2" dependencies = [ + "hmac", "k256", "lazy_static", "num-bigint", "pem", "rand", - "simple_asn1", - "zeroize", -] - -[[package]] -name = "ic-crypto-extended-bip32" -version = "0.9.0" -source = "git+https://github.com/dfinity/ic?tag=release-2024-06-26_23-01-base#2e269c77aa2f6b2353ddad6a4ac3d5ddcac196b1" -dependencies = [ - "ic-crypto-internal-threshold-sig-ecdsa", -] - -[[package]] -name = "ic-crypto-internal-hmac" -version = "0.9.0" -source = "git+https://github.com/dfinity/ic?tag=release-2024-06-26_23-01-base#2e269c77aa2f6b2353ddad6a4ac3d5ddcac196b1" -dependencies = [ - "ic-crypto-internal-sha2", -] - -[[package]] -name = "ic-crypto-internal-seed" -version = "0.9.0" -source = "git+https://github.com/dfinity/ic?tag=release-2024-06-26_23-01-base#2e269c77aa2f6b2353ddad6a4ac3d5ddcac196b1" -dependencies = [ - "hex", - "ic-crypto-sha2", - "rand", "rand_chacha", - "serde", - "zeroize", -] - -[[package]] -name = "ic-crypto-internal-sha2" -version = "0.9.0" -source = "git+https://github.com/dfinity/ic?tag=release-2024-06-26_23-01-base#2e269c77aa2f6b2353ddad6a4ac3d5ddcac196b1" -dependencies = [ - "sha2", -] - -[[package]] -name = "ic-crypto-internal-threshold-sig-ecdsa" -version = "0.9.0" -source = "git+https://github.com/dfinity/ic?tag=release-2024-06-26_23-01-base#2e269c77aa2f6b2353ddad6a4ac3d5ddcac196b1" -dependencies = [ - "curve25519-dalek", - "fe-derive", - "group", - "hex", - "hex-literal", - "ic-crypto-internal-hmac", - "ic-crypto-internal-seed", - "ic-crypto-internal-types", - "ic-crypto-secrets-containers", - "ic-crypto-sha2", - "ic-types", - "k256", - "lazy_static", - "p256", - "paste", - "rand", - "serde", - "serde_bytes", - "serde_cbor", - "strum", - "strum_macros", - "subtle", - "zeroize", -] - -[[package]] -name = "ic-crypto-internal-types" -version = "0.9.0" -source = "git+https://github.com/dfinity/ic?tag=release-2024-06-26_23-01-base#2e269c77aa2f6b2353ddad6a4ac3d5ddcac196b1" -dependencies = [ - "arrayvec 0.7.4", - "hex", - "ic-protobuf", - "phantom_newtype", - "serde", - "serde_cbor", - "strum", - "strum_macros", - "thiserror", - "zeroize", -] - -[[package]] -name = "ic-crypto-secrets-containers" -version = "0.9.0" -source = "git+https://github.com/dfinity/ic?tag=release-2024-06-26_23-01-base#2e269c77aa2f6b2353ddad6a4ac3d5ddcac196b1" -dependencies = [ - "serde", + "simple_asn1", "zeroize", ] -[[package]] -name = "ic-crypto-sha2" -version = "0.9.0" -source = "git+https://github.com/dfinity/ic?tag=release-2024-06-26_23-01-base#2e269c77aa2f6b2353ddad6a4ac3d5ddcac196b1" -dependencies = [ - "ic-crypto-internal-sha2", -] - [[package]] name = "ic-crypto-sha3" version = "0.9.0" -source = "git+https://github.com/dfinity/ic?tag=release-2024-06-26_23-01-base#2e269c77aa2f6b2353ddad6a4ac3d5ddcac196b1" +source = "git+https://github.com/dfinity/ic?tag=release-2024-08-21_15-36-base#b0ade55f7e8999e2842fe3f49df163ba224b71a2" dependencies = [ "sha3", ] -[[package]] -name = "ic-crypto-tree-hash" -version = "0.9.0" -source = "git+https://github.com/dfinity/ic?tag=release-2024-06-26_23-01-base#2e269c77aa2f6b2353ddad6a4ac3d5ddcac196b1" -dependencies = [ - "ic-crypto-internal-types", - "ic-crypto-sha2", - "ic-protobuf", - "serde", - "serde_bytes", - "thiserror", -] - -[[package]] -name = "ic-error-types" -version = "0.9.0" -source = "git+https://github.com/dfinity/ic?tag=release-2024-06-26_23-01-base#2e269c77aa2f6b2353ddad6a4ac3d5ddcac196b1" -dependencies = [ - "ic-protobuf", - "ic-utils", - "serde", - "strum", - "strum_macros", -] - [[package]] name = "ic-ethereum-types" version = "0.9.0" -source = "git+https://github.com/dfinity/ic?tag=release-2024-06-26_23-01-base#2e269c77aa2f6b2353ddad6a4ac3d5ddcac196b1" +source = "git+https://github.com/dfinity/ic?tag=release-2024-08-21_15-36-base#b0ade55f7e8999e2842fe3f49df163ba224b71a2" dependencies = [ "hex", "ic-crypto-sha3", @@ -1649,85 +1248,6 @@ dependencies = [ "serde", ] -[[package]] -name = "ic-management-canister-types" -version = "0.9.0" -source = "git+https://github.com/dfinity/ic?tag=release-2024-06-26_23-01-base#2e269c77aa2f6b2353ddad6a4ac3d5ddcac196b1" -dependencies = [ - "candid", - "ic-base-types", - "ic-btc-interface", - "ic-btc-types-internal", - "ic-error-types", - "ic-protobuf", - "num-traits", - "serde", - "serde_bytes", - "serde_cbor", - "strum", - "strum_macros", -] - -[[package]] -name = "ic-protobuf" -version = "0.9.0" -source = "git+https://github.com/dfinity/ic?tag=release-2024-06-26_23-01-base#2e269c77aa2f6b2353ddad6a4ac3d5ddcac196b1" -dependencies = [ - "bincode", - "candid", - "erased-serde", - "prost", - "serde", - "serde_json", - "slog", -] - -[[package]] -name = "ic-types" -version = "0.9.0" -source = "git+https://github.com/dfinity/ic?tag=release-2024-06-26_23-01-base#2e269c77aa2f6b2353ddad6a4ac3d5ddcac196b1" -dependencies = [ - "base64 0.13.1", - "bincode", - "candid", - "chrono", - "hex", - "ic-base-types", - "ic-btc-types-internal", - "ic-constants", - "ic-crypto-internal-types", - "ic-crypto-sha2", - "ic-crypto-tree-hash", - "ic-error-types", - "ic-management-canister-types", - "ic-protobuf", - "ic-utils", - "maplit", - "once_cell", - "phantom_newtype", - "prost", - "serde", - "serde_bytes", - "serde_cbor", - "serde_json", - "serde_with", - "strum", - "strum_macros", - "thiserror", - "thousands", -] - -[[package]] -name = "ic-utils" -version = "0.9.0" -source = "git+https://github.com/dfinity/ic?tag=release-2024-06-26_23-01-base#2e269c77aa2f6b2353ddad6a4ac3d5ddcac196b1" -dependencies = [ - "hex", - "scoped_threadpool", - "serde", - "serde_bytes", -] - [[package]] name = "ic0" version = "0.23.0" @@ -1748,12 +1268,6 @@ dependencies = [ "thiserror", ] -[[package]] -name = "ident_case" -version = "1.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b9e0384b61958566e926dc50660321d12159025e767c18e043daf26b70104c39" - [[package]] name = "idna" version = "0.5.0" @@ -1818,15 +1332,6 @@ dependencies = [ "either", ] -[[package]] -name = "itertools" -version = "0.12.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ba291022dbbd398a455acf126c1e341954079855bc60dfdda641363bd6922569" -dependencies = [ - "either", -] - [[package]] name = "itoa" version = "1.0.11" @@ -1911,9 +1416,6 @@ name = "lazy_static" version = "1.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "bbd2bcb4c963f2ddae06a2efc7e9f3591312473c50c6685e1f298068316e66fe" -dependencies = [ - "spin", -] [[package]] name = "leb128" @@ -1997,12 +1499,6 @@ dependencies = [ "logos-codegen", ] -[[package]] -name = "maplit" -version = "1.0.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3e2e65a1a2e43cfcb47a895c4c8b10d1f4a61097f9f254f183aee60cad9c651d" - [[package]] name = "memchr" version = "2.7.4" @@ -2089,23 +1585,6 @@ dependencies = [ "serde", ] -[[package]] -name = "num-bigint-dig" -version = "0.8.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dc84195820f291c7697304f3cbdadd1cb7199c0efc917ff5eafd71225c136151" -dependencies = [ - "byteorder", - "lazy_static", - "libm", - "num-integer", - "num-iter", - "num-traits", - "rand", - "serde", - "smallvec", -] - [[package]] name = "num-conv" version = "0.1.0" @@ -2121,17 +1600,6 @@ dependencies = [ "num-traits", ] -[[package]] -name = "num-iter" -version = "0.1.45" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1429034a0490724d0075ebb2bc9e875d6503c3cf69e235a8941aa757d83ef5bf" -dependencies = [ - "autocfg", - "num-integer", - "num-traits", -] - [[package]] name = "num-traits" version = "0.2.19" @@ -2167,12 +1635,6 @@ version = "1.19.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3fdb12b2476b595f9358c5161aa467c2438859caa136dec86c26fdd2efe17b92" -[[package]] -name = "opaque-debug" -version = "0.3.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c08d65885ee38876c4f86fa503fb49d7b507c2b62552df7c70b2fce627e06381" - [[package]] name = "openssl" version = "0.10.64" @@ -2217,18 +1679,6 @@ dependencies = [ "vcpkg", ] -[[package]] -name = "p256" -version = "0.13.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c9863ad85fa8f4460f9c48cb909d38a0d689dba1f6f6988a5e3e0d31071bcd4b" -dependencies = [ - "ecdsa", - "elliptic-curve", - "primeorder", - "sha2", -] - [[package]] name = "parity-scale-codec" version = "3.6.12" @@ -2329,16 +1779,6 @@ dependencies = [ "indexmap", ] -[[package]] -name = "phantom_newtype" -version = "0.9.0" -source = "git+https://github.com/dfinity/ic?tag=release-2024-06-26_23-01-base#2e269c77aa2f6b2353ddad6a4ac3d5ddcac196b1" -dependencies = [ - "candid", - "serde", - "slog", -] - [[package]] name = "phf_shared" version = "0.10.0" @@ -2431,25 +1871,6 @@ dependencies = [ "unicode-width", ] -[[package]] -name = "pretty_assertions" -version = "1.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "af7cee1a6c8a5b9208b3cb1061f10c0cb689087b3d8ce85fb9d2dd7a29b6ba66" -dependencies = [ - "diff", - "yansi", -] - -[[package]] -name = "primeorder" -version = "0.13.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "353e1ca18966c16d9deb1c69278edbc5f194139612772bd9537af60ac231e1e6" -dependencies = [ - "elliptic-curve", -] - [[package]] name = "primitive-types" version = "0.12.2" @@ -2499,29 +1920,6 @@ dependencies = [ "unarray", ] -[[package]] -name = "prost" -version = "0.12.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "deb1435c188b76130da55f17a466d252ff7b1418b2ad3e037d127b94e3411f29" -dependencies = [ - "bytes", - "prost-derive", -] - -[[package]] -name = "prost-derive" -version = "0.12.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "81bddcdb20abf9501610992b6759a4c888aef7d1a7247ef75e2404275ac24af1" -dependencies = [ - "anyhow", - "itertools 0.12.1", - "proc-macro2", - "quote", - "syn 2.0.68", -] - [[package]] name = "psm" version = "0.1.21" @@ -2880,12 +2278,6 @@ dependencies = [ "windows-sys 0.52.0", ] -[[package]] -name = "scoped_threadpool" -version = "0.1.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1d51f5df5af43ab3f1360b429fa5e0152ac5ce8c0bd6485cae490332e96846a8" - [[package]] name = "scopeguard" version = "1.2.0" @@ -2971,16 +2363,6 @@ dependencies = [ "serde", ] -[[package]] -name = "serde_cbor" -version = "0.11.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2bef2ebfde456fb76bbcf9f59315333decc4fda0b2b44b420243c11e0f5ec1f5" -dependencies = [ - "half", - "serde", -] - [[package]] name = "serde_derive" version = "1.0.203" @@ -3027,28 +2409,6 @@ dependencies = [ "serde", ] -[[package]] -name = "serde_with" -version = "1.14.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "678b5a069e50bf00ecd22d0cd8ddf7c236f68581b03db652061ed5eb13a312ff" -dependencies = [ - "serde", - "serde_with_macros", -] - -[[package]] -name = "serde_with_macros" -version = "1.5.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e182d6ec6f05393cc0e5ed1bf81ad6db3a8feedf8ee515ecdd369809bcce8082" -dependencies = [ - "darling", - "proc-macro2", - "quote", - "syn 1.0.109", -] - [[package]] name = "sha2" version = "0.10.8" @@ -3062,14 +2422,12 @@ dependencies = [ [[package]] name = "sha3" -version = "0.9.1" +version = "0.10.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f81199417d4e5de3f04b1e871023acea7389672c4135918f05aa9cbf2f2fa809" +checksum = "75872d278a8f37ef87fa0ddbda7802605cb18344497949862c0d4dcb291eba60" dependencies = [ - "block-buffer 0.9.0", - "digest 0.9.0", + "digest 0.10.7", "keccak", - "opaque-debug", ] [[package]] @@ -3119,15 +2477,6 @@ dependencies = [ "autocfg", ] -[[package]] -name = "slog" -version = "2.7.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8347046d4ebd943127157b94d63abb990fcf729dc4e9978927fdf4ac3c998d06" -dependencies = [ - "erased-serde", -] - [[package]] name = "smallvec" version = "1.13.2" @@ -3192,34 +2541,6 @@ dependencies = [ "precomputed-hash", ] -[[package]] -name = "strsim" -version = "0.10.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "73473c0e59e6d5812c5dfe2a064a6444949f089e20eec9a2e5506596494e4623" - -[[package]] -name = "strum" -version = "0.26.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8fec0f0aef304996cf250b31b5a10dee7980c85da9d759361292b8bca5a18f06" -dependencies = [ - "strum_macros", -] - -[[package]] -name = "strum_macros" -version = "0.26.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4c6bee85a5a24955dc440386795aa378cd9cf82acd5f764469152d2270e581be" -dependencies = [ - "heck", - "proc-macro2", - "quote", - "rustversion", - "syn 2.0.68", -] - [[package]] name = "subtle" version = "2.6.1" @@ -3333,12 +2654,6 @@ dependencies = [ "syn 2.0.68", ] -[[package]] -name = "thousands" -version = "0.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3bf63baf9f5039dadc247375c29eb13706706cfde997d0330d05aa63a77d8820" - [[package]] name = "threadpool" version = "1.8.1" @@ -3613,12 +2928,6 @@ dependencies = [ "percent-encoding", ] -[[package]] -name = "utf8-width" -version = "0.1.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "86bd8d4e895da8537e5315b8254664e6b769c4ff3db18321b297a1e7004392e3" - [[package]] name = "valuable" version = "0.1.0" @@ -3778,15 +3087,6 @@ version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f" -[[package]] -name = "windows-core" -version = "0.52.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "33ab640c8d7e35bf8ba19b884ba838ceb4fba93a4e8c65a9059d08afcfc683d9" -dependencies = [ - "windows-targets 0.52.6", -] - [[package]] name = "windows-sys" version = "0.48.0" @@ -3954,12 +3254,6 @@ dependencies = [ "tap", ] -[[package]] -name = "yansi" -version = "0.5.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "09041cd90cf85f7f8b2df60c646f853b7f535ce68f85244eb6731cf89fa498ec" - [[package]] name = "zeroize" version = "1.8.1" diff --git a/rust/basic_ethereum/Cargo.toml b/rust/basic_ethereum/Cargo.toml index f9c3b3d97..022424ec5 100644 --- a/rust/basic_ethereum/Cargo.toml +++ b/rust/basic_ethereum/Cargo.toml @@ -16,10 +16,9 @@ evm-rpc-canister-types = "0.1.2" # See https://forum.dfinity.org/t/module-imports-function-wbindgen-describe-from-wbindgen-placeholder-that-is-not-exported-by-the-runtime/11545/8 getrandom = { version = "*", default-features = false, features = ["custom"] } ic-cdk = "0.15" -ic-crypto-ecdsa-secp256k1 = { git = "https://github.com/dfinity/ic", tag = "release-2024-06-26_23-01-base", package = "ic-crypto-ecdsa-secp256k1" } -ic-crypto-extended-bip32 = { git = "https://github.com/dfinity/ic", tag = "release-2024-06-26_23-01-base", package = "ic-crypto-extended-bip32" } -ic-crypto-sha3 = { git = "https://github.com/dfinity/ic", tag = "release-2024-06-26_23-01-base", package = "ic-crypto-sha3" } -ic-ethereum-types = { git = "https://github.com/dfinity/ic", tag = "release-2024-06-26_23-01-base", package = "ic-ethereum-types" } +ic-crypto-ecdsa-secp256k1 = { git = "https://github.com/dfinity/ic", tag = "release-2024-08-21_15-36-base", package = "ic-crypto-ecdsa-secp256k1" } +ic-crypto-sha3 = { git = "https://github.com/dfinity/ic", tag = "release-2024-08-21_15-36-base", package = "ic-crypto-sha3" } +ic-ethereum-types = { git = "https://github.com/dfinity/ic", tag = "release-2024-08-21_15-36-base", package = "ic-ethereum-types" } serde = "1.0" serde_bytes = "0.11.15" num-traits = "0.2.19" \ No newline at end of file diff --git a/rust/basic_ethereum/src/ecdsa.rs b/rust/basic_ethereum/src/ecdsa.rs index e2a42388f..b61fd65bc 100644 --- a/rust/basic_ethereum/src/ecdsa.rs +++ b/rust/basic_ethereum/src/ecdsa.rs @@ -1,6 +1,5 @@ use ic_cdk::api::management_canister::ecdsa::EcdsaPublicKeyResponse; -use ic_crypto_ecdsa_secp256k1::PublicKey; -use ic_crypto_extended_bip32::{DerivationPath, ExtendedBip32DerivationResult}; +use ic_crypto_ecdsa_secp256k1::{PublicKey, DerivationPath}; use ic_ethereum_types::Address; #[derive(Debug, PartialEq, Eq, Clone)] @@ -13,17 +12,14 @@ impl EcdsaPublicKey { pub fn derive_new_public_key( &self, derivation_path: &DerivationPath, - ) -> ExtendedBip32DerivationResult { - derivation_path - .public_key_derivation( - &self.public_key.serialize_sec1(/*compressed=*/ true), - &self.chain_code, - ) - .map(|output| Self { - public_key: PublicKey::deserialize_sec1(&output.derived_public_key) - .expect("BUG: invalid public key"), - chain_code: output.derived_chain_code, - }) + ) -> Self { + + let (dk, cc) = self.public_key.derive_subkey(derivation_path); + + Self { + public_key: dk, + chain_code: cc.to_vec(), + } } } diff --git a/rust/basic_ethereum/src/ethereum_wallet.rs b/rust/basic_ethereum/src/ethereum_wallet.rs index 3b5399060..5eb98ea3e 100644 --- a/rust/basic_ethereum/src/ethereum_wallet.rs +++ b/rust/basic_ethereum/src/ethereum_wallet.rs @@ -89,7 +89,7 @@ impl EthereumWallet { } fn derive_public_key(owner: &Principal, public_key: &EcdsaPublicKey) -> EcdsaPublicKey { - use ic_crypto_extended_bip32::{DerivationIndex, DerivationPath}; + use ic_crypto_ecdsa_secp256k1::{DerivationIndex, DerivationPath}; let derivation_path = DerivationPath::new( derivation_path(owner) .into_iter() @@ -98,7 +98,6 @@ fn derive_public_key(owner: &Principal, public_key: &EcdsaPublicKey) -> EcdsaPub ); public_key .derive_new_public_key(&derivation_path) - .expect("BUG: failed to derive an ECDSA public key") } fn derivation_path(owner: &Principal) -> Vec> {