В эту современную эпоху все подключены через Интернет. Facebook, WhatsApp, Instagram и т. Д. ... выполняют свой акт доставления сообщения от одного человека к другому. Но все это терпит неудачу, когда дело доходит до поддержания частных данных, всегда в новостях о том, что пользовательские данные протекают. Хотя это не может быть проблемой для многих пользователей, поскольку они считают себя «открытой книгой», но немногие, кто хочет сохранить свою жизнь в частном порядке, хочет лучшего решения для этого. Из нашего небольшого проекта мы пытаемся внести свой вклад в эту цель.
Демо -видео
Шаг-1 : Загрузите файл .jar отсюда.
Шаг-2 : Чтобы запустить файл, JRE должен быть установлен. Смотрите инструкции здесь
Шаг-3 : Запустите файл .jar, ( примечание для запуска на Linux Distros, проверка является исполняемой флажкой в свойствах файла в вкладке «Разрешения » )
Шаг-4 : появится следующий экран.
Шаг 5 : Включите сервер и введите любой бесплатный порт (Ex-> 3000) и нажмите OK .
Шаг 5 : ( для подключения систем через Интернет )
ngrok tcp 3000
, замените 3000 на номер порта, введенный при создании сервера .Шаг 6 : Включите панель чата и введите имя хоста, порт и секретный код.
Шаг 7 : Поделитесь именем HOSTNAM и портом NGROK FORTHING SINGING с другими пользователями, чтобы подключиться к серверу (им не требуется включать сервер).
Шаг 8 : К этому времени можно начать разговор, но сообщения будут в зашифрованном формате, чтобы расшифровать сообщение конкретного пользователя, получить его/ее секретный код и уникальный идентификатор и введите его, нажав на добавление секретов .
Шаг 9 : Чтобы очистить чат на вашей стороне, нажмите кнопку Clear .
Шаг-10 : Сохранить кнопку « Сохранить чат». Он создаст файл JSON в текущем каталоге.
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.