pub fn create_withdrawal_request_signing_message(
	amount: u64,
	payee_bitcoin_address: &BitcoinAddress,
) -> Message {
	let signing_data: Vec<u8> = iter::empty()
		.chain(amount.serialize_to_vec())
		.chain(payee_bitcoin_address.script_pubkey().as_bytes().to_vec())
		.collect();
	// Wallets do not allow to sign bytes, instead a string is required.
	// The following string is used until more wallets support signing
	// withdrawal requests.
	let wallet_compatible_data = format!(
		"Withdraw request for {:} satoshis to the bitcoin address {:} ({:})",
		amount,
		payee_bitcoin_address,
		hex::encode(signing_data)
	);
	create_signing_message(wallet_compatible_data)
}
Creates the SECP signing message for the withdrawal request
sbtc-core/src/operations/op_return/withdrawal_request.rs