Skip to content

Commit 1b85589

Browse files
committed
Fix era reader adapter builder Cardano chain
The adapter verification key must be decoded first.
1 parent 6229d88 commit 1b85589

File tree

1 file changed

+9
-3
lines changed

1 file changed

+9
-3
lines changed

mithril-common/src/era/adapters/builder.rs

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,8 @@ use thiserror::Error;
44

55
use crate::{
66
chain_observer::{ChainAddress, ChainObserver},
7-
crypto_helper::EraMarkersVerifierVerificationKey,
7+
crypto_helper::key_decode_hex,
8+
entities::HexEncodedEraMarkersSignature,
89
era::{
910
adapters::{
1011
EraReaderBootstrapAdapter, EraReaderCardanoChainAdapter, EraReaderDummyAdapter,
@@ -39,6 +40,10 @@ pub enum AdapterBuilderError {
3940
/// Parameters parse error.
4041
#[error("era reader adapter parameters parse error: {0:?}")]
4142
ParseParameters(serde_json::Error),
43+
44+
/// Parameters decode error.
45+
#[error("era reader adapter parameters decode error: {0:?}")]
46+
Decode(String),
4247
}
4348

4449
/// Era adapter builder
@@ -66,7 +71,7 @@ impl AdapterBuilder {
6671
#[derive(Deserialize)]
6772
struct CardanoChainAdapterConfig {
6873
address: ChainAddress,
69-
verification_key: EraMarkersVerifierVerificationKey,
74+
verification_key: HexEncodedEraMarkersSignature,
7075
}
7176

7277
let adapter_config: CardanoChainAdapterConfig = serde_json::from_str(
@@ -79,7 +84,8 @@ impl AdapterBuilder {
7984
Ok(Box::new(EraReaderCardanoChainAdapter::new(
8085
adapter_config.address,
8186
chain_observer,
82-
adapter_config.verification_key,
87+
key_decode_hex(&adapter_config.verification_key)
88+
.map_err(AdapterBuilderError::Decode)?,
8389
)))
8490
}
8591
AdapterType::File => {

0 commit comments

Comments
 (0)