Disk Decipher supports three different types of encrypted disks
- Local (iOS only, macOS uses linked disks for all disks stored on your device)
This page explains the main differences between these disk types, allowing you to choose the type that best suits your use case.
A local disk is stored within the (protected) disk space of the app. The size of the encrypted disk image is accounted to the Disk Decipher app. No other app can access the disk unless you allow it to by using e.g. the Sharing option or the iOS File Provider.
Disk Decipher actually has two separate storage containers. For each local disk you can determine in which storage container the disk is placed, as described here. This determines how the disk can be accessed from other parts of iOS.
A linked disk is stored outside the Disk Decipher app. A linked disk can be stored on any location accessible by the Files app on iOS (or Finder on macOS). Except for external storage like USB and SMB, the entire disk is stored on your device. If you choose to store the disk inside another app (e.g. iCloud Drive or Dropbox), the consumed storage space will be attributed to that app.
For linked disks, Disk Decipher only holds a link (reference, shortcut, bookmark) to the encrypted disk image.
A remote disk is stored somewhere on a remote location (like Dropbox, Google Drive or any WebDAV capable server like a NAS). A remote disk will not be downloaded in full, the app will download only the small parts necessary to fullfill your request.
A local disk is not synchronized with other devices. By default, a local disk will be included in your iCloud/iTunes backup, you can change this for each disk individually.
For a linked disk, the owner of the storage location decides if and how the linked disk is synchronized. For example, if you store the linked disk on an external USB disk, the linked disk is not synchronized to other devices (unless you have a smart USB disk). But if you store a linked disk inside the iCloud Drive or Dropbox app, these apps will automatically synchronize the disk to other devices with these apps.
Note that it is the owning app's responsibility to do this efficiently, i.e. if the app just uploads the full disk image (instead of just the small parts that were updated), that will be terribly inefficient for large disk images.
A remote disk is stored on a remote device/server, and thus synchronizes if (and only if) that remote device/server performs any synchronization.
- Local and linked disks are writable (unless the filesystem used within the disk has no write support)
- Remote disks are only writable if the remote server supports partial updates (like NFS, and some WebDAV servers do). Most cloud storage providers like Dropbox and Google Drive do not support this.
Suppose you have an encrypted disk stored on Dropbox.
You could import it in Disk Decipher as local disk. This way you will store a copy of your disk in the app. Any changes you make to this container will be to the copy, and not be synchronised back to Dropbox.
You can install the Dropbox app, and after doing that, add the disk as linked disk. The Dropbox app will download the full disk image and store it within the Dropbox app. Any changes you make to the disk will be synchronised back to Dropbox by the Dropbox app.
You can add the disk as remote disk. The disk will be read-only in the app (since Dropbox does not provide an API for updating a file partly). Disk Decipher will only download those fragments of the disk needed to do its job, so if you open a 3 MB PDF file, it will download approx. 3 MB of encrypted data and show you the PDF file. The downloaded encrypted data will be removed when you close the disk.
Which type should I use?¶
This depends on your use case.
- If you don't require synchronization and you have sufficient space available on your device, a local disk is probably the best choice (fast, writable).
- Otherwise, if you have sufficient space available on your device, you probably want to use a linked disk as it provides the best performance (no latency while using the disk). If you require synchronization too, choose an owning app that performs this task efficiently (both downloading and uploading changes to the disk). Please let me know if you have compared the performance of several apps, so I can include that data here to help others.
- For all other cases, a remote disk is probably best, or alternatively a linked disk on external storage (like USB or SMB) if you don't require synchronization.