pub struct Disclosed {
pub commit_id: Hash,
pub tree_hash: Hash,
pub path: Vec<(Vec<u8>, EntryMode)>,
pub leaf_id: Hash,
pub payload: DisclosedPayload,
pub signer: [u8; 32],
pub signature_valid: bool,
pub step_inner_roots: Vec<Hash>,
pub chunk_inner_root: Option<Hash>,
}Expand description
A verified partial disclosure: payload is exactly the content
commit_id commits to at path, and nothing more. See the module
docs for the precise trust model.
Fields§
§commit_id: HashThe commit id the disclosure was verified against.
tree_hash: HashThe commit’s (or remix’s) root tree id.
path: Vec<(Vec<u8>, EntryMode)>The authenticated path, root first (see PathVerified::path).
leaf_id: HashThe id of the disclosed leaf object.
payload: DisclosedPayloadThe disclosed content.
signer: [u8; 32]The commit/remix’s embedded Ed25519 public key.
signature_valid: boolWhether the commit/remix’s embedded signature verifies. See
PathVerified::signature_valid.
step_inner_roots: Vec<Hash>Authenticated bare BMT inner root of each step’s parent Tree,
root first. Empty when steps is empty (root-tree disclosure).
Each value has been wrap-checked against the parent id and
cross-checked against the proof fold.
chunk_inner_root: Option<Hash>Authenticated bare BMT inner root of the leaf ChunkedBlob, when
the payload is Chunk or a Range over a chunk. None for an
Object payload or a Range over a plain Blob.
Trait Implementations§
impl Eq for Disclosed
impl StructuralPartialEq for Disclosed
Auto Trait Implementations§
impl Freeze for Disclosed
impl RefUnwindSafe for Disclosed
impl Send for Disclosed
impl Sync for Disclosed
impl Unpin for Disclosed
impl UnsafeUnpin for Disclosed
impl UnwindSafe for Disclosed
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<T> FutureExt for T
impl<T> FutureExt for T
Source§fn with_context(self, otel_cx: Context) -> WithContext<Self> ⓘ
fn with_context(self, otel_cx: Context) -> WithContext<Self> ⓘ
Source§fn with_current_context(self) -> WithContext<Self> ⓘ
fn with_current_context(self) -> WithContext<Self> ⓘ
impl<A, B, T> HttpServerConnExec<A, B> for Twhere
B: Body,
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> ⓘ
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> ⓘ
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