Application-Based Hardware Identifier for Privacy

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Service providers face challenges in associating user devices with user accounts while maintaining user privacy, as existing methods often involve tracking device usage across multiple applications, which can infringe on users' privacy expectations.

Innovation Solution

Generating a device identifier based on both application information and device hardware components, ensuring that each application on a device has a unique identifier, and using a nonce with digitally signed data to protect against replay attacks, thus allowing service providers to associate devices with user accounts without violating privacy.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If service providers use device identifiers to track usage across multiple applications, then they can maintain device association and provide personalized services, but user privacy is violated due to cross-application tracking

Engineering Contradiction:
Improvedevice association reliabilityVSAvoidprivacy violation
Core Design Contradiction:
ReliabilityVSObject-affected harmful factors

Solution Approach 1:

The patent segments the device identifier into two separate components: an application-independent hardware identifier and an application-specific identifier. This segmentation allows the service provider to maintain reliable device association through the hardware identifier while preventing cross-application tracking by making the application-specific identifier isolated to individual applications, thus resolving the privacy violation issue.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces an intermediary mechanism where the operating system or trusted execution environment acts as a mediator between the hardware identifier and applications. This intermediary generates and manages application-specific identifiers without exposing the underlying hardware identifier to applications or service providers, enabling device association while protecting privacy through layered abstraction.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Adaptability or versatility

If service providers associate devices with user accounts, then they can control content access and provide personalized services, but they cannot prevent privacy violations from other applications on the same device

Engineering Contradiction:
Improveservice customization capabilityVSAvoidprivacy tracking
Core Design Contradiction:
Adaptability or versatilityVSObject-affected harmful factors

Solution Approach 1:

The patent segments the identification system into device-level and application-level components. The device-level hardware identifier enables service providers to associate devices with user accounts for content access control and personalized services. The application-level specific identifier isolates tracking scope to individual applications, preventing cross-application privacy violations while maintaining service customization capability.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent applies local quality by making the identifier's tracking scope application-specific rather than device-wide. Each application receives an identifier that is unique to its context, allowing service providers to customize services per device while limiting privacy intrusion to only the specific application context, not the entire device ecosystem.

Inventive Principle:
Principle #3Local quality

3Device complexity

If a single device identifier is used across all applications, then device association is simplified, but cross-application tracking becomes possible violating user privacy

Engineering Contradiction:
Improveidentifier management complexityVSAvoidcross-application tracking
Core Design Contradiction:
Device complexityVSObject-affected harmful factors

Solution Approach 1:

The patent segments the identifier system into two manageable parts: a stable hardware-based identifier for device association and an application-specific identifier for isolated tracking. This segmentation maintains relatively simple device association management while preventing cross-application tracking, as the application-specific identifiers are generated and managed within individual application contexts.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent creates a universal identifier management system that serves multiple functions: the hardware identifier provides device-level association across all applications, while the application-specific identifiers provide isolation for individual applications. This multi-functional approach simplifies overall identifier management while preventing privacy violations through contextual separation.

Inventive Principle:
Principle #6Universality (Multi-functionality)

Data Source

PatentUS10356204B2Application based hardware identifiers
Publication Date: 2019.07.16 MICROSOFT TECHNOLOGY LICENSING LLC
  • US10356204B2 patent drawing
  • US10356204B2 patent drawing
  • US10356204B2 patent drawing

AI summary

An application based hardware identifier is generated for an application on a device. The application based hardware identifier is generated based on both information describing the application and information describing one or more hardware components of the device. The application based hardware identifier can also optionally be based on an identifier of a user of the device. The application based hardware identifier can be provided by the application to a service provider, allowing the service provider to associate the application based hardware identifier with a particular user or user account. However, as the application based hardware identifier is based on the application information, different applications on the same device will have different application based hardware identifiers. The application based hardware identifier thus helps maintain privacy by preventing tracking of the device across different applications.