// Code generated by protoc-gen-go. DO NOT EDIT.
// source: crypto/sigpb/sigpb.proto

/*
Package sigpb is a generated protocol buffer package.

It is generated from these files:
	crypto/sigpb/sigpb.proto

It has these top-level messages:
	DigitallySigned
*/
package sigpb

import proto "github.com/golang/protobuf/proto"
import fmt "fmt"
import math "math"

// Reference imports to suppress errors if they are not otherwise used.
var _ = proto.Marshal
var _ = fmt.Errorf
var _ = math.Inf

// This is a compile-time assertion to ensure that this generated file
// is compatible with the proto package it is being compiled against.
// A compilation error at this line likely means your copy of the
// proto package needs to be updated.
const _ = proto.ProtoPackageIsVersion2 // please upgrade the proto package

// HashAlgorithm defines the approved methods for object hashing.
//
// Supported hash algorithms. The numbering space is the same as for TLS,
// given in RFC 5246 s7.4.1.4.1 and at:
// http://www.iana.org/assignments/tls-parameters/tls-parameters.xhtml#tls-parameters-18
type DigitallySigned_HashAlgorithm int32

const (
	// No hash algorithm is used.
	DigitallySigned_NONE DigitallySigned_HashAlgorithm = 0
	// SHA256 is used.
	DigitallySigned_SHA256 DigitallySigned_HashAlgorithm = 4
)

var DigitallySigned_HashAlgorithm_name = map[int32]string{
	0: "NONE",
	4: "SHA256",
}
var DigitallySigned_HashAlgorithm_value = map[string]int32{
	"NONE":   0,
	"SHA256": 4,
}

func (x DigitallySigned_HashAlgorithm) String() string {
	return proto.EnumName(DigitallySigned_HashAlgorithm_name, int32(x))
}
func (DigitallySigned_HashAlgorithm) EnumDescriptor() ([]byte, []int) {
	return fileDescriptor0, []int{0, 0}
}

// SignatureAlgorithm defines the algorithm used to sign the object.
//
// Supported signature algorithms. The numbering space is the same as for TLS,
// given in RFC 5246 s7.4.1.4.1 and at:
// http://www.iana.org/assignments/tls-parameters/tls-parameters.xhtml#tls-parameters-16
type DigitallySigned_SignatureAlgorithm int32

const (
	// Anonymous signature scheme.
	DigitallySigned_ANONYMOUS DigitallySigned_SignatureAlgorithm = 0
	// RSA signature scheme.
	DigitallySigned_RSA DigitallySigned_SignatureAlgorithm = 1
	// ECDSA signature scheme.
	DigitallySigned_ECDSA DigitallySigned_SignatureAlgorithm = 3
)

var DigitallySigned_SignatureAlgorithm_name = map[int32]string{
	0: "ANONYMOUS",
	1: "RSA",
	3: "ECDSA",
}
var DigitallySigned_SignatureAlgorithm_value = map[string]int32{
	"ANONYMOUS": 0,
	"RSA":       1,
	"ECDSA":     3,
}

func (x DigitallySigned_SignatureAlgorithm) String() string {
	return proto.EnumName(DigitallySigned_SignatureAlgorithm_name, int32(x))
}
func (DigitallySigned_SignatureAlgorithm) EnumDescriptor() ([]byte, []int) {
	return fileDescriptor0, []int{0, 1}
}

// SignatureCipherSuite defines the set of algorithms used for signing.
type DigitallySigned_SignatureCipherSuite int32

const (
	// Signature and hash algorithm are unknown / not set.
	DigitallySigned_UNKNOWN_CIPHER_SUITE DigitallySigned_SignatureCipherSuite = 0
	// RSA with SHA256.
	DigitallySigned_RSA_SHA256 DigitallySigned_SignatureCipherSuite = 1
	// ECDSA with SHA256.
	DigitallySigned_ECDSA_SHA256 DigitallySigned_SignatureCipherSuite = 2
)

var DigitallySigned_SignatureCipherSuite_name = map[int32]string{
	0: "UNKNOWN_CIPHER_SUITE",
	1: "RSA_SHA256",
	2: "ECDSA_SHA256",
}
var DigitallySigned_SignatureCipherSuite_value = map[string]int32{
	"UNKNOWN_CIPHER_SUITE": 0,
	"RSA_SHA256":           1,
	"ECDSA_SHA256":         2,
}

func (x DigitallySigned_SignatureCipherSuite) String() string {
	return proto.EnumName(DigitallySigned_SignatureCipherSuite_name, int32(x))
}
func (DigitallySigned_SignatureCipherSuite) EnumDescriptor() ([]byte, []int) {
	return fileDescriptor0, []int{0, 2}
}

// Protocol buffer encoding of the TLS DigitallySigned type, from RFC 5246 §4.7.
type DigitallySigned struct {
	// hash_algorithm contains the hash algorithm used.
	// TODO(gdbelvin): deprecate in favor of cipher_suite.
	HashAlgorithm DigitallySigned_HashAlgorithm `protobuf:"varint,1,opt,name=hash_algorithm,json=hashAlgorithm,enum=sigpb.DigitallySigned_HashAlgorithm" json:"hash_algorithm,omitempty"`
	// sig_algorithm contains the signing algorithm used.
	// TODO(gdbelvin): deprecate in favor of cipher_suite.
	SignatureAlgorithm DigitallySigned_SignatureAlgorithm `protobuf:"varint,2,opt,name=signature_algorithm,json=signatureAlgorithm,enum=sigpb.DigitallySigned_SignatureAlgorithm" json:"signature_algorithm,omitempty"`
	// cipher_suite contains the combination of ciphers used for this signature.
	SignatureCipherSuite DigitallySigned_SignatureCipherSuite `protobuf:"varint,4,opt,name=signature_cipher_suite,json=signatureCipherSuite,enum=sigpb.DigitallySigned_SignatureCipherSuite" json:"signature_cipher_suite,omitempty"`
	// signature contains the object signature.
	Signature []byte `protobuf:"bytes,3,opt,name=signature,proto3" json:"signature,omitempty"`
}

func (m *DigitallySigned) Reset()                    { *m = DigitallySigned{} }
func (m *DigitallySigned) String() string            { return proto.CompactTextString(m) }
func (*DigitallySigned) ProtoMessage()               {}
func (*DigitallySigned) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{0} }

func (m *DigitallySigned) GetHashAlgorithm() DigitallySigned_HashAlgorithm {
	if m != nil {
		return m.HashAlgorithm
	}
	return DigitallySigned_NONE
}

func (m *DigitallySigned) GetSignatureAlgorithm() DigitallySigned_SignatureAlgorithm {
	if m != nil {
		return m.SignatureAlgorithm
	}
	return DigitallySigned_ANONYMOUS
}

func (m *DigitallySigned) GetSignatureCipherSuite() DigitallySigned_SignatureCipherSuite {
	if m != nil {
		return m.SignatureCipherSuite
	}
	return DigitallySigned_UNKNOWN_CIPHER_SUITE
}

func (m *DigitallySigned) GetSignature() []byte {
	if m != nil {
		return m.Signature
	}
	return nil
}

func init() {
	proto.RegisterType((*DigitallySigned)(nil), "sigpb.DigitallySigned")
	proto.RegisterEnum("sigpb.DigitallySigned_HashAlgorithm", DigitallySigned_HashAlgorithm_name, DigitallySigned_HashAlgorithm_value)
	proto.RegisterEnum("sigpb.DigitallySigned_SignatureAlgorithm", DigitallySigned_SignatureAlgorithm_name, DigitallySigned_SignatureAlgorithm_value)
	proto.RegisterEnum("sigpb.DigitallySigned_SignatureCipherSuite", DigitallySigned_SignatureCipherSuite_name, DigitallySigned_SignatureCipherSuite_value)
}

func init() { proto.RegisterFile("crypto/sigpb/sigpb.proto", fileDescriptor0) }

var fileDescriptor0 = []byte{
	// 343 bytes of a gzipped FileDescriptorProto
	0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x84, 0x92, 0x41, 0x6b, 0xea, 0x40,
	0x10, 0xc7, 0x8d, 0x51, 0xdf, 0x73, 0x50, 0x5f, 0x98, 0x27, 0x8f, 0x1c, 0xde, 0x41, 0x42, 0x4b,
	0x95, 0x42, 0x02, 0x96, 0xb6, 0xe7, 0x54, 0x05, 0x45, 0x9a, 0x94, 0x6c, 0xa5, 0xd4, 0x4b, 0x88,
	0x36, 0xec, 0x2e, 0x44, 0x37, 0x64, 0xd7, 0x83, 0x9f, 0xba, 0x5f, 0xa1, 0x18, 0x6b, 0xb5, 0xd5,
	0xd2, 0xcb, 0xc2, 0xfc, 0x98, 0xff, 0x6f, 0x76, 0x60, 0xc0, 0x9c, 0x67, 0xeb, 0x54, 0x09, 0x47,
	0x72, 0x9a, 0xce, 0xb6, 0xaf, 0x9d, 0x66, 0x42, 0x09, 0x2c, 0xe7, 0x85, 0xf5, 0xaa, 0xc3, 0x9f,
	0x3e, 0xa7, 0x5c, 0x45, 0x49, 0xb2, 0x26, 0x9c, 0x2e, 0xe3, 0x17, 0x1c, 0x43, 0x83, 0x45, 0x92,
	0x85, 0x51, 0x42, 0x45, 0xc6, 0x15, 0x5b, 0x98, 0x5a, 0x4b, 0x6b, 0x37, 0xba, 0x67, 0xf6, 0x56,
	0xf0, 0xa5, 0xdf, 0x1e, 0x46, 0x92, 0xb9, 0xbb, 0xde, 0xa0, 0xce, 0x0e, 0x4b, 0x9c, 0xc2, 0x5f,
	0xc9, 0xe9, 0x32, 0x52, 0xab, 0x2c, 0x3e, 0x30, 0x16, 0x73, 0x63, 0xe7, 0x1b, 0x23, 0xd9, 0x25,
	0xf6, 0x5a, 0x94, 0x47, 0x0c, 0x23, 0xf8, 0xb7, 0x77, 0xcf, 0x79, 0xca, 0xe2, 0x2c, 0x94, 0x2b,
	0xae, 0x62, 0xb3, 0x94, 0xeb, 0x2f, 0x7f, 0xd2, 0xf7, 0xf2, 0x0c, 0xd9, 0x44, 0x82, 0xa6, 0x3c,
	0x41, 0xf1, 0x3f, 0x54, 0x3f, 0xb8, 0xa9, 0xb7, 0xb4, 0x76, 0x2d, 0xd8, 0x03, 0xeb, 0x1c, 0xea,
	0x9f, 0x96, 0xc7, 0xdf, 0x50, 0xf2, 0x7c, 0x6f, 0x60, 0x14, 0x10, 0xa0, 0x42, 0x86, 0x6e, 0xf7,
	0xfa, 0xc6, 0x28, 0x59, 0xb7, 0x80, 0xc7, 0x1b, 0x61, 0x1d, 0xaa, 0xae, 0xe7, 0x7b, 0xcf, 0xf7,
	0xfe, 0x84, 0x18, 0x05, 0xfc, 0x05, 0x7a, 0x40, 0x5c, 0x43, 0xc3, 0x2a, 0x94, 0x07, 0xbd, 0x3e,
	0x71, 0x0d, 0xdd, 0x0a, 0xa0, 0x79, 0xea, 0xaf, 0x68, 0x42, 0x73, 0xe2, 0x8d, 0x3d, 0xff, 0xc9,
	0x0b, 0x7b, 0xa3, 0x87, 0xe1, 0x20, 0x08, 0xc9, 0x64, 0xf4, 0xb8, 0x19, 0xdb, 0x00, 0x08, 0x88,
	0x1b, 0xbe, 0x8f, 0xd6, 0xd0, 0x80, 0x5a, 0x2e, 0xdb, 0x91, 0xe2, 0x5d, 0x67, 0x7a, 0x41, 0xb9,
	0x62, 0xab, 0x99, 0x3d, 0x17, 0x0b, 0x87, 0x0a, 0x41, 0x93, 0xd8, 0x51, 0x19, 0x4f, 0x12, 0x1e,
	0x2d, 0x9d, 0xc3, 0x7b, 0x99, 0x55, 0xf2, 0x53, 0xb9, 0x7a, 0x0b, 0x00, 0x00, 0xff, 0xff, 0xb7,
	0xca, 0x98, 0x33, 0x46, 0x02, 0x00, 0x00,
}
