{"id":20131879,"url":"https://github.com/neehu613/rsa-based-chat-application","last_synced_at":"2025-04-09T16:43:35.937Z","repository":{"id":200578758,"uuid":"219246445","full_name":"neehu613/RSA-based-chat-application","owner":"neehu613","description":"A django based chat application where you can send messages encrypted using RSA algorithm.","archived":false,"fork":false,"pushed_at":"2019-11-04T03:26:06.000Z","size":10002,"stargazers_count":9,"open_issues_count":2,"forks_count":6,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-03-23T18:54:11.876Z","etag":null,"topics":["chat-application","django-chat","djangochannels2","encryption-decryption","rsa","rsa-algorithm","rsa-chat","rsa-cryptography","rsa-encryption","rsa-key-encryption","scifi"],"latest_commit_sha":null,"homepage":null,"language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/neehu613.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null}},"created_at":"2019-11-03T03:32:53.000Z","updated_at":"2024-09-11T16:09:42.000Z","dependencies_parsed_at":null,"dependency_job_id":"48a472e2-23be-4464-a650-51ee6a972b3d","html_url":"https://github.com/neehu613/RSA-based-chat-application","commit_stats":null,"previous_names":["neehu613/rsa-based-chat-application"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/neehu613%2FRSA-based-chat-application","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/neehu613%2FRSA-based-chat-application/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/neehu613%2FRSA-based-chat-application/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/neehu613%2FRSA-based-chat-application/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/neehu613","download_url":"https://codeload.github.com/neehu613/RSA-based-chat-application/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248069563,"owners_count":21042665,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["chat-application","django-chat","djangochannels2","encryption-decryption","rsa","rsa-algorithm","rsa-chat","rsa-cryptography","rsa-encryption","rsa-key-encryption","scifi"],"created_at":"2024-11-13T20:50:53.625Z","updated_at":"2025-04-09T16:43:35.914Z","avatar_url":"https://github.com/neehu613.png","language":"Python","readme":"# RSA-based-chat-application\nA django based chat application where you can send messages encrypted using RSA algorithm.\n\nMake sure you install all dependencies first.\nOpen the project directory and run the following commands:\n```\npip install django\npip install channels\npip install channels-redis\npip install redis\n```\n\nSetting up the database:\n```\npython manage.py makemigrations\npython manage.py migrate\n```\n\nRun the local server using the command\n```\nsudo docker run -p 6379:6379 -d redis:2.8\npython manage.py runserver\n```\n\n## Usage and snapshots\n\n\nYou can set up your account by entering details in the registration form.\n\n![Alt text](/screenshots/1Register.png?raw=true)\n\n\n\nAfter you sign up, it takes you to the login page where you can enter your credentials and log in.\n\n![Alt text](/screenshots/2Login.png?raw=true)\n\n\n\nAfter successful login, it takes you to the home page. This application provides 2 main features.\n* Creating Chatrooms - private/public\n* Joining Chatrooms\n\nIt also displays the registered users.\n\n![Alt text](/screenshots/3HomePage.png?raw=true)\n\n\n\nClick on the __Create Room__ button and then enter the room name. You can create private/public rooms.\n\n![Alt text](/screenshots/4CreateRoom.png?raw=true)\n\n\n\nFor private rooms, it needs a password\n\n![Alt text](/screenshots/5PutPassword.png?raw=true)\n\n\n\nThe below image shows the __room__ page and you can enter your message inside the box provided on the right side. Once the message has been typed, you can click on the __Encrypt__ button to encrypt your message. You can perform encryption using different sized keys(128 bits, 256, 512, 1024, 2048)\n\n![Alt text](/screenshots/6Room.png?raw=true)\n\n\n\nThe encryption process can be seen on the terminal output. It generates a public key and encrypts your message using it.\n\n![Alt text](/screenshots/7Seeoutput.png?raw=true)\n\n![Alt text](/screenshots/8seeoutput.png?raw=true)\n\n\n\nYou can open up an __incognito__ window and login with another user's credentials and join the same room. When the other user finishes encryption, he can hit the __SEND ENCRYPTED MESSAGE__ button to send the encrypted message. The user on the __incognito__ window can hit the __DECRYPT__ button to create a private key using the public key with which the message was encrypted and can decrypt the message.\n\n![Alt text](/screenshots/9otherUser.png?raw=true)\n\n\n\nThe other user gets the public key used along with the enciphered text.\n\n![Alt text](/screenshots/10ciphertext.png?raw=true)\n\n\n\nOn clicking the __DECRYPT__ button, it takes us to this page\n\n![Alt text](/screenshots/11decrypt.png?raw=true)\n\n\n\nYou can view the decrypted message here\n\n![Alt text](/screenshots/12decrypt.png?raw=true)\n\n\n\nAll the messages which have been decrypted are stored in a chat log.\n\n![Alt text](/screenshots/13chatlog.png?raw=true)\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fneehu613%2Frsa-based-chat-application","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fneehu613%2Frsa-based-chat-application","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fneehu613%2Frsa-based-chat-application/lists"}