Trait ockam::Identity [−][src]
pub trait Identity: 'static + Send {}Show 18 methods
fn identifier(&self) -> Result<EntityIdentifier, Error>; fn create_key<S>(&mut self, label: S) -> Result<(), Error>
where
S: Into<String>; fn rotate_profile_key(&mut self) -> Result<(), Error>; fn get_profile_secret_key(&self) -> Result<Secret, Error>; fn get_secret_key<S>(&self, label: S) -> Result<Secret, Error>
where
S: Into<String>; fn get_profile_public_key(&self) -> Result<PublicKey, Error>; fn get_public_key<S>(&self, label: S) -> Result<PublicKey, Error>
where
S: Into<String>; fn create_auth_proof<S>(
&mut self,
state_slice: S
) -> Result<Vec<u8, Global>, Error>
where
S: AsRef<[u8]>; fn verify_auth_proof<S, P>(
&mut self,
state_slice: S,
peer_id: &EntityIdentifier,
proof_slice: P
) -> Result<bool, Error>
where
P: AsRef<[u8]>,
S: AsRef<[u8]>; fn add_change(
&mut self,
change_event: ProfileChangeEvent
) -> Result<(), Error>; fn get_changes(&self) -> Result<Vec<ProfileChangeEvent, Global>, Error>; fn verify_changes(&mut self) -> Result<bool, Error>; fn get_contacts(&self) -> Result<Vec<Contact, Global>, Error>; fn as_contact(&mut self) -> Result<Contact, Error>; fn get_contact(
&mut self,
contact_id: &EntityIdentifier
) -> Result<Option<Contact>, Error>; fn verify_contact<C>(&mut self, contact: C) -> Result<bool, Error>
where
C: Into<Contact>; fn verify_and_add_contact<C>(&mut self, contact: C) -> Result<bool, Error>
where
C: Into<Contact>; fn verify_and_update_contact<C>(
&mut self,
contact_id: &EntityIdentifier,
change_events: C
) -> Result<bool, Error>
where
C: AsRef<[ProfileChangeEvent]>;
Expand description
Identity
Required methods
fn identifier(&self) -> Result<EntityIdentifier, Error>
fn identifier(&self) -> Result<EntityIdentifier, Error>
Return unique [Profile
] identifier, which is equal to sha256 of the root public key
Create new key.
fn rotate_profile_key(&mut self) -> Result<(), Error>
fn rotate_profile_key(&mut self) -> Result<(), Error>
Rotate existing key.
Get Secret
key.
Get PublicKey
.
Create an authentication proof based on the given state
Verify a proof based on the given state, proof and profile.
fn add_change(&mut self, change_event: ProfileChangeEvent) -> Result<(), Error>
fn add_change(&mut self, change_event: ProfileChangeEvent) -> Result<(), Error>
Add a change event.
fn get_changes(&self) -> Result<Vec<ProfileChangeEvent, Global>, Error>
fn get_changes(&self) -> Result<Vec<ProfileChangeEvent, Global>, Error>
Return change history chain
fn verify_changes(&mut self) -> Result<bool, Error>
fn verify_changes(&mut self) -> Result<bool, Error>
Verify the whole change event chain
Return all known to this profile Contact
s
fn get_contact(
&mut self,
contact_id: &EntityIdentifier
) -> Result<Option<Contact>, Error>
fn get_contact(
&mut self,
contact_id: &EntityIdentifier
) -> Result<Option<Contact>, Error>
Return Contact
with given ProfileIdentifier
Verify cryptographically whole event chain. Also verify sequence correctness
Verify and add new Contact
to [Profile
]’s Contact list
fn verify_and_update_contact<C>(
&mut self,
contact_id: &EntityIdentifier,
change_events: C
) -> Result<bool, Error> where
C: AsRef<[ProfileChangeEvent]>,
fn verify_and_update_contact<C>(
&mut self,
contact_id: &EntityIdentifier,
change_events: C
) -> Result<bool, Error> where
C: AsRef<[ProfileChangeEvent]>,
Verify and update known Contact
with new ProfileChangeEvent
s