-
-
Notifications
You must be signed in to change notification settings - Fork 143
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[Feature Request] Encrypted Backups #40
Comments
I would like to suggest using 7z. 7z are compressed files, therefore all you will need to do is integrate 7zip into the app and when it does the export, you will set a password and it will create the backup file and then out it inside a compressed 7z file with a password. |
I would like to suggest 7z or gz as an option since they both support encrypted password protection. |
Shouldn't be Google Drive backups encrypted with the old phone's PIN? I am definitely sure about it. If privacy is a concern, one would not (as I did before A10) enable GDrive backups |
I am thinking it may make most sense to add an option to send the backup data to another app instead of writing it to SD card directly. Something like OpenKeyChain. That way we can also be sure the encrypting and decrypting is done by an app following best security practices. |
Maybe Aegis Authenticator can be used as a reference? It has password encrypted backup option, scheduled backups and biometric unlock. Before doing it all though best would be to contact devs - beemdevelopment. Basically you could solve this issue and app password protection as well. |
Yes, I would agree. The encryption would be best to be sent and handled to another app such as OpenKeychain with PGP. Another more complicated idea would be to offer the data as an export into a format that can be imported into Keepass (CSV?). But it would allow more universability if a user wanted to migrate the data away from Catima for whatever reason. |
Well, it looks like I'm going to implement this as a way to password-protect a .zip export. Reason as follows:
Not quite sure how secure the AES implementation is though, but I hope this will still make y'all happy anyway without making me spend a lot of time on this? |
I am tagging this as "good first issue" because the only things needed to implement this would be a dialog to enter the desired password and setting the password for zip4j to use in the export. Should not be very hard for anyone interested in this feature to pick up. |
Hii.. I want to take up this issue as it is both good-first-issue and hacktoberfest tagged. Could you please quickly get me upto speed on what needs to be done and the concerned Activity(s) where I would need to focus my energies? Also I am new to this whole Encryption business so please provide resources/links for me to be able to learn the required basics. |
Well, in this case the easiest thing would probably be to start with the unit test. That way you can try your changes very quickly. So first, copy the Make up some password, replace null in the Then, modify the After that, expand the export code to create a dialog and ask the user for a password they want to use: https://github.com/TheLastProject/Catima/blob/2128f0a601b5affd660ad6dd15e88026f6e3b92d/app/src/main/java/protect/card_locker/ImportExportActivity.java#L408-L422. Feel free to make the pull request early in development and mark it as Draft so I can guide you along the way. |
Hii..Thanks for the detailed guidelines! So just as per your advice above, I -
Now where I am facing some difficulty is passing password to zip4j. Password parameters can be added but this line seems to be non - optional. However, I couldn't find this line anywhere in the project. So I am having hard time determining where to add the encryption code. Please guide me on this. |
The zip4j documentation indeed seems to be slightly lacking. Looking at https://github.com/srikanth-lingala/zip4j/blob/2ec68db8b7dcac1e6867362c3cb1c80d5d793762/src/main/java/net/lingala/zip4j/io/outputstream/ZipOutputStream.java#L52-L54, it seems you can define a password in ZipOutputStream. Maybe that'll work? |
Wednesday Dec 12, 2018 at 21:36 GMT
Originally opened as brarcher/loyalty-card-locker#285
When you export a file it is not encrypted and this can be a concert when your backing this file up to cloud storage. Please add the ability to encrypt a file when it is backed up with a password and when you import the file it will as for the password to import the data.
The text was updated successfully, but these errors were encountered: