IP Library Granted Patent US 12,114,051
Granted Patent B2
US 12,114,051 · App. 18/200,883 · Granted Oct 8, 2024

Verifying the rendering of video content at client devices using trusted platform modules

Inventors: Oliver Woodman (London, GB); Andrew Benedict Lewis (London, GB)
Assignee: GOOGLE LLC
H04N21/8352G06Q30/0242G06Q30/0248G06Q30/0277H04L63/00H04N21/23418H04N21/2347H04N21/2541H04N21/25816H04N21/44008H04N21/4408H04N21/44204H04N21/64715H04N21/6581
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12,114,051
App. No.
18/200,883
Granted
Oct 8, 2024
Kind
B2
Abstract

Systems and methods for verifying the rendering of video content on information resources are provided herein. A server can receive, from a target client device, a tracking message purporting to relate to delivery of a target content item; determine whether the tracking message contains an identifier of a sending device that sent the tracking message; determine whether the sending device and the target client device are the same device; if the sending client device and the target client device are the same device: recover, from the tracking message, information about at least a portion of a frame of a content item processed by a trusted platform module of the client device; and compare the at least a portion of the frame of the content item processed by a trusted platform module of the client device with a target content item.

Claims (57)

1. A method of verifying an identity of a client device, comprising, by a server:

receiving, from a target client device, a tracking message purporting to relate to delivery of a target content item;

determining whether the tracking message contains an identifier of a sending device that sent the tracking message;

determining whether the sending device and the target client device are the same device;

if the sending client device and the target client device are the same device:

recovering, from the tracking message, information about at least a portion of a frame of a content item processed by a trusted platform module of the client device; and

comparing the at least a portion of the frame of the content item processed by a trusted platform module of the client device with a target content item.

2. The method of claim 1 , further comprising:

disregarding the tracking message if the at least a portion of the frame of the content item processed by a trusted platform module of the client device is not included in the target content item.

3. The method of claim 1 , further comprising:

determining whether the tracking message was generated by the trusted platform module of the target client device; and

if the tracking message was not generated by the trusted platform module of the target client device, disregarding the tracking message.

4. The method of claim 1 , further comprising:

determining whether the frame of the content item processed by the trusted platform module of the client device is a predesignated frame selected by the server.

5. The method of claim 1 , further comprising:

estimating the computation complexity for a subset of frames of the target content item by performing a simulated processing of the target content item to estimate a computation complexity metric.

6. The method of claim 5 , wherein the computation complexity metric includes at least one of: process time, processor usage, memory usage, or power consumption.

7. The method of claim 5 , further comprising:

identifying an encoding type for each frame of the subset of frames of the target content item.

8. A system for verifying an identity of a client device, comprising:

a data processing system having one or more processors;

a content deliverer executed on the data processing system having one or more processors, configured to receive, from a target client device, a tracking message purporting to relate to delivery of a target content item;

an identity verifier executed on the data processing system, configured to:

determine whether the tracking message contains an identifier of a sending device that sent the tracking message, and

determine whether the sending device and the target client device are the same device; and

a recovery module executed on the data processing system, configured to, if the sending client device and the target client device are the same device:

recover, from the tracking message, information about at least a portion of a frame of a content item processed by a trusted platform module of the client device; and

compare the at least a portion of the frame of the content item processed by a trusted platform module of the client device with a target content item.

9. The system of claim 8 , wherein the recovery module is further configured to:

disregard the tracking message if the at least a portion of the frame of the content item processed by a trusted platform module of the client device is not included in the target content item.

10. The system of claim 8 , the recovery module is further configured to:

determine whether the tracking message was generated by the trusted platform module of the target client device; and

if the tracking message was not generated by the trusted platform module of the target client device, disregard the tracking message.

11. The system of claim 8 , wherein the identity verifier is further configured to:

determine whether the frame of the content item processed by the trusted platform module of the client device is a predesignated frame selected by the server.

12. The system of claim 8 , the content deliverer is further configured to:

estimate the computation complexity for a subset of frames of the target content item by performing a simulated processing of the target content item to estimate a computation complexity metric.

13. The system of claim 12 , wherein the computation complexity metric includes at least one of: process time, processor usage, memory usage, or power consumption.

14. The system of claim 12 , wherein the content deliverer is further configured to:

identify an encoding type for each frame of the subset of frames of the target content item.

15. A tangible, non-transitory computer-readable medium storing instructions for verifying an identity of a client device that, when executed by one or more processors of a data processing server, cause the data processing server to:

receive, from a target client device, a tracking message purporting to relate to delivery of a target content item;

determine whether the tracking message contains an identifier of a sending device that sent the tracking message;

determine whether the sending device and the target client device are the same device;

if the sending client device and the target client device are the same device:

recover, from the tracking message, information about at least a portion of a frame of a content item processed by a trusted platform module of the client device; and

compare the at least a portion of the frame of the content item processed by a trusted platform module of the client device with the target content item.

16. The tangible, non-transitory computer-readable medium of claim 15 , wherein the non-transitory computer-readable medium further includes instructions that, when executed by the one or more processors, cause the data processing server to:

disregard the tracking message if the at least a portion of the frame of the content item processed by a trusted platform module of the client device is not included in the target content item.

17. The tangible, non-transitory computer-readable medium of claim 15 , wherein the non-transitory computer-readable medium further includes instructions that, when executed by the one or more processors, cause the data processing server to:

determine whether the tracking message was generated by the trusted platform module of the target client device; and

if the tracking message was not generated by the trusted platform module of the target client device, disregard the tracking message.

18. The tangible, non-transitory computer-readable medium of claim 15 , wherein the non-transitory computer-readable medium further includes instructions that, when executed by the one or more processors, cause the data processing server to:

determine whether the frame of the content item processed by the trusted platform module of the client device is a predesignated frame selected by the server.

19. The tangible, non-transitory computer-readable medium of claim 15 , wherein the non-transitory computer-readable medium further includes instructions that, when executed by the one or more processors, cause the data processing server to:

estimate the computation complexity for a subset of frames of the target content item by performing a simulated processing of the target content item to estimate a computation complexity metric.

20. The tangible, non-transitory computer-readable medium of claim 19 , wherein the computation complexity metric includes at least one of: process time, processor usage, memory usage, or power consumption.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 8, 2023
From: WOODMAN, OLIVER; LEWIS, ANDREW BENEDICT
To: GOOGLE INC.
Reel/Frame 064524/0760 →
CHANGE OF NAME Recorded Aug 8, 2023
From: GOOGLE INC.
To: GOOGLE LLC
Reel/Frame 064528/0788 →
Continuity (3)
Continuation 17845327 · Jun 21, 2022
Division 16342334
Related Publication 20230300427A1 · Sep 21, 2023