sshkey
sshkey copied to clipboard
Does not work with new algorithms, like ED25519
Looks like there may be better choice code.
k = SSHKey.new( File.read( 'spec/keys/ed25519' ) )
OpenSSL::PKey::DSAError: Neither PUB key nor PRIV key
from .bundle-gems/ruby/2.7.0/gems/sshkey-2.0.0/lib/sshkey.rb:250:in `initialize'
Caused by OpenSSL::PKey::RSAError: Neither PUB key nor PRIV key: nested asn1 error
from .bundle-gems/ruby/2.7.0/gems/sshkey-2.0.0/lib/sshkey.rb:247:in `initialize'
Hey @bensie @mcclymont any thoughts about fleshing out ECDSA support?
k = SSHKey.generate(type: "ECDSA")
RuntimeError: Unknown key type: ECDSA
(also noting existing branches ec and ecdsabits and issue https://github.com/bensie/sshkey/issues/35)
From my end, I faced the same error.
irb(main):001:0> require 'sshkey'
=> true
irb(main):002:0> f = File.read(File.expand_path("./openssh"))
=> "-----BEGIN OPENSSH PRIVATE KEY-----\nb3BlbnNzaC1rZXktdjEAAAAABG5vbmUAAAAEbm9uZQAAAAAAAAABAAACFwAAAAdzc2gtcn\nNhAAAAAwEAAQAAAgE...
irb(main):003:0> k = SSHKey.new(f, comment: "[email protected]")
Traceback (most recent call last):
9: from /Users/chaspy/.rbenv/versions/2.7.2/bin/irb:23:in `<main>'
8: from /Users/chaspy/.rbenv/versions/2.7.2/bin/irb:23:in `load'
7: from /Users/chaspy/.rbenv/versions/2.7.2/lib/ruby/gems/2.7.0/gems/irb-1.2.6/exe/irb:11:in `<top (required)>'
6: from (irb):3
5: from (irb):3:in `new'
4: from /Users/chaspy/.rbenv/versions/2.7.2/lib/ruby/gems/2.7.0/gems/sshkey-2.0.0/lib/sshkey.rb:246:in `initialize'
3: from /Users/chaspy/.rbenv/versions/2.7.2/lib/ruby/gems/2.7.0/gems/sshkey-2.0.0/lib/sshkey.rb:250:in `rescue in initialize'
2: from /Users/chaspy/.rbenv/versions/2.7.2/lib/ruby/gems/2.7.0/gems/sshkey-2.0.0/lib/sshkey.rb:250:in `new'
1: from /Users/chaspy/.rbenv/versions/2.7.2/lib/ruby/gems/2.7.0/gems/sshkey-2.0.0/lib/sshkey.rb:250:in `initialize'
OpenSSL::PKey::DSAError (Neither PUB key nor PRIV key)
I generate the private key with the following:
ssh-keygen -t rsa -b 4096
Ruby Version I tried:
- 3.0.0
- 2.7.2
- 2.6.5