# -*- coding: utf-8 -*-
# Generated by the protocol buffer compiler.  DO NOT EDIT!
# source: grafeas/grafeas_v1/proto/attestation.proto

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 grafeas.grafeas_v1.proto import (
    common_pb2 as grafeas_dot_grafeas__v1_dot_proto_dot_common__pb2,
)


DESCRIPTOR = _descriptor.FileDescriptor(
    name="grafeas/grafeas_v1/proto/attestation.proto",
    package="grafeas.v1",
    syntax="proto3",
    serialized_options=b"\n\rio.grafeas.v1P\001ZFgoogle.golang.org/genproto/googleapis/grafeas/grafeas_v1/proto;grafeas\242\002\003GRA",
    create_key=_descriptor._internal_create_key,
    serialized_pb=b'\n*grafeas/grafeas_v1/proto/attestation.proto\x12\ngrafeas.v1\x1a%grafeas/grafeas_v1/proto/common.proto"f\n\x0f\x41ttestationNote\x12.\n\x04hint\x18\x01 \x01(\x0b\x32 .grafeas.v1.AttestationNote.Hint\x1a#\n\x04Hint\x12\x1b\n\x13human_readable_name\x18\x01 \x01(\t"^\n\x15\x41ttestationOccurrence\x12\x1a\n\x12serialized_payload\x18\x01 \x01(\x0c\x12)\n\nsignatures\x18\x02 \x03(\x0b\x32\x15.grafeas.v1.SignatureB_\n\rio.grafeas.v1P\x01ZFgoogle.golang.org/genproto/googleapis/grafeas/grafeas_v1/proto;grafeas\xa2\x02\x03GRAb\x06proto3',
    dependencies=[grafeas_dot_grafeas__v1_dot_proto_dot_common__pb2.DESCRIPTOR,],
)


_ATTESTATIONNOTE_HINT = _descriptor.Descriptor(
    name="Hint",
    full_name="grafeas.v1.AttestationNote.Hint",
    filename=None,
    file=DESCRIPTOR,
    containing_type=None,
    create_key=_descriptor._internal_create_key,
    fields=[
        _descriptor.FieldDescriptor(
            name="human_readable_name",
            full_name="grafeas.v1.AttestationNote.Hint.human_readable_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,
            create_key=_descriptor._internal_create_key,
        ),
    ],
    extensions=[],
    nested_types=[],
    enum_types=[],
    serialized_options=None,
    is_extendable=False,
    syntax="proto3",
    extension_ranges=[],
    oneofs=[],
    serialized_start=164,
    serialized_end=199,
)

_ATTESTATIONNOTE = _descriptor.Descriptor(
    name="AttestationNote",
    full_name="grafeas.v1.AttestationNote",
    filename=None,
    file=DESCRIPTOR,
    containing_type=None,
    create_key=_descriptor._internal_create_key,
    fields=[
        _descriptor.FieldDescriptor(
            name="hint",
            full_name="grafeas.v1.AttestationNote.hint",
            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,
            create_key=_descriptor._internal_create_key,
        ),
    ],
    extensions=[],
    nested_types=[_ATTESTATIONNOTE_HINT,],
    enum_types=[],
    serialized_options=None,
    is_extendable=False,
    syntax="proto3",
    extension_ranges=[],
    oneofs=[],
    serialized_start=97,
    serialized_end=199,
)


_ATTESTATIONOCCURRENCE = _descriptor.Descriptor(
    name="AttestationOccurrence",
    full_name="grafeas.v1.AttestationOccurrence",
    filename=None,
    file=DESCRIPTOR,
    containing_type=None,
    create_key=_descriptor._internal_create_key,
    fields=[
        _descriptor.FieldDescriptor(
            name="serialized_payload",
            full_name="grafeas.v1.AttestationOccurrence.serialized_payload",
            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,
            create_key=_descriptor._internal_create_key,
        ),
        _descriptor.FieldDescriptor(
            name="signatures",
            full_name="grafeas.v1.AttestationOccurrence.signatures",
            index=1,
            number=2,
            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,
            create_key=_descriptor._internal_create_key,
        ),
    ],
    extensions=[],
    nested_types=[],
    enum_types=[],
    serialized_options=None,
    is_extendable=False,
    syntax="proto3",
    extension_ranges=[],
    oneofs=[],
    serialized_start=201,
    serialized_end=295,
)

_ATTESTATIONNOTE_HINT.containing_type = _ATTESTATIONNOTE
_ATTESTATIONNOTE.fields_by_name["hint"].message_type = _ATTESTATIONNOTE_HINT
_ATTESTATIONOCCURRENCE.fields_by_name[
    "signatures"
].message_type = grafeas_dot_grafeas__v1_dot_proto_dot_common__pb2._SIGNATURE
DESCRIPTOR.message_types_by_name["AttestationNote"] = _ATTESTATIONNOTE
DESCRIPTOR.message_types_by_name["AttestationOccurrence"] = _ATTESTATIONOCCURRENCE
_sym_db.RegisterFileDescriptor(DESCRIPTOR)

AttestationNote = _reflection.GeneratedProtocolMessageType(
    "AttestationNote",
    (_message.Message,),
    {
        "Hint": _reflection.GeneratedProtocolMessageType(
            "Hint",
            (_message.Message,),
            {
                "DESCRIPTOR": _ATTESTATIONNOTE_HINT,
                "__module__": "grafeas.grafeas_v1.proto.attestation_pb2",
                "__doc__": """This submessage provides human-readable hints about the purpose of the
    authority. Because the name of a note acts as its resource reference,
    it is important to disambiguate the canonical name of the Note (which
    might be a UUID for security purposes) from “readable” names more
    suitable for debug output. Note that these hints should not be used to
    look up authorities in security sensitive contexts, such as when
    looking up attestations to verify.
    
    Attributes:
        human_readable_name:
            Required. The human readable name of this attestation
            authority, for example “qa”.
    """,
                # @@protoc_insertion_point(class_scope:grafeas.v1.AttestationNote.Hint)
            },
        ),
        "DESCRIPTOR": _ATTESTATIONNOTE,
        "__module__": "grafeas.grafeas_v1.proto.attestation_pb2",
        "__doc__": """Note kind that represents a logical attestation “role” or “authority”.
  For example, an organization might have one ``Authority`` for “QA” and
  one for “build”. This note is intended to act strictly as a grouping
  mechanism for the attached occurrences (Attestations). This grouping
  mechanism also provides a security boundary, since IAM ACLs gate the
  ability for a principle to attach an occurrence to a given note. It
  also provides a single point of lookup to find all attached
  attestation occurrences, even if they don’t all live in the same
  project.
  
  Attributes:
      hint:
          Hint hints at the purpose of the attestation authority.
  """,
        # @@protoc_insertion_point(class_scope:grafeas.v1.AttestationNote)
    },
)
_sym_db.RegisterMessage(AttestationNote)
_sym_db.RegisterMessage(AttestationNote.Hint)

AttestationOccurrence = _reflection.GeneratedProtocolMessageType(
    "AttestationOccurrence",
    (_message.Message,),
    {
        "DESCRIPTOR": _ATTESTATIONOCCURRENCE,
        "__module__": "grafeas.grafeas_v1.proto.attestation_pb2",
        "__doc__": """Occurrence that represents a single “attestation”. The authenticity of
  an attestation can be verified using the attached signature. If the
  verifier trusts the public key of the signer, then verifying the
  signature is sufficient to establish trust. In this circumstance, the
  authority to which this attestation is attached is primarily useful
  for lookup (how to find this attestation if you already know the
  authority and artifact to be verified) and intent (for which authority
  this attestation was intended to sign.
  
  Attributes:
      serialized_payload:
          Required. The serialized payload that is verified by one or
          more ``signatures``.
      signatures:
          One or more signatures over ``serialized_payload``. Verifier
          implementations should consider this attestation message
          verified if at least one ``signature`` verifies
          ``serialized_payload``. See ``Signature`` in common.proto for
          more details on signature structure and verification.
  """,
        # @@protoc_insertion_point(class_scope:grafeas.v1.AttestationOccurrence)
    },
)
_sym_db.RegisterMessage(AttestationOccurrence)


DESCRIPTOR._options = None
# @@protoc_insertion_point(module_scope)
