pub struct KeyPair {
pub public: PublicKey,
pub secret: SecretKey,
}Expand description
An age X25519 key pair consisting of a public key and a secret key.
KeyPair is the central type of this crate. It is produced by
build_keypair and provides access to both the
public identity (safe to share) and the secret identity (must be kept
confidential).
§Fields
public: PublicKey– The public key. It is guaranteed to start with"age1"and can be safely displayed, cloned, and shared.secret: SecretKey– The secret key. It is automatically zeroized when dropped, and itsDisplayandDebugimplementations redact the actual key material.
§Creation
KeyPair cannot be constructed directly from outside the crate because
its constructor is pub(crate). This ensures that all key pairs are
produced by [build_keypair], which properly generates a fresh identity
and validates both keys.
§Examples
use age_setup::build_keypair;
let kp = build_keypair()?;
println!("Public key: {}", kp.public);
// Secret key is redacted when printed:
println!("Secret key: {}", kp.secret); // prints [REDACTED]Fields§
§public: PublicKeyThe public half of the key pair.
secret: SecretKeyThe secret half of the key pair (zeroized on drop).
Trait Implementations§
Auto Trait Implementations§
impl Freeze for KeyPair
impl RefUnwindSafe for KeyPair
impl Send for KeyPair
impl Sync for KeyPair
impl Unpin for KeyPair
impl UnsafeUnpin for KeyPair
impl UnwindSafe for KeyPair
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
Mutably borrows from an owned value. Read more