IP Library › Granted Patent US 12,218,920
Granted Patent B2
US 12,218,920 · App. 18/241,403 · Granted Feb 4, 2025

Methods, systems, and media for protecting and verifying video files

Inventors: Anuj Thakkar (Sunnyvale, CA); Valeri Savvateev (Palo Alto, CA)
Assignee: Google LLC
H04L63/0428G06F21/10G06F21/602H04L9/3247H04L63/062H04N21/4405H04N21/4627H04N21/63345H04N21/8358G06F21/62G06F2221/2107H04L2209/60H04L2209/72H04W12/04
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,218,920
App. No.
18/241,403
Granted
Feb 4, 2025
Kind
B2
Abstract

Methods, systems, and media for protecting and verifying video files are provided. In some embodiments, a method for verifying video streams is provided, the method comprising: receiving, at a user device, a request to present a video that is associated with a video archive, wherein the video archive includes a file list, a signature corresponding to the file list, video metadata, a signature corresponding to the video metadata, and at least one encrypted video stream corresponding to the video, and wherein the file list indicates a plurality of files that are to be included in the video archive; verifying the signature corresponding to the file list; in response to determining that the signature corresponding to the file list has been verified, determining whether the plurality of files indicated in the file list are included in the video archive; in response to determining that the plurality of files indicated in the file list are included in the video archive, verifying the signature corresponding to the video metadata; in response to determining that the signature corresponding to the video metadata has been verified, requesting a decryption key corresponding to the video stream; in response to receiving the decryption key, decrypting the encrypted video stream; and causing the decrypted video stream to be presented on the user device.

Claims (41)

1. A method comprising:

receiving, at a user device, a request to present a media item that is associated with a media archive, wherein the media archive includes a file list that indicates a plurality of files that are to be included in the media archive, indexing metadata indicating one or more sections of the media item, and encrypted content corresponding to the media item;

verifying, by the user device, a signature corresponding to at least the indexing metadata of the media archive, wherein the media archive includes the signature;

determining, by the user device, whether the plurality of files indicated in the file list match files included in the media archive; and

in response to verifying the signature corresponding to at least the indexing metadata and determining that the plurality of files indicated in the file list matches files included in the video archive, requesting, by the user device and from a computing system, a decryption key for decrypting the encrypted content.

2. The method of claim 1 , further comprising:

verifying a signature corresponding to the file list, wherein the media archive includes a signature corresponding to the file list; and

in response to verifying the signature corresponding to the file list, determining the plurality of files indicated in the file list is determined to match the files included in the media archive.

3. The method of claim 1 , wherein determining that the plurality of files indicated in the file list matches the files included in the media archive further comprises determining whether a file of the plurality of files is missing from the media archive.

4. The method of claim 1 , wherein determining that the plurality of files indicated in the file list match the files included in the media archive further comprises determining whether a file that is not included in the plurality of files is included in the media archive.

5. The method of claim 1 , further comprising verifying a signature corresponding to metadata prior to determining whether the plurality of files indicated in the file list match files included in the media archive, wherein the metadata and the signature corresponding to the metadata are included in the media archive.

6. The method of claim 1 , wherein the user device is a first user device and the encrypted content was received at the computing system from a second user device, wherein the media archive is received by the first user device from the computing system, and wherein the method further comprises verifying a signature corresponding to metadata, wherein the metadata indicates information about the second user device, and wherein the media archive includes the metadata and the signature corresponding to the metadata.

7. The method of claim 1 , further comprising inhibiting a request for the decryption key for decrypting the encrypted content in response to determining that the plurality of files indicated in the file list does not match the files included in the media archive.

8. A system comprising:

a memory storing instructions; and

a processor that executes the instructions to:

receive a request to present a media item that is associated with a media archive, wherein the media archive includes a file list that indicates a plurality of files that are to be included in the media archive, indexing metadata indicating one or more sections of the media item, and encrypted content corresponding to the media item;

verify a signature corresponding to at least the indexing metadata of the media archive, wherein the media archive includes the signature;

determine whether the plurality of files indicated in the file list match files included in the media archive; and

in response to verifying the signature corresponding to at least the indexing metadata and determining that the plurality of files indicated in the file list matches files included in the video archive, request, from a computing system, a decryption key for decrypting the encrypted content.

9. The system of claim 8 , wherein the processor executes the instructions to:

verify a signature corresponding to the file list, wherein the media archive includes the signature corresponding to the file list; and

in response to verifying the signature corresponding to the file list, determine the plurality of files indicated in the file list match the files included in the media archive.

10. The system of claim 8 , wherein to determine that the plurality of files indicated in the file list match the files included in the media archive the processor executes the instructions to determine whether a file of the plurality of files is missing from the media archive.

11. The system of claim 8 , wherein to determine that the plurality of files indicated in the file list match the files included in the media archive the processor executes the instructions to determine whether a file that is not included in the plurality of files is included in the media archive.

12. The system of claim 8 , wherein the processor executes the instructions to verify a signature corresponding to metadata prior to determining whether the plurality of files indicated in the file list match files included in the media archive, wherein the media archive includes the metadata and the signature corresponding to the metadata.

13. The system of claim 8 , wherein the user device is a first user device and the encrypted content was received at the computing system from a second user device, wherein the media archive is received by the first user device from the computing system, and wherein the processor executes the instructions to verify a signature corresponding to metadata, wherein the metadata indicates information about the second user device, and wherein the media archive includes the metadata and the signature corresponding to the metadata.

14. The system of claim 8 , wherein the processor executes the instructions to inhibit a request for the decryption key for decrypting the encrypted content in response to determining that the plurality of files indicated in the file list does not match the files included in the media archive.

15. A non-transitory computer-readable medium containing computer executable instructions that, when executed by a processor of a user device, cause the processor to:

receive a request to present a media item that is associated with a media archive, wherein the media archive includes a file list that indicates a plurality of files that are to be included in the media archive, indexing metadata indicating one or more sections of the media item, and encrypted content corresponding to the media item;

verifying, by the user device, a signature corresponding to at least the indexing metadata of the media archive, wherein the media archive includes the signature;

determine whether the plurality of files indicated in the file list match files included in the media archive; and

in response to verifying the signature corresponding to at least the indexing metadata and determining that the plurality of files indicated in the file list matches files included in the video archive, request, from a computing system, a decryption key for decrypting the encrypted content.

16. The non-transitory computer-readable medium of claim 15 , wherein the instructions, when executed by the processor, cause the processor to:

verify a signature corresponding to the file list, wherein the media archive includes the signature corresponding to the file list; and

in response to verifying the signature corresponding to the file list, determine the plurality of files indicated in the file list to match the files included in the media archive.

17. The non-transitory computer-readable medium of claim 15 , wherein to determine that the plurality of files indicated in the file list match the files included in the media archive the instructions, when executed by the processor, cause the processor to determine whether a file of the plurality of files is missing from the media archive.

18. The non-transitory computer-readable medium of claim 15 , wherein to determine that the plurality of files indicated in the file list match the files included in the media archive the instructions, when executed by the processor, cause the processor to determine whether a file that is not included in the plurality of files is included in the media archive.

19. The non-transitory computer-readable medium of claim 15 , wherein the instructions, when executed by the processor, cause the processor to verify a signature corresponding to metadata prior to determining whether the plurality of files indicated in the file list match files included in the media archive, wherein the media archive includes the metadata and the signature corresponding to the metadata.

20. The non-transitory computer-readable medium of claim 15 , wherein the user device is a first user device and the encrypted content was received at the computing system from a second user device, wherein the media archive is received by the first user device from the computing system, and wherein the instructions, when executed by the processor, cause the processor to verify a signature corresponding to metadata, wherein the metadata indicates information about the second user device, and wherein the media archive includes the metadata and the signature corresponding to the metadata.

21. The non-transitory computer-readable medium of claim 19 , wherein the instructions, when executed by the processor, cause the processor to inhibit a request for the decryption key for decrypting the encrypted content in response to determining that the plurality of files indicated in the file list does not match the files included in the media archive.

Continuity (4)
Continuation 17843103 · Jun 17, 2022
Continuation 16927144 · Jul 13, 2020
Continuation 15653176 · Jul 18, 2017
Related Publication 20230412573A1 · Dec 21, 2023
References Cited (129)
US 6289455B1 · Kocher · 2001 [cited by examiner]
US 6418421B1 · Hurtado · 2002 [cited by examiner]
US 7035468B2 · Yogeshwar · 2006 [cited by examiner]
US 7124190B1 · Moore · 2006 [cited by applicant]
US 7149308B1 · Fruehauf · 2006 [cited by examiner]
US 7212726B2 · Zetts et al. · 2007 [cited by applicant]
US 7770004B2 · Herf · 2010 [cited by examiner]
US 8099369B2 · Fahrny · 2012 [cited by examiner]
US 8180708B2 · Hurtado · 2012 [cited by examiner]
US 8560405B1 · Buron · 2013 [cited by examiner]
US 8688991B1 · Sunil · 2014 [cited by examiner]
US 8707375B2 · Hainline · 2014 [cited by examiner]
US 8812850B2 · Barton · 2014 [cited by examiner]
US 8997198B1 · Kelley · 2015 [cited by examiner]
US 9008305B2 · Cureau · 2015 [cited by examiner]
US 9110902B1 · Dorwin · 2015 [cited by examiner]
US 9288445B2 · Taniguchi · 2016 [cited by examiner]
US 9369288B1 · Cureau · 2016 [cited by examiner]
US 9385999B2 · Kanungo · 2016 [cited by examiner]
US 9684728B2 · Lynn · 2017 [cited by examiner]
US 10171845B2 · Hwang · 2019 [cited by examiner]
US 10715498B2 · Thakkar et al. · 2020 [cited by applicant]
US 11368438B2 · Thakkar et al. · 2022 [cited by applicant]
US 11750577B2 · Thakkar et al. · 2023 [cited by applicant]
US 20020138843A1 · Samaan · 2002 [cited by examiner]
US 20020194209A1 · Bolosky · 2002 [cited by examiner]
US 20030046238A1 · Nonaka · 2003 [cited by examiner]
US 20030188183A1 · Lee · 2003 [cited by examiner]
US 20030229797A1 · Newman · 2003 [cited by examiner]
US 20040133923A1 · Watson · 2004 [cited by examiner]
US 20050018854A1 · Yamamoto · 2005 [cited by examiner]
US 20050039031A1 · Mont · 2005 [cited by examiner]
US 20050144634A1 · Koo · 2005 [cited by examiner]
US 20070073728A1 · Klein, Jr. · 2007 [cited by examiner]
US 20070079342A1 · Ellis · 2007 [cited by examiner]
US 20070124602A1 · Wald · 2007 [cited by examiner]
US 20070130585A1 · Perret · 2007 [cited by examiner]
US 20070150527A1 · Takakura · 2007 [cited by examiner]
US 20070162753A1 · Nakano · 2007 [cited by examiner]
US 20070174147A1 · Klein, Jr. · 2007 [cited by examiner]
US 20070206247A1 · Kaplan · 2007 [cited by examiner]
US 20070276951A1 · Riggs et al. · 2007 [cited by applicant]
US 20080022061A1 · Ito · 2008 [cited by examiner]
US 20080052783A1 · Levy · 2008 [cited by examiner]
US 20080120482A1 · Jarvis · 2008 [cited by examiner]
US 20080178230A1 · Eyal · 2008 [cited by examiner]
US 20080313468A1 · Yoshikawa · 2008 [cited by examiner]
US 20090013172A1 · Ju · 2009 [cited by examiner]
US 20090013195A1 · Ochi · 2009 [cited by examiner]
US 20090083781A1 · Yang · 2009 [cited by examiner]
US 20090165031A1 · Li · 2009 [cited by examiner]
US 20090247096A1 · Walley · 2009 [cited by examiner]
US 20090282432A1 · Hahnefeld · 2009 [cited by examiner]
US 20100067705A1 · Boccon-Gibod · 2010 [cited by examiner]
US 20110078459A1 · Yoshioka · 2011 [cited by examiner]
US 20110116636A1 · Steed · 2011 [cited by examiner]
US 20110161668A1 · Sentinelli · 2011 [cited by examiner]
US 20110179268A1 · Strom · 2011 [cited by examiner]
US 20110225417A1 · Maharajh · 2011 [cited by examiner]
US 20120042134A1 · Risan · 2012 [cited by examiner]
US 20120110119A1 · Levicki · 2012 [cited by examiner]
US 20120204024A1 · Augenstein · 2012 [cited by examiner]
US 20130013931A1 · O'Hare · 2013 [cited by examiner]
US 20130151655A1 · Wu · 2013 [cited by examiner]
US 20130291060A1 · Moore · 2013 [cited by applicant]
US 20140164772A1 · Forte · 2014 [cited by examiner]
US 20140173287A1 · Mizunuma · 2014 [cited by applicant]
US 20140196079A1 · Jannard · 2014 [cited by examiner]
US 20140258713A1 · Kanungo · 2014 [cited by examiner]
US 20140270167A1 · Cureau et al. · 2014 [cited by applicant]
US 20140289368A1 · Benitez · 2014 [cited by examiner]
US 20140331330A1 · Abhijeet · 2014 [cited by examiner]
US 20150033023A1 · Xu · 2015 [cited by examiner]
US 20150058619A1 · Sweet · 2015 [cited by examiner]
US 20150143119A1 · Matsunaga · 2015 [cited by examiner]
US 20150163206A1 · McCarthy · 2015 [cited by examiner]
US 20150254242A1 · Cirrincione · 2015 [cited by examiner]
US 20150312331A1 · Crocker · 2015 [cited by examiner]
US 20160127895A1 · Bangole · 2016 [cited by examiner]
US 20160171186A1 · Marking · 2016 [cited by examiner]
US 20160188894A1 · Factor · 2016 [cited by examiner]
US 20160277366A1 · Kanungo · 2016 [cited by examiner]
US 20160292429A1 · Manville · 2016 [cited by examiner]
US 20160314052A1 · Gladwin · 2016 [cited by examiner]
US 20170005803A1 · Brownewell · 2017 [cited by examiner]
US 20170061138A1 · Lambert · 2017 [cited by examiner]
US 20170063551A1 · Quinn · 2017 [cited by examiner]
US 20170070302A1 · Tuscano · 2017 [cited by examiner]
US 20170147830A1 · Park · 2017 [cited by examiner]
US 20170230716A1 · Kim · 2017 [cited by examiner]
US 20170294212A1 · Allen · 2017 [cited by examiner]
US 20170338950A1 · Chen · 2017 [cited by examiner]
US 20190057115A1 · Liu · 2019 [cited by examiner]
US 20190057192A1 · Yoshimura · 2019 [cited by examiner]
CN 1183841 · 1998 [cited by applicant]
CN 1706169 · 2005 [cited by applicant]
CN 101459826 · 2009 [cited by applicant]
CN 102812473 · 2012 [cited by applicant]
CN 104244026 · 2014 [cited by applicant]
CN 104255009A · 2014 [cited by applicant]
CN 105787357 · 2016 [cited by applicant]
CN 105812347 · 2016 [cited by applicant]
EP 2086163 · 2009 [cited by applicant]
EP 2797333 · 2014 [cited by applicant]
WO WO2005011279 · 2005 [cited by applicant]
WO WO2012160567 · 2012 [cited by applicant]
Examination Report dated May 28, 2021 in EP Patent Application No. 18721589.2. [cited by applicant]
Examination Report dated Jun. 29, 2023 in EP Patent Application No. 18721589.2. [cited by applicant]
Examination Report dated Sep. 10, 2021 in IN Patent Application No. 201947048346. [cited by applicant]
International Search Report and Written Opinion dated Jul. 9, 2018 in International Patent Application No. PCT/US2018/027119. [cited by applicant]
Notice of Allowance dated Feb. 14, 2022 in U.S. Appl. No. 16/927,144. [cited by applicant]
Notice of Allowance dated Mar. 4, 2020 in U.S. Appl. No. 15/653,176. [cited by applicant]
Notice of Allowance dated Apr. 14, 2023 in U.S. Appl. No. 17/843,103. [cited by applicant]
Notice of Grant dated Jan. 6, 2022 in CN Patent Application No. 201880037097.X. [cited by applicant]
Office Action dated Mar. 29, 2019 in U.S. Appl. No. 15/653,176. [cited by applicant]
Office Action dated May 8, 2021 in CN Patent Application No. 201880037097.X. [cited by applicant]
Office Action dated Sep. 9, 2019 in U.S. Appl. No. 15/653,176. [cited by applicant]
Office Action dated Oct. 15, 2021 in U.S. Appl. No. 16/927,144. [cited by applicant]
Office Action dated Dec. 29, 2022 in U.S. Appl. No. 17/843,103. [cited by applicant]
Notice of Grant dated Sep. 13, 2023 in CN Patent Application No. 202210277889.2. [cited by applicant]
Communication pursuant to Article 94(3) EPC from counterpart European Application No. 18721589.2 dated Jun. 29, 2023, 4 pp. [cited by applicant]
International Preliminary Report on Patentability from International Application No. PCT/US2018/027119 dated Feb. 21, 2020, 7 pp. [cited by applicant]
Notice of Intent to Grant from counterpart Chinese Application No. 201880037097.X dated Jan. 6, 2022, 6 pp. [cited by applicant]
Notice of Intent to Grant from counterpart Chinese Application No. 202210277889.2 dated Sep. 13, 2023, 7 pp. [cited by applicant]
Notice of Intent to Grant from counterpart Indian Application No. 201947048346 dated Aug. 12, 2023, 2 pp. [cited by applicant]
Office Action, and translation thereof, from counterpart Chinese Application No. 201880037097.X dated May 8, 2021, 24 pp. [cited by applicant]
Response to Communication pursuant to Article 94(3) EPC dated Jun. 29, 2023, from counterpart European Application No. 18721589.2 filed Dec. 22, 2023, 6 pp. [cited by applicant]
Response to Communication pursuant to Article 94(3) EPC dated May 28, 2021, from counterpart European Application No. 18721589.2 filed Dec. 7, 2021, 11 pp. [cited by applicant]
Response to Communication Pursuant to Rules 161(1) and 162 EPC dated Dec. 6, 2020, from counterpart European Application No. 18721589.2, filed Jun. 11, 2020, 9 pp. [cited by applicant]