Class: Pdfrb::Model::Type::Signature

Inherits:
Cos::Dictionary show all
Defined in:
lib/pdfrb/model/type/signature.rb

Overview

Signature dictionary (s12.8.2). Carries the PKCS#7 / CMS signature payload. Lives in a Signature field's /V entry.

Instance Attribute Summary

Attributes inherited from Object

#document, #gen, #oid, #value

Instance Method Summary collapse

Methods inherited from Cos::Dictionary

#[], #[]=, arlington_available?, arlington_default, arlington_key_to_symbol, arlington_loaded_for?, arlington_mark_loaded, arlington_object, arlington_one_type_to_ruby, arlington_required?, arlington_types_to_ruby, arlington_version, define_field, define_field_from_arlington, #delete, #each, each_field, #each_raw, #empty?, field, #initialize, #key?, #keys, lookup_type, own_fields, #pdf_type, register_type, type_map, #validate

Methods inherited from Object

#==, define_type, #deref, #indirect?, #initialize, #must_be_indirect?, #pdf_type, pdf_type

Constructor Details

This class inherits a constructor from Pdfrb::Model::Cos::Dictionary

Instance Method Details

#byte_rangeObject



14
# File 'lib/pdfrb/model/type/signature.rb', line 14

def byte_range; self[:ByteRange]; end

#certObject



13
# File 'lib/pdfrb/model/type/signature.rb', line 13

def cert; self[:Cert]; end

#changesObject



16
# File 'lib/pdfrb/model/type/signature.rb', line 16

def changes; self[:Changes]; end

#contact_infoObject



20
# File 'lib/pdfrb/model/type/signature.rb', line 20

def contact_info; self[:ContactInfo]; end

#contentsObject



12
# File 'lib/pdfrb/model/type/signature.rb', line 12

def contents; self[:Contents]; end

#filterObject



10
# File 'lib/pdfrb/model/type/signature.rb', line 10

def filter; self[:Filter]; end

#has_byte_range?Boolean

Returns:

  • (Boolean)


44
45
46
# File 'lib/pdfrb/model/type/signature.rb', line 44

def has_byte_range?
  byte_range.is_a?(Array) && byte_range.size == 4
end

#locationObject



19
# File 'lib/pdfrb/model/type/signature.rb', line 19

def location; self[:Location]; end

#mObject



21
# File 'lib/pdfrb/model/type/signature.rb', line 21

def m; self[:M]; end

#nameObject



17
# File 'lib/pdfrb/model/type/signature.rb', line 17

def name; self[:Name]; end

#pkcs1?Boolean

Returns:

  • (Boolean)


40
41
42
# File 'lib/pdfrb/model/type/signature.rb', line 40

def pkcs1?
  sub_filter == :"adbe.x509.rsa_sha1"
end

#pkcs7_detached?Boolean

Returns:

  • (Boolean)


32
33
34
# File 'lib/pdfrb/model/type/signature.rb', line 32

def pkcs7_detached?
  sub_filter == :"adbe.pkcs7.detached"
end

#pkcs7_sha1?Boolean

Returns:

  • (Boolean)


36
37
38
# File 'lib/pdfrb/model/type/signature.rb', line 36

def pkcs7_sha1?
  sub_filter == :"adbe.pkcs7.sha1"
end

#prop_auth_timeObject



23
# File 'lib/pdfrb/model/type/signature.rb', line 23

def prop_auth_time; self[:Prop_AuthTime]; end

#prop_auth_typeObject



24
# File 'lib/pdfrb/model/type/signature.rb', line 24

def prop_auth_type; self[:Prop_AuthType]; end

#prop_buildObject



22
# File 'lib/pdfrb/model/type/signature.rb', line 22

def prop_build; self[:Prop_Build]; end

#reasonObject



18
# File 'lib/pdfrb/model/type/signature.rb', line 18

def reason; self[:Reason]; end

#referenceObject



15
# File 'lib/pdfrb/model/type/signature.rb', line 15

def reference; self[:Reference]; end

#signed_timeObject



26
27
28
29
30
# File 'lib/pdfrb/model/type/signature.rb', line 26

def signed_time
  return nil unless m

  m.is_a?(Time) ? m : parse_pdf_date(m)
end

#sub_filterObject



11
# File 'lib/pdfrb/model/type/signature.rb', line 11

def sub_filter; self[:SubFilter]; end

#typeObject



9
# File 'lib/pdfrb/model/type/signature.rb', line 9

def type; self[:Type]; end