Struct trust_dns_proto::rr::dnssec::public_key::Rsa
source · [−]pub struct Rsa<'k> { /* private fields */ }
Available on crate feature
dnssec
and (crate features openssl
or ring
) only.Expand description
Rsa public key
Implementations
sourceimpl<'k> Rsa<'k>
impl<'k> Rsa<'k>
sourcepub fn from_public_bytes(raw: &'k [u8]) -> ProtoResult<Self>
pub fn from_public_bytes(raw: &'k [u8]) -> ProtoResult<Self>
RFC 3110 RSA SIGs and KEYs in the DNS May 2001
2. RSA Public KEY Resource Records
RSA public keys are stored in the DNS as KEY RRs using algorithm
number 5 [RFC2535]. The structure of the algorithm specific portion
of the RDATA part of such RRs is as shown below.
Field Size
----- ----
exponent length 1 or 3 octets (see text)
exponent as specified by length field
modulus remaining space
For interoperability, the exponent and modulus are each limited to
4096 bits in length. The public key exponent is a variable length
unsigned integer. Its length in octets is represented as one octet
if it is in the range of 1 to 255 and by a zero octet followed by a
two octet unsigned length if it is longer than 255 bytes. The public
key modulus field is a multiprecision unsigned integer. The length
of the modulus can be determined from the RDLENGTH and the preceding
RDATA fields including the exponent. Leading zero octets are
prohibited in the exponent and modulus.
Note: KEY RRs for use with RSA/SHA1 DNS signatures MUST use this
algorithm number (rather than the algorithm number specified in the
obsoleted RFC 2537).
Note: This changes the algorithm number for RSA KEY RRs to be the
same as the new algorithm number for RSA/SHA1 SIGs.
Trait Implementations
Auto Trait Implementations
impl<'k> RefUnwindSafe for Rsa<'k>
impl<'k> Send for Rsa<'k>
impl<'k> Sync for Rsa<'k>
impl<'k> Unpin for Rsa<'k>
impl<'k> UnwindSafe for Rsa<'k>
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
sourceimpl<T> Instrument for T
impl<T> Instrument for T
sourcefn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
sourcefn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
impl<V, T> VZip<V> for T where
V: MultiLane<T>,
impl<V, T> VZip<V> for T where
V: MultiLane<T>,
fn vzip(self) -> V
sourceimpl<T> WithSubscriber for T
impl<T> WithSubscriber for T
sourcefn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self> where
S: Into<Dispatch>,
fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self> where
S: Into<Dispatch>,
Attaches the provided Subscriber
to this type, returning a
WithDispatch
wrapper. Read more
sourcefn with_current_subscriber(self) -> WithDispatch<Self>
fn with_current_subscriber(self) -> WithDispatch<Self>
Attaches the current default Subscriber
to this type, returning a
WithDispatch
wrapper. Read more