pub struct ChainVerifier { /* private fields */ }Expand description
Verifies Apple’s certificate chains.
Implementations§
Source§impl ChainVerifier
impl ChainVerifier
Sourcepub fn new(root_certificates: Vec<Vec<u8>>) -> Self
pub fn new(root_certificates: Vec<Vec<u8>>) -> Self
Creates a verifier trusting the given DER-encoded root certificates.
Sourcepub fn verify(
&self,
leaf: &[u8],
intermediate: &[u8],
effective_date: Option<u64>,
enable_online_checks: bool,
) -> Result<Vec<u8>, ChainVerifierError>
pub fn verify( &self, leaf: &[u8], intermediate: &[u8], effective_date: Option<u64>, enable_online_checks: bool, ) -> Result<Vec<u8>, ChainVerifierError>
Verifies the chain and returns the leaf’s DER-encoded SubjectPublicKeyInfo.
§Arguments
leaf- DER-encoded leaf certificateintermediate- DER-encoded intermediate certificateeffective_date- Optional Unix timestamp for validity checksenable_online_checks- Whether the verified public key is cached, matching the official Apple libraries. Revocation checking is not performed.
Auto Trait Implementations§
impl !Freeze for ChainVerifier
impl RefUnwindSafe for ChainVerifier
impl Send for ChainVerifier
impl Sync for ChainVerifier
impl Unpin for ChainVerifier
impl UnsafeUnpin for ChainVerifier
impl UnwindSafe for ChainVerifier
Blanket Implementations§
Source§impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
Source§impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
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