Mirror icon indicating copy to clipboard operation
Mirror copied to clipboard

feat: EncryptionTransport native plugin AES-GCM

Open imerr opened this issue 1 year ago • 2 comments

Optional native plugin that takes over the bulk of the runtime work: the encryption and decryption of data. The handshake is still done in C#. Native plugin currently lives here: https://github.com/imerr/RustyMirrorEncryption can be moved into the mirror org if we're happy There is builds for loads of architectures, including: Windows 32/64bit, Linux 32/64bit/ARM, Android, Mac 64bit/ARM, IOS ARM, Android ARM64/ARMv7 I've only tested the windows 64bit build so far.. so good luck! Might need some tweaks to the libs in-editor too (the windows one unity wanted to load the 32bit one) Very much WIP

imerr avatar Mar 06 '24 03:03 imerr

213byte rpc * 50 rpcs per frame * 60 fps = 639.000 bytes/s/client * 100 clients = ~63.9MB/s = ~61MiB/s Native: 2024-03-23_11-38-03_TrND70QxHA BouncyCastle: 2024-03-23_11-44-03_Uxym3nSbQA

imerr avatar Mar 24 '24 12:03 imerr

Client receive (slightly inconsistent data rates due to not locking server fps): Native: 2024-03-23_11-48-04_S0nnlehCcl BouncyCastle: 2024-03-23_11-46-47_d1rNvpzWfb

imerr avatar Mar 24 '24 12:03 imerr