Skip to content

A Java-based client-server messaging system with end-to-end encryption, using AES, RSA, and the Double Ratchet algorithm. Backed by a MariaDB SQL database.

Notifications You must be signed in to change notification settings

JeyCraftPT/AthenaCrypt

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

32 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

AthenaCrypt

A Java-based client-server messaging system with end-to-end encryption, using AES, RSA, and the Double Ratchet algorithm. Backed by a MariaDB SQL database.

🛠️ Database Setup (MariaDB)

  1. Install MariaDB.
  2. Run the SQL scripts:
mysql -u your_username -p < src/CreateDataBase.sql
mysql -u your_username -p your_database_name < src/CreateTables.sql

Configure your credentials inside:

src/org/DataBase/DBConnect.java

🚀 Run the Server

cd src
javac org/Server/*.java org/Packets/*.java org/Keys/*.java org/DataBase/*.java
java org.Server.Main

💻 Run the Client

cd src
javac org/Client/*.java org/Packets/*.java org/Keys/*.java
java org.Client.Main

🧪 Features

  • 🔐 End-to-end encryption with Double Ratchet

  • 💬 Direct & secure messaging

  • 🧾 Registration, login, key exchange

  • 🗄️ MariaDB-based user/key storage

📁 File Structure

src/
├── CreateDataBase.sql
├── CreateTables.sql
└── org/
├── Client/
│ ├── Main.java
│ └── DoubleRatchetState.java
├── Packets/
│ ├── AESAnswer.java
│ ├── AESFinal.java
│ ├── AESRequest.java
│ ├── BundleRequestPacket.java
│ ├── DirectMessagePacket.java
│ ├── HandShake2Packet.java
│ ├── HandShakeAlreadyMade.java
│ ├── HandShakePacket.java
│ ├── InfoPacket.java
│ ├── KeyBundle.java
│ ├── LoginPacket.java
│ ├── MadeHand.java
│ ├── MessagePacket.java
│ ├── Packet.java
│ ├── PacketUtils.java
│ ├── PublicKeyPacket.java
│ ├── RegisterPacket.java
│ ├── UserListPacket.java
│ ├── UserListRequestPacket.java
│ ├── UserSelect.java
│ ├── oneTimeKeysPacket.java
├── Keys/
│ ├── RSAKeys.java
│ └── AESKeys.java
├── Server/
│ ├── Main.java
└── DataBase/
└ ├── DBConnect.java

About

A Java-based client-server messaging system with end-to-end encryption, using AES, RSA, and the Double Ratchet algorithm. Backed by a MariaDB SQL database.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages