FORUMS
Remove All Ads from XDA

[App][4.4+][Open source] andOTP - Open source two-factor authentication for Android

301 posts
Thanks Meter: 303
 
By flocke000, Senior Member on 15th July 2017, 07:50 AM
Post Reply Email Thread
andOTP is a two-factor authentication App for Android 4.4+.

It currently implements Time-based One-time Passwords (TOTP) like specified in RFC 6238.
Simply scan the QR code and login with the generated 6-digit code.

Features
  • Free and Open-Source
  • Requires minimal permissions:
    • Camera access for QR code scanning
    • Storage access for import and export of the database
  • Encrypted storage with two backends:
    • Android KeyStore
    • Password / PIN
  • Multiple backup options:
    • Plain-text
    • Password-protected
    • OpenPGP-encrypted
  • Sleek minimalistic Material Design with three different themes:
    • Light
    • Dark
    • Black (for OLED screens)
  • Great Usability
  • Compatible with Google Authenticator

Download
Original app

This app is a fork of the great OTP Authenticator app written by Bruno Bierbaumer, which has sadly been inactive since 2015. All credit for the original version goes to Bruno.

This is my first Android app and my first larger programming project in a while so the code might be a little bad right now. I appreciate every tip/fix I can get, so any developer with more experience can feel free to look at the code and criticize me

Contribute
  • Translation: If you want to help translate andOTP into your language head over to the Crowdin project
  • Bug reports and feature requests: You can report bugs and request features in the Issue tracker on GitHub
  • Discussion and support:
    • This XDA thread (please keep the off-topic to a minimum)
    • Telegram channel @andOTP


XDA:DevDB Information
andOTP, App for all devices (see above for details)

Contributors
flocke000, Bruno Bierbaumer
Source Code: https://github.com/andOTP/andOTP


Version Information
Status: Stable
Current Stable Version: 0.6.1
Stable Release Date: 2018-12-05

Created 2017-07-15
Last Updated 2018-12-06
Attached Thumbnails
Click image for larger version

Name:	main_activity.png
Views:	564
Size:	128.4 KB
ID:	4444755   Click image for larger version

Name:	settings_activity.png
Views:	544
Size:	111.8 KB
ID:	4444756   Click image for larger version

Name:	backup_activity.png
Views:	526
Size:	140.4 KB
ID:	4444757   Click image for larger version

Name:	main_activity_dark.png
Views:	500
Size:	125.9 KB
ID:	4444758   Click image for larger version

Name:	main_activity_black.png
Views:	484
Size:	102.7 KB
ID:	4444759  
The Following 22 Users Say Thank You to flocke000 For This Useful Post: [ View ] Gift flocke000 Ad-Free
 
 
15th July 2017, 07:50 AM |#2  
flocke000's Avatar
OP Senior Member
Flag Düsseldorf
Thanks Meter: 303
 
More
Changelog
v0.6.1
  • New feature: Enable Android Backup by default if available and using the password encryption
  • Bug fix: Fix crash in the manual entry dialog on KitKat
  • Bug fix: Fix thumbnail generation on KitKat
  • Thumbnail: Add MediaWiki


v0.6.0
  • New feature: HOTP support
  • New feature: Settings item to activate Broadcast backups
  • New feature: Re-locking of the app on screen off is now optional (Issue #28)
  • New feature: Allow PGP backups with only a public key (Issue #31)
  • New feature: Show individual timeout bars on the cards for non-default periods
  • New feature: App shortcuts to add new entries (Issue #185)
  • New feature: Ask for the backup password if it's not available (Issue #182)
  • New feature: Allow installation on external storage (PR #206 by @leggewie)
  • Bug fix: Avoid crash on empty PIN/Password an API 23 (Issue #159, PR #160 by magnus anderssen)
  • Bug fix: Honor the system accessibility settings for the font size (Issue #71, PR #192 by @mbertram)
  • Bug fix: Make the new entry dialog scrollable (Issue #196)
  • Bug fix: Fix autofill of the password fields (Issue #215, PR #218 by @z3ntu)
  • Bug fix: Extend thumbnail generation to non-latin letters and digits (PR #234 by @JeanDeaual)
  • Bug fix: Show new entries at the top of the list when using last used sorting (Issue #211)
  • Bug fix: Fix a crash on the settings page (Issue #197)
  • Internal: Replace custon FAB menu with Floating Action Button Speed Dial library (Issue #155 and #186)
  • Style/UI: Use AboutLibraries instead of LicenseDialog and rework the About section (Issue #155)
  • Style/UI: Show a disclaimer about the included thumbnails in the About screen
  • Update: ZXing Android Embedded (3.6.0), Constraint Layout (1.1.2) and all support libraries (27.1.1)
  • F-Droid: Add the feature graphic and some screenshots (PR #117 by @jaller94)
  • Thumbnails: lots of new thumbnails (see the wiki)

v0.5.0
  • New feature: Intro screen when staring the app for the first time to setup encryption and authentication
  • New feature: Broadcast receivers to trigger backups from Tasker (PR #115)
  • New feature: Add support for using Android Backup (Issue #109, PR #111)
  • New feature: Optionally append date to backups (PR #124)
  • New feature: Check if entries are valid when entering manually (Issue #135, PR #136 by Björn Richter)
  • New feature: Offer different options when using the tag selection (Issue #133, PR #134)
  • New feature: Show a warning before changing the encryption
  • Bug fix: Fix crash when saving an empty label (Issue #138, PR #139 by Björn Richter)
  • Bug fix: Fix visibility of thumbnails in dark themes (Issue #88, PR #90)
  • Bug fix: Don't require credentials again after screen rotation (Issue #152)
  • Thumbnails: new thumbnails (see the wiki)

v0.4.0
  • New feature: Password-based encryption (a big thanks to all the testers)
  • New feature: Enforce a minimum password / PIN length (Issue #107)
  • New feature: Add an additional unlock button to the authentication (Issue #87)
  • New feature: The thumbnail toggle is now in the size selector (Issue #98, PR #102)
  • New feature: Split the tokens into blocks (Issue #83, PR #83 by DanielWeigl)
  • New feature: Account name is now shown in the removal confirmation (Issue #84)
  • New feature: Advanced options are now hidden in the manual entry dialog (Issue #85)
  • New special feature: Clear the KeyStore (use with caution)
  • Bug fix: Change the format used to store and set the language (Issue #112)
  • Bug fix: Add some extra padding the the RecyclerView (Issue #95)
  • Bug fix: Remove gradients from vector thumbnails (Issue #103, PR #97)
  • Thumbnails: a lot of new thumbnails (check the wiki for details)
  • Translation: Catalan (ca-rES) thanks to isard

v0.3.1
  • Move: the Github repository was moved from flocke/andOTP to andOTP/andOTP for better organization of collaborators
  • New feature: assign (predefined) images to entries (Issue #14, PR #75, again thanks to @RichyHBM for the implementation)
  • New feature: sort labels locale-sensitive (PR #74 by carmebar)
  • New feature: re-hide the revealed entries after a configurable timeout (Issue #77)
  • New feature: add sorting by last usage (Issue #67)
  • New feature: improved error messages during the import of backups
  • New feature: make the replace switch default to false (Issue #80)
  • New special feature: disable Special features again
  • New special feature: enable screenshots in the main Activity
  • Bug fix: use sp for font sizes (to make them scalable)
  • Bug fix: disable the save button in a manual entry until label and secret are not empty (Issue #82)
  • Style/UI: better description of the replace switch
  • Update: Android SDK 27 (Issue #76)
  • Update: Android Gradle plugin 3.0.1
  • Translation: Chinese Simplified (zh-rCN) thanks to Cp0204

v0.3.0
  • New feature: tagging support (Issue #37, PR #64, big thanks to @RichyHBM for actually implementing this)
  • New feature: settings option to scroll overlong labels instead of just truncating them
  • New feature: option to append entries during import instead of just replacing everything
  • New feature: in-app language switcher (Issue #53)
  • Bug fix: convert secrets to upper case when importing from JSON (Issue #55)
  • Bug fix: some layout fixes for certain translations (Issue #58)
  • Style/UI: new adaptive icon for Android 8+ (Issue #65)
  • Style/UI: remove card elevation
  • Update: Android Studio 3
  • Update: Gradle 4.1 / Android Gradle Plugin 3.0

v0.2.8
  • New feature: store authentication credentials hashed (Issue #49)
  • New feature: store backup password encrypted (Issue #49)
  • New feature: set a static backup dir to disable the file selector (Issue #52)
  • New feature: special features (see wiki)
  • New special feature: SteamGuard tokens (Issue #38)
  • Style/UI: black theme (Issue #47)
  • Bug fix: keep authentication settings when receiving a Panic Trigger (Issue #50)
  • Bug fix: progress bar animation with default duration scale
  • Translation: Czech (cs-rCZ) thanks to Picard0147

v0.2.7
  • New feature: require authentication again after screen lock (Issue #28)
  • New feature: make response to Panic Trigger configurable (Issue #35)
  • Bug fix: prevent adding duplicate entries (Issue #41)
  • Update: Android SDK 26 (Oreo)
  • Update: Apache Commons Codec 1.10
  • Code: lot of internal changes (mostly due to the Android 26 update)
  • Translation: French (fr-rFR) thanks to Johan Fleury
  • Translation: Durch (nl-rNL) thanks to T-v-Gerwen and rain2reign
  • Translation: Galician (gl-rES) thanks to Triskel
  • Translation: Russian (ru-rRU) thanks to Victor Nidens, Ilia Drogaitsev and Dmitry

v0.2.6
  • New feature: custom password preference with confirmation (Issue #26)
  • New feature: use an individual password or PIN to lock the app (Issue #23)
  • New feature: support for Panic Trigger (PR #27 by carmebar)
  • New feature: support for variable digits lenths (PR #30 by SuperVirus)
  • Bug fix: OpenPGP with security token (Issue #20, PR #25 by carmebar)
  • Style/UI: add Contributors, Translators and Translate to About
  • Code: internal refactoring
  • Translation: German (de-rDE) thanks to SuperVirus

v0.2.5
  • New feature: sort the entries by label (Issue #12)
  • New feature: add support for SHA256 and SHA512 (Issue #24)
  • Bug fix: show current theme in the settings
  • Bug fix: don't show FloatingActionMenu when scrolling while searching
  • Code: lots of internal refactoring
  • Translation: Polish (pl-rPL) thanks to Daniel Pustuła
  • Translation: Spanish (es-rES) thanks to Carlos Melero

v0.2.4
  • New feature: make the font size of the labels configurable (Issue #18)
  • Style/UI: Dark theme (Issue #3)
  • Bug fix: make the backup activity scrollable (Issue #15)
  • Bug fix: remove swipe-to-dismiss to avoide accidental deletions (Issue #13)
  • Bug fix: use the whole card for tap-to-reveal, not just the token (Issue #10)
  • Code: internal changes (as always)

v0.2.3
  • New feature: encrypted backups with password
  • New feature: show a warning about backups on the first launch
  • Style/UI: rename Export and Import to Backup and Restore
  • Bug fix: don't require device authentication again after screen rotation (Issue #7)
  • Bug fix: hide the FloatingActionMenu on scroll (Issue #8)
  • Bug fix: rename the apps launcher icon to "andOTP" (Issue #6)
  • Bug fix: restrict the label size so they don't overlap with the buttons (Issue #9)
  • Code: lots of internal refactoring

v0.2.2
  • Bug fix: resume import and export after permission request
  • Bug fix: implement a working hashCode function for the Entry class
  • Code: add missing copyright headers
  • Code: fix some tests
  • Code: remove outdated tests

v0.2.1
  • New feature: encrypted backups using OpenPGP
  • Style: new about screen
  • Style: new backup screen
  • Code: a lot of refactoring

v0.2.0
  • New feature: copy token to clipboard
  • New feature: device credentials to unlock app
  • New feature: manually enter account details
  • New feature: search
  • New feature: settings activity
  • New feature: tap to reveal
  • Style: replace FAB with a custom FloatingActionMenu
  • Style: replace all Snackbars with Toasts
  • Update: ZXing Android Embedded v3.5.0
  • Code: a lot of internal fixes and refactoring
  • Code: initial groundwork to support different types of OTP tokens (e.g. HOTP)

v0.1.0
  • Initial release (beta) of the fork
The Following 3 Users Say Thank You to flocke000 For This Useful Post: [ View ] Gift flocke000 Ad-Free
15th July 2017, 07:50 AM |#3  
flocke000's Avatar
OP Senior Member
Flag Düsseldorf
Thanks Meter: 303
 
More
Reserved
The Following User Says Thank You to flocke000 For This Useful Post: [ View ] Gift flocke000 Ad-Free
22nd July 2017, 12:25 AM |#4  
Member
Thanks Meter: 8
 
More
Hello. Is there any way to transfer existing entries from OTP Authenticator? Thanks.
22nd July 2017, 07:34 AM |#5  
flocke000's Avatar
OP Senior Member
Flag Düsseldorf
Thanks Meter: 303
 
More
Quote:
Originally Posted by alveola666

Hello. Is there any way to transfer existing entries from OTP Authenticator? Thanks.

Sadly not, OTP Authenticator has no backup function (as far as I know) and stores the accounts in the same encrypted way that andOTP uses. So you can't access the data outside of the app.
But I will look into it again next week, maybe there is some way I'm not seeing yet.
28th July 2017, 06:19 AM |#6  
flocke000's Avatar
OP Senior Member
Flag Düsseldorf
Thanks Meter: 303
 
More
v0.2.3
New version up: 0.2.3
See the 2nd post for the changes.
28th July 2017, 01:54 PM |#7  
jerryn70's Avatar
Senior Member
Thanks Meter: 396
 
More
Its Simple smooth good looking and open source.
Good job friend .
The Following User Says Thank You to jerryn70 For This Useful Post: [ View ] Gift jerryn70 Ad-Free
30th July 2017, 09:05 AM |#8  
Junior Member
Thanks Meter: 0
 
More
Hello,

I have a problem with the app.
It was recommended to me by a friend yesterday. I like the idea of a backup option, so I tried the software.
Everything seemed to work so I switched all my 2FA´s to this app and created a backup.
Today I open die app and nothing is shown.
Had a similar problem yesterday, but after hitting the back button all entrys were shown.
Now hitting the back button ends the app.
Restoring the backup doesn´t help either. List seems empty.
Any ideas how to fix this issue?
This would be quite annoying and really problematic if I´d be unable to fix this.

Thanks in advance.

System:
LG G4 - LinageOS 14.1 - Android 7.1.2
andOTP installed via google play store
30th July 2017, 10:15 AM |#9  
Member
Thanks Meter: 13
 
More
Suggestion to allow users to assign images to each account, or put them in categories or maybe a find function for those people that have a lot of accounts that support otp. Its easier to quickly browse through images and recall what account the image is associated to instead of looking through account names which can be tedious when managing a high number of accounts.
30th July 2017, 03:23 PM |#10  
flocke000's Avatar
OP Senior Member
Flag Düsseldorf
Thanks Meter: 303
 
More
Quote:
Originally Posted by funkygfx

Hello,

I have a problem with the app.
It was recommended to me by a friend yesterday. I like the idea of a backup option, so I tried the software.
Everything seemed to work so I switched all my 2FA´s to this app and created a backup.
Today I open die app and nothing is shown.
Had a similar problem yesterday, but after hitting the back button all entrys were shown.
Now hitting the back button ends the app.
Restoring the backup doesn´t help either. List seems empty.
Any ideas how to fix this issue?
This would be quite annoying and really problematic if I´d be unable to fix this.

Thanks in advance.

System:
LG G4 - LinageOS 14.1 - Android 7.1.2
andOTP installed via google play store

Could you head over to GitHub and post a logcat there: https://github.com/flocke/andOTP/issues/16
It seems like there are a few people with that issue but I was unable to reproduce it myself so far.

Quote:
Originally Posted by hotcakes_shinku

Suggestion to allow users to assign images to each account, or put them in categories or maybe a find function for those people that have a lot of accounts that support otp. Its easier to quickly browse through images and recall what account the image is associated to instead of looking through account names which can be tedious when managing a high number of accounts.

It's already requested here: https://github.com/flocke/andOTP/issues/14
Since it will take some work to implement this properly and it's not a feature necessary for the app to work properly it is very low on my priority list. A search function already exists, just hit the search icon in the toolbar.
4th August 2017, 01:28 PM |#11  
Junior Member
Thanks Meter: 1
 
More
Great work, thank you!
Post Reply Subscribe to Thread

Guest Quick Reply (no urls or BBcode)
Message:
Previous Thread Next Thread
Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes