feat: wip network packet encryption
This commit is contained in:
@@ -11,6 +11,7 @@ namespace Engine.Systems.Network;
|
||||
public class LiteNetLibClient : LiteNetLibCommunicatorBase, INetworkCommunicatorClient
|
||||
{
|
||||
private readonly NetDataWriter netDataWriter = new();
|
||||
private readonly NetDataWriter netDataWriterEncrypted = new();
|
||||
|
||||
private CancellationTokenSource? cancellationTokenSource = null;
|
||||
|
||||
@@ -42,7 +43,20 @@ public class LiteNetLibClient : LiteNetLibCommunicatorBase, INetworkCommunicator
|
||||
public INetworkCommunicatorClient SendToServer<T>(T packet, PacketDelivery packetDelivery) where T : class, new()
|
||||
{
|
||||
netDataWriter.Reset();
|
||||
netPacketProcessor.Write(netDataWriter, packet);
|
||||
netDataWriterEncrypted.Reset();
|
||||
|
||||
if (packet is INetworkPacketEncrypted)
|
||||
{
|
||||
netPacketProcessor.Write(netDataWriterEncrypted, packet);
|
||||
byte[] encryptedData = cryptor.Encrypt(netDataWriterEncrypted.CopyData());
|
||||
netDataWriter.Put(true);
|
||||
netDataWriter.PutBytesWithLength(encryptedData);
|
||||
}
|
||||
else
|
||||
{
|
||||
netDataWriter.Put(false);
|
||||
netPacketProcessor.Write(netDataWriter, packet);
|
||||
}
|
||||
|
||||
switch (packetDelivery)
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user