Back to results
US 12,489,605 B2Granted
Sample-parallel sparse cipher-block chaining (CBCS) encryption
AssigneeComcast Cable Communications, LLC
InventorsAlexander Giladi, Andrew Morrow
Life of this patent
Estimating the term…
Abstract
A content provider in a content distribution system may be configured to reduce latency in a content distribution system by storing multiple frames from a sequence of frames in different buffers and encrypting, in parallel, the frames stored in the different buffers. For example, the content provider may encrypt each buffer via a different instruction pipeline of a processor.
Claims37
A method comprising:
- receiving a segment of a content asset, wherein the segment comprises a sequence of video frames;
- storing each of a first plurality of video frames of the sequence in a different one of a plurality of buffers;
- encrypting, in parallel, at least a portion of each of the first plurality of video frames stored in the plurality of different buffers, wherein the encrypting, in parallel, the at least the portion of each video frame stored in the plurality of different buffers comprises processing each buffer via a different instruction pipeline of a processor, and wherein the processing of at least one buffer in one instruction pipeline is offset from the processing of another buffer in another pipeline by one or more instruction cycles of the processor.
A method comprising:
- receiving, at a central processing unit (CPU), a segment of a content asset, wherein the segment comprises a sequence of video frames;
- storing, by the CPU, each of a plurality of video frames of the sequence in a different one of a plurality of buffers, wherein a first video frame of the plurality of video frames is stored in a first buffer of the plurality of buffers and a second video frame of the plurality of video frames is stored in a second buffer of the plurality of buffers;
- providing, by a first instruction pipeline of the CPU at a first clock cycle of the CPU, the first buffer to an encryption function;
- and
- providing, by a second instruction pipeline of the CPU at a second clock cycle of the CPU, the second buffer to the encryption function, wherein encryption of the first video frame is performed simultaneously to encryption of the second video frame.
2 more elements
A non-transitory computer-readable medium comprising instructions that, when executed, cause:
- receiving a segment of a content asset, wherein the segment comprises a sequence of video frames;
- storing each of a first plurality of video frames of the sequence in a different one of a plurality of buffers;
- encrypting, in parallel, at least a portion of each of the first plurality of video frames stored in the plurality of different buffers, wherein the encrypting, in parallel, the at least the portion of each video frame stored in the plurality of different buffers comprises processing each buffer via a different instruction pipeline of a processor, and wherein the processing of at least one buffer in one instruction pipeline is offset from the processing of another buffer in another pipeline by one or more instruction cycles of the processor.
A device comprising:
- one or more processors;
- and
- memory storing instructions that, when executed by the one or more processors, cause the device to:
- receive a segment of a content asset, wherein the segment comprises a sequence of video frames;
- store each of a first plurality of video frames of the sequence in a different one of a plurality of buffers;
- encrypt, in parallel, at least a portion of each of the first plurality of video frames stored in the plurality of different buffers, wherein the encrypting, in parallel, the at least the portion of each video frame stored in the plurality of different buffers comprises processing each buffer via a different instruction pipeline of a processor, and wherein the processing of at least one buffer in one instruction pipeline is offset from the processing of another buffer in another pipeline by one or more instruction cycles of the processor.
3 more elements
A system comprising:
- a first computing device configured to send a segment of a content asset;
- and
- a second computing device configured to:
- receive the segment of the content asset, wherein the segment comprises a sequence of video frames;
- store each of a first plurality of video frames of the sequence in a different one of a plurality of buffers;
- encrypt, in parallel, at least a portion of each of the first plurality of video frames stored in the plurality of different buffers, wherein the encrypting, in parallel, the at least the portion of each video frame stored in the plurality of different buffers comprises processing each buffer via a different instruction pipeline of a processor, and wherein the processing of at least one buffer in one instruction pipeline is offset from the processing of another buffer in another pipeline by one or more instruction cycles of the processor.
3 more elements
Dependencies are inferred from the claim text.