Method, system, and medium for protecting and verifying video files
阅读说明:本技术 用于保护和验证视频文件的方法、系统和介质 (Method, system, and medium for protecting and verifying video files ) 是由 阿努伊·撒卡尔 瓦莱里·萨瓦捷耶夫 于 2018-04-11 设计创作,主要内容包括:提供了用于保护和验证视频文件的方法、系统和介质。在一些实施例中,提供了一种用于验证视频流的方法,该方法包括:在用户设备处接收呈现与视频档案相关联的视频的请求,其中视频档案包括文件列表、与文件列表相对应的签名、视频元数据、与视频元数据相对应的签名以及与视频相对应的至少一个加密的视频流,并且其中文件列表指示要被包括在视频档案中的多个文件;验证与文件列表相对应的签名;响应于确定已经验证与文件列表相对应的签名,确定在文件列表中被指示的多个文件是否被包括在视频档案中;响应于确定在文件列表中被指示的多个文件被包括在视频档案中,验证与视频元数据相对应的签名;响应于确定已经验证与视频元数据相对应的签名,请求与视频流相对应的解密密钥;响应于接收解密密钥,解密加密的视频流;并且使得解密的视频流被呈现在用户设备上。(In embodiments, methods for verifying a video stream are provided, the methods including receiving a request to render a video associated with a video archive at a user device, wherein the video archive includes a list of files, signatures corresponding to the list of files, video metadata, signatures corresponding to the video metadata, and at least encrypted video streams corresponding to the video, and wherein the list of files indicates a plurality of files to be included in the video archive, verifying the signatures corresponding to the list of files, determining whether the plurality of files indicated in the list of files are included in the video archive in response to determining that the signatures corresponding to the list of files have been verified, verifying the signatures corresponding to the video metadata in response to determining that the plurality of files indicated in the list of files are included in the video archive, requesting a key corresponding to the video stream in response to determining that the signatures corresponding to the video metadata have been verified, decrypting the decrypted video stream in response to receiving the decryption, and causing the decrypted video stream to be rendered on the user device.)
1, a method for authenticating a video stream, the method comprising:
receiving, at a user device, a request to present a video associated with a video archive, wherein the video archive comprises a list of files, a signature corresponding to the list of files, video metadata, a signature corresponding to the video metadata, and at least encrypted video streams corresponding to the video, and wherein the list of files indicates a plurality of files to be included in the video archive;
verifying a signature corresponding to the list of files;
in response to determining that the signature corresponding to the list of files has been verified, determining whether the plurality of files indicated in the list of files is 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 a signature corresponding to the video metadata;
in response to determining that a signature corresponding to the video metadata has been verified, requesting a decryption key corresponding to the video stream;
decrypting the encrypted video stream in response to receiving the decryption key; and
causing the decrypted video stream to be presented on the user device.
2. The method of claim 1, further comprising determining that no files in the video archive are indicated in the list of files.
3. The method of claim 1 or 2, further comprising determining whether a video identifier associated with the video metadata matches a video identifier associated with the encrypted video stream.
4. The method of any of claims 1-3, wherein the video archive includes thumbnail images associated with the encrypted video stream, and wherein the thumbnail images are indicated in the file list.
5. The method of claim 4, further comprising verifying a signature associated with the thumbnail image, wherein the video archive includes the signature associated with the thumbnail image.
6. The method of any preceding claim, wherein the video archive file includes index information corresponding to the encrypted video stream.
7. The method of claim 6, wherein the video archive file additionally includes a signature corresponding to the index information, and wherein the method further includes verifying the signature corresponding to the index information.
8. The method of any preceding claims, further step includes the user device transmitting a request to a server for a video stream corresponding to the video, and in response, receiving the video archive at the user device from the server.
9. The method of claim 8, wherein requesting a decryption key corresponding to the video stream comprises the user device transmitting a request for the decryption key to the server, and the receiving the decryption key comprises the user device receiving the decryption key from the server.
10. The method of any preceding claim, wherein the request to present the video associated with the video archive is received from a user of the user device.
a system for validating a video stream, the system comprising:
a memory; and
a hardware processor, when executing computer-executable instructions stored in the memory, configured to:
receiving, at a user device, a request to present a video associated with a video archive, wherein the video archive comprises a list of files, a signature corresponding to the list of files, video metadata, a signature corresponding to the video metadata, and at least encrypted video streams corresponding to the video, and wherein the list of files indicates a plurality of files to be included in the video archive;
verifying a signature corresponding to the list of files;
in response to determining that the signature corresponding to the list of files has been verified, determining whether the plurality of files indicated in the list of files is 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 a signature corresponding to the video metadata;
in response to determining that a signature corresponding to the video metadata has been verified, requesting a decryption key corresponding to the video stream;
decrypting the encrypted video stream in response to receiving the decryption key; and
causing the decrypted video stream to be presented on the user device.
12. The system of claim 7, wherein the hardware processor is further configured to determine that a file not indicated in the list of files is not included in the video archive.
13. The system of claim 7 or 8, wherein the hardware processor is further configured to determine whether a video identifier associated with the video metadata matches a video identifier associated with the encrypted video stream.
14. The system of any of claims 7-9, wherein the video archive includes a thumbnail image associated with the encrypted video stream, and wherein the thumbnail image is indicated in the file list.
15. The system of claim 10, wherein the hardware processor is further configured to verify a signature associated with the thumbnail image, wherein the video archive includes the signature associated with the thumbnail image.
16. The system of any of claims 7 to 11, wherein the video archive file includes index information corresponding to the encrypted video stream.
A non-transitory computer readable medium containing computer executable instructions that when executed by a processor cause the processor to perform the method of any of claims 1 to 10.
18, a method for storing a video stream, the method comprising:
receiving, at a server, a video stream transmitted to the server by a user device and video metadata corresponding to the video stream;
generating a file list indicating a plurality of files to be included in a video archive file corresponding to the video stream, wherein the file list includes at least the video stream and the video metadata;
generating a signature corresponding to the file list and a signature corresponding to the video metadata;
encrypting the video stream using a key to generate an encrypted video stream; and
storing the encrypted video stream, the list of files, the video metadata, signatures corresponding to the list of files, and signatures corresponding to the video metadata in the video archive file, wherein the video archive file is stored in association with the key used to generate the encrypted video stream.
Technical Field
The disclosed subject matter relates to protecting and authenticating video files.
Background
In such cases, the server may store the video along with information related to the video, such as the title of the video, the name of the creator of the video, a description of the video, or thumbnail images related to the video.
Accordingly, it is desirable to provide new methods, systems, and media for protecting and authenticating video files.
Disclosure of Invention
In accordance with various embodiments of the disclosed subject matter, methods, systems, and media for protecting and authenticating video files are provided.
According to embodiments of the disclosed subject matter, there are provided methods for verifying a video stream, the method including receiving a request to render video associated with a video archive at a user device, wherein the video archive includes a list of files, signatures corresponding to the list of files, video metadata, signatures corresponding to the video metadata, and at least encrypted video streams corresponding to the video, and wherein the list of files indicates a plurality of files to be included in the video archive, verifying the signatures corresponding to the list of files, determining whether the plurality of files indicated in the list of files are included in the video archive in response to determining that the signatures corresponding to the list of files have been verified, verifying the signatures corresponding to the video metadata in response to determining that the plurality of files indicated in the list of files are included in the video archive, requesting a decryption key corresponding to the video stream in response to receiving the decryption key, and causing the decrypted video stream to be presented on the user device.
In embodiments, the method further includes determining that no files in the video archive are included that are not indicated in the list of files.
In embodiments, the method further includes determining whether the video identifier associated with the video metadata matches the video identifier associated with the encrypted video stream.
In embodiments, the video archive includes thumbnail images associated with the encrypted video stream, and the thumbnail images are indicated in a file list.
In embodiments, the method further includes verifying the signature associated with the thumbnail image, wherein the video archive includes the signature associated with the thumbnail image.
In some embodiments , the video archive file includes index information corresponding to the encrypted video stream in some embodiments , the video archive file may additionally include a signature corresponding to the index information, and the method may further include verifying the signature corresponding to the index information.
In embodiments, the method can further include the user device transmitting a request to the server for a video stream corresponding to the video, and in response, receiving, at the user device, a video archive from the server.
In embodiments, requesting the decryption key corresponding to the video stream may include the user device transmitting a request for the decryption key to the server, and receiving the decryption key may include the user device receiving the decryption key from the server.
In embodiments, a request to present a video associated with a video archive may be received from a user of a user device.
According to embodiments of the disclosed subject matter, there is provided a system for verifying video streams, the system including a memory and a hardware processor configured, when executing computer executable instructions stored in the memory, to receive a request to render a video associated with a video archive at a user device, wherein the video archive includes a list of files, signatures corresponding to the list of files, video metadata, signatures corresponding to the video metadata, and at least encrypted video streams corresponding to the video, and wherein the list of files indicates a plurality of files to be included in the video archive, verify the signatures corresponding to the list of files, determine whether the plurality of files indicated in the list of files are included in the video archive in response to determining that the signatures corresponding to the list of files have been verified, verify the signatures corresponding to the video metadata in response to determining that the signatures corresponding to the list of files have been verified, request decryption of the corresponding to the video streams, and cause the encrypted video streams to be decrypted on a user device in response to determining that the plurality of files indicated in the list of files are included in the video archive, and to decrypt the encrypted video streams.
In embodiments, the hardware processor may be further configured to determine that no files are included in the video archive that are not indicated in the list of files.
In embodiments, the hardware processor may be further configured to determine whether the video identifier associated with the video metadata matches the video identifier associated with the encrypted video stream.
In embodiments, the video archive may include thumbnail images associated with the encrypted video stream, and wherein the thumbnail images are indicated in the file list.
In embodiments, the hardware processor can be further configured to verify a signature associated with the thumbnail image, wherein the video archive includes the signature associated with the thumbnail image.
In embodiments, the video archive file may include index information corresponding to the encrypted video stream.
According to embodiments of the disclosed subject matter, non-transitory computer-readable media containing computer-executable instructions that, when executed by a processor, cause the processor to perform the methods described herein, according to embodiments of the disclosed subject matter, there is provided a system for verifying a video stream, the system including means for receiving a request to render video associated with a video archive at a user device, wherein the video archive includes a list of files, signatures corresponding to the list of files, video metadata, signatures corresponding to the video metadata, and at least encrypted video streams corresponding to the video, and wherein the list of files indicates a plurality of files to be included in the video archive, means for verifying the signatures corresponding to the list of files, means for determining whether the plurality of files indicated in the list of files are included in the video archive in response to determining that the signatures corresponding to the list of files have been verified, means for verifying whether the plurality of files indicated in the list of files are included in the video archive in response to determining that the plurality of files indicated in the list of files are included in the video archive, means for decrypting the video stream in response to determining that the signature corresponding to the video archive is included in the video archive, and means for decrypting the video stream in response to the video stream.
According to embodiments of the disclosed subject matter, there is provided a method for storing a video stream, the method including receiving at a server a video stream and video metadata corresponding to the video stream transmitted by a user device to the server, generating a file list indicating a plurality of files to be included in a video archive file corresponding to the video stream, wherein the file list includes at least the video stream and the video metadata, generating a signature corresponding to the file list and a signature corresponding to the video metadata, encrypting the video stream using a key to generate an encrypted video stream, and storing the encrypted video stream, the file list, the video metadata, the signature corresponding to the file list, and the signature corresponding to the video metadata in the video archive file, wherein the video archive file is stored in association with the key used to generate the encrypted video stream.
The video archive file may be stored in a memory of the server. The key used to generate the encrypted video stream may be stored in the memory of the server.
According to embodiments of the disclosed subject matter, there is provided a system for storing video streams, the system comprising a memory and a hardware processor configured, when executing computer executable instructions stored in the memory, to receive at a server a video stream and video metadata corresponding to the video stream transmitted by a user device to the server, generate a file list indicating a plurality of files to be included in a video archive file corresponding to the video stream, wherein the file list includes at least the video stream and the video metadata, generate a signature corresponding to the file list and a signature corresponding to the video metadata, encrypt the video stream using a key to generate an encrypted video stream, and store the encrypted video stream, the file list, the video metadata, the signature corresponding to the file list, and the signature corresponding to the video metadata in the video archive file, wherein the video archive file is stored in association with the key used to generate the encrypted video stream.
According to embodiments of the disclosed subject matter, there is provided non-transitory computer-readable media containing computer-executable instructions that, when executed by a processor, cause the processor to perform a method for storing a video stream, the method comprising receiving, at a server, a video stream and video metadata corresponding to the video stream transmitted by a user device to the server, generating a file list indicating a plurality of files to be included in a video archive file corresponding to the video stream, wherein the file list includes at least the video stream and the video metadata, generating a signature corresponding to the file list and a signature corresponding to the video metadata, encrypting the video stream using a key to generate an encrypted video stream, and storing the encrypted video stream, the file list, the video metadata, the signature corresponding to the file list, and the signature corresponding to the video metadata in the video archive file, wherein the video archive file is stored in association with the key used to generate the encrypted video stream.
According to embodiments of the disclosed subject matter, there is provided a system for storing a video stream, the system comprising means for receiving at a server a video stream and video metadata corresponding to the video stream transmitted by a user device to the server, means for generating a file list indicating a plurality of files to be included in a video archive file corresponding to the video stream, wherein the file list includes at least the video stream and the video metadata, means for generating a signature corresponding to the file list and a signature corresponding to the video metadata, means for encrypting the video stream using a key to generate an encrypted video stream, and means for storing the encrypted video stream, the file list, the video metadata, the signature corresponding to the file list, and the signature corresponding to the video metadata in the video archive file, wherein the video archive file is stored in association with the key used to generate the encrypted video stream.
Drawings
Various objects, features and advantages of the disclosed subject matter can be more fully understood by reference to the following detailed description of the disclosed subject matter when considered in connection with the following drawings, wherein like reference numerals identify like elements.
Fig. 1 shows a schematic diagram of an illustrative system suitable for implementing the mechanisms for protecting and verifying video files described herein, in accordance with embodiments of the disclosed subject matter.
Fig. 2 illustrates a detailed example of hardware that may be used in the server and/or user device of fig. 1 in accordance with embodiments of the disclosed subject matter.
Fig. 3 illustrates an information flow diagram for storing a video stream and verifying a video file according to embodiments of the disclosed subject matter.
Fig. 4 illustrates an example of a process for protecting and verifying a video file according to embodiments of the disclosed subject matter.
Detailed Description
According to various embodiments, mechanisms (which may include methods, systems, and media) for protecting and authenticating video files are provided.
In some embodiments , the mechanisms described herein may store the video stream in a video archive file that includes other files, such as metadata associated with the video stream, thumbnail content associated with the video stream, and/or any other suitable content in some embodiments , the mechanisms may generate a file list that indicates the files included in the video archive file in some embodiments , for example, the file list may indicate the name or location of the video stream, the name or location of the file that includes the metadata, the name or location of or more thumbnail images, and/or any other suitable files in some embodiments , the mechanisms may generate cryptographic signatures for or more of the files included in the video archive file in some embodiments , the generated signatures may additionally be stored in the video archive file in some embodiments , a signature may be generated for the file list, a second signature may be generated for metadata, a third signature may be generated for the thumbnail content , some embodiments the video archive server may store such video archive file in a manner that the video archive file has been modified or otherwise detected by a user.
In embodiments, the mechanisms described herein may verify whether a video archive file has been corrupted or modified based on the content of the video archive file. in embodiments, a user device that has received and/or stored a video archive file may verify the content of the video archive file by verifying every of the cryptographic signatures included in the video archive file. as another example, in embodiments, the user device may determine whether all files indicated in a list of files included in the video archive file are present in the video archive file to determine that no information associated with the video archive file is deleted. as yet a example, in embodiments, the user device may determine that no files that are not indicated in the list of files are included in the video archive file to determine that no files are added to the video archive file.
Although the mechanisms described herein are generally described as being related to video content, in embodiments the described techniques may be used to store and/or verify any suitable type of media content, including real-time streaming content, audio content (e.g., audio books, music files, and/or any other suitable type of audio content), electronic books, and/or any other suitable type of media content furthermore, in embodiments the mechanisms described herein may be used to verify media content stored or received in any suitable manner, such as media content streamed by a user device, media content stored locally on a user device, media content stored on an external memory associated with a user device, media content delivered from a user device to a second user device, and/or any other suitable media content.
Turning to fig. 1, an example 100 of hardware for validating video files that may be used is shown in accordance with embodiments of the disclosed subject matter as illustrated, the
For example, in embodiments,
In embodiments, the
For example, in embodiments, the
Although the
Although two
In embodiments, the
In embodiments, the
In embodiments, memory and/or
In embodiments, the
In embodiments, the display/
The
In embodiments,
In embodiments,
According to , any other suitable components may be included in
Turning to fig. 3, an example information flow diagram 300 for storing a video stream in a video archive file and verifying the received video archive file by a user device is shown in accordance with embodiments of the disclosed subject matter in embodiments, the blocks of the information flow diagram 300 may be performed on a user device (user device 108), a
In embodiments, the video stream may have any suitable duration in embodiments, in embodiments, the
At 304, the
In embodiments, the video archive file may be in any suitable format, for example, in embodiments, the video archive file may be a container file in any suitable file format (e.g., ZIP, JAR, TAR, and/or any other suitable format) including a video stream and any other files.
For example, where the video archive file contains a video stream, thumbnail images, and files that include metadata associated with the video stream, the
In embodiments, the
In embodiments, the
In some embodiments , the
It is noted that in embodiments, any other suitable information may be included in the video archive file, such as a version number of the video archive file, a date the video archive file was created, video identifier information, and/or any other suitable information in embodiments, for example, video identifier information indicating the identity of the video stream may be stored in the video metadata file as well as in a file indicating index information about the video stream in embodiments, the video identifier information may be verified between the video metadata file and the index information file to verify that both files are valid.
Specific examples of video archive files are as follows:
video _1_ title ytb
Version _ number
Yuan
File list
Json video
Stream meta
Encryption meta
Sig file listing
Sig
Sig flow
Flow of
[ video _ id ] - [ itag ]. stream
Image of a person
Thumbnail. jpg
Sig is
In this particular example, "video _1_ title. ytb" may be a video archive file that includes an encrypted video stream, video metadata, thumbnail images, a list of files, and a signature for each file.
Note that in embodiments , the
At 306, the
At 308,
At 310, the
At 312, in response to verifying the content of the video archive file,
At 314,
At 316,
Note that in embodiments,
Turning to fig. 4, an example 400 of a process for authenticating a received video archive and presenting a video stream included in the video archive on a user device is shown in accordance with embodiments of the disclosed subject matter.
It is noted that in some such embodiments, the video may be stored in any suitable location such as in a local memory of the user device, on an external memory device associated with the user device (e.g., a hard drive, a secure digital or SD card, and/or any other suitable memory device).
As described above in connection with
In some embodiments, the
If, at 404, the
If, at 404, the
If, at 406, the
If, at 406, the
If, at 408, the
If, at 408, the
In some embodiments, the
For example, in embodiments, the decrypted video stream may be presented within a video player window that includes any suitable controls for manipulating playback of the video stream (e.g., a volume control, a fast forward control, a rewind control, a pause control, and/or any other suitable controls).
For example, in embodiments , the
Additionally, note that in embodiments, in the event that process 400 terminates at
In embodiments , at least ones of the above-described blocks of the processes of fig. 3 and 4 may be executed or performed in any order or sequence that is not limited to the order and sequence shown in and described in connection with the figures.
For example, non-transitory computer-readable media may include media such as magnetic media (such as hard disks, floppy disks, and/or any other suitable magnetic media), optical media (such as compact disks, digital video disks, blu-ray disks, and/or any other suitable optical media), semiconductor media (such as flash memories, electrically programmable read-only memories (EPROMs), electrically erasable programmable read-only memories (EEPROMs), and/or any other suitable semiconductor media), any suitable media that is not transitory or lacks any persistent facies during transmission, and/or any suitable tangible media.
In the case where the system described herein collects or utilizes personal information about a user, the user may be provided with an opportunity to control whether programs or features collect user information (e.g., information about the user's social network, social actions or activities, profession, the user's preferences, or the user's current location). additionally, before storing or using certain data, the data may be processed in or more ways such that personal information is removed.
Accordingly, methods, systems, and media for protecting and authenticating video files are provided.
While the invention has been described and illustrated in the foregoing illustrative embodiments, it is understood that the present disclosure has been made only by way of example, and that numerous changes in the details of implementation of the invention may be made without departing from the spirit and scope of the invention, which is limited only by the claims which follow. The features of the disclosed embodiments may be combined and rearranged in various ways.
- 上一篇:一种医用注射器针头装配设备
- 下一篇:用于呈现指示推荐内容的通知的方法、系统和介质