この現代では、誰もがインターネットを介してつながります。 Facebook、WhatsApp、Instagramなどは、ある人から別の人に効果的にメッセージを配信する行為を行っています。しかし、これらはすべて、データをプライベートに保つことに関して失敗しますが、ユーザーデータが漏れているというニュースに常に巻き込まれています。多くのユーザーは自分自身を「オープンブック」と考えているため、これは問題ではないかもしれませんが、自分の人生をプライベートに保ちたいと思う人はほとんどいない人はほとんどいません。私たちの小さなプロジェクトから、私たちはこの目標に貢献しようとしています。
デモビデオ
ステップ1 :ここから.jarファイルをダウンロードします。
ステップ2 :ファイルを実行するには、JREをインストールする必要があります。こちらの指示を参照してください
ステップ3 :.jarファイルを実行します( Linuxディストリビューションで実行することに注意してください、チェックは、 [許可]タブのファイルのプロパティの[実行可能]チェック可能なチェックボックスです)
ステップ4 :次の画面が表示されます。
ステップ5 :サーバーをオンにして、無料のポート(Ex-> 3000)を入力し、 [OK]をクリックします。
ステップ5 :(インターネット上のシステムを接続するため)
ngrok tcp 3000
で実行し、サーバーの作成中に入力したポート番号に3000を置き換えます。ステップ6 :チャットパネルをオンにし、ホスト名、ポート、シークレットコードを入力します。
ステップ7 :サーバーに接続するために(サーバーをオンにする必要はありません)、他のユーザーへのホスト名とポートオブNgrokの転送リンクを共有します。
ステップ8 :この時までに会話を開始できますが、メッセージは暗号化された形式で、特定のユーザーのメッセージを復号化し、秘密のコードと一意のIDを取得し、 secretを追加して入力します。
ステップ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.