Privacy Browser 2.14 has been released. There are now encrypted import and export options. The password option uses standard Android tools to encrypt the file. A random salt is added to the password, which is then SHA-256 hashed and truncated. The export database is then encrypted using AES 256 GCM. Unfortunately, password encryption is not available on KitKat (Android 4.4, API 19) due to limitations in the encryption tools available with that release.
There is also an option to use OpenKeychain for encryption. Doing so requires that OpenKeychain be installed. Note that when using OpenKeychain, it is possible to directly export a file, but not directly import one. Rather, OpenKeychain will decrypt the database and store it unencrypted in a file specified by the user. Then the unencrypted import can be run as a second step.
A bug was fixed that sometimes caused importing to fail. Android differentiates between between the READ_STORAGE permission and the WRITE_STORAGE permission, even though the user interface combines them as the Storage permission. When importing databases, previously only the READ_STORAGE permission was requested. If the WRITE_STORAGE permission had been granted sometime in the past, it would be included as well. Otherwise, only READ access would be available. This would not appear to be a problem, because when importing a database it was opened in read only mode. However, even when opening a database in read only mode, SQLite requires the creation of a journal file in the same directory as the database, which requires WRITE permissions.
The workaround for this problem was to either 1) grant the WRITE_STORAGE permission for the app by either downloading or exporting a file prior to running an import, or 2) importing the file from an app directory that doesn’t require the WRITE_STORAGE permission to write temporary files. With Privacy Browser 2.14, WRITE_STORAGE permission is always requested when importing files from public directories.
There is now a quick toggle for proxying through Orbot.
As part of adding the proxying entry to the options menu, the Print option has been moved to the Layout submenu. It is likely that at some point in the future Find on Page and Add to Home Screen will also be moved under a submenu.
There is now an option to use an external app to download files. On Nougat (Android 7, API 24-25), there is a bug that causes Android’s Download Manager to not function when a VPN is enabled.
A bug was fixed when clearing DOM storage from the options menu. After editing the URL text bar, the text now scrolls back to the beginning. The system back arrow (at the bottom of the screen) now exits a bookmark subfolder directly back to the main activity. The app back arrow (at the top of the screen), continues to move up to parent bookmark folders and only exits the Bookmarks activity if it is in the root folder.
The app icon has been switched back to the old style for older version of Android. This will make the icon bigger and remove the white background. On newer version of Android, an adaptive icon will continue to be used.
This release also adds an additional intent filter. Previously, Privacy Browser would only be presented as an option for
android.intent.action.VIEW intents. Now it also handles
android.intent.action.WEB_SEARCH. This should result in Privacy Browser being offered to open some links where it previously wasn’t.
Thanks to Francesco Buratti for updating the Italian translation and Jose A. León for updating the Spanish translation. There is also an updated Russian translation.
The next release of Privacy Browser will remove Google’s Ad Consent library from the Free flavor.