Method: SSHData::PrivateKey.from_data
- Defined in:
- lib/ssh_data/private_key.rb
.from_data(data) ⇒ Object
50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 |
# File 'lib/ssh_data/private_key.rb', line 50 def self.from_data(data) data[:private_keys].map do |priv| case priv[:algo] when PublicKey::ALGO_RSA RSA.new(**priv) when PublicKey::ALGO_DSA DSA.new(**priv) when PublicKey::ALGO_ECDSA256, PublicKey::ALGO_ECDSA384, PublicKey::ALGO_ECDSA521 ECDSA.new(**priv) when PublicKey::ALGO_ED25519 ED25519.new(**priv) else raise DecodeError, "unkown algo: #{priv[:algo].inspect}" end end end |