def test_aes128_gcm_siv(self): template = aead.aead_key_templates.AES128_GCM_SIV self.assertEqual('type.googleapis.com/google.crypto.tink.AesGcmSivKey', template.type_url) self.assertEqual(tink_pb2.TINK, template.output_prefix_type) key_format = aes_gcm_siv_pb2.AesGcmSivKeyFormat() key_format.ParseFromString(template.value) self.assertEqual(16, key_format.key_size)
def create_aes_gcm_siv_key_template(key_size: int) -> tink_pb2.KeyTemplate: """Creates an AES GCM SIV KeyTemplate, and fills in its values.""" key_format = aes_gcm_siv_pb2.AesGcmSivKeyFormat() key_format.key_size = key_size key_template = tink_pb2.KeyTemplate() key_template.value = key_format.SerializeToString() key_template.type_url = _AES_GCM_SIV_KEY_TYPE_URL key_template.output_prefix_type = tink_pb2.TINK return key_template