We are looking to build a unique identifier system based on device graph or user graph consent. This system will generate a unique identifier which will be used to correlate users using our mobile applications on same device or different mobile devices (Android, iOS).
When a user installs our mobile app(s), the app(s) will send following two types of data set.
Deterministic User Data: For example, an email address or SSN which will "gurantee" the user identification
Probabilistic User Data: many a times user will not share deterministic data depending on the privacy options chosen on the mobile device. In that case, a combination of probabilistic user data such as following will be used to profile the user:
- IP address, cellular network, network speed, battery health, locale (region, preferred language), communication prefereneces gathered via MessageUIFramework ([login to view URL]) and so on. This list is expected to grow as we dig deeper.
The system will respond with a unique identifier based on the following logic. Depending on the data received, this system will do an internal search for existing user data. Based on the search outcome, the system will either generate a new unique identifier (if no match found) or return an existing identifier (if the user data matches a preexisting dataset).
We can use a fingerprinting approach or device graph approach or any other suitable approach. The response time is expected to be under 2 seconds for each unique identifier request. User base is about 70 million users.