Expand description
OpenSSH Key Format Support
This module provides functionality to import and export Ed25519 keys in OpenSSH formats. Supports both public key format (ssh-ed25519) and private key format (OpenSSH private key).
§Examples
use chie_crypto::openssh::{SshPublicKey, SshPrivateKey};
use chie_crypto::signing::KeyPair;
// Generate a keypair
let keypair = KeyPair::generate();
// Export as SSH public key
let ssh_pub = SshPublicKey::from_ed25519(&keypair.public_key());
let ssh_pub_str = ssh_pub.to_string_with_comment("user@host");
// Parse SSH public key
let parsed = SshPublicKey::parse(&ssh_pub_str).unwrap();
assert_eq!(parsed.key_data, ssh_pub.key_data);
// Export as SSH private key
let ssh_priv = SshPrivateKey::from_ed25519(&keypair);
let pem = ssh_priv.to_pem();Structs§
- SshPrivate
Key - SSH private key in OpenSSH format
- SshPublic
Key - SSH public key in OpenSSH format
Enums§
- SshKey
Error - SSH key format errors
Type Aliases§
- SshKey
Result - Result type for SSH key operations