pub async fn sign(vault: &'_ mut impl Signer + Verifier + SecretVault)