We’re happy to announce the release of Codebook for Mac 3.0.11 and Codebook for iOS 3.1.3 which introduce a new setup assistant to guide you through setting up Codebook for the first time, or on a new device.
The assistant guides you through:
- Setting up your master password
- Enabling Touch ID on iOS (if available)
- Enabling Anonymous Statistics
- Setting up Sync or, if this isn’t your first time using Codebook, restoring your data.
The new first time setup experience may sound like it doesn’t apply to you, a long time and valued customer, but sometimes we need to install Codebook fresh or on a new device. The new first time setup experience provides the option of restoring your data during setup.
Editing From Secret Agent:
Sometimes we find ourselves needing to create or change a password and we automatically trigger the Secret Agent keyboard shortcut only to realize as soon as it comes up that it currently can’t help us with this. The Edit button on the entry view displays the Main Window, looks up the entry, and puts the interface in edit mode.
Hey everyone, we have some very exciting news to share with all iOS and Android users in France: We are once again selling our well known password manager and note taker Codebook in the French iTunes App Store and the French Google Play Store!
It has been about 4 years since we had to stop selling Codebook (named
STRIP at that time,
Strip on your iPhone’s home screen) due to French laws regarding the selling of encryption software but we recently received approval to start selling our software in France again and we are really excited.
Upgrading from Version 1 to Version 3
Our existing customers in France stopped receiving iOS updates around version 1.6, and the current version is 3.1. We have tested the upgrade from the old STRIP versions to the new Codebook versions and there do not appear to be any issues. However, we recommend that you first backup your device to iTunes or iCloud or use the Sync feature to sync your data with a Dropbox account.
Name and Icon Changed - Codebook is STRIP!
STRIP was renamed to Codebook and it has a new icon on your iOS home screen:
If you currently get automatic updates from Apple, once the app is released in France, it will automatically update the current STRIP app to Codebook and replace the icon on your home screen. If you leave this setting on and notice that your STRIP icon is gone and you now see a new Codebook icon, this is OK, DO NOT delete it as this is the new version of STRIP. You can login with the same password you have been using for STRIP and all your data should be intact.
While We Were Away
There have been quite a few other changes to Codebook for iOS since version 1.6. A modern interface, fixes and improvements, and lots of new features. We’ve also created ports of Codebook for Android, macOS, and Windows, making your passwords available on other devices you use.
An incomplete listing of new features and improvements:
Please contact us at email@example.com if you have any questions. You can visit our original announcement of the change from STRIP to Codebook to learn more about the transition.
SQLCipher for Android 3.5.2 was just released, addressing two specific items since our recent Android N release. First, we have corrected an issue in which the UTF-16 encoded content was not translated correctly under a few specific situations. In a scenario where the underlying type affinity of the column of the database is
TEXT, and numeric values were stored in that column, queries that returned that value and attempted to retrieve the value via
getDouble(…) would incorrectly translate the content, misrepresenting the stored value. This has been corrected, and tests have been added to the SQLCipher for Android test suite to track the correct behavior for the future.
The last change updates the C++ library support included within the native platform libraries, switching from the LLVM C++ static library to the STLport static library. This provides increased support on certain deployment scenarios specific to the
armeabi platform. We have updated the SQLCipher for Android integration tutorial providing instructions for utilizing the latest binaries.
We are happy to announce the release of SQLCipher for Android 3.5.1. This is an urgent and mandatory upgrade for applications wishing to support Android N when it is publicly released.
This release of SQLCipher for Android incorporates several major changes to facilitate operating on Android 2.1 through Android N, supporting
x86 platforms. The Google Android team contacted us directly, requesting many of the changes below. These changes were mandatory to make SQLCipher for Android compatible with Android N. Below is a highlight of the changes that are included with the latest release:
- All internal and third-party library dependencies except for OpenSSL (the crypto provider) have been removed. This includes libbinder, libandroid_runtime, libnativehelper, libcutils, libutils, and libicuc.
- Non-essential Google AOSP legacy provider code and supporting code has been removed
- The library has been converted to use native UTF-16 encoding internally instead of performing redundant on-the-fly translation
- Multiple related changes to the JNI layer
- Removal of collation sequences that are dependent on ICU or AOSP libraries
There have been some significant benefits to this effort:
- SQLCipher for Android is now compatible with the latest Android N Developer Preview 4 (i.e., build NPD56N)
- The build process has been drastically simplified and is now much easier to understand
- Issues with characters that fall outside of the basic multilingual plane (e.g. emoticons) have been resolved
- Less time is required to build the library from source
- Only a single native .so library is required for each platform
- The resulting libraries are much smaller that before (armeabi is only 1.6 MB), and no longer require a large supporting ICU database
- These architecture changes pave the way for future improvements like API modernization and improved x64 support
Instructions for installing the latest release of SQLCipher for Android can be found here.
If your previous usage of SQLCipher for Android was packaged as a zip archive that included 3 .so files per platform (i.e.,
libstlport_shared.so), you should remove all of those. Our new packaging will only include one .so file (i.e.,
libsqlcipher.so) for each native platform. In addition to the different native libraries, you should also remove the ICU zip file (i.e.,
icudt46l.zip) previously included within the assets directory of your application.
Important: This upgrade is required for all applications wishing to support Android N while using SQLCipher for Android. Without this upgrade, current installations of SQLCipher for Android will crash on Android N. We do not know the official release date of Android N, however Google is advising application developers to update their applications for imminent release in Q3. Therefore we strongly advise all applications to begin the upgrade and testing process immediately with this release.
SQLCipher core has long used the versioning scheme defined by semantic versioning, however many of our client libraries have utilized modified schemes to define their versions. As many of the client libraries we utilize as the basis for integrating SQLCipher are open source, often times their version schemes have already been defined.
Having different version schemes for our client libraries introduced confusion around a given library supporting a specific file format associated with a given SQLCipher core release. We may make changes to the upstream client library specific to SQLCipher integration and need a means of conveying that. To address this, we will utilize the X.Y.Z version scheme, for both SQLCipher core and client libraries, however we are adjusting the rules associated with the various version segments to properly align with our domain.
Modified X.Y.Z version rules for SQLCipher:
- X will map to the major version of SQLCipher (i.e., file format compatibility)
- Y will map to major changes in the client or core library (i.e., security fix)
- Z will map to minor changes in the client or core library
We plan to adopt this scheme going forward as we release new and updated client libraries with the aim of simplifying and consildating the versioning schemes across our libraries.