Hashing Publisher and Private IDs for Secure Device Identification

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing methods for identifying computing devices and users raise user security concerns due to the sharing of excessive or broad usage data, and previous solutions, such as device fingerprinting, do not adequately address these issues.

Innovation Solution

A method that involves receiving a function call for a public identifier on a computing device, requesting and hashing a publisher ID and private data from secure memory locations, and returning a unique public identifier to the application, ensuring user anonymity and device identification without compromising security.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If device fingerprinting is used to identify computing devices, then device identification capability is improved, but user security and privacy are worsened due to collection and sharing of excessive usage data

Engineering Contradiction:
Improvedevice identification capabilityVSAvoiduser security and privacy risks
Core Design Contradiction:
Measurement precisionVSObject-affected harmful factors

Solution Approach 1:

The patent extracts only the necessary identification information from the device and user, separating it from broader usage data. By requesting specific parameters (publisher ID, device unique ID, anonymous identifier) rather than comprehensive usage data, the system achieves device identification while minimizing data collection and privacy risks.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent introduces a hash function as an intermediary that transforms private identification data into a public identifier. This intermediary layer allows device identification without exposing the original private data, creating a secure bridge between identification needs and privacy protection.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Adaptability or versatility

If comprehensive usage data is collected for analytics, then content personalization is improved, but user security concerns are worsened

Engineering Contradiction:
Improvecontent personalization capabilityVSAvoiduser security concerns
Core Design Contradiction:
Adaptability or versatilityVSObject-affected harmful factors

Solution Approach 1:

The patent extracts only the minimal necessary identification parameters needed for analytics and content personalization, excluding comprehensive usage data. By requesting only publisher ID, device unique ID, and anonymous identifier, the system enables personalization while minimizing data exposure and security risks.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent transforms sensitive identification parameters through hashing, changing their form from private raw data to encrypted public identifiers. This parameter transformation allows analytics and personalization to proceed while the original sensitive data remains protected and unreadable.

Inventive Principle:
Principle #35Parameter changes

3Measurement precision

If private device data is stored and accessed, then identification accuracy is improved, but device complexity and security management are worsened

Engineering Contradiction:
Improveidentification accuracyVSAvoidsecurity management complexity
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The patent segments identification data into distinct components stored in separate memory locations: publisher ID in the first memory location, device unique ID in the second memory location, and anonymous identifier in the third memory location. This segmentation allows accurate identification through combination of these discrete parameters while simplifying security management through organized, location-specific storage.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent uses a hash function as an intermediary that processes private device data and transforms it into a public identifier. This intermediary simplifies security management by providing a standardized, secure transformation process that handles the complexity of data protection without requiring complex security management systems.

Inventive Principle:
Principle #24Intermediary (Mediator)

Applied Scientific Principles

This section explains which scientific principles are used to turn an abstract innovation direction into a practical engineering solution.

Function Achieved in This Case

This approach effectively identifies devices and users while maintaining user privacy by creating unique public identifiers through hashing, thereby enhancing security and allowing publishers to target content appropriately without exposing private information.

Implementation Method 1

A hash operation is performed on the publisher ID and the private data to create the public identifier

Methodology Applied
Scientific EffectHash operation:

Data Source

PatentEP2904537B1Secure identification of computing device and secure identification methods
Publication Date: 2017.10.25 MICROSOFT TECHNOLOGY LICENSING LLC
  • EP2904537B1 patent drawing
  • EP2904537B1 patent drawing
  • EP2904537B1 patent drawing

AI summary

A method implemented on a computing device provides for identifying the device and/or a user to an application on the device. The method comprises receiving a function call for a public identifier, responding to the function call, performing a hash operation and returning the public identifier. Responding to the function call comprises requesting a publisher ID from a first memory location within the device and requesting a private ID from a second memory location. Performing a hash operation on the publisher ID and the private ID creates the public identifier. The public identifier is then returned to the application. A method of allowing a developer to test an application on a mobile device or emulator is also described. A mobile device programmed to return a public identifier to an application is also described.