ceremonyclient/node/protobufs/channel.pb.go
2023-09-03 18:47:09 -05:00

1097 lines
43 KiB
Go
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
// protoc-gen-go v1.30.0
// protoc v3.21.12
// source: channel.proto
package protobufs
import (
protoreflect "google.golang.org/protobuf/reflect/protoreflect"
protoimpl "google.golang.org/protobuf/runtime/protoimpl"
reflect "reflect"
sync "sync"
)
const (
// Verify that this generated code is sufficiently up-to-date.
_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
// Verify that runtime/protoimpl is sufficiently up-to-date.
_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
)
// Describes a general channel envelope for a message.
type P2PChannelEnvelope struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// A general protocol identifier as a uint32 this is expected to rarely
// iterate, and should be uniquely identifying both protocol and version.
// Pragmatically speaking, this implies that the least significant byte
// specifies version (which should iterate most minimally), and the three most
// significant bytes should specify protocol. Recipients SHOULD ignore
// messages with incompatible protocol identifiers, but also SHOULD warn on
// identifiers with versions higher than the supported protocol. A large
// number of unsupported protocol messages may indicate spam/some other
// attack, whereas a large number of unsupported protocol versions may
// indicate an out of date client, respective to which side is the maximum of
// the version number.
ProtocolIdentifier uint32 `protobuf:"varint,1,opt,name=protocol_identifier,json=protocolIdentifier,proto3" json:"protocol_identifier,omitempty"`
// The encrypted message header. Message header encryption is mandatory
// P2P channels in some cases pre-empt the mixnet and leaky information from
// unencrypted message headers could de-anonymize the recipient. It is thus
// also mandatory at the protocol implementation level that header sizes are
// consistent within a protocol so as to not leak metadata. An example of this
// is in Double and Triple-Ratchet, where the sequence identifiers MUST be
// encoded as fixed-length integers, as variable encoding can indicate a
// message being in the first 256, 65,536, etc. if an exchange is highly
// asymmetrical in sends/receives. This is especially critical in long
// running protocols with a need for fixed length messages (see message_body
// notes).
MessageHeader *MessageCiphertext `protobuf:"bytes,2,opt,name=message_header,json=messageHeader,proto3" json:"message_header,omitempty"`
// The encrypted message body. Message bodies are variable length ciphertext
// could range widely, however if this metadata is pertinent to determining
// protocol state, such as knowing what round an encapsulated protocol is in,
// or potentially what might be transferred over the protocol, protocol
// implementers SHOULD utilize chunking and send fixed length messages.
// Additionally, if rounds themselves are highly asymmetric or have
// long-standing processing times that could dangerously leak information of
// round state, implementers SHOULD defer protocol use to leverage the mixnet.
// If this is not feasible, the implementation details are left up to the
// exercise of the protocol author.
MessageBody *MessageCiphertext `protobuf:"bytes,3,opt,name=message_body,json=messageBody,proto3" json:"message_body,omitempty"`
}
func (x *P2PChannelEnvelope) Reset() {
*x = P2PChannelEnvelope{}
if protoimpl.UnsafeEnabled {
mi := &file_channel_proto_msgTypes[0]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *P2PChannelEnvelope) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*P2PChannelEnvelope) ProtoMessage() {}
func (x *P2PChannelEnvelope) ProtoReflect() protoreflect.Message {
mi := &file_channel_proto_msgTypes[0]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use P2PChannelEnvelope.ProtoReflect.Descriptor instead.
func (*P2PChannelEnvelope) Descriptor() ([]byte, []int) {
return file_channel_proto_rawDescGZIP(), []int{0}
}
func (x *P2PChannelEnvelope) GetProtocolIdentifier() uint32 {
if x != nil {
return x.ProtocolIdentifier
}
return 0
}
func (x *P2PChannelEnvelope) GetMessageHeader() *MessageCiphertext {
if x != nil {
return x.MessageHeader
}
return nil
}
func (x *P2PChannelEnvelope) GetMessageBody() *MessageCiphertext {
if x != nil {
return x.MessageBody
}
return nil
}
// Describes a general ciphertext payload.
type MessageCiphertext struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// The intialization vector used for encryption. While cipher specific,
// typically this should be a unique value for every ciphertext. If this is
// not the case for a protocol where it should be, this SHOULD be considered
// an invalid message and warned, as it could either indicate compromise,
// or a faulty cryptographic implementation such as a faulty PKCS#11
// implementation that has a code path to handle HSM vendors which mandate
// zeroed IVs before passing into encryption methods, as they will update the
// IV within the HSM through hardware-supplied entropy.
InitializationVector []byte `protobuf:"bytes,1,opt,name=initialization_vector,json=initializationVector,proto3" json:"initialization_vector,omitempty"`
// The raw ciphertext byte string. This will be cipher specific, however some
// general attributes are expected to be followed. If there is a common
// layout expected, such as AES-GCM having the GCM tag appended to the
// ciphertext, please follow the common layout.
Ciphertext []byte `protobuf:"bytes,2,opt,name=ciphertext,proto3" json:"ciphertext,omitempty"`
// The associated data byte string, if available. This will be highly protocol
// specific, but SHOULD NOT leak metadata.
AssociatedData []byte `protobuf:"bytes,3,opt,name=associated_data,json=associatedData,proto3" json:"associated_data,omitempty"`
}
func (x *MessageCiphertext) Reset() {
*x = MessageCiphertext{}
if protoimpl.UnsafeEnabled {
mi := &file_channel_proto_msgTypes[1]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *MessageCiphertext) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*MessageCiphertext) ProtoMessage() {}
func (x *MessageCiphertext) ProtoReflect() protoreflect.Message {
mi := &file_channel_proto_msgTypes[1]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use MessageCiphertext.ProtoReflect.Descriptor instead.
func (*MessageCiphertext) Descriptor() ([]byte, []int) {
return file_channel_proto_rawDescGZIP(), []int{1}
}
func (x *MessageCiphertext) GetInitializationVector() []byte {
if x != nil {
return x.InitializationVector
}
return nil
}
func (x *MessageCiphertext) GetCiphertext() []byte {
if x != nil {
return x.Ciphertext
}
return nil
}
func (x *MessageCiphertext) GetAssociatedData() []byte {
if x != nil {
return x.AssociatedData
}
return nil
}
// Describes the announcement of a new proving key.
type ProvingKeyAnnouncement struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// The commitment to a Schnorr proof of the Identity Key. The commitment is
// produced by taking a hash of the C and S components of the proof.
IdentityCommitment []byte `protobuf:"bytes,1,opt,name=identity_commitment,json=identityCommitment,proto3" json:"identity_commitment,omitempty"`
// The commitment to a Schnorr proof of the Signed Pre Key. The commitment is
// produced by taking a hash of the C and S components of the proof.
PrekeyCommitment []byte `protobuf:"bytes,2,opt,name=prekey_commitment,json=prekeyCommitment,proto3" json:"prekey_commitment,omitempty"`
// Types that are assignable to ProvingKeySignature:
//
// *ProvingKeyAnnouncement_ProvingKeySignatureEd448
ProvingKeySignature isProvingKeyAnnouncement_ProvingKeySignature `protobuf_oneof:"proving_key_signature"`
}
func (x *ProvingKeyAnnouncement) Reset() {
*x = ProvingKeyAnnouncement{}
if protoimpl.UnsafeEnabled {
mi := &file_channel_proto_msgTypes[2]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *ProvingKeyAnnouncement) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*ProvingKeyAnnouncement) ProtoMessage() {}
func (x *ProvingKeyAnnouncement) ProtoReflect() protoreflect.Message {
mi := &file_channel_proto_msgTypes[2]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use ProvingKeyAnnouncement.ProtoReflect.Descriptor instead.
func (*ProvingKeyAnnouncement) Descriptor() ([]byte, []int) {
return file_channel_proto_rawDescGZIP(), []int{2}
}
func (x *ProvingKeyAnnouncement) GetIdentityCommitment() []byte {
if x != nil {
return x.IdentityCommitment
}
return nil
}
func (x *ProvingKeyAnnouncement) GetPrekeyCommitment() []byte {
if x != nil {
return x.PrekeyCommitment
}
return nil
}
func (m *ProvingKeyAnnouncement) GetProvingKeySignature() isProvingKeyAnnouncement_ProvingKeySignature {
if m != nil {
return m.ProvingKeySignature
}
return nil
}
func (x *ProvingKeyAnnouncement) GetProvingKeySignatureEd448() *Ed448Signature {
if x, ok := x.GetProvingKeySignature().(*ProvingKeyAnnouncement_ProvingKeySignatureEd448); ok {
return x.ProvingKeySignatureEd448
}
return nil
}
type isProvingKeyAnnouncement_ProvingKeySignature interface {
isProvingKeyAnnouncement_ProvingKeySignature()
}
type ProvingKeyAnnouncement_ProvingKeySignatureEd448 struct {
ProvingKeySignatureEd448 *Ed448Signature `protobuf:"bytes,3,opt,name=proving_key_signature_ed448,json=provingKeySignatureEd448,proto3,oneof"`
}
func (*ProvingKeyAnnouncement_ProvingKeySignatureEd448) isProvingKeyAnnouncement_ProvingKeySignature() {
}
// Represents a request for a proving key.
type ProvingKeyRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
ProvingKeyBytes []byte `protobuf:"bytes,1,opt,name=proving_key_bytes,json=provingKeyBytes,proto3" json:"proving_key_bytes,omitempty"`
}
func (x *ProvingKeyRequest) Reset() {
*x = ProvingKeyRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_channel_proto_msgTypes[3]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *ProvingKeyRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*ProvingKeyRequest) ProtoMessage() {}
func (x *ProvingKeyRequest) ProtoReflect() protoreflect.Message {
mi := &file_channel_proto_msgTypes[3]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use ProvingKeyRequest.ProtoReflect.Descriptor instead.
func (*ProvingKeyRequest) Descriptor() ([]byte, []int) {
return file_channel_proto_rawDescGZIP(), []int{3}
}
func (x *ProvingKeyRequest) GetProvingKeyBytes() []byte {
if x != nil {
return x.ProvingKeyBytes
}
return nil
}
// Describes the aggregation of inclusion commitments for a given clock frame
type InclusionAggregateProof struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// The filter in which the inclusion proof was produced.
Filter []byte `protobuf:"bytes,1,opt,name=filter,proto3" json:"filter,omitempty"`
// The frame number in which the inclusion proof was added.
FrameNumber uint64 `protobuf:"varint,2,opt,name=frame_number,json=frameNumber,proto3" json:"frame_number,omitempty"`
// The collection of inclusion commitments, in order.
InclusionCommitments []*InclusionCommitment `protobuf:"bytes,3,rep,name=inclusion_commitments,json=inclusionCommitments,proto3" json:"inclusion_commitments,omitempty"`
// The raw serialized proof, mirroring the type of commitment scheme used
// within the inclusion proofs.
Proof []byte `protobuf:"bytes,4,opt,name=proof,proto3" json:"proof,omitempty"`
}
func (x *InclusionAggregateProof) Reset() {
*x = InclusionAggregateProof{}
if protoimpl.UnsafeEnabled {
mi := &file_channel_proto_msgTypes[4]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *InclusionAggregateProof) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*InclusionAggregateProof) ProtoMessage() {}
func (x *InclusionAggregateProof) ProtoReflect() protoreflect.Message {
mi := &file_channel_proto_msgTypes[4]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use InclusionAggregateProof.ProtoReflect.Descriptor instead.
func (*InclusionAggregateProof) Descriptor() ([]byte, []int) {
return file_channel_proto_rawDescGZIP(), []int{4}
}
func (x *InclusionAggregateProof) GetFilter() []byte {
if x != nil {
return x.Filter
}
return nil
}
func (x *InclusionAggregateProof) GetFrameNumber() uint64 {
if x != nil {
return x.FrameNumber
}
return 0
}
func (x *InclusionAggregateProof) GetInclusionCommitments() []*InclusionCommitment {
if x != nil {
return x.InclusionCommitments
}
return nil
}
func (x *InclusionAggregateProof) GetProof() []byte {
if x != nil {
return x.Proof
}
return nil
}
// Describes the commitment of a data's inclusion in a given clock frame
type InclusionCommitment struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// The filter in which the inclusion aggregate proof was produced.
Filter []byte `protobuf:"bytes,1,opt,name=filter,proto3" json:"filter,omitempty"`
// The frame number in which the inclusion aggregate proof was added.
FrameNumber uint64 `protobuf:"varint,2,opt,name=frame_number,json=frameNumber,proto3" json:"frame_number,omitempty"`
// The position of the data in the proof.
Position uint32 `protobuf:"varint,3,opt,name=position,proto3" json:"position,omitempty"`
// The specific type url represented by the data.
TypeUrl string `protobuf:"bytes,4,opt,name=type_url,json=typeUrl,proto3" json:"type_url,omitempty"`
// The raw serialized data as incorporated into the inclusion proof. Due to
// the non-deterministic nature of protobuf serialization, this data is an
// opaque binary string so that inclusion proofs can be accurately assessed
// between various node implementations, and retain forwards-compatibility
// with additional properties in future revisions to types.
Data []byte `protobuf:"bytes,5,opt,name=data,proto3" json:"data,omitempty"`
// The raw serialized commitment. Similar to data, this commitment data is an
// opaque binary string so that future commitment types can be added without
// having to break the underlying inclusion structure.
Commitment []byte `protobuf:"bytes,6,opt,name=commitment,proto3" json:"commitment,omitempty"`
}
func (x *InclusionCommitment) Reset() {
*x = InclusionCommitment{}
if protoimpl.UnsafeEnabled {
mi := &file_channel_proto_msgTypes[5]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *InclusionCommitment) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*InclusionCommitment) ProtoMessage() {}
func (x *InclusionCommitment) ProtoReflect() protoreflect.Message {
mi := &file_channel_proto_msgTypes[5]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use InclusionCommitment.ProtoReflect.Descriptor instead.
func (*InclusionCommitment) Descriptor() ([]byte, []int) {
return file_channel_proto_rawDescGZIP(), []int{5}
}
func (x *InclusionCommitment) GetFilter() []byte {
if x != nil {
return x.Filter
}
return nil
}
func (x *InclusionCommitment) GetFrameNumber() uint64 {
if x != nil {
return x.FrameNumber
}
return 0
}
func (x *InclusionCommitment) GetPosition() uint32 {
if x != nil {
return x.Position
}
return 0
}
func (x *InclusionCommitment) GetTypeUrl() string {
if x != nil {
return x.TypeUrl
}
return ""
}
func (x *InclusionCommitment) GetData() []byte {
if x != nil {
return x.Data
}
return nil
}
func (x *InclusionCommitment) GetCommitment() []byte {
if x != nil {
return x.Commitment
}
return nil
}
// Describes the announcement of both an identity key and signed pre key. This
// is expected to be used for the initial announcement of a key bundle, and
// subsequent full revocations if identity key and signed pre keys are both
// suspected of/known to be compromised. Signatures under KeyBundleAnnouncement
// are expected to be cross-signed, such that the signature on the identity key
// is produced through the prover key, the signature on the signed pre key is
// produced through the identity key. ProvingKeyAnnouncements may be repeated
// whenever a key bundle update is expected only the first proving key
// announcement is retained in inclusion proofs, but the announcements
// necessarily are required for key bundle updates, as they provide a commitment
// to the updated keys' Schnorr proofs. An updated KeyBundleAnnouncement must
// be captured in an inclusion proof before it may be used for communication
// channels, and may only be used in communication channels once a lobby has
// opened _after_ the inclusion proof. If a lobby is open during the time the
// inclusion proof has been created, the announcement is not yet considered
// valid.
type KeyBundleAnnouncement struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
IdentityKey *IdentityKey `protobuf:"bytes,1,opt,name=identity_key,json=identityKey,proto3" json:"identity_key,omitempty"`
SignedPreKey *SignedPreKey `protobuf:"bytes,2,opt,name=signed_pre_key,json=signedPreKey,proto3" json:"signed_pre_key,omitempty"`
ProvingKeyBytes []byte `protobuf:"bytes,3,opt,name=proving_key_bytes,json=provingKeyBytes,proto3" json:"proving_key_bytes,omitempty"`
}
func (x *KeyBundleAnnouncement) Reset() {
*x = KeyBundleAnnouncement{}
if protoimpl.UnsafeEnabled {
mi := &file_channel_proto_msgTypes[6]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *KeyBundleAnnouncement) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*KeyBundleAnnouncement) ProtoMessage() {}
func (x *KeyBundleAnnouncement) ProtoReflect() protoreflect.Message {
mi := &file_channel_proto_msgTypes[6]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use KeyBundleAnnouncement.ProtoReflect.Descriptor instead.
func (*KeyBundleAnnouncement) Descriptor() ([]byte, []int) {
return file_channel_proto_rawDescGZIP(), []int{6}
}
func (x *KeyBundleAnnouncement) GetIdentityKey() *IdentityKey {
if x != nil {
return x.IdentityKey
}
return nil
}
func (x *KeyBundleAnnouncement) GetSignedPreKey() *SignedPreKey {
if x != nil {
return x.SignedPreKey
}
return nil
}
func (x *KeyBundleAnnouncement) GetProvingKeyBytes() []byte {
if x != nil {
return x.ProvingKeyBytes
}
return nil
}
// Describes the Identity Key and corresponding Schnorr proof. Schnorr proofs
// are expected to mirror the EC parameters of the proving and identity key. If
// they do not, validation will fail.
type IdentityKey struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// The C component of the Schnorr proof, serialized as big endian.
Challenge []byte `protobuf:"bytes,1,opt,name=challenge,proto3" json:"challenge,omitempty"`
// The S component of the Schnorr proof, serialized as big endian.
Response []byte `protobuf:"bytes,2,opt,name=response,proto3" json:"response,omitempty"`
// The Statement component of the Schnorr proof, serialized as an (compressed,
// if possible) affine representation of the point.
Statement []byte `protobuf:"bytes,3,opt,name=statement,proto3" json:"statement,omitempty"`
// Types that are assignable to IdentityKeySignature:
//
// *IdentityKey_PublicKeySignatureEd448
IdentityKeySignature isIdentityKey_IdentityKeySignature `protobuf_oneof:"identity_key_signature"`
}
func (x *IdentityKey) Reset() {
*x = IdentityKey{}
if protoimpl.UnsafeEnabled {
mi := &file_channel_proto_msgTypes[7]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *IdentityKey) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*IdentityKey) ProtoMessage() {}
func (x *IdentityKey) ProtoReflect() protoreflect.Message {
mi := &file_channel_proto_msgTypes[7]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use IdentityKey.ProtoReflect.Descriptor instead.
func (*IdentityKey) Descriptor() ([]byte, []int) {
return file_channel_proto_rawDescGZIP(), []int{7}
}
func (x *IdentityKey) GetChallenge() []byte {
if x != nil {
return x.Challenge
}
return nil
}
func (x *IdentityKey) GetResponse() []byte {
if x != nil {
return x.Response
}
return nil
}
func (x *IdentityKey) GetStatement() []byte {
if x != nil {
return x.Statement
}
return nil
}
func (m *IdentityKey) GetIdentityKeySignature() isIdentityKey_IdentityKeySignature {
if m != nil {
return m.IdentityKeySignature
}
return nil
}
func (x *IdentityKey) GetPublicKeySignatureEd448() *Ed448Signature {
if x, ok := x.GetIdentityKeySignature().(*IdentityKey_PublicKeySignatureEd448); ok {
return x.PublicKeySignatureEd448
}
return nil
}
type isIdentityKey_IdentityKeySignature interface {
isIdentityKey_IdentityKeySignature()
}
type IdentityKey_PublicKeySignatureEd448 struct {
PublicKeySignatureEd448 *Ed448Signature `protobuf:"bytes,4,opt,name=public_key_signature_ed448,json=publicKeySignatureEd448,proto3,oneof"`
}
func (*IdentityKey_PublicKeySignatureEd448) isIdentityKey_IdentityKeySignature() {}
// Describes the Signed Pre Key and corresponding Schnorr proof. Schnorr proofs
// are expected to mirror the EC parameters of the identity and signed pre key.
// If they do not, validation will fail.
type SignedPreKey struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// The C component of the Schnorr proof, serialized as big endian.
Challenge []byte `protobuf:"bytes,1,opt,name=challenge,proto3" json:"challenge,omitempty"`
// The S component of the Schnorr proof, serialized as big endian.
Response []byte `protobuf:"bytes,2,opt,name=response,proto3" json:"response,omitempty"`
// The Statement component of the Schnorr proof, serialized as an (compressed,
// if possible) affine representation of the point.
Statement []byte `protobuf:"bytes,3,opt,name=statement,proto3" json:"statement,omitempty"`
// Types that are assignable to SignedPreKeySignature:
//
// *SignedPreKey_PublicKeySignatureEd448
SignedPreKeySignature isSignedPreKey_SignedPreKeySignature `protobuf_oneof:"signed_pre_key_signature"`
}
func (x *SignedPreKey) Reset() {
*x = SignedPreKey{}
if protoimpl.UnsafeEnabled {
mi := &file_channel_proto_msgTypes[8]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *SignedPreKey) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*SignedPreKey) ProtoMessage() {}
func (x *SignedPreKey) ProtoReflect() protoreflect.Message {
mi := &file_channel_proto_msgTypes[8]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use SignedPreKey.ProtoReflect.Descriptor instead.
func (*SignedPreKey) Descriptor() ([]byte, []int) {
return file_channel_proto_rawDescGZIP(), []int{8}
}
func (x *SignedPreKey) GetChallenge() []byte {
if x != nil {
return x.Challenge
}
return nil
}
func (x *SignedPreKey) GetResponse() []byte {
if x != nil {
return x.Response
}
return nil
}
func (x *SignedPreKey) GetStatement() []byte {
if x != nil {
return x.Statement
}
return nil
}
func (m *SignedPreKey) GetSignedPreKeySignature() isSignedPreKey_SignedPreKeySignature {
if m != nil {
return m.SignedPreKeySignature
}
return nil
}
func (x *SignedPreKey) GetPublicKeySignatureEd448() *Ed448Signature {
if x, ok := x.GetSignedPreKeySignature().(*SignedPreKey_PublicKeySignatureEd448); ok {
return x.PublicKeySignatureEd448
}
return nil
}
type isSignedPreKey_SignedPreKeySignature interface {
isSignedPreKey_SignedPreKeySignature()
}
type SignedPreKey_PublicKeySignatureEd448 struct {
PublicKeySignatureEd448 *Ed448Signature `protobuf:"bytes,4,opt,name=public_key_signature_ed448,json=publicKeySignatureEd448,proto3,oneof"`
}
func (*SignedPreKey_PublicKeySignatureEd448) isSignedPreKey_SignedPreKeySignature() {}
var File_channel_proto protoreflect.FileDescriptor
var file_channel_proto_rawDesc = []byte{
0x0a, 0x0d, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12,
0x1a, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65,
0x2e, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x2e, 0x70, 0x62, 0x1a, 0x0a, 0x6b, 0x65, 0x79,
0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xed, 0x01, 0x0a, 0x12, 0x50, 0x32, 0x50, 0x43,
0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x45, 0x6e, 0x76, 0x65, 0x6c, 0x6f, 0x70, 0x65, 0x12, 0x2f,
0x0a, 0x13, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x5f, 0x69, 0x64, 0x65, 0x6e, 0x74,
0x69, 0x66, 0x69, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x12, 0x70, 0x72, 0x6f,
0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, 0x12,
0x54, 0x0a, 0x0e, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x5f, 0x68, 0x65, 0x61, 0x64, 0x65,
0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62,
0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65,
0x6c, 0x2e, 0x70, 0x62, 0x2e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x43, 0x69, 0x70, 0x68,
0x65, 0x72, 0x74, 0x65, 0x78, 0x74, 0x52, 0x0d, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x48,
0x65, 0x61, 0x64, 0x65, 0x72, 0x12, 0x50, 0x0a, 0x0c, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65,
0x5f, 0x62, 0x6f, 0x64, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x71, 0x75,
0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x63, 0x68,
0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x2e, 0x70, 0x62, 0x2e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65,
0x43, 0x69, 0x70, 0x68, 0x65, 0x72, 0x74, 0x65, 0x78, 0x74, 0x52, 0x0b, 0x6d, 0x65, 0x73, 0x73,
0x61, 0x67, 0x65, 0x42, 0x6f, 0x64, 0x79, 0x22, 0x91, 0x01, 0x0a, 0x11, 0x4d, 0x65, 0x73, 0x73,
0x61, 0x67, 0x65, 0x43, 0x69, 0x70, 0x68, 0x65, 0x72, 0x74, 0x65, 0x78, 0x74, 0x12, 0x33, 0x0a,
0x15, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x6c, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f,
0x76, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x14, 0x69, 0x6e,
0x69, 0x74, 0x69, 0x61, 0x6c, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x56, 0x65, 0x63, 0x74,
0x6f, 0x72, 0x12, 0x1e, 0x0a, 0x0a, 0x63, 0x69, 0x70, 0x68, 0x65, 0x72, 0x74, 0x65, 0x78, 0x74,
0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0a, 0x63, 0x69, 0x70, 0x68, 0x65, 0x72, 0x74, 0x65,
0x78, 0x74, 0x12, 0x27, 0x0a, 0x0f, 0x61, 0x73, 0x73, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x65, 0x64,
0x5f, 0x64, 0x61, 0x74, 0x61, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0e, 0x61, 0x73, 0x73,
0x6f, 0x63, 0x69, 0x61, 0x74, 0x65, 0x64, 0x44, 0x61, 0x74, 0x61, 0x22, 0xf9, 0x01, 0x0a, 0x16,
0x50, 0x72, 0x6f, 0x76, 0x69, 0x6e, 0x67, 0x4b, 0x65, 0x79, 0x41, 0x6e, 0x6e, 0x6f, 0x75, 0x6e,
0x63, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x2f, 0x0a, 0x13, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69,
0x74, 0x79, 0x5f, 0x63, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20,
0x01, 0x28, 0x0c, 0x52, 0x12, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x43, 0x6f, 0x6d,
0x6d, 0x69, 0x74, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x2b, 0x0a, 0x11, 0x70, 0x72, 0x65, 0x6b, 0x65,
0x79, 0x5f, 0x63, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01,
0x28, 0x0c, 0x52, 0x10, 0x70, 0x72, 0x65, 0x6b, 0x65, 0x79, 0x43, 0x6f, 0x6d, 0x6d, 0x69, 0x74,
0x6d, 0x65, 0x6e, 0x74, 0x12, 0x68, 0x0a, 0x1b, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x6e, 0x67, 0x5f,
0x6b, 0x65, 0x79, 0x5f, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x5f, 0x65, 0x64,
0x34, 0x34, 0x38, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x71, 0x75, 0x69, 0x6c,
0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6b, 0x65, 0x79, 0x73,
0x2e, 0x70, 0x62, 0x2e, 0x45, 0x64, 0x34, 0x34, 0x38, 0x53, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75,
0x72, 0x65, 0x48, 0x00, 0x52, 0x18, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x6e, 0x67, 0x4b, 0x65, 0x79,
0x53, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x45, 0x64, 0x34, 0x34, 0x38, 0x42, 0x17,
0x0a, 0x15, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x6e, 0x67, 0x5f, 0x6b, 0x65, 0x79, 0x5f, 0x73, 0x69,
0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x22, 0x3f, 0x0a, 0x11, 0x50, 0x72, 0x6f, 0x76, 0x69,
0x6e, 0x67, 0x4b, 0x65, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x2a, 0x0a, 0x11,
0x70, 0x72, 0x6f, 0x76, 0x69, 0x6e, 0x67, 0x5f, 0x6b, 0x65, 0x79, 0x5f, 0x62, 0x79, 0x74, 0x65,
0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0f, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x6e, 0x67,
0x4b, 0x65, 0x79, 0x42, 0x79, 0x74, 0x65, 0x73, 0x22, 0xd0, 0x01, 0x0a, 0x17, 0x49, 0x6e, 0x63,
0x6c, 0x75, 0x73, 0x69, 0x6f, 0x6e, 0x41, 0x67, 0x67, 0x72, 0x65, 0x67, 0x61, 0x74, 0x65, 0x50,
0x72, 0x6f, 0x6f, 0x66, 0x12, 0x16, 0x0a, 0x06, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x18, 0x01,
0x20, 0x01, 0x28, 0x0c, 0x52, 0x06, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x12, 0x21, 0x0a, 0x0c,
0x66, 0x72, 0x61, 0x6d, 0x65, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01,
0x28, 0x04, 0x52, 0x0b, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12,
0x64, 0x0a, 0x15, 0x69, 0x6e, 0x63, 0x6c, 0x75, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x63, 0x6f, 0x6d,
0x6d, 0x69, 0x74, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2f,
0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65,
0x2e, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x2e, 0x70, 0x62, 0x2e, 0x49, 0x6e, 0x63, 0x6c,
0x75, 0x73, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x6d, 0x65, 0x6e, 0x74, 0x52,
0x14, 0x69, 0x6e, 0x63, 0x6c, 0x75, 0x73, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6d, 0x6d, 0x69, 0x74,
0x6d, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x70, 0x72, 0x6f, 0x6f, 0x66, 0x18, 0x04,
0x20, 0x01, 0x28, 0x0c, 0x52, 0x05, 0x70, 0x72, 0x6f, 0x6f, 0x66, 0x22, 0xbb, 0x01, 0x0a, 0x13,
0x49, 0x6e, 0x63, 0x6c, 0x75, 0x73, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x6d,
0x65, 0x6e, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x18, 0x01, 0x20,
0x01, 0x28, 0x0c, 0x52, 0x06, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x12, 0x21, 0x0a, 0x0c, 0x66,
0x72, 0x61, 0x6d, 0x65, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28,
0x04, 0x52, 0x0b, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x1a,
0x0a, 0x08, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d,
0x52, 0x08, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x19, 0x0a, 0x08, 0x74, 0x79,
0x70, 0x65, 0x5f, 0x75, 0x72, 0x6c, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x74, 0x79,
0x70, 0x65, 0x55, 0x72, 0x6c, 0x12, 0x12, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x05, 0x20,
0x01, 0x28, 0x0c, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x12, 0x1e, 0x0a, 0x0a, 0x63, 0x6f, 0x6d,
0x6d, 0x69, 0x74, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0a, 0x63,
0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x6d, 0x65, 0x6e, 0x74, 0x22, 0xdf, 0x01, 0x0a, 0x15, 0x4b, 0x65,
0x79, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x41, 0x6e, 0x6e, 0x6f, 0x75, 0x6e, 0x63, 0x65, 0x6d,
0x65, 0x6e, 0x74, 0x12, 0x4a, 0x0a, 0x0c, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x5f,
0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x71, 0x75, 0x69, 0x6c,
0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x63, 0x68, 0x61, 0x6e,
0x6e, 0x65, 0x6c, 0x2e, 0x70, 0x62, 0x2e, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x4b,
0x65, 0x79, 0x52, 0x0b, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x4b, 0x65, 0x79, 0x12,
0x4e, 0x0a, 0x0e, 0x73, 0x69, 0x67, 0x6e, 0x65, 0x64, 0x5f, 0x70, 0x72, 0x65, 0x5f, 0x6b, 0x65,
0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62,
0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65,
0x6c, 0x2e, 0x70, 0x62, 0x2e, 0x53, 0x69, 0x67, 0x6e, 0x65, 0x64, 0x50, 0x72, 0x65, 0x4b, 0x65,
0x79, 0x52, 0x0c, 0x73, 0x69, 0x67, 0x6e, 0x65, 0x64, 0x50, 0x72, 0x65, 0x4b, 0x65, 0x79, 0x12,
0x2a, 0x0a, 0x11, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x6e, 0x67, 0x5f, 0x6b, 0x65, 0x79, 0x5f, 0x62,
0x79, 0x74, 0x65, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0f, 0x70, 0x72, 0x6f, 0x76,
0x69, 0x6e, 0x67, 0x4b, 0x65, 0x79, 0x42, 0x79, 0x74, 0x65, 0x73, 0x22, 0xe7, 0x01, 0x0a, 0x0b,
0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x4b, 0x65, 0x79, 0x12, 0x1c, 0x0a, 0x09, 0x63,
0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x09,
0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x72, 0x65, 0x73,
0x70, 0x6f, 0x6e, 0x73, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x08, 0x72, 0x65, 0x73,
0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x73, 0x74, 0x61, 0x74, 0x65, 0x6d, 0x65,
0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x09, 0x73, 0x74, 0x61, 0x74, 0x65, 0x6d,
0x65, 0x6e, 0x74, 0x12, 0x66, 0x0a, 0x1a, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x5f, 0x6b, 0x65,
0x79, 0x5f, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x5f, 0x65, 0x64, 0x34, 0x34,
0x38, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62,
0x72, 0x69, 0x75, 0x6d, 0x2e, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6b, 0x65, 0x79, 0x73, 0x2e, 0x70,
0x62, 0x2e, 0x45, 0x64, 0x34, 0x34, 0x38, 0x53, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65,
0x48, 0x00, 0x52, 0x17, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x4b, 0x65, 0x79, 0x53, 0x69, 0x67,
0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x45, 0x64, 0x34, 0x34, 0x38, 0x42, 0x18, 0x0a, 0x16, 0x69,
0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x5f, 0x6b, 0x65, 0x79, 0x5f, 0x73, 0x69, 0x67, 0x6e,
0x61, 0x74, 0x75, 0x72, 0x65, 0x22, 0xea, 0x01, 0x0a, 0x0c, 0x53, 0x69, 0x67, 0x6e, 0x65, 0x64,
0x50, 0x72, 0x65, 0x4b, 0x65, 0x79, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65,
0x6e, 0x67, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x09, 0x63, 0x68, 0x61, 0x6c, 0x6c,
0x65, 0x6e, 0x67, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x08, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
0x12, 0x1c, 0x0a, 0x09, 0x73, 0x74, 0x61, 0x74, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x03, 0x20,
0x01, 0x28, 0x0c, 0x52, 0x09, 0x73, 0x74, 0x61, 0x74, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x66,
0x0a, 0x1a, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x5f, 0x6b, 0x65, 0x79, 0x5f, 0x73, 0x69, 0x67,
0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x5f, 0x65, 0x64, 0x34, 0x34, 0x38, 0x18, 0x04, 0x20, 0x01,
0x28, 0x0b, 0x32, 0x27, 0x2e, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e,
0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x6b, 0x65, 0x79, 0x73, 0x2e, 0x70, 0x62, 0x2e, 0x45, 0x64, 0x34,
0x34, 0x38, 0x53, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x48, 0x00, 0x52, 0x17, 0x70,
0x75, 0x62, 0x6c, 0x69, 0x63, 0x4b, 0x65, 0x79, 0x53, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72,
0x65, 0x45, 0x64, 0x34, 0x34, 0x38, 0x42, 0x1a, 0x0a, 0x18, 0x73, 0x69, 0x67, 0x6e, 0x65, 0x64,
0x5f, 0x70, 0x72, 0x65, 0x5f, 0x6b, 0x65, 0x79, 0x5f, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75,
0x72, 0x65, 0x42, 0x3a, 0x5a, 0x38, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x2e, 0x71, 0x75, 0x69,
0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x71, 0x75, 0x69, 0x6c,
0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x2f, 0x6d, 0x6f, 0x6e, 0x6f, 0x72, 0x65, 0x70, 0x6f, 0x2f,
0x6e, 0x6f, 0x64, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x73, 0x62, 0x06,
0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
}
var (
file_channel_proto_rawDescOnce sync.Once
file_channel_proto_rawDescData = file_channel_proto_rawDesc
)
func file_channel_proto_rawDescGZIP() []byte {
file_channel_proto_rawDescOnce.Do(func() {
file_channel_proto_rawDescData = protoimpl.X.CompressGZIP(file_channel_proto_rawDescData)
})
return file_channel_proto_rawDescData
}
var file_channel_proto_msgTypes = make([]protoimpl.MessageInfo, 9)
var file_channel_proto_goTypes = []interface{}{
(*P2PChannelEnvelope)(nil), // 0: quilibrium.node.channel.pb.P2PChannelEnvelope
(*MessageCiphertext)(nil), // 1: quilibrium.node.channel.pb.MessageCiphertext
(*ProvingKeyAnnouncement)(nil), // 2: quilibrium.node.channel.pb.ProvingKeyAnnouncement
(*ProvingKeyRequest)(nil), // 3: quilibrium.node.channel.pb.ProvingKeyRequest
(*InclusionAggregateProof)(nil), // 4: quilibrium.node.channel.pb.InclusionAggregateProof
(*InclusionCommitment)(nil), // 5: quilibrium.node.channel.pb.InclusionCommitment
(*KeyBundleAnnouncement)(nil), // 6: quilibrium.node.channel.pb.KeyBundleAnnouncement
(*IdentityKey)(nil), // 7: quilibrium.node.channel.pb.IdentityKey
(*SignedPreKey)(nil), // 8: quilibrium.node.channel.pb.SignedPreKey
(*Ed448Signature)(nil), // 9: quilibrium.node.keys.pb.Ed448Signature
}
var file_channel_proto_depIdxs = []int32{
1, // 0: quilibrium.node.channel.pb.P2PChannelEnvelope.message_header:type_name -> quilibrium.node.channel.pb.MessageCiphertext
1, // 1: quilibrium.node.channel.pb.P2PChannelEnvelope.message_body:type_name -> quilibrium.node.channel.pb.MessageCiphertext
9, // 2: quilibrium.node.channel.pb.ProvingKeyAnnouncement.proving_key_signature_ed448:type_name -> quilibrium.node.keys.pb.Ed448Signature
5, // 3: quilibrium.node.channel.pb.InclusionAggregateProof.inclusion_commitments:type_name -> quilibrium.node.channel.pb.InclusionCommitment
7, // 4: quilibrium.node.channel.pb.KeyBundleAnnouncement.identity_key:type_name -> quilibrium.node.channel.pb.IdentityKey
8, // 5: quilibrium.node.channel.pb.KeyBundleAnnouncement.signed_pre_key:type_name -> quilibrium.node.channel.pb.SignedPreKey
9, // 6: quilibrium.node.channel.pb.IdentityKey.public_key_signature_ed448:type_name -> quilibrium.node.keys.pb.Ed448Signature
9, // 7: quilibrium.node.channel.pb.SignedPreKey.public_key_signature_ed448:type_name -> quilibrium.node.keys.pb.Ed448Signature
8, // [8:8] is the sub-list for method output_type
8, // [8:8] is the sub-list for method input_type
8, // [8:8] is the sub-list for extension type_name
8, // [8:8] is the sub-list for extension extendee
0, // [0:8] is the sub-list for field type_name
}
func init() { file_channel_proto_init() }
func file_channel_proto_init() {
if File_channel_proto != nil {
return
}
file_keys_proto_init()
if !protoimpl.UnsafeEnabled {
file_channel_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*P2PChannelEnvelope); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_channel_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*MessageCiphertext); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_channel_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*ProvingKeyAnnouncement); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_channel_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*ProvingKeyRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_channel_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*InclusionAggregateProof); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_channel_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*InclusionCommitment); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_channel_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*KeyBundleAnnouncement); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_channel_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*IdentityKey); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_channel_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*SignedPreKey); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
}
file_channel_proto_msgTypes[2].OneofWrappers = []interface{}{
(*ProvingKeyAnnouncement_ProvingKeySignatureEd448)(nil),
}
file_channel_proto_msgTypes[7].OneofWrappers = []interface{}{
(*IdentityKey_PublicKeySignatureEd448)(nil),
}
file_channel_proto_msgTypes[8].OneofWrappers = []interface{}{
(*SignedPreKey_PublicKeySignatureEd448)(nil),
}
type x struct{}
out := protoimpl.TypeBuilder{
File: protoimpl.DescBuilder{
GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
RawDescriptor: file_channel_proto_rawDesc,
NumEnums: 0,
NumMessages: 9,
NumExtensions: 0,
NumServices: 0,
},
GoTypes: file_channel_proto_goTypes,
DependencyIndexes: file_channel_proto_depIdxs,
MessageInfos: file_channel_proto_msgTypes,
}.Build()
File_channel_proto = out.File
file_channel_proto_rawDesc = nil
file_channel_proto_goTypes = nil
file_channel_proto_depIdxs = nil
}