This project aims at providing a single executable program to extract the OTP accounts from the QR code image exported from Google Authenticator, inspired by extract_otp_secret_keys written in Python.
- You can open Google Authenticator, tap on the three dots on the top right of the screen and select “Transfer accounts”, and follow the instructions to get the QR code image.
- Move the QR code to your laptop. An easy and secure way on Mac OSX is using Photo Booth to take a photo of the QR code and save it to your laptop.
Download the execuable binary from Releases, and run the executable binary with -i
option.
For example, download the executable binary google_authenticator_extractor-x86_64-apple-darwin
for Mac OSX, and run the following command in terminal:
chmod a+x google_authenticator_extractor-x86_64-apple-darwin
./google_authenticator_extractor-x86_64-apple-darwin -i /path/to/qrcode-image
Note: OSX may prevent it from running with the message
“google_authenticator_extractor-x86_64-apple-darwin” cannot be opened because the developer cannot be verified.
. You need to go toSystem Preferences
-Security & Privacy
-General
to allow it.
The output looks like as below:
[{"name":"******","secret":"**********","issuer":"******"},{"name":"*****","secret":"************","issuer":""}]
Rust is the programming language of the project, Install Rust by following the instructions in the official doument.
Install protobuf with Homebrew:
brew install protobuf
Build the project
./build.sh
Install protobuf with apt-get
:
sudo apt-get update
sudo apt-get install -y protobuf-compiler
Build the project:
./build.sh
The Github actions defined steps cross compilation, which are running on CI as well. Currently the following cross compilations are supported.
- Build for
x86_64-pc-windows-gnu
on Mac OSX. - Build for
x86_64-unknown-linux-gnu
on Mac OSX. - Build for
x86_64-pc-windows-gnuu
on Ubuntu.
Check the Github Workflow for more details.