@@ -133,7 +133,7 @@ impl RecoverableSignature {
133
133
/// verify-capable context.
134
134
#[ inline]
135
135
#[ cfg( feature = "global-context" ) ]
136
- pub fn recover ( & self , msg : & Message ) -> Result < key:: PublicKey , Error > {
136
+ pub fn recover ( & self , msg : impl Into < Message > ) -> Result < key:: PublicKey , Error > {
137
137
crate :: SECP256K1 . recover_ecdsa ( msg, self )
138
138
}
139
139
}
@@ -154,7 +154,7 @@ impl From<ffi::RecoverableSignature> for RecoverableSignature {
154
154
impl < C : Signing > Secp256k1 < C > {
155
155
fn sign_ecdsa_recoverable_with_noncedata_pointer (
156
156
& self ,
157
- msg : & Message ,
157
+ msg : impl Into < Message > ,
158
158
sk : & key:: SecretKey ,
159
159
noncedata_ptr : * const super_ffi:: types:: c_void ,
160
160
) -> RecoverableSignature {
@@ -166,7 +166,7 @@ impl<C: Signing> Secp256k1<C> {
166
166
ffi:: secp256k1_ecdsa_sign_recoverable(
167
167
self . ctx. as_ptr( ) ,
168
168
& mut ret,
169
- msg. as_c_ptr( ) ,
169
+ msg. into ( ) . as_c_ptr( ) ,
170
170
sk. as_c_ptr( ) ,
171
171
super_ffi:: secp256k1_nonce_function_rfc6979,
172
172
noncedata_ptr
@@ -182,7 +182,7 @@ impl<C: Signing> Secp256k1<C> {
182
182
/// Requires a signing-capable context.
183
183
pub fn sign_ecdsa_recoverable (
184
184
& self ,
185
- msg : & Message ,
185
+ msg : impl Into < Message > ,
186
186
sk : & key:: SecretKey ,
187
187
) -> RecoverableSignature {
188
188
self . sign_ecdsa_recoverable_with_noncedata_pointer ( msg, sk, ptr:: null ( ) )
@@ -195,7 +195,7 @@ impl<C: Signing> Secp256k1<C> {
195
195
/// Requires a signing-capable context.
196
196
pub fn sign_ecdsa_recoverable_with_noncedata (
197
197
& self ,
198
- msg : & Message ,
198
+ msg : impl Into < Message > ,
199
199
sk : & key:: SecretKey ,
200
200
noncedata : & [ u8 ; 32 ] ,
201
201
) -> RecoverableSignature {
@@ -209,7 +209,7 @@ impl<C: Verification> Secp256k1<C> {
209
209
/// `msg`. Requires a verify-capable context.
210
210
pub fn recover_ecdsa (
211
211
& self ,
212
- msg : & Message ,
212
+ msg : impl Into < Message > ,
213
213
sig : & RecoverableSignature ,
214
214
) -> Result < key:: PublicKey , Error > {
215
215
unsafe {
@@ -218,7 +218,7 @@ impl<C: Verification> Secp256k1<C> {
218
218
self . ctx . as_ptr ( ) ,
219
219
& mut pk,
220
220
sig. as_c_ptr ( ) ,
221
- msg. as_c_ptr ( ) ,
221
+ msg. into ( ) . as_c_ptr ( ) ,
222
222
) != 1
223
223
{
224
224
return Err ( Error :: InvalidSignature ) ;
@@ -252,15 +252,15 @@ mod tests {
252
252
let ( sk, pk) = full. generate_keypair ( & mut rand:: thread_rng ( ) ) ;
253
253
254
254
// Try signing
255
- assert_eq ! ( sign. sign_ecdsa_recoverable( & msg, & sk) , full. sign_ecdsa_recoverable( & msg, & sk) ) ;
256
- let sigr = full. sign_ecdsa_recoverable ( & msg, & sk) ;
255
+ assert_eq ! ( sign. sign_ecdsa_recoverable( msg, & sk) , full. sign_ecdsa_recoverable( msg, & sk) ) ;
256
+ let sigr = full. sign_ecdsa_recoverable ( msg, & sk) ;
257
257
258
258
// Try pk recovery
259
- assert ! ( vrfy. recover_ecdsa( & msg, & sigr) . is_ok( ) ) ;
260
- assert ! ( full. recover_ecdsa( & msg, & sigr) . is_ok( ) ) ;
259
+ assert ! ( vrfy. recover_ecdsa( msg, & sigr) . is_ok( ) ) ;
260
+ assert ! ( full. recover_ecdsa( msg, & sigr) . is_ok( ) ) ;
261
261
262
- assert_eq ! ( vrfy. recover_ecdsa( & msg, & sigr) , full. recover_ecdsa( & msg, & sigr) ) ;
263
- assert_eq ! ( full. recover_ecdsa( & msg, & sigr) , Ok ( pk) ) ;
262
+ assert_eq ! ( vrfy. recover_ecdsa( msg, & sigr) , full. recover_ecdsa( msg, & sigr) ) ;
263
+ assert_eq ! ( full. recover_ecdsa( msg, & sigr) , Ok ( pk) ) ;
264
264
}
265
265
266
266
#[ test]
@@ -280,7 +280,7 @@ mod tests {
280
280
let sk = SecretKey :: from_slice ( & ONE ) . unwrap ( ) ;
281
281
let msg = Message :: from_digest_slice ( & ONE ) . unwrap ( ) ;
282
282
283
- let sig = s. sign_ecdsa_recoverable ( & msg, & sk) ;
283
+ let sig = s. sign_ecdsa_recoverable ( msg, & sk) ;
284
284
285
285
assert_eq ! ( Ok ( sig) , RecoverableSignature :: from_compact( & [
286
286
0x66 , 0x73 , 0xff , 0xad , 0x21 , 0x47 , 0x74 , 0x1f ,
@@ -306,7 +306,7 @@ mod tests {
306
306
let msg = Message :: from_digest_slice ( & ONE ) . unwrap ( ) ;
307
307
let noncedata = [ 42u8 ; 32 ] ;
308
308
309
- let sig = s. sign_ecdsa_recoverable_with_noncedata ( & msg, & sk, & noncedata) ;
309
+ let sig = s. sign_ecdsa_recoverable_with_noncedata ( msg, & sk, & noncedata) ;
310
310
311
311
assert_eq ! ( Ok ( sig) , RecoverableSignature :: from_compact( & [
312
312
0xb5 , 0x0b , 0xb6 , 0x79 , 0x5f , 0x31 , 0x74 , 0x8a ,
@@ -331,14 +331,14 @@ mod tests {
331
331
332
332
let ( sk, pk) = s. generate_keypair ( & mut rand:: thread_rng ( ) ) ;
333
333
334
- let sigr = s. sign_ecdsa_recoverable ( & msg, & sk) ;
334
+ let sigr = s. sign_ecdsa_recoverable ( msg, & sk) ;
335
335
let sig = sigr. to_standard ( ) ;
336
336
337
337
let msg = crate :: random_32_bytes ( & mut rand:: thread_rng ( ) ) ;
338
338
let msg = Message :: from_digest_slice ( & msg) . unwrap ( ) ;
339
- assert_eq ! ( s. verify_ecdsa( & msg, & sig, & pk) , Err ( Error :: IncorrectSignature ) ) ;
339
+ assert_eq ! ( s. verify_ecdsa( msg, & sig, & pk) , Err ( Error :: IncorrectSignature ) ) ;
340
340
341
- let recovered_key = s. recover_ecdsa ( & msg, & sigr) . unwrap ( ) ;
341
+ let recovered_key = s. recover_ecdsa ( msg, & sigr) . unwrap ( ) ;
342
342
assert ! ( recovered_key != pk) ;
343
343
}
344
344
@@ -353,9 +353,9 @@ mod tests {
353
353
354
354
let ( sk, pk) = s. generate_keypair ( & mut rand:: thread_rng ( ) ) ;
355
355
356
- let sig = s. sign_ecdsa_recoverable ( & msg, & sk) ;
356
+ let sig = s. sign_ecdsa_recoverable ( msg, & sk) ;
357
357
358
- assert_eq ! ( s. recover_ecdsa( & msg, & sig) , Ok ( pk) ) ;
358
+ assert_eq ! ( s. recover_ecdsa( msg, & sig) , Ok ( pk) ) ;
359
359
}
360
360
361
361
#[ test]
@@ -371,9 +371,9 @@ mod tests {
371
371
372
372
let ( sk, pk) = s. generate_keypair ( & mut rand:: thread_rng ( ) ) ;
373
373
374
- let sig = s. sign_ecdsa_recoverable_with_noncedata ( & msg, & sk, & noncedata) ;
374
+ let sig = s. sign_ecdsa_recoverable_with_noncedata ( msg, & sk, & noncedata) ;
375
375
376
- assert_eq ! ( s. recover_ecdsa( & msg, & sig) , Ok ( pk) ) ;
376
+ assert_eq ! ( s. recover_ecdsa( msg, & sig) , Ok ( pk) ) ;
377
377
}
378
378
379
379
#[ test]
@@ -386,10 +386,10 @@ mod tests {
386
386
387
387
// Zero is not a valid sig
388
388
let sig = RecoverableSignature :: from_compact ( & [ 0 ; 64 ] , RecoveryId :: Zero ) . unwrap ( ) ;
389
- assert_eq ! ( s. recover_ecdsa( & msg, & sig) , Err ( Error :: InvalidSignature ) ) ;
389
+ assert_eq ! ( s. recover_ecdsa( msg, & sig) , Err ( Error :: InvalidSignature ) ) ;
390
390
// ...but 111..111 is
391
391
let sig = RecoverableSignature :: from_compact ( & [ 1 ; 64 ] , RecoveryId :: Zero ) . unwrap ( ) ;
392
- assert ! ( s. recover_ecdsa( & msg, & sig) . is_ok( ) ) ;
392
+ assert ! ( s. recover_ecdsa( msg, & sig) . is_ok( ) ) ;
393
393
}
394
394
395
395
#[ test]
0 commit comments