* Moved encryption algorithms into a folder
* Sorted networking into separate files
Additions:
* Created Elliptic Curve encryption implementation
* Generalized the key exchange implementation
- Implemented Diffie-Hellman key exchange
- Implemented Elliptic Curve Diffie-Hellman key exchange
* Started implementing binary data compressor
Changes:
* Changed NetClient and NetServer to use IKeyExchange for initial AES key exchange instead of RSA (for optimization)
* Adapted TextView implementation to properly support optional borders
* Fed InputView issue caused due to border rendering change
* Fixed and simplified Rectangle computations
* Fixed errant naming in Session layout file
* Fixed errant i18n naming in Session layout file
* Fixed resize background rendering issue in ConsoleController
* Fully implemented ListView (needs testing)
* Updated BankInteractor and server to use ECDH-E with Curve25519
Removals:
* Removed identity verification from NetClient (identities checks should be performed as a layer on top of NetClient/NetServer, not as part of it)
16 lines
310 B
C#
16 lines
310 B
C#
using System;
|
|
using System.Collections.Generic;
|
|
using System.Linq;
|
|
using System.Numerics;
|
|
using System.Text;
|
|
using System.Threading.Tasks;
|
|
|
|
namespace Common.Cryptography.KeyExchange
|
|
{
|
|
public interface IKeyExchange
|
|
{
|
|
byte[] GetPublicKey();
|
|
byte[] GetSharedSecret(byte[] pub);
|
|
}
|
|
}
|