class Xml::Kit::Encryption

@deprecated Use {#Xml::Kit::EncryptedData} class instead of this

Constants

DEFAULT_ASYMMETRIC
DEFAULT_SYMMETRIC

Attributes

asymmetric_algorithm[R]
key_info[R]
symmetric_algorithm[R]
symmetric_cipher_value[R]

Public Class Methods

new(raw_xml, public_key, symmetric_algorithm: DEFAULT_SYMMETRIC, asymmetric_algorithm: DEFAULT_ASYMMETRIC, key_info: nil) click to toggle source
Calls superclass method Xml::Kit::EncryptedData::new
# File lib/xml/kit/encryption.rb, line 15
def initialize(raw_xml, public_key,
               symmetric_algorithm: DEFAULT_SYMMETRIC,
               asymmetric_algorithm: DEFAULT_ASYMMETRIC, key_info: nil)
  @symmetric_algorithm = symmetric_algorithm
  @asymmetric_algorithm = asymmetric_algorithm
  Xml::Kit.deprecate('Encryption', alternative: 'EncryptedData')
  super(raw_xml,
    symmetric_cipher: symmetric(symmetric_algorithm),
    asymmetric_cipher: asymmetric(asymmetric_algorithm, public_key),
    key_info: key_info
  )
end

Public Instance Methods

template_path() click to toggle source
# File lib/xml/kit/encryption.rb, line 28
def template_path
  Template::TEMPLATES_DIR.join('encrypted_data.builder')
end

Private Instance Methods

asymmetric(algorithm, public_key) click to toggle source
# File lib/xml/kit/encryption.rb, line 40
def asymmetric(algorithm, public_key)
  return algorithm unless algorithm.is_a?(String)

  ::Xml::Kit::Crypto.cipher_for(algorithm, public_key)
end
symmetric(algorithm) click to toggle source
# File lib/xml/kit/encryption.rb, line 34
def symmetric(algorithm)
  return algorithm unless algorithm.is_a?(String)

  ::Xml::Kit::Crypto::SymmetricCipher.new(algorithm)
end