1
- use ed25519_dalek:: { ExpandedSecretKey , SignatureError } ;
2
- use rand_chacha_dalek_compat :: rand_core:: { self , CryptoRng , RngCore , SeedableRng } ;
3
- use rand_chacha_dalek_compat :: ChaCha20Rng ;
1
+ use ed25519_dalek:: { SignatureError , Signer , SigningKey } ;
2
+ use rand_chacha :: rand_core:: { self , CryptoRng , RngCore , SeedableRng } ;
3
+ use rand_chacha :: ChaCha20Rng ;
4
4
use serde:: { Deserialize , Serialize } ;
5
5
use thiserror:: Error ;
6
6
7
7
use super :: ProtocolKey ;
8
8
9
- /// Alias of [Ed25519:PublicKey](https://docs.rs/ed25519-dalek/latest/ed25519_dalek/struct.PublicKey .html).
10
- pub type EraMarkersVerifierVerificationKey = ProtocolKey < ed25519_dalek:: PublicKey > ;
9
+ /// Alias of [Ed25519:PublicKey](https://docs.rs/ed25519-dalek/latest/ed25519_dalek/struct.VerifyingKey .html).
10
+ pub type EraMarkersVerifierVerificationKey = ProtocolKey < ed25519_dalek:: VerifyingKey > ;
11
11
12
- /// Alias of [Ed25519:SecretKey ](https://docs.rs/ed25519-dalek/latest/ed25519_dalek/struct.SecretKey .html).
13
- pub type EraMarkersVerifierSecretKey = ProtocolKey < ed25519_dalek:: SecretKey > ;
12
+ /// Alias of [Ed25519:SigningKey ](https://docs.rs/ed25519-dalek/latest/ed25519_dalek/struct.SigningKey .html).
13
+ pub type EraMarkersVerifierSecretKey = ProtocolKey < ed25519_dalek:: SigningKey > ;
14
14
15
15
/// Alias of [Ed25519:Signature](https://docs.rs/ed25519-dalek/latest/ed25519_dalek/struct.Signature.html).
16
16
pub type EraMarkersVerifierSignature = ProtocolKey < ed25519_dalek:: Signature > ;
@@ -35,7 +35,7 @@ impl EraMarkersSigner {
35
35
where
36
36
R : CryptoRng + RngCore ,
37
37
{
38
- let secret_key = ed25519_dalek :: SecretKey :: generate ( & mut rng) ;
38
+ let secret_key = SigningKey :: generate ( & mut rng) ;
39
39
Self :: from_secret_key ( secret_key. into ( ) )
40
40
}
41
41
@@ -56,31 +56,14 @@ impl EraMarkersSigner {
56
56
Self { secret_key }
57
57
}
58
58
59
- /// Create a an expanded secret key
60
- fn create_expanded_secret_key ( & self ) -> ExpandedSecretKey {
61
- ExpandedSecretKey :: from ( & * self . secret_key )
62
- }
63
-
64
- /// Create a EraMarkersVerifierVerificationKey
65
- fn create_verification_key (
66
- & self ,
67
- expanded_secret_key : & ExpandedSecretKey ,
68
- ) -> EraMarkersVerifierVerificationKey {
69
- EraMarkersVerifierVerificationKey :: new ( expanded_secret_key. into ( ) )
70
- }
71
-
72
59
/// Create a EraMarkersVerifier
73
60
pub fn create_verifier ( & self ) -> EraMarkersVerifier {
74
- let expanded_secret_key = self . create_expanded_secret_key ( ) ;
75
- let verification_key = self . create_verification_key ( & expanded_secret_key) ;
76
- EraMarkersVerifier :: from_verification_key ( verification_key)
61
+ EraMarkersVerifier :: from_verification_key ( self . secret_key . verifying_key ( ) . into ( ) )
77
62
}
78
63
79
64
/// Signs a message and returns a EraMarkersVerifierSignature
80
65
pub fn sign ( & self , message : & [ u8 ] ) -> EraMarkersVerifierSignature {
81
- let expanded_secret_key = self . create_expanded_secret_key ( ) ;
82
- let verification_key = self . create_verification_key ( & expanded_secret_key) ;
83
- expanded_secret_key. sign ( message, & verification_key) . into ( )
66
+ self . secret_key . sign ( message) . into ( )
84
67
}
85
68
}
86
69
@@ -139,7 +122,7 @@ mod tests {
139
122
let verifier = signer. create_verifier ( ) ;
140
123
let signer_2 = EraMarkersSigner :: create_deterministic_signer ( ) ;
141
124
let verifier_2 = signer. create_verifier ( ) ;
142
- assert_eq ! ( signer. secret_key. as_bytes ( ) , signer_2. secret_key. as_bytes ( ) ) ;
125
+ assert_eq ! ( signer. secret_key. to_bytes ( ) , signer_2. secret_key. to_bytes ( ) ) ;
143
126
assert_eq ! (
144
127
verifier. verification_key. as_bytes( ) ,
145
128
verifier_2. verification_key. as_bytes( )
0 commit comments