class Fiscalizer::Serializers::Signature
Attributes
cert_issuer[R]
public_key[R]
reference[R]
xml[R]
Public Class Methods
new(xml, reference, public_key, cert_issuer)
click to toggle source
# File lib/fiscalizer/serializers/signature.rb, line 4 def initialize(xml, reference, public_key, cert_issuer) @xml = xml @reference = reference @public_key = public_key @cert_issuer = cert_issuer end
Public Instance Methods
call()
click to toggle source
# File lib/fiscalizer/serializers/signature.rb, line 13 def call xml.Signature('xmlns' => 'http://www.w3.org/2000/09/xmldsig#') do add_signed_info add_signature_value add_key_info end end
Private Instance Methods
add_key_info()
click to toggle source
# File lib/fiscalizer/serializers/signature.rb, line 42 def add_key_info xml.KeyInfo do xml.X509Data do xml.X509Certificate public_key_string xml.X509IssuerSerial do xml.X509IssuerName cert_issuer xml.X509SerialNumber '1053520622' end end end end
add_signature_value()
click to toggle source
# File lib/fiscalizer/serializers/signature.rb, line 38 def add_signature_value xml.SignatureValue end
add_signed_info()
click to toggle source
# File lib/fiscalizer/serializers/signature.rb, line 23 def add_signed_info xml.SignedInfo do xml.CanonicalizationMethod('Algorithm' => 'http://www.w3.org/2001/10/xml-exc-c14n#') xml.SignatureMethod('Algorithm' => 'http://www.w3.org/2000/09/xmldsig#rsa-sha1') xml.Reference('URI' => reference) do xml.Transforms do xml.Transform('Algorithm' => 'http://www.w3.org/2000/09/xmldsig#enveloped-signature') xml.Transform('Algorithm' => 'http://www.w3.org/2001/10/xml-exc-c14n#') end xml.DigestMethod('Algorithm' => 'http://www.w3.org/2000/09/xmldsig#sha1') xml.DigestValue end end end
public_key_string()
click to toggle source
# File lib/fiscalizer/serializers/signature.rb, line 54 def public_key_string public_key.to_s .gsub('-----BEGIN CERTIFICATE-----', '') .gsub('-----END CERTIFICATE-----', '') .gsub("\n", '') end