# File lib/rhc/vendor/sshkey.rb, line 52
        def generate(options = {})
          type   = options[:type] || "rsa"

          # JRuby modulus size must range from 512 to 1024
          default_bits = type == "rsa" ? 2048 : 1024

          bits   = options[:bits] || default_bits
          cipher = OpenSSL::Cipher::Cipher.new("AES-128-CBC") if options[:passphrase]

          case type.downcase
          when "rsa" then new(OpenSSL::PKey::RSA.generate(bits).to_pem(cipher, options[:passphrase]), options)
          when "dsa" then new(OpenSSL::PKey::DSA.generate(bits).to_pem(cipher, options[:passphrase]), options)
          else
            raise "Unknown key type: #{type}"
          end
        end