Class: EzCrypto::Certificate

### Home Classes Methods

### In Files

- lib/ezsig.rb

### Parent

EzCrypto::Verifier

### Methods

- ::new
- #cert
- #cert?
- #cert_digest
- #extensions
- #issuer
- #method_missing
- #not_after
- #not_before
- #register_with_pkyp
- #serial
- #subject
- #valid?

### Files

- CHANGELOG
- README.rdoc
- README_ACTIVE_CRYPTO
- README_DIGITAL_SIGNATURES

### Class/Module Index

Quicksearch

- EzCrypto
- EzCrypto::Certificate
- EzCrypto::Digester
- EzCrypto::Key
- EzCrypto::Name
- EzCrypto::Signer
- EzCrypto::TrustStore
- EzCrypto::Verifier
- ActiveCrypto
- ActiveCrypto::AssociationKeyHolder
- ActiveCrypto::ClassMethods
- ActiveCrypto::Encrypted
- ActiveCrypto::Encrypted::ClassAccessors
- ActiveCrypto::KeyHolder
- ActiveCrypto::MissingKeyError

No matching classes.

# EzCrypto::Certificate

Certificate provides functionality to make it easy to extract information from a Certificate. This also provides all the same functionality as a Verifier.

### Public Class Methods

new(cert) click to toggle source

Intialize with a OpenSSL cert object.

    # File lib/ezsig.rb, line 278
    def initialize(cert)
      super(cert.public_key)
      @cert=cert
    end

### Public Instance Methods

cert() click to toggle source

Returns the OpenSSL Certificate object

    # File lib/ezsig.rb, line 330
    def cert
      @cert
    end

cert?() click to toggle source

Returns true

    # File lib/ezsig.rb, line 286
    def cert?
      true
    end

cert_digest() click to toggle source

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

extensions() click to toggle source

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

issuer() click to toggle source

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

method_missing(method) click to toggle source

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

not_after() click to toggle source

Returns the certificates valid not after date.

    # File lib/ezsig.rb, line 344
    def not_after
      @cert.not_after
    end

not_before() click to toggle source

Returns the certificates valid not before date.

    # File lib/ezsig.rb, line 337
    def not_before
      @cert.not_before
    end

register_with_pkyp() click to toggle source

Register the certificate at PKYP

    # File lib/ezsig.rb, line 293
    def register_with_pkyp
      send_to_pkyp(@cert.to_s)
    end

serial() click to toggle source

Returns the issuers serial number for this certificate

    # File lib/ezsig.rb, line 323
    def serial
      @cert.serial
    end

subject() click to toggle source

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

valid?(time=Time.now.utc) click to toggle source

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

[Validate]

Generated with the Darkfish Rdoc Generator 2.