mirror of
https://github.com/pezkuwichain/pezkuwi-subxt.git
synced 2026-06-14 04:01:10 +00:00
core: replace secp256k with k256 in crypto::ecdsa (#3525)
This PR replaces the usage of [secp256k](https://crates.io/crates/secp256k1) crate with [k256](https://crates.io/crates/k256) in `core::crypto::ecdsa` for `non-std` environments as outcome of discussion in #3448. `secp256k1` is used in `std`, meaning that we should not affect host performance with this PR. `k256` is enabled in runtimes (`no-std`), and is required to proceed with #2044. If desirable, in future we can switch to `k256` also for `std`. That would require some performance evaluation (e.g. for EVM chains as per https://github.com/paritytech/polkadot-sdk/issues/3448#issuecomment-1976780391). Closes https://github.com/paritytech/polkadot-sdk/issues/3448 --------- Co-authored-by: command-bot <> Co-authored-by: Davide Galassi <davxy@datawok.net>
This commit is contained in:
committed by
GitHub
parent
ea458d0b95
commit
9f5d9fa96f
@@ -52,9 +52,12 @@ blake2 = { version = "0.10.4", default-features = false, optional = true }
|
||||
libsecp256k1 = { version = "0.7", default-features = false, features = ["static-context"], optional = true }
|
||||
schnorrkel = { version = "0.11.4", features = ["preaudit_deprecated"], default-features = false }
|
||||
merlin = { version = "3.0", default-features = false }
|
||||
secp256k1 = { version = "0.28.0", default-features = false, features = ["alloc", "recovery"], optional = true }
|
||||
sp-crypto-hashing = { path = "../crypto/hashing", default-features = false, optional = true }
|
||||
sp-runtime-interface = { path = "../runtime-interface", default-features = false }
|
||||
# k256 crate, better portability, intended to be used in substrate-runtimes (no-std)
|
||||
k256 = { version = "0.13.3", features = ["alloc", "ecdsa"], default-features = false }
|
||||
# secp256k1 crate, better performance, intended to be used on host side (std)
|
||||
secp256k1 = { version = "0.28.0", default-features = false, features = ["alloc", "recovery"], optional = true }
|
||||
|
||||
# bls crypto
|
||||
w3f-bls = { version = "0.1.3", default-features = false, optional = true }
|
||||
@@ -76,6 +79,7 @@ bench = false
|
||||
|
||||
[features]
|
||||
default = ["std"]
|
||||
|
||||
std = [
|
||||
"array-bytes",
|
||||
"bandersnatch_vrfs?/std",
|
||||
@@ -94,6 +98,7 @@ std = [
|
||||
"hash256-std-hasher/std",
|
||||
"impl-serde/std",
|
||||
"itertools",
|
||||
"k256/std",
|
||||
"libsecp256k1/std",
|
||||
"log/std",
|
||||
"merlin/std",
|
||||
@@ -132,6 +137,7 @@ serde = [
|
||||
"bs58/alloc",
|
||||
"dep:serde",
|
||||
"impl-serde",
|
||||
"k256/serde",
|
||||
"primitive-types/serde_no_std",
|
||||
"scale-info/serde",
|
||||
"secrecy/alloc",
|
||||
@@ -147,7 +153,6 @@ full_crypto = [
|
||||
"blake2",
|
||||
"ed25519-zebra",
|
||||
"libsecp256k1",
|
||||
"secp256k1",
|
||||
"sp-crypto-hashing",
|
||||
"sp-runtime-interface/disable_target_static_assertions",
|
||||
]
|
||||
|
||||
Reference in New Issue
Block a user