ruby/rubygems · error · Gem::OptionParser::InvalidArgument
#{key_file}: invalid RSA, DSA, or EC key
Error message
#{key_file}: invalid RSA, DSA, or EC key What it means
Error "#{key_file}: invalid RSA, DSA, or EC key" thrown in ruby/rubygems.
Source
Thrown at lib/rubygems/commands/cert_command.rb:103
def open_cert(certificate_file)
check_openssl
OpenSSL::X509::Certificate.new File.read certificate_file
rescue Errno::ENOENT
raise Gem::OptionParser::InvalidArgument, "#{certificate_file}: does not exist"
rescue OpenSSL::X509::CertificateError
raise Gem::OptionParser::InvalidArgument,
"#{certificate_file}: invalid X509 certificate"
end
def open_private_key(key_file)
check_openssl
passphrase = ENV["GEM_PRIVATE_KEY_PASSPHRASE"]
key = OpenSSL::PKey.read File.read(key_file), passphrase
key
rescue Errno::ENOENT
raise Gem::OptionParser::InvalidArgument, "#{key_file}: does not exist"
rescue OpenSSL::PKey::PKeyError, ArgumentError
raise Gem::OptionParser::InvalidArgument, "#{key_file}: invalid RSA, DSA, or EC key"
end
def execute
check_openssl
options[:add].each do |certificate|
add_certificate certificate
end
options[:remove].each do |filter|
remove_certificates_matching filter
end
options[:list].each do |filter|
list_certificates_matching filter
end
options[:build].each do |email|View on GitHub (pinned to 86cbb817a3)
When it happens
Trigger: Thrown at lib/rubygems/commands/cert_command.rb:103 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of ruby/rubygems@86cbb817a3 (2026-08-23).
Data as JSON: /api/errors/01e2c93e6f9f2eb3.
Report an issue: GitHub.