Extreme Chat
1.0.0
在这个现代时代,每个人都通过互联网建立联系。 Facebook,WhatsApp,Instagram等...正在有效地将信息从一个人传递到另一个人。但是,所有这些都在保持数据私有时失败,这始终是关于用户数据泄漏的新闻。尽管这对许多用户来说可能不是问题,因为他们认为自己是“开放书”,但很少有人想保持私人生活,希望对此有更好的解决方案。从我们的小项目中,我们正在努力为这一目标做出贡献。
演示视频
步骤1 :从此处下载.jar文件。
步骤2 :要运行文件,必须安装JRE。在此处查看说明
步骤3 :运行.jar文件,(注意在Linux发行版上运行,在Permissions选项卡下的文件的属性中,Check是可执行的复选框)
第4步:将显示以下屏幕。
步骤5 :打开服务器并输入任何免费端口(Ex-> 3000),然后单击“确定” 。
步骤5 :(用于通过Internet连接系统)
ngrok tcp 3000
中运行以下命令,将3000替换为创建服务器时输入的端口号。第6步:打开聊天面板,输入主机名,端口和秘密代码。
第7步:为了与服务器连接(他们不需要打开服务器),将主机名和NGrok转发链接的端口共享。
第8步:到了这个时候,可以启动对话,但是消息将以加密格式进行加密格式来解密特定用户的消息,获取他/她的秘密代码和唯一的ID,然后按下添加秘密来输入它。
第9步:要清除侧面按下清除按钮。
步骤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.