示例#1
0
 def verify_mac(self, mac_value: bytes, data: bytes) -> None:
     request = testing_api_pb2.VerifyMacRequest(keyset=self._keyset,
                                                mac_value=mac_value,
                                                data=data)
     response = self._stub.VerifyMac(request)
     if response.err:
         raise tink.TinkError(response.err)
示例#2
0
 def verify_mac(self, mac_value: bytes, data: bytes) -> None:
     logging.info('verify_mac in lang %s.', self.lang)
     request = testing_api_pb2.VerifyMacRequest(keyset=self._keyset,
                                                mac_value=mac_value,
                                                data=data)
     response = self._stub.VerifyMac(request)
     if response.err:
         logging.info('error verify_mac in %s: %s', self.lang, response.err)
         raise tink.TinkError(response.err)
示例#3
0
    def test_generate_compute_verify_mac_fail(self):
        keyset_servicer = services.KeysetServicer()
        mac_servicer = services.MacServicer()

        template = mac.mac_key_templates.HMAC_SHA256_128BITTAG.SerializeToString(
        )
        gen_request = testing_api_pb2.KeysetGenerateRequest(template=template)
        gen_response = keyset_servicer.Generate(gen_request, self._ctx)
        self.assertEqual(gen_response.WhichOneof('result'), 'keyset')
        keyset = gen_response.keyset

        verify_request = testing_api_pb2.VerifyMacRequest(
            keyset=keyset, mac_value=b'invalid mac_value', data=b'data')
        verify_response = mac_servicer.VerifyMac(verify_request, self._ctx)
        self.assertNotEmpty(verify_response.err)
  def test_generate_compute_verify_mac(self):
    keyset_servicer = services.KeysetServicer()
    mac_servicer = services.MacServicer()

    template = mac.mac_key_templates.HMAC_SHA256_128BITTAG.SerializeToString()
    gen_request = testing_api_pb2.KeysetGenerateRequest(template=template)
    gen_response = keyset_servicer.Generate(gen_request, self._ctx)
    self.assertEqual(gen_response.WhichOneof('result'), 'keyset')
    keyset = gen_response.keyset
    data = b'The quick brown fox jumps over the lazy dog'
    comp_request = testing_api_pb2.ComputeMacRequest(keyset=keyset, data=data)
    comp_response = mac_servicer.ComputeMac(comp_request, self._ctx)
    self.assertEqual(comp_response.WhichOneof('result'), 'mac_value')
    mac_value = comp_response.mac_value
    verify_request = testing_api_pb2.VerifyMacRequest(
        keyset=keyset, mac_value=mac_value, data=data)
    verify_response = mac_servicer.VerifyMac(verify_request, self._ctx)
    self.assertEmpty(verify_response.err)