Coder Social home page Coder Social logo

beemdevelopment / aegis Goto Github PK

View Code? Open in Web Editor NEW
8.3K 89.0 353.0 21.57 MB

A free, secure and open source app for Android to manage your 2-step verification tokens.

Home Page: https://getaegis.app

License: GNU General Public License v3.0

Java 96.10% HTML 2.04% Roff 1.86%
otp totp hotp android secure encryption fingerprint 2fa authenticator hacktoberfest

aegis's Introduction

App icon

Aegis Authenticator


Build Crowdin Donate Matrix

Aegis Authenticator is a free, secure and open source 2FA app for Android. It aims to provide a secure authenticator for your online services, while also including some features missing in existing authenticator apps, like proper encryption and backups. Aegis supports HOTP and TOTP, making it compatible with thousands of services.

For a list of frequently asked questions, please check out the FAQ.

The security design of the app and the vault format is described in detail in this document.

Features

  • Free and open source
  • Secure
    • The vault is encrypted (AES-256-GCM), and can be unlocked with:
      • Password (scrypt)
      • Biometrics (Android Keystore)
    • Screen capture prevention
    • Tap to reveal
  • Compatible with Google Authenticator
  • Supports industry standard algorithms: HOTP and TOTP
  • Lots of ways to add new entries
    • Scan a QR code or an image of one
    • Enter details manually
    • Import from other authenticator apps: 2FAS Authenticator, Authenticator Plus, Authy, andOTP, FreeOTP, FreeOTP+, Google Authenticator, Microsoft Authenticator, Plain text, Steam, TOTP Authenticator and WinAuth (root access is required for some of these)
  • Organization
    • Alphabetic/custom sorting
    • Custom or automatically generated icons
    • Group entries together
    • Advanced entry editing
    • Search by name/issuer
  • Material design with multiple themes: Light, Dark, AMOLED
  • Export (plaintext or encrypted)
  • Automatic backups of the vault to a location of your choosing

Screenshots

Screenshot 1 Screenshot 2 Screenshot 3 Screenshot 4

Screenshot 5 Screenshot 6 Screenshot 7 Screenshot 8

Downloads

Aegis is available on the Google Play Store and on F-Droid.

Get it on Google Play Get it on F-Droid

Verification

APK releases on Google Play and GitHub are signed using the same key. They can be verified using apksigner:

apksigner verify --print-certs --verbose aegis.apk

The output should look like:

Verifies
Verified using v1 scheme (JAR signing): true
Verified using v2 scheme (APK Signature Scheme v2): true

The certificate fingerprints should correspond to the ones listed below:

Owner: CN=Beem Development
Issuer: CN=Beem Development
Serial number: 172380c
Valid from: Sat Feb 09 14:05:49 CET 2019 until: Wed Feb 03 14:05:49 CET 2044
Certificate fingerprints:
   MD5:  AA:EE:86:DB:C7:B8:88:9F:1F:C9:D0:7A:EC:37:36:32
   SHA1: 59:FB:63:B7:1F:CE:95:74:6C:EB:1E:1A:CB:2C:2E:45:E5:FF:13:50
   SHA256: C6:DB:80:A8:E1:4E:52:30:C1:DE:84:15:EF:82:0D:13:DC:90:1D:8F:E3:3C:F3:AC:B5:7B:68:62:D8:58:A8:23

Icon packs

Aegis supports icon packs to make it easier to assign icons to the entries in your vault. There are no official icon packs, but the community maintains a number of third-party icon packs you may want to check out. To learn how to create your own Aegis-compatible icon pack, see the documentation.

* The icons are automatically generated, so not all of them are as high quality as the ones you'll find in aegis-icons.

Contributing

Looking to contribute to Aegis? That's great! There are a couple of ways to help out. Translations, bug reports and pull requests are all greatly appreciated. Please refer to our contributing guidelines to get started.

Swing by our Matrix room to interact with other contributors: #aegis:matrix.org.

License

This project is licensed under the GNU General Public License v3.0. See the LICENSE file for details.

aegis's People

Contributors

acolombo11 avatar alexbakker avatar andreysaksonov avatar anibyl avatar bitscuity avatar bytehamster avatar codeall9 avatar cristianaunisa avatar deadmeu avatar derenderkeks avatar digitalheir avatar ewouth avatar ferhadnecef avatar infinitecoder06 avatar jas14 avatar jhenninger avatar lotusexpeditor avatar meskobalazs avatar michaelschattgen avatar notwoods avatar nourserry avatar orange-elephant avatar patrickvdlinden avatar sageptr avatar simonporte avatar strugee avatar timbals avatar toadsta avatar vstory avatar xconverge avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

aegis's Issues

Incorrect token for imported authy

I previously imported authy via andotp which I then imported into aegis, then I noticed that the token was wrong. Could you please consider adding authy support next for those 2fa which only option is via authy such as twitch, thanks.

Add support for Microsoft Authenticator's "phoneauth" URIs

Microsoft's MFA implementation uses a different URI format in their QR codes than the usual Google Authenticator ones.

The URIs have the following format: phonefactor://activate_account?code=123456789&url=https%3A%2F%2Fsomething.phonefactor.net%2Fpad%2F987654321.

This needs more investigation, as it's possible we can't even derive enough information from the URI to generate codes without an API call to Microsoft.

See also: https://docs.microsoft.com/en-us/azure/active-directory/user-help/microsoft-authenticator-app-how-to

Have tapping on a code copy it rather than open the menu.

Right now, when you tap on a code, it opens a menu with the options "copy", "edit", and "delete".

Given that after initial setup, users are almost always going to want to copy the code, can you make it so tapping on a code copies it, and long pressing on the code opens the menu?

This is how LastPass Authenticator does it.

Dark mode in main menu, doesn't work if you don't have any entries.

I noticed that dark mode does not become enabled until you add some entries to Aegis. If you don't have any accounts in Aegis and you select dark mode, the main menu does not use the dark theme.

This is a minor issue, but it would be good to fix for the sake of consistency.

Thank you for you work on this. I am probably going to switch from AndOTP. I like the UI more and I am hoping there will be more active development with Aegis.

Improve entry group management

Support for entry groups is fairly basic currently.

  • Create a separate DatabaseEntryGroup object for groups
    • Fields: UUID, Name
  • DatabaseEntry
    • Refer to groups by their UUID instead of their Name
    • Allow assigning an entry to multiple groups
  • EditEntryActivity
    • Allow assigning an entry to multiple groups
  • GroupManagerActivity
    • Require the user to click a "Save" button before actually saving any changes
    • Warn about unsaved changes by showing a "Discard changes?" dialog
    • Add the ability to rename groups
  • MainActivity
    • Support selecting multiple groups to filter on
    • Persist the selected group filter

Alternative Download Source

Would you mind providing the APK for those not using Playstore? For example, attach them to your releases (I could then automatically pick and provide them via my repo), or even going for the official F-Droid repo?

Thanks for considering!

Header: distinguish timer and top panel

In both Dark and Light modes timer indicator has the same color as the top panel:

Screenshot_20190327-092214_1

Perhaps, it can be green or red (or any other color different from the blue spectrum).

Enabling fingerprint fails with IllegalBlockSizeException

On latest F-Droid build, attempting to enable fingerprint unlock results in an IllegalBlockSizeException popup. logcat shows success from FingerprintService followed by E keystore: getAuthToken failed: -3.

Let me know if I can somehow gather additional logs or try different crypto parameters somewhere. Device is Xperia XZ running 8.1, fingerprints are working for device unlock.

Make text less cryptic

A lot of the language used for crypto-related actions is too cryptic for the average user. Nobody knows what "Deriving key from password" means, for instance.

The "Encryption" step in the intro activity has multiple issues

There are three issues here:

  1. The image is pixelated on KitKat (probably because we're using app:srcCompat without setting android.defaultConfig.vectorDrawables.useSupportLibrary to true)
  2. This image doesn't really fit in here in the first place
  3. The radio button list overflows into the bottom bar

image

Smaller boxes and text

I would love to be able to make the boxes, images, text, etc. a bit smaller. At the moment I just feel like everything is incredibly big. Would it be possible to add a size setting? To jump between. I still want to see the images though, so maybe just a smaller image, since the image is way faster to recongnise what the code is for. :)

Add quick sorting options

I know you can hold and drag entries to sort them, but having an option in the top bar to sort entries would help with longer lists.

This can include normal/reverse alphabetical, date added, list items in groups next to each other or separate, free sorting like what currently exists, etc.

Maybe even have new entries automatically sorted based on what mode you have selected.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.