WELCOME TO MY PORTFOLIO

!!!Image Not Available!!!
I'm

Hitesh Sharma

  • Android developer || Web developer
    1. Android developer || Web developer
    2. Student at Jaipur Engineering College and Research Center
    3. Computer Science
    4. living in jaipur
    !!!Image Not Available!!! !!!Image Not Available!!!

    Chat With Me:



    It is an End-to-end encrypted chat application.End-to-end encryption is a method to secure data communication between 2 parties by applying encryption in such a way that only the targeted recipient can decrypt/read it.As it moves to its destination, it is impossible for third parties such as internet or app service providers, cybercriminals, or even governments to read or interfere in any way with the message.

    Simply put, by encrypting communication for both ends (sender and recipient), end-to-end encryption stops anyone who is not involved in the discussion from reading personal conversations.

    The app is comprised of following components :

    1. AES encryption/decryption alogorithm
    2. Firebase Realtime Database
    3. Firebase Authentication System
    4. Custom Adapters and Objects

    How the app actually work :


    First, let's jump to the engine i.e. AES encryption.

    !!!Image is not Available!!! !!!Image is not Available!!!
    1. AES is symmetric block cipher that can encrypt anddecrypt information.
    2. The alogorithm take the message as a String from the Textfield and convert it into byte formate.Then encryption converts data to an unreadable form called Cipher Text. Finally, this cipher text is returned as a String to be stored in the Firebase Realtime Database.
    3. Now we obtain the cipher text from the Datasnapshot object and pass it in the decryption algorithm as a String. The algorithm first converts it into byte formate and then converts the dats back into its original form called Plain Text.
    4. This whole AES process follows Symmetric Key Algorithm.Symmetric also known as Secret Key. Ciphers use same key for encrypting and decrypting. So, Sender and receiver must know and use the same key.
    !!Image is not Available!!! !!Image is not Available!!!


    Now, let's discuss the Authentication system :

    1. When the app is started, the Authentiation System kicks in. It provides 2 options for sign-in. First is by Email and other one is through google sign-in.
    2. If you are already registered than you can directly access the app by giving your details.
    3. Else a registration page will pop up where you can register yourself for the app.
    4. At last, we also have a sign-out option at the top-right corner of the screen. It will again take you to the sign-in screen.
    !!Image is not Available!!! !!Image is not Available!!!