Skip to content

Messenger with MySQL storage and AES-256 encryption

Notifications You must be signed in to change notification settings

cfanatic/mysql-netchat

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

10 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

mysql-Netchat

This repository features a chat messenger with database management and encryption support.

Following is a summary of the main features:

  • Database message management with MySQL
  • Symmetric encryption using AES-256
  • User typing information
  • Message notifications

Requirements

Developed and tested on the following setup:

  • macOS High Sierra (10.13.6)
  • Qt Creator 4.1.0
  • Qt 5.7.0
  • Clang 7.0
  • MySQL Version 15.1 Distrib 10.1.26-MariaDB
  • Botan 2.6.0 (Crypto and TLS for Modern C++)

Installation

Make sure that the Botan library is successfully installed on your system. Visit https://botan.randombit.net for more information on how to install Botan.

Open netchat.pro in Qt Creater and run the build process.

Architecture

Depicted below is the software architecture which illustrates the dependency of the C++ classes to each other:

Communication model

Netchat and Options define the core messenger system. Database, Encryption and Configuration handle the raw data input/output. Config File sets the required configuration parameters for the database communication.

Usage

Since this repository is the successor of p2p-Netchat, the usage is similar.

If the database server and the configuration file is set up correctly, you can begin texting right from the start.

Chat window Database window

About

Messenger with MySQL storage and AES-256 encryption

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published