Class: RubyScep::PkiMessage::Degenerate

Inherits:
Object
  • Object
show all
Defined in:
lib/ruby_scep/pki_message/degenerate.rb

Instance Method Summary collapse

Constructor Details

#initialize(certificate) ⇒ Degenerate

Returns a new instance of Degenerate.



6
7
8
# File 'lib/ruby_scep/pki_message/degenerate.rb', line 6

def initialize(certificate)
  @certificate = certificate
end

Instance Method Details

#to_derObject



10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
# File 'lib/ruby_scep/pki_message/degenerate.rb', line 10

def to_der
  OpenSSL::ASN1::Sequence.new(
    [
      OpenSSL::ASN1::ObjectId.new(OID_SIGNED_DATA),
      OpenSSL::ASN1::ASN1Data.new(
        [
          OpenSSL::ASN1::Sequence.new(
            [
              OpenSSL::ASN1::Integer.new(1),
              OpenSSL::ASN1::Set.new([]),
              OpenSSL::ASN1::Sequence.new([OpenSSL::ASN1::ObjectId.new(OID_DATA)]),
              OpenSSL::ASN1::ASN1Data.new([OpenSSL::ASN1::decode(@certificate.to_der)], 0, :CONTEXT_SPECIFIC),
              OpenSSL::ASN1::ASN1Data.new([], 1, :CONTEXT_SPECIFIC),
              OpenSSL::ASN1::Set.new([])
            ]
          )
        ],
        0,
        :CONTEXT_SPECIFIC)
    ]
  ).to_der
end