IP Library Granted Patent US 12,309,281
Granted Patent B1
US 12,309,281 · App. 17/240,530 · Granted May 20, 2025

Systems and methods for protecting cellular network messages

Inventors: Tao Wan (Ottawa, CA); Bernard McKibben (Golden, CO); Mark J. Poletti (Louisville, CO); Ruoyu Sun (Westminister, CO)
Assignee: Cable Television Laboratories, Inc.
H04L9/3247H04L9/30H04L9/3297H04W12/106
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,309,281
App. No.
17/240,530
Granted
May 20, 2025
Kind
B1
Abstract

A client-side electronic device includes a receiver, a processor, and a memory. The receiver communicates with a message server over a communication medium of a communication network. The memory stores computer-executable instructions, which, when executed by the processor, cause the device to receive, from the message server, a broadcast message, a timestamp associated with the broadcast message, and a first digital signature of the broadcast message and a second digital signature of the timestamp. The executed instruction further cause the device to verify an integrity of the broadcast message based the first or second digital signatures, determine a freshness of the broadcast message based on the received timestamp, calculate a trust state of the broadcast message based on the integrity verification and the freshness determination, and store the broadcast message in the memory along with the calculated trust state.

Claims (62)

1. A client-side electronic device for receiving broadcast messages from a communication network, comprising:

a receiver configured for operable communication with a plurality of message servers over a communication medium of the communication network, wherein each message server is associated with a cell of a plurality of cells, and wherein a first message server of the plurality of message servers is associated a first cell of the plurality of cells; and

a processor including a memory configured to store computer-executable instructions, which, when executed by the processor, cause the device to:

receive a broadcast message from the first message server of the plurality of message servers, wherein the broadcast message includes a digital signature and a timestamp;

determine if the digital signature is valid;

determine if the timestamp is fresh;

assign a priority to the first cell based upon the determine if the digital signature is valid and if the timestamp is fresh; and

determine whether or not to connect to the first cell via the first message server based on the assigned priority.

2. The device of claim 1 , wherein the broadcast message further includes a physical cell identifier (PCI), and wherein the instructions further cause the device to:

determine if the PCI is unique; and

determine whether or not to connect to the first cell via the first message server based on whether the digital signature is valid, the PCI is unique, and the timestamp is fresh.

3. The device of claim 1 , wherein the instructions further cause the device to:

determine if a public key associated with the digital signature is valid; and

determine whether or not to connect to the first cell via the first message server based on whether the digital signature is valid, the public key is trusted, and the timestamp is fresh.

4. The device of claim 1 , wherein the instructions further cause the device to:

store a security policy; and

determine whether or not to connect to the first cell via the first message server based on whether the digital signature is valid, whether the timestamp is fresh, and further based on the stored security policy.

5. The device of claim 1 , wherein to determine if the timestamp is fresh, the instructions further cause the device to compare the timestamp in the broadcast message to a second timestamp received in a second broadcast message from a second message server.

6. The device of claim 1 , wherein the instructions further cause the device to:

detect a discrepancy between the timestamp of the broadcast message and a current time of the device;

receive a second broadcast message from a second message server including a second timestamp;

compare the timestamp to the second timestamp; and

determine that the timestamp is fresh if the timestamp is consistent with the second timestamp.

7. The device of claim 1 , wherein the instructions further cause the device to connect to the first message server of the plurality of message servers only if the corresponding broadcast message is fully validated.

8. The device of claim 1 , wherein the broadcast message is a first broadcast message, and wherein the instructions further cause the device to connect to the first message server of the plurality of message servers even if the first broadcast message failed validations without validating a second broadcast message.

9. The device of claim 1 , wherein the broadcast message is a first broadcast message, and wherein the instructions further cause the device to connect to the first message server of the plurality of message servers even if the digital signature is missing from the first broadcast message and without validating a second broadcast message.

10. The device of claim 1 , wherein the broadcast message is a first broadcast message, and wherein the instructions further cause the device to:

access a previously received, stored, and validated broadcast message from the first server; and

determine whether or not to connect to the first message server based on previously received, stored, and validated broadcast message from the first server.

11. A method for authenticating broadcast messages performed by a client-side electronic device for receiving broadcast messages from a communication network, comprising:

a receiver configured for operable communication with a plurality of message servers over a communication medium of the communication network, wherein each message server is associated with a cell of a plurality of cells, and wherein a first message server of the plurality of message servers is associated a first cell of the plurality of cells; and

a processor including a memory configured to store computer-executable instructions, wherein the method comprises:

receiving a broadcast message from the first message server of the plurality of message servers, wherein the broadcast message includes a digital signature and a timestamp;

determining if the digital signature is valid;

determining if the timestamp is fresh;

assigning a priority to the first cell based upon whether the determination if the digital signature is valid and if the timestamp is fresh; and

determining whether or not to connect to the first cell via the first message server based on the assigned priority.

12. The method of claim 11 , wherein the broadcast message further includes a physical cell identifier (PCI), and wherein the method further comprises:

determining if the PCI is unique; and

determining whether or not to connect to the first cell via the first message server based on whether the digital signature is valid, the PCI is unique, and the timestamp is fresh.

13. The method of claim 11 further comprising:

determining if a public key associated with the digital signature is valid; and

determining whether or not to connect to the first cell via the first message server based on whether the digital signature is valid, the public key is trusted, and the timestamp is fresh.

14. The method of claim 11 further comprising:

storing a security policy; and

determining whether or not to connect to the first cell via the first message server based on whether the digital signature is valid, whether the timestamp is fresh, and further based on the stored security policy.

15. The method of claim 11 , wherein to determine if the timestamp is fresh, the method further comprises comparing the timestamp in the broadcast message to a second timestamp received in a second broadcast message from a second message server.

16. The method of claim 11 further comprising:

detecting a discrepancy between the timestamp of the broadcast message and a current time of the device;

receiving a second broadcast message from a second message server including a second timestamp;

comparing the timestamp to the second timestamp; and

determining that the timestamp is fresh if the timestamp is consistent with the second timestamp.

17. The method of claim 11 , wherein the broadcast message is a first broadcast message, and wherein the further comprises connecting to the first message server of the plurality of message servers even if the first broadcast message failed validations without validating a second broadcast message.

18. The method of claim 11 , wherein the broadcast message is a first broadcast message, and wherein the further comprises connecting to the first message server of the plurality of message servers even if the digital signature is missing from the first broadcast message and without validating a second broadcast message.

19. The method of claim 11 , wherein the broadcast message is a first broadcast message, and wherein the method further comprises:

accessing a previously received, stored, and validated broadcast message from the first cell; and

determining whether or not to connect to the first cell via the first message server based on previously received, stored, and validated broadcast message from the first message server.

20. The device of claim 1 , wherein the instruction further cause the device to:

receive a plurality of messages from a plurality of message servers associated with a plurality of cells;

for each message of the plurality of messages, determine if the digital signature is valid and if the timestamp is fresh;

assign a priority to each cell of the plurality of cells based upon whether the determination if the digital signature is valid and if the timestamp is fresh; and

select a cell to connect to of the plurality of cells based upon the corresponding priorities.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 8, 2021
From: WAN, TAO; MCKIBBEN, BERNARD; POLETTI, MARK J.; SUN, RUOYU
To: CABLE TELEVISION LABORATORIES, INC.
Reel/Frame 056793/0807 →
Continuity (8)
Continuation In Part 17220446 · Apr 1, 2021
Continuation In Part 17102169 · Nov 23, 2020
Provisional Application 63135461 · Jan 8, 2021
Provisional Application 63108014 · Oct 30, 2020
Provisional Application 63015314 · Apr 24, 2020
Provisional Application 63014890 · Apr 24, 2020
Provisional Application 63003373 · Apr 1, 2020
Provisional Application 62938870 · Nov 21, 2019
References Cited (23)
US 8606324B2 · Murasawa · 2013 [cited by examiner]
US 10200861B2 · Nair et al. · 2019 [cited by applicant]
US 11284255B1 · Akkaya · 2022 [cited by examiner]
US 11432148B2 · Liu et al. · 2022 [cited by applicant]
US 20110070897A1 · Tang · 2011 [cited by examiner]
US 20130326224A1 · Yavuz · 2013 [cited by examiner]
US 20160212632A1 · Katamreddy · 2016 [cited by examiner]
US 20180124602A1 · Nair et al. · 2018 [cited by applicant]
US 20180124696A1 · Nair et al. · 2018 [cited by applicant]
US 20180124697A1 · Nair et al. · 2018 [cited by applicant]
US 20190288860A1 · Poltorak · 2019 [cited by examiner]
US 20190349765A1 · Kolekar et al. · 2019 [cited by applicant]
US 20200059372A1 · Goeringer · 2020 [cited by examiner]
US 20200267542A1 · Pronk · 2020 [cited by examiner]
US 20210018953A1 · Ford · 2021 [cited by examiner]
US 20210111902A1 · Lee et al. · 2021 [cited by applicant]
US 20210204129A1 · Yang et al. · 2021 [cited by applicant]
US 20210258301A1 · Benjamin · 2021 [cited by examiner]
US 20220272539A1 · Da Silva · 2022 [cited by examiner]
US 20220407721A1 · Queralt · 2022 [cited by examiner]
US 20230224059A1 · Parkvall et al. · 2023 [cited by applicant]
WO WO2010120837A1 · 2010 [cited by examiner]
WO 2018076798A1 · 2018 [cited by applicant]