class Ritm::CA
Wrapper on a Certificate
Authority with ability of signing certificates
Public Class Methods
ca_signing_profile()
click to toggle source
# File lib/ritm/certs/ca.rb, line 37 def self.ca_signing_profile { 'extensions' => { 'keyUsage' => { 'usage' => %w[critical keyCertSign keyEncipherment digitalSignature] } } } end
create(common_name: 'RubyInTheMiddle') { |cert| ... }
click to toggle source
Calls superclass method
Ritm::Certificate::create
# File lib/ritm/certs/ca.rb, line 7 def self.create(common_name: 'RubyInTheMiddle') super(common_name, serial_number: 1) do |cert| cert.signing_entity = true cert.sign!(ca_signing_profile) yield cert if block_given? end end
load(crt, private_key) { |cert| ... }
click to toggle source
Calls superclass method
Ritm::Certificate::load
# File lib/ritm/certs/ca.rb, line 15 def self.load(crt, private_key) super(crt, private_key) do |cert| cert.signing_entity = true cert.sign!(ca_signing_profile) yield cert if block_given? end end
signing_profile()
click to toggle source
# File lib/ritm/certs/ca.rb, line 28 def self.signing_profile { 'extensions' => { 'keyUsage' => { 'usage' => %w[keyEncipherment digitalSignature] }, 'extendedKeyUsage' => { 'usage' => %w[serverAuth clientAuth] } } } end
Public Instance Methods
sign(certificate)
click to toggle source
# File lib/ritm/certs/ca.rb, line 23 def sign(certificate) certificate.cert.parent = @cert certificate.cert.sign!(self.class.signing_profile) end