Sha256: ca215ad3b7b497c873ef8b0cd94172634873ad46a9bcb726b933f5ede921f318
Contents?: true
Size: 1003 Bytes
Versions: 1
Compression:
Stored size: 1003 Bytes
Contents
module Xml module Kit class KeyPair # :nodoc: attr_reader :certificate, :private_key, :use def initialize(certificate, private_key, passphrase, use) @use = use @certificate = ::Xml::Kit::Certificate.new(certificate, use: use) @private_key = OpenSSL::PKey::RSA.new(private_key, passphrase) end # Returns true if the key pair is the designated use. # # @param use [Symbol] Can be either `:signing` or `:encryption`. def for?(use) @use == use end # Returns a generated self signed certificate with private key. # # @param use [Symbol] Can be either `:signing` or `:encryption`. # @param passphrase [String] the passphrase to use to encrypt the private key. def self.generate(use:, passphrase: SecureRandom.uuid) certificate, private_key = ::Xml::Kit::SelfSignedCertificate.new(passphrase).create new(certificate, private_key, passphrase, use) end end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
xml-kit-0.1.0 | lib/xml/kit/key_pair.rb |