Class: Chamber::Files::Signature
- Inherits:
-
Object
- Object
- Chamber::Files::Signature
- Defined in:
- lib/chamber/files/signature.rb
Constant Summary collapse
- SIGNATURE_HEADER =
'-----BEGIN CHAMBER SIGNATURE-----'
- SIGNATURE_HEADER_PATTERN =
/-----BEGIN\sCHAMBER\sSIGNATURE-----/.freeze
- SIGNATURE_FOOTER =
'-----END CHAMBER SIGNATURE-----'
- SIGNATURE_FOOTER_PATTERN =
/-----END\sCHAMBER\sSIGNATURE-----/.freeze
- SIGNATURE_IN_FILE_PATTERN =
/ #{SIGNATURE_HEADER_PATTERN}\n # Header (.*)\n # Signature Body #{SIGNATURE_FOOTER_PATTERN} # Footer /x.freeze
Instance Attribute Summary collapse
-
#settings_content ⇒ Object
Returns the value of attribute settings_content.
-
#settings_filename ⇒ Object
Returns the value of attribute settings_filename.
-
#signature_key ⇒ Object
Returns the value of attribute signature_key.
-
#signature_name ⇒ Object
Returns the value of attribute signature_name.
Instance Method Summary collapse
-
#initialize(settings_filename, settings_content, signature_key, signature_name) ⇒ Signature
constructor
A new instance of Signature.
- #verify ⇒ Object
- #write ⇒ Object
Constructor Details
#initialize(settings_filename, settings_content, signature_key, signature_name) ⇒ Signature
Returns a new instance of Signature.
26 27 28 29 30 31 |
# File 'lib/chamber/files/signature.rb', line 26 def initialize(settings_filename, settings_content, signature_key, signature_name) self.signature_key = signature_key self.settings_content = settings_content self.settings_filename = Pathname.new(settings_filename) self.signature_name = signature_name end |
Instance Attribute Details
#settings_content ⇒ Object
Returns the value of attribute settings_content.
20 21 22 |
# File 'lib/chamber/files/signature.rb', line 20 def settings_content @settings_content end |
#settings_filename ⇒ Object
Returns the value of attribute settings_filename.
20 21 22 |
# File 'lib/chamber/files/signature.rb', line 20 def settings_filename @settings_filename end |
#signature_key ⇒ Object
Returns the value of attribute signature_key.
24 25 26 |
# File 'lib/chamber/files/signature.rb', line 24 def signature_key @signature_key end |
#signature_name ⇒ Object
Returns the value of attribute signature_name.
20 21 22 |
# File 'lib/chamber/files/signature.rb', line 20 def signature_name @signature_name end |
Instance Method Details
#verify ⇒ Object
55 56 57 |
# File 'lib/chamber/files/signature.rb', line 55 def verify signature_key.verify(digest, signature_content, settings_content) end |
#write ⇒ Object
44 45 46 47 48 49 50 51 52 53 |
# File 'lib/chamber/files/signature.rb', line 44 def write signature_filename.write(<<~HEREDOC, 0, mode: 'w+') Signed By: #{signature_name} Signed At: #{Time.now.utc.iso8601} #{SIGNATURE_HEADER} #{encoded_signature} #{SIGNATURE_FOOTER} HEREDOC end |