Next update will break iCloud sync with old versions

Tap Forms – Organizer Database App for Mac, iPhone, and iPad Forums Using Tap Forms Next update will break iCloud sync with old versions

Viewing 16 reply threads
  • Author
    Posts
  • March 8, 2014 at 2:56 PM #9313

    Brendan
    Keymaster

    Hey everyone,

    I just wanted to get some feedback from you guys because the next update to Tap Forms will break compatibility with iCloud syncing with old versions of Tap Forms. Not that I ever officially supported that anyway. It did mostly work, but since new versions have changing database structures, it’s impossible to keep backwards compatibility with older versions. The next update will be updated to support the latest version of the SQLCipher encrypted database engine that I use. Please visit http://www.sqlcipher.net for more information if you’re interested in the details of the encryption used when you use the Encrypt Database function in Tap Forms.

    The version 3 SQLCipher library increases the security of the encrypted database files and makes it impossible for older versions of the library to open them. Version 3.7.2 for iOS and version 2.1.2 for Mac will be using this new library.

    It also has the benefit of being 64 bit compatible on iOS so Tap Forms will launch much faster on a 64 bit iOS device such as the iPad Air and iPhone 5S.

    Also in order to make the 64 bit transition, I had to rewrite the barcode scanning routines. It now uses Apple’s built-in barcode scanning routines in iOS 7. I had previously been using the open source ZBar for barcode scanning. So that’s one less 3rd party library to rely on. The drawbacks are that Apple’s barcode scanning code doesn’t support quite as many symbologies as ZBar did, although all the most popular ones are supported. I also haven’t been able to get it to scan any codes using the front camera (the same one used for FaceTime calls). So hopefully not too many people scanned using the front camera. I hope eventually I’ll be able to get that working.

    Anyway, so just an update on what’s coming and requesting your feedback on how you feel about requiring the latest versions on Mac and iOS for syncing.

    Thanks!

    Brendan

    March 17, 2014 at 1:21 PM #9425

    Anonymous
    Inactive

    Brendan –

    Moving forward with improvements is good and often necessary for reasons of increased security. Will there be some sort of manual migration method for users with older versions? Whilst it may be tedious to manually migrate from an older to a newer version, it is a task that is only very rarely required. As long as there is a migration path of some kind it is for the best.

    Joel

    March 17, 2014 at 2:11 PM #9427

    Brendan
    Keymaster

    Hi Joel,

    Thanks for the feedback. You’re the first!

    Migrating to the new format is easy. You just have to decrypt your database and then re-encrypt it and Reset iCloud Sync. It’s easy to do on the Security Settings screen. But you have to do the decryption and re-encryption on each of your devices. The Reset iCloud Sync can be done on just one device.

    Thanks!

    Brendan

    March 17, 2014 at 2:35 PM #9429

    Roy Cornett
    Participant

    Just so I understand, as long as we are running the most current version on all of our devices, be they iPad, iPhone and Mac (since I use all three), then we can safely upgrade without fear?

    March 18, 2014 at 2:28 AM #9436

    Brendan
    Keymaster

    Hi Roy,

    Yes, this is correct.

    Thanks!

    Brendan

    March 25, 2014 at 4:01 PM #9518

    Luc De Cock
    Participant

    Hello Brendan,

    Does this mean my iPad 1 running v3.1.3(74) will not iCloud sync any more if I upgrade iPhone 4 v3.7.(154) and MacBook Pro v2.1.1(459) to the next version?

    Luc

    March 25, 2014 at 4:34 PM #9523

    Brendan
    Keymaster

    Hi Luc,

    Yes, this is correct. Because your iPad 1 can’t run iOS 7, it cannot run the latest versions of Tap Forms HD. The problem is I can’t update the old version of Tap Forms to supper the new encrypted database format for sync files generated when you tap the upload to iCloud button.

    Thanks,

    Brendan

    April 2, 2014 at 9:27 AM #9608

    tonyt
    Participant

    I’m only a novice user but I thought syncing via iCloud added encryption automatically. Should I be using a key as well?
    Cheers
    tonyt

    April 2, 2014 at 12:22 PM #9612

    Brendan
    Keymaster

    Hi Tony,

    Yes, iCloud does encrypt data in transit and when the data is stored on disk on Apple’s servers.

    Please read about iCloud’s security policy here:

    http://support.apple.com/kb/HT4865?viewlocale=en_US&locale=en_US

    Tap Forms uses what Apple called “Documents in the Cloud”. Or on the devices it’s called “Documents & Data”.

    So, having said that, Tap Forms goes one step further and encrypts the database sync files before it sends them to iCloud. A database sync file is just the database file which contains all the changes you’ve made since the last time you uploaded to iCloud.

    The next update will go even one step further than that by using your own encryption key if specified. Right now Tap Forms uses a randomly generated encryption key to encrypt the database sync files. But to better protect your sensitive data Tap Forms will augment that encryption by using your own key as well as the randomly generated key. So even you won’t be able to decrypt the sync files even though you know your own key.

    The other issue is that Tap Forms currently uses SQLCipher version 2 for encrypting the database. I’ve upgraded to version 3 and the format of the database has changed a bit, so it renders old versions incompatible with the new database file format.

    I hope that’s not too confusing.

    Thanks!

    Brendan

    April 25, 2014 at 9:50 AM #9728

    tonyt
    Participant

    Yes – I am totally confused. Is there one single article / help file that explains EXACTLY how to set up encryption on multiple devices?

    Will I need to enter the encryption key every time I use TForms? I hope not.

    I am running TF 2.1.1 on my Macs and the latest version on my iPod. Will I be OK to set up encryption mow, assuming I can find on help on how to do it, or should I wait for any more updates?

    As you can see, I really am in a muddle and hope you can help me soon.

    Cheers

    tonyt

    April 27, 2014 at 7:08 PM #9744

    Brendan
    Keymaster

    Hi Tony,

    There’s not much to turning on encryption. Just set an encryption key on the Security Settings screen, then click the Encrypt Database button. Done.

    You will have to enter your encryption key every time you launch Tap Forms though.

    Thanks!

    Brendan

    April 28, 2014 at 11:09 AM #9754

    Joel Lieberman
    Participant

    Brendan –

    I have been following some of the comments and unless I am mistaken, I believe that there is some misunderstanding about how/why the database encryption is used.

    Please correct me if I am wrong, but my understanding is that database encryption is distinct and separate from any other encryption that 3rd parties such as Apple may use with both transmission and storage of any information (files) sent to them. While they may encrypt both the transmission and storage on their servers, TapForms users may be more comfortable with pre-encrypting their databases themselves just to be sure that there is no “back-door” with these 3rd parties as has been recently debated in the daily news stories.

    So if one really wants to be sure that they have done all they can to make their database private, they may choose to use TapForms local encryption. The mechanism is mediated via the SQLite3 libraries provided by SQLCipher that are part of TapForms and that have been independently verified to be legitimate.

    The missing piece that is perhaps overlooked is that if one chooses to encrypt their database, then this means that no one may ever open the database anywhere without supplying a proper pass-phrase. This includes the owner of the database because if the owner was not required to enter a pass-phrase on any arbitrary device, then a 3rd party with access to the device could get access to the database.

    I personally encrypt my TapForms database and while it is a bit of a chore to type in my passphrase on my devices, I at least know that no one else can pick up my device and get access to key data.

    Please let me know if I’m incorrect in any of my reasoning, and thanks again so much for such a wonderful application.

    Joel E. Lieberman, Ph.D.

    April 28, 2014 at 7:19 PM #9760

    Brendan
    Keymaster

    Hi Joel,

    Yes, you are correct. Tap Forms uses the SQLCipher database engine for encrypting the database and for encrypting any sync files (which are just mini copies of the database containing only the changes since the last sync) that get uploaded to iCloud. The actual encryption and decryption routines are provided by Apple’s Common Crypto library which is part of their Security framework. Consequently, it does not use the OpenSSL crypto library which has been in the news recently because of the Heartbleed bug.

    Thanks!

    Brendan

    April 30, 2014 at 11:31 AM #9845

    John Connell
    Participant

    Is this working in Lite? I received the update notice in my newly-acquired copy of Lite, but can’t find any reference to either Dropbox or iCloud. Didn’t find any reference to iCloud syncing in the PDF either. I really wanted to test the iCloud syncing.

    April 30, 2014 at 5:57 PM #9861

    Brendan
    Keymaster

    Hi John,

    iCloud Sync is only available in the Lite version if you use the in-app upgrade function available on the Tools screen. Alternatively you can just purchase the full version directly.

    Also Dropbox is accessible from the Files tab by tapping on the Dropbox icon. But you also need the full version upgrade to access Dropbox fully from the Lite version.

    Thanks,

    Brendan

    April 30, 2014 at 7:30 PM #9873

    John Connell
    Participant

    So there really are other differences in Lite, besides the number of records!?!

    April 30, 2014 at 9:07 PM #9874

    Brendan
    Keymaster

    Hi John,

    Yes. However, once you’ve used the in-app purchase to unlock the full version features within the Lite version, then there’s no difference between the Lite and full version other than the fact that if you move to a different device you have to use the “Restore Purchase” function to get back the full version features within the Lite version.

    Thanks!

    Brendan

Viewing 16 reply threads

You must be logged in to reply to this topic.