pub struct ModuleSignatureData {
pub author_key: [u8; 32],
pub signature: Vec<u8>,
pub signed_at: u64,
}Expand description
Cryptographic signature data attached to a module manifest.
Contains the author’s public key, the Ed25519 signature over the manifest hash, and a timestamp recording when the signature was produced.
Fields§
Ed25519 public key of the author (32 bytes).
signature: Vec<u8>Ed25519 signature bytes (64 bytes). Uses Vec<u8> because serde does
not support [u8; 64] out of the box.
signed_at: u64Unix timestamp (seconds) when the signature was created.
Implementations§
Source§impl ModuleSignatureData
impl ModuleSignatureData
Sourcepub fn sign(manifest_hash: &[u8; 32], signing_key: &SigningKey) -> Self
pub fn sign(manifest_hash: &[u8; 32], signing_key: &SigningKey) -> Self
Sign a manifest hash with the given signing key.
Produces a ModuleSignatureData containing the author’s public key,
the signature over manifest_hash, and the current timestamp.
Trait Implementations§
Source§impl Clone for ModuleSignatureData
impl Clone for ModuleSignatureData
Source§fn clone(&self) -> ModuleSignatureData
fn clone(&self) -> ModuleSignatureData
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for ModuleSignatureData
impl Debug for ModuleSignatureData
Source§impl<'de> Deserialize<'de> for ModuleSignatureData
impl<'de> Deserialize<'de> for ModuleSignatureData
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Auto Trait Implementations§
impl Freeze for ModuleSignatureData
impl RefUnwindSafe for ModuleSignatureData
impl Send for ModuleSignatureData
impl Sync for ModuleSignatureData
impl Unpin for ModuleSignatureData
impl UnsafeUnpin for ModuleSignatureData
impl UnwindSafe for ModuleSignatureData
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more