class COSE::Mac0
Constants
- CONTEXT
Attributes
payload[R]
tag[R]
Public Class Methods
keyword_arguments_for_initialize(decoded)
click to toggle source
# File lib/cose/mac0.rb, line 13 def self.keyword_arguments_for_initialize(decoded) { payload: decoded[0], tag: decoded[1] } end
new(payload:, tag:, **keyword_arguments)
click to toggle source
Calls superclass method
# File lib/cose/mac0.rb, line 21 def initialize(payload:, tag:, **keyword_arguments) super(**keyword_arguments) @payload = payload @tag = tag end
tag()
click to toggle source
# File lib/cose/mac0.rb, line 17 def self.tag 17 end
Public Instance Methods
verify(key, external_aad = nil)
click to toggle source
# File lib/cose/mac0.rb, line 28 def verify(key, external_aad = nil) tag == algorithm.mac(key.k, data(external_aad)) || raise(COSE::Error, "Mac0 verification failed") end
Private Instance Methods
context()
click to toggle source
# File lib/cose/mac0.rb, line 38 def context CONTEXT end
data(external_aad = nil)
click to toggle source
# File lib/cose/mac0.rb, line 34 def data(external_aad = nil) CBOR.encode([context, serialized_map(protected_headers), external_aad || zero_length_bin_string, payload]) end