Module: JWA::Algorithms::KeyManagement::EcdhEsKw

Included in:
EcdhEsA128Kw, EcdhEsA256Kw
Defined in:
lib/jwa/algorithms/key_management/ecdh_es_kw.rb

Instance Method Summary collapse

Instance Method Details

#decrypt(public_key, ciphertext) ⇒ Object



16
17
18
19
# File 'lib/jwa/algorithms/key_management/ecdh_es_kw.rb', line 16

def decrypt(public_key, ciphertext)
  key = @inner.decrypt(public_key)
  self.class.kw_class.new(key).decrypt(ciphertext)
end

#encrypt(public_key, plaintext) ⇒ Object



11
12
13
14
# File 'lib/jwa/algorithms/key_management/ecdh_es_kw.rb', line 11

def encrypt(public_key, plaintext)
  key = @inner.encrypt(public_key)
  self.class.kw_class.new(key).encrypt(plaintext)
end

#initialize(ephemeral_key, apu, apv) ⇒ Object



7
8
9
# File 'lib/jwa/algorithms/key_management/ecdh_es_kw.rb', line 7

def initialize(ephemeral_key, apu, apv)
  @inner = EcdhEs.new(ephemeral_key, self.class.shared_key_length, self.class.alg_name, apu, apv)
end