# File lib/hiera/backend/eyaml/encryptors/pkcs7.rb, line 24 def self.encrypt plaintext public_key = self.option :public_key raise StandardError, "pkcs7_public_key is not defined" unless public_key public_key_pem = File.read public_key public_key_x509 = OpenSSL::X509::Certificate.new( public_key_pem ) cipher = OpenSSL::Cipher::AES.new(256, :CBC) OpenSSL::PKCS7::encrypt([public_key_x509], plaintext, cipher, OpenSSL::PKCS7::BINARY).to_der end