Struct ssb_keyfile::Keypair [−][src]
Expand description
A public/secret long-term key pair.
This is an Ed25519 key pair.
Fields
secret: SecretKey
The secret half of the key pair. Keep private.
public: PublicKey
The public half of the key pair. Feel free to share.
Implementations
Deserialize a keypair from a byte slice.
The slice length must be 64; where the first 32 bytes are the secret key, and the second 32 bytes are the public key (libsodium’s standard layout).
Deserialize from the bas64 representation. Ignores optional .ed25519 suffix.
Example
let s = "R6DKoOCt1Cj/IB2/ocvj2Eyp8AgmFdoJ9hH2TO4Tl8Yfapd5Lmw4pSpoY0WBEnqpHjz6UB4/QL2Wr0hWVAyi1w==.ed25519"; if let Some(keypair) = ssb_crypto::Keypair::from_base64(s) { // let auth = keypair.sign("hello".to_bytes()); // ... } else { panic!() }
Does not include “.ed25519” suffix or a sigil prefix.
Example
let s = "R6DKoOCt1Cj/IB2/ocvj2Eyp8AgmFdoJ9hH2TO4Tl8Yfapd5Lmw4pSpoY0WBEnqpHjz6UB4/QL2Wr0hWVAyi1w=="; let kp = ssb_crypto::Keypair::from_base64(s).unwrap(); assert_eq!(kp.as_base64(), s);
Create a keypair from the given seed bytes. Slice length must be 32.
Generate a new random keypair using the given cryptographically-secure random number generator.
Trait Implementations
Auto Trait Implementations
impl RefUnwindSafe for Keypair
impl UnwindSafe for Keypair
Blanket Implementations
Mutably borrows from an owned value. Read more
type Output = T
type Output = T
Should always be Self