pub trait EncodableSecret {
// Required methods
fn encode_bson(&self) -> SecretVec<u8>;
fn decode_bson(bson_data: &SecretVec<u8>) -> Result<Self, FormatError>
where Self: Sized;
fn encode_pem(&self) -> SecretString;
fn decode_pem(pem_data: SecretString) -> Result<Self, FormatError>
where Self: Sized;
}