[][src]Struct cjdns_keys::CJDNSKeys

pub struct CJDNSKeys {
    pub private_key: CJDNSPrivateKey,
    pub public_key: CJDNSPublicKey,
    pub ip6: CJDNS_IP6,
}

Convenience type for managing all CJDNS key types in one variable.

Fields of the struct are public, so it's possible to create invalid key pair. For example: there is a contract between ip6 and public key, which requires successful initialization of ip6 from public key. CJDNSKeys doesn't control the contract, so it's possible to have valid keys on their own, but invalid in "pair". So if you wrap your keys with CJDNSKeys, make sure that the contract requirements are met. For safe random keys initialization use CJDNSKeysApi struct methods.

Fields

private_key: CJDNSPrivateKey

CJDNS private key.

public_key: CJDNSPublicKey

CJDNS public key

ip6: CJDNS_IP6

CJDNS ip6

Trait Implementations

impl Clone for CJDNSKeys[src]

impl Debug for CJDNSKeys[src]

impl Eq for CJDNSKeys[src]

impl PartialEq<CJDNSKeys> for CJDNSKeys[src]

impl StructuralEq for CJDNSKeys[src]

impl StructuralPartialEq for CJDNSKeys[src]

Auto Trait Implementations

impl RefUnwindSafe for CJDNSKeys

impl Send for CJDNSKeys

impl Sync for CJDNSKeys

impl Unpin for CJDNSKeys

impl UnwindSafe for CJDNSKeys

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.