alt text

As we have discussed on this blog, it is trivial for apps to copy all of your Google contacts to the Internet Cloud for future use and exploitation. Grant contacts permission to an app and in less than 10 seconds it is over, your hundreds or thousands of contacts are published to the Internet Cloud for unknown and nefarious purposes.

By design, Android facilitates sharing between apps. When your phone receives a phone call, the phone app checks the contact database for contacts with a matching phone number and displays the user name. This blog shows how CrypSafe can protect your contacts and still give you information about incoming phone calls.

As of CrypSafe version 1.2.59, the first contact matching the incoming phone number will be displayed in a Toast message and in your Android notification area. If no phone numbers match you will see “unknown caller”.

If you see “unknown caller”, and you have saved the callers name and number in CrypSafe, the problem is that CrypSafe requires phone numbers to be in your National Format. Here a few examples:

  • USA, two letter code US, national format (201) 555-5555
  • India, two letter code IN, national format 011 2345 6789
  • Switzerland, two letter code CH, national format 031 234 56 78

The standard used for two-letter country codes is ISO 3611-1. Note that spaces, dashes, parenthesis and all non-numeric characters are important.

You may be one of the lucky few that have all their phone numbers in just the right format. If so I bet your sock drawer is well organized as well, but for the rest of us not so much.

CrypSafe has a phone number formatting tool to help you get your phone numbers all formatted to your national standard.

  1. The first step is to make sure CrypSafe has the correct two-letter code for your country. The default is the US but this can be changed from the Settings page. Reference Wikipedia ISO 3166-1 alpha-2 if necessary.

  2. The second step is to format phone numbers with the Cleanup tool. Select the Import/Cleanup menu, select “Format phone numbers”. CrypSafe will first confirm the format for numbers then iterate through your entire list of contacts updating each number.

The result might look like:

Contacts: 1035
Total numbers: 558
Unchanged numbers: 318
Updated numbers: 240
Invalid numbers: 3

John Doe, Text don’t call him
Jane Doe, Always call John first
Jill Doe, ((201) 555-5555

This says that 318 numbers were already in the correct format, 240 numbers were updated and 3 numbers were determined to not be numbers. Next, CrypSafe displays the first few contacts with invalid numbers. In this example, the first two invalid numbers were not really numbers but comments entered into a phone number field and the third has an extra ‘(‘.

You can either leave invalid numbers as they are or manually fix them. The Cleanup command can be repeated as many times as necessary until the entire phone number list is properly formatted.


  1. Make sure CrypSafe has Phone Permissions. From the Settings menu, select Permission Manager. If “Phone” is not Enabled, select it and enable it.
  2. If the caller is shown as “Unknown caller”, make sure the callers phone number is formatted exactly as shown in the Settings menu “Country Code” section. Use the phone number formatter discussed above if necessary.
  3. CrypSafe displays the name of the first contact with a matching number. If you have more than one contact with the same number, the first contact will be shown.

In summary, CrypSafe maintains an SQLCipher encrypted database of all your contacts, notes, and passwords. No other Android app can access your personal information, even if your phone is rooted. When your phone receives a phone call, CrypSafe will now display the name of the caller in a Toast message as well as in the Android notification area.

Please contact the development team with any problems and issues. From inside CrypSafe, select Settings and Developer feedback. Thanks in advance and if you like what we do, consider making a donation.