Kunzisoft / KeePassDX

Lightweight vault and password manager for Android, KeePassDX allows editing encrypted data in a single file in KeePass format and fill in the forms in a secure way.
https://www.keepassdx.com/
GNU General Public License v3.0
4.49k stars 266 forks source link

[Feature Request] Allow Scanning of QR codes for OTP and populating misc protected fields #1078

Closed DrKittens closed 3 years ago

DrKittens commented 3 years ago

I'm always frustrated when I need to input an OTP code as they're tedious to type out and an incorrect input will generate a failed code. Some sites even have time limits on the validation check and if you're too slow it renews with a different identifier.

Describe the solution you'd like The ability to scan a QR code to complete OTP as an entry option.

The ability to scan a QR code and populate an arbitrary field with its data, ex Wifi passwords are starting to become shared as QR codes. Been able to quickly store the data from it in keepass would be very useful over a photo of it.

Describe alternatives you've considered Ignoring the fact that KeepassDX has an OTP feature entirely and using an alternative purpose built app as I'm unsure as to what's more hassle, managing 2 apps for 1 job or dealing with poor UX.

Additional context Apologies if this is a duplicate, I had a quick search though opens for "QR" and nothing obvious jumped out.

J-Jamet commented 3 years ago

Duplicate #556 #743 #1059 #1033 Just use a dedicated application and share the OTP link to KeePassDX. https://github.com/Kunzisoft/KeePassDX/wiki/OTP#qr-code

kraoli commented 2 years ago

On the one hand I understand the idea not wanting to integrate a QR scanner. On the other hand, I really wish Keepass DX had one integrated.

My issue with using a link is security. First, QR scanner are often not build with security in mind. I don't feel super comfortable to share a QR code scanned by a QR app to Keepass DX.

I also really like the idea to use the camera to store photos directly in Keepass as attachment so that no other app could potentially access them (not sure if this is really possible without saving it unencrypted somewhere, e.g. in a cache or temporary files folder?)

J-Jamet commented 2 years ago

@kraoli The problem here is that you don't trust any application that handles QR codes, but the problem is the same if you don't trust the application that integrates it. The solution would be to create a QR code reader application that you trust (personally I don't think it's necessary because many QR code applications are very well done so it would just be a fork or a copy).

There is no problem passing information between applications, it's a technology inside the system that is made for that. (If you want more information, look at how intent works)