Class: SmartHealthCardsTestKit::Utils::Verifier

Inherits:
Object
  • Object
show all
Extended by:
Verification
Includes:
Verification
Defined in:
lib/smart_health_cards_test_kit/utils/verifier.rb

Overview

Verifiers can validate HealthCards using public keys

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Methods included from Verification

resolve_key, verify_using_key_set

Constructor Details

#initialize(keys: nil, resolve_keys: true) ⇒ Verifier

Create a new Verifier

Parameters:



31
32
33
34
35
36
37
38
39
40
41
42
# File 'lib/smart_health_cards_test_kit/utils/verifier.rb', line 31

def initialize(keys: nil, resolve_keys: true)
  @keys = case keys
          when KeySet
            keys
          when Key
            KeySet.new(keys)
          else
            KeySet.new
          end

  self.resolve_keys = resolve_keys
end

Instance Attribute Details

#keys ⇒ Object (readonly)

Returns the value of attribute keys.



11
12
13
# File 'lib/smart_health_cards_test_kit/utils/verifier.rb', line 11

def keys
  @keys
end

#resolve_keys ⇒ Object

Returns the value of attribute resolve_keys.



12
13
14
# File 'lib/smart_health_cards_test_kit/utils/verifier.rb', line 12

def resolve_keys
  @resolve_keys
end

Class Method Details

.verify(verifiable) ⇒ Boolean

Verify a Payload

This method always uses key resolution and does not depend on any cached keys

Parameters:

Returns:

  • (Boolean)


23
24
25
# File 'lib/smart_health_cards_test_kit/utils/verifier.rb', line 23

def self.verify(verifiable)
  verify_using_key_set(verifiable)
end

Instance Method Details

#resolve_keys? ⇒ Boolean

Returns:

  • (Boolean)


66
67
68
# File 'lib/smart_health_cards_test_kit/utils/verifier.rb', line 66

def resolve_keys?
  resolve_keys
end

#verify(verifiable) ⇒ Boolean

Verify a Payload

Parameters:

Returns:

  • (Boolean)


62
63
64
# File 'lib/smart_health_cards_test_kit/utils/verifier.rb', line 62

def verify(verifiable)
  verify_using_key_set(verifiable, keys, resolve_keys: resolve_keys?)
end