Files
pezkuwi-subxt/substrate/client/consensus/babe/rpc/Cargo.toml
T
Rakan Alhneiti d25f460b63 Babe VRF Signing in keystore (#6225)
* Introduce trait

* Implement VRFSigner in keystore

* Use vrf_sign from keystore

* Convert output to VRFInOut

* Simplify conversion

* vrf_sign secondary slot using keystore

* Fix RPC call to claim_slot

* Use Public instead of Pair

* Check primary threshold in signer

* Fix interface to return error

* Move vrf_sign to BareCryptoStore

* Fix authorship_works test

* Fix BABE logic leaks

* Acquire a read lock once

* Also fix RPC acquiring the read lock once

* Implement a generic way to construct VRF Transcript

* Use make_transcript_data to call sr25519_vrf_sign

* Make sure VRFTranscriptData is serializable

* Cleanup

* Move VRF to it's own module

* Implement & test VRF signing in testing module

* Remove leftover

* Fix feature requirements

* Revert removing vec macro

* Drop keystore pointer to prevent deadlock

* Nitpicks

* Add test to make sure make_transcript works

* Fix mismatch in VRF transcript

* Add a test to verify transcripts match in babe

* Return VRFOutput and VRFProof from keystore
2020-06-18 14:37:49 -04:00

39 lines
1.8 KiB
TOML

[package]
name = "sc-consensus-babe-rpc"
version = "0.8.0-rc3"
authors = ["Parity Technologies <admin@parity.io>"]
description = "RPC extensions for the BABE consensus algorithm"
edition = "2018"
license = "GPL-3.0-or-later WITH Classpath-exception-2.0"
homepage = "https://substrate.dev"
repository = "https://github.com/paritytech/substrate/"
[package.metadata.docs.rs]
targets = ["x86_64-unknown-linux-gnu"]
[dependencies]
sc-consensus-babe = { version = "0.8.0-rc3", path = "../" }
sc-rpc-api = { version = "0.8.0-rc3", path = "../../../rpc-api" }
jsonrpc-core = "14.2.0"
jsonrpc-core-client = "14.2.0"
jsonrpc-derive = "14.2.1"
sp-consensus-babe = { version = "0.8.0-rc3", path = "../../../../primitives/consensus/babe" }
serde = { version = "1.0.104", features=["derive"] }
sp-blockchain = { version = "2.0.0-rc3", path = "../../../../primitives/blockchain" }
sp-runtime = { version = "2.0.0-rc3", path = "../../../../primitives/runtime" }
sc-consensus-epochs = { version = "0.8.0-rc3", path = "../../epochs" }
futures = { version = "0.3.4", features = ["compat"] }
derive_more = "0.99.2"
sp-api = { version = "2.0.0-rc3", path = "../../../../primitives/api" }
sp-consensus = { version = "0.8.0-rc3", path = "../../../../primitives/consensus/common" }
sp-core = { version = "2.0.0-rc3", path = "../../../../primitives/core" }
sp-application-crypto = { version = "2.0.0-rc3", path = "../../../../primitives/application-crypto" }
sc-keystore = { version = "2.0.0-rc3", path = "../../../keystore" }
[dev-dependencies]
sc-consensus = { version = "0.8.0-rc3", path = "../../../consensus/common" }
serde_json = "1.0.50"
sp-keyring = { version = "2.0.0-rc3", path = "../../../../primitives/keyring" }
substrate-test-runtime-client = { version = "2.0.0-rc3", path = "../../../../test-utils/runtime/client" }
tempfile = "3.1.0"