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.