Enum signatory::EcdsaPublicKey [−][src]
pub enum EcdsaPublicKey<C: WeierstrassCurve> { Compressed(CompressedCurvePoint<C>), Uncompressed(UncompressedCurvePoint<C>), }
ECDSA public keys
Variants
Compressed(CompressedCurvePoint<C>)
Compressed Weierstrass elliptic curve point
Uncompressed(UncompressedCurvePoint<C>)
Uncompressed Weierstrass elliptic curve point
Methods
impl<C> PublicKey<C> where
C: WeierstrassCurve,
[src]
impl<C> PublicKey<C> where
C: WeierstrassCurve,
pub fn from_bytes<B: AsRef<[u8]>>(bytes: B) -> Result<Self, Error>
[src]
pub fn from_bytes<B: AsRef<[u8]>>(bytes: B) -> Result<Self, Error>
Create an ECDSA public key from an elliptic curve point
(compressed or uncompressed) encoded using the
Elliptic-Curve-Point-to-Octet-String
algorithm described in
SEC 1: Elliptic Curve Cryptography (Version 2.0) section
2.3.3 (page 10).
pub fn from_compressed_point<B>(into_bytes: B) -> Result<Self, Error> where
B: Into<GenericArray<u8, C::CompressedPointSize>>,
[src]
pub fn from_compressed_point<B>(into_bytes: B) -> Result<Self, Error> where
B: Into<GenericArray<u8, C::CompressedPointSize>>,
Create an ECDSA public key from an compressed elliptic curve point
encoded using the Elliptic-Curve-Point-to-Octet-String
algorithm
described in SEC 1: Elliptic Curve Cryptography (Version 2.0) section
2.3.3 (page 10).
pub fn from_untagged_point(
bytes: &GenericArray<u8, C::UntaggedPointSize>
) -> Self
[src]
pub fn from_untagged_point(
bytes: &GenericArray<u8, C::UntaggedPointSize>
) -> Self
Create an ECDSA public key from a raw uncompressed point serialized
as a bytestring, without a 0x04
-byte tag.
This will be twice the modulus size, or 1-byte smaller than the
Elliptic-Curve-Point-to-Octet-String
encoding i.e
with the leading 0x04
byte in that encoding removed.
pub fn as_bytes(&self) -> &[u8]
[src]
pub fn as_bytes(&self) -> &[u8]
Obtain public key as a byte array reference
Trait Implementations
impl<C: Clone + WeierstrassCurve> Clone for PublicKey<C>
[src]
impl<C: Clone + WeierstrassCurve> Clone for PublicKey<C>
fn clone(&self) -> PublicKey<C>
[src]
fn clone(&self) -> PublicKey<C>
Returns a copy of the value. Read more
fn clone_from(&mut self, source: &Self)
1.0.0[src]
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from source
. Read more
impl<C: Eq + WeierstrassCurve> Eq for PublicKey<C>
[src]
impl<C: Eq + WeierstrassCurve> Eq for PublicKey<C>
impl<C: PartialEq + WeierstrassCurve> PartialEq for PublicKey<C>
[src]
impl<C: PartialEq + WeierstrassCurve> PartialEq for PublicKey<C>
fn eq(&self, other: &PublicKey<C>) -> bool
[src]
fn eq(&self, other: &PublicKey<C>) -> bool
This method tests for self
and other
values to be equal, and is used by ==
. Read more
fn ne(&self, other: &PublicKey<C>) -> bool
[src]
fn ne(&self, other: &PublicKey<C>) -> bool
This method tests for !=
.
impl<C> AsRef<[u8]> for PublicKey<C> where
C: WeierstrassCurve,
[src]
impl<C> AsRef<[u8]> for PublicKey<C> where
C: WeierstrassCurve,
impl<C> Debug for PublicKey<C> where
C: WeierstrassCurve,
[src]
impl<C> Debug for PublicKey<C> where
C: WeierstrassCurve,
fn fmt(&self, f: &mut Formatter) -> Result
[src]
fn fmt(&self, f: &mut Formatter) -> Result
Formats the value using the given formatter. Read more
impl<C> Decode for PublicKey<C> where
C: WeierstrassCurve,
[src]
impl<C> Decode for PublicKey<C> where
C: WeierstrassCurve,
fn decode<E: Encoding>(
encoded_signature: &[u8],
encoding: &E
) -> Result<Self, Error>
[src]
fn decode<E: Encoding>(
encoded_signature: &[u8],
encoding: &E
) -> Result<Self, Error>
Decode an ECDSA public key from an elliptic curve point
(compressed or uncompressed) encoded using given Encoding
with the underlying bytes serialized using the
Elliptic-Curve-Point-to-Octet-String
algorithm described in
SEC 1: Elliptic Curve Cryptography (Version 2.0) section
2.3.3 (page 10).
fn decode_from_str<S, E>(encoded_str: S, encoding: &E) -> Result<Self, Error> where
S: AsRef<str>,
E: Encoding,
[src]
fn decode_from_str<S, E>(encoded_str: S, encoding: &E) -> Result<Self, Error> where
S: AsRef<str>,
E: Encoding,
Decode the given string-alike type with the provided Encoding
, returning the decoded value or a Error
. Read more
fn decode_from_reader<R, E>(reader: &mut R, encoding: &E) -> Result<Self, Error> where
R: Read,
E: Encoding,
[src]
fn decode_from_reader<R, E>(reader: &mut R, encoding: &E) -> Result<Self, Error> where
R: Read,
E: Encoding,
Decode the data read from the given io::Read
type with the provided Encoding
, returning the decoded value or a Error
. Read more
fn decode_from_file<P, E>(path: P, encoding: &E) -> Result<Self, Error> where
P: AsRef<Path>,
E: Encoding,
[src]
fn decode_from_file<P, E>(path: P, encoding: &E) -> Result<Self, Error> where
P: AsRef<Path>,
E: Encoding,
Read a file at the given path, decoding the data it contains using the provided Encoding
, returning the decoded value or a Error
. Read more
impl<C> Encode for PublicKey<C> where
C: WeierstrassCurve,
[src]
impl<C> Encode for PublicKey<C> where
C: WeierstrassCurve,
fn encode<E: Encoding>(&self, encoding: &E) -> Vec<u8>
[src]
fn encode<E: Encoding>(&self, encoding: &E) -> Vec<u8>
Encode this ECDSA public key (compressed or uncompressed) encoded
using given Encoding
with the underlying bytes serialized using the
Elliptic-Curve-Point-to-Octet-String
algorithm described in
SEC 1: Elliptic Curve Cryptography (Version 2.0) section
2.3.3 (page 10).
fn encode_to_string<E: Encoding>(&self, encoding: &E) -> Result<String, Error>
[src]
fn encode_to_string<E: Encoding>(&self, encoding: &E) -> Result<String, Error>
Encode self
to a String
using the provided Encoding
, returning the encoded value or a Error
. Read more
fn encode_to_writer<W, E>(
&self,
writer: &mut W,
encoding: &E
) -> Result<usize, Error> where
W: Write,
E: Encoding,
[src]
fn encode_to_writer<W, E>(
&self,
writer: &mut W,
encoding: &E
) -> Result<usize, Error> where
W: Write,
E: Encoding,
Encode self
with the given Encoding
, writing the result to the supplied io::Write
type, returning the number of bytes written or a Error
. Read more
fn encode_to_file<P, E>(&self, path: P, encoding: &E) -> Result<File, Error> where
P: AsRef<Path>,
E: Encoding,
[src]
fn encode_to_file<P, E>(&self, path: P, encoding: &E) -> Result<File, Error> where
P: AsRef<Path>,
E: Encoding,
Encode self
and write it to a file at the given path, returning the resulting File
or a Error
. Read more
impl<C: WeierstrassCurve> PublicKey for PublicKey<C>
[src]
impl<C: WeierstrassCurve> PublicKey for PublicKey<C>
Auto Trait Implementations
impl<C> Send for EcdsaPublicKey<C> where
<<C as WeierstrassCurve>::CompressedPointSize as ArrayLength<u8>>::ArrayType: Send,
<<C as WeierstrassCurve>::UncompressedPointSize as ArrayLength<u8>>::ArrayType: Send,
impl<C> Send for EcdsaPublicKey<C> where
<<C as WeierstrassCurve>::CompressedPointSize as ArrayLength<u8>>::ArrayType: Send,
<<C as WeierstrassCurve>::UncompressedPointSize as ArrayLength<u8>>::ArrayType: Send,
impl<C> Sync for EcdsaPublicKey<C> where
<<C as WeierstrassCurve>::CompressedPointSize as ArrayLength<u8>>::ArrayType: Sync,
<<C as WeierstrassCurve>::UncompressedPointSize as ArrayLength<u8>>::ArrayType: Sync,
impl<C> Sync for EcdsaPublicKey<C> where
<<C as WeierstrassCurve>::CompressedPointSize as ArrayLength<u8>>::ArrayType: Sync,
<<C as WeierstrassCurve>::UncompressedPointSize as ArrayLength<u8>>::ArrayType: Sync,