{"id":14036844,"url":"https://github.com/AginSquash/2FA-Telegram","last_synced_at":"2025-07-27T04:32:21.482Z","repository":{"id":152783808,"uuid":"183827729","full_name":"AginSquash/2FA-Telegram","owner":"AginSquash","description":"This telegram bot written in Python will help you access the 2FA codes. All your keys for generating 2FA are stored in an encrypted file. Used Fernet symmetric encryption.","archived":false,"fork":false,"pushed_at":"2020-08-18T23:08:15.000Z","size":11,"stargazers_count":13,"open_issues_count":0,"forks_count":3,"subscribers_count":2,"default_branch":"master","last_synced_at":"2024-08-13T03:05:59.093Z","etag":null,"topics":["2fa","2fa-codes","2fa-keys","fernet","pyotp","python","telegram-bot","twofactorauth"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/AginSquash.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null}},"created_at":"2019-04-27T22:34:38.000Z","updated_at":"2024-05-11T05:08:33.000Z","dependencies_parsed_at":"2024-01-24T16:28:22.249Z","dependency_job_id":null,"html_url":"https://github.com/AginSquash/2FA-Telegram","commit_stats":null,"previous_names":[],"tags_count":2,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AginSquash%2F2FA-Telegram","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AginSquash%2F2FA-Telegram/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AginSquash%2F2FA-Telegram/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AginSquash%2F2FA-Telegram/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/AginSquash","download_url":"https://codeload.github.com/AginSquash/2FA-Telegram/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":227762293,"owners_count":17816006,"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":["2fa","2fa-codes","2fa-keys","fernet","pyotp","python","telegram-bot","twofactorauth"],"created_at":"2024-08-12T03:02:16.264Z","updated_at":"2024-12-02T16:30:47.202Z","avatar_url":"https://github.com/AginSquash.png","language":"Python","readme":"# 2FA-Telegram\n## What is it?\nThis simple telegram bot written in Python will help you access the 2FA codes.\nAll your keys for generating 2FA are stored in an encrypted file (used Fernet symmetric encryption.\n## Setup\n#### 1. Dependencies\nFirstly you need to install dependencies ([telepot](https://github.com/nickoala/telepot), [pyotp](https://github.com/pyauth/pyotp),  [cryptography](https://github.com/pyca/cryptography)) using:\n\n    pip3 install -r requirements.txt\n\n#### 2. Registration\nSend a message [BotFather](https://telegram.me/botfather) and register a bot. I recommend using the bot's name as random as possible \n\u003efor example: mhdpjuh7wgdhumy9z2_bot\n\n#### 3. Config file\nNow you need to create a file **`config.py`** like this:\n\n    token = \"1234567:XXXXXXXXXXXXX\"\n\nRun the bot and write him any message. A message will appear in the console like this: `\"Chat id: 98765432\"`. \nNow place this id to the config file. As a result, the file should look like this:\n\n    token = \"1234567:XXXXXXXXXXXXX\"\n    admin_id = 98765432\n\n## Usage\n#### 1. Setting 2FA key-store password\n**/pass** - This command sets a password to the repository.\n\nUsing like \n\u003e /pass 1a2b3c4d5e6\n\nI recommend resetting the password variable after using the bot:\n\u003e /pass null\n\nYou need to re-enter the password for the next use after this command.\nIt's help you to secure store your 2FA-keys.\n\n**Attention! Before use `/add` and `/get` you need set password for key-store**\n\n#### 2. Adding service\n**/add** - This command add service to the repository.\n\u003e /add [service_name] [key]\n\nFor example:\n\u003e /add PyOTP_Test JBSWY3DPEHPK3PXP\n\n#### 3. Get 2FA codes\n**/get** - This command return 2FA-code to the repository.\n\u003e /get [service_name]\n\n`/get`  without args return full list of service_name + 2FA-code \n\nExample:\n\u003e /get PyOTP_Test\n\n#### 4. Delete or change password\nFor security reasons, you can not remove the service through the bot (this is a feature). To delete (or receive data without telegram bot, or change local key-store password) use `CodesEditor.py` local.\n\n\u003epython3 `CodesEditor.py`\n\n## Thanks\nI want to thank the developers of these beautiful libraries:\n[telepot](https://github.com/nickoala/telepot), [pyotp](https://github.com/pyauth/pyotp),  [cryptography](https://github.com/pyca/cryptography).\n","funding_links":[],"categories":["Python"],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FAginSquash%2F2FA-Telegram","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FAginSquash%2F2FA-Telegram","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FAginSquash%2F2FA-Telegram/lists"}