Update crypto deps for ethers (#333)

* Update crypto deps for ethers

* Update version 0.4.0

* Missed a version

* Fix internal version dependencies

* chore: use published eth-keystore-rs

Co-authored-by: Georgios Konstantopoulos <me@gakonst.com>
This commit is contained in:
Zaki Manian 2021-07-07 10:18:14 -07:00 committed by GitHub
parent d722c1a6af
commit 371b7d1576
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
11 changed files with 406 additions and 408 deletions

707
Cargo.lock generated

File diff suppressed because it is too large Load Diff

View File

@ -1,7 +1,7 @@
[package]
name = "ethers-contract"
license = "MIT OR Apache-2.0"
version = "0.2.2"
version = "0.4.0"
authors = ["Georgios Konstantopoulos <me@gakonst.com>"]
edition = "2018"
description = "Smart contract bindings for the ethers-rs crate"
@ -10,11 +10,11 @@ repository = "https://github.com/gakonst/ethers-rs"
keywords = ["ethereum", "web3", "celo", "ethers"]
[dependencies]
ethers-providers = { version = "0.2.2", path = "../ethers-providers", default-features = false }
ethers-core = { version = "0.2.2", path = "../ethers-core", default-features = false }
ethers-providers = { version = "0.4.0", path = "../ethers-providers", default-features = false }
ethers-core = { version = "0.4.0", path = "../ethers-core", default-features = false }
ethers-contract-abigen = { version = "0.2.2", path = "ethers-contract-abigen", optional = true }
ethers-contract-derive = { version = "0.2.2", path = "ethers-contract-derive", optional = true }
ethers-contract-abigen = { version = "0.4.0", path = "ethers-contract-abigen", optional = true }
ethers-contract-derive = { version = "0.4.0", path = "ethers-contract-derive", optional = true }
serde = { version = "1.0.124", default-features = false }
serde_json = { version = "1.0.64", default-features = false }
@ -25,12 +25,12 @@ futures-util = { version = "0.3.15", default-features = false }
hex = { version = "0.4.3", default-features = false, features = ["std"] }
[dev-dependencies]
ethers = { version = "0.2", path = "../ethers" }
ethers-providers = { version = "0.2", path = "../ethers-providers", default-features = false, features = ["ws"] }
ethers = { version = "0.4.0", path = "../ethers" }
ethers-providers = { version = "0.4.0", path = "../ethers-providers", default-features = false, features = ["ws"] }
tokio = { version = "1.5", default-features = false, features = ["macros"] }
ethers-signers = { version = "0.2", path = "../ethers-signers" }
ethers-middleware = { version = "0.2", path = "../ethers-middleware" }
ethers-signers = { version = "0.4.0", path = "../ethers-signers" }
ethers-middleware = { version = "0.4.0", path = "../ethers-middleware" }
[features]
abigen = ["ethers-contract-abigen", "ethers-contract-derive"]

View File

@ -1,6 +1,6 @@
[package]
name = "ethers-contract-abigen"
version = "0.2.2"
version = "0.4.0"
authors = ["Nicholas Rodrigues Lordello <nlordell@gmail.com>", "Georgios Konstantopoulos <me@gakonst.com>"]
edition = "2018"
license = "MIT OR Apache-2.0"
@ -10,7 +10,7 @@ repository = "https://github.com/gakonst/ethers-rs"
keywords = ["ethereum", "web3", "celo", "ethers"]
[dependencies]
ethers-core = { version = "0.2.2", path = "../../ethers-core" }
ethers-core = { version = "0.4.0", path = "../../ethers-core" }
anyhow = "1.0.37"
Inflector = "0.11"

View File

@ -1,6 +1,6 @@
[package]
name = "ethers-contract-derive"
version = "0.2.2"
version = "0.4.0"
authors = ["Nicholas Rodrigues Lordello <nlordell@gmail.com>", "Georgios Konstantopoulos <me@gakonst.com>"]
edition = "2018"
license = "MIT OR Apache-2.0"
@ -13,8 +13,8 @@ keywords = ["ethereum", "web3", "celo", "ethers"]
proc-macro = true
[dependencies]
ethers-core = { version = "0.2.2", path = "../../ethers-core" }
ethers-contract-abigen = { version = "0.2.2", path = "../ethers-contract-abigen" }
ethers-core = { version = "0.4.0", path = "../../ethers-core" }
ethers-contract-abigen = { version = "0.4.0", path = "../ethers-contract-abigen" }
serde_json = "1.0.53"
hex = { version = "0.4.3", default-features = false, features = ["std"] }

View File

@ -1,7 +1,7 @@
[package]
name = "ethers-core"
license = "MIT OR Apache-2.0"
version = "0.2.2"
version = "0.4.0"
authors = ["Georgios Konstantopoulos <me@gakonst.com>"]
edition = "2018"
description = "Core structures for the ethers-rs crate"
@ -15,11 +15,11 @@ ethabi = { version = "14.0.0", default-features = false }
arrayvec = { version = "0.5.1", default-features = false }
# crypto
ecdsa = { version = "0.10.2", default-features = false, features = ["std"] }
elliptic-curve = { version = "0.10.3", default-features = false }
ecdsa = { version = "0.12.2", default-features = false, features = ["std"] }
elliptic-curve = { version = "0.10.0", default-features = false }
generic-array = { version = "0.14.4", default-features = false }
k256 = { version = "0.7.3", default-features = false, features = ["keccak256", "ecdsa"] }
rand = { version = "0.7.1", default-features = false }
k256 = { version = "0.9.4", default-features = false, features = ["keccak256", "ecdsa"] }
rand = { version = "0.8.4", default-features = false }
tiny-keccak = { version = "2.0.2", default-features = false }
# misc
@ -39,7 +39,7 @@ tokio = { version = "1.5", default-features = false, optional = true}
futures-util = { version = "0.3.15", default-features = false, optional = true}
[dev-dependencies]
ethers = { version = "0.2", path = "../ethers" }
ethers = { version = "0.4.0", path = "../ethers" }
serde_json = { version = "1.0.64", default-features = false }
bincode = { version = "1.3.3", default-features = false }

View File

@ -123,7 +123,7 @@ pub fn get_create2_address(
/// Converts a K256 SigningKey to an Ethereum Address
pub fn secret_key_to_address(secret_key: &SigningKey) -> Address {
// TODO: Can we do this in a better way?
let uncompressed_pub_key = K256PublicKey::from(&secret_key.verify_key()).decompress();
let uncompressed_pub_key = K256PublicKey::from(&secret_key.verifying_key()).decompress();
let public_key = uncompressed_pub_key.unwrap().to_bytes();
debug_assert_eq!(public_key[0], 0x04);
let hash = keccak256(&public_key[1..]);

View File

@ -1,7 +1,7 @@
[package]
name = "ethers-middleware"
license = "MIT OR Apache-2.0"
version = "0.2.2"
version = "0.4.0"
authors = ["Georgios Konstantopoulos <me@gakonst.com>"]
edition = "2018"
description = "Middleware implementations for the ethers-rs crate"
@ -14,10 +14,10 @@ all-features = true
rustdoc-args = ["--cfg", "docsrs"]
[dependencies]
ethers-contract = { version = "0.2.2", path = "../ethers-contract", default-features = false, features = ["abigen"] }
ethers-core = { version = "0.2.2", path = "../ethers-core", default-features = false }
ethers-providers = { version = "0.2.2", path = "../ethers-providers", default-features = false }
ethers-signers = { version = "0.2.2", path = "../ethers-signers", default-features = false }
ethers-contract = { version = "0.4.0", path = "../ethers-contract", default-features = false, features = ["abigen"] }
ethers-core = { version = "0.4.0", path = "../ethers-core", default-features = false }
ethers-providers = { version = "0.4.0", path = "../ethers-providers", default-features = false }
ethers-signers = { version = "0.4.0", path = "../ethers-signers", default-features = false }
async-trait = { version = "0.1.50", default-features = false }
serde = { version = "1.0.124", default-features = false, features = ["derive"] }
@ -35,10 +35,10 @@ serde_json = { version = "1.0.64", default-features = false }
tokio = { version = "1.5" }
[dev-dependencies]
ethers = { version = "0.2", path = "../ethers" }
ethers = { version = "0.4.0", path = "../ethers" }
futures-executor = { version = "0.3.14", features = ["thread-pool"] }
hex = { version = "0.4.3", default-features = false, features = ["std"] }
rand = { version = "0.7.3", default-features = false }
rand = { version = "0.8.4", default-features = false }
tokio = { version = "1.5", default-features = false, features = ["rt", "macros", "time"] }
[features]

View File

@ -1,7 +1,7 @@
[package]
name = "ethers-providers"
license = "MIT OR Apache-2.0"
version = "0.2.2"
version = "0.4.0"
authors = ["Georgios Konstantopoulos <me@gakonst.com>"]
edition = "2018"
description = "Provider implementations for the ethers-rs crate"
@ -14,7 +14,7 @@ all-features = true
rustdoc-args = ["--cfg", "docsrs"]
[dependencies]
ethers-core = { version = "0.2.2", path = "../ethers-core", default-features = false }
ethers-core = { version = "0.4.0", path = "../ethers-core", default-features = false }
async-trait = { version = "0.1.50", default-features = false }
hex = { version = "0.4.3", default-features = false, features = ["std"] }
@ -43,7 +43,7 @@ tokio-util = { version = "0.6.7", default-features = false, features = ["io"], o
bytes = { version = "1.0.1", default-features = false, optional = true }
[dev-dependencies]
ethers = { version = "0.2", path = "../ethers" }
ethers = { version = "0.4.0", path = "../ethers" }
tokio = { version = "1.5", default-features = false, features = ["rt", "macros"] }
tempfile = "3.2.0"

View File

@ -1,7 +1,7 @@
[package]
name = "ethers-signers"
license = "MIT OR Apache-2.0"
version = "0.2.2"
version = "0.4.0"
authors = ["Georgios Konstantopoulos <me@gakonst.com>"]
edition = "2018"
description = "Signer implementations for the ethers-rs crate"
@ -14,24 +14,24 @@ all-features = true
rustdoc-args = ["--cfg", "docsrs"]
[dependencies]
ethers-core = { version = "0.2.2", path = "../ethers-core" }
thiserror = { version = "1.0.26", default-features = false }
coins-bip32 = "0.2.2"
coins-bip39 = "0.2.2"
ethers-core = { version = "0.4.0", path = "../ethers-core" }
thiserror = { version = "1.0.24", default-features = false }
coins-bip32 = "0.3.0"
coins-bip39 = "0.3.0"
coins-ledger = { version = "0.1.0", default-features = false, optional = true }
eth-keystore = { version = "0.2.1" }
eth-keystore = { version = "0.3.0" }
hex = { version = "0.4.3", default-features = false, features = ["std"] }
async-trait = { version = "0.1.50", default-features = false }
elliptic-curve = { version = "0.10.3", default-features = false }
sha2 = { version = "0.9.5", default-features = false }
rand = { version = "0.7.3", default-features = false }
yubihsm = { version = "0.38.0", features = ["secp256k1", "http", "usb"], optional = true }
futures-util = "0.3.15"
elliptic-curve = { version = "0.10.0", default-features = false }
sha2 = { version = "0.9.3", default-features = false }
rand = { version = "0.8.4", default-features = false }
yubihsm = { version = "0.39.0", features = ["secp256k1", "http", "usb"], optional = true }
futures-util = "0.3.14"
futures-executor = "0.3.14"
[dev-dependencies]
ethers = { version = "0.2", path = "../ethers" }
yubihsm = { version = "0.38.0", features = ["secp256k1", "usb", "mockhsm"] }
ethers = { version = "0.4.0", path = "../ethers" }
yubihsm = { version = "0.39.0", features = ["secp256k1", "usb", "mockhsm"] }
tempfile = "3.2.0"
tokio = { version = "1.5", default-features = false, features = ["macros"] }

View File

@ -4,6 +4,7 @@ use super::Wallet;
use crate::wallet::mnemonic::MnemonicBuilderError;
use coins_bip32::Bip32Error;
use coins_bip39::MnemonicError;
use elliptic_curve::rand_core;
use eth_keystore::KeystoreError;
use ethers_core::{
k256::ecdsa::{self, SigningKey},
@ -56,7 +57,7 @@ impl Wallet<SigningKey> {
pub fn new_keystore<P, R, S>(dir: P, rng: &mut R, password: S) -> Result<Self, WalletError>
where
P: AsRef<Path>,
R: Rng + CryptoRng,
R: Rng + CryptoRng + rand_core::CryptoRng,
S: AsRef<[u8]>,
{
let (secret, _) = eth_keystore::new(dir, rng, password)?;

View File

@ -1,6 +1,6 @@
[package]
name = "ethers"
version = "0.2.2"
version = "0.4.0"
authors = ["Georgios Konstantopoulos <me@gakonst.com>"]
license = "MIT OR Apache-2.0"
edition = "2018"
@ -34,17 +34,17 @@ ws = ["ethers-providers/ws"]
abigen = ["ethers-contract/abigen"]
[dependencies]
ethers-contract = { version = "0.2.2", path = "../ethers-contract" }
ethers-core = { version = "0.2.2", path = "../ethers-core", features = ["setup"] }
ethers-providers = { version = "0.2.2", path = "../ethers-providers" }
ethers-signers = { version = "0.2.2", path = "../ethers-signers" }
ethers-middleware = { version = "0.2.2", path = "../ethers-middleware" }
ethers-contract = { version = "0.4.0", path = "../ethers-contract" }
ethers-core = { version = "0.4.0", path = "../ethers-core", features = ["setup"] }
ethers-providers = { version = "0.4.0", path = "../ethers-providers" }
ethers-signers = { version = "0.4.0", path = "../ethers-signers" }
ethers-middleware = { version = "0.4.0", path = "../ethers-middleware" }
[dev-dependencies]
ethers-contract = { version = "0.2", path = "../ethers-contract", features = ["abigen"] }
ethers-contract = { version = "0.4.0", path = "../ethers-contract", features = ["abigen"] }
anyhow = "1.0.39"
rand = "0.7"
rand = "0.8.4"
serde = { version = "1.0.124", features = ["derive"] }
serde_json = "1.0.64"
tokio = { version = "1.5", features = ["macros", "rt-multi-thread"] }