ic_agent/identity/
anonymous.rsuse crate::{agent::EnvelopeContent, export::Principal, identity::Identity, Signature};
#[derive(Debug, Copy, Clone)]
pub struct AnonymousIdentity;
impl Identity for AnonymousIdentity {
fn sender(&self) -> Result<Principal, String> {
Ok(Principal::anonymous())
}
fn public_key(&self) -> Option<Vec<u8>> {
None
}
fn sign(&self, _: &EnvelopeContent) -> Result<Signature, String> {
Ok(Signature {
signature: None,
public_key: None,
delegations: None,
})
}
fn sign_arbitrary(&self, _: &[u8]) -> Result<Signature, String> {
Ok(Signature {
public_key: None,
signature: None,
delegations: None,
})
}
}