# Generated by the protocol buffer compiler.  DO NOT EDIT!
# source: google/cloud/kms_v1/proto/service.proto

import sys

_b = sys.version_info[0] < 3 and (lambda x: x) or (lambda x: x.encode("latin1"))
from google.protobuf import descriptor as _descriptor
from google.protobuf import message as _message
from google.protobuf import reflection as _reflection
from google.protobuf import symbol_database as _symbol_database

# @@protoc_insertion_point(imports)

_sym_db = _symbol_database.Default()


from google.api import annotations_pb2 as google_dot_api_dot_annotations__pb2
from google.cloud.kms_v1.proto import (
    resources_pb2 as google_dot_cloud_dot_kms__v1_dot_proto_dot_resources__pb2,
)
from google.protobuf import field_mask_pb2 as google_dot_protobuf_dot_field__mask__pb2
from google.protobuf import struct_pb2 as google_dot_protobuf_dot_struct__pb2
from google.protobuf import wrappers_pb2 as google_dot_protobuf_dot_wrappers__pb2


DESCRIPTOR = _descriptor.FileDescriptor(
    name="google/cloud/kms_v1/proto/service.proto",
    package="google.cloud.kms.v1",
    syntax="proto3",
    serialized_options=_b(
        "\n\027com.google.cloud.kms.v1B\010KmsProtoP\001Z6google.golang.org/genproto/googleapis/cloud/kms/v1;kms\370\001\001\252\002\023Google.Cloud.Kms.V1\312\002\023Google\\Cloud\\Kms\\V1"
    ),
    serialized_pb=_b(
        '\n\'google/cloud/kms_v1/proto/service.proto\x12\x13google.cloud.kms.v1\x1a\x1cgoogle/api/annotations.proto\x1a)google/cloud/kms_v1/proto/resources.proto\x1a google/protobuf/field_mask.proto\x1a\x1cgoogle/protobuf/struct.proto\x1a\x1egoogle/protobuf/wrappers.proto"L\n\x13ListKeyRingsRequest\x12\x0e\n\x06parent\x18\x01 \x01(\t\x12\x11\n\tpage_size\x18\x02 \x01(\x05\x12\x12\n\npage_token\x18\x03 \x01(\t"\xa0\x01\n\x15ListCryptoKeysRequest\x12\x0e\n\x06parent\x18\x01 \x01(\t\x12\x11\n\tpage_size\x18\x02 \x01(\x05\x12\x12\n\npage_token\x18\x03 \x01(\t\x12P\n\x0cversion_view\x18\x04 \x01(\x0e\x32:.google.cloud.kms.v1.CryptoKeyVersion.CryptoKeyVersionView"\x9f\x01\n\x1cListCryptoKeyVersionsRequest\x12\x0e\n\x06parent\x18\x01 \x01(\t\x12\x11\n\tpage_size\x18\x02 \x01(\x05\x12\x12\n\npage_token\x18\x03 \x01(\t\x12H\n\x04view\x18\x04 \x01(\x0e\x32:.google.cloud.kms.v1.CryptoKeyVersion.CryptoKeyVersionView"t\n\x14ListKeyRingsResponse\x12/\n\tkey_rings\x18\x01 \x03(\x0b\x32\x1c.google.cloud.kms.v1.KeyRing\x12\x17\n\x0fnext_page_token\x18\x02 \x01(\t\x12\x12\n\ntotal_size\x18\x03 \x01(\x05"z\n\x16ListCryptoKeysResponse\x12\x33\n\x0b\x63rypto_keys\x18\x01 \x03(\x0b\x32\x1e.google.cloud.kms.v1.CryptoKey\x12\x17\n\x0fnext_page_token\x18\x02 \x01(\t\x12\x12\n\ntotal_size\x18\x03 \x01(\x05"\x90\x01\n\x1dListCryptoKeyVersionsResponse\x12\x42\n\x13\x63rypto_key_versions\x18\x01 \x03(\x0b\x32%.google.cloud.kms.v1.CryptoKeyVersion\x12\x17\n\x0fnext_page_token\x18\x02 \x01(\t\x12\x12\n\ntotal_size\x18\x03 \x01(\x05"!\n\x11GetKeyRingRequest\x12\x0c\n\x04name\x18\x01 \x01(\t"#\n\x13GetCryptoKeyRequest\x12\x0c\n\x04name\x18\x01 \x01(\t"*\n\x1aGetCryptoKeyVersionRequest\x12\x0c\n\x04name\x18\x01 \x01(\t"#\n\x13GetPublicKeyRequest\x12\x0c\n\x04name\x18\x01 \x01(\t"k\n\x14\x43reateKeyRingRequest\x12\x0e\n\x06parent\x18\x01 \x01(\t\x12\x13\n\x0bkey_ring_id\x18\x02 \x01(\t\x12.\n\x08key_ring\x18\x03 \x01(\x0b\x32\x1c.google.cloud.kms.v1.KeyRing"s\n\x16\x43reateCryptoKeyRequest\x12\x0e\n\x06parent\x18\x01 \x01(\t\x12\x15\n\rcrypto_key_id\x18\x02 \x01(\t\x12\x32\n\ncrypto_key\x18\x03 \x01(\x0b\x32\x1e.google.cloud.kms.v1.CryptoKey"r\n\x1d\x43reateCryptoKeyVersionRequest\x12\x0e\n\x06parent\x18\x01 \x01(\t\x12\x41\n\x12\x63rypto_key_version\x18\x02 \x01(\x0b\x32%.google.cloud.kms.v1.CryptoKeyVersion"}\n\x16UpdateCryptoKeyRequest\x12\x32\n\ncrypto_key\x18\x01 \x01(\x0b\x32\x1e.google.cloud.kms.v1.CryptoKey\x12/\n\x0bupdate_mask\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.FieldMask"\x93\x01\n\x1dUpdateCryptoKeyVersionRequest\x12\x41\n\x12\x63rypto_key_version\x18\x01 \x01(\x0b\x32%.google.cloud.kms.v1.CryptoKeyVersion\x12/\n\x0bupdate_mask\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.FieldMask"X\n\x0e\x45ncryptRequest\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x11\n\tplaintext\x18\x02 \x01(\x0c\x12%\n\x1d\x61\x64\x64itional_authenticated_data\x18\x03 \x01(\x0c"Y\n\x0e\x44\x65\x63ryptRequest\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x12\n\nciphertext\x18\x02 \x01(\x0c\x12%\n\x1d\x61\x64\x64itional_authenticated_data\x18\x03 \x01(\x0c"R\n\x15\x41symmetricSignRequest\x12\x0c\n\x04name\x18\x01 \x01(\t\x12+\n\x06\x64igest\x18\x03 \x01(\x0b\x32\x1b.google.cloud.kms.v1.Digest"<\n\x18\x41symmetricDecryptRequest\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x12\n\nciphertext\x18\x03 \x01(\x0c"$\n\x0f\x44\x65\x63ryptResponse\x12\x11\n\tplaintext\x18\x01 \x01(\x0c"3\n\x0f\x45ncryptResponse\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x12\n\nciphertext\x18\x02 \x01(\x0c"+\n\x16\x41symmetricSignResponse\x12\x11\n\tsignature\x18\x01 \x01(\x0c".\n\x19\x41symmetricDecryptResponse\x12\x11\n\tplaintext\x18\x01 \x01(\x0c"S\n$UpdateCryptoKeyPrimaryVersionRequest\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x1d\n\x15\x63rypto_key_version_id\x18\x02 \x01(\t".\n\x1e\x44\x65stroyCryptoKeyVersionRequest\x12\x0c\n\x04name\x18\x01 \x01(\t".\n\x1eRestoreCryptoKeyVersionRequest\x12\x0c\n\x04name\x18\x01 \x01(\t"H\n\x06\x44igest\x12\x10\n\x06sha256\x18\x01 \x01(\x0cH\x00\x12\x10\n\x06sha384\x18\x02 \x01(\x0cH\x00\x12\x10\n\x06sha512\x18\x03 \x01(\x0cH\x00\x42\x08\n\x06\x64igest")\n\x10LocationMetadata\x12\x15\n\rhsm_available\x18\x01 \x01(\x08\x32\xcd\x1c\n\x14KeyManagementService\x12\x99\x01\n\x0cListKeyRings\x12(.google.cloud.kms.v1.ListKeyRingsRequest\x1a).google.cloud.kms.v1.ListKeyRingsResponse"4\x82\xd3\xe4\x93\x02.\x12,/v1/{parent=projects/*/locations/*}/keyRings\x12\xac\x01\n\x0eListCryptoKeys\x12*.google.cloud.kms.v1.ListCryptoKeysRequest\x1a+.google.cloud.kms.v1.ListCryptoKeysResponse"A\x82\xd3\xe4\x93\x02;\x12\x39/v1/{parent=projects/*/locations/*/keyRings/*}/cryptoKeys\x12\xd5\x01\n\x15ListCryptoKeyVersions\x12\x31.google.cloud.kms.v1.ListCryptoKeyVersionsRequest\x1a\x32.google.cloud.kms.v1.ListCryptoKeyVersionsResponse"U\x82\xd3\xe4\x93\x02O\x12M/v1/{parent=projects/*/locations/*/keyRings/*/cryptoKeys/*}/cryptoKeyVersions\x12\x88\x01\n\nGetKeyRing\x12&.google.cloud.kms.v1.GetKeyRingRequest\x1a\x1c.google.cloud.kms.v1.KeyRing"4\x82\xd3\xe4\x93\x02.\x12,/v1/{name=projects/*/locations/*/keyRings/*}\x12\x9b\x01\n\x0cGetCryptoKey\x12(.google.cloud.kms.v1.GetCryptoKeyRequest\x1a\x1e.google.cloud.kms.v1.CryptoKey"A\x82\xd3\xe4\x93\x02;\x12\x39/v1/{name=projects/*/locations/*/keyRings/*/cryptoKeys/*}\x12\xc4\x01\n\x13GetCryptoKeyVersion\x12/.google.cloud.kms.v1.GetCryptoKeyVersionRequest\x1a%.google.cloud.kms.v1.CryptoKeyVersion"U\x82\xd3\xe4\x93\x02O\x12M/v1/{name=projects/*/locations/*/keyRings/*/cryptoKeys/*/cryptoKeyVersions/*}\x12\xb9\x01\n\x0cGetPublicKey\x12(.google.cloud.kms.v1.GetPublicKeyRequest\x1a\x1e.google.cloud.kms.v1.PublicKey"_\x82\xd3\xe4\x93\x02Y\x12W/v1/{name=projects/*/locations/*/keyRings/*/cryptoKeys/*/cryptoKeyVersions/*}/publicKey\x12\x98\x01\n\rCreateKeyRing\x12).google.cloud.kms.v1.CreateKeyRingRequest\x1a\x1c.google.cloud.kms.v1.KeyRing">\x82\xd3\xe4\x93\x02\x38",/v1/{parent=projects/*/locations/*}/keyRings:\x08key_ring\x12\xad\x01\n\x0f\x43reateCryptoKey\x12+.google.cloud.kms.v1.CreateCryptoKeyRequest\x1a\x1e.google.cloud.kms.v1.CryptoKey"M\x82\xd3\xe4\x93\x02G"9/v1/{parent=projects/*/locations/*/keyRings/*}/cryptoKeys:\ncrypto_key\x12\xde\x01\n\x16\x43reateCryptoKeyVersion\x12\x32.google.cloud.kms.v1.CreateCryptoKeyVersionRequest\x1a%.google.cloud.kms.v1.CryptoKeyVersion"i\x82\xd3\xe4\x93\x02\x63"M/v1/{parent=projects/*/locations/*/keyRings/*/cryptoKeys/*}/cryptoKeyVersions:\x12\x63rypto_key_version\x12\xb8\x01\n\x0fUpdateCryptoKey\x12+.google.cloud.kms.v1.UpdateCryptoKeyRequest\x1a\x1e.google.cloud.kms.v1.CryptoKey"X\x82\xd3\xe4\x93\x02R2D/v1/{crypto_key.name=projects/*/locations/*/keyRings/*/cryptoKeys/*}:\ncrypto_key\x12\xf1\x01\n\x16UpdateCryptoKeyVersion\x12\x32.google.cloud.kms.v1.UpdateCryptoKeyVersionRequest\x1a%.google.cloud.kms.v1.CryptoKeyVersion"|\x82\xd3\xe4\x93\x02v2`/v1/{crypto_key_version.name=projects/*/locations/*/keyRings/*/cryptoKeys/*/cryptoKeyVersions/*}:\x12\x63rypto_key_version\x12\xa3\x01\n\x07\x45ncrypt\x12#.google.cloud.kms.v1.EncryptRequest\x1a$.google.cloud.kms.v1.EncryptResponse"M\x82\xd3\xe4\x93\x02G"B/v1/{name=projects/*/locations/*/keyRings/*/cryptoKeys/**}:encrypt:\x01*\x12\xa2\x01\n\x07\x44\x65\x63rypt\x12#.google.cloud.kms.v1.DecryptRequest\x1a$.google.cloud.kms.v1.DecryptResponse"L\x82\xd3\xe4\x93\x02\x46"A/v1/{name=projects/*/locations/*/keyRings/*/cryptoKeys/*}:decrypt:\x01*\x12\xd2\x01\n\x0e\x41symmetricSign\x12*.google.cloud.kms.v1.AsymmetricSignRequest\x1a+.google.cloud.kms.v1.AsymmetricSignResponse"g\x82\xd3\xe4\x93\x02\x61"\\/v1/{name=projects/*/locations/*/keyRings/*/cryptoKeys/*/cryptoKeyVersions/*}:asymmetricSign:\x01*\x12\xde\x01\n\x11\x41symmetricDecrypt\x12-.google.cloud.kms.v1.AsymmetricDecryptRequest\x1a..google.cloud.kms.v1.AsymmetricDecryptResponse"j\x82\xd3\xe4\x93\x02\x64"_/v1/{name=projects/*/locations/*/keyRings/*/cryptoKeys/*/cryptoKeyVersions/*}:asymmetricDecrypt:\x01*\x12\xd5\x01\n\x1dUpdateCryptoKeyPrimaryVersion\x12\x39.google.cloud.kms.v1.UpdateCryptoKeyPrimaryVersionRequest\x1a\x1e.google.cloud.kms.v1.CryptoKey"Y\x82\xd3\xe4\x93\x02S"N/v1/{name=projects/*/locations/*/keyRings/*/cryptoKeys/*}:updatePrimaryVersion:\x01*\x12\xd7\x01\n\x17\x44\x65stroyCryptoKeyVersion\x12\x33.google.cloud.kms.v1.DestroyCryptoKeyVersionRequest\x1a%.google.cloud.kms.v1.CryptoKeyVersion"`\x82\xd3\xe4\x93\x02Z"U/v1/{name=projects/*/locations/*/keyRings/*/cryptoKeys/*/cryptoKeyVersions/*}:destroy:\x01*\x12\xd7\x01\n\x17RestoreCryptoKeyVersion\x12\x33.google.cloud.kms.v1.RestoreCryptoKeyVersionRequest\x1a%.google.cloud.kms.v1.CryptoKeyVersion"`\x82\xd3\xe4\x93\x02Z"U/v1/{name=projects/*/locations/*/keyRings/*/cryptoKeys/*/cryptoKeyVersions/*}:restore:\x01*B\x8c\x01\n\x17\x63om.google.cloud.kms.v1B\x08KmsProtoP\x01Z6google.golang.org/genproto/googleapis/cloud/kms/v1;kms\xf8\x01\x01\xaa\x02\x13Google.Cloud.Kms.V1\xca\x02\x13Google\\Cloud\\Kms\\V1b\x06proto3'
    ),
    dependencies=[
        google_dot_api_dot_annotations__pb2.DESCRIPTOR,
        google_dot_cloud_dot_kms__v1_dot_proto_dot_resources__pb2.DESCRIPTOR,
        google_dot_protobuf_dot_field__mask__pb2.DESCRIPTOR,
        google_dot_protobuf_dot_struct__pb2.DESCRIPTOR,
        google_dot_protobuf_dot_wrappers__pb2.DESCRIPTOR,
    ],
)


_LISTKEYRINGSREQUEST = _descriptor.Descriptor(
    name="ListKeyRingsRequest",
    full_name="google.cloud.kms.v1.ListKeyRingsRequest",
    filename=None,
    file=DESCRIPTOR,
    containing_type=None,
    fields=[
        _descriptor.FieldDescriptor(
            name="parent",
            full_name="google.cloud.kms.v1.ListKeyRingsRequest.parent",
            index=0,
            number=1,
            type=9,
            cpp_type=9,
            label=1,
            has_default_value=False,
            default_value=_b("").decode("utf-8"),
            message_type=None,
            enum_type=None,
            containing_type=None,
            is_extension=False,
            extension_scope=None,
            serialized_options=None,
            file=DESCRIPTOR,
        ),
        _descriptor.FieldDescriptor(
            name="page_size",
            full_name="google.cloud.kms.v1.ListKeyRingsRequest.page_size",
            index=1,
            number=2,
            type=5,
            cpp_type=1,
            label=1,
            has_default_value=False,
            default_value=0,
            message_type=None,
            enum_type=None,
            containing_type=None,
            is_extension=False,
            extension_scope=None,
            serialized_options=None,
            file=DESCRIPTOR,
        ),
        _descriptor.FieldDescriptor(
            name="page_token",
            full_name="google.cloud.kms.v1.ListKeyRingsRequest.page_token",
            index=2,
            number=3,
            type=9,
            cpp_type=9,
            label=1,
            has_default_value=False,
            default_value=_b("").decode("utf-8"),
            message_type=None,
            enum_type=None,
            containing_type=None,
            is_extension=False,
            extension_scope=None,
            serialized_options=None,
            file=DESCRIPTOR,
        ),
    ],
    extensions=[],
    nested_types=[],
    enum_types=[],
    serialized_options=None,
    is_extendable=False,
    syntax="proto3",
    extension_ranges=[],
    oneofs=[],
    serialized_start=233,
    serialized_end=309,
)


_LISTCRYPTOKEYSREQUEST = _descriptor.Descriptor(
    name="ListCryptoKeysRequest",
    full_name="google.cloud.kms.v1.ListCryptoKeysRequest",
    filename=None,
    file=DESCRIPTOR,
    containing_type=None,
    fields=[
        _descriptor.FieldDescriptor(
            name="parent",
            full_name="google.cloud.kms.v1.ListCryptoKeysRequest.parent",
            index=0,
            number=1,
            type=9,
            cpp_type=9,
            label=1,
            has_default_value=False,
            default_value=_b("").decode("utf-8"),
            message_type=None,
            enum_type=None,
            containing_type=None,
            is_extension=False,
            extension_scope=None,
            serialized_options=None,
            file=DESCRIPTOR,
        ),
        _descriptor.FieldDescriptor(
            name="page_size",
            full_name="google.cloud.kms.v1.ListCryptoKeysRequest.page_size",
            index=1,
            number=2,
            type=5,
            cpp_type=1,
            label=1,
            has_default_value=False,
            default_value=0,
            message_type=None,
            enum_type=None,
            containing_type=None,
            is_extension=False,
            extension_scope=None,
            serialized_options=None,
            file=DESCRIPTOR,
        ),
        _descriptor.FieldDescriptor(
            name="page_token",
            full_name="google.cloud.kms.v1.ListCryptoKeysRequest.page_token",
            index=2,
            number=3,
            type=9,
            cpp_type=9,
            label=1,
            has_default_value=False,
            default_value=_b("").decode("utf-8"),
            message_type=None,
            enum_type=None,
            containing_type=None,
            is_extension=False,
            extension_scope=None,
            serialized_options=None,
            file=DESCRIPTOR,
        ),
        _descriptor.FieldDescriptor(
            name="version_view",
            full_name="google.cloud.kms.v1.ListCryptoKeysRequest.version_view",
            index=3,
            number=4,
            type=14,
            cpp_type=8,
            label=1,
            has_default_value=False,
            default_value=0,
            message_type=None,
            enum_type=None,
            containing_type=None,
            is_extension=False,
            extension_scope=None,
            serialized_options=None,
            file=DESCRIPTOR,
        ),
    ],
    extensions=[],
    nested_types=[],
    enum_types=[],
    serialized_options=None,
    is_extendable=False,
    syntax="proto3",
    extension_ranges=[],
    oneofs=[],
    serialized_start=312,
    serialized_end=472,
)


_LISTCRYPTOKEYVERSIONSREQUEST = _descriptor.Descriptor(
    name="ListCryptoKeyVersionsRequest",
    full_name="google.cloud.kms.v1.ListCryptoKeyVersionsRequest",
    filename=None,
    file=DESCRIPTOR,
    containing_type=None,
    fields=[
        _descriptor.FieldDescriptor(
            name="parent",
            full_name="google.cloud.kms.v1.ListCryptoKeyVersionsRequest.parent",
            index=0,
            number=1,
            type=9,
            cpp_type=9,
            label=1,
            has_default_value=False,
            default_value=_b("").decode("utf-8"),
            message_type=None,
            enum_type=None,
            containing_type=None,
            is_extension=False,
            extension_scope=None,
            serialized_options=None,
            file=DESCRIPTOR,
        ),
        _descriptor.FieldDescriptor(
            name="page_size",
            full_name="google.cloud.kms.v1.ListCryptoKeyVersionsRequest.page_size",
            index=1,
            number=2,
            type=5,
            cpp_type=1,
            label=1,
            has_default_value=False,
            default_value=0,
            message_type=None,
            enum_type=None,
            containing_type=None,
            is_extension=False,
            extension_scope=None,
            serialized_options=None,
            file=DESCRIPTOR,
        ),
        _descriptor.FieldDescriptor(
            name="page_token",
            full_name="google.cloud.kms.v1.ListCryptoKeyVersionsRequest.page_token",
            index=2,
            number=3,
            type=9,
            cpp_type=9,
            label=1,
            has_default_value=False,
            default_value=_b("").decode("utf-8"),
            message_type=None,
            enum_type=None,
            containing_type=None,
            is_extension=False,
            extension_scope=None,
            serialized_options=None,
            file=DESCRIPTOR,
        ),
        _descriptor.FieldDescriptor(
            name="view",
            full_name="google.cloud.kms.v1.ListCryptoKeyVersionsRequest.view",
            index=3,
            number=4,
            type=14,
            cpp_type=8,
            label=1,
            has_default_value=False,
            default_value=0,
            message_type=None,
            enum_type=None,
            containing_type=None,
            is_extension=False,
            extension_scope=None,
            serialized_options=None,
            file=DESCRIPTOR,
        ),
    ],
    extensions=[],
    nested_types=[],
    enum_types=[],
    serialized_options=None,
    is_extendable=False,
    syntax="proto3",
    extension_ranges=[],
    oneofs=[],
    serialized_start=475,
    serialized_end=634,
)


_LISTKEYRINGSRESPONSE = _descriptor.Descriptor(
    name="ListKeyRingsResponse",
    full_name="google.cloud.kms.v1.ListKeyRingsResponse",
    filename=None,
    file=DESCRIPTOR,
    containing_type=None,
    fields=[
        _descriptor.FieldDescriptor(
            name="key_rings",
            full_name="google.cloud.kms.v1.ListKeyRingsResponse.key_rings",
            index=0,
            number=1,
            type=11,
            cpp_type=10,
            label=3,
            has_default_value=False,
            default_value=[],
            message_type=None,
            enum_type=None,
            containing_type=None,
            is_extension=False,
            extension_scope=None,
            serialized_options=None,
            file=DESCRIPTOR,
        ),
        _descriptor.FieldDescriptor(
            name="next_page_token",
            full_name="google.cloud.kms.v1.ListKeyRingsResponse.next_page_token",
            index=1,
            number=2,
            type=9,
            cpp_type=9,
            label=1,
            has_default_value=False,
            default_value=_b("").decode("utf-8"),
            message_type=None,
            enum_type=None,
            containing_type=None,
            is_extension=False,
            extension_scope=None,
            serialized_options=None,
            file=DESCRIPTOR,
        ),
        _descriptor.FieldDescriptor(
            name="total_size",
            full_name="google.cloud.kms.v1.ListKeyRingsResponse.total_size",
            index=2,
            number=3,
            type=5,
            cpp_type=1,
            label=1,
            has_default_value=False,
            default_value=0,
            message_type=None,
            enum_type=None,
            containing_type=None,
            is_extension=False,
            extension_scope=None,
            serialized_options=None,
            file=DESCRIPTOR,
        ),
    ],
    extensions=[],
    nested_types=[],
    enum_types=[],
    serialized_options=None,
    is_extendable=False,
    syntax="proto3",
    extension_ranges=[],
    oneofs=[],
    serialized_start=636,
    serialized_end=752,
)


_LISTCRYPTOKEYSRESPONSE = _descriptor.Descriptor(
    name="ListCryptoKeysResponse",
    full_name="google.cloud.kms.v1.ListCryptoKeysResponse",
    filename=None,
    file=DESCRIPTOR,
    containing_type=None,
    fields=[
        _descriptor.FieldDescriptor(
            name="crypto_keys",
            full_name="google.cloud.kms.v1.ListCryptoKeysResponse.crypto_keys",
            index=0,
            number=1,
            type=11,
            cpp_type=10,
            label=3,
            has_default_value=False,
            default_value=[],
            message_type=None,
            enum_type=None,
            containing_type=None,
            is_extension=False,
            extension_scope=None,
            serialized_options=None,
            file=DESCRIPTOR,
        ),
        _descriptor.FieldDescriptor(
            name="next_page_token",
            full_name="google.cloud.kms.v1.ListCryptoKeysResponse.next_page_token",
            index=1,
            number=2,
            type=9,
            cpp_type=9,
            label=1,
            has_default_value=False,
            default_value=_b("").decode("utf-8"),
            message_type=None,
            enum_type=None,
            containing_type=None,
            is_extension=False,
            extension_scope=None,
            serialized_options=None,
            file=DESCRIPTOR,
        ),
        _descriptor.FieldDescriptor(
            name="total_size",
            full_name="google.cloud.kms.v1.ListCryptoKeysResponse.total_size",
            index=2,
            number=3,
            type=5,
            cpp_type=1,
            label=1,
            has_default_value=False,
            default_value=0,
            message_type=None,
            enum_type=None,
            containing_type=None,
            is_extension=False,
            extension_scope=None,
            serialized_options=None,
            file=DESCRIPTOR,
        ),
    ],
    extensions=[],
    nested_types=[],
    enum_types=[],
    serialized_options=None,
    is_extendable=False,
    syntax="proto3",
    extension_ranges=[],
    oneofs=[],
    serialized_start=754,
    serialized_end=876,
)


_LISTCRYPTOKEYVERSIONSRESPONSE = _descriptor.Descriptor(
    name="ListCryptoKeyVersionsResponse",
    full_name="google.cloud.kms.v1.ListCryptoKeyVersionsResponse",
    filename=None,
    file=DESCRIPTOR,
    containing_type=None,
    fields=[
        _descriptor.FieldDescriptor(
            name="crypto_key_versions",
            full_name="google.cloud.kms.v1.ListCryptoKeyVersionsResponse.crypto_key_versions",
            index=0,
            number=1,
            type=11,
            cpp_type=10,
            label=3,
            has_default_value=False,
            default_value=[],
            message_type=None,
            enum_type=None,
            containing_type=None,
            is_extension=False,
            extension_scope=None,
            serialized_options=None,
            file=DESCRIPTOR,
        ),
        _descriptor.FieldDescriptor(
            name="next_page_token",
            full_name="google.cloud.kms.v1.ListCryptoKeyVersionsResponse.next_page_token",
            index=1,
            number=2,
            type=9,
            cpp_type=9,
            label=1,
            has_default_value=False,
            default_value=_b("").decode("utf-8"),
            message_type=None,
            enum_type=None,
            containing_type=None,
            is_extension=False,
            extension_scope=None,
            serialized_options=None,
            file=DESCRIPTOR,
        ),
        _descriptor.FieldDescriptor(
            name="total_size",
            full_name="google.cloud.kms.v1.ListCryptoKeyVersionsResponse.total_size",
            index=2,
            number=3,
            type=5,
            cpp_type=1,
            label=1,
            has_default_value=False,
            default_value=0,
            message_type=None,
            enum_type=None,
            containing_type=None,
            is_extension=False,
            extension_scope=None,
            serialized_options=None,
            file=DESCRIPTOR,
        ),
    ],
    extensions=[],
    nested_types=[],
    enum_types=[],
    serialized_options=None,
    is_extendable=False,
    syntax="proto3",
    extension_ranges=[],
    oneofs=[],
    serialized_start=879,
    serialized_end=1023,
)


_GETKEYRINGREQUEST = _descriptor.Descriptor(
    name="GetKeyRingRequest",
    full_name="google.cloud.kms.v1.GetKeyRingRequest",
    filename=None,
    file=DESCRIPTOR,
    containing_type=None,
    fields=[
        _descriptor.FieldDescriptor(
            name="name",
            full_name="google.cloud.kms.v1.GetKeyRingRequest.name",
            index=0,
            number=1,
            type=9,
            cpp_type=9,
            label=1,
            has_default_value=False,
            default_value=_b("").decode("utf-8"),
            message_type=None,
            enum_type=None,
            containing_type=None,
            is_extension=False,
            extension_scope=None,
            serialized_options=None,
            file=DESCRIPTOR,
        )
    ],
    extensions=[],
    nested_types=[],
    enum_types=[],
    serialized_options=None,
    is_extendable=False,
    syntax="proto3",
    extension_ranges=[],
    oneofs=[],
    serialized_start=1025,
    serialized_end=1058,
)


_GETCRYPTOKEYREQUEST = _descriptor.Descriptor(
    name="GetCryptoKeyRequest",
    full_name="google.cloud.kms.v1.GetCryptoKeyRequest",
    filename=None,
    file=DESCRIPTOR,
    containing_type=None,
    fields=[
        _descriptor.FieldDescriptor(
            name="name",
            full_name="google.cloud.kms.v1.GetCryptoKeyRequest.name",
            index=0,
            number=1,
            type=9,
            cpp_type=9,
            label=1,
            has_default_value=False,
            default_value=_b("").decode("utf-8"),
            message_type=None,
            enum_type=None,
            containing_type=None,
            is_extension=False,
            extension_scope=None,
            serialized_options=None,
            file=DESCRIPTOR,
        )
    ],
    extensions=[],
    nested_types=[],
    enum_types=[],
    serialized_options=None,
    is_extendable=False,
    syntax="proto3",
    extension_ranges=[],
    oneofs=[],
    serialized_start=1060,
    serialized_end=1095,
)


_GETCRYPTOKEYVERSIONREQUEST = _descriptor.Descriptor(
    name="GetCryptoKeyVersionRequest",
    full_name="google.cloud.kms.v1.GetCryptoKeyVersionRequest",
    filename=None,
    file=DESCRIPTOR,
    containing_type=None,
    fields=[
        _descriptor.FieldDescriptor(
            name="name",
            full_name="google.cloud.kms.v1.GetCryptoKeyVersionRequest.name",
            index=0,
            number=1,
            type=9,
            cpp_type=9,
            label=1,
            has_default_value=False,
            default_value=_b("").decode("utf-8"),
            message_type=None,
            enum_type=None,
            containing_type=None,
            is_extension=False,
            extension_scope=None,
            serialized_options=None,
            file=DESCRIPTOR,
        )
    ],
    extensions=[],
    nested_types=[],
    enum_types=[],
    serialized_options=None,
    is_extendable=False,
    syntax="proto3",
    extension_ranges=[],
    oneofs=[],
    serialized_start=1097,
    serialized_end=1139,
)


_GETPUBLICKEYREQUEST = _descriptor.Descriptor(
    name="GetPublicKeyRequest",
    full_name="google.cloud.kms.v1.GetPublicKeyRequest",
    filename=None,
    file=DESCRIPTOR,
    containing_type=None,
    fields=[
        _descriptor.FieldDescriptor(
            name="name",
            full_name="google.cloud.kms.v1.GetPublicKeyRequest.name",
            index=0,
            number=1,
            type=9,
            cpp_type=9,
            label=1,
            has_default_value=False,
            default_value=_b("").decode("utf-8"),
            message_type=None,
            enum_type=None,
            containing_type=None,
            is_extension=False,
            extension_scope=None,
            serialized_options=None,
            file=DESCRIPTOR,
        )
    ],
    extensions=[],
    nested_types=[],
    enum_types=[],
    serialized_options=None,
    is_extendable=False,
    syntax="proto3",
    extension_ranges=[],
    oneofs=[],
    serialized_start=1141,
    serialized_end=1176,
)


_CREATEKEYRINGREQUEST = _descriptor.Descriptor(
    name="CreateKeyRingRequest",
    full_name="google.cloud.kms.v1.CreateKeyRingRequest",
    filename=None,
    file=DESCRIPTOR,
    containing_type=None,
    fields=[
        _descriptor.FieldDescriptor(
            name="parent",
            full_name="google.cloud.kms.v1.CreateKeyRingRequest.parent",
            index=0,
            number=1,
            type=9,
            cpp_type=9,
            label=1,
            has_default_value=False,
            default_value=_b("").decode("utf-8"),
            message_type=None,
            enum_type=None,
            containing_type=None,
            is_extension=False,
            extension_scope=None,
            serialized_options=None,
            file=DESCRIPTOR,
        ),
        _descriptor.FieldDescriptor(
            name="key_ring_id",
            full_name="google.cloud.kms.v1.CreateKeyRingRequest.key_ring_id",
            index=1,
            number=2,
            type=9,
            cpp_type=9,
            label=1,
            has_default_value=False,
            default_value=_b("").decode("utf-8"),
            message_type=None,
            enum_type=None,
            containing_type=None,
            is_extension=False,
            extension_scope=None,
            serialized_options=None,
            file=DESCRIPTOR,
        ),
        _descriptor.FieldDescriptor(
            name="key_ring",
            full_name="google.cloud.kms.v1.CreateKeyRingRequest.key_ring",
            index=2,
            number=3,
            type=11,
            cpp_type=10,
            label=1,
            has_default_value=False,
            default_value=None,
            message_type=None,
            enum_type=None,
            containing_type=None,
            is_extension=False,
            extension_scope=None,
            serialized_options=None,
            file=DESCRIPTOR,
        ),
    ],
    extensions=[],
    nested_types=[],
    enum_types=[],
    serialized_options=None,
    is_extendable=False,
    syntax="proto3",
    extension_ranges=[],
    oneofs=[],
    serialized_start=1178,
    serialized_end=1285,
)


_CREATECRYPTOKEYREQUEST = _descriptor.Descriptor(
    name="CreateCryptoKeyRequest",
    full_name="google.cloud.kms.v1.CreateCryptoKeyRequest",
    filename=None,
    file=DESCRIPTOR,
    containing_type=None,
    fields=[
        _descriptor.FieldDescriptor(
            name="parent",
            full_name="google.cloud.kms.v1.CreateCryptoKeyRequest.parent",
            index=0,
            number=1,
            type=9,
            cpp_type=9,
            label=1,
            has_default_value=False,
            default_value=_b("").decode("utf-8"),
            message_type=None,
            enum_type=None,
            containing_type=None,
            is_extension=False,
            extension_scope=None,
            serialized_options=None,
            file=DESCRIPTOR,
        ),
        _descriptor.FieldDescriptor(
            name="crypto_key_id",
            full_name="google.cloud.kms.v1.CreateCryptoKeyRequest.crypto_key_id",
            index=1,
            number=2,
            type=9,
            cpp_type=9,
            label=1,
            has_default_value=False,
            default_value=_b("").decode("utf-8"),
            message_type=None,
            enum_type=None,
            containing_type=None,
            is_extension=False,
            extension_scope=None,
            serialized_options=None,
            file=DESCRIPTOR,
        ),
        _descriptor.FieldDescriptor(
            name="crypto_key",
            full_name="google.cloud.kms.v1.CreateCryptoKeyRequest.crypto_key",
            index=2,
            number=3,
            type=11,
            cpp_type=10,
            label=1,
            has_default_value=False,
            default_value=None,
            message_type=None,
            enum_type=None,
            containing_type=None,
            is_extension=False,
            extension_scope=None,
            serialized_options=None,
            file=DESCRIPTOR,
        ),
    ],
    extensions=[],
    nested_types=[],
    enum_types=[],
    serialized_options=None,
    is_extendable=False,
    syntax="proto3",
    extension_ranges=[],
    oneofs=[],
    serialized_start=1287,
    serialized_end=1402,
)


_CREATECRYPTOKEYVERSIONREQUEST = _descriptor.Descriptor(
    name="CreateCryptoKeyVersionRequest",
    full_name="google.cloud.kms.v1.CreateCryptoKeyVersionRequest",
    filename=None,
    file=DESCRIPTOR,
    containing_type=None,
    fields=[
        _descriptor.FieldDescriptor(
            name="parent",
            full_name="google.cloud.kms.v1.CreateCryptoKeyVersionRequest.parent",
            index=0,
            number=1,
            type=9,
            cpp_type=9,
            label=1,
            has_default_value=False,
            default_value=_b("").decode("utf-8"),
            message_type=None,
            enum_type=None,
            containing_type=None,
            is_extension=False,
            extension_scope=None,
            serialized_options=None,
            file=DESCRIPTOR,
        ),
        _descriptor.FieldDescriptor(
            name="crypto_key_version",
            full_name="google.cloud.kms.v1.CreateCryptoKeyVersionRequest.crypto_key_version",
            index=1,
            number=2,
            type=11,
            cpp_type=10,
            label=1,
            has_default_value=False,
            default_value=None,
            message_type=None,
            enum_type=None,
            containing_type=None,
            is_extension=False,
            extension_scope=None,
            serialized_options=None,
            file=DESCRIPTOR,
        ),
    ],
    extensions=[],
    nested_types=[],
    enum_types=[],
    serialized_options=None,
    is_extendable=False,
    syntax="proto3",
    extension_ranges=[],
    oneofs=[],
    serialized_start=1404,
    serialized_end=1518,
)


_UPDATECRYPTOKEYREQUEST = _descriptor.Descriptor(
    name="UpdateCryptoKeyRequest",
    full_name="google.cloud.kms.v1.UpdateCryptoKeyRequest",
    filename=None,
    file=DESCRIPTOR,
    containing_type=None,
    fields=[
        _descriptor.FieldDescriptor(
            name="crypto_key",
            full_name="google.cloud.kms.v1.UpdateCryptoKeyRequest.crypto_key",
            index=0,
            number=1,
            type=11,
            cpp_type=10,
            label=1,
            has_default_value=False,
            default_value=None,
            message_type=None,
            enum_type=None,
            containing_type=None,
            is_extension=False,
            extension_scope=None,
            serialized_options=None,
            file=DESCRIPTOR,
        ),
        _descriptor.FieldDescriptor(
            name="update_mask",
            full_name="google.cloud.kms.v1.UpdateCryptoKeyRequest.update_mask",
            index=1,
            number=2,
            type=11,
            cpp_type=10,
            label=1,
            has_default_value=False,
            default_value=None,
            message_type=None,
            enum_type=None,
            containing_type=None,
            is_extension=False,
            extension_scope=None,
            serialized_options=None,
            file=DESCRIPTOR,
        ),
    ],
    extensions=[],
    nested_types=[],
    enum_types=[],
    serialized_options=None,
    is_extendable=False,
    syntax="proto3",
    extension_ranges=[],
    oneofs=[],
    serialized_start=1520,
    serialized_end=1645,
)


_UPDATECRYPTOKEYVERSIONREQUEST = _descriptor.Descriptor(
    name="UpdateCryptoKeyVersionRequest",
    full_name="google.cloud.kms.v1.UpdateCryptoKeyVersionRequest",
    filename=None,
    file=DESCRIPTOR,
    containing_type=None,
    fields=[
        _descriptor.FieldDescriptor(
            name="crypto_key_version",
            full_name="google.cloud.kms.v1.UpdateCryptoKeyVersionRequest.crypto_key_version",
            index=0,
            number=1,
            type=11,
            cpp_type=10,
            label=1,
            has_default_value=False,
            default_value=None,
            message_type=None,
            enum_type=None,
            containing_type=None,
            is_extension=False,
            extension_scope=None,
            serialized_options=None,
            file=DESCRIPTOR,
        ),
        _descriptor.FieldDescriptor(
            name="update_mask",
            full_name="google.cloud.kms.v1.UpdateCryptoKeyVersionRequest.update_mask",
            index=1,
            number=2,
            type=11,
            cpp_type=10,
            label=1,
            has_default_value=False,
            default_value=None,
            message_type=None,
            enum_type=None,
            containing_type=None,
            is_extension=False,
            extension_scope=None,
            serialized_options=None,
            file=DESCRIPTOR,
        ),
    ],
    extensions=[],
    nested_types=[],
    enum_types=[],
    serialized_options=None,
    is_extendable=False,
    syntax="proto3",
    extension_ranges=[],
    oneofs=[],
    serialized_start=1648,
    serialized_end=1795,
)


_ENCRYPTREQUEST = _descriptor.Descriptor(
    name="EncryptRequest",
    full_name="google.cloud.kms.v1.EncryptRequest",
    filename=None,
    file=DESCRIPTOR,
    containing_type=None,
    fields=[
        _descriptor.FieldDescriptor(
            name="name",
            full_name="google.cloud.kms.v1.EncryptRequest.name",
            index=0,
            number=1,
            type=9,
            cpp_type=9,
            label=1,
            has_default_value=False,
            default_value=_b("").decode("utf-8"),
            message_type=None,
            enum_type=None,
            containing_type=None,
            is_extension=False,
            extension_scope=None,
            serialized_options=None,
            file=DESCRIPTOR,
        ),
        _descriptor.FieldDescriptor(
            name="plaintext",
            full_name="google.cloud.kms.v1.EncryptRequest.plaintext",
            index=1,
            number=2,
            type=12,
            cpp_type=9,
            label=1,
            has_default_value=False,
            default_value=_b(""),
            message_type=None,
            enum_type=None,
            containing_type=None,
            is_extension=False,
            extension_scope=None,
            serialized_options=None,
            file=DESCRIPTOR,
        ),
        _descriptor.FieldDescriptor(
            name="additional_authenticated_data",
            full_name="google.cloud.kms.v1.EncryptRequest.additional_authenticated_data",
            index=2,
            number=3,
            type=12,
            cpp_type=9,
            label=1,
            has_default_value=False,
            default_value=_b(""),
            message_type=None,
            enum_type=None,
            containing_type=None,
            is_extension=False,
            extension_scope=None,
            serialized_options=None,
            file=DESCRIPTOR,
        ),
    ],
    extensions=[],
    nested_types=[],
    enum_types=[],
    serialized_options=None,
    is_extendable=False,
    syntax="proto3",
    extension_ranges=[],
    oneofs=[],
    serialized_start=1797,
    serialized_end=1885,
)


_DECRYPTREQUEST = _descriptor.Descriptor(
    name="DecryptRequest",
    full_name="google.cloud.kms.v1.DecryptRequest",
    filename=None,
    file=DESCRIPTOR,
    containing_type=None,
    fields=[
        _descriptor.FieldDescriptor(
            name="name",
            full_name="google.cloud.kms.v1.DecryptRequest.name",
            index=0,
            number=1,
            type=9,
            cpp_type=9,
            label=1,
            has_default_value=False,
            default_value=_b("").decode("utf-8"),
            message_type=None,
            enum_type=None,
            containing_type=None,
            is_extension=False,
            extension_scope=None,
            serialized_options=None,
            file=DESCRIPTOR,
        ),
        _descriptor.FieldDescriptor(
            name="ciphertext",
            full_name="google.cloud.kms.v1.DecryptRequest.ciphertext",
            index=1,
            number=2,
            type=12,
            cpp_type=9,
            label=1,
            has_default_value=False,
            default_value=_b(""),
            message_type=None,
            enum_type=None,
            containing_type=None,
            is_extension=False,
            extension_scope=None,
            serialized_options=None,
            file=DESCRIPTOR,
        ),
        _descriptor.FieldDescriptor(
            name="additional_authenticated_data",
            full_name="google.cloud.kms.v1.DecryptRequest.additional_authenticated_data",
            index=2,
            number=3,
            type=12,
            cpp_type=9,
            label=1,
            has_default_value=False,
            default_value=_b(""),
            message_type=None,
            enum_type=None,
            containing_type=None,
            is_extension=False,
            extension_scope=None,
            serialized_options=None,
            file=DESCRIPTOR,
        ),
    ],
    extensions=[],
    nested_types=[],
    enum_types=[],
    serialized_options=None,
    is_extendable=False,
    syntax="proto3",
    extension_ranges=[],
    oneofs=[],
    serialized_start=1887,
    serialized_end=1976,
)


_ASYMMETRICSIGNREQUEST = _descriptor.Descriptor(
    name="AsymmetricSignRequest",
    full_name="google.cloud.kms.v1.AsymmetricSignRequest",
    filename=None,
    file=DESCRIPTOR,
    containing_type=None,
    fields=[
        _descriptor.FieldDescriptor(
            name="name",
            full_name="google.cloud.kms.v1.AsymmetricSignRequest.name",
            index=0,
            number=1,
            type=9,
            cpp_type=9,
            label=1,
            has_default_value=False,
            default_value=_b("").decode("utf-8"),
            message_type=None,
            enum_type=None,
            containing_type=None,
            is_extension=False,
            extension_scope=None,
            serialized_options=None,
            file=DESCRIPTOR,
        ),
        _descriptor.FieldDescriptor(
            name="digest",
            full_name="google.cloud.kms.v1.AsymmetricSignRequest.digest",
            index=1,
            number=3,
            type=11,
            cpp_type=10,
            label=1,
            has_default_value=False,
            default_value=None,
            message_type=None,
            enum_type=None,
            containing_type=None,
            is_extension=False,
            extension_scope=None,
            serialized_options=None,
            file=DESCRIPTOR,
        ),
    ],
    extensions=[],
    nested_types=[],
    enum_types=[],
    serialized_options=None,
    is_extendable=False,
    syntax="proto3",
    extension_ranges=[],
    oneofs=[],
    serialized_start=1978,
    serialized_end=2060,
)


_ASYMMETRICDECRYPTREQUEST = _descriptor.Descriptor(
    name="AsymmetricDecryptRequest",
    full_name="google.cloud.kms.v1.AsymmetricDecryptRequest",
    filename=None,
    file=DESCRIPTOR,
    containing_type=None,
    fields=[
        _descriptor.FieldDescriptor(
            name="name",
            full_name="google.cloud.kms.v1.AsymmetricDecryptRequest.name",
            index=0,
            number=1,
            type=9,
            cpp_type=9,
            label=1,
            has_default_value=False,
            default_value=_b("").decode("utf-8"),
            message_type=None,
            enum_type=None,
            containing_type=None,
            is_extension=False,
            extension_scope=None,
            serialized_options=None,
            file=DESCRIPTOR,
        ),
        _descriptor.FieldDescriptor(
            name="ciphertext",
            full_name="google.cloud.kms.v1.AsymmetricDecryptRequest.ciphertext",
            index=1,
            number=3,
            type=12,
            cpp_type=9,
            label=1,
            has_default_value=False,
            default_value=_b(""),
            message_type=None,
            enum_type=None,
            containing_type=None,
            is_extension=False,
            extension_scope=None,
            serialized_options=None,
            file=DESCRIPTOR,
        ),
    ],
    extensions=[],
    nested_types=[],
    enum_types=[],
    serialized_options=None,
    is_extendable=False,
    syntax="proto3",
    extension_ranges=[],
    oneofs=[],
    serialized_start=2062,
    serialized_end=2122,
)


_DECRYPTRESPONSE = _descriptor.Descriptor(
    name="DecryptResponse",
    full_name="google.cloud.kms.v1.DecryptResponse",
    filename=None,
    file=DESCRIPTOR,
    containing_type=None,
    fields=[
        _descriptor.FieldDescriptor(
            name="plaintext",
            full_name="google.cloud.kms.v1.DecryptResponse.plaintext",
            index=0,
            number=1,
            type=12,
            cpp_type=9,
            label=1,
            has_default_value=False,
            default_value=_b(""),
            message_type=None,
            enum_type=None,
            containing_type=None,
            is_extension=False,
            extension_scope=None,
            serialized_options=None,
            file=DESCRIPTOR,
        )
    ],
    extensions=[],
    nested_types=[],
    enum_types=[],
    serialized_options=None,
    is_extendable=False,
    syntax="proto3",
    extension_ranges=[],
    oneofs=[],
    serialized_start=2124,
    serialized_end=2160,
)


_ENCRYPTRESPONSE = _descriptor.Descriptor(
    name="EncryptResponse",
    full_name="google.cloud.kms.v1.EncryptResponse",
    filename=None,
    file=DESCRIPTOR,
    containing_type=None,
    fields=[
        _descriptor.FieldDescriptor(
            name="name",
            full_name="google.cloud.kms.v1.EncryptResponse.name",
            index=0,
            number=1,
            type=9,
            cpp_type=9,
            label=1,
            has_default_value=False,
            default_value=_b("").decode("utf-8"),
            message_type=None,
            enum_type=None,
            containing_type=None,
            is_extension=False,
            extension_scope=None,
            serialized_options=None,
            file=DESCRIPTOR,
        ),
        _descriptor.FieldDescriptor(
            name="ciphertext",
            full_name="google.cloud.kms.v1.EncryptResponse.ciphertext",
            index=1,
            number=2,
            type=12,
            cpp_type=9,
            label=1,
            has_default_value=False,
            default_value=_b(""),
            message_type=None,
            enum_type=None,
            containing_type=None,
            is_extension=False,
            extension_scope=None,
            serialized_options=None,
            file=DESCRIPTOR,
        ),
    ],
    extensions=[],
    nested_types=[],
    enum_types=[],
    serialized_options=None,
    is_extendable=False,
    syntax="proto3",
    extension_ranges=[],
    oneofs=[],
    serialized_start=2162,
    serialized_end=2213,
)


_ASYMMETRICSIGNRESPONSE = _descriptor.Descriptor(
    name="AsymmetricSignResponse",
    full_name="google.cloud.kms.v1.AsymmetricSignResponse",
    filename=None,
    file=DESCRIPTOR,
    containing_type=None,
    fields=[
        _descriptor.FieldDescriptor(
            name="signature",
            full_name="google.cloud.kms.v1.AsymmetricSignResponse.signature",
            index=0,
            number=1,
            type=12,
            cpp_type=9,
            label=1,
            has_default_value=False,
            default_value=_b(""),
            message_type=None,
            enum_type=None,
            containing_type=None,
            is_extension=False,
            extension_scope=None,
            serialized_options=None,
            file=DESCRIPTOR,
        )
    ],
    extensions=[],
    nested_types=[],
    enum_types=[],
    serialized_options=None,
    is_extendable=False,
    syntax="proto3",
    extension_ranges=[],
    oneofs=[],
    serialized_start=2215,
    serialized_end=2258,
)


_ASYMMETRICDECRYPTRESPONSE = _descriptor.Descriptor(
    name="AsymmetricDecryptResponse",
    full_name="google.cloud.kms.v1.AsymmetricDecryptResponse",
    filename=None,
    file=DESCRIPTOR,
    containing_type=None,
    fields=[
        _descriptor.FieldDescriptor(
            name="plaintext",
            full_name="google.cloud.kms.v1.AsymmetricDecryptResponse.plaintext",
            index=0,
            number=1,
            type=12,
            cpp_type=9,
            label=1,
            has_default_value=False,
            default_value=_b(""),
            message_type=None,
            enum_type=None,
            containing_type=None,
            is_extension=False,
            extension_scope=None,
            serialized_options=None,
            file=DESCRIPTOR,
        )
    ],
    extensions=[],
    nested_types=[],
    enum_types=[],
    serialized_options=None,
    is_extendable=False,
    syntax="proto3",
    extension_ranges=[],
    oneofs=[],
    serialized_start=2260,
    serialized_end=2306,
)


_UPDATECRYPTOKEYPRIMARYVERSIONREQUEST = _descriptor.Descriptor(
    name="UpdateCryptoKeyPrimaryVersionRequest",
    full_name="google.cloud.kms.v1.UpdateCryptoKeyPrimaryVersionRequest",
    filename=None,
    file=DESCRIPTOR,
    containing_type=None,
    fields=[
        _descriptor.FieldDescriptor(
            name="name",
            full_name="google.cloud.kms.v1.UpdateCryptoKeyPrimaryVersionRequest.name",
            index=0,
            number=1,
            type=9,
            cpp_type=9,
            label=1,
            has_default_value=False,
            default_value=_b("").decode("utf-8"),
            message_type=None,
            enum_type=None,
            containing_type=None,
            is_extension=False,
            extension_scope=None,
            serialized_options=None,
            file=DESCRIPTOR,
        ),
        _descriptor.FieldDescriptor(
            name="crypto_key_version_id",
            full_name="google.cloud.kms.v1.UpdateCryptoKeyPrimaryVersionRequest.crypto_key_version_id",
            index=1,
            number=2,
            type=9,
            cpp_type=9,
            label=1,
            has_default_value=False,
            default_value=_b("").decode("utf-8"),
            message_type=None,
            enum_type=None,
            containing_type=None,
            is_extension=False,
            extension_scope=None,
            serialized_options=None,
            file=DESCRIPTOR,
        ),
    ],
    extensions=[],
    nested_types=[],
    enum_types=[],
    serialized_options=None,
    is_extendable=False,
    syntax="proto3",
    extension_ranges=[],
    oneofs=[],
    serialized_start=2308,
    serialized_end=2391,
)


_DESTROYCRYPTOKEYVERSIONREQUEST = _descriptor.Descriptor(
    name="DestroyCryptoKeyVersionRequest",
    full_name="google.cloud.kms.v1.DestroyCryptoKeyVersionRequest",
    filename=None,
    file=DESCRIPTOR,
    containing_type=None,
    fields=[
        _descriptor.FieldDescriptor(
            name="name",
            full_name="google.cloud.kms.v1.DestroyCryptoKeyVersionRequest.name",
            index=0,
            number=1,
            type=9,
            cpp_type=9,
            label=1,
            has_default_value=False,
            default_value=_b("").decode("utf-8"),
            message_type=None,
            enum_type=None,
            containing_type=None,
            is_extension=False,
            extension_scope=None,
            serialized_options=None,
            file=DESCRIPTOR,
        )
    ],
    extensions=[],
    nested_types=[],
    enum_types=[],
    serialized_options=None,
    is_extendable=False,
    syntax="proto3",
    extension_ranges=[],
    oneofs=[],
    serialized_start=2393,
    serialized_end=2439,
)


_RESTORECRYPTOKEYVERSIONREQUEST = _descriptor.Descriptor(
    name="RestoreCryptoKeyVersionRequest",
    full_name="google.cloud.kms.v1.RestoreCryptoKeyVersionRequest",
    filename=None,
    file=DESCRIPTOR,
    containing_type=None,
    fields=[
        _descriptor.FieldDescriptor(
            name="name",
            full_name="google.cloud.kms.v1.RestoreCryptoKeyVersionRequest.name",
            index=0,
            number=1,
            type=9,
            cpp_type=9,
            label=1,
            has_default_value=False,
            default_value=_b("").decode("utf-8"),
            message_type=None,
            enum_type=None,
            containing_type=None,
            is_extension=False,
            extension_scope=None,
            serialized_options=None,
            file=DESCRIPTOR,
        )
    ],
    extensions=[],
    nested_types=[],
    enum_types=[],
    serialized_options=None,
    is_extendable=False,
    syntax="proto3",
    extension_ranges=[],
    oneofs=[],
    serialized_start=2441,
    serialized_end=2487,
)


_DIGEST = _descriptor.Descriptor(
    name="Digest",
    full_name="google.cloud.kms.v1.Digest",
    filename=None,
    file=DESCRIPTOR,
    containing_type=None,
    fields=[
        _descriptor.FieldDescriptor(
            name="sha256",
            full_name="google.cloud.kms.v1.Digest.sha256",
            index=0,
            number=1,
            type=12,
            cpp_type=9,
            label=1,
            has_default_value=False,
            default_value=_b(""),
            message_type=None,
            enum_type=None,
            containing_type=None,
            is_extension=False,
            extension_scope=None,
            serialized_options=None,
            file=DESCRIPTOR,
        ),
        _descriptor.FieldDescriptor(
            name="sha384",
            full_name="google.cloud.kms.v1.Digest.sha384",
            index=1,
            number=2,
            type=12,
            cpp_type=9,
            label=1,
            has_default_value=False,
            default_value=_b(""),
            message_type=None,
            enum_type=None,
            containing_type=None,
            is_extension=False,
            extension_scope=None,
            serialized_options=None,
            file=DESCRIPTOR,
        ),
        _descriptor.FieldDescriptor(
            name="sha512",
            full_name="google.cloud.kms.v1.Digest.sha512",
            index=2,
            number=3,
            type=12,
            cpp_type=9,
            label=1,
            has_default_value=False,
            default_value=_b(""),
            message_type=None,
            enum_type=None,
            containing_type=None,
            is_extension=False,
            extension_scope=None,
            serialized_options=None,
            file=DESCRIPTOR,
        ),
    ],
    extensions=[],
    nested_types=[],
    enum_types=[],
    serialized_options=None,
    is_extendable=False,
    syntax="proto3",
    extension_ranges=[],
    oneofs=[
        _descriptor.OneofDescriptor(
            name="digest",
            full_name="google.cloud.kms.v1.Digest.digest",
            index=0,
            containing_type=None,
            fields=[],
        )
    ],
    serialized_start=2489,
    serialized_end=2561,
)


_LOCATIONMETADATA = _descriptor.Descriptor(
    name="LocationMetadata",
    full_name="google.cloud.kms.v1.LocationMetadata",
    filename=None,
    file=DESCRIPTOR,
    containing_type=None,
    fields=[
        _descriptor.FieldDescriptor(
            name="hsm_available",
            full_name="google.cloud.kms.v1.LocationMetadata.hsm_available",
            index=0,
            number=1,
            type=8,
            cpp_type=7,
            label=1,
            has_default_value=False,
            default_value=False,
            message_type=None,
            enum_type=None,
            containing_type=None,
            is_extension=False,
            extension_scope=None,
            serialized_options=None,
            file=DESCRIPTOR,
        )
    ],
    extensions=[],
    nested_types=[],
    enum_types=[],
    serialized_options=None,
    is_extendable=False,
    syntax="proto3",
    extension_ranges=[],
    oneofs=[],
    serialized_start=2563,
    serialized_end=2604,
)

_LISTCRYPTOKEYSREQUEST.fields_by_name[
    "version_view"
].enum_type = (
    google_dot_cloud_dot_kms__v1_dot_proto_dot_resources__pb2._CRYPTOKEYVERSION_CRYPTOKEYVERSIONVIEW
)
_LISTCRYPTOKEYVERSIONSREQUEST.fields_by_name[
    "view"
].enum_type = (
    google_dot_cloud_dot_kms__v1_dot_proto_dot_resources__pb2._CRYPTOKEYVERSION_CRYPTOKEYVERSIONVIEW
)
_LISTKEYRINGSRESPONSE.fields_by_name[
    "key_rings"
].message_type = google_dot_cloud_dot_kms__v1_dot_proto_dot_resources__pb2._KEYRING
_LISTCRYPTOKEYSRESPONSE.fields_by_name[
    "crypto_keys"
].message_type = google_dot_cloud_dot_kms__v1_dot_proto_dot_resources__pb2._CRYPTOKEY
_LISTCRYPTOKEYVERSIONSRESPONSE.fields_by_name[
    "crypto_key_versions"
].message_type = (
    google_dot_cloud_dot_kms__v1_dot_proto_dot_resources__pb2._CRYPTOKEYVERSION
)
_CREATEKEYRINGREQUEST.fields_by_name[
    "key_ring"
].message_type = google_dot_cloud_dot_kms__v1_dot_proto_dot_resources__pb2._KEYRING
_CREATECRYPTOKEYREQUEST.fields_by_name[
    "crypto_key"
].message_type = google_dot_cloud_dot_kms__v1_dot_proto_dot_resources__pb2._CRYPTOKEY
_CREATECRYPTOKEYVERSIONREQUEST.fields_by_name[
    "crypto_key_version"
].message_type = (
    google_dot_cloud_dot_kms__v1_dot_proto_dot_resources__pb2._CRYPTOKEYVERSION
)
_UPDATECRYPTOKEYREQUEST.fields_by_name[
    "crypto_key"
].message_type = google_dot_cloud_dot_kms__v1_dot_proto_dot_resources__pb2._CRYPTOKEY
_UPDATECRYPTOKEYREQUEST.fields_by_name[
    "update_mask"
].message_type = google_dot_protobuf_dot_field__mask__pb2._FIELDMASK
_UPDATECRYPTOKEYVERSIONREQUEST.fields_by_name[
    "crypto_key_version"
].message_type = (
    google_dot_cloud_dot_kms__v1_dot_proto_dot_resources__pb2._CRYPTOKEYVERSION
)
_UPDATECRYPTOKEYVERSIONREQUEST.fields_by_name[
    "update_mask"
].message_type = google_dot_protobuf_dot_field__mask__pb2._FIELDMASK
_ASYMMETRICSIGNREQUEST.fields_by_name["digest"].message_type = _DIGEST
_DIGEST.oneofs_by_name["digest"].fields.append(_DIGEST.fields_by_name["sha256"])
_DIGEST.fields_by_name["sha256"].containing_oneof = _DIGEST.oneofs_by_name["digest"]
_DIGEST.oneofs_by_name["digest"].fields.append(_DIGEST.fields_by_name["sha384"])
_DIGEST.fields_by_name["sha384"].containing_oneof = _DIGEST.oneofs_by_name["digest"]
_DIGEST.oneofs_by_name["digest"].fields.append(_DIGEST.fields_by_name["sha512"])
_DIGEST.fields_by_name["sha512"].containing_oneof = _DIGEST.oneofs_by_name["digest"]
DESCRIPTOR.message_types_by_name["ListKeyRingsRequest"] = _LISTKEYRINGSREQUEST
DESCRIPTOR.message_types_by_name["ListCryptoKeysRequest"] = _LISTCRYPTOKEYSREQUEST
DESCRIPTOR.message_types_by_name[
    "ListCryptoKeyVersionsRequest"
] = _LISTCRYPTOKEYVERSIONSREQUEST
DESCRIPTOR.message_types_by_name["ListKeyRingsResponse"] = _LISTKEYRINGSRESPONSE
DESCRIPTOR.message_types_by_name["ListCryptoKeysResponse"] = _LISTCRYPTOKEYSRESPONSE
DESCRIPTOR.message_types_by_name[
    "ListCryptoKeyVersionsResponse"
] = _LISTCRYPTOKEYVERSIONSRESPONSE
DESCRIPTOR.message_types_by_name["GetKeyRingRequest"] = _GETKEYRINGREQUEST
DESCRIPTOR.message_types_by_name["GetCryptoKeyRequest"] = _GETCRYPTOKEYREQUEST
DESCRIPTOR.message_types_by_name[
    "GetCryptoKeyVersionRequest"
] = _GETCRYPTOKEYVERSIONREQUEST
DESCRIPTOR.message_types_by_name["GetPublicKeyRequest"] = _GETPUBLICKEYREQUEST
DESCRIPTOR.message_types_by_name["CreateKeyRingRequest"] = _CREATEKEYRINGREQUEST
DESCRIPTOR.message_types_by_name["CreateCryptoKeyRequest"] = _CREATECRYPTOKEYREQUEST
DESCRIPTOR.message_types_by_name[
    "CreateCryptoKeyVersionRequest"
] = _CREATECRYPTOKEYVERSIONREQUEST
DESCRIPTOR.message_types_by_name["UpdateCryptoKeyRequest"] = _UPDATECRYPTOKEYREQUEST
DESCRIPTOR.message_types_by_name[
    "UpdateCryptoKeyVersionRequest"
] = _UPDATECRYPTOKEYVERSIONREQUEST
DESCRIPTOR.message_types_by_name["EncryptRequest"] = _ENCRYPTREQUEST
DESCRIPTOR.message_types_by_name["DecryptRequest"] = _DECRYPTREQUEST
DESCRIPTOR.message_types_by_name["AsymmetricSignRequest"] = _ASYMMETRICSIGNREQUEST
DESCRIPTOR.message_types_by_name["AsymmetricDecryptRequest"] = _ASYMMETRICDECRYPTREQUEST
DESCRIPTOR.message_types_by_name["DecryptResponse"] = _DECRYPTRESPONSE
DESCRIPTOR.message_types_by_name["EncryptResponse"] = _ENCRYPTRESPONSE
DESCRIPTOR.message_types_by_name["AsymmetricSignResponse"] = _ASYMMETRICSIGNRESPONSE
DESCRIPTOR.message_types_by_name[
    "AsymmetricDecryptResponse"
] = _ASYMMETRICDECRYPTRESPONSE
DESCRIPTOR.message_types_by_name[
    "UpdateCryptoKeyPrimaryVersionRequest"
] = _UPDATECRYPTOKEYPRIMARYVERSIONREQUEST
DESCRIPTOR.message_types_by_name[
    "DestroyCryptoKeyVersionRequest"
] = _DESTROYCRYPTOKEYVERSIONREQUEST
DESCRIPTOR.message_types_by_name[
    "RestoreCryptoKeyVersionRequest"
] = _RESTORECRYPTOKEYVERSIONREQUEST
DESCRIPTOR.message_types_by_name["Digest"] = _DIGEST
DESCRIPTOR.message_types_by_name["LocationMetadata"] = _LOCATIONMETADATA
_sym_db.RegisterFileDescriptor(DESCRIPTOR)

ListKeyRingsRequest = _reflection.GeneratedProtocolMessageType(
    "ListKeyRingsRequest",
    (_message.Message,),
    dict(
        DESCRIPTOR=_LISTKEYRINGSREQUEST,
        __module__="google.cloud.kms_v1.proto.service_pb2",
        __doc__="""Request message for
  [KeyManagementService.ListKeyRings][google.cloud.kms.v1.KeyManagementService.ListKeyRings].
  
  
  Attributes:
      parent:
          Required. The resource name of the location associated with
          the [KeyRings][google.cloud.kms.v1.KeyRing], in the format
          ``projects/*/locations/*``.
      page_size:
          Optional limit on the number of
          [KeyRings][google.cloud.kms.v1.KeyRing] to include in the
          response. Further [KeyRings][google.cloud.kms.v1.KeyRing] can
          subsequently be obtained by including the [ListKeyRingsRespons
          e.next\_page\_token][google.cloud.kms.v1.ListKeyRingsResponse.
          next\_page\_token] in a subsequent request. If unspecified,
          the server will pick an appropriate default.
      page_token:
          Optional pagination token, returned earlier via [ListKeyRingsR
          esponse.next\_page\_token][google.cloud.kms.v1.ListKeyRingsRes
          ponse.next\_page\_token].
  """,
        # @@protoc_insertion_point(class_scope:google.cloud.kms.v1.ListKeyRingsRequest)
    ),
)
_sym_db.RegisterMessage(ListKeyRingsRequest)

ListCryptoKeysRequest = _reflection.GeneratedProtocolMessageType(
    "ListCryptoKeysRequest",
    (_message.Message,),
    dict(
        DESCRIPTOR=_LISTCRYPTOKEYSREQUEST,
        __module__="google.cloud.kms_v1.proto.service_pb2",
        __doc__="""Request message for
  [KeyManagementService.ListCryptoKeys][google.cloud.kms.v1.KeyManagementService.ListCryptoKeys].
  
  
  Attributes:
      parent:
          Required. The resource name of the
          [KeyRing][google.cloud.kms.v1.KeyRing] to list, in the format
          ``projects/*/locations/*/keyRings/*``.
      page_size:
          Optional limit on the number of
          [CryptoKeys][google.cloud.kms.v1.CryptoKey] to include in the
          response. Further [CryptoKeys][google.cloud.kms.v1.CryptoKey]
          can subsequently be obtained by including the [ListCryptoKeysR
          esponse.next\_page\_token][google.cloud.kms.v1.ListCryptoKeysR
          esponse.next\_page\_token] in a subsequent request. If
          unspecified, the server will pick an appropriate default.
      page_token:
          Optional pagination token, returned earlier via [ListCryptoKey
          sResponse.next\_page\_token][google.cloud.kms.v1.ListCryptoKey
          sResponse.next\_page\_token].
      version_view:
          The fields of the primary version to include in the response.
  """,
        # @@protoc_insertion_point(class_scope:google.cloud.kms.v1.ListCryptoKeysRequest)
    ),
)
_sym_db.RegisterMessage(ListCryptoKeysRequest)

ListCryptoKeyVersionsRequest = _reflection.GeneratedProtocolMessageType(
    "ListCryptoKeyVersionsRequest",
    (_message.Message,),
    dict(
        DESCRIPTOR=_LISTCRYPTOKEYVERSIONSREQUEST,
        __module__="google.cloud.kms_v1.proto.service_pb2",
        __doc__="""Request message for
  [KeyManagementService.ListCryptoKeyVersions][google.cloud.kms.v1.KeyManagementService.ListCryptoKeyVersions].
  
  
  Attributes:
      parent:
          Required. The resource name of the
          [CryptoKey][google.cloud.kms.v1.CryptoKey] to list, in the
          format ``projects/*/locations/*/keyRings/*/cryptoKeys/*``.
      page_size:
          Optional limit on the number of
          [CryptoKeyVersions][google.cloud.kms.v1.CryptoKeyVersion] to
          include in the response. Further
          [CryptoKeyVersions][google.cloud.kms.v1.CryptoKeyVersion] can
          subsequently be obtained by including the [ListCryptoKeyVersio
          nsResponse.next\_page\_token][google.cloud.kms.v1.ListCryptoKe
          yVersionsResponse.next\_page\_token] in a subsequent request.
          If unspecified, the server will pick an appropriate default.
      page_token:
          Optional pagination token, returned earlier via [ListCryptoKey
          VersionsResponse.next\_page\_token][google.cloud.kms.v1.ListCr
          yptoKeyVersionsResponse.next\_page\_token].
      view:
          The fields to include in the response.
  """,
        # @@protoc_insertion_point(class_scope:google.cloud.kms.v1.ListCryptoKeyVersionsRequest)
    ),
)
_sym_db.RegisterMessage(ListCryptoKeyVersionsRequest)

ListKeyRingsResponse = _reflection.GeneratedProtocolMessageType(
    "ListKeyRingsResponse",
    (_message.Message,),
    dict(
        DESCRIPTOR=_LISTKEYRINGSRESPONSE,
        __module__="google.cloud.kms_v1.proto.service_pb2",
        __doc__="""Response message for
  [KeyManagementService.ListKeyRings][google.cloud.kms.v1.KeyManagementService.ListKeyRings].
  
  
  Attributes:
      key_rings:
          The list of [KeyRings][google.cloud.kms.v1.KeyRing].
      next_page_token:
          A token to retrieve next page of results. Pass this value in [
          ListKeyRingsRequest.page\_token][google.cloud.kms.v1.ListKeyRi
          ngsRequest.page\_token] to retrieve the next page of results.
      total_size:
          The total number of [KeyRings][google.cloud.kms.v1.KeyRing]
          that matched the query.
  """,
        # @@protoc_insertion_point(class_scope:google.cloud.kms.v1.ListKeyRingsResponse)
    ),
)
_sym_db.RegisterMessage(ListKeyRingsResponse)

ListCryptoKeysResponse = _reflection.GeneratedProtocolMessageType(
    "ListCryptoKeysResponse",
    (_message.Message,),
    dict(
        DESCRIPTOR=_LISTCRYPTOKEYSRESPONSE,
        __module__="google.cloud.kms_v1.proto.service_pb2",
        __doc__="""Response message for
  [KeyManagementService.ListCryptoKeys][google.cloud.kms.v1.KeyManagementService.ListCryptoKeys].
  
  
  Attributes:
      crypto_keys:
          The list of [CryptoKeys][google.cloud.kms.v1.CryptoKey].
      next_page_token:
          A token to retrieve next page of results. Pass this value in [
          ListCryptoKeysRequest.page\_token][google.cloud.kms.v1.ListCry
          ptoKeysRequest.page\_token] to retrieve the next page of
          results.
      total_size:
          The total number of
          [CryptoKeys][google.cloud.kms.v1.CryptoKey] that matched the
          query.
  """,
        # @@protoc_insertion_point(class_scope:google.cloud.kms.v1.ListCryptoKeysResponse)
    ),
)
_sym_db.RegisterMessage(ListCryptoKeysResponse)

ListCryptoKeyVersionsResponse = _reflection.GeneratedProtocolMessageType(
    "ListCryptoKeyVersionsResponse",
    (_message.Message,),
    dict(
        DESCRIPTOR=_LISTCRYPTOKEYVERSIONSRESPONSE,
        __module__="google.cloud.kms_v1.proto.service_pb2",
        __doc__="""Response message for
  [KeyManagementService.ListCryptoKeyVersions][google.cloud.kms.v1.KeyManagementService.ListCryptoKeyVersions].
  
  
  Attributes:
      crypto_key_versions:
          The list of
          [CryptoKeyVersions][google.cloud.kms.v1.CryptoKeyVersion].
      next_page_token:
          A token to retrieve next page of results. Pass this value in [
          ListCryptoKeyVersionsRequest.page\_token][google.cloud.kms.v1.
          ListCryptoKeyVersionsRequest.page\_token] to retrieve the next
          page of results.
      total_size:
          The total number of
          [CryptoKeyVersions][google.cloud.kms.v1.CryptoKeyVersion] that
          matched the query.
  """,
        # @@protoc_insertion_point(class_scope:google.cloud.kms.v1.ListCryptoKeyVersionsResponse)
    ),
)
_sym_db.RegisterMessage(ListCryptoKeyVersionsResponse)

GetKeyRingRequest = _reflection.GeneratedProtocolMessageType(
    "GetKeyRingRequest",
    (_message.Message,),
    dict(
        DESCRIPTOR=_GETKEYRINGREQUEST,
        __module__="google.cloud.kms_v1.proto.service_pb2",
        __doc__="""Request message for
  [KeyManagementService.GetKeyRing][google.cloud.kms.v1.KeyManagementService.GetKeyRing].
  
  
  Attributes:
      name:
          The [name][google.cloud.kms.v1.KeyRing.name] of the
          [KeyRing][google.cloud.kms.v1.KeyRing] to get.
  """,
        # @@protoc_insertion_point(class_scope:google.cloud.kms.v1.GetKeyRingRequest)
    ),
)
_sym_db.RegisterMessage(GetKeyRingRequest)

GetCryptoKeyRequest = _reflection.GeneratedProtocolMessageType(
    "GetCryptoKeyRequest",
    (_message.Message,),
    dict(
        DESCRIPTOR=_GETCRYPTOKEYREQUEST,
        __module__="google.cloud.kms_v1.proto.service_pb2",
        __doc__="""Request message for
  [KeyManagementService.GetCryptoKey][google.cloud.kms.v1.KeyManagementService.GetCryptoKey].
  
  
  Attributes:
      name:
          The [name][google.cloud.kms.v1.CryptoKey.name] of the
          [CryptoKey][google.cloud.kms.v1.CryptoKey] to get.
  """,
        # @@protoc_insertion_point(class_scope:google.cloud.kms.v1.GetCryptoKeyRequest)
    ),
)
_sym_db.RegisterMessage(GetCryptoKeyRequest)

GetCryptoKeyVersionRequest = _reflection.GeneratedProtocolMessageType(
    "GetCryptoKeyVersionRequest",
    (_message.Message,),
    dict(
        DESCRIPTOR=_GETCRYPTOKEYVERSIONREQUEST,
        __module__="google.cloud.kms_v1.proto.service_pb2",
        __doc__="""Request message for
  [KeyManagementService.GetCryptoKeyVersion][google.cloud.kms.v1.KeyManagementService.GetCryptoKeyVersion].
  
  
  Attributes:
      name:
          The [name][google.cloud.kms.v1.CryptoKeyVersion.name] of the
          [CryptoKeyVersion][google.cloud.kms.v1.CryptoKeyVersion] to
          get.
  """,
        # @@protoc_insertion_point(class_scope:google.cloud.kms.v1.GetCryptoKeyVersionRequest)
    ),
)
_sym_db.RegisterMessage(GetCryptoKeyVersionRequest)

GetPublicKeyRequest = _reflection.GeneratedProtocolMessageType(
    "GetPublicKeyRequest",
    (_message.Message,),
    dict(
        DESCRIPTOR=_GETPUBLICKEYREQUEST,
        __module__="google.cloud.kms_v1.proto.service_pb2",
        __doc__="""Request message for
  [KeyManagementService.GetPublicKey][google.cloud.kms.v1.KeyManagementService.GetPublicKey].
  
  
  Attributes:
      name:
          The [name][google.cloud.kms.v1.CryptoKeyVersion.name] of the
          [CryptoKeyVersion][google.cloud.kms.v1.CryptoKeyVersion]
          public key to get.
  """,
        # @@protoc_insertion_point(class_scope:google.cloud.kms.v1.GetPublicKeyRequest)
    ),
)
_sym_db.RegisterMessage(GetPublicKeyRequest)

CreateKeyRingRequest = _reflection.GeneratedProtocolMessageType(
    "CreateKeyRingRequest",
    (_message.Message,),
    dict(
        DESCRIPTOR=_CREATEKEYRINGREQUEST,
        __module__="google.cloud.kms_v1.proto.service_pb2",
        __doc__="""Request message for
  [KeyManagementService.CreateKeyRing][google.cloud.kms.v1.KeyManagementService.CreateKeyRing].
  
  
  Attributes:
      parent:
          Required. The resource name of the location associated with
          the [KeyRings][google.cloud.kms.v1.KeyRing], in the format
          ``projects/*/locations/*``.
      key_ring_id:
          Required. It must be unique within a location and match the
          regular expression ``[a-zA-Z0-9_-]{1,63}``
      key_ring:
          A [KeyRing][google.cloud.kms.v1.KeyRing] with initial field
          values.
  """,
        # @@protoc_insertion_point(class_scope:google.cloud.kms.v1.CreateKeyRingRequest)
    ),
)
_sym_db.RegisterMessage(CreateKeyRingRequest)

CreateCryptoKeyRequest = _reflection.GeneratedProtocolMessageType(
    "CreateCryptoKeyRequest",
    (_message.Message,),
    dict(
        DESCRIPTOR=_CREATECRYPTOKEYREQUEST,
        __module__="google.cloud.kms_v1.proto.service_pb2",
        __doc__="""Request message for
  [KeyManagementService.CreateCryptoKey][google.cloud.kms.v1.KeyManagementService.CreateCryptoKey].
  
  
  Attributes:
      parent:
          Required. The [name][google.cloud.kms.v1.KeyRing.name] of the
          KeyRing associated with the
          [CryptoKeys][google.cloud.kms.v1.CryptoKey].
      crypto_key_id:
          Required. It must be unique within a KeyRing and match the
          regular expression ``[a-zA-Z0-9_-]{1,63}``
      crypto_key:
          A [CryptoKey][google.cloud.kms.v1.CryptoKey] with initial
          field values.
  """,
        # @@protoc_insertion_point(class_scope:google.cloud.kms.v1.CreateCryptoKeyRequest)
    ),
)
_sym_db.RegisterMessage(CreateCryptoKeyRequest)

CreateCryptoKeyVersionRequest = _reflection.GeneratedProtocolMessageType(
    "CreateCryptoKeyVersionRequest",
    (_message.Message,),
    dict(
        DESCRIPTOR=_CREATECRYPTOKEYVERSIONREQUEST,
        __module__="google.cloud.kms_v1.proto.service_pb2",
        __doc__="""Request message for
  [KeyManagementService.CreateCryptoKeyVersion][google.cloud.kms.v1.KeyManagementService.CreateCryptoKeyVersion].
  
  
  Attributes:
      parent:
          Required. The [name][google.cloud.kms.v1.CryptoKey.name] of
          the [CryptoKey][google.cloud.kms.v1.CryptoKey] associated with
          the [CryptoKeyVersions][google.cloud.kms.v1.CryptoKeyVersion].
      crypto_key_version:
          A [CryptoKeyVersion][google.cloud.kms.v1.CryptoKeyVersion]
          with initial field values.
  """,
        # @@protoc_insertion_point(class_scope:google.cloud.kms.v1.CreateCryptoKeyVersionRequest)
    ),
)
_sym_db.RegisterMessage(CreateCryptoKeyVersionRequest)

UpdateCryptoKeyRequest = _reflection.GeneratedProtocolMessageType(
    "UpdateCryptoKeyRequest",
    (_message.Message,),
    dict(
        DESCRIPTOR=_UPDATECRYPTOKEYREQUEST,
        __module__="google.cloud.kms_v1.proto.service_pb2",
        __doc__="""Request message for
  [KeyManagementService.UpdateCryptoKey][google.cloud.kms.v1.KeyManagementService.UpdateCryptoKey].
  
  
  Attributes:
      crypto_key:
          [CryptoKey][google.cloud.kms.v1.CryptoKey] with updated
          values.
      update_mask:
          Required list of fields to be updated in this request.
  """,
        # @@protoc_insertion_point(class_scope:google.cloud.kms.v1.UpdateCryptoKeyRequest)
    ),
)
_sym_db.RegisterMessage(UpdateCryptoKeyRequest)

UpdateCryptoKeyVersionRequest = _reflection.GeneratedProtocolMessageType(
    "UpdateCryptoKeyVersionRequest",
    (_message.Message,),
    dict(
        DESCRIPTOR=_UPDATECRYPTOKEYVERSIONREQUEST,
        __module__="google.cloud.kms_v1.proto.service_pb2",
        __doc__="""Request message for
  [KeyManagementService.UpdateCryptoKeyVersion][google.cloud.kms.v1.KeyManagementService.UpdateCryptoKeyVersion].
  
  
  Attributes:
      crypto_key_version:
          [CryptoKeyVersion][google.cloud.kms.v1.CryptoKeyVersion] with
          updated values.
      update_mask:
          Required list of fields to be updated in this request.
  """,
        # @@protoc_insertion_point(class_scope:google.cloud.kms.v1.UpdateCryptoKeyVersionRequest)
    ),
)
_sym_db.RegisterMessage(UpdateCryptoKeyVersionRequest)

EncryptRequest = _reflection.GeneratedProtocolMessageType(
    "EncryptRequest",
    (_message.Message,),
    dict(
        DESCRIPTOR=_ENCRYPTREQUEST,
        __module__="google.cloud.kms_v1.proto.service_pb2",
        __doc__="""Request message for
  [KeyManagementService.Encrypt][google.cloud.kms.v1.KeyManagementService.Encrypt].
  
  
  Attributes:
      name:
          Required. The resource name of the
          [CryptoKey][google.cloud.kms.v1.CryptoKey] or
          [CryptoKeyVersion][google.cloud.kms.v1.CryptoKeyVersion] to
          use for encryption.  If a
          [CryptoKey][google.cloud.kms.v1.CryptoKey] is specified, the
          server will use its [primary
          version][google.cloud.kms.v1.CryptoKey.primary].
      plaintext:
          Required. The data to encrypt. Must be no larger than 64KiB.
          The maximum size depends on the key version's [protection\_lev
          el][google.cloud.kms.v1.CryptoKeyVersionTemplate.protection\_l
          evel]. For
          [SOFTWARE][google.cloud.kms.v1.ProtectionLevel.SOFTWARE] keys,
          the plaintext must be no larger than 64KiB. For
          [HSM][google.cloud.kms.v1.ProtectionLevel.HSM] keys, the
          combined length of the plaintext and
          additional\_authenticated\_data fields must be no larger than
          8KiB.
      additional_authenticated_data:
          Optional data that, if specified, must also be provided during
          decryption through [DecryptRequest.additional\_authenticated\_
          data][google.cloud.kms.v1.DecryptRequest.additional\_authentic
          ated\_data].  The maximum size depends on the key version's [p
          rotection\_level][google.cloud.kms.v1.CryptoKeyVersionTemplate
          .protection\_level]. For
          [SOFTWARE][google.cloud.kms.v1.ProtectionLevel.SOFTWARE] keys,
          the AAD must be no larger than 64KiB. For
          [HSM][google.cloud.kms.v1.ProtectionLevel.HSM] keys, the
          combined length of the plaintext and
          additional\_authenticated\_data fields must be no larger than
          8KiB.
  """,
        # @@protoc_insertion_point(class_scope:google.cloud.kms.v1.EncryptRequest)
    ),
)
_sym_db.RegisterMessage(EncryptRequest)

DecryptRequest = _reflection.GeneratedProtocolMessageType(
    "DecryptRequest",
    (_message.Message,),
    dict(
        DESCRIPTOR=_DECRYPTREQUEST,
        __module__="google.cloud.kms_v1.proto.service_pb2",
        __doc__="""Request message for
  [KeyManagementService.Decrypt][google.cloud.kms.v1.KeyManagementService.Decrypt].
  
  
  Attributes:
      name:
          Required. The resource name of the
          [CryptoKey][google.cloud.kms.v1.CryptoKey] to use for
          decryption. The server will choose the appropriate version.
      ciphertext:
          Required. The encrypted data originally returned in [EncryptRe
          sponse.ciphertext][google.cloud.kms.v1.EncryptResponse.ciphert
          ext].
      additional_authenticated_data:
          Optional data that must match the data originally supplied in 
          [EncryptRequest.additional\_authenticated\_data][google.cloud.
          kms.v1.EncryptRequest.additional\_authenticated\_data].
  """,
        # @@protoc_insertion_point(class_scope:google.cloud.kms.v1.DecryptRequest)
    ),
)
_sym_db.RegisterMessage(DecryptRequest)

AsymmetricSignRequest = _reflection.GeneratedProtocolMessageType(
    "AsymmetricSignRequest",
    (_message.Message,),
    dict(
        DESCRIPTOR=_ASYMMETRICSIGNREQUEST,
        __module__="google.cloud.kms_v1.proto.service_pb2",
        __doc__="""Request message for
  [KeyManagementService.AsymmetricSign][google.cloud.kms.v1.KeyManagementService.AsymmetricSign].
  
  
  Attributes:
      name:
          Required. The resource name of the
          [CryptoKeyVersion][google.cloud.kms.v1.CryptoKeyVersion] to
          use for signing.
      digest:
          Required. The digest of the data to sign. The digest must be
          produced with the same digest algorithm as specified by the
          key version's
          [algorithm][google.cloud.kms.v1.CryptoKeyVersion.algorithm].
  """,
        # @@protoc_insertion_point(class_scope:google.cloud.kms.v1.AsymmetricSignRequest)
    ),
)
_sym_db.RegisterMessage(AsymmetricSignRequest)

AsymmetricDecryptRequest = _reflection.GeneratedProtocolMessageType(
    "AsymmetricDecryptRequest",
    (_message.Message,),
    dict(
        DESCRIPTOR=_ASYMMETRICDECRYPTREQUEST,
        __module__="google.cloud.kms_v1.proto.service_pb2",
        __doc__="""Request message for
  [KeyManagementService.AsymmetricDecrypt][google.cloud.kms.v1.KeyManagementService.AsymmetricDecrypt].
  
  
  Attributes:
      name:
          Required. The resource name of the
          [CryptoKeyVersion][google.cloud.kms.v1.CryptoKeyVersion] to
          use for decryption.
      ciphertext:
          Required. The data encrypted with the named
          [CryptoKeyVersion][google.cloud.kms.v1.CryptoKeyVersion]'s
          public key using OAEP.
  """,
        # @@protoc_insertion_point(class_scope:google.cloud.kms.v1.AsymmetricDecryptRequest)
    ),
)
_sym_db.RegisterMessage(AsymmetricDecryptRequest)

DecryptResponse = _reflection.GeneratedProtocolMessageType(
    "DecryptResponse",
    (_message.Message,),
    dict(
        DESCRIPTOR=_DECRYPTRESPONSE,
        __module__="google.cloud.kms_v1.proto.service_pb2",
        __doc__="""Response message for
  [KeyManagementService.Decrypt][google.cloud.kms.v1.KeyManagementService.Decrypt].
  
  
  Attributes:
      plaintext:
          The decrypted data originally supplied in [EncryptRequest.plai
          ntext][google.cloud.kms.v1.EncryptRequest.plaintext].
  """,
        # @@protoc_insertion_point(class_scope:google.cloud.kms.v1.DecryptResponse)
    ),
)
_sym_db.RegisterMessage(DecryptResponse)

EncryptResponse = _reflection.GeneratedProtocolMessageType(
    "EncryptResponse",
    (_message.Message,),
    dict(
        DESCRIPTOR=_ENCRYPTRESPONSE,
        __module__="google.cloud.kms_v1.proto.service_pb2",
        __doc__="""Response message for
  [KeyManagementService.Encrypt][google.cloud.kms.v1.KeyManagementService.Encrypt].
  
  
  Attributes:
      name:
          The resource name of the
          [CryptoKeyVersion][google.cloud.kms.v1.CryptoKeyVersion] used
          in encryption.
      ciphertext:
          The encrypted data.
  """,
        # @@protoc_insertion_point(class_scope:google.cloud.kms.v1.EncryptResponse)
    ),
)
_sym_db.RegisterMessage(EncryptResponse)

AsymmetricSignResponse = _reflection.GeneratedProtocolMessageType(
    "AsymmetricSignResponse",
    (_message.Message,),
    dict(
        DESCRIPTOR=_ASYMMETRICSIGNRESPONSE,
        __module__="google.cloud.kms_v1.proto.service_pb2",
        __doc__="""Response message for
  [KeyManagementService.AsymmetricSign][google.cloud.kms.v1.KeyManagementService.AsymmetricSign].
  
  
  Attributes:
      signature:
          The created signature.
  """,
        # @@protoc_insertion_point(class_scope:google.cloud.kms.v1.AsymmetricSignResponse)
    ),
)
_sym_db.RegisterMessage(AsymmetricSignResponse)

AsymmetricDecryptResponse = _reflection.GeneratedProtocolMessageType(
    "AsymmetricDecryptResponse",
    (_message.Message,),
    dict(
        DESCRIPTOR=_ASYMMETRICDECRYPTRESPONSE,
        __module__="google.cloud.kms_v1.proto.service_pb2",
        __doc__="""Response message for
  [KeyManagementService.AsymmetricDecrypt][google.cloud.kms.v1.KeyManagementService.AsymmetricDecrypt].
  
  
  Attributes:
      plaintext:
          The decrypted data originally encrypted with the matching
          public key.
  """,
        # @@protoc_insertion_point(class_scope:google.cloud.kms.v1.AsymmetricDecryptResponse)
    ),
)
_sym_db.RegisterMessage(AsymmetricDecryptResponse)

UpdateCryptoKeyPrimaryVersionRequest = _reflection.GeneratedProtocolMessageType(
    "UpdateCryptoKeyPrimaryVersionRequest",
    (_message.Message,),
    dict(
        DESCRIPTOR=_UPDATECRYPTOKEYPRIMARYVERSIONREQUEST,
        __module__="google.cloud.kms_v1.proto.service_pb2",
        __doc__="""Request message for
  [KeyManagementService.UpdateCryptoKeyPrimaryVersion][google.cloud.kms.v1.KeyManagementService.UpdateCryptoKeyPrimaryVersion].
  
  
  Attributes:
      name:
          The resource name of the
          [CryptoKey][google.cloud.kms.v1.CryptoKey] to update.
      crypto_key_version_id:
          The id of the child
          [CryptoKeyVersion][google.cloud.kms.v1.CryptoKeyVersion] to
          use as primary.
  """,
        # @@protoc_insertion_point(class_scope:google.cloud.kms.v1.UpdateCryptoKeyPrimaryVersionRequest)
    ),
)
_sym_db.RegisterMessage(UpdateCryptoKeyPrimaryVersionRequest)

DestroyCryptoKeyVersionRequest = _reflection.GeneratedProtocolMessageType(
    "DestroyCryptoKeyVersionRequest",
    (_message.Message,),
    dict(
        DESCRIPTOR=_DESTROYCRYPTOKEYVERSIONREQUEST,
        __module__="google.cloud.kms_v1.proto.service_pb2",
        __doc__="""Request message for
  [KeyManagementService.DestroyCryptoKeyVersion][google.cloud.kms.v1.KeyManagementService.DestroyCryptoKeyVersion].
  
  
  Attributes:
      name:
          The resource name of the
          [CryptoKeyVersion][google.cloud.kms.v1.CryptoKeyVersion] to
          destroy.
  """,
        # @@protoc_insertion_point(class_scope:google.cloud.kms.v1.DestroyCryptoKeyVersionRequest)
    ),
)
_sym_db.RegisterMessage(DestroyCryptoKeyVersionRequest)

RestoreCryptoKeyVersionRequest = _reflection.GeneratedProtocolMessageType(
    "RestoreCryptoKeyVersionRequest",
    (_message.Message,),
    dict(
        DESCRIPTOR=_RESTORECRYPTOKEYVERSIONREQUEST,
        __module__="google.cloud.kms_v1.proto.service_pb2",
        __doc__="""Request message for
  [KeyManagementService.RestoreCryptoKeyVersion][google.cloud.kms.v1.KeyManagementService.RestoreCryptoKeyVersion].
  
  
  Attributes:
      name:
          The resource name of the
          [CryptoKeyVersion][google.cloud.kms.v1.CryptoKeyVersion] to
          restore.
  """,
        # @@protoc_insertion_point(class_scope:google.cloud.kms.v1.RestoreCryptoKeyVersionRequest)
    ),
)
_sym_db.RegisterMessage(RestoreCryptoKeyVersionRequest)

Digest = _reflection.GeneratedProtocolMessageType(
    "Digest",
    (_message.Message,),
    dict(
        DESCRIPTOR=_DIGEST,
        __module__="google.cloud.kms_v1.proto.service_pb2",
        __doc__="""A [Digest][google.cloud.kms.v1.Digest] holds a cryptographic message
  digest.
  
  
  Attributes:
      digest:
          Required. The message digest.
      sha256:
          A message digest produced with the SHA-256 algorithm.
      sha384:
          A message digest produced with the SHA-384 algorithm.
      sha512:
          A message digest produced with the SHA-512 algorithm.
  """,
        # @@protoc_insertion_point(class_scope:google.cloud.kms.v1.Digest)
    ),
)
_sym_db.RegisterMessage(Digest)

LocationMetadata = _reflection.GeneratedProtocolMessageType(
    "LocationMetadata",
    (_message.Message,),
    dict(
        DESCRIPTOR=_LOCATIONMETADATA,
        __module__="google.cloud.kms_v1.proto.service_pb2",
        __doc__="""Cloud KMS metadata for the given
  [google.cloud.location.Location][google.cloud.location.Location].
  
  
  Attributes:
      hsm_available:
          Indicates whether [CryptoKeys][google.cloud.kms.v1.CryptoKey]
          with [protection\_level][google.cloud.kms.v1.CryptoKeyVersionT
          emplate.protection\_level]
          [HSM][google.cloud.kms.v1.ProtectionLevel.HSM] can be created
          in this location.
  """,
        # @@protoc_insertion_point(class_scope:google.cloud.kms.v1.LocationMetadata)
    ),
)
_sym_db.RegisterMessage(LocationMetadata)


DESCRIPTOR._options = None

_KEYMANAGEMENTSERVICE = _descriptor.ServiceDescriptor(
    name="KeyManagementService",
    full_name="google.cloud.kms.v1.KeyManagementService",
    file=DESCRIPTOR,
    index=0,
    serialized_options=None,
    serialized_start=2607,
    serialized_end=6268,
    methods=[
        _descriptor.MethodDescriptor(
            name="ListKeyRings",
            full_name="google.cloud.kms.v1.KeyManagementService.ListKeyRings",
            index=0,
            containing_service=None,
            input_type=_LISTKEYRINGSREQUEST,
            output_type=_LISTKEYRINGSRESPONSE,
            serialized_options=_b(
                "\202\323\344\223\002.\022,/v1/{parent=projects/*/locations/*}/keyRings"
            ),
        ),
        _descriptor.MethodDescriptor(
            name="ListCryptoKeys",
            full_name="google.cloud.kms.v1.KeyManagementService.ListCryptoKeys",
            index=1,
            containing_service=None,
            input_type=_LISTCRYPTOKEYSREQUEST,
            output_type=_LISTCRYPTOKEYSRESPONSE,
            serialized_options=_b(
                "\202\323\344\223\002;\0229/v1/{parent=projects/*/locations/*/keyRings/*}/cryptoKeys"
            ),
        ),
        _descriptor.MethodDescriptor(
            name="ListCryptoKeyVersions",
            full_name="google.cloud.kms.v1.KeyManagementService.ListCryptoKeyVersions",
            index=2,
            containing_service=None,
            input_type=_LISTCRYPTOKEYVERSIONSREQUEST,
            output_type=_LISTCRYPTOKEYVERSIONSRESPONSE,
            serialized_options=_b(
                "\202\323\344\223\002O\022M/v1/{parent=projects/*/locations/*/keyRings/*/cryptoKeys/*}/cryptoKeyVersions"
            ),
        ),
        _descriptor.MethodDescriptor(
            name="GetKeyRing",
            full_name="google.cloud.kms.v1.KeyManagementService.GetKeyRing",
            index=3,
            containing_service=None,
            input_type=_GETKEYRINGREQUEST,
            output_type=google_dot_cloud_dot_kms__v1_dot_proto_dot_resources__pb2._KEYRING,
            serialized_options=_b(
                "\202\323\344\223\002.\022,/v1/{name=projects/*/locations/*/keyRings/*}"
            ),
        ),
        _descriptor.MethodDescriptor(
            name="GetCryptoKey",
            full_name="google.cloud.kms.v1.KeyManagementService.GetCryptoKey",
            index=4,
            containing_service=None,
            input_type=_GETCRYPTOKEYREQUEST,
            output_type=google_dot_cloud_dot_kms__v1_dot_proto_dot_resources__pb2._CRYPTOKEY,
            serialized_options=_b(
                "\202\323\344\223\002;\0229/v1/{name=projects/*/locations/*/keyRings/*/cryptoKeys/*}"
            ),
        ),
        _descriptor.MethodDescriptor(
            name="GetCryptoKeyVersion",
            full_name="google.cloud.kms.v1.KeyManagementService.GetCryptoKeyVersion",
            index=5,
            containing_service=None,
            input_type=_GETCRYPTOKEYVERSIONREQUEST,
            output_type=google_dot_cloud_dot_kms__v1_dot_proto_dot_resources__pb2._CRYPTOKEYVERSION,
            serialized_options=_b(
                "\202\323\344\223\002O\022M/v1/{name=projects/*/locations/*/keyRings/*/cryptoKeys/*/cryptoKeyVersions/*}"
            ),
        ),
        _descriptor.MethodDescriptor(
            name="GetPublicKey",
            full_name="google.cloud.kms.v1.KeyManagementService.GetPublicKey",
            index=6,
            containing_service=None,
            input_type=_GETPUBLICKEYREQUEST,
            output_type=google_dot_cloud_dot_kms__v1_dot_proto_dot_resources__pb2._PUBLICKEY,
            serialized_options=_b(
                "\202\323\344\223\002Y\022W/v1/{name=projects/*/locations/*/keyRings/*/cryptoKeys/*/cryptoKeyVersions/*}/publicKey"
            ),
        ),
        _descriptor.MethodDescriptor(
            name="CreateKeyRing",
            full_name="google.cloud.kms.v1.KeyManagementService.CreateKeyRing",
            index=7,
            containing_service=None,
            input_type=_CREATEKEYRINGREQUEST,
            output_type=google_dot_cloud_dot_kms__v1_dot_proto_dot_resources__pb2._KEYRING,
            serialized_options=_b(
                '\202\323\344\223\0028",/v1/{parent=projects/*/locations/*}/keyRings:\010key_ring'
            ),
        ),
        _descriptor.MethodDescriptor(
            name="CreateCryptoKey",
            full_name="google.cloud.kms.v1.KeyManagementService.CreateCryptoKey",
            index=8,
            containing_service=None,
            input_type=_CREATECRYPTOKEYREQUEST,
            output_type=google_dot_cloud_dot_kms__v1_dot_proto_dot_resources__pb2._CRYPTOKEY,
            serialized_options=_b(
                '\202\323\344\223\002G"9/v1/{parent=projects/*/locations/*/keyRings/*}/cryptoKeys:\ncrypto_key'
            ),
        ),
        _descriptor.MethodDescriptor(
            name="CreateCryptoKeyVersion",
            full_name="google.cloud.kms.v1.KeyManagementService.CreateCryptoKeyVersion",
            index=9,
            containing_service=None,
            input_type=_CREATECRYPTOKEYVERSIONREQUEST,
            output_type=google_dot_cloud_dot_kms__v1_dot_proto_dot_resources__pb2._CRYPTOKEYVERSION,
            serialized_options=_b(
                '\202\323\344\223\002c"M/v1/{parent=projects/*/locations/*/keyRings/*/cryptoKeys/*}/cryptoKeyVersions:\022crypto_key_version'
            ),
        ),
        _descriptor.MethodDescriptor(
            name="UpdateCryptoKey",
            full_name="google.cloud.kms.v1.KeyManagementService.UpdateCryptoKey",
            index=10,
            containing_service=None,
            input_type=_UPDATECRYPTOKEYREQUEST,
            output_type=google_dot_cloud_dot_kms__v1_dot_proto_dot_resources__pb2._CRYPTOKEY,
            serialized_options=_b(
                "\202\323\344\223\002R2D/v1/{crypto_key.name=projects/*/locations/*/keyRings/*/cryptoKeys/*}:\ncrypto_key"
            ),
        ),
        _descriptor.MethodDescriptor(
            name="UpdateCryptoKeyVersion",
            full_name="google.cloud.kms.v1.KeyManagementService.UpdateCryptoKeyVersion",
            index=11,
            containing_service=None,
            input_type=_UPDATECRYPTOKEYVERSIONREQUEST,
            output_type=google_dot_cloud_dot_kms__v1_dot_proto_dot_resources__pb2._CRYPTOKEYVERSION,
            serialized_options=_b(
                "\202\323\344\223\002v2`/v1/{crypto_key_version.name=projects/*/locations/*/keyRings/*/cryptoKeys/*/cryptoKeyVersions/*}:\022crypto_key_version"
            ),
        ),
        _descriptor.MethodDescriptor(
            name="Encrypt",
            full_name="google.cloud.kms.v1.KeyManagementService.Encrypt",
            index=12,
            containing_service=None,
            input_type=_ENCRYPTREQUEST,
            output_type=_ENCRYPTRESPONSE,
            serialized_options=_b(
                '\202\323\344\223\002G"B/v1/{name=projects/*/locations/*/keyRings/*/cryptoKeys/**}:encrypt:\001*'
            ),
        ),
        _descriptor.MethodDescriptor(
            name="Decrypt",
            full_name="google.cloud.kms.v1.KeyManagementService.Decrypt",
            index=13,
            containing_service=None,
            input_type=_DECRYPTREQUEST,
            output_type=_DECRYPTRESPONSE,
            serialized_options=_b(
                '\202\323\344\223\002F"A/v1/{name=projects/*/locations/*/keyRings/*/cryptoKeys/*}:decrypt:\001*'
            ),
        ),
        _descriptor.MethodDescriptor(
            name="AsymmetricSign",
            full_name="google.cloud.kms.v1.KeyManagementService.AsymmetricSign",
            index=14,
            containing_service=None,
            input_type=_ASYMMETRICSIGNREQUEST,
            output_type=_ASYMMETRICSIGNRESPONSE,
            serialized_options=_b(
                '\202\323\344\223\002a"\\/v1/{name=projects/*/locations/*/keyRings/*/cryptoKeys/*/cryptoKeyVersions/*}:asymmetricSign:\001*'
            ),
        ),
        _descriptor.MethodDescriptor(
            name="AsymmetricDecrypt",
            full_name="google.cloud.kms.v1.KeyManagementService.AsymmetricDecrypt",
            index=15,
            containing_service=None,
            input_type=_ASYMMETRICDECRYPTREQUEST,
            output_type=_ASYMMETRICDECRYPTRESPONSE,
            serialized_options=_b(
                '\202\323\344\223\002d"_/v1/{name=projects/*/locations/*/keyRings/*/cryptoKeys/*/cryptoKeyVersions/*}:asymmetricDecrypt:\001*'
            ),
        ),
        _descriptor.MethodDescriptor(
            name="UpdateCryptoKeyPrimaryVersion",
            full_name="google.cloud.kms.v1.KeyManagementService.UpdateCryptoKeyPrimaryVersion",
            index=16,
            containing_service=None,
            input_type=_UPDATECRYPTOKEYPRIMARYVERSIONREQUEST,
            output_type=google_dot_cloud_dot_kms__v1_dot_proto_dot_resources__pb2._CRYPTOKEY,
            serialized_options=_b(
                '\202\323\344\223\002S"N/v1/{name=projects/*/locations/*/keyRings/*/cryptoKeys/*}:updatePrimaryVersion:\001*'
            ),
        ),
        _descriptor.MethodDescriptor(
            name="DestroyCryptoKeyVersion",
            full_name="google.cloud.kms.v1.KeyManagementService.DestroyCryptoKeyVersion",
            index=17,
            containing_service=None,
            input_type=_DESTROYCRYPTOKEYVERSIONREQUEST,
            output_type=google_dot_cloud_dot_kms__v1_dot_proto_dot_resources__pb2._CRYPTOKEYVERSION,
            serialized_options=_b(
                '\202\323\344\223\002Z"U/v1/{name=projects/*/locations/*/keyRings/*/cryptoKeys/*/cryptoKeyVersions/*}:destroy:\001*'
            ),
        ),
        _descriptor.MethodDescriptor(
            name="RestoreCryptoKeyVersion",
            full_name="google.cloud.kms.v1.KeyManagementService.RestoreCryptoKeyVersion",
            index=18,
            containing_service=None,
            input_type=_RESTORECRYPTOKEYVERSIONREQUEST,
            output_type=google_dot_cloud_dot_kms__v1_dot_proto_dot_resources__pb2._CRYPTOKEYVERSION,
            serialized_options=_b(
                '\202\323\344\223\002Z"U/v1/{name=projects/*/locations/*/keyRings/*/cryptoKeys/*/cryptoKeyVersions/*}:restore:\001*'
            ),
        ),
    ],
)
_sym_db.RegisterServiceDescriptor(_KEYMANAGEMENTSERVICE)

DESCRIPTOR.services_by_name["KeyManagementService"] = _KEYMANAGEMENTSERVICE

# @@protoc_insertion_point(module_scope)
