Updating README.md

This commit is contained in:
Hardcore Sushi 2020-08-27 12:00:45 +02:00
parent 4593fb5ea1
commit 3189a81f60
4 changed files with 40 additions and 24 deletions

View File

@ -16,37 +16,42 @@ DroidFS cannot protect you from screen recording apps, keyloggers, apk backdoori
Do not use this app with volumes containing sensitive data unless you know exactly what you are doing.
# Unsafe features
DroidFS allows you to enable/disable unsafe features to fit your needs between security and comfort.
It is strongly recommended to read the documentation of a feature before enabling it.
#### Allow screenshots:
Disable the secure flag of DroidFS activities. This will allow you to take screenshots from the app, but will also allow other apps to record the screen while using DroidFS.
Note: apps with root access don't care about this flag: they can take screenshots or record the screen of any app without any permissions.
#### Allow opening files with other applications:
Decrypt and open file using external apps. This require writing the plain file to disk (DroidFS internal storage).
#### Allow exporting files:
Decrypt and write file to disk (external storage). Any app with storage permissions can access exported files.
#### Allow sharing files via the android share menu:
Decrypt and share file with other apps. This require writing the plain file to disk (DroidFS internal storage).
#### Allow saving password hash using fingerprint:
Generate an AES-256 GCM key in the Android Keystore (protected by fingerprint authentication), then use it to encrypt the volume password hash and store it to the DroidFS internal storage. This require Android v6.0+
<ul>
<li><h4>Allow screenshots:</h4>
Disable the secure flag of DroidFS activities. This will allow you to take screenshots from the app, but will also allow other apps to record the screen while using DroidFS.
Note: apps with root access don't care about this flag: they can take screenshots or record the screen of any app without any permissions.
</li>
<li><h4>Allow opening files with other applications:</h4>
Decrypt and open file using external apps. This require writing the plain file to disk (DroidFS internal storage).
</li>
<li><h4>Allow exporting files:</h4>
Decrypt and write file to disk (external storage). Any app with storage permissions can access exported files.
</li>
<li><h4>Allow sharing files via the android share menu:</h4>
Decrypt and share file with other apps. This require writing the plain file to disk (DroidFS internal storage).
</li>
<li><h4>Allow saving password hash using fingerprint:</h4>
Generate an AES-256 GCM key in the Android Keystore (protected by fingerprint authentication), then use it to encrypt the volume password hash and store it to the DroidFS internal storage. This require Android v6.0+.
</li>
</ul>
# Permissions
DroidFS need some permissions to work properly. Here is why:
#### Read & write access to shared storage:
Required for creating, opening and modifying volumes and for importing/exporting files to/from volumes.
#### Biometric/Fingerprint hardware:
Required to encrypt/decrypt password hashes using a fingerprint protected key.
#### Camera:
Needed to take photos directly from DroidFS to import them securely.
<ul>
<li><h4>Read & write access to shared storage:</h4>
Required for creating, opening and modifying volumes and for importing/exporting files to/from volumes.
</li>
<li><h4>Biometric/Fingerprint hardware:</h4>
Required to encrypt/decrypt password hashes using a fingerprint protected key.
</li>
<li><h4>Camera:</h4>
Needed to take photos directly from DroidFS to import them securely.
</li>
</ul>
# Download
You can download the latest version [here](https://github.com/hardcore-sushi/DroidFS/releases).
@ -79,3 +84,14 @@ $ env ANDROID_NDK_HOME="<your ndk path>" OPENSSL_PATH="./openssl-1.1.1g" ./build
Then, open the DroidFS project with Android Studio.<br>
If a device (virtual or physical) is connected, just click on "Run".<br>
If you want to generate a signed APK, you can follow this [post](https://stackoverflow.com/a/28938286).
# Third party code
Thanks to these open source projects that DroidFS uses:
### Modified code:
- [gocryptfs](https://github.com/rfjakob/gocryptfs) to encrypt your data
### Libraries:
- [Cyanea](https://github.com/jaredrummler/Cyanea) to customize UI
- [Glide](https://github.com/bumptech/glide/) to display pictures
- [ExoPlayer](https://github.com/google/ExoPlayer) to play media files
- [CameraView](https://github.com/natario1/CameraView) to take photos

Binary file not shown.

Before

Width:  |  Height:  |  Size: 84 KiB

After

Width:  |  Height:  |  Size: 85 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 150 KiB

After

Width:  |  Height:  |  Size: 158 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 106 KiB

After

Width:  |  Height:  |  Size: 123 KiB