Blind Hash Compression for Bandwidth-Efficient Device Fingerprinting

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current web content delivery systems face inefficiencies in transmitting device configuration information across various platforms, leading to increased bandwidth overhead and difficulties in identifying malware or fraudulent behavior due to the need for all devices to send data in uncompressed or losslessly compressed formats.

Innovation Solution

Implementing a system where client devices randomly determine whether to send data in compressed (hashed) or uncompressed formats, with the server system correlating compressed data using the same compression techniques, allowing for reduced bandwidth usage and faster identification of new features or malicious activities by adjusting the biasing value to influence data submission.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If all computing devices send uncompressed device configuration information to the server system, then the server system can accurately identify device characteristics and detect malware, but the bandwidth requirement increases significantly

Engineering Contradiction:
Improveaccuracy of device characteristic identificationVSAvoidbandwidth requirement
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

The patent segments the client devices into different groups based on a random selection mechanism. Some devices send uncompressed data while others send hashed data. This segmentation allows the system to balance between bandwidth efficiency and identification accuracy by having only a portion of devices contribute to the reference database.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent creates a reference database at the server system using device configuration information from selected clients. This reference database acts as a copy or representation of device characteristics, allowing the server to identify malware by comparing suspicious devices against this reference without requiring all devices to send their full configuration data.

Inventive Principle:
Principle #26Copying

2Quantity of substance

If computing devices send hashed (compressed) representation of device configuration information, then bandwidth usage is reduced, but the server system cannot immediately determine the original data meaning

Engineering Contradiction:
Improvebandwidth usageVSAvoidinterpretability of submitted data
Core Design Contradiction:
Quantity of substanceVSLoss of information

Solution Approach 1:

The patent introduces a reference database as an intermediary between the hashed data and its interpretation. The reference database stores the mapping between hashed representations and their original meanings, allowing the server system to interpret hashed data without receiving the original uncompressed information from all clients.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent performs preliminary actions by having selected computing devices send their uncompressed device configuration information first. This uncompressed data is used to build the reference database before hashed data needs to be interpreted, enabling subsequent efficient interpretation of compressed submissions.

Inventive Principle:
Principle #10Preliminary action

3Quantity of substance

If the server system builds a reference database using uncompressed data from selected clients, then it can correlate hashed data to original data, but there is a delay in identifying new features or malicious activities

Engineering Contradiction:
Improvebandwidth efficiencyVSAvoidtime to identify new features or malware
Core Design Contradiction:
Quantity of substanceVSLoss of time

Solution Approach 1:

The patent implements a dynamic biasing mechanism that allows the server system to adjust the proportion of clients sending uncompressed versus hashed data. When new features or potential malware need quick identification, the bias can be shifted to favor uncompressed submissions, enabling the system to adapt its bandwidth usage based on current operational needs.

Inventive Principle:
Principle #15Dynamics

4Speed

If the biasing value is adjusted to increase uncompressed submissions, then the server system can faster identify new features or malware, but bandwidth usage increases

Engineering Contradiction:
Improvespeed of identifying new features or malwareVSAvoidbandwidth usage
Core Design Contradiction:
SpeedVSQuantity of substance

Solution Approach 1:

The patent employs a dynamic biasing mechanism that allows real-time adjustment of the ratio between uncompressed and hashed data submissions. The biasing value can be increased to favor uncompressed submissions when rapid identification of new features or malware is needed, or decreased to favor hashed submissions when bandwidth conservation is the priority, enabling flexible adaptation to changing system requirements.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS10212137B1Blind hash compression
Publication Date: 2019.02.19 SHAPE SECURITY INC
  • US10212137B1 patent drawing
  • US10212137B1 patent drawing
  • US10212137B1 patent drawing

AI summary

A computer-implemented method includes serving, from a computer server system and to a plurality of different computing devices remote from the computer server system, web code and code for reporting status of the computing devices; receiving from one or more of the computing devices, first data that indicates a parameter of the one or more computing devices, the first data in a compressed format; receiving from one or more others of the computing devices, second data that indicates the parameter of the one or more others of the computing devices, the second data in an uncompressed format; and compressing the second data and comparing the compressed second data to the first data to correlate the first data to the second data. The code for reporting status of the computing devices can include code for allowing the computing devices to determine whether to send the first or second data.