Estimote Secure Monitoring is multilevel protection against malicious attacks, based on packet sniffing, spoofing, and device tracking.
This guide describes the step by step process of enabling this mechanism for Estimote Beacons.
- 1 x computer with Android Studio.
- 1 x device with Android 5.0 or above.
- 1 x device with iOS 10.0 or above.
- 1 x Estimote Account (sign up here).
1 or more Estimote Proximity or Location Beacons. Note that Estimote Secure Monitoring is supported only on devices with Hardware Version F3.3 (see Fig. 1 to determine the Hardware Version of your device in Estimote Cloud.)
Fig. 1. Device details with highlighted Hardware Version.
Configure your beacons in Estimote Cloud
In order to enable Estimote Secure Monitoring you need to visit Estimote Cloud and pick one device with Hardware Version 3.3. To find all compatible devices type F3.3 into search field in Estimote Cloud as shown in Fig. 2.
Fig. 2 Searching for Devices compatible with Estimote Secure Monitoring
Pick one device by clicking its name or the Settings button.
On Device Details page choose Edit Settings button (like shown in Fig. 3).
Fig. 3 Device details with “Edit Settings” button
Under Device Section you can find field Estimote Secure Monitoring and you have an option to turn it on using the dropdown list. Pick On option and Save Changes like shown in Figure 4
Fig. 4 Enabling Estimote Secure Monitoring for specific device
Now your device has “Pending Settings”. You need to use Bulk Updater app to apply those settings.
Fig. 5 Device with “Pending Settings”
Sync settings from Estimote Cloud with Bulk Updater
Bulk Updater will update firmware of your beacons to the latest version (which supports Estimote Secure Monitoring) and write Estimote Secure Monitoring settings to device - Beacon will be protected.
Download the app from this link:
Start with logging into your account into Estimote Cloud. To do so click Account icon in Home View (Fig 6). In Logging View type email and password associated with your account (Fig. 7).
Fig. 6 Bulk Updater Home View with highlighted Account icon.
Fig. 7 Bulk Updater Logging View.
After you successfully log-in, the application will start scanning for beacons around you. Note that you need to be within a few meters from beacons to apply settings. When scanning has been finished, toggle the switch to include updates for firmware (Fig. 8) and start updating procedure - click “Start Updating”. Update Information screen shows the number of devices with “Pending Settings” - if you have enabled Secure Monitoring there should be at least 1 device and devices with a possible firmware update (all with Hardware Version F3.3 or G1.12 assigned to your account). The application will show you the progress of updating firmware and settings synchronization (Fig. 9) and will either return a success screen (Fig.10) or failure (Fig. 11). After a failure you should repeat the sync procedure.
Fig. 8 Bulk Updater Home View with highlighted Update Firmware toggle button
Fig. 9 Bulk Updater Updating View in progress.
Fig. 10 Bulk Updater Update completed view - success.
Fig. 11 Bulk Updater Update completed view - failure.
After successful settings synchronization check if “Pending settings” have disappeared from Cloud (Fig 5) and Secure Monitoring is “ON”, if not repeat synchronization procedure.
Start Monitoring for devices with Estimote Secure Monitoring in Proximity SDK
Update Proximity SDK
Update this line in your build.gradle file:
> implementation 'com.estimote:proximity-sdk:0.3.0'
ProximityObserver is now using Estimote Secure Monitoring by default. It scans for both encrypted/unencrypted EstimoteLocation packets. There is a possibility to disable it using .withEstimoteSecureMonitoringDisabled() when building the ProximityObserver. This will cause it to observe only for unencrypted packets.