throbber
I 1111111111111111 11111 1111111111 11111 11111 111111111111111 111111111111111111
`US008789196B2
`
`c12) United States Patent
`Pestoni et al.
`
`(10) Patent No.:
`(45) Date of Patent:
`
`US 8,789,196 B2
`Jul. 22, 2014
`
`(54) SYSTEM AND METHOD FOR PROVIDING
`CONTENT PROTECTION OF LINEARLY
`CONSUMED CONTENT WITH A
`BIDIRECTIONAL PROTOCOL FOR LICENSE
`ACQUISITION
`
`(75)
`
`Inventors: Florian Pestoni, Mountain View, CA
`(US); Sunil C. Agrawal, Milpitas, CA
`(US); Viswanathan Swaminathan,
`Fremont, CA (US)
`
`(73) Assignee: Adobe Systems Incorporated, San Jose,
`CA(US)
`
`( *) Notice:
`
`Subject to any disclaimer, the term of this
`patent is extended or adjusted under 35
`U.S.C. 154(b) by 412 days.
`
`USPC ............................................. 380/210; 726/26
`See application file for complete search history.
`
`(56)
`
`References Cited
`
`U.S. PATENT DOCUMENTS
`
`6,873,975 Bl *
`6,915,425 B2 *
`7,050,583 B2
`7,299,209 B2 *
`
`3/2005 Hatakeyama et al ........... 705/51
`7/2005 Xu et al. ....................... 713/165
`5/2006 Montgomery
`11/2007 Collier ........................... 705/59
`(Continued)
`
`OTHER PUBLICATIONS
`
`Content Protection for IPTV-current state of the art and challenges;
`Zhang Hua, Chen Chunxiao, Zhao Li, Yang Shiqiang, Zhou Lizhu;
`IMACS Multiconference on "Computational Engineering in Sys(cid:173)
`tems Applications"(CESA), Oct. 4-6, 2006, Beijing, China.*
`
`(21) Appl. No.: 12n90,529
`
`(22) Filed:
`
`May 28, 2010
`
`(65)
`
`(51)
`
`(52)
`
`(58)
`
`Prior Publication Data
`
`US 2013/0121489 Al
`
`May 16, 2013
`
`(2006.01)
`(2011.01)
`(2006.01)
`(2011.01)
`(2011.01)
`(2011.01)
`
`Int. Cl.
`H04L29/06
`H04N 21/8355
`H04L 9/08
`H04N21/845
`H04N 2114627
`H04N 2112347
`U.S. Cl.
`CPC .............. H04L 9/0822 (2013.01); H04L 63/10
`(2013.01); H04L 63/06 (2013.01); H04N
`21/8355 (2013.01); H04L 2209/603 (2013.01);
`H04N 21/8456 (2013.01); H04N 2114627
`(2013.01); H04L 2463/101 (2013.01); H04N
`2112347 (2013.01)
`USPC ............................................. 726/26; 380/210
`Field of Classification Search
`CPC ............ G06F 21/10; G06F 2221/2107; G06F
`2221/0753; H04N 21/2541; H04L 2463/101
`
`(Continued)
`
`Primary Examiner - Luu Pham
`James Turchen
`Assistant Examiner
`(74) Attorney, Agent, or Firm Wolfe-SBMC
`
`ABSTRACT
`(57)
`Embodiments may include a content provider system config(cid:173)
`ured to provide electronic content that includes multiple
`encrypted content items to a playback device. A playback
`device may be configured to acquire root licenses and/or
`content licenses from a license server; such licenses may
`cryptographically protect the content items that a playback
`device receives from a content provider system. In various
`embodiments, the electronic content may be content that is to
`be linearly consumed, such as a channel within a broadcast
`environment. In various embodiments, the playback device
`may explicitly request a license for one or more of the content
`items that it receives; such request may be issued to a license
`server. The license server may evaluate the request and
`respond to the playback device with the license for a content
`item. In various embodiments, the playback device may uti(cid:173)
`lize the received license to decrypt and consume the respec(cid:173)
`tive content item.
`
`24 Claims, 8 Drawing Sheets
`
`I
`
`license server(s) QQ
`
`I
`
`I
`
`content provider system(s) 11.Q
`
`I
`
`content
`license
`request
`400
`
`content
`license
`i1Q
`o-,,_
`
`key box~
`0-n--
`protects
`-------► 0-n--
`0-n--
`
`protects
`--------
`protects
`- - - - - - - -
`protects
`--------
`
`',
`
`I
`
`♦
`playback device 100
`
`segment~
`
`segment 440b
`
`segment 440a
`
`encrypted content item ~
`~
`~
`~
`
`I
`I
`I
`
`I
`
`Google Exhibit 1012
`Google v. Ericsson
`
`

`

`US 8,789,196 B2
`Page 2
`
`(56)
`
`References Cited
`
`U.S. PATENT DOCUMENTS
`
`7,827,113 B2 *
`8,239,446 B2 *
`2005/0080746 Al*
`2005/0251487 Al*
`2006/0230458 Al*
`2006/0239451 Al
`2006/0242078 Al
`2006/0242080 Al
`2007/0160208 Al
`2007/0162399 Al *
`2007/0198858 Al*
`
`11/2010 Saekietal ...................... 705/59
`8/2012 Navar et al .................... 709/203
`4/2005 Zhu et al. ........................ 705/59
`11/2005 Evans et al. ..................... 705/59
`10/2006 Saeki et al ...................... 726/26
`10/2006 Evans
`10/2006 Evans
`10/2006 Van Dyke
`7/2007 MacLean
`............ 705/59
`7/2007 Medvinsky et al.
`8/2007 Kim et al. ..................... 713/193
`
`2007 /0294170 Al
`2008/0019516 Al*
`2008/0066181 Al*
`2009/0157552 Al*
`2009/0169002 Al
`2011/0072268 Al *
`2011/0164753 Al*
`2012/0017282 Al*
`
`12/2007 Vantalon
`1/2008 Fransdonk .................... 380/201
`3/2008 Haveson et al.
`................ 726/26
`6/2009 Schnell et al.
`.................. 705/59
`7/2009 Hauge
`3/2011 Yamagishietal. ........... 713/171
`7/2011 Dubhashi et al. ............. 380/282
`1/2012 Kang et al ....................... 726/26
`
`OTHER PUBLICATIONS
`
`Microsoft PlayReady Content Access Technology; Jul. 2008, White
`Paper.*
`
`* cited by examiner
`
`

`

`U.S. Patent
`
`Jul. 22, 2014
`
`Sheet 1 of 8
`
`US 8,789,196 B2
`
`content provider system(s)
`11.Q
`
`license server(s)
`120
`
`network(s)
`130
`
`playback device(s) 100
`
`FIG. 1
`
`

`

`I
`
`j
`
`license server(s) 120
`
`I
`
`content provider system(s) 11.Q
`
`content
`license
`request
`230a
`
`I
`
`content
`license
`request
`230b
`
`content
`license
`request
`230n
`
`content
`license
`235n
`0-n
`
`content
`license
`235b
`0-n
`
`content
`license
`235a
`0-n
`
`,
`
`manifest
`220n
`
`manifest
`220b
`
`manifest
`220a
`
`, '
`
`request(s)
`210
`
`updateable
`playlist 215
`
`'
`playback device 100
`
`root
`license
`request
`200
`
`root
`license
`205
`0-n
`
`,.
`
`I
`
`I
`
`output device(s) 275
`
`I
`
`I
`
`~
`00 .
`
`~
`~
`~
`
`~ = ~
`
`I
`encrypted content item
`240n
`
`I
`
`encrypted content item
`240b
`
`I fragment 265n I
`I fragment 265b I
`I fragment 265a I
`I fragment 255n I
`
`\
`
`egment
`s
`260
`
`I -
`
`-
`
`\,
`
`I fragment 255b I
`I fragment 255a I
`encrypted content item
`240a
`♦
`
`-
`
`decrypted content
`
`egment
`s
`250
`
`-
`
`I
`
`2'
`
`:-'
`N
`~
`N
`0 ....
`
`.i;...
`
`('D
`('D
`
`r,J =(cid:173)
`.....
`N
`0 ....
`
`QO
`
`d r.,;_
`
`00
`~
`00
`_."-0
`"'""' "-0
`
`0--, = N
`
`

`

`U.S. Patent
`
`Jul. 22, 2014
`
`Sheet 3 of 8
`
`US 8,789,196 B2
`
`requests
`
`collective
`request
`r capacity 320
`
`collective
`license
`requests 330a
`_,)
`
`0
`
`---------~ \~ - - - - - -~ ~------·-
`
`0
`
`30
`
`60
`
`time
`(minutes)
`
`current content item 300
`
`next content item 310
`
`FIG. 3A
`
`requests
`
`r collective request capacity 320
`
`0
`
`' - collective license requests 330b
`
`0
`
`30
`
`60
`
`time
`(minutes)
`
`current content item 300
`
`next content item 310
`
`FIG. 3B
`
`

`

`I
`
`license server(s) 120
`
`I
`
`I
`
`content provider system(s) 110
`
`h
`
`content
`license
`request
`400
`
`I
`
`content
`license
`410
`0-n-
`
`, ,
`
`protects
`-------►
`
`key box 420
`0-n ---
`0-n---
`0-n---
`
`playback device 100
`
`FIG. 4
`
`encrypted content item 430
`protects
`~
`--------
`protects
`~
`- - - - - - - -
`protects
`-------- ~
`
`segment 440b
`
`segment 440a
`
`segment 440c
`
`I
`
`I
`I
`I
`
`I
`
`~
`00 .
`
`~
`~
`~
`
`~ = ~
`
`2'
`
`:-'
`N
`~
`N
`0 ....
`
`.i;...
`
`('D
`('D
`
`r,J =(cid:173)
`.....
`.i;...
`0 ....
`
`QO
`
`d r.,;_
`
`00
`~
`00
`_."-0
`"'""' "-0
`
`0--, = N
`
`

`

`counter
`520
`
`iteration
`count
`
`key
`generator
`500
`
`14
`
`content
`license
`510
`0-n
`
`base key
`
`segment JC
`decryption 1
`keys L
`
`encrypted content item ~
`
`segment 540c
`
`I
`
`I segment 540b
`
`segment
`identifiers
`
`1 1 segment 540a
`
`encrypted
`content
`segments
`
`decryption unit 550
`
`playback device 100
`
`decrypted content
`
`FIG. 5
`
`~
`00 .
`
`~
`~
`~
`
`~ = ~
`
`2'
`
`:-'
`N
`~
`N
`0 ....
`
`.i;...
`
`('D
`('D
`
`r,J =(cid:173)
`.....
`Ul
`0 ....
`
`QO
`
`d r.,;_
`
`00
`~
`00
`_."-0
`"'""' "-0
`
`0--, = N
`
`

`

`encrypted
`content
`segments
`
`.--------------------------,
`
`content
`license
`610
`0-n
`
`base key
`
`decryption
`unit 620
`
`encrypted
`segment
`decryption
`( keys
`
`decrypted content
`
`J
`initialization
`vector
`
`playback device 100
`
`FIG. 6
`
`segment 640c
`
`i----t------f segment 640b
`I I
`I segment 640a
`encrypted content item 630
`
`~
`00 .
`
`~
`~
`~
`
`~ = ~
`
`2'
`
`:-'
`N
`~
`N
`0 ....
`
`.i;...
`
`('D
`('D
`
`r,J =(cid:173)
`.....
`O'I
`0 ....
`
`QO
`
`d r.,;_
`
`00
`~
`00
`_."-0
`"'""' "-0
`
`0--, = N
`
`

`

`U.S. Patent
`
`Jul. 22, 2014
`
`Sheet 7 of 8
`
`US 8,789,196 B2
`
`playback device racaivas eledronic cantant for linear consumption fnm
`contant provider syslam(s)
`11m.
`
`C Siert )
`i
`
`i
`
`/
`
`for ead1 given erayplad content lam of tha electrDlic content:
`ZD2.
`
`4---
`
`i
`
`playback device 110vides a request fm' a content license for the given
`encrypted content item ID a license server
`11H.
`
`i
`
`subsequent to !JDvldl" the request, playback device receives from lhe
`llcanaa server the parlcuar CClltent llcense that protecls the given
`anayptad a,ntant ilam
`ZII.
`
`i
`
`playback device utlizes the pmlicuar mntent lcense ID decrypt the given
`en:ryp1Bd conlart 11am to generale a ntSpecllw deaypted corunt llem
`111.
`
`i
`
`playla:k davica a>nsllTBS Iha givan n:ayptad content ilam acmdi~ ID a
`predefined ha SBIJJence and usage rules specified by the limnse
`Ilil
`
`i
`
`next enawlad contant Ian
`Z12.
`
`-
`
`(
`
`i
`end )
`RG.7
`
`

`

`computer system 800
`
`processor
`810a
`
`l~
`
`,.
`
`processor
`810b
`
`J
`
`1/0 interface
`830
`
`i
`
`memory 820
`program instructions 822
`
`data 832
`
`FIG. 8
`
`j~
`
`"
`network
`interface
`840
`
`l~
`
`,
`~t)
`-
`
`5
`
`~
`00 .
`
`~
`~
`~
`
`~ = ~
`
`...
`
`processor
`810n
`
`~
`
`•
`
`~
`
`inpuUoutput device(s)
`850
`
`J
`
`~
`
`J
`
`+
`cursor
`control
`device
`860
`
`•
`keyboard
`870
`
`+
`display(s)
`880
`
`2'
`
`:-'
`N
`~
`N
`0 ....
`
`.i;...
`
`('D
`('D
`
`r,J =(cid:173)
`.....
`QO
`0 ....
`
`QO
`
`d r.,;_
`
`00
`~
`00
`_."-0
`"""' "-0
`0--, = N
`
`

`

`US 8,789,196 B2
`
`1
`SYSTEM AND METHOD FOR PROVIDING
`CONTENT PROTECTION OF LINEARLY
`CONSUMED CONTENT WITH A
`BIDIRECTIONAL PROTOCOL FOR LICENSE
`ACQUISITION
`
`BACKGROUND
`
`2
`content item that is to be linearly consumed (e.g., according to
`a play list or other specified sequence).
`By utilizing such bidirectional protocol for license acqui(cid:173)
`sition, embodiments may differ from conventional unidirec(cid:173)
`tional conditional access systems in a number ofrespects. For
`instance, in conventional unidirectional conditional access
`systems, a content provider system may push decryption keys
`in-band (e.g., as part of a content stream) to a respective
`playback device. Furthermore, in conventional unidirectional
`10 conditional access systems, the content decryption keys for
`different playback devices ( e.g., different subscribers) may
`all be included within the same content stream; this may be
`done by encrypting each content decryption key such that
`only the appropriate playback device can decrypt it. In this
`15 conventional system, it may be left up to each individual
`playback device to hold the correct key that will decrypt the
`appropriate content decryption key for that playback device
`among the multiple other decryption keys in the content
`stream.
`
`BRIEF DESCRIPTION OF THE DRAWINGS
`
`1. Field of the Invention
`The present invention is directed to computer systems.
`More particularly, it is directed to the protection of electronic
`content within a computing environment.
`2. Description of the Related Art
`In a general sense, conditional access systems require cer(cid:173)
`tain criteria to be met before access to protected content is
`granted. For example, cable television providers employing
`conditional access may encrypt television chamiels such that
`unencrypted versions of such channels can only be viewed by
`individuals that have acquired an appropriate subscription. In 20
`this example, a television set top box issued to a subscriber
`may include a decryption module for decrypting content from
`the provider. In an example including conventional analog
`systems, this process was historically performed by scram(cid:173)
`bling television channels; a television set top box capable of 25
`descrambling such chamiels was required to view the chan(cid:173)
`nels.
`In early conditional access systems, communication
`between the content provider and the subscriber was unidi(cid:173)
`rectional. For instance, a content channel could be provided
`as unidirectional downstream content sent from the provid(cid:173)
`er's system to the subscriber device (e.g., a set top box).
`Within such a framework, the content provider could push
`non-content information ( e.g., decryption keys for channel
`decryption) in-band over the unidirectional chamiel to the
`subscriber.
`
`FIG. 1 illustrates a block diagram of an example system
`configuration, according to some embodiments.
`FIG. 2 illustrates an example flow diagram of license and
`content acquisition, according to some embodiments.
`FIGS. 3A-3B illustrate an example plot of collective
`license requests over time, according to some embodiments.
`FIG. 4 illustrates an example flow diagram for key box
`30 acquisition, according to some embodiments.
`FIG. 5 illustrates an example block diagram of a playback
`device including a segment key generator, according to some
`embodiments.
`FIG. 6 illustrates an example block diagram of a playback
`35 device configured to process content including encrypted seg(cid:173)
`ment decryption keys, according to some embodiments.
`FIG. 7 illustrates a flowchart of an example method for
`license acquisition and content consumption, according to
`some embodiments.
`FIG. 8 illustrates an example computer system suitable for
`implementing various components of the system and method
`for providing content protection oflinearly consumed content
`with a bidirectional protocol for license acquisition, accord(cid:173)
`ing to various embodiments.
`While the system and method for providing content pro-
`tection of linearly consumed content with a bidirectional
`protocol for license acquisition is described herein by way of
`example for several embodiments and illustrative drawings,
`those skilled in the art will recognize that the system and
`50 method for providing content protection of linearly con(cid:173)
`sumed content with a bidirectional protocol for license acqui(cid:173)
`sition is not limited to the embodiments or drawings
`described. It should be understood, that the drawings and
`detailed description thereto are not intended to limit embodi-
`55 ments to the particular form disclosed. Rather, the intention is
`to cover all modifications, equivalents and alternatives falling
`within the spirit and scope of the system and method for
`providing content protection of linearly consumed content
`with a bidirectional protocol for license acquisition as defined
`60 by the appended claims. Any headings used herein are for
`organizational purposes only and are not meant to limit the
`scope of the description or the claims. As used herein, the
`word "may" is used in a permissive sense (i.e., meaning
`having the potential to), rather than the mandatory sense (i.e.,
`65 meaning must). Similarly, the words "include", "including",
`and "includes" mean including, but not limited to. In various
`portions of the description presented herein, the terms "vali-
`
`SUMMARY
`
`Various embodiments of a system and method for provid- 40
`ing content protection of linearly consumed content with a
`bidirectional protocol for license acquisition are described.
`Embodiments may include one or more content provider
`systems configured to provide electronic content that
`includes multiple encrypted content items to one or more 45
`playback devices. A playback device may be configured to
`acquire one or more licenses from one or more license serv(cid:173)
`ers; such licenses may cryptographically protect the content
`items that a playback device receives from a content provider
`system.
`In various embodiments, the electronic content that is pro(cid:173)
`vided from the one or more content provider systems to a
`playback device may be content that is to be linearly con(cid:173)
`sumed ( e.g., played), such as consumed according to a play(cid:173)
`list that specifies the chronological sequence according to
`which different content items are to be consumed. In various
`embodiments, the playback device may explicitly request a
`content license for each of the content items that it receives;
`such request may be issued to a license server. The license
`server may evaluate the request and respond to the playback
`device with the content license for a content item. This con(cid:173)
`tent license may include a decryption key and usage rules that
`specify one or more restrictions on the access or consumption
`of the content item. In various embodiments, the playback
`device may utilize the received content license to decrypt and
`consume the respective content item. In various embodi(cid:173)
`ments, the above described process may be repeated for each
`
`

`

`US 8,789,196 B2
`
`3
`date", "verify", "validation", "verification", "validating", and
`"verifying" may be used interchangeably.
`
`DETAILED DESCRIPTION OF EMBODIMENTS
`
`Various embodiments of a system and method for provid-
`ing content protection of linearly consumed content with a
`bidirectional protocol for license acquisition are described. In
`the following detailed description, numerous specific details
`are set forth to provide a thorough understanding of claimed
`subject matter. However, it will be understood by those
`skilled in the art that claimed subject matter may be practiced
`without these specific details. In other instances, methods,
`apparatuses or systems that would be known by one of ordi(cid:173)
`nary skill have not been described in detail so as not to 15
`obscure claimed subject matter.
`Some portions of the detailed description which follow are
`presented in terms of algorithms or symbolic representations
`of operations on binary digital signals stored within a
`memory of a specific apparatus or special purpose computing
`device or platform. In the context of this particular specifica(cid:173)
`tion, the term specific apparatus or the like includes a general
`purpose computer once it is programmed to perform particu-
`lar functions pursuant to instructions from program software.
`Algorithmic descriptions or symbolic representations are
`examples of techniques used by those of ordinary skill in the
`signal processing or related arts to convey the substance of
`their work to others skilled in the art. An algorithm is here,
`and is generally, considered to be a self-consistent sequence
`of operations or similar signal processing leading to a desired
`result. In this context, operations or processing involve physi(cid:173)
`cal manipulation of physical quantities. Typically, although
`not necessarily, such quantities may take the form of electri-
`cal or magnetic signals capable of being stored, transferred,
`combined, compared or otherwise manipulated. It has proven
`convenient at times, principally for reasons of common
`usage, to refer to such signals as bits, data, values, elements,
`symbols, characters, terms, numbers, numerals or the like. It
`should be understood, however, that all of these or similar
`terms are to be associated with appropriate physical quanti(cid:173)
`ties and are merely convenient labels. Unless specifically
`stated otherwise, as apparent from the following discussion, it
`is appreciated that throughout this specification discussions
`utilizing terms such as "processing," "computing," "calculat(cid:173)
`ing," "determining" or the like refer to actions or processes of
`a specific apparatus, such as a special purpose computer or a
`similar special purpose electronic computing device. In the
`context of this specification, therefore, a special purpose
`computer or a similar special purpose electronic computing
`device is capable of manipulating or transforming signals,
`typically represented as physical electronic or magnetic
`quantities within memories, registers, or other information
`storage devices, transmission devices, or display devices of
`the special purpose computer or similar special purpose elec(cid:173)
`tronic computing device.
`Various embodiments include various encryption and/or
`decryption keys, any of which may be generated via a key
`derivation function (KDF). Key derivation functions may
`include the completion of one or more iterations or instances
`of cryptographic operations in order to generate an encryp(cid:173)
`tion or decryption key. Examples of key derivation function
`may include but are not limited to any key derivation func(cid:173)
`tions specified by Public Key Cryptography Standards
`(PKCS) (e.g., PKCS-5 or PKCS-12) or Adobe® Password
`Security. In various embodiments, KDFs may be utilized by
`any of the various components described herein to generate
`encryption keys for symmetric encryption.
`
`4
`In various instances, this detailed description may refer to
`content items (which may also be referred to as "content
`data," "content information" or simply "data" or "informa(cid:173)
`tion"). In some instances, content items may include any
`information or data that may be licensed to one or more
`individuals (or other entities, such as business or group). In
`various embodiments, content may include electronic repre(cid:173)
`sentations of video, audio, text and/or graphics, which may
`include but is not limited to electronic representations of
`10 videos, movies, or other multimedia, which may include but
`is not limited to data files adhering to Adobe® Flash® Video
`(.FLY) format, the F4V format, MPEG-4 formats, or some
`other video file format whether such format is presently
`known or developed in the future.
`In various embodiments, the content items described
`herein may include electronic representations of music, spo(cid:173)
`ken words, or other audio, which may include but is not
`limited to data files adhering to the MPEG-1 Audio Layer 3
`(.MP3) format, Adobe® Sound Document (.ASND) format
`20 or some other format configured to store electronic audio
`whether such format is presently known or developed in the
`future. In some cases, content may include data files adhering
`to the following formats: Portable Document Format (.PDF),
`Electronic Publication (.EPUB) format created by the Inter-
`25 national Digital Publishing Forum (IDPF), JPEG (.JPG) for(cid:173)
`mat, Portable Network Graphics (.PNG) format, Adobe®
`Photoshop® (.PSD) format or some other format for elec(cid:173)
`tronically storing text, graphics and/or other information
`whether such format is presently known or developed in the
`30 future. In some embodiments, content items may include any
`combination of the above-described examples.
`In various instances, this detailed disclosure may refer to
`consuming content or to the consumption of content, which
`may also be referred to as "accessing" content, "viewing"
`35 content, "listening" to content, or "playing" content, among
`other things. In some cases, the particular term utilized may
`be dependent on the context in which it is used. For example,
`consuming video may also be referred to as viewing or play(cid:173)
`ing the video. In another example, consuming audio may also
`40 be referred to as listening to or playing the audio.
`In various instances, this detailed description may refer to
`a devices configured to perform content consumption. In
`various embodiments, such a device may include but is not
`limited to a computing system (e.g., a desktop or laptop
`45 computer), a set-top television box, a digital audio or multi(cid:173)
`media player (e.g., an MP3 player), a personal digital assis(cid:173)
`tant (PDA), a mobile phone, a smartphone, a touchscreen
`phone, an e-book reader, a digital photo frame, or any other
`device or system configured to access, view, read, write,
`50 and/or manipulate any of the content data described herein.
`Any of such devices may be implemented via a computer
`system similar to that described with respect to FIG. 8.
`Note that in various instances the description presented
`herein may refer to a given entity performing some action. It
`55 should be understood that this language may in some cases
`mean that a system (e.g., a computer) owned and/or con(cid:173)
`trolled by the given entity is actually performing the action.
`Note that in various instances the description presented
`herein may refer to a public key being associated with a
`60 private key or a public key corresponding to private key. It
`should be understood that such statements may mean that
`such a public key forms a public key-private key pair with
`such a private key. Additionally, in some cases, a public
`key-private key pair may be referred to as simply a "key
`65 pair." Note that in various embodiments, public key-private
`key pairs may be generated via one or more key derivation
`functions, such as those described above.
`
`

`

`US 8,789,196 B2
`
`5
`FIG. 1 illustrates an example system configuration of a
`system in which various embodiments may be implemented.
`In the illustrated embodiment, one or more playback devices
`100 may receive protected content from one or more content
`provider system(s) 110. In various embodiments, such pro(cid:173)
`tected content may be protected by content licenses, which
`may be provided by one or more license servers 120. Any of
`the illustrated elements may communicate over one or more
`networks 130, which may be configured in a manner similar
`to that of network 885 of FIG. 8.
`In various embodiments, a given playback device 100 may
`be any electronic device configured to consume electronic
`content. Examples of such devices may include but are not
`limited to a computer ( e.g., similar to that of computer system
`800 of FIG. 8), a set top television box (with or without digital
`video recording capabilities), a digital television tuner, a
`mobile device (e.g., a smartphone) or another electronic
`device. While not illustrated, a given playback device 100
`may include or be coupled to an electronic display (e.g., a
`monitor, television, or flat-panel display) configured to gen(cid:173)
`erate visual representations of content. Likewise, a given
`playback device 100 may include or be coupled to one or
`more transducers (e.g., an audio speaker) configured to gen(cid:173)
`erate audible representations of content. In any case, a given
`playback device 100 may be configured to generate visual
`and/or audible representations of content on any of the afore(cid:173)
`said items (e.g., displays, speakers, etc.) upon decryption of
`such content.
`In various embodiments, a given content provider system
`110 may provide to a given playback device 100 content that
`is structured to be linearly consumed (e.g., played). For
`instance, such content may include multiple encrypted con(cid:173)
`tent items that are to be consumed in a particular sequential
`order. In various embodiments, a given content item may
`include any cryptographically distinct portion of content
`described above. In one embodiment, two content items may
`be cryptographically distinct by virtue of being encrypted
`with different encryption keys. In some cases, a given
`encrypted content item may be a complete asset, such as a
`complete movie, motion picture, or television program (with
`or without embedded advertisements, such as television com(cid:173)
`mercials). In other cases, a given encrypted content item may
`be a time slice ( e.g., a sub-portion) of a larger program or
`content stream. In one particular example, the content pro(cid:173)
`vider system may provide to the playback device a stream of
`open-ended data (e.g., a 24-hour content channel) that is
`divided into a series of content items corresponding to time
`slices.
`In any of these scenarios, the sequence according to which
`the multiple encrypted content items are to be linearly con(cid:173)
`sumed may be specified by data from the content provider
`system 110 or some other system. In one embodiment, such
`data may be playlist data that specifies a sequence according
`to which the multiple content items are to be played. The
`play list data may specify such sequence by assigning a view(cid:173)
`ing order to the multiple encrypted content items and/or by
`specifying distinct times at which each encrypted content
`item is expected to be viewed. Playback device 100 may
`consume the multiple encrypted content items according to
`the sequence described above upon decrypting the encrypted
`content items.
`In various embodiments, the encryption of the multiple
`content items received by playback device 100 may serve as
`a conditional access control. For instance, the multiple con(cid:173)
`tent items may be encrypted such that only entities or devices
`that hold an appropriate license will be able to decrypt those
`content items. By controlling which entities or devices are
`
`6
`granted such license, the content provider ( or an entity acting
`on behalf of the content provider, such as a security provider)
`may enforce conditional access, entitlement(s ), and/or rights
`on the content that it provides to playback devices. This
`control may be enforced by one or more license servers 120.
`In various embodiments, for any of the encrypted content
`items received by playback device 100, the playback device
`may generate a license request for the license that protects
`that content item (e.g., the license that will enable the play-
`10 back device to access the content item). The playback device
`100 may send the license request to license server 120. In
`some cases, the identity ( e.g., name or network address) of the
`license server to which the request should be sent may be
`included in manifest data ( describe in more detail below with
`15 respect to FIG. 2) or a non-encrypted header portion of the
`encrypted content item. In some cases, the request sent to the
`license server may also include a license identifier that can be
`used by the license server to identify the appropriate license
`for the relevant content item of the playback device. License
`20 server 120 may identify the corresponding license and pro(cid:173)
`vide it to playback device 100. In some cases, the license
`request may also include various types of authentication
`information. In some cases, license server 120 may only
`provide the license to the playback device in response to
`25 determining that the authentication information is valid ( de(cid:173)
`scribed in more detail with respect to FIG. 2). In various
`embodiments, license server 120 may securely provide the
`license to the playback device by encrypting the license with
`a public key of the playback device such that only the play-
`30 back device may decrypt the license by using the correspond(cid:173)
`ing private key.
`Playback device 100 may utilize the license received from
`the license server to decrypt the encrypted content item. In
`various embodiments, the content license may include a con-
`35 tent decryption key that may be required to decrypt the
`encrypted content item. As described in more detail below,
`other decryption key techniques may be utilized in some
`embodiments (some of which employ multiple decryption
`keys for the same content item). In various embodiments, the
`40 content license may also include information specifying
`usage rules, which may in some instances be referred to as
`usage rights, rights, or copy control information. In various
`embodiments, the playback device may be configured to
`enforce the usage rules of the license on the access and/or
`45 consumption of the content item. In general, usage rules may
`include any restrictions on the use or access of the content
`item including but not limited to restricting the access of
`content to a particular time period, restricting the actions
`( e.g., view, copy, save, distribute, etc.) that can be performed
`50 with respect to the content item, and/or enforcing some other
`restriction upon the content item.
`In various embodiments, the license acquisition process
`described above may be repeated for each content item in the
`linear sequence of content items consumed by the playback
`55 device. As described in more detail below, the content item
`may request and obtain the content license for an encrypted
`content item prior to the time at which that content item is
`expected to be played. In this way, the playback device can
`provide a seamless playback of the linearly consumed content
`60 items ( e.g., playing the content items without temporal gaps
`in the playback of each content item).
`By utilizing the bidirectional nature of the illustrated sys(cid:173)
`tem, embodiments may differ from conventional unidirec(cid:173)
`tional conditional access systems in a number ofrespects. For
`65 instance, in conventional unidirectional conditional access
`systems, a content provider may push decryption keys in(cid:173)
`band

This document is available on Docket Alarm but you must sign up to view it.


Or .

Accessing this document will incur an additional charge of $.

After purchase, you can access this document again without charge.

Accept $ Charge
throbber

Still Working On It

This document is taking longer than usual to download. This can happen if we need to contact the court directly to obtain the document and their servers are running slowly.

Give it another minute or two to complete, and then try the refresh button.

throbber

A few More Minutes ... Still Working

It can take up to 5 minutes for us to download a document if the court servers are running slowly.

Thank you for your continued patience.

This document could not be displayed.

We could not find this document within its docket. Please go back to the docket page and check the link. If that does not work, go back to the docket and refresh it to pull the newest information.

Your account does not support viewing this document.

You need a Paid Account to view this document. Click here to change your account type.

Your account does not support viewing this document.

Set your membership status to view this document.

With a Docket Alarm membership, you'll get a whole lot more, including:

  • Up-to-date information for this case.
  • Email alerts whenever there is an update.
  • Full text search for other cases.
  • Get email alerts whenever a new case matches your search.

Become a Member

One Moment Please

The filing “” is large (MB) and is being downloaded.

Please refresh this page in a few minutes to see if the filing has been downloaded. The filing will also be emailed to you when the download completes.

Your document is on its way!

If you do not receive the document in five minutes, contact support at support@docketalarm.com.

Sealed Document

We are unable to display this document, it may be under a court ordered seal.

If you have proper credentials to access the file, you may proceed directly to the court's system using your government issued username and password.


Access Government Site

We are redirecting you
to a mobile optimized page.





Document Unreadable or Corrupt

Refresh this Document
Go to the Docket

We are unable to display this document.

Refresh this Document
Go to the Docket