Stream Decryption Using Independent Initialization Vectors

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing content distribution systems face challenges in securely providing on-demand access to encrypted content, particularly with encryption methods like CBC requiring previous blocks to decrypt current blocks, which complicates mid-stream access and is inefficient.

Innovation Solution

A distribution point is configured to provide an initialization vector (IV) for encrypted blocks, allowing listeners to decrypt content without needing previous blocks, and supports features like trickplay (pause, fast forward, rewind) by enabling access to encrypted streams using a time code, thus simplifying and speeding up the decryption process.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If CBC encryption is used to secure content distribution, then content security is improved, but mid-stream access becomes complex and inefficient because previous blocks are required to decrypt current blocks

Engineering Contradiction:
Improvecontent securityVSAvoidmid-stream access
Core Design Contradiction:
ReliabilityVSEase of operation

Solution Approach 1:

The patent segments the decryption process by providing separate initialization vectors for each encrypted block. Instead of requiring sequential decryption where block N depends on block N-1, each block is independently decryptable with its own IV, enabling random access to any portion of the encrypted content without needing to process previous blocks.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent performs preliminary action by pre-generating and distributing initialization vectors alongside the encrypted content blocks. This allows listeners to obtain the necessary IVs before attempting decryption, enabling them to access any block directly without needing to decrypt preceding blocks, thus facilitating efficient mid-stream access and trickplay features.

Inventive Principle:
Principle #10Preliminary action

2Reliability

If CBC encryption is used, then content security is improved, but computational burden increases when accessing encrypted streams mid-stream

Engineering Contradiction:
Improvecontent securityVSAvoidcomputational burden
Core Design Contradiction:
ReliabilityVSUse of energy by moving object

Solution Approach 1:

The patent segments the encrypted content into independently decryptable blocks, each with its own initialization vector. This segmentation eliminates the need for cumulative decryption operations, allowing listeners to decrypt only the specific blocks they need rather than processing all preceding blocks, thereby reducing computational burden and energy consumption.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Each encrypted block is self-sufficient with its own initialization vector, enabling independent decryption without relying on other blocks. This self-service approach allows listeners to access and decrypt individual blocks or ranges of blocks directly, minimizing unnecessary computational operations and reducing energy usage when accessing encrypted content mid-stream.

Inventive Principle:
Principle #25Self-service

3Reliability

If traditional encryption methods are used, then content security is maintained, but user experience deteriorates due to limited trickplay functionality

Engineering Contradiction:
Improvecontent securityVSAvoidtrickplay functionality
Core Design Contradiction:
ReliabilityVSAdaptability or versatility

Solution Approach 1:

The patent segments encrypted content into discrete blocks with individual initialization vectors, enabling random access to any block. This segmentation makes trickplay features like pause, fast forward, and rewind feasible, as listeners can directly access and decrypt specific blocks corresponding to different positions in the content, providing versatile playback control while maintaining security.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent performs preliminary action by distributing initialization vectors with each encrypted block, enabling listeners to directly access and decrypt specific portions of content without processing previous blocks. This preliminary provision of IVs makes trickplay functionality practical, allowing users to pause at any block, skip ahead to future blocks, or rewind to previous blocks with minimal computational overhead.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS7734042B2System and method for using a streaming protocol
Publication Date: 2010.06.08 META PLATFORMS INC
  • US7734042B2 patent drawing
  • US7734042B2 patent drawing
  • US7734042B2 patent drawing

AI summary

An initialization vector (IV) is employed to decrypt a block of a stream that has been encrypted with Cypher Block Chaining (CBC) encryption, without requiring decryption of previous blocks within the stream. For example, a listener who accesses a distribution point to retrieve encrypted content authenticates himself to an application server that regulates access to encrypted content on the distribution point, and responsively receives a key. The listener then requests access to a reference point within the encrypted content stream somewhere after its beginning (e.g., using preview clips). The distribution point relates the reference point to a corresponding block of the encrypted stream, and identifies an IV previously used for encryption of that block. The distribution point provides the associated encrypted block of content and the IV to the listener to enable mid-stream rendering of the encrypted content, without requiring the listener to decrypt previous blocks within the encrypted stream.