À cette époque moderne, tout le monde est connecté sur Internet. Facebook, WhatsApp, Instagram, etc ... font leur acte de livrer efficacement le message d'une personne à une autre. Mais tout cela échoue lorsqu'il s'agit de garder les données privées, il est toujours donné que les données utilisateur sont divulguées. Bien que ce ne soit pas un problème pour de nombreux utilisateurs car ils se considèrent comme un «livre ouvert», mais peu de personnes qui veulent garder leur vie privée veulent une meilleure solution à cela. De notre petit projet, nous essayons de contribuer à cet objectif.
Vidéo de démonstration
Étape-1 : Téléchargez le fichier .jar à partir d'ici.
Étape-2 : Pour exécuter le fichier, JRE doit être installé. Voir les instructions ici
Étape-3 : Exécutez le fichier .jar, ( Remarque Pour exécuter sur Linux Distros, Check est une case à cocher exécutable dans les propriétés du fichier sous les autorisations )
Étape 4 : L'écran suivant apparaîtra.
Étape 5 : Allumez le serveur et entrez n'importe quel port libre (ex-> 3000) et cliquez sur OK .
Étape 5 : ( pour la connexion des systèmes sur Internet )
ngrok tcp 3000
, remplacez 3000 par le numéro de port entré lors de la création de serveur .Étape 6 : Allumez le panneau de chat et entrez le nom d'hôte, le port et le code secret.
Étape-7 : Partagez le nom d'hôte et le port de la liaison de transfert NGROK vers d'autres utilisateurs, afin de se connecter avec le serveur (ils ne nécessitent pas d'activer le serveur).
Étape 8 : À ce moment-là, la conversation peut être démarrée, mais les messages seront en format crypté pour décrypter le message d'un utilisateur particulier, obtenir son code secret et son identifiant unique et entrez en appuyant sur Add Secrets .
Étape 9 : Pour effacer le chat sur le côté, appuyez sur le bouton Effacer .
Étape-10 : Pour enregistrer le bouton Enregistrer le bouton Enregistrer . Il créera un fichier JSON dans le répertoire actuel.
Class Descriptions:
Crypto: Used for encoding and decoding messages through AES algorithm.
Server: Waits for the client to connect and starts the UserThread.
UserThread: Separate thread for each client connected, it stores client's data and broadcast messages to other clients.
Client: Used to create a client than starts two new thread, ReadThread and WriteThread.
WriteThread: When “Send” button is clicked it reads data from the user and encrypt it and write it to socket OutputStream.
ReadThread: Reads the broadcasted message and decrypt it if key is found, and write the decrypted message to the ChatPanel.
Class Description:
Main Window: Contains GUI for the Main screen of the APP.
CodeDialog: Dialog box to add secretID and uniqueID of a client. It also contains validation logic.
ClientDialog: Dialog box to add Client information. It also contains validation logic.