1 / 19

CheapChat: a Java-based chat application

CheapChat: a Java-based chat application. Nicolas Ducheneaut Mike Gebbie Barbara Rosario SIMS, Spring 2000. Chat application with Port Scanner. 2 modules: Port Scanner Chat application acting both as a server and a client. Port Scanner.

patia
Download Presentation

CheapChat: a Java-based chat application

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. CheapChat: a Java-based chat application Nicolas Ducheneaut Mike Gebbie Barbara Rosario SIMS, Spring 2000

  2. Chat application with Port Scanner • 2 modules: • Port Scanner • Chat application acting both as a server and a client

  3. Port Scanner Possible Ports: (0–1023) (1024–49151) (49152-65535)

  4. Port Scanner findTheApplicationPort(Host Address, Start Port, End Port ) Keep Trying… Possible Ports: (0–1023) (1024–49151) (49152-45535)

  5. Port Scanner CheapChat “Client” CheapChat “Server” (Port 50005)

  6. Port Scanner CheapChat “Client” CheapChat “Server” (Port 50005) Try 50000… Timeout …

  7. Port Scanner Invoke! CheapChat “Client” CheapChat “Server” (Port 50005) PortScanner PS

  8. Port Scanner CheapChat “Client” CheapChat “Server” (Port 50005) Try 50001… PortScanner Try 50002… PortScannerThreads Try 50003… Try 50004…

  9. Port Scanner Connect at 50005 CheapChat “Client” CheapChat “Server” (Port 50005) PortScanner PortScannerThreads Authenticate: “Are you a CheapChat server?”

  10. Port Scanner CheapChat “Client” CheapChat “Server” (Port 50005) PortScanner PortScannerThreads Reply: “I am a CheapChat server!”

  11. Port Scanner Connect at 50005 CheapChat “Client” CheapChat “Server” (Port 50005)

  12. Chat 1: first to start Chat

  13. Problems and potential remedies • Main weakness: clear-text administrative messages sent over the communication channel • > Solution: use two separate data streams instead • No way to know in advance if someone is on-line • > Solution: adapt the port scanner and use it before the application is launched

  14. Thank you for your attention Questions? Comments?

More Related