- A file and message sharing messenger was implemented using the Java Security library, and with the help of both symmetric and asymmetric encryption algorithms.
- For the message and file sharing itself, the AES algorithm was used as the cryptographic algorithm, due to its lower complexity.
- A session key is set between each client and the server, which is either encrypted with a physical key, or with the help of RSA algorithm. This session key is updated by the server, after certain time intervals.
- Message authentication code (MAC) has also been used to confirm that the message has not been changed.
- A two way PKC authentication has been implemented.
- Digital signatures have been used.