Certificate provides functionality to make it easy to extract information from a Certificate. This also provides all the same functionality as a Verifier.
Returns the OpenSSL Certificate object
# File lib/ezsig.rb, line 330 def cert @cert end
Returns the SHA1 hex digest of a the DER encoded certificate. This is useful as a unique identifier.
# File lib/ezsig.rb, line 300 def cert_digest Digest::SHA1.hexdigest(@cert.to_der) end
Returns the hash of extensions available in the certificate. These are not always present.
# File lib/ezsig.rb, line 360 def extensions unless @extensions @extensions={} cert.extensions.each {|e| @extensions[e.oid]=e.value} if cert.extensions end @extensions end
Returns a Name object containt the issuer of the certificate.
# File lib/ezsig.rb, line 315 def issuer @issuer=EzCrypto::Name.new(@cert.issuer) unless @issuer @issuer end
Any methods defined in Name can be used here. This means you can do cert.email rather than cert.subject.email.
# File lib/ezsig.rb, line 371 def method_missing(method) subject.send method end
Returns the certificates valid not after date.
# File lib/ezsig.rb, line 344 def not_after @cert.not_after end
Returns the certificates valid not before date.
# File lib/ezsig.rb, line 337 def not_before @cert.not_before end
Register the certificate at PKYP
# File lib/ezsig.rb, line 293 def register_with_pkyp send_to_pkyp(@cert.to_s) end
Returns the issuers serial number for this certificate
# File lib/ezsig.rb, line 323 def serial @cert.serial end
Returns a Name object containt the subject of the certificate. The subject in X509 speak is the details of the certificate owner.
# File lib/ezsig.rb, line 307 def subject @subject=EzCrypto::Name.new(@cert.subject) unless @subject @subject end
Is this certificate valid at this point in time. Note this only checks if it is valid with respect to time. It is important to realize that it does not check with any CRL or OCSP services to see if the certificate was revoked.
# File lib/ezsig.rb, line 353 def valid?(time=Time.now.utc) time>not_before && time<self.not_after end
Generated with the Darkfish Rdoc Generator 2.