1 / 25

T.A: Viktor Kulikov

Secured Chat. T.A: Viktor Kulikov. Eyal Madar Mikael Cohen. Spring 2006. Introduction. What is a chat application?. real-time communication between two or more people based on typed text May have more options, like transfer files, voice, video….

emma-wood
Download Presentation

T.A: Viktor Kulikov

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. Secured Chat T.A: Viktor Kulikov Eyal Madar Mikael Cohen Spring 2006

  2. Introduction What is a chat application? • real-time communication between two or more people based on typed text • May have more options, like transfer files, voice, video… Why a chat application ? • boosts communication and allows easy collaboration. • not forced to reply immediately • Less intrusive than communication via phone. • Companies like IBM have their own Chat application witch allows labs working across the world • Encryption is required to secure the business communications

  3. Goals • Building a Chat application in C#, using .Net • Implementing: • Public forum • Private chat • File transfer • Security encryption • Convivial and intuitive GUI

  4. Chat Design • Frame matched with the windows style. • Tabs appear with a pretty gray relief. • Clear and intuitive. • Can easily put it in full screen.

  5. What is Remoting? • Remote executing means running a process in another computer without using any resource or CPU load in the local computer • Using a client/server application

  6. A server, a client and a network Tcp Cb Cb Proxy Ca Server Client • Marshal By Reference Object • Client Ca creates a proxy instance of Cb • Client Ca can uses Cb provided functions via a Tcp channel

  7. Remote Activation Concepts • Marshal By Reference Object • Marshal By Value Object

  8. Types of .NET Remote Objects • Server Activated – Wellknown Singleton • Single Instance of Object Services All Clients • Server Activated – Wellknown Singlecall • New Instance of Object on Every Use

  9. Client/Server Architecture (1) • The solution consists of four projects: • - ServerConsole • - ServerInterface • - ClientApp • - ClientInterface • ServerConsole is a Windows Form. • ServerInterface holds the necessary • interfaces for the ServerConsole • ClientApp is a Windows Form • ClientInterface holds the necessary • interfaces for the ClientApp

  10. Client/Server Architecture (2) Client Machine Server Machine Server Form Client Form Server Remote Client Remote Remoting

  11. Client/Server Architecture (2) Remote  Interface Class link

  12. Server Interface (1) Can use from Server: - Logon - Logout - Send Message - Ask for private chat Client Server Interface

  13. Server Interface (2) • Logon: Client log in to the Server • Logoff: Client log out from the Server • SendMsg: Send a message to another user via the Server • GetPortNo: Receive a port number to communicate with the server • AskForPrivate:Ask private chat to another user via the Server

  14. Client Interface (1) Can use from Client: - UpdateClient - LogOffClient - DoYouWantPrivateChat Server Client Interface

  15. Client Interface (2) • UpdateClient: Update Client Form • LogOffClient: Close the Client • DoYouWantPrivateChat: Demand for a private chat

  16. Server uses Client functions Server Client Form Client Function Client Function Client Remote Is Marshall! Client functions are given by IClient Interface

  17. Client uses Server functions Client Server Form Server Function Server Function Server Remote Is Marshall! Server functions are given by IServer Interface

  18. Private Chat Server Private Chat port Client A Client B Do you want a private chat with A? Ask For Private chat

  19. Transfer File • Intuitive • Fast • Secured

  20. Security Did you know that RSA has been invented at a Pessah Seder in 1977 Encryption algorithm used : RSA - Rivest, Shamir (israel) , Adelman • RSA encryption is used in our • Private Chat • File transfer

  21. RSA principle Order encrypted with the public key Public key Even if intercepted, the message can’t be decrypted without private key ! • RSA involves twokeys: • Thepublic keycan be known to everyone and is used toencryptmessages. • These messages can only bedecryptedby use of theprivate key Easily decrypted with the private key !

  22. Server Client A Possibility of a Peer to peer private Chat Secured Public Chat Client B Client C

  23. Conclusion • We have build an intuitive chat, which allows public, private, secured discussions, and secured transfer files • Future works: • - Voice conversation • - Video conference

  24. Thanks… • To Viktor for his time and his patience. • To Swlab Laboratory • To you who have listened our presentation until the end!

  25. Chat Design Please follow us to the lab!

More Related