Sha256: 8dc63c5f69a2c5409bbd0b39d254e45ac455b5f2332ac5b0d3bf03a1236c9659

Contents?: true

Size: 529 Bytes

Versions: 2

Compression:

Stored size: 529 Bytes

Contents

require 'jwe/enc/a128cbc_hs256'
require 'jwe/enc/a192cbc_hs384'
require 'jwe/enc/a256cbc_hs512'
require 'jwe/enc/a128gcm'
require 'jwe/enc/a192gcm'
require 'jwe/enc/a256gcm'

module JWE
  # Content encryption algorithms namespace
  module Enc
    def self.for(enc, cek = nil, iv = nil, tag = nil)
      klass = const_get(JWE.param_to_class_name(enc))
      inst = klass.new(cek, iv)
      inst.tag = tag if tag
      inst
    rescue NameError
      raise NotImplementedError.new("Unsupported enc type: #{enc}")
    end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
jwe-0.4.0 lib/jwe/enc.rb
jwe-0.3.1 lib/jwe/enc.rb