Compare commits

..

3 Commits

Author SHA1 Message Date
scito
4ba0fad000 capture QR codes from camera and major refactoring
- add GUI for QR code capturing from camera (CV2 is used)
- support different QR readers: ZBAR,QREADER,QREADER_DEEP,CV2,CV2_WECHAT
- support several input files
- add option to ignore duplicate otps
- write warnings and errors to stderr
- add output coloring
- rename project from extract_otp_secret_keys to extract_otp_secrets
- improve help
- clean verbose level output
- use Python type hints and check with mypy
- use f-strings
- clean up code
- add more tests
- calculate code coverage
- use src-layout: move files and folders
- support wheel packing
- enhance README.md
- bugfixes
    * fix -k -
    * fix utf-8 encoding on windows
2023-01-03 00:28:32 +01:00
scito
9d052dc78a refactor image import and add Alpine docker image
- dynamic import of QR reader
- build docker also for arm64
2023-01-03 00:26:46 +01:00
qwertyca
915efcf192 Add the ability so provide an image file as the infile. If the file contains a QR code generated by Google Authenticator's "Transfer Accounts" function, it will be decoded directly in a single step. This is meant to help users who need to access their secrets from Google Authenticator but don't have a QR code decoder and don't want to use an online one due to security concerns. 2023-01-03 00:26:46 +01:00
2 changed files with 6 additions and 7 deletions

View File

@@ -9,7 +9,6 @@ name: docker
on: on:
# run it on push to the default repository branch # run it on push to the default repository branch
push: push:
branches: [master]
schedule: schedule:
# Run weekly on default branch # Run weekly on default branch
- cron: '47 3 * * 6' - cron: '47 3 * * 6'

View File

@@ -1,4 +1,4 @@
# Extract secrets from QR codes exported by two-factor authentication apps # Extract TOTP/HOTP secrets from QR codes exported by two-factor authentication apps
[![CI tests](https://github.com/scito/extract_otp_secrets/actions/workflows/ci.yml/badge.svg)](https://github.com/scito/extract_otp_secrets/actions/workflows/ci.yml) [![CI tests](https://github.com/scito/extract_otp_secrets/actions/workflows/ci.yml/badge.svg)](https://github.com/scito/extract_otp_secrets/actions/workflows/ci.yml)
![coverage](https://img.shields.io/badge/coverage-96%25-brightgreen) ![coverage](https://img.shields.io/badge/coverage-96%25-brightgreen)
@@ -13,15 +13,15 @@
--- ---
The Python script `extract_otp_secrets.py` extracts one time password (OTP) secrets from QR codes exported by two-factor authentication (2FA) apps such as "Google Authenticator". The Python script `extract_otp_secrets.py` extracts one time password (OTP) secrets from QR codes exported by two-factor authentication (2FA) apps such as "Google Authenticator".
The export QR codes from authentication apps can be provided in three ways to this script: The exported QR codes from authentication apps can be read in three ways:
1. Capture from the system camera in a GUI, 1. Capture from the system camera using a GUI, _(new!)_
2. Image files containing the QR codes, and 2. Read image files containing the QR codes, and _(new!)_
3. Text files containing the QR code data generated by QR readers. 3. Read text files containing the QR code data generated by third-party QR readers.
The secret and otp values can be exported to json or csv files, as well as printed or saved to PNG images. The secret and otp values can be exported to json or csv files, as well as printed or saved to PNG images.
This script/project was renamed from extract_otp_secret_keys to extract_otp_secrets in version 2.0.0. **The project and the script were renamed from extract_otp_secret_keys to extract_otp_secrets in version 2.0.0.**
## Installation ## Installation