Server outbound processing chain + server messages uuids
This commit is contained in:
@ -88,6 +88,13 @@ func (id *Identity) DecodeToServerMessage(toServerMessage []byte) (*meowlib.ToSe
|
||||
// Outbound processing chain
|
||||
//
|
||||
|
||||
func (id *Identity) BuildSimpleAckResponseMessage(uuidToAck string) (fromServerMessage *meowlib.FromServerMessage, err error) {
|
||||
var msg meowlib.FromServerMessage
|
||||
msg.ServerPublicKey = id.ServerKp.Public
|
||||
msg.UuidAck = uuidToAck
|
||||
return &msg, nil
|
||||
}
|
||||
|
||||
// AsymEncryptMessage prepares a message to send to a specific client contact
|
||||
func (id *Identity) AsymEncryptMessage(ClientPublicKey string, Message []byte) (EncryptedMsg []byte, Signature []byte, err error) {
|
||||
EncryptedMsg, Signature, err = meowlib.AsymEncryptAndSign(ClientPublicKey, id.ServerKp.Private, Message)
|
||||
@ -97,3 +104,15 @@ func (id *Identity) AsymEncryptMessage(ClientPublicKey string, Message []byte) (
|
||||
}
|
||||
return EncryptedMsg, Signature, err
|
||||
}
|
||||
|
||||
func (id *Identity) PackResponseMessage(encryptedMessage []byte, signature []byte) (fromServerMessage []byte, err error) {
|
||||
var pmsg meowlib.PackedServerMessage
|
||||
pmsg.Payload = encryptedMessage
|
||||
pmsg.Signature = signature
|
||||
pmsg.From = id.ServerKp.Public
|
||||
out, err := proto.Marshal(&pmsg)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
return out, nil
|
||||
}
|
||||
|
Reference in New Issue
Block a user