def test_ed25519(self): key_template = signature_key_templates.ED25519 self.assertEqual( key_template.type_url, 'type.googleapis.com/google.crypto.tink.Ed25519PrivateKey') self.assertEqual(key_template.output_prefix_type, tink_pb2.TINK) # Check that the template works with the key manager key_manager = public_key_sign_key_manager.from_cc_registry( key_template.type_url) key_manager.new_key_data(key_template)
def test_rsa_pkcs1(self, key_template, hash_algo, modulus_size, exponent): self.assertEqual( key_template.type_url, 'type.googleapis.com/google.crypto.tink.RsaSsaPkcs1PrivateKey') self.assertEqual(key_template.output_prefix_type, tink_pb2.TINK) key_format = rsa_ssa_pkcs1_pb2.RsaSsaPkcs1KeyFormat() key_format.ParseFromString(key_template.value) self.assertEqual(key_format.modulus_size_in_bits, modulus_size) self.assertEqual(key_format.params.hash_type, hash_algo) self.assertEqual(bytes_to_num(key_format.public_exponent), exponent) # Check that the template works with the key manager key_manager = public_key_sign_key_manager.from_cc_registry( key_template.type_url) key_manager.new_key_data(key_template)
def test_ecdsa_ieee(self, key_template, hash_type, curve): self.assertEqual( key_template.type_url, 'type.googleapis.com/google.crypto.tink.EcdsaPrivateKey') self.assertEqual(key_template.output_prefix_type, tink_pb2.TINK) key_format = ecdsa_pb2.EcdsaKeyFormat() key_format.ParseFromString(key_template.value) self.assertEqual(key_format.params.hash_type, hash_type) self.assertEqual(key_format.params.curve, curve) self.assertEqual(key_format.params.encoding, ecdsa_pb2.IEEE_P1363) # Check that the template works with the key manager key_manager = public_key_sign_key_manager.from_cc_registry( key_template.type_url) key_manager.new_key_data(key_template)
def setUp(self): super(PublicKeyVerifyKeyManagerTest, self).setUp() self.key_manager = public_key_verify_key_manager.from_cc_registry( 'type.googleapis.com/google.crypto.tink.EcdsaPublicKey') self.key_manager_sign = public_key_sign_key_manager.from_cc_registry( 'type.googleapis.com/google.crypto.tink.EcdsaPrivateKey')