Class: SSLyze::X509::Extensions::KeyUsage

Inherits:
SSLyze::X509::Extension show all
Includes:
Enumerable
Defined in:
lib/sslyze/x509/extensions/key_usage.rb

Overview

Represents the keyUsage X509v3 extension.

Since:

  • 1.0.0

Instance Method Summary collapse

Instance Method Details

#certificate_sign?Boolean

Returns:

  • (Boolean)

Since:

  • 1.0.0



59
60
61
# File 'lib/sslyze/x509/extensions/key_usage.rb', line 59

def certificate_sign?
  uses.include?('Certificate Sign')
end

#crl_sign?Boolean

Returns:

  • (Boolean)

Since:

  • 1.0.0



52
53
54
# File 'lib/sslyze/x509/extensions/key_usage.rb', line 52

def crl_sign?
  uses.include?('CRL Sign')
end

#digital_signature?Boolean

Returns:

  • (Boolean)

Since:

  • 1.0.0



45
46
47
# File 'lib/sslyze/x509/extensions/key_usage.rb', line 45

def digital_signature?
  uses.include?('Digital Signature')
end

#each {|use| ... } ⇒ Enumerator

Yields:

  • (use)

Yield Parameters:

  • use (String)

Returns:

  • (Enumerator)

Since:

  • 1.0.0



31
32
33
# File 'lib/sslyze/x509/extensions/key_usage.rb', line 31

def each(&block)
  uses.each(&block)
end

#key_encipherment?Boolean

Returns:

  • (Boolean)

Since:

  • 1.0.0



38
39
40
# File 'lib/sslyze/x509/extensions/key_usage.rb', line 38

def key_encipherment?
  uses.include?('Key Encipherment')
end

#usesArray<String>

The various permitted key uses.

Returns:

  • (Array<String>)

Since:

  • 1.0.0



20
21
22
# File 'lib/sslyze/x509/extensions/key_usage.rb', line 20

def uses
  @uses ||= value.split(', ')
end