MCPcopy Create free account
hub / github.com/ddimaria/rust-blockchain-tutorial / recover_address

Function recover_address

utils/src/crypto.rs:233–236  ·  view source on GitHub ↗

Recover the address of the public key using a recoverable signature and signed message ```rust use utils::crypto::{keypair, public_key_address, recover_address, sign_recovery}; let (private_key, public_key) = keypair(); let message = b"The message"; let signature = sign_recovery(message, &private_key).unwrap(); let (recovery_id, serialized_signature) = signature.serialize_compact(); let recover_

(message: &[u8], signature: &[u8], recovery_id: i32)

Source from the content-addressed store, hash-verified

231/// assert_eq!(recover_address, public_key_address(&public_key));
232/// ```
233pub fn recover_address(message: &[u8], signature: &[u8], recovery_id: i32) -> Result<Address> {
234 let public_key = recover_public_key(message, signature, recovery_id)?;
235 Ok(public_key_address(&public_key))
236}
237
238// Helper function to hash bytes and convert to a Message
239pub fn hash_message(message: &[u8]) -> Result<Message> {

Callers 2

it_recoversFunction · 0.85

Calls 2

recover_public_keyFunction · 0.85
public_key_addressFunction · 0.85

Tested by 2

it_recoversFunction · 0.68