Systems and methods for performing transport I/O

Abstract
Systems and methods for implementing a Transport I/O system are described. Network encrypted content may be received by a device. The device may provide the network encrypted content to a secure processor, such as, for example, a smart card. The secure processor obtains a network control work that may be used to decrypt the network encrypted content. The secure processor may decrypt the network encrypted content to produce clear content. In embodiments, the secure processor may then use a local control word to generate locally encrypted content specific to the device. The device may then receive the locally encrypted content from the secure processor and proceed to decrypt the locally encrypted content using a shared local encryption key. The transport I/O system ensures the protection of the network control word by maintaining the network control word on the secure processor.
Description
BACKGROUND

Digital Video Broadcasting (DVB) is an internationally recognized standard for transmitting digital television over cable, satellite, and other transmission mediums. A weakness of the DVB architecture is that the network control word used to decrypt content is easily shared over the Internet allowing non-subscribers access to broadcasted content. It is with respect to this general environment that embodiments of the present invention have been contemplated.


SUMMARY

Embodiments of the present disclosure relate to systems and methods to access content using a Transport I/O system. In embodiments, a secure processor receives network encrypted content. The secure processor may decrypt that network encrypted content using a network control word. In such embodiments, the network control word never leaves the secure processor and, thus, is protected from interception by an unauthorized user.


Further embodiments, after decrypting the network encrypted content, the secure processor may re-encrypt the content using a local control word to produce locally encrypted content. The locally encrypted content may be uniquely encrypted for a specific device such as, for example, a set-top-box, a system on a chip, or any other type of device capable of receiving and modifying content in embodiments, the secure processor provides the locally encrypted content to the device.


The device may receive the locally encrypted content and obtain the local control word. Using the local control word, the device may decrypt the locally encrypted content to produce clear content. The clear content may be processed by the device. For example, the device may display the content or store the content for later use.


This summary is provided to introduce a selection of concepts in a simplified form that are further described below in the Detailed Description. This summary is not intended to identify key features or essential features of the claimed subject matter, nor is it intended to be used to limit the scope of the claimed system matter.





BRIEF DESCRIPTION OF THE DRAWINGS

The same number represents the same element or same type of element in all drawings.



FIG. 1 illustrates a communications system 100 that may be employed with a Transport I/O system to protect content.



FIG. 2 is a flowchart representing an embodiment of a method 200 of performing network contest decryption.



FIG. 3 is an embodiment of a method 300 for processing locally encrypted content.



FIG. 4 is an embodiment of a method 400 for receiving and processing protected contest using a Transport I/O system.



FIG. 5 is an embodiment of a method 500 that may be employed to reset functionally of a secure device.



FIG. 6 is an embodiment of a packet pacing method 600.



FIG. 7 is an embodiment illustrating the compatibility between an ISO-7816 smart card and a smart card capable of supporting the systems and methods disclosed herein.



FIG. 8 is an embodiment of a secure processing device 800 that may be employed with the systems or to perform the methods disclosed herein.



FIG. 9 is an embodiment of a set-top-box that may be used to perform the Transport I/O system methods and be part of the systems disclosed herein.



FIG. 10 illustrates an embodiment of a computer environment and computer system 1000 for implementing the systems and methods disclosed herein.





DETAILED DESCRIPTION

The various embodiments described herein generally provide systems and methods for protecting streamed content by employing a Transport I/O system. In embodiments, a Transport I/O system can be employed to decrypt content, such as, but not limited to, a network broadcast stream without exposing a network encryption key to an unauthorized party. For example, in an embodiment where a Transport I/O system is operating in a Digital Video Broadcasting environment, a Transport I/O system may maintain a control word on a smart card and use the control word to decrypt a network broadcast on the smart card, rather than providing a decrypted control word to a descrambler that is not part of the smart card. In other embodiments, a Transport I/O system may protect a control word from exposure by applying additional encryption to a control word, securely communicating a control word to another component, etc. One of skill in the art will appreciate that any other means of reducing the risk of exposure of a control word or control words may be employed by a Transport I/O system.


In embodiments, the systems and methods disclosed herein may be practiced in a Digital Video Broadcasting (DVB) compliant system. DVB is a set of internationally accepted open standards for broadcasting digital television. The DVB standards define both the physical layer and the data link layer of a distributed system. These are DVB standards defining the distribution of content over various different mediums. For example, satellite transmissions are defined in the DVB-S, DVB-S2, and DVB-SH specifications. Cable transmission is defined in the DVB-C and DVB-C2 specification. Terrestrial television transmission id defined in the DVB-T and DVB-T2 specifications for standard television formats and DVB-H and DVB-H2 for the transmission of mobile television, e.g., television for handheld devices such as mobile phones. Microwave transmission is defined in the DVB-MT, DVB-MC, and DVB-MS standards.


In addition to defining the physical and data link layers, the DVB suite of standards includes standards that are used to provide conditional access protection of the transmitted content. Examples include the DVB-CA, DVB-CSA, and DVB-CI standards. Conditional access is a method of protecting content by requiring a device to meet certain criteria before it accesses content. Conditional access plays an important role in ensuring that broadcasted content is made available only to subscribers of a particular broadcast system (e.g., cable and satellite customers, etc.). The general architecture uses a global key, called a network control word (NCW), for performing conditional access. One or more NCW's are used to encrypt data before it is broadcast to subscribers. The NCW's are transmitted by a head-end (e.g., a satellite or cable provider) to subscriber devices in an entitlement control message (ECM). The ECM is generally encrypted before transmission to the subscriber device. The conditional access system of the subscriber device (e.g., a smart card or other conditional access module whether in hardware or software) decrypts the ECM using information received in an entitlement management message (EMM) transmitted from the head-end. The subscriber device can then use the NCW's to decrypt the content broadcast by the head-end. Generally, a NCW is used for a certain period of time, or a crypto period. Upon expiration of a crypto period a new crypto period begins. The head-end may then transmit a new NCW to a subscriber device(s) and proceed to use the new NCW to encrypt the broadcast content.


One of the main weaknesses of the DVB conditional access architecture is that a NCW can be decrypted and easily shared over the Internet. Because the content is broadcast to many users, the content must be encrypted with the same key (e.g., same network control word) for every subscriber. Thus, once the network control word is discovered, any unauthorized user (e.g., a non-subscriber) with access to the network may use the network control word to decrypt the broadcast content. Generally, the NCW's consists of eight (8) bytes. The duration of a crypto period usually varies between five (5) to sixty (60) seconds. Thus, a non-subscriber may defeat the DVB conditional access architecture based upon the discovery of the eight (8) byte NCW, a task which may be accomplished within the duration of a typical crypto period. Generally, after the NCW is obtained by the smart card the smart card provides the NCW to an external device or component. The external device or component uses the NCW to decrypt the broadcast content. However, the NCW may be intercepted and shared with others, thereby allowing unauthorized sharing of the content.


While the present disclosure describes the Transport I/O system as a solution to the shortcomings of DVB conditional access, one of skill in the art will appreciate that the methods and systems disclosed herein can be practiced to protect content in other types of data transmission streaming and/or broadcasting that are not compliant with the DVB architecture such as, but not limited to, streaming media over the Internet. The systems and methods disclosed herein with respect to the Transport I/O system will now be discussed in detail with respect to the accompanying figures.



FIG. 1 illustrates a communications system 100 that may be employed with a Transport I/O system to protect content. The communications system includes a head-end device 102 that receives content form content providers 104 and distributes the content across a communication network 106 to various recipient devices 108. The recipient devices can access the content and display it to a user. A single recipient device 108 can be any device capable of receiving and decoding a data transmission stream over communication network 106. Such devices include, but are not limited to, mobile phones, smart phones, personal digital assistants (PDAs), satellite or cable set-top-boxes, desktop computers, laptop computers, tablet computers, televisions, radios, a video processing device, or any other device known to the art. In embodiments, recipient devices 108 of subscribers are generally able to access the encryption key used to decrypt the content, while non-subscribers are not able to access the encryption key without circumventing the security measures employed by the head-end device 102 broadcasting the content over the communication network 106.


In embodiments, the head-end 102 may be a distribution point of a cable television provider, the distribution of point of a satellite television provider (e.g., a satellite), a terrestrial wireless network, a server broadcasting content over the Internet, or any type of device capable of distributing content over a communications network. One of skill in the art will appreciate that the head-end device 102 may be any type of device, or a collection of devices (as the case may be), that re capable of receiving encrypting, and broadcasting content over a network.


In one embodiment, the content broadcast over communications system 100 may be generated by the head-end device 102. In other embodiments, the head-end device 102 may receive content from one or more content providers 104. In such embodiments, the head-end device 102 is in electrical communication with one or more satellite providers 104. For example, a content provider may be a cable, terrestrial, or satellite television station that transmits content to the head-end device 102 over a wired (e.g., cable, fiber optic, or Internet connection) or wireless connection (e.g., via radio, microwave, or satellite communications). In other embodiments, the content may reside in a datastore that is in electrical communication with the head-end device 102. While FIG. 1 depicts the content providers 104 as being separate entities from the head-end device 102, in other embodiments, the content providers 104 and head-end device 102 may be a single entity.


The head-end device 102 is tasked with distributing the content over a communication network 106 to various recipient devices 108. In embodiments, the communication network 106 may be the Internet, a cable network, a fiber optic network, a satellite communications network, a terrestrial broadcasting network (e.g., networks communicating over radio or microwave transmission mediums), a cellular data network, a wide area network (WAN), a local area network (LAN), a plain old telephone service (POTS) network, the Internet, or any other type of communication network capable of streaming, broadcasting, and/or otherwise facilitating data transmissions between various devices. One of skill in the art will appreciate that the systems and methods disclosed herein can be practiced regardless of the type of communication network used to transmit data between devices. In many cases, the head-end device 102 may broadcast the content in a data transmission stream over the communications network rather than sending content to a particular device. Because the content is being broadcast over the communication network 106, the transmission can be received by any number of devices capable of interacting with the communication network 106. In order to prevent unauthorized users from accessing the broadcasted data transmission stream, the head-end device 102 encrypts the data transmission stream before it is broadcast over the communication network 106. Because the network broadcasted content is made available to multiple devices, a common encryption key (e.g., a network control word) may be used to encrypt the network broadcast content (e.g., network encrypted content). In embodiments, the network broadcast content may be a network encrypted stream that includes content, such as network encrypted content, and data. In embodiments, the data contain information about the stream such as, but not limited to, encryption information, timing information, compression information, or any other type of information. Although not illustrated in FIG. 1 the communication network may also be used to perform two-way communication between the head-end device 102 and the recipient device or devices 108.


In embodiments, the data transmission stream is encrypted using a one or more keys, such as, but not limited to, a network control work (NCW). The NCW may be used to encrypt the data transmission stream for a certain amount of time (e.g., a crypto period) thereby resulting in the creation of network encrypted content. In embodiments, network encrypted content may be encrypted using a common key (e.g., an NCW) such that the network encrypted content can be decrypted by authorized users (e.g., subscribers). The NCW is shared between head-end device 102 and the various recipient device or devices 108. In one embodiment, communication system 100 may operate according to the DVB architecture. In such embodiments, the NCW may be a control word (CW) that acts as the key used in encrypting the content. In such environment, the head-end 102 may periodically transmit the NCW to the various subscriber devices using an ECM message. Additionally, the head-end 102 transmits an EMM message to the various subscribers which contains information necessary to decrypt the ECM and retrieve the NCW. In such embodiments, the EMM may be decrypted by a secure device or processor, such as a smart card that is part of or connected to the recipient device to retrieve the NCW. The smart card may then provide the NCW to another component that is part of or in communication with the recipient device to decrypt the content. However, once the NCW is sent from the secure device and/or processor, the CW may be intercepted and shared with others to provide unauthorized access to the content.


In embodiments, the Transport I/O system solves this problem by maintaining the decrypted control word in a secure processing device (e.g., on a smart card, secure processor, secure memory, or any other secure device or secure component of a device). In such embodiments, the decrypted CW is maintained on the secure device, thereby preventing the interception and sharing of the CW. In such embodiments, the secure content (e.g., an encrypted broadcast or encrypted content) may be decrypted on the secure processing device. The secure processing device may then provide the clear content (e.g., decrypted content). While the clear content may be intercepted and shared, it may not be as easy to share the content due to the size of the content and the bandwidth required to share the content. In another embodiment, the secure processing device may uniquely encrypt the content for use by a specific device (e.g., a recipient device 108). For example, in such embodiments a method utilizing a local encryption key, or local control word (LCW), may be used to create locally encrypted content. The local control word may be unique to a local device. The secure processor or secure processing device may then provide the locally encrypted content to the local device. Furthermore, in embodiments, the locally encrypted content may be uniquely encrypted for a specific device such as, for example, a set-top-box, a system on a chip, or any other type of device capable of receiving and modifying content.



FIG. 2 is a flowchart representing an embodiment of a method 200 of performing network content decryption. In embodiments, the method 200 may be performed by a secure device or a secure processor. An example of a secure device is a smart card. Flow begins at operation 202 where the network encrypted content is received by the secure device. In embodiments, network secure content may be content encrypted using a NCW. The NCW may be a common control word or encryption key that is used to encrypt and decrypt content sent to multiple users or subscribers. In one embodiment, the network encrypted content may be a single stream of data. In alternate embodiments, the network encrypted content may contain multiple network encrypted streams, such as network encrypted elementary streams. Network encrypted elementary streams may be streams that contain audio data, video data, closed captioned data, or any other type of data. A network encrypted elementary stream may consist of compressed data from a single source, such as a particular network or channel. In embodiments where the network encrypted content may contain multiple network encrypted elementary streams, one or more network encrypted elementary streams may be individually received at operation 202. However, in alternate embodiments, the network encrypted content comprising multiple network encrypted elementary streams may be received at operation 202. In such embodiments, individual network streams may be filtered out, e.g., by performing PID filtering or other type of filtering, to isolate one or more individual network encrypted elementary streams at operation 202. Upon receiving the network encrypted content, flow continues to operation 204 where the network control word is obtained. In one embodiment, the network control word may be a control word provided by the content supplier, such as, but not limited to, a head-end or a server transmitting the content. In embodiments, the network control word may be previously known by the device performing the method 200. In another embodiment, the network control word may be received by the device. In such embodiments, the network control word may be encrypted, and operation 204 may include decrypting the network control word. For example, in embodiments, the network control word may be obtained by decrypting an ECM that contains the network control word. The ECM may be decrypted using information from another message, such as an EMM. While the ECM and EMM messages are part of the DVB architecture, one of skill in the art will appreciate that other content delivery systems and architectures may be employed with the systems and methods disclosed herein.


Flow continues to operation 206 where the network encrypted content (e.g., a network encrypted elementary stream or multiple network encrypted elementary streams) is decrypted using the network control word. In one embodiment, a single network control word may be used to decrypt the network encrypted content. In alternate embodiments, multiple control words may be used to decrypt the network encrypted content such as, for example, when the network encrypted content comprises multiple network encrypted elementary streams that have each been encrypted using a different network control word. In such embodiments, multiple network control words may be obtained at operation 204 and then used to decrypt multiple network elementary streams at operation 206. However, in still other embodiments, a single network control word may be used to encrypt multiple network elementary streams. In such embodiments, a single network control word may be used to decrypt the multiple network encrypted elementary streams. Decryption of the network encrypted content at operation 206 may result in clear content, that is, content that is not protected by encryption. Because operations 202-206 may be performed by a secure device or secure processor, such as, but not limited to, a smart card, the network control word remains on the secure device. By maintaining the network control word on the device, an unauthorized subscriber cannot intercept the network control word that is transmitted between the smart card and a device, such as a set-top-box, thereby impeding access to content by an unauthorized subscriber. In embodiments not shown in FIG. 2 the clear content may be provided by the secure processor for display or storage after decryption step 206. However, in the illustrated embodiment, an additional layer of protection may be added by performing local link encryption. In embodiments, local link encryption may comprise the re-encryption of the clear content using a local control word (LCW). The local control word may be an encryption key that is unique to a specific device. For example, in a set-top-box environment, the LCW may be an encryption key that is only shared with the particular set-top-box that the smart card performing the method 200 may be in communication with. In embodiments, different types of encryption modes may be performed for local link encryption. In one embodiment, not all of the data representing the content may be encrypted using local link encryption. For example, transport mode encryption may be used. In embodiments transport mode encryption comprises a determination as to which bytes of data to encrypt based upon an MPEG2 transport encryption. In another embodiment, Bulk Mode encryption may be performed. In Bulk Mode encryption, all bytes representing the data may be encrypted during local link encryption. Bulk Mode encryption may be utilized to exchange data between devices in a secure manner. For example, Bulk Mode encryption may be used to mix transport input (e.g., content) with internal data that is used by the one or more components participating in encryption/decryption of content. In further embodiments, Bulk Mode encryption may be utilized to support other types of content streams that may provide additional features, such as Internet Protocol television (IPTV) content streams. Selection of the encryption mode may be based upon data that is present in the content or a data stream that includes the content. For example, one or more bits may be a part of or added to the clear content to identify an encryption made to perform during local link encryption. Furthermore, in embodiments, the encryption algorithm performed during local link encryption may be compliant with the ATIS-08000006 standard. However, one of skill in the art will appreciate that any type of encryption algorithm may be used for local link encryption, so long as the same encryption algorithm is available on both the smart card and the device.


In embodiments, a key setup used to select a key to be used for local link encryption may take place across security boundaries. For example, a key exchange may be made between a smart card and a set-top-box as part of the key setup. An exchanged key may be generated by a secure device, such as a smart card, and transmitted to a specific device that is communicating with the secure device, such as a set-top-box. Because the local link encryption key is specific to a single device, and not a network transmission, interception of the local link encryption key does not provide an unauthorized user the ability to globally access the broadcasted network content. In embodiments, multiple keys may be used for local link encryption. For example, a smart card may be able to simultaneously process multiple input streams and output multiple locally encrypted streams. In such embodiments, each locally encrypted stream may be encrypted using a unique local link encryption key. However, in other embodiments, the same local link encryption key may be used to encrypt each of the locally encrypted streams.


Flow continues to operation 208 where a local control word is obtained. A local control word may be any type of encryption key. In embodiments, the local control word may be an encryption key that is specific to a target device. In embodiments, the local control word may be obtained from ordinary software registers, a hardware key ladder, a random key generator, or from any other source. In one embodiment, the local control word may be dynamically generated and shared with a recipient device. In such embodiments, the key may be generated based upon characteristics of the device. In embodiment, multiple keys may be selected during obtain operation 208. For example, two keys may be selected from a key ladder. A key ladder may store or otherwise identify a plurality of interrelated keys. In embodiments, any type of encryption key or keys, e.g., fixed encryption keys, dynamic encryption keys, randomly generated encryption keys, etc. may be employed with the embodiments disclosed herein.


After obtaining the local control word, flow continues to operation 210 where the network decrypted content is re-encrypted using the local control word to generate locally encrypted content. As was previously discussed, different types of encryption modes and encryption algorithms may be used to encrypt the content at operation 210. In an embodiment, the encryption may be based upon the key obtained at operation 208. In embodiments where multiple keys are obtained, one of the keys may be selected and used during encryption at operation 210. For example, an appropriate key may be selected based upon an identifier in the content. The identifier may be part of the content or may be added to the content or a header associated with the content as it s processed during the method 200. The identifier may be a single bit that identifies an even or an odd key (in embodiments where two keys are obtained). This identifier provides for the automatic selection of a key for use during the encryption process at operation 210.


In further embodiments, in addition to encrypting the content, the size of the content may be increased. It may be beneficial to increase the size of the content in order to make it more difficult for the content to be shared over a network. For example, increasing the content size will require greater bandwidth to properly share the content with unauthorized users over a network. For example, data may be added to a broadcast stream to make it more difficult to process or share with unauthorized users. In embodiments where the content is streamed (e.g., audio and/or video content) non-content data packets may be added to the content stream and the bandwidth rates may be increased. The increase in bandwidth and the addition of non-content data provides additional security for the content when it leaves the secure device and/or secure processor that performs the method 200 by making the content more difficult to share and process. Further details regarding stream expansion are provided in U.S. Pat. No. 8,385,542 entitled, “Methods and Apparatus for Securing Communications Between a Decryption Device and a Television Receiver,” filed on Apr. 27, 2009, which is hereby incorporated by reference in its entirety.


While the embodiment of the method 200 is illustrated as decrypting the network encrypted content, and subsequently locally encrypting the decrypted network encrypted content as two distinct operations, one of skill in the art will appreciate that, in embodiments, the decryption and encryption may be performed sequentially, performed as a single operation, or performed in parallel. In embodiments, a person of skill in the art will appreciate that stream expansion may also be performed in the single decryption/encryption operation. As such, one of skill in the art will appreciate that the method described with respect to FIG. 2 may be performed using fewer or more operations than are illustrated herein.


In further embodiments, the method 200 may operate on stream data. In such embodiments, a network encrypted stream may be received at operation 202, a clear content stream may be generated by decrypting the network encrypted stream at operation 204, and a locally encrypted stream may be generated at operation 212. One of skill in the art will appreciate that the embodiments disclosed herein with respect to FIG. 2 (as well as with respect to FIGS. 3-4) may operate on stream data as well as data transmitted in any other form.


Further to the embodiment illustrated by FIG. 2, after performing the local encryption, flow continues to operation 212 where the locally encrypted content is provided to another device. For example, in a set-top-box environment, a smart card may provide the locally encrypted content to other components of the set-top-box for storage and/or display at operation 212. In a general computing device, the locally encrypted content may be provided from a secure processor to a general processor and/or unprotected memory for storage and/or display at operation 212. One of skill in the art will appreciate that the method 200 provides a solution to the problems described herein by providing locally encrypted content to unsecure components as opposed to providing a control word or encryption key as is generally performed by devices and systems that do not support embodiments of a Transport I/O system as described herein. Furthermore, one of skill in the art will appreciate that the weakest security leak in such content protection systems may occur when data is transmitted from a secure device and/or processor to a general device. However, embodiments disclosed herein address this weakness by providing locally encrypted content and, optionally, content that has its data and bandwidth expanded, thereby making it harder for an unauthorized user to process, share, and access the content even if it is intercepted as it is transmitted within the secure device and/or processor system/architecture.


In one embodiment, the locally encrypted content may be provided as individual locally encrypted elementary streams. For example, in embodiment where multiple network encrypted elementary streams are received and decrypted, the multiple elementary streams may be individually encrypted and returned as individual locally encrypted elementary streams. In an alternate embodiment, the multiple network encrypted elementary streams may be multiplexed into a single output stream. In such embodiments, the single output stream may be locally encrypted and then provided at operation 212. In embodiments, multiple elementary streams may be multiplexed into a single output stream prior to the local encryption performed at operation 210 or after the local encryption operation 210.



FIG. 3 is an embodiment of a method 300 for processing locally encrypted content. In embodiments, the method 300 may be performed by a device such as a set-top-box, a laptop computer, a tablet computer, a smart phone, a television, or any other type of general computing device. Flow begins at operation 302 where the locally encrypted content is received. In embodiments, the locally encrypted content may be received from a secure device and/or secure processor that performed the method 200 described with respect to FIG. 2. For example, in a non-limiting embodiment, the locally encrypted content may be received from a smart card that is in communication with a set-top-box. In another embodiment, the locally encrypted content may be received from a secure processor that is in communication with a general processor and/or general memory.


Upon receiving the locally encrypted content, flow continues to operation 304 where a local control word is obtained. A local control word may be any type of encryption key. In embodiments, the local control word may be an encryption key that is specific to the device performing the method 300. In embodiments, the local control word may be obtained from the smart card using ordinary software registers, a hardware key ladder, a random key generator, or from any other source unique to the device. In one embodiment, the local control word may be received from the secure device and/or processor performing the method 200. In another embodiment, the local control word may be generated by the device performing the method 300. In such embodiments, the local control word may have been previously shared with a secure processing device and/or secure processor that created the locally encrypted content received at operation 302. The local control word may be randomly generated. In embodiments, a single local control word may be used. In other embodiments, multiple local control words may be used. In such embodiments, the local control word may change periodically such that a local control word is discarded for a new local control word after a set period of time.


Flow continues to operation 306 where the locally encrypted content is decrypted using the local control word. Decryption of the locally encrypted content may produce content in the clear that is accessible by an application. One of skill in the art will appreciate that many type(s) of encryption mode(s) and/or algorithm(s) may be employed to decrypt the locally encrypted content. As such, a type of decryption algorithm may be employed at operation 306 to decrypt the content using the local control word. Furthermore, the device performing the decryption may be capable of handling and processing the locally encrypted content despite the increased bandwidth of the locally encrypted content due to non-content data. In such embodiments, decryption of the locally encrypted content at operation 306 may include identifying and removing non-content data from the content. In another embodiment, removal of the non-content data may not take place until the clear content is processed for display or storage.


Flow continues to operation 308 where the clear content is provided. In one embodiment, providing the clear content may include decoding, displaying and or otherwise playing the clear content. For example, the clear content may be displayed on a television, monitor, and or display that may be part of the device or in communication with the device performing the method 300. In another embodiment, providing the clear content may include storing the clear content in data storage that may be part of the device or connected to the device performing the method 300.


In an alternate embodiment, persistent encryption may be performed by not immediately decrypting the locally encrypted content as described in FIG. 3. In such embodiments, persistent encryption may be utilized on content, such as MPEG Transport Packets received from a broadcasted network transmission. In such embodiments, a secure device may still perform network decryption and local link encryption as described in FIG. 2; however, the device that receives the locally encrypted content may not immediately perform local link decryption. Instead, the device receiving the locally encrypted content may store the locally encrypted content, as it is encrypted, for later use. This allows the content to be encrypted for secure local storage, but the secure device can still control when the content is decrypted by, for example, providing a decryption key at a later time.



FIG. 4 is an embodiment of a method 400 for receiving and processing protected content using a Transport I/O system. In embodiments, the method 400 may be performed by a set-top-box, a smartphone, a laptop, a tablet, a television, or any other type of general computing device such as the recipient devices discussed with respect to FIG. 1. In embodiments, the device performing the method 400 may include or be in communication with and/or include a secure processing device and/or secure processor. The secure processing device and/or secure processor may be a removable component of the device. For example, the secure processor may be incorporated within a removable smart card that may be inserted and removed from a device performing the method 400.


Flow begins at operation 402 where network encrypted content is received. Network encrypted content may be received from a head-end device. In embodiments, the network encrypted content may be received over a wireless or wired network. For example, the network encrypted content may be received from a satellite television provider, a cable television provider, from a terrestrial transmission, from a cellular network provider, or from a server over the Internet. In embodiments, the network encrypted content is content that may be transmitted to multiple different devices. As such, the network encrypted content may be encrypted using a network control word that is common to all devices receiving the content. Upon receiving the network encrypted content, flow continues to operation 404 where the network encrypted content is decrypted using a secure processing device and/or secure processor. In such embodiments, the network encrypted content may be provided to the secure processing device and/or secure processor at operation 404. In one embodiment, the network encrypted content may be provided to the secure processor for decryption as it is received over a network. In another embodiment, the network encrypted content may be buffered prior to decryption by the secure processor.


As previously described, the secure processing device and/or secure processor may be part of the device performing the method 400 or may be a removable component of the device performing the method 400 (e.g., a smart card). In embodiments where the secure processor and/or secure processing device is a removable component, the secure processor and/or secure processing device may have a form factor such that it is compatible with legacy systems. For example, a smart card may have the form factor to operate in an ISO-7816 mode (or any other type of mode) in addition to a mode that supports the systems and methods for performing Transport I/O disclosed herein.


In one embodiment, the network encrypted content may be provided to the secure processor in an unfiltered manner. For example, one or more unfiltered MPEG Transport Streams may be provided. In such embodiments, the MPEG Transport Streams may be provided as received, without the prior removal of packets identified by packet identifiers (PIDs). In another embodiment, the device may filter the network encrypted content before decrypting the network encrypted content using a secure processor. For example, one or more filtered MPEG Transport Streams may be provided to the secure processor for decryption by removing some packets identified by PIDs. In yet another embodiment, multiple streams may be multiplexed and provided to the secure processor for decryption. For example, two or more MPEG Transport Streams may be multiplexed to create a combined stream. The combined stream may be provided to the secure processor for decryption.


In embodiments, the decryption operation 404 may also perform the method 200 discussed with respect to FIG. 2. In such embodiments, the result of the operation 404 may also yield locally encrypted content. Flow continues to operation 406 where the locally encrypted content is decrypted. In embodiments, the method 300 described with respect to FIG. 3 may be employed at operation 406 to decrypt the locally encrypted content. In embodiments, decryption of the locally encrypted content is performed by a component on the device performing the method 400 that is not part of the secure processor. For example, the decryption may be performed by a general processor. In embodiments, decrypting locally encrypted content may yield a stream of unencrypted content.


Flow continues to operation 408 where the clear content is processed. In one embodiment, clear content may be processed by providing the content to a display and/or audio device that is part of or connected to the device performing the method 400. In another embodiment, the clear content may be stored in memory or non-volatile storage at operation 408. One of skill in the art will appreciate that any type of processing of the clear content may be performed at operation 408.


As described with respect to embodiments of the method 400 a device performing the method may include different components to perform the different operations of the method 400. For example, decryption of the network encrypted content may be performed by a secure component that is part of the device. In embodiments, the secure component may be removable, such as a smart card. The local decryption and processing operations may be performed by components other than the secure component. However, because the decryption of the network encrypted content is performed by the secure component, the network control word is not vulnerable to interception and sharing. Thus, the method 400 is a more secure process of decrypting network encrypted content without exposing the one or more keys required to decrypt the network encrypted content.


In embodiments where the secure processor is removable, such as, but not limited to, a smart card, different data rates may be employed when the device performing the method 400 communicates with the removable secure processor. In one embodiment, a fixed data rate may be used for all communications between the device and the removable secure processor. In another embodiment, the data rate may be variable dependent upon the type of content and/or the type of messages exchanged between the device and the removable secure processor. In further embodiments, different types of signaling may be employed to communicate between the device and the removable secure processor. For example, in embodiments, where the removable secure processor is a smart card, low-voltage differential signaling (LVDS) may be employed.


In further embodiments, the method 400 may be performed simultaneously on different network content to process multiple network encrypted streams or multiple pieces of network encrypted content. For example, in a set-top-box environment, the device may be able to process multiple data streams at a time. For example, a set-top-box may allow a user to watch one channel while recording one or more other channels. In such embodiments, the set-top-box may simultaneously employ the method 400 on multiple streams to decrypt the network encrypted content. In such embodiments, the removable secure processor, e.g., smart card, is capable of simultaneously decrypting multiple network encrypted content streams and creating multiple different locally encrypted streams. In such embodiments, different network control words may be used to decrypt the different network encrypted content and different local control words may be used to create different locally encrypted content.



FIG. 5 is an embodiment of a method 500 that may be employed to reset functionality of a secure device, such as, for example, a smart card, while maintaining transport stream functionality. Flow begins at operation 502 where the secure device receives an instruction to reset. In embodiments, the instruction may indicate that core functionality are to be reset independently from transport functionality. For example, core functionality may relate to the operating instructions, e.g., the core software, for the operating of the secure device. For example, the core software may be reset to, e.g., perform a software upgrade, to recover from a malfunction, or due to a lack of synchronization, etc. However, because the secure device processes network encrypted streams, unlike prior solutions where network encrypted streams were processed by components that were not part of the secure device, the secure device must be reset without interrupting streamed data. In the embodiments described herein, if the secure the reset. In embodiments, the signal received at operation 502 may indicate a partial reset (e.g., resetting only core functionality and/or software) or the secure device may make a determination to perform a partial reset.


Flow continues to operation 504 where the secure device resets the core functionality while maintaining the transport functionality. In embodiments, the components of the secure device that perform the core functionality may be reset while the components that perform the transport functionality continue to operate. As such, maintenance may be performed on the core functionality of the secure device without interrupting the processing of data streams received by the secure device. For example, while the core functionality of the secure device are reset, the secure device may still able to receive transport data, process the transport data (e.g., by performing the method 200 from FIG. 2), and provide the processed packets (e.g., locally encrypted content) to another device. By performing the partial reset, network encrypted content may still be decrypted and locally encrypted during a reset of the device, thereby providing the ability of the secure device to continually provide content while performing maintenance. Flow then continues to operation 506 where the core functionality of the secure device are restarted and the maintenance is completed.


In embodiments, because the secure device is processing network data, e.g., the network encrypted content, variable bandwidth data is provided to the secure device. This differs from prior systems in which a secure device, e.g., a smart card, received a fixed bandwidth amount of data. In order to deal with variable bandwidth data, embodiments of the secure devices disclosed herein may perform a packet pacing algorithm. FIG. 6 is an embodiment of a packet pacing method 600 that may be employed by a secure device operating in a variable bandwidth environment. In embodiments, the method 600 is a closed loop feedback mechanism whereby a secure device may provide a clear to send (CTS) message or signal to notify that the device communicating with the secure device, e.g., a set-top-box or system on a chip, is allowed to send additional packets of data to the secure device. In embodiments, the method 600 may be employed to ensure that the secure device is capable of extracting a variable amount of data from multiple fixed input streams while throttling the amount of effective data by employing one or more CTS messages. In embodiments, sending a CTS message or signal by the secure device to a device it is communicating with triggers the device to send packets of interest (e.g., packets containing useful data such as transmission data, control data, etc.). In an embodiment, when the secure device does not send a CTS message, the secure device may receive stuffing packets from the device it is communicating with.


In embodiments, the secure device may employ a first-in-first-out (FIFO) buffer to perform packet pacing. The secure device may monitor the FIFO buffer to control the packet pacing of the variable bandwidth data received by the secure device. For example, the secure device may monitor the capacity and/or fullness of the FIFO buffer. If the number of packets queued in the FIFO fall below a threshold, the secure device may send a CTS message to a device communicating with the secure device to trigger receipt of additional data. In embodiments, a low level of data may be maintained in the FIFO buffer to ensure minimal latency for queued live packets that have a high priority. During periods of high activity, the secure device may ensure that live packets get higher prior by maintaining a small FIFO buffer.


Flow begins at operation 602 where the FIFO buffer is monitored. Monitoring the FIFO buffer may comprise checking the number of items in the FIFO buffer. In embodiments, any method of monitoring a buffer or the contents of a buffer may be performed at operation 602. Flow continues to decision operation 604, where a determination is made as to whether the number of contents in the FIFO buffer is lower than a predetermined threshold. In one embodiments, the threshold may be based upon processing time for a packet in the buffer. In another embodiment, the threshold may be based upon a calculation. If the number of items in the FIFO buffer is lower than the threshold, FIG. 6 shows that flow branches “YES” to operation 606 where a CTS message or signal is sent to trigger the receipt of additional data packets and flow returns to operation 602. For example, the CTS message may be sent to a video processing device, a set-top-box, or other type of device instructing the device to send additional data to the secure processor. If the number of items is not lower than the threshold, FIG. 6 shows that flow branches “NO” and returns to operation 602. Although embodiments have been described with a FIFO buffer, other types of queues may be employed without departing from the scope of the present disclosure.


In embodiments where the secure processor is a removable component, the secure processor may be designed such that it is capable of working in legacy systems. In embodiments, the secure processor is a removable component that has a legacy form factor. For example, a smart card may be designed to support both ISO-7816 signals and signals for the Transport I/O system described herein. FIG. 7 is an embodiment illustrating the compatibility between an ISO-7816 smart card and a smart card capable of supporting the systems and methods disclosed herein. Smart card 702 is an embodiment of an ISO-7816 compatible smart card. Smart card 704 is a smart card compatible with both ISO-7816 and the Transport I/O systems and methods disclosed herein. In the illustrated embodiment, smart card 704 includes all of the contacts necessary to be compatible with the ISO-7816 standard (e.g., supports a legacy form factor). Additionally, smart card 704 includes six contacts, identified by the ellipse 706 that may be used to perform the systems and methods described herein. In such embodiments, the smart card 704 may be capable of working with both existing systems (e.g., legacy devices deployed to the field) and Transport I/O capable systems.


In embodiments, the device performing the method 400 and/or the removable secure device may make a determination as to whether to operate in a legacy mode (e.g., an ISO-7816 mode) or in a Transport I/O system compatible mode at start up. In one embodiment, the determination may be made based upon a signal sent to the removable secure device at initialization. Further details regarding the making of such determination is provided in U.S. patent application Ser. No. 13/184,831 entitled, “Multiple-Speed Interface,” filed on Jul. 18, 2011, which claims priority to U.S. Provisional Patent Application No. 61/364,854, filed on Jul. 16, 2011, which is hereby incorporated by reference in its entirety.



FIG. 8 is an embodiment of a secure processing device 800 that may be employed with the systems or to perform the methods disclosed herein. In embodiments, the secure processing device may be a smart card. However, one of skill in the art will appreciate that any other type of secure device may be employed with the systems and methods disclosed herein. In embodiments, the secure processing device may be part of a device performing the method 400 described with respect to FIG. 4. In another embodiment, the secure processing device 600 may be a removable component of a device performing the method 400.


In embodiments, secure processing device 800 includes one or more processing units 802. In some embodiments, one or more components of the methods described herein are performed by the one or more processing units 802. For example, the one or more processing units 802 may be used to decrypt network encrypted content, create locally encrypted content, and create non-content data as described in the method 200 of FIG. 2.


Secure processing device 800 may also include memory 804. Memory 604 includes, but is not limited to, RAM, ROM, EEPROM, flash memory or other memory technology, or any other tangible medium which is used to store information and which is accessed by secure processing device 800 and one or more processing units 802. Memory 804 may store executable instructions to perform the methods disclosed herein. For example, memory 804 may include instructions to decrypt network encrypted content (NEC) 806. Memory may also store the instructions to encrypt clear content to create locally encrypted content (LEC) 808.


Secure processing device 800 may also contain communications connection(s) 810 that allow the device to communicate with other devices. Communication connection(s) 810 is an example of communication media. Communication media may embody a modulated data signal, such as a carrier wave or other transport mechanism and includes any information delivery media, which may embody computer readable instructions, data structures, program modules, or other data in a modulated data signal. The term “modulated data signal” means a signal that has one or more of its characteristics set or changed in such a manner as to encode information or a message in the data signal. Be way of example, and not limitation, communication media includes wired media such as a wired network or direct-wired connection, and wireless media such as an acoustic, RF, infrared, and other wireless media. In embodiments, network encrypted content such may be received over communications connection(s) 810. Locally encrypted content may be transmitted over communications connection(s) 810. In still further embodiments, the instructions to perform the Transport I/O methods described herein may be received via communications connection(s) 810. For example, a head-end may update secure processing device 800 with instructions to perform the methods disclosed herein. The instructions may be stored in memory 804. Communications connection(s) 810 thereby allows a head-end to update smart cards deployed in the field with instructions to perform the methods herein. Communications connections also provide the secure processing device 800 with the ability to receive network encrypted content from a device and return locally encrypted content to the device. In embodiments, communication connections may be pads on a smart card, such as, but not limited to, the pads identified as Transport I/O capable pads 706 in FIG. 7.


Although the embodiment of the secure processing device 800 is illustrated as having memory 804 that includes instructions to perform the methods disclosed herein, in alternate embodiments, the instructions to perform the methods disclosed herein may be performed by an application specific integrated circuit (ASIC) that is part of the secure processing device 800.



FIG. 9 is an embodiment of a set-top-box that may be used to perform the Transport I/O system methods and be part of the systems disclosed herein. In another embodiment, different recipient devices such as, but not limited to, a smart phone, a tablet computer, a laptop, or any other type of device may be employed containing some of the components illustrated in FIG. 9. While FIG. 9 is illustrated with various components, many of the components are known to the art and do not need explanation. Only the components that may be used to perform the methods disclosed herein are described. The signal 904 that arrives at the set-top-box 900 may undergo extensive processing. The television converter 900 may include one or more tuner devices 906, 946, 948 that may receive a signal 904. Signal 904 may be a satellite signal, a cable signal, or any other type of signal received over a wired or wireless network. In this embodiment, tuner devices 906, 946, 948 acquire a signal 904 from a head-end or content provider. Tuner devices 906, 946, 948 may initially process the signal 904. Signal 904 may be a data stream that comprises network encrypted content (e.g., one or more multiple network encrypted streams), multiple clear content (e.g., one or more multiple clear content streams) and/or metadata containing information about the data stream or the multiple encrypted and/or clear streams that make up the data stream. Tuner device 906, 946, 948 may also receive subscriber commands in the form of signals from control electronics unit 902. Signals from control electronics unit 902 may include, but is not limited to, a signal to tune to a transponder as part of the process of selecting a certain channel for viewing on a peripheral device. One skilled in the art would recognize that the tuner devices 906, 946, 948 may include fewer, more, or different components. The signal 904 may include content encoded by a network control word. The signal 904 may also include one or more ECMs and EMMs.


After receiving the signal 904, one of the first steps may be to demodulate 908 the signal 904. The signal 904 may arrive as an analog signal that “carries” data (e.g., data is modulated onto the analog signal). Demodulation 908 may be accomplished by reversing the modulation process. Modulation can be done in several ways. Modulation may include amplitude modulation (AM) or frequency modulation (FM). If the carried data is digital, modulation methods include, but are not limited to, biphase-shift keying (BPSK), quadraphase-shift keying (QPSK), or eight-phase shift keying (8PSK). One skilled in the art will recognize that other methods of modulating and demodulating the signal 904 may be possible. Another one of the first steps may also be to error correct 908 signal 904. One example of error correcting 908 is forward error correction (FEC). FEC 908 may include, but is not limited to, inspecting parity bit or bits that may accompany signal 904. One skilled in the art will recognize that many methods for error correcting are possible. For the purposes of discussion, an embodiment using digital data will be discussed below. However, one skilled in the art will recognize that systems with analog data or combined analog and digital data are also possible and contemplated herein.


In embodiments, set-top-box 900 contains control electronics unit 902 that receives signal 904. In embodiments, the control electronics unit 902 may comprise a smart card interface. One skilled in the art will recognize that control electronics 902 may receive other signals, including, but not limited to, signals from a cable, satellite, or broadcast television distributor. In this embodiment, control electronics unit 902 includes discrete electronic components combined into a single circuit with a shared bus 910. In other embodiments, control electronics unit 902 may be configured differently. For example, one or more of the control electronics unit 902 components in set-top-box 900 may be combined or omitted. As a further example, one or more of the control electronics unit 902 components in set-top-box 900 may not share a bus 910, but may nonetheless be operatively connected by some other means. One skilled in the art will recognize that other configurations of set-top-box 900 and control electronics unit 902 are possible and within the scope of this invention. One skilled in the art will further recognize that some components of set-top-box 900 and control electronics unit 902 may be implemented in hardware of software. The control electronics unit 902 may operate under the control of a software program, firmware program, or some other program stored in memory or control logic. One skilled in the art will also recognize that the control electronics unit 902 may include other electronic components or structures to mediate or process signals.


Control electronics unit 902 may contain one or more central-processing-units (CPUs) 912 or processors. In this embodiment, control electronics unit 902 contains a signal CPU 912 that is operatively connected to the shared bus. In this embodiment, CPU 912 may be used, among other things, for logical operations for set-top-box 900 functions including, but not limited to, channel selection, recording control, EPG display and control and system maintenance. One skilled in the art will recognize that the CPU 912 may be integrated with memory or other discrete electronics components. In embodiments, CPU 912 may be used to perform the systems and methods disclosed herein. For example, CPU 912 may be used to perform a method of decrypting locally encrypted content as described with respect to FIG. 3. However, in embodiments, local decryption may be performed by other components, such as a dedicated crypto engine (not shown). One of skill in the art will appreciate that although specific components are described with respect to FIG. 9, the system and methods disclosed herein may be performed by other components or other types of devices without departing from the spirit of this disclosure.


Control electronics unit 902 may contain one or more volatile memory components 914. Volatile memory components 914 may include, but are not limited to, one or more SDRAM memory chips. Similarly, control electronics unit 902 may also contain one or more non-volatile memory components 916. Non-volatile memory 916 may include one or more memory chips, including, but not limited to, ROM, EEPROM, and Flash. One skilled in the art will recognize that volatile memory 914 and non-volatile memory 916 may be integrated within other electronics components. One skilled in the art will also recognize that other memory components may be included within set-top-box 900 and control electronics unit 902. One skilled in the art will recognize that memory 914, 916 may be used for many purposes, including, but not limited to, storing EPG data and storing data for use by CPU 912. In embodiments, the Volatile memory components 914 and/or one or more non-volatile memory components 916 may be used to store the instructions to perform methods 300 and 400 disclosed herein. Non-volatile memory 916 may be used to store locally encrypted content or clear content. In other embodiments, hard drive 950 may be used to store locally encrypted content or clear content.


A set-top-box 900 may be connected to one or more peripheral electronic devices through peripheral interface 924. These peripheral devices may include a smart card 936. In embodiments, the smart card 936 acts as a conditional access system. In such embodiments, the smart card 936 performs the methods 200 and 400 disclosed herein. In embodiments, smart card 936 may be a smart card such as smart card 504 that is capable of supporting both a legacy mode of operation and a Transport I/O mode of operation. In still further embodiments, smart card 936 may have the components described with respect to FIG. 8. Peripheral interface 924 may also act as an I/O connection to provide the clear content to a display device, such as, but not limited to, a television and speakers.


With reference to FIG. 10, an embodiment of a computing environment for implementing the various embodiments described herein includes a computer system, such as computer system 1000. Any and all components of the described embodiments (such as the DVR, the content storage sever, a laptop, mobile device, personal computer, a smart phone, a secure processing device, etc.). may execute as or on a client computer system, a server computer system, a combination of client and server computer systems, a handheld device, and other possible computing environments or systems described herein. As such, a basic computer system applicable to all these environments is described herein after.


In its most basic configuration, computer system 1000 comprises at least one processing unit or processor 1004 and system memory 1006. The most basic configuration of the computer system 1000 is illustrated in FIG. 10 by dashed line 1002. In some embodiments, one or more components of the described system are loaded into system memory 1006 and executed by the processing unit 1004 from system memory 1006. Depending on the exact configuration and type of computer system 1000, system memory 1006 may be volatile (such as RAM), non-volatile (such as ROM, flash memory, etc.), or some combination of the two.


Additionally, computer system 1000 may also have additional features/functionality. For example, computer system 1000 may include additional storage media 1008, such as removable and/or non-removable storage, including, but not limited to, magnetic or optical disks or tape or solid state storage. In some embodiments, software or executable code and any data used for the described system is permanently stored in storage media 1008. Storage media 1008 includes volatile and non-volatile, removable and non-removable media implemented in any method or technology for storage of information such as computer readable instructions, data structures, program modules, or other data.


System memory 1006 and storage media 1008 are examples of computer storage media. Computer storage media includes, but is not limited to, RAM, ROM, EEPROM, flash memory or other memory technology. CD-ROM, digital versatile disks (DVD) or other optical storage, magnetic cassettes, magnetic tape, magnetic disk storage, other magnetic storage devices, solid state storage or any other tangible medium which is used to store the desired information and which is accessed by computer system 1000 and processor 1004. Any such computer storage media may be part of computer system 100. In some embodiments, system memory 1006 and/or storage media 1008 may store data used to perform the methods or form the system(s) disclosed herein. In other embodiments, system memory 1006 may store information such as the local control word 1014 and logic 1016 to perform the methods of decrypting locally encrypted content as described herein.


Computer system 1000 may also contain communications connection(s) 1010 that allow the device to communicate with other devices. Communication connection(s) 1010 is an example of communication media. Communication media may embody a modulated data signal, such as a carrier wave or other transport mechanism and includes any information delivery media, which may embody computer readable instructions, data structures, program modules, or other data in a modulated data signal. The term “modulated data signal” means a signal that has one or more of its characteristics set or changed in such a manner as to encode information or a message in the data signal. By way of example, and not limitation, communication media includes wired media such as a wired network or direct-wired connection, and wireless media such as an acoustic, RF, infrared, and other wireless media. In an embodiment, content and metadata may be transmitted over communications connection(s) 1010.


In some embodiments, computer system 1000 also includes input and output connections 1012, and interfaces and peripheral devices, such as a graphical user interface. Input device(s) are also referred to as user interface selection, devices and include, but are not limited to, a keyboard, a mouse, a pen, a voice input device, a touch input device, etc. Output device(s) are also referred to as displays and include, but are not limited to, cathode ray tube displays, plasma screen displays, liquid crystal screen displays, speakers, printers, etc. These devices, either individually or in combination, connected to input and output connections 1012 are used to display the information as described herein. All these devices are well known in the art and need not be discussed at length here. In further embodiments, the input and output connections 1012 may be used to communicate with a removable secure processor, such as, but not limned to, a smart card.


In further embodiments, computer system 1000 may include a secure processor 1018 and secure memory 1020 that may be used to perform some of the methods disclosed herein. In embodiments, the secure processor 1018 and secure memory 1020 of the computer system 1000 may comprise a secure area 1022 that is not generally accessible by the other components of computer system 1000 or by other processes executing on the computer system 1000. In embodiments, secure memory may store instructions to decrypt network encrypted content and create locally encrypted content as described with respect to FIG. 2. Such instructions may be executed by the secure processor 1018. In such embodiments, network control words may remain within the secure area 1022, thereby reducing the chance of interception and sharing by unauthorized parties.


In some embodiments, the components described herein comprise such modules or instructions executable by computer system 1000 that may be stored on computer storage medium and other tangible mediums and transmitted in communication media. Computer storage media includes volatile and non-volatile, removable and non-removable media implemented in any method or technology for storage of information such as computer readable instructions, data structures, program modules, or other data. Combinations of any of the above should also be included within the scope of readable media. In some embodiments, computer system 1000 is part of a network that stores data in remote storage media for use by the computer system 1000.


The embodiments described herein may be employed using software, hardware, or a combination of software and hardware to implement and perform the systems and methods disclosed herein. Although specific devices have been recited throughout the disclosure as performing specific functions, one of skill in the art will appreciate that these devices are provided for illustrative purposes, and other devices may be employed to perform the functionality disclosed herein without departing from the scope of the disclosure.


This disclosure described some embodiments of the present invention with reference to the accompanying drawings, in which only some of the possible embodiments were shown. Other aspects may, however, be embodied in many different forms and should not be construed as limited to the embodiments set forth herein. Rather, these embodiments were provided so that this disclosure was thorough and complete and fully conveyed the scope of the possible embodiments to those skilled in the art.


Although specific embodiments were described herein, the scope of the invention is not limited to those specific embodiments. One skilled in the art will recognize other embodiments or improvements that are within the scope and spirit of the present invention. Therefore, the specific structure, acts, or media are disclosed only as illustrative embodiments. The scope of the invention is defined by the following claims and any equivalents therein.

Claims
  • 1. A removable security device comprising: at least one processor; andmemory encoding computer executable instructions that, when executed by the at least one processor, performs a method comprising: receiving, by the removable security device not operating in ISO-7816 mode, network encrypted content;decrypting the network encrypted content using at least one network control word to generate clear content, wherein the at least one network control word is not transmitted from the removable security device;encrypting, by the removable security device, the clear content using at least one local control word to generate locally encrypted content, wherein the locally encrypted content is specific to a video processing device physically coupled to the removable security device; andproviding the locally encrypted content to the video processing device.
  • 2. The removable security device of claim 1, wherein the network encrypted content comprises one or more elementary streams comprising audio data and video data.
  • 3. The removable security device of claim 2, wherein each of the one or more elementary streams comprises compressed data for at least one of a network and a channel.
  • 4. The removable security device of claim 1, wherein the network encrypted content was encrypted using the at least one network control word prior to the removable security device receiving the network encrypted content.
  • 5. The removable security device of claim 1, wherein the at least on network control word originated at a head-end device and is stored locally by the removable security device.
  • 6. The removable security device of claim 1, wherein generating the locally encrypted content comprises increasing the size of the clear content to make it more difficult to share the clear content with unauthorized entities over a network.
  • 7. The removable security device of claim 6, wherein increasing the size of the clear content comprises adding non-content data to the clear content to increase the bandwidth required to process the locally encrypted content.
  • 8. The removable security device of claim 1, wherein generating the locally encrypted content comprises applying local link encryption to the clear content.
  • 9. The removable security device of claim 8, wherein the local link encryption comprises exchanging a security key between the removable security device and the video processing device, wherein the security key is specific to the removable security device and not specific to a network transmission.
  • 10. The removable security device of claim 6, wherein the video processing device is not trusted by the removable security device.
  • 11. The removable security device of claim 6, wherein the at least one local control word is generated by the removable security device and shared only with the video processing device.
  • 12. The removable security device of claim 6, wherein the at least one network control word is not transmitted from the removable security device to prevent unauthorized entities from accessing the network encrypted content.
  • 13. A method comprising: receiving, by a removable security device not operating in ISO-7816 mode, network encrypted content;decrypting the network encrypted content using at least one network control word to generate clear content, wherein the at least one network control word is not made accessible by the removable security device;encrypting, by the removable security device, the clear content using at least one local control word to generate locally encrypted content, wherein the locally encrypted content is specific to a video processing device physically coupled to the removable security device; andproviding the locally encrypted content to the video processing device.
  • 14. The method of claim 13, wherein the removable security device is ISO-7816 compliant.
  • 15. The method of claim 13, wherein the removable security device is a smart card and the video processing device is a set-top-box.
  • 16. The method of claim 13, wherein the removable security device is inserted into the video processing device.
  • 17. The method of claim 13, wherein receiving, by the removable security device, the network encrypted content, comprises filtering the network encrypted content by one or more packet identifiers.
  • 18. The method of claim 13, wherein the network encrypted content comprises two or more data streams, wherein the two or more data streams are multiplexed to create a combined stream prior to the locally encrypted content being provided to the video processing device.
  • 19. The method of claim 13, wherein generating the locally encrypted content comprises using local link encryption.
  • 20. A system comprising: a video processing device; anda removable security device electrically coupled to the video processing device and comprising at least one processor, wherein the at least one processor performs a method comprising: receiving, by the removable security device when not operating in ISO-7816 mode, network encrypted content;decrypting the network encrypted content using at least one network control word to generate clear content, wherein the at least one network control word is not transmitted from the removable security device;encrypting, by the removable security device, the clear content using at least one local control word to generate locally encrypted content, wherein the locally encrypted content is specific to a video processing device physically coupled to the removable security device; andproviding the locally encrypted content-to the video processing device.
CROSS-REFERENCE TO RELATED APPLICATIONS

This application is a continuation application and claims priority to U.S. patent application Ser. No. 14/500,037, filed Sep. 29, 2014, entitled “SYSTEMS AND METHODS FOR PERFORMING TRANSPORT I/O,” now issued U.S. Pat. No. 9,774,908, which is a divisional application and claims priority to U.S. patent application Ser. No. 13/799,891, filed Mar. 13, 2013, entitled “SYSTEMS AND METHODS FOR PERFORMING TRANSPORT I/O,” now issued U.S. Pat. No. 9,888,283, which applications are incorporated herein by reference in their entirety.

US Referenced Citations (699)
Number Name Date Kind
216075 Wiselogel Jun 1879 A
D54610 Evans et al. Mar 1920 S
2474365 Munn Jun 1949 A
2640647 Rand Jun 1953 A
3311084 Edenbaum Mar 1967 A
3465361 Lode Sep 1969 A
3502437 Mass Mar 1970 A
3702025 Archer Nov 1972 A
3832134 Sohn Aug 1974 A
3853468 Raymond Dec 1974 A
3898172 Reif Aug 1975 A
3924239 Fletcher Dec 1975 A
3990850 Friedman Nov 1976 A
4029945 Yamada Jun 1977 A
4099886 Oliveria Jul 1978 A
4104785 Shiba et al. Aug 1978 A
4125841 Munk Nov 1978 A
D254687 Fadler Apr 1980 S
4205043 Esch May 1980 A
D258281 Murphy Feb 1981 S
4249302 Crepeau Feb 1981 A
4305721 Bernstein Dec 1981 A
D267094 Doi Nov 1982 S
4387972 Valencia Jun 1983 A
4394654 Hofmann-Cerfontaine Jul 1983 A
4417413 Hoppe et al. Nov 1983 A
4532419 Takeda Jul 1985 A
4549200 Ecker et al. Oct 1985 A
4549247 Hoppe et al. Oct 1985 A
4575621 Dreifus Mar 1986 A
D284215 Sherwin Jun 1986 S
4600257 Fushimoto Jul 1986 A
4603249 Hoppe et al. Jul 1986 A
4614861 Pavlov et al. Sep 1986 A
4639585 Haghiri-Tehrani et al. Jan 1987 A
4677529 Watanabe et al. Jun 1987 A
4689103 Elarde Aug 1987 A
4696034 Wiedemer Sep 1987 A
4727246 Hara et al. Feb 1988 A
4774633 Dehaine et al. Sep 1988 A
4783823 Tasaki Nov 1988 A
4789214 Vilhemsson Dec 1988 A
4792843 Haghiri-Tehrani et al. Dec 1988 A
4795895 Hara et al. Jan 1989 A
4797542 Hara Jan 1989 A
4803154 Uo Feb 1989 A
4803542 Haghiri-Tehrani et al. Feb 1989 A
4814943 Okuaki Mar 1989 A
4817183 Sparrow Mar 1989 A
4822989 Miyamoto et al. Apr 1989 A
4825283 Shino Apr 1989 A
4835846 Juan et al. Jun 1989 A
D302294 Hillman Jul 1989 S
4844866 Wallace Jul 1989 A
4849944 Matsushita Jul 1989 A
4868376 Lessin et al. Sep 1989 A
D304826 Sutoh Nov 1989 S
D305023 Suto Dec 1989 S
4887234 Iijima Dec 1989 A
4889980 Hara et al. Dec 1989 A
4897534 Haghiri-Tehrani Jan 1990 A
4980802 Champagne et al. Dec 1990 A
4984358 Nelson Jan 1991 A
4985920 Seki Jan 1991 A
5027190 Haghiri-Tehrani et al. Jun 1991 A
5031026 Ueda Jul 1991 A
5049718 Spletter et al. Sep 1991 A
5055913 Haghiri-Tehrani Oct 1991 A
5097117 Champagne et al. Mar 1992 A
5122860 Kikuchi et al. Jun 1992 A
5126548 Sekiguchi Jun 1992 A
D327883 Gloton Jul 1992 S
D328599 Gloton Aug 1992 S
5134773 LeMaire et al. Aug 1992 A
5155068 Tada Oct 1992 A
5187461 Brommer Feb 1993 A
5203078 Nakanishi et al. Apr 1993 A
5208450 Uenishi et al. May 1993 A
5220598 Böck Jun 1993 A
D340289 Gerber Oct 1993 S
5250341 Kobayashi et al. Oct 1993 A
5264722 Tonucci Nov 1993 A
D342728 Gloton Dec 1993 S
5276311 Hennige Jan 1994 A
5276317 Ozouf et al. Jan 1994 A
D344502 Gloton Feb 1994 S
5304513 Haghiri-Tehrani et al. Apr 1994 A
5332681 Tonucci Jul 1994 A
5361062 Weiss et al. Nov 1994 A
5362955 Haghiri-Tehrani Nov 1994 A
5363279 Cha Nov 1994 A
D353135 Gloton Dec 1994 S
D353136 Gloton Dec 1994 S
5375037 Le Roux Dec 1994 A
5386215 Brown Jan 1995 A
5386340 Kurz Jan 1995 A
D357909 Gloton May 1995 S
D358142 Gloton May 1995 S
5444301 Song et al. Aug 1995 A
5448511 Paurus et al. Sep 1995 A
5463210 Imura Oct 1995 A
5486687 Le Roux Jan 1996 A
5512490 Walt Apr 1996 A
5521366 Wang May 1996 A
5526233 Hayakawa Jun 1996 A
5526449 Meade Jun 1996 A
5543585 Booth et al. Aug 1996 A
5544014 Atsumi Aug 1996 A
5563400 Le Roux Oct 1996 A
D375303 Gaumet Nov 1996 S
5581065 Nishikawa et al. Dec 1996 A
5689275 Moore Jan 1997 A
5615085 Wakabayashi et al. Mar 1997 A
5623552 Lane Apr 1997 A
5637858 Hoppe et al. Jun 1997 A
D382647 Staples Aug 1997 S
5655917 Kaneshige et al. Aug 1997 A
5677524 Haghiri-Tehrani Oct 1997 A
D387746 Ishihara Dec 1997 S
D387747 Ishihara Dec 1997 S
D388066 Ishihara Dec 1997 S
D389130 Ishihara Jan 1998 S
5721781 Deo Feb 1998 A
5724545 Skorski Mar 1998 A
5727153 Powell Mar 1998 A
5729000 Sugimoto Mar 1998 A
5739515 Takemura Apr 1998 A
5742680 Wilson Apr 1998 A
5745988 Hohmann et al. May 1998 A
5747274 Jackowski May 1998 A
5748057 De Los Santos May 1998 A
5752857 Knights May 1998 A
5773812 Kreft Jun 1998 A
5776797 Nicewarner Jul 1998 A
5780098 Battles Jul 1998 A
5780836 Iguchi et al. Jul 1998 A
5780837 Garcia Jul 1998 A
5784400 Joannopoulos Jul 1998 A
5789733 Jachimowicz et al. Aug 1998 A
5802236 DiGiovanni Sep 1998 A
5818309 De Los Santos Oct 1998 A
5822190 Iwasaki Oct 1998 A
5852290 Chaney Dec 1998 A
5865470 Thompson Feb 1999 A
5869791 Young Feb 1999 A
D407392 Kleineidam Mar 1999 S
5877488 Klatt et al. Mar 1999 A
5877975 Jigour et al. Mar 1999 A
5923225 De Los Santos Jul 1999 A
5932866 Terada et al. Aug 1999 A
5933328 Wallace et al. Aug 1999 A
5942761 Tuli Aug 1999 A
5948673 Cottingham Sep 1999 A
5955961 Wallerstein Sep 1999 A
5991400 Kamperman Nov 1999 A
5993261 Klatt et al. Nov 1999 A
5998220 Chandler Dec 1999 A
5999308 Nelson Dec 1999 A
D420452 Cardy Feb 2000 S
D420745 Cardy Feb 2000 S
6024920 Cunanan Feb 2000 A
6025997 Huber et al. Feb 2000 A
6027028 Pieterse et al. Feb 2000 A
6035037 Chaney Mar 2000 A
6036099 Leighton Mar 2000 A
6048734 Burns Apr 2000 A
6054774 Ohmori et al. Apr 2000 A
D425519 Merlin et al. May 2000 S
6060332 Martin May 2000 A
6064506 Koops May 2000 A
6065681 Trueggelmann May 2000 A
6075915 Koops Jun 2000 A
6086740 Kennedy Jul 2000 A
6097605 Klatt et al. Aug 2000 A
6101300 Fan Aug 2000 A
6102517 Kobayashi Aug 2000 A
6102743 Haffenden et al. Aug 2000 A
6130969 Villeneuve Oct 2000 A
6134043 Johnson Oct 2000 A
6134369 Kurosawa Oct 2000 A
6141210 Iwasaki Oct 2000 A
D434396 Iwasaki Nov 2000 S
D434418 Shinada Nov 2000 S
6151511 Cruciani Nov 2000 A
6175671 Roberts Jan 2001 B1
6188580 Huber et al. Feb 2001 B1
6191951 Houdeau et al. Feb 2001 B1
6198860 Johnson Mar 2001 B1
6209790 Houdeau et al. Apr 2001 B1
6213403 Bates, III Apr 2001 B1
6222737 Ross Apr 2001 B1
6241557 Reichardt Jun 2001 B1
6255038 Hobbs Jul 2001 B1
6274926 Iwakaski Aug 2001 B1
6278105 Mattia Aug 2001 B1
6281577 Oppermann Aug 2001 B1
6292490 Gratacap et al. Sep 2001 B1
6310991 Koops Oct 2001 B1
6312304 Duthaler Nov 2001 B1
6315205 Bates, III Nov 2001 B1
6317554 Kosaka Nov 2001 B1
6329228 Terashima Dec 2001 B1
6333989 Borza Dec 2001 B1
D452864 Wallace et al. Jan 2002 S
6338967 Bickar Jan 2002 B1
6344162 Miyajima Feb 2002 B1
D456414 Turin Apr 2002 S
6368558 Suslick Apr 2002 B1
6369795 Lester et al. Apr 2002 B1
6378774 Emori et al. Apr 2002 B1
D456910 Clark May 2002 S
6398114 Nishikawa et al. Jun 2002 B1
6409089 Eskicioglu Jun 2002 B1
6411752 Little Jun 2002 B1
D461251 Pham Aug 2002 S
D461561 Pham Aug 2002 S
D461906 Pham Aug 2002 S
D462125 Pham Aug 2002 S
6433919 Chowdhury Aug 2002 B1
6443361 Klatt et al. Sep 2002 B1
6452713 White Sep 2002 B1
6460772 Stahl Oct 2002 B1
6466709 Scherer Oct 2002 B1
D466093 Ebihara Nov 2002 S
6483640 Tonucci Nov 2002 B1
6492182 Bright Dec 2002 B1
6492718 Ohmori Dec 2002 B2
6512580 Behringer Jan 2003 B1
6513718 Bouchez Feb 2003 B1
6514328 Katoh Feb 2003 B1
6542682 Cotteverte Apr 2003 B2
6548888 Fidalgo et al. Apr 2003 B1
6552910 Moon Apr 2003 B1
6560006 Sigalas May 2003 B2
6561432 Vedder et al. May 2003 B1
6576992 Cady Jun 2003 B1
6580547 Liu Jun 2003 B2
6581840 Takeda et al. Jun 2003 B2
6592031 Klatt Jul 2003 B1
6592044 Wong et al. Jul 2003 B1
6594361 Chaney et al. Jul 2003 B1
6597721 Hutchinson Jul 2003 B1
6600222 Levardo Jul 2003 B1
6613610 Iwafuchi Sep 2003 B2
6636668 Al-hermyari Oct 2003 B1
6640034 Charlton Oct 2003 B1
6641049 Luu Nov 2003 B2
6646957 Martin et al. Nov 2003 B2
6663831 Konecke Dec 2003 B2
6673630 Albarella Jan 2004 B2
6681616 Spaid Jan 2004 B2
6687447 Flory Feb 2004 B2
D487747 Yu et al. Mar 2004 S
6698378 Dick Mar 2004 B1
6705520 Pitroda et al. Mar 2004 B1
6710912 Filkins Mar 2004 B1
6719206 Bashan et al. Apr 2004 B1
6728457 Sigalas Apr 2004 B2
6731846 Hosomi May 2004 B2
6735368 Parker May 2004 B2
D491276 Langille Jun 2004 S
D491951 Yu et al. Jun 2004 S
D492688 Wallace et al. Jul 2004 S
6760514 Wilson Jul 2004 B2
6762537 Kikushima Jul 2004 B1
6764005 Cooper Jul 2004 B2
D493798 Yu et al. Aug 2004 S
6778722 Klocek Aug 2004 B1
6779115 Naim Aug 2004 B1
6782169 Shi Aug 2004 B2
6788863 Parker Sep 2004 B2
6791732 Simon Sep 2004 B2
6804446 Nordin Oct 2004 B1
6811082 Wong Nov 2004 B2
6822784 Fukshima Nov 2004 B2
6825741 Chappell Nov 2004 B2
6826185 Montanaro et al. Nov 2004 B1
6832029 Roberson Dec 2004 B2
6836138 Park Dec 2004 B1
6848617 Fries et al. Feb 2005 B1
6853087 Neuhaus Feb 2005 B2
6859304 Miller Feb 2005 B2
6873777 Bourelle Mar 2005 B2
6879432 Chen Apr 2005 B1
6879766 Tomaru Apr 2005 B2
6882541 Maruyama et al. Apr 2005 B2
6896189 Guion et al. May 2005 B2
6916207 Fielding Jul 2005 B2
6922780 Siegel Jul 2005 B1
6934441 Toney Aug 2005 B2
6936854 Iwasaki Aug 2005 B2
6940637 Toney Sep 2005 B2
6959127 Zoorob Oct 2005 B2
6961501 Matsuura Nov 2005 B2
6974343 Zheng et al. Dec 2005 B2
7012946 Kim Mar 2006 B2
7019981 Heinemann et al. Mar 2006 B2
7023706 Negishi Apr 2006 B2
7045052 Kochergin May 2006 B2
7051128 Bando May 2006 B2
7051929 Li May 2006 B2
7054524 Miller May 2006 B2
7062584 Worrell et al. Jun 2006 B1
7063267 Tsuchimoto Jun 2006 B2
7065272 Taillaert Jun 2006 B2
7078697 Barker Jul 2006 B2
7088902 Katoh Aug 2006 B2
7101660 Cunningham Sep 2006 B2
7110630 Suzuki Sep 2006 B2
D530021 Muraca Oct 2006 S
7136514 Wong Nov 2006 B1
7140550 Ramachandran Nov 2006 B2
7184093 Manning Feb 2007 B2
7194174 Dridi Mar 2007 B2
7215861 Sakai May 2007 B2
7225537 Reed Jun 2007 B2
7233729 Romagnoli Jun 2007 B2
7252242 Ho Aug 2007 B2
7253363 Iwakaki Aug 2007 B2
7272290 Sugita Sep 2007 B2
7292740 Barker Nov 2007 B1
7294918 Wada et al. Nov 2007 B2
7295744 Benisty Nov 2007 B2
7305535 Harari et al. Dec 2007 B2
7307719 Wang Dec 2007 B2
7343059 Beausoleil Mar 2008 B2
7346239 Romagnoli Mar 2008 B2
7350714 Wallace et al. Apr 2008 B2
7384294 Washino et al. Jun 2008 B2
D571810 Ikeda Jul 2008 S
7416132 Takiar et al. Aug 2008 B2
7417310 Szewerenko Aug 2008 B2
7424136 Setlak Sep 2008 B2
7428352 Noda Sep 2008 B2
7442050 Bhakta Oct 2008 B1
7466407 Spillane Dec 2008 B2
7469420 Duffield et al. Dec 2008 B2
7485501 Takiar et al. Feb 2009 B2
7492979 Wang Feb 2009 B2
D588133 Nakamura Mar 2009 S
D588134 Nakamura Mar 2009 S
7503899 Caillouette Mar 2009 B2
7508942 Candelore Mar 2009 B2
7520052 Takahashi et al. Apr 2009 B2
7530495 Cooper May 2009 B2
7552876 Nishizawa et al. Jun 2009 B2
7559469 Noda et al. Jul 2009 B2
7577846 Kudelski et al. Aug 2009 B2
7605453 Stampka et al. Oct 2009 B2
D605304 Aoki Dec 2009 S
7636070 De Lustrac Dec 2009 B2
7647641 Dubroeucq et al. Jan 2010 B2
7657188 Covey Feb 2010 B2
7659606 Klatt Feb 2010 B2
7673805 Onishi et al. Mar 2010 B2
7733198 Olsson Jun 2010 B1
7753266 Harris Jul 2010 B2
7784693 Liao et al. Aug 2010 B2
7793848 Abe et al. Sep 2010 B2
7799416 Chan Sep 2010 B1
7810718 Bonneau et al. Oct 2010 B2
7828207 Cooper Nov 2010 B2
7854505 Cunningham Dec 2010 B2
7861029 Djordjevic Dec 2010 B2
7864540 Takiar Jan 2011 B2
7866996 Achsaf Jan 2011 B2
7871007 Amiot et al. Jan 2011 B2
7871011 Reignoux et al. Jan 2011 B2
7913916 Musial et al. Mar 2011 B2
7922097 Yoshikawa et al. Apr 2011 B2
7925016 Candelore Apr 2011 B2
7940249 Perrault May 2011 B2
7954705 Mullen et al. Jun 2011 B2
D643040 Sedio et al. Aug 2011 S
7991289 Hill Aug 2011 B2
7999353 Odom Aug 2011 B1
8009432 Su et al. Aug 2011 B2
8022526 Chall et al. Sep 2011 B2
8026496 Barker Sep 2011 B2
8054145 Mohammadi Nov 2011 B2
8064205 Farhan et al. Nov 2011 B2
8072764 Yeates Dec 2011 B2
8079528 Song Dec 2011 B2
8082844 Barker Dec 2011 B1
8083150 Sakurai Dec 2011 B2
8097939 Okada Jan 2012 B2
8111566 Wang Feb 2012 B1
8143720 Lambrecht Mar 2012 B2
D667442 Phelan Sep 2012 S
8261557 Barker Sep 2012 B2
D669478 Lepp et al. Oct 2012 S
D669479 Lepp et al. Oct 2012 S
D669594 Cao Oct 2012 S
8317103 Foo et al. Nov 2012 B1
8395465 Lauder Mar 2013 B2
8422263 Saito Apr 2013 B2
D681640 Aoki et al. May 2013 S
8448867 Liu May 2013 B2
8451122 Narendra et al. May 2013 B2
8456850 Kang et al. Jun 2013 B2
8456852 Xiao et al. Jun 2013 B2
D685375 Steinberger Jul 2013 S
D686214 Maus et al. Jul 2013 S
8480002 Poidomani et al. Jul 2013 B2
8490127 Vantalon et al. Jul 2013 B2
8500019 Poidomani et al. Aug 2013 B2
8502735 Moosbrugger Aug 2013 B1
8505064 Hildebrand et al. Aug 2013 B2
D695636 Mullen et al. Dec 2013 S
8608082 Le Garrec et al. Dec 2013 B2
8618669 Furuta Dec 2013 B2
8647110 Choi et al. Feb 2014 B2
8649820 Schwandt et al. Feb 2014 B2
8654535 Lin et al. Feb 2014 B2
D701864 Lepp et al. Apr 2014 S
D702240 Lepp et al. Apr 2014 S
D702241 Lepp et al. Apr 2014 S
D703208 Lepp et al. Apr 2014 S
8690283 Pomerantz et al. Apr 2014 B2
8699836 Doerr Apr 2014 B2
8700833 Cedar et al. Apr 2014 B2
8710591 Hwang Apr 2014 B2
8730009 Barry May 2014 B2
D707682 Florek et al. Jun 2014 S
8746579 Cloutier et al. Jun 2014 B1
8814053 Narendra et al. Aug 2014 B2
8819818 Ayala Aug 2014 B2
D715854 Sippola Oct 2014 S
8854624 Pervez Oct 2014 B2
8936199 Lepp et al. Jan 2015 B2
D724660 Sippola Mar 2015 S
D725187 Sippola Mar 2015 S
D729808 Beals et al. May 2015 S
9058897 Yu Jun 2015 B2
9093277 Yamaguchi Jul 2015 B2
9139972 Mo Sep 2015 B2
D755741 Prajuckamol May 2016 S
D757015 Amit May 2016 S
D758372 Beals et al. Jun 2016 S
D759022 Beals et al. Jun 2016 S
D764424 Matsumoto Aug 2016 S
9435959 Doerr Sep 2016 B2
D775093 Vinciarelli Dec 2016 S
D778850 Matsumoto Feb 2017 S
D778851 Matsumoto Feb 2017 S
D778852 Matsumoto Feb 2017 S
D792410 Beals et al. Jul 2017 S
D792411 Beals et al. Jul 2017 S
9702813 Lavchiev Jul 2017 B2
9806017 Haba Oct 2017 B2
9815057 Handique Nov 2017 B2
9880137 Lim Jan 2018 B2
9881564 Wilcox Jan 2018 B2
9895692 Battrell Feb 2018 B2
9956562 Huang May 2018 B2
D840404 Beals Feb 2019 S
20010011944 Garrido-Gadea et al. Aug 2001 A1
20010011962 Fletout Aug 2001 A1
20010012366 Van Rijnsoever et al. Aug 2001 A1
20010018984 Takeda et al. Sep 2001 A1
20010026659 Sekine Oct 2001 A1
20010050846 Cho Dec 2001 A1
20020003168 Takabayashi Jan 2002 A1
20020009277 Noda Jan 2002 A1
20020014535 Okada Feb 2002 A1
20020021878 Allan Feb 2002 A1
20020105000 Abe Aug 2002 A1
20020115224 Rudel Aug 2002 A1
20020137502 Cronin et al. Sep 2002 A1
20020145049 Lasch et al. Oct 2002 A1
20020152048 Hayes Oct 2002 A1
20020191905 Prather Dec 2002 A1
20030002577 Pinder Jan 2003 A1
20030030870 Joannopoulos Feb 2003 A1
20030059047 Iwamura Mar 2003 A1
20030068152 Gunn Apr 2003 A1
20030085287 Gray May 2003 A1
20030091160 Enbom et al. May 2003 A1
20030123827 Salerno Jul 2003 A1
20030129085 Suslick Jul 2003 A1
20030153356 Liu Aug 2003 A1
20030163508 Goodman Aug 2003 A1
20030179910 Wong Sep 2003 A1
20030194091 Wajs Oct 2003 A1
20030213849 Luu Nov 2003 A1
20030221066 Kaneko Nov 2003 A1
20030223720 Li Dec 2003 A1
20030224553 Manansala Dec 2003 A1
20030231822 Li Dec 2003 A1
20040001591 Mani et al. Jan 2004 A1
20040053290 Terbrueggen Mar 2004 A1
20040062505 Sugitatsu Apr 2004 A1
20040109644 Assefa Jun 2004 A1
20040124246 Allen et al. Jul 2004 A1
20040129785 Luu Jul 2004 A1
20040143716 Hong Jul 2004 A1
20040152392 Nakamura Aug 2004 A1
20040166140 Santini Aug 2004 A1
20040171192 Morimura et al. Sep 2004 A1
20040175174 Suhami Sep 2004 A1
20040181800 Rakib et al. Sep 2004 A1
20040189311 Glezer Sep 2004 A1
20040256150 Barchmann et al. Dec 2004 A1
20040258762 Boppart Dec 2004 A1
20040260823 Tiwari et al. Dec 2004 A1
20050002605 Sakai Jan 2005 A1
20050005287 Claussen Jan 2005 A1
20050023361 Ikefuji et al. Feb 2005 A1
20050033688 Peart et al. Feb 2005 A1
20050058574 Bysouth Mar 2005 A1
20050061884 Stewart Mar 2005 A1
20050148121 Yamazaki et al. Jul 2005 A1
20050152656 Talneau Jul 2005 A1
20050158781 Woudenberg Jul 2005 A1
20050197169 Son Sep 2005 A1
20050212657 Simon Sep 2005 A1
20050212690 Nishikawa Sep 2005 A1
20050231921 Noda et al. Oct 2005 A1
20050232471 Baer Oct 2005 A1
20050247784 Klatt Nov 2005 A1
20050252978 Nishizawa et al. Nov 2005 A1
20050265660 Miller Dec 2005 A1
20050281524 Mouli Dec 2005 A1
20060018594 Sugitatsu Jan 2006 A1
20060026295 Iwamura Feb 2006 A1
20060029522 Theil Feb 2006 A1
20060043202 Kim et al. Mar 2006 A1
20060053345 Goodwin Mar 2006 A1
20060057039 Morse Mar 2006 A1
20060058065 Shen et al. Mar 2006 A1
20060059391 Park et al. Mar 2006 A1
20060072293 Peele Apr 2006 A1
20060093296 Jin May 2006 A1
20060097059 Miyazaki May 2006 A1
20060125067 Wehrly Jun 2006 A1
20060131396 Blossom Jun 2006 A1
20060133051 Calvas et al. Jun 2006 A1
20060155913 Nishikawa et al. Jul 2006 A1
20060198238 Partridge Sep 2006 A1
20060202125 Suhami Sep 2006 A1
20060208077 Hirata Sep 2006 A1
20060228256 McDevitt Oct 2006 A1
20060261454 Takiar Nov 2006 A1
20060283946 Riester et al. Dec 2006 A1
20060286847 Zuo et al. Dec 2006 A1
20070009219 Hatsuda Jan 2007 A1
20070009386 Padmanabhan Jan 2007 A1
20070020764 Miller Jan 2007 A1
20070028260 Williams et al. Feb 2007 A1
20070033490 Moosrainer Feb 2007 A1
20070060198 Kuo Mar 2007 A1
20070067810 Durden et al. Mar 2007 A1
20070067820 Cha Mar 2007 A1
20070081165 Kilic Apr 2007 A1
20070117550 Boris et al. May 2007 A1
20070121008 Kanoh May 2007 A1
20070125855 Jiang et al. Jun 2007 A1
20070127185 Watanabe Jun 2007 A1
20070138301 Cinkler Jun 2007 A1
20070143784 Kubota et al. Jun 2007 A1
20070146542 Strasser Jun 2007 A1
20070153487 Frallicciardi et al. Jul 2007 A1
20070165295 Kim Jul 2007 A1
20070172388 Iwasaki Jul 2007 A1
20070176622 Yamazaki Aug 2007 A1
20070235545 Martinez et al. Oct 2007 A1
20070237243 Fagan Oct 2007 A1
20070246536 Tuin Oct 2007 A1
20070250572 Dua Oct 2007 A1
20070250872 Dua Oct 2007 A1
20070262156 Chen et al. Nov 2007 A1
20070266182 Lanning Nov 2007 A1
20070269176 Mitomi Nov 2007 A1
20070269178 Sarukura Nov 2007 A1
20080020800 Xu Jan 2008 A1
20080031449 Osen Feb 2008 A1
20080041952 Kang Feb 2008 A1
20080056948 Dale Mar 2008 A1
20080062066 Arai Mar 2008 A1
20080079565 Koyama Apr 2008 A1
20080083831 Lafuente et al. Apr 2008 A1
20080094788 Choe Apr 2008 A1
20080095366 Taniguchi Apr 2008 A1
20080096317 Middlekauff et al. Apr 2008 A1
20080099559 Lo et al. May 2008 A1
20080107565 Vivienne May 2008 A1
20080122894 Lee et al. May 2008 A1
20080135626 Reignoux et al. Jun 2008 A1
20080137278 Chih Jun 2008 A1
20080163290 Marko Jul 2008 A1
20080165962 Kawano et al. Jul 2008 A1
20080174408 Takahashi Jul 2008 A1
20080211074 Osako et al. Sep 2008 A1
20080211302 Hirota et al. Sep 2008 A1
20080223937 Preta et al. Sep 2008 A1
20080257967 Nishizawa et al. Oct 2008 A1
20080257968 Nishizawa et al. Oct 2008 A1
20080262213 Wu Oct 2008 A1
20080263623 Hildebrand et al. Oct 2008 A1
20080314983 Capurso et al. Oct 2008 A1
20080279379 Muijen Nov 2008 A1
20090011538 Masumoto et al. Jan 2009 A1
20090032593 Ljungcrantz Feb 2009 A1
20090040695 Fidalgo et al. Feb 2009 A1
20090057417 Shinohara et al. Mar 2009 A1
20090061450 Hunter Mar 2009 A1
20090086657 Alpert et al. Apr 2009 A1
20090116029 Ohtera May 2009 A1
20090140415 Furuta Jun 2009 A1
20090144456 Gelf et al. Jun 2009 A1
20090153163 Han Jun 2009 A1
20090156254 Montes Jun 2009 A1
20090199283 Jain Aug 2009 A1
20090244858 Di Sirio et al. Oct 2009 A1
20090275170 Chen Nov 2009 A1
20090303624 Fujii Dec 2009 A1
20090309952 Akatsu Dec 2009 A1
20100006322 Cheng Jan 2010 A1
20100013887 Suh Jan 2010 A1
20100019038 Puente Baliarda et al. Jan 2010 A1
20100025480 Nishizawa et al. Feb 2010 A1
20100072284 Nishizawa et al. Mar 2010 A1
20100097080 Kobauyashi Apr 2010 A1
20100117800 Li et al. May 2010 A1
20100136816 Ahn Jun 2010 A1
20100138857 Gondkar Jun 2010 A1
20100165589 Zhou Jul 2010 A1
20100169940 Howarter et al. Jul 2010 A1
20100176207 Yoshikawa et al. Jul 2010 A1
20100244166 Shibuta Sep 2010 A1
20100272257 Beals Oct 2010 A1
20100302516 Rehn Dec 2010 A1
20100303687 Blaga Dec 2010 A1
20100318627 Edwards et al. Dec 2010 A1
20100327467 Hirabayashi Dec 2010 A1
20110003303 Pagano Jan 2011 A1
20110010734 Newell Jan 2011 A1
20110028184 Cooper Feb 2011 A1
20110080331 Kato Apr 2011 A1
20110114856 Cooke May 2011 A1
20110119487 Alexander et al. May 2011 A1
20110138088 Sirio et al. Jun 2011 A1
20110170750 Kropp Jul 2011 A1
20110221385 Partovi Sep 2011 A1
20110259966 Phillips Oct 2011 A1
20110315779 Bidin et al. Dec 2011 A1
20120007096 Yamazaki Jan 2012 A1
20120018522 Le Garrec et al. Jan 2012 A1
20120028342 Ismagilov Feb 2012 A1
20120048948 Bertin et al. Mar 2012 A1
20120105081 Shaikh May 2012 A1
20120138690 Bosquet et al. Jun 2012 A1
20120168517 Lee Jul 2012 A1
20120177543 Battrell Jul 2012 A1
20120193435 Hanaoka et al. Aug 2012 A1
20120231650 Tian et al. Sep 2012 A1
20120241615 Tomioka Sep 2012 A1
20120248201 Sutera Oct 2012 A1
20120261575 Averitt Oct 2012 A1
20120267438 Kato et al. Oct 2012 A1
20120287587 Los Nov 2012 A1
20120289196 Tan et al. Nov 2012 A1
20120292395 Huang et al. Nov 2012 A1
20130008968 Launay et al. Jan 2013 A1
20130015441 Takayama et al. Jan 2013 A1
20130112757 Lee May 2013 A1
20130130262 Battrell May 2013 A1
20130134227 De Maquille et al. May 2013 A1
20130161390 Rodriquez Jun 2013 A1
20130175346 Jenni Jul 2013 A1
20130185566 Pang Jul 2013 A1
20130193591 Groening Aug 2013 A1
20130194071 Slogedal Aug 2013 A1
20130207781 Pagani et al. Aug 2013 A1
20130277434 Lin Oct 2013 A1
20130287267 Varone Oct 2013 A1
20130320088 Lin et al. Dec 2013 A1
20130334320 Thill et al. Dec 2013 A1
20130337686 Wang Dec 2013 A1
20140021264 Pueschner et al. Jan 2014 A1
20140042230 Pueschner et al. Feb 2014 A1
20140061316 Narayanaswami et al. Mar 2014 A1
20140138449 Goldman May 2014 A1
20140282685 Beals et al. Sep 2014 A1
20140282808 Beals et al. Sep 2014 A1
20140347818 Uhlemann Nov 2014 A1
20150016607 Beals et al. Jan 2015 A1
20150016608 Beals et al. Jan 2015 A1
20150113585 Beals et al. Apr 2015 A1
20150143105 Beals et al. May 2015 A1
20150154998 Gallo Jun 2015 A1
20150321193 Sprague Nov 2015 A1
20150352549 Kolb Dec 2015 A1
20160022570 Adams Jan 2016 A1
20160117714 Salihu Apr 2016 A1
20160217087 Lim Jul 2016 A1
20160250393 Jeong Sep 2016 A1
20160365140 Azuma Dec 2016 A1
20170010639 Matsumoto Jan 2017 A1
Foreign Referenced Citations (27)
Number Date Country
2318936 Apr 2004 CA
1960552 May 2007 CN
101005563 Jul 2007 CN
101267532 Sep 2008 CN
101267639 Sep 2008 CN
102164320 Aug 2011 CN
102164329 Aug 2011 CN
102447955 May 2012 CN
1659819 Apr 2014 CN
202007015387 Mar 2008 DE
740478 Oct 1996 EP
1463322 Sep 2004 EP
1662361 May 2006 EP
1765013 Mar 2007 EP
2204997 Jul 2010 EP
2407916 Jan 2012 EP
2541959 Jan 2013 EP
3004415620000 Feb 2007 KR
3006175300000 Oct 2011 KR
3006364910000 Mar 2012 KR
3006364910001 Mar 2012 KR
201246815 Nov 2012 TW
201247009 Nov 2012 TW
201301832 Jan 2013 TW
2007072211 Jun 2007 WO
2011120901 Oct 2011 WO
2012101420 Jan 2012 WO
Non-Patent Literature Citations (134)
Entry
Chinese Patent Application No. 201330395635.2, Notice of Allowance, dated Dec. 2, 2013.
Chinese Patent Application No. 201330395780.0, Notice of Allowance dated Jan. 10, 2014.
Chinese Patent Application No. 201330395895.X, Notice of Allowance dated Nov. 19, 2013.
European Patent Application No. 15184485.9, EESR dated Mar. 3, 2016, 9 pages.
International Standard (1999) “Information technology—Identification cards—Integrated circuit(s) cards with contacts—Part 2: Dimensions and location of the contacts” Reference No. ISO/IEC 7816-2: 1999E, 11 pages.
ISO 7816—Smart Card Standards Overview. Artemis Solutions Group LLC, 2004 (17 pages).
PCT International Search Report and Written Opinion for PCT/US2013/039803, dated Jan. 23, 2014, 13 pages.
PCT International Search Report and Written Opinion for PCT/US2013/039806, dated Jan. 23, 2014, 12 pages.
Smart Card Module Poster complied by Endre Nagy of Hungary 1 page poster, edition Mar. 2004, www.wrankl.de/Uthings/Training.html.
TW Patent Application No. 102304015, Office Action dated Mar. 24, 2014, 3 pages. English Translation).
TW Patent Application No. 102304016, Office Action dated Mar. 24, 2014, 3 pages. (English Translation).
TW Patent Application No. 102304017, Office Action dated Mar. 24, 2014, 3 pages. (English Translation).
U.S. Appl. No. 13/799,774, Notice of Allowance dated Apr. 28, 2016, 7 pages.
U.S. Appl. No. 13/799,774, Amendment and Response filed Feb. 16, 2016, 11 pages.
U.S. Appl. No. 13/799,774, Amendment and Response filed Jan. 15, 2015, 12 pages.
U.S. Appl. No. 13/799,774, Amendment and Response filed Oct. 1, 2015, 11 pages.
U.S. Appl. No. 13/799,774, Office Action dated Nov. 16, 2015, 10 pages.
U.S. Appl. No. 13/799,774, Office Action dated Apr. 1, 2015, 10 pages.
U.S. Appl. No. 13/799,774, Office Action dated Jul. 15, 2014, 12 pages.
U.S. Appl. No. 13/799,891, Amendment and Response filed Dec. 1, 2014, 8 pages.
U.S. Appl. No. 13/799,891, Amendment and Response filed Dec. 10, 2015, 14 pages.
U.S. Appl. No. 13/799,891, Amendment and Response filed Jul. 6, 2015, 13 pages.
U.S. Appl. No. 13/799,891, Amendment and Response filed Jun. 14, 2016, 16 pages.
U.S. Appl. No. 13/799,891, Office Action dated Aug. 10, 2015, 14 pages.
U.S. Appl. No. 13/799,891, Office Action dated Feb. 3, 2015, 22 pages.
U.S. Appl. No. 13/799,891, Office Action dated Jan. 14, 2016, 10 pages.
U.S. Appl. No. 13/799,891, Office Action dated Jul. 18, 2016, 12 pages.
U.S. Appl. No. 14/499,956, Amendment and Response filed May 31, 2016, 11 pages.
U.S. Appl. No. 14/499,956, Amendment and Response filed Nov. 30, 2015, 7 pages.
U.S. Appl. No. 14/499,956, Office Action dated Jan. 29, 2016, 8 pages.
U.S. Appl. No. 14/499,956, Office Action dated Jul. 30, 2015, 23 pages.
U.S. Appl. No. 14/499,956, Office Action dated Jun. 17, 2016, 13 pages.
U.S. Appl. No. 14/500,037, Amendment and Response filed Dec. 10, 2015, 8 pages.
U.S. Appl. No. 14/500,037, Amendment and Response filed Jun. 16, 2016, 12 pages.
U.S. Appl. No. 14/500,037, Office Action dated Aug. 10, 2015, 20 pages.
U.S. Appl. No. 14/500,037, Office Action dated Feb. 16, 2016, 9 pages.
U.S. Appl. No. 14/500,037, Office Action dated Jun. 24, 2016, 10 pages.
U.S. Appl. No. 14/500,113, Amendment and Response filed Dec. 14, 2015, 8 pages.
U.S. Appl. No. 14/500,113, Amendment and Response filed Jun. 17, 2016, 12 pages.
U.S. Appl. No. 14/500,113, Office Action dated Aug. 12, 2015, 21 pages.
U.S. Appl. No. 14/500,113, Office Action dated Feb. 17, 2016, 8 pages.
U.S. Appl. No. 14/500,113, Office Action dated Jun. 28, 2016, 10 pages.
U.S. Appl. No. 14/608,900, Amendment and Response filed Jun. 21, 2016, 17 pages.
U.S. Appl. No. 14/608,900, Office Action dated Aug. 5, 2016, 14 pages.
U.S. Appl. No. 14/608,900, Office Action dated Mar. 21, 2016, 12 pages.
U.S. Appl. No. 29/448,754, Amendment and Response filed Apr. 15, 2015, 10 pages.
U.S. Appl. No. 29/448,754, Amendment and Response filed Dec. 10, 2014, 5 pages.
U.S. Appl. No. 29/448,754, Amendment and Response filed Dec. 30, 2015, 7 pages.
U.S. Appl. No. 29/448,754, Notice of Allowance dated Jan. 29, 2016, 6 pages.
U.S. Appl. No. 29/448,754, Office Action dated Apr. 1, 2015, 11 pages.
U.S. Appl. No. 29/448,754, Office Action dated Jul. 31, 2015, 8 pages.
U.S. Appl. No. 29/448,754, Office Action dated Sep. 10, 2014, 26 pages.
U.S. Appl. No. 29/448,761, Amendment and Response filed Apr. 20, 2015, 9 pages.
U.S. Appl. No. 29/448,761, Amendment and Response filed Dec. 10, 2014, 6 pages.
U.S. Appl. No. 29/448,761, Amendment and Response filed Dec. 30, 2015, 8 pages.
U.S. Appl. No. 29/448,761, Notice of Allowance dated Jan. 22, 2016, 6 pages.
U.S. Appl. No. 29/448,761, Office Action dated Aug. 14, 2015, 7 pages.
U.S. Appl. No. 29/448,761, Office Action dated Mar. 26, 2015, 11pages.
U.S. Appl. No. 29/448,761, Office Action dated Sep. 10, 2014, 26 pages.
U.S. Appl. No. 29/448,766, Notice of Allowance dated Apr. 22, 2015, 5 pages.
U.S. Appl. No. 29/448,766, Notice of Allowance dated Jan. 12, 2015, 36 pages.
U.S. Appl. No. 29/448,766, Notice of Allowance dated Sep. 18, 2014, 28 pages.
U.S. Appl. No. 29/521,234, Notice of Allowance dated Sep. 8, 2016, 26 pages.
U.S. Appl. No. 29/521,236, Notice of Allowance dated Sep. 12, 2016, 26 pages.
European Patent Application No. 13877922.1, EESR dated Sep. 7, 2016, 8 pages.
Chinese Notice of Allowance in 201530425865.8 dated Jun. 7, 2016, 4 pages.
Taiwanese Office Action in 104306112 dated Jun. 23, 2016, 9 pages.
European Communication in 13878216.4, dated Sep. 21, 2016, 7 pages.
U.S. Appl. No. 14/499,956, Amendment and Response filed Sep. 23, 2016, 12 pages.
U.S. Appl. No. 14/500,037, Amendment and Response filed Sep. 26, 2016, 11 pages.
U.S. Appl. No. 14/500,113, Amendment and Response filed Sep. 28, 2016, 12 pages.
U.S. Appl. No. 29/521,234, Notice of Allowance dated Oct. 14, 2016, 5 pages.
U.S. Appl. No. 29/521,236, Notice of Allowance dated Oct. 17, 2016, 5 pages.
U.S. Appl. No. 13/799,891, Amendment and Response filed Nov. 18, 2016, 17 pages.
U.S. Appl. No. 14/499,956, Office Action dated Nov. 8, 2016, 10 pages.
U.S. Appl. No. 14/500,037, Office Action dated Nov. 10, 2016, 9 pages.
U.S. Appl. No. 14/500,113, Office Action dated Nov. 28, 2016, 10 pages.
U.S. Appl. No. 14/608,900, Amendment and Response filed Dec. 5, 2016, 17 pages.
U.S. Appl. No. 13/799,891, Office Action dated Dec. 30, 2016, 12 pages.
U.S. Appl. No. 14/608,900, Notice of Allowance dated Jan. 3, 2017, 8 pages.
Taiwanese Office Action in Application 102144271, dated Jan. 20, 2017, 9 pages.
Taiwanese Office Action in Application 102144270, dated Feb. 10, 2017, 13 pages.
European Search Report in Application 13878216.4, dated Jan. 13, 2017, 16 pages.
U.S. Appl. No. 14/499,956, Amendment and Response filed Mar. 8, 2017, 12 pages.
U.S. Appl. No. 14/500,037, Amendment and Response filed Mar. 10, 2017, 11 pages.
U.S. Appl. No. 29/567,139, Notice of Allowance dated Mar. 10, 2017, 28 pages.
U.S. Appl. No. 29/567,135, Notice of Allowance dated Mar. 10, 2017, 30 pages.
U.S. Appl. No. 29/525,632, Office Action dated Mar. 2, 2017, 17 pages.
U.S. Appl. No. 13/799,891, Amendment and Response filed Mar. 30, 2017, 15 pages.
U.S. Appl. No. 14/500,113, Office Action dated Apr. 6, 2017, 10 pages.
U.S. Appl. No. 14/608,900, Notice of Allowance dated Apr. 12, 2017, 2 pages.
U.S. Appl. No. 29/567,139, Notice of Allowance dated Apr. 3, 2017, 2 pages.
Taiwanese Notice of Allowance in Application 104306112, dated Feb. 10, 2017, 5 pages.
U.S. Appl. No. 14/500,037, Notice of Allowance dated May 26, 2017, 8 pages.
Chinese Notice of Allowance in 102144271 dated May 31, 2017, 3 pages. (No English Translation.).
U.S. Appl. No. 14/500,037, Notice of Allowance dated Jun. 15, 2017, 2 pages.
U.S. Appl. No. 13/799,891, Office Action dated May 10, 2017, 13 pages.
U.S. Appl. No. 14/499,956, Notice of Allowance dated May 9, 2017, 7 pages.
U.S. Appl. No. 14/499,956, Notice of Allowance dated Jun. 5, 2017, 4 pages.
U.S. Appl. No. 29/567,139, Notice of Allowance dated May 16, 2017, 2 pages.
Taiwanese Notice of Allowance in Application 105307889, dated May 17, 2017, 5 pages.
Taiwanese Notice of Allowance in Application 105307888, dated May 17, 2017, 5 pages.
Taiwanese Notice of Allowance in Application 105307887, dated May 17, 2017, 5 pages.
U.S. Appl. No. 14/500,113, Amendment and Response filed Jul. 6, 2017, 11 pages.
Taiwanese Notice of Allowance in Application 105307890, dated Jul. 13, 2017, 4 pages. (No English Translation).
U.S. Appl. No. 13/799,891, Amendment and Response filed Aug. 10, 2017, 16 pages.
U.S. Appl. No. 13/799,891, Notice of Allowance dated Sep. 22, 2017, 7 pages.
U.S. Appl. No. 14/499,956, Notice of Allowance dated Aug. 24, 2017, 2 pages.
U.S. Appl. No. 14/500,113, Office Action dated Sep. 15, 2017, 11 pages.
U.S. Appl. No. 29/525,632, Amendment and Response filed Sep. 1, 2017, 5 pages.
Taiwanese Office Action in Application 102144270, dated Dec. 14, 2017, 4 pages.
U.S. Appl. No. 29/525,632, Office Action dated Dec. 21, 2017, 4 pages.
Chinese Office Action in Application 201380074223.6, dated Jan. 23, 2018, 9 pages.
European Office Action in Application 13878216.4, dated Jan. 18, 2018, 8 pages.
U.S. Appl. No. 14/500,113, Amendment and Repsonse filed Feb. 15, 2018, 11 pages.
Chinese Office Action in Application 201380074371.8, dated Feb. 23, 2018, 8 pages.
ISO/IEC 7816-3 Identification cards—Integrated circuit(s) cards with contacts—Part 3: Cards with contacts—Electrical Interface and transmission protocols Nov. 1, 2006, 58 pages, http://read.pudn.com/downloads132/doc/comm/563504/ISO-IEC7816/ISO+IEC7816-3-2006.pdf.
U.S. Appl. No. 29/525,632, Office Action dated Aug. 13, 2018, 6 pages.
U.S. Appl. No. 14/500,113, Notice of Allowance dated Aug. 1, 2018, 3 pages.
U.S. Appl. No. 29/567,145, Office Action dated Jul. 31, 2018, 16 pages.
U.S. Appl. No. 29/567,144, Amendment and Response filed Aug. 30, 2018, 12 pages.
U.S. Appl. No. 29/567,144, Notice of Allowance dated Sep. 28, 2018, 6 pages.
U.S. Appl. No. 14/500,113, Notice of Allowance dated Apr. 6, 2018, 8 pages.
U.S. Appl. No. 29/525,632, Amendment and Response filed Mar. 20, 2018, 5 pages.
U.S. Appl. No. 29/567,144, Office Action dated May 30, 2018, 22 pages.
U.S. Appl. No. 29/525,632, Advisory Action dated Dec. 14, 2018, 3 pages.
U.S. Appl. No. 29/525,632, Office Action dated Dec. 20, 2018, 4 pages.
Anonymous: “OpenCable(TM) Specifications CableCARD(TM) Copy Protection 2.0 Specification”, May 31, 2012 (May 31, 2012), XP055517755, Retrieved from the Internet: URL:https://apps.cablelabs.com/specification/opencable-cablecard-copy-protection-2-0-specification, 19 pages.
Anonymous: “OpenCable(TM) Specifications CableCARD Interface 2.0 Specification”, May 31, 2012 (May 31, 2012), XP055517769, Retrieved from the Internet: URL:https://apps.cablelabs.com/specification/opencable-cablecard-interface-2-0-specification, 83 pages.
Nate Anderson: “CableCARD: A Primer”, Feb. 7, 2006 (Feb. 7, 2006),XP055517459, Retrieved from the Internet: URL:https://arstechnica.com/gadgets/2006/02/cablecard/2/, 2 pages.
European Summons in Application 13878216.4, mailed Dec. 18, 2018, 10 pages.
European Office Action in Application 15184485.9, dated Feb. 26, 2019, 7 pages.
Chinese Office Action in Application 201380074371.8. dated Mar. 12, 2019, 11 pages.
European Written Submissions in Application 13878216.4, dated Mar. 22, 2019, 12 pages.
Related Publications (1)
Number Date Country
20180027288 A1 Jan 2018 US
Divisions (1)
Number Date Country
Parent 13799891 Mar 2013 US
Child 14500037 US
Continuations (1)
Number Date Country
Parent 14500037 Sep 2014 US
Child 15710340 US