{"id":19463386,"url":"https://github.com/puddly/android-otp-extractor","last_synced_at":"2025-04-06T19:13:32.772Z","repository":{"id":50219140,"uuid":"107795406","full_name":"puddly/android-otp-extractor","owner":"puddly","description":"Extracts OTP tokens from rooted Android devices","archived":false,"fork":false,"pushed_at":"2024-07-15T03:15:21.000Z","size":112,"stargazers_count":251,"open_issues_count":10,"forks_count":22,"subscribers_count":6,"default_branch":"master","last_synced_at":"2025-04-06T06:43:34.221Z","etag":null,"topics":["adb","android","extraction","otp","python","totp"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/puddly.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,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2017-10-21T16:16:12.000Z","updated_at":"2025-03-28T16:18:41.000Z","dependencies_parsed_at":"2024-12-27T15:07:37.225Z","dependency_job_id":"7515a78b-c797-40af-b99c-b9b7b5844dee","html_url":"https://github.com/puddly/android-otp-extractor","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/puddly%2Fandroid-otp-extractor","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/puddly%2Fandroid-otp-extractor/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/puddly%2Fandroid-otp-extractor/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/puddly%2Fandroid-otp-extractor/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/puddly","download_url":"https://codeload.github.com/puddly/android-otp-extractor/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247535520,"owners_count":20954576,"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":["adb","android","extraction","otp","python","totp"],"created_at":"2024-11-10T18:10:03.965Z","updated_at":"2025-04-06T19:13:32.745Z","avatar_url":"https://github.com/puddly.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Android OTP Extractor\n\nMany OTP apps don't support exporting or backing up their OTP secrets. Switching apps would require you to regenerate all of your tokens, which can be tedious if you have a lot. This application can extract your tokens from popular Android OTP apps and export them in a standard format or just display them as QR codes for easy importing.\n\n## Supports\n\n - Google Authenticator\n - Microsoft Authenticator\n - Authy\n - Duo Mobile\n - FreeOTP and FreeOTP+\n - Steam Authenticator\n - AndOTP (when backups are enabled)\n - Aegis\n - Battle.net Authenticator\n - Authenticator Plus\n\n## Installation\n\n```bash\n$ pip install git+https://github.com/puddly/android-otp-extractor\n$ python -m android_otp_extractor\n```\n\n## Usage\n\nRequires Python 3.6+ and a **rooted** Android phone.\n\n```\nusage: python -m android_otp_extractor [-h]\n                                       [--include {authy,freeotp,freeotp_plus,duo,google_authenticator,microsoft_authenticator,andotp,steam_authenticator,battlenet_authenticator,aegis,authenticator_plus} | --exclude {authy,freeotp,freeotp_plus,duo,google_authenticator,microsoft_authenticator,andotp,steam_authenticator,battlenet_authenticator,aegis,authenticator_plus}]\n                                       [--data DATA]\n                                       [--busybox-path BUSYBOX_PATH]\n                                       [--no-show-qr] [--prepend-issuer]\n                                       [--andotp-backup ANDOTP_BACKUP] [-v]\n\nExtracts TOTP secrets from a rooted Android phone.\n\noptional arguments:\n  -h, --help            show this help message and exit\n  --include {authy,freeotp,freeotp_plus,duo,google_authenticator,microsoft_authenticator,andotp,steam_authenticator,battlenet_authenticator,aegis,authenticator_plus}\n                        only export secrets from this app. Can be specified\n                        multiple times. (default: None)\n  --exclude {authy,freeotp,freeotp_plus,duo,google_authenticator,microsoft_authenticator,andotp,steam_authenticator,battlenet_authenticator,aegis,authenticator_plus}\n                        do not export secrets from this app. Can be specified\n                        multiple times. (default: None)\n  --data DATA           path to the app data folder (default:\n                        $ANDROID_DATA/data)\n  --busybox-path BUSYBOX_PATH\n                        path to {Busy,Toy}box supporting base64 and ls\n                        (default: None)\n  --no-show-qr          do not display the accounts as a local webpage with\n                        scannable QR codes (default: False)\n  --prepend-issuer      adds the issuer to the token name (default: False)\n  --andotp-backup ANDOTP_BACKUP\n                        saves the accounts as an AndOTP backup file (default:\n                        None)\n  -v, --verbose         increases verbosity (default: 0)\n```\n\nThe default action is to extract everything and display QR codes locally in your webbrowser. Export them as an AndOTP backup file with `--andotp-backup filename.json`.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpuddly%2Fandroid-otp-extractor","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fpuddly%2Fandroid-otp-extractor","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpuddly%2Fandroid-otp-extractor/lists"}