Method: JOSE::JWK::KTY_OKP_Ed448.from_openssh_key

Defined in:
lib/jose/jwk/kty_okp_ed448.rb

.from_openssh_key(key) ⇒ Object



122
123
124
125
126
127
128
129
130
131
132
133
134
# File 'lib/jose/jwk/kty_okp_ed448.rb', line 122

def self.from_openssh_key(key)
  type, _, sk, comment = key
  if type and sk and type == 'ssh-ed448' and sk.bytesize == SK_BYTES
    if comment == '' or comment.nil?
      return from_okp([:Ed448, sk])
    else
      kty, fields = from_okp([:Ed448, sk])
      return kty, fields.merge('kid' => comment)
    end
  else
    raise ArgumentError, "unrecognized openssh key type: #{type.inspect}"
  end
end