Abstract:
An encrypted-stream processing circuit includes: a decryption mechanism decrypting an encrypted stream; a stream-data processing mechanism separating a plurality of packets included in a stream decrypted by the decryption mechanism in accordance with a packet identifier identifying the packet, and creating a partial stream by extracting a part from the stream under the control of a CPU (Central Processing Unit); and an encryption mechanism encrypting the partial stream, wherein the decryption mechanism, the stream-data processing mechanism, and the encryption mechanism are included in a packaged integrated circuit, and are connected to the CPU through a bus.

Description:
BACKGROUND OF THE INVENTION 
       [0001]    1. Field of the Invention 
         [0002]    The present invention relates to an encrypted stream processing circuit and a method of processing an encrypted stream. More particularly, the present invention relates to an encrypted stream processing circuit and a method of processing an encrypted stream, which are capable of processing an encrypted stream at a high speed. 
         [0003]    2. Description of the Related Art 
         [0004]    To date, when a stream of a content protected by copyright is transmitted through a bus connected to a CPU (Central Processing Unit), there has been a constraint that it is necessary to encrypt the stream. 
         [0005]    Accordingly, when the CPU receives an encrypted stream, it is necessary for the CPU to internally decrypt the stream, to perform predetermined necessary processing on the stream, then to encrypt the stream having subjected to the processing, and to output the stream. That is to say, the CPU performs decryption processing on the stream, predetermined processing on the stream, and encryption processing on the stream by software. 
         [0006]    However, execution of such processing by software gives heavy load on the CPU, and thus it is difficult for a CPU having a low processing power to perform processing at a high speed. Also, in order to perform processing at a high speed, a relatively high-speed and expensive CPU becomes necessary. 
         [0007]    For example, Japanese Unexamined Patent Application Publication No. 2004-362704 has disclosed a data recording and playback apparatus which protects target copyright without changing copyright protection information described in a stream, and a description has been given that it is not easy to perform processing for rewriting copyright protection information. 
       SUMMARY OF THE INVENTION 
       [0008]    As described above, when a stream of a content protected by copyright is transmitted through a bus, it is necessary for a CPU to encrypt the stream before transmission. Thus, it has been difficult for the CPU to process an encrypted stream at a high speed. 
         [0009]    The present invention has been made in view of such circumstances, and it is desirable to process an encrypted stream at a high speed. 
         [0010]    According to an embodiment of the present invention, there is provided an encrypted-stream processing circuit including: decryption means for decrypting an encrypted stream; stream-data processing means for separating a plurality of packets included in a stream decrypted by the decryption means in accordance with a packet identifier identifying the packet, and creating a partial stream by extracting a part from the stream under the control of a CPU (Central Processing Unit); and encryption means for encrypting the partial stream, wherein the decryption means, the stream-data processing means, and the encryption means are included in a packaged integrated circuit, and are connected to the CPU through a bus. 
         [0011]    According to another embodiment of the present invention, there is provided a method of processing an encrypted stream, the method including the steps of: decrypting an encrypted stream; separating a plurality of packets included in a stream decrypted in accordance with a packet identifier identifying the packet, and creating a partial stream by extracting a part from the stream under the control of a CPU (Central Processing Unit); and encrypting the partial stream, wherein the individual steps of processing are performed in a packaged integrated circuit connected to the CPU through a bus. 
         [0012]    In an embodiment of the present invention, an encrypted stream is decrypted, a plurality of packets included in the stream are separated in accordance with a packet identifier identifying the packet, a partial stream is created by extracting a part of the stream under the control of a CPU, and the partial stream is encrypted. Such processing is performed in a packaged integrated circuit connected to the CPU through a bus. 
         [0013]    By an embodiment of the present invention, it is possible to process an encrypted stream at a high speed. 
     
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
         [0014]      FIG. 1  is a block diagram illustrating an example of a configuration of a content processing apparatus according to an embodiment of the present invention; 
           [0015]      FIG. 2  is a diagram illustrating an example of a DTCP descriptor described in a PMT; 
           [0016]      FIG. 3  is a flowchart illustrating processing performed on an encrypted AV stream in an encrypted-stream processing circuit  16 ;  FIG. 4  is a flowchart illustrating processing for extracting position information of PTS in step S 14 ; 
           [0017]      FIG. 5  is a flowchart illustrating processing for extracting position information of Indicator of I-Picture in step S 15 ; 
           [0018]      FIG. 6  is a block diagram illustrating an example of a configuration of a content processing apparatus  11  according to another embodiment; 
           [0019]      FIG. 7  is a block diagram illustrating an example of a configuration of a content processing apparatus  11  according to still another embodiment; and 
           [0020]      FIG. 8  is a block diagram illustrating an example of a configuration of a content processing apparatus  11  according to still another embodiment. 
       
    
    
     DESCRIPTION OF THE PREFERRED EMBODIMENTS 
       [0021]    In the following, a detailed description will be specifically given of an embodiment of the present invention with reference to the drawings. 
         [0022]      FIG. 1  is a block diagram illustrating an example of a configuration of a content processing apparatus according to an embodiment of the present invention. 
         [0023]    In  FIG. 1 , a content processing apparatus  11  includes a communication controller  12 , a CPU  13 , a disk controller  14 , a recording section  15 , and an encrypted-stream processing circuit  16 . Also, the encrypted-stream processing circuit  16  includes a decryption section  17 , a stream-data processing section  18 , and an encryption section  19 . 
         [0024]    The communication controller  12  is a control section controlling communication through a network, for example an IEEE(Institute of Electrical and Electronics Engineers)802.3 Ethernet, an IEEE802.11 wireless network, etc., and transmits and receives data through the network. For example, if a content in the Transport Stream format with copyright is encrypted and delivered, the communication controller  12  receives the encrypted content (in the following, called an encrypted AV (Audio Visual) stream as necessary), and supplies the stream to the CPU  13 . 
         [0025]    The CPU  13  supplies the encrypted AV stream supplied from the communication controller  12  to the decryption section  17  of the encrypted-stream processing circuit  16 , controls the stream-data processing section  18  of the encrypted-stream processing circuit  16 , and performs necessary processing on the encrypted AV stream. Also, when the encrypted AV stream having been subjected to the processing by the stream-data processing section  18  is supplied from the encryption section  19  of the encrypted-stream processing circuit  16 , the CPU  13  supplies the encrypted AV stream to the disk controller  14 . 
         [0026]    The disk controller  14  is a control section controlling input and output of data recorded in the recording section  15 . For example, the disk controller  14  records the encrypted AV stream supplied from the CPU  13  into the recording section  15 . 
         [0027]    The recording section  15  is, for example a hard disk drive, a recording medium, such as a DVD (Digital Versatile Disc), a Blu-Ray Disc, etc., and records the encrypted AV stream under the control of the disk controller  14 . 
         [0028]    The encrypted-stream processing circuit  16  is connected to the CPU  13  through a PCI (Peripheral Component Interconnect) bus, a USB (Universal Serial Bus), etc., and performs necessary processing on an encrypted AV stream under the control of the CPU  13 . Here, the encrypted-stream processing circuit  16  is a packaged integrated circuit including the decryption section  17 , the stream-data processing section  18 , and the encryption section  19 . Accordingly, it is not allowed to obtain data sent and received among the decryption section  17 , the stream-data processing section  18 , and the encryption section  19  from the outside. 
         [0029]    The encrypted AV stream is supplied from the CPU  13  to the decryption section  17  through a bus. The decryption section  17  decrypts the encrypted AV stream using, for example a preset decryption key, and supplies a plaintext AV stream to the stream-data processing section  18 . 
         [0030]    The stream-data processing section  18  performs predetermined processing on the AV stream from the decryption section  17  under the control of the CPU  13 , and supplies the processed AV stream to the encryption section  19 . 
         [0031]    The encryption section  19  encrypts the AV stream supplied from the stream-data processing section  18  using a preset encryption key, and supplies the encrypted AV stream to the CPU  13 . 
         [0032]    Here, a description will be given of processing performed in the stream-data processing section  18 . 
         [0033]    The stream-data processing section  18  performs stream separation processing, partial-stream creation processing, map-information creation processing, copyright-information rewriting processing, and time-stamp addition or deletion processing, etc. 
         [0034]    In the stream separation processing, namely so-called Demux processing, the stream-data processing section  18  analyzes the AV stream supplied from the decryption section  17 , and detects a PAT (Program Association Table) whose PID (Packet Identifier) is determined to be 0x0000. Then, the stream-data processing section  18  obtains a PID of a PMT (Program Map Table) described in the PAT. In the PMT, PIDs of the TS (Transport Stream) packets including a video, an audio, a PCR (Program Clock Reference), etc., are described. 
         [0035]    Here, for a standard TS packet without a time stamp, a PID described in the PMT includes a beginning 8-bit sync byte (=0x47), 3 bits including each 1 bit of transport_error_indicator, payload_unit_start_indicator, and transpor_priority, and the following 13 bits. Also, for a TS packet to which a time stamp is added, a time stamp of 32 bits (4 bytes) is included immediately before a sync byte. In this regard, whether a time stamp is added to a TS packet or not can be normally recognized at the time of transmitting and receiving an AV stream. However, for example when it is unclear whether a time stamp is added to a TS packet, it is possible for the stream-data processing section  18  to determine whether a time stamp is added to a TS packet on the basis of a repetition cycle of the sync byte=0x47. 
         [0036]    Next, the stream-data processing section  18  separates TS packets from the AV stream in accordance with the PID described in the PMT. For example, the stream-data processing section  18  separates individual TS packets on the basis of the PID of the packets including the PID of packets, such as PAT, PMT, PCR, and DIT (Discontinuity Information Packet), which are used for playback processing of the AV stream, the PID of a packet including a video, and the PID of a packet including an audio. 
         [0037]    Also, in the processing for creating a partial stream, the stream-data processing section  18  creates a partial stream including a TS packet on a content to be recorded into the recording section  15  in the content processing apparatus  11 . That is to say, the stream-data processing section  18  deletes TS packets other than the TS packets on the content to be recorded into the recording section  15  from the AV stream supplied from the decryption section  17  to create a partial stream. 
         [0038]    Here, the PID of the TS packets on the content to be recorded in the recording section  15 , for example, the PID of the TS packets of PAT, PMT, PCR, and DIT (Discontinuity Information Packet), etc., the PID of a TS packet including a video, and the PID of a TS packet including an audio are notified (specified) by the CPU  13  to the stream-data processing section  18 . Also, for a standard TS packet without a time stamp, the stream-data processing section  18  deletes a TS packet of 188 bytes having a PID identified to be deleted. For a standard TS packet with a time stamp, the stream-data processing section  18  deletes a TS packet of 192 bytes having a PID identified to be deleted. Thus, the TS packets which are not necessary to be recorded in the recording section  15  are not supplied to the encryption section  19 . 
         [0039]    Also, in the processing for creating map information, the stream-data processing section  18  analyzes an AV stream, detects a position of a TS packet including an Indicator of a Picture Header (I-Picture) and a PTS (Presentation Timestamp), etc., and creates map information having a description of position information (Packet Number) thereof. The stream-data processing section  18  supplies the map information having a description of the position information of the TS packet including an Indicator of a Picture Header, a PTS, etc., and information of the attributes of those TS packets to the CPU  13 . 
         [0040]    By creating such map information, the CPU  13  can perform processing, such as search, skip playback, etc., when playing back the encrypted AV stream recorded in the recording section  15 . That is to say, by performing processing, such as search, skip playback, etc., with reference to the map information, the CPU  13  can perform processing faster than performing such processing while decrypting the encrypted AV stream. 
         [0041]    In this regard, a description will be given later of processing for detecting a position of a TS packet including Indicator of a Picture Header (I-Picture) with reference to  FIG. 4 . Also, a description will be given later of processing for detecting a position of a TS packet including a PTS with reference to  FIG. 5 . In this regard, if, for example, deletion of Null Packet (a TS packet whose PID=0x1FFF), etc., is performed in the processing of creating a partial stream, position information after the processing is described in the map information. 
         [0042]    Also, in the copyright-information rewriting processing, for example, if a PMT of an AV stream includes a DTCP (Digital Transmission Content Protection) Descriptor as copyright information, the stream-data processing section  18  rewrites the DTCP descriptor on the basis of the DTCP descriptor thereof. 
         [0043]    For example,  FIG. 2  illustrates an example of a DTCP descriptor described in a PMT. 
         [0044]    For example, as shown on the right side of  FIG. 2 , if a DTCP descriptor is “0x88 04 0F FF FC FC”, it indicates that the AV stream to be processed is a copy-free content. 
         [0045]    Also, for example, if a DTCP descriptor of an AV stream to be processed is “0x88 04 0F FF FE FC”, it indicates that the AV stream to be processed is a copy-once content. When recording a copy-once content into a recording section  15 , the stream-data processing section  18  rewrites the DTCP descriptor to “0x88 04 0F FF FD FC”, which indicates a content of no more copies. 
         [0046]    Here, the stream-data processing section  18  searches the TS packets having a PMT description for “0x88 04 0F FF Fx FC”. Note that x in Fx means “don&#39;t care”. That is to say, this is because it is not clear what is x in Fx at the time of searching. 
         [0047]    By the stream-data processing section  18  supplying the result of the search of “0x88 04 0F FF Fx FC” to the CPU  13 , the CPU  13  can grasp the DTCP Descriptor of the encrypted AV stream without grasping the content (video, audio, etc.) of the encrypted AV stream. And the CPU  13  instructs the stream-data processing section  18  to rewrite “Fx” on the basis of the search result from the stream-data processing section  18 . Also, this allows the CPU  13  to grasp whether there is a DTCP Descriptor in the encrypted AV stream or not. 
         [0048]    In this regard, as described above, when a stream of a content protected by copyright is transmitted through a bus connected to a CPU, there is a constraint that it is necessary to encrypt the stream, and to transmit the steam. However, it is not inhibited to send auxiliary information of a content by plaintext, which is not video and audio data of a PAT, a PMT, etc. Accordingly, only TS packets including PAT, PMT, etc., may be supplied to the CPU  13 , the CPU  13  may rewrite the DTCP descriptor, and then may supply the stream to the stream-data processing section  18 . 
         [0049]    Also, in the time-stamp addition or deletion processing, the stream-data processing section  18  adds a time stamp to a TS packet without a time stamp, and deletes a time stamp from a TS packet with a time stamp. 
         [0050]    A TS packet with a time stamp is 192 bytes long. Thus, for example, when the stream-data processing section  18  deletes a time stamp from a TS packet with a time stamp, the stream-data processing section  18  deletes a beginning four bytes for each 192 bytes of the AV stream. 
         [0051]    Also, when the stream-data processing section  18  adds a time stamp to a TS packet, a PCR (Program clock Reference) is used for a calculation reference of time, and thus the stream-data processing section  18  searches a packet including a PCR, and calculates a time stamp of a 27-MHz clock counter on the basis of the PCR value of the packet. For example, a PCR is data of 42 bits in total, which includes a first 33 bits containing a 90-kHz counter value, and the remaining 9 bits containing a 27-MHz counter value. Thus, for example a time stamp value of 32 bits is expressed by the following expression (1). 
         [0000]      [32-bit Timestamp value]=([beginning 33-bit value of PCR]*300+[remaining 9-bit value]) mod 2̂32   (1) 
         [0052]    In this regard, Blu-ray uses 30-bit time stamp, and thus the 30-bit time stamp is expressed by the following example (2). 
         [0000]      [30-bit Timestamp value]=([beginning 33-bit value of PCR]*300+[remaining 9-bit value]) mod 2̂+  (2) 
         [0053]    Also, for each TS packet between TS packets including a PCR, the time stamp values of the packets before and after are evenly divided on the basis of the time stamp values of the TS packets including a PCR before and after that TS packet, and the divided values are used. For example, the CPU  13  specifies a time stamp value of four bytes to be added to the beginning or each TS packet, and specifies a value for incrementing the time stamp, and thus it is possible to automatically set a time stamp value of each TS packet between TS packets including a PCR. 
         [0054]    In this manner, the stream-data processing section  18  performs the stream separation processing, the partial-stream creation processing, the map-information creation processing, the copyright-information rewriting processing, and the time-stamp addition or deletion processing, etc. 
         [0055]    Next,  FIG. 3  is a flowchart illustrating processing performed on an encrypted AV stream in an encrypted-stream processing circuit  16  in  FIG. 1 . 
         [0056]    For example, when an encrypted AV stream delivered through a network is received by the communication controller  12 , and is supplied to the decryption section  17  of the encrypted-stream processing circuit  16  through the CPU, the processing is started. In step S 11 , the decryption section  17  decrypts the encrypted AV stream supplied through the CPU  13 , and supplies a plaintext AV stream to the stream-data processing section  18 . 
         [0057]    After the processing of step S 11 , the processing proceeds to step S 12 . The stream-data processing section  18  analyzes the AV stream supplied from the decryption section  17 , and obtains a PAT and a PMT. The stream-data processing section  18  separates packets included in the AV stream in accordance with the attribute of the PID described in the PMT, and the processing proceeds to step S 13 . 
         [0058]    In step S 13 , the CPU  13  notifies a PID of a packet necessary to be kept as a partial stream to the stream-data processing section  18 , and the stream-data processing section  18  creates the partial stream in accordance with the PID. That is to say, the stream-data processing section  18  deletes packets that are not necessary to be kept as a partial stream by each packet. 
         [0059]    After the processing of step S 13 , the processing proceeds to step S 14 . The stream-data processing section  18  analyzes the partial stream created by step S 13 , and performs extraction processing ( FIG. 4 ) of the position information of a PTS included in the partial stream. 
         [0060]    In step S 15 , the stream-data processing section  18  analyzes the partial stream created by step S 13 , and performs extraction processing ( FIG. 5 ) of the position information of Indicator of I-Picture included in the partial stream. 
         [0061]    After the processing of step S 15 , the processing proceeds to step S 16 . The stream-data processing section  18  creates map information having a description of the position information of the PTS extracted by the processing of step S 14  and the position information of Indicator of I-Picture extracted by the processing of step S 15 . The stream-data processing section  18  supplies the map information to the CPU  13 , and the processing proceeds to step S 17 . 
         [0062]    In step S 17 , the stream-data processing section  18  performs processing for rewriting DTCP Descriptor on the basis of the DTCP Descriptor described in the PMT obtained by step S 12 . For example, if a DTCP Descriptor meaning “copy once” is described in the PMT, the stream-data processing section  18  performs processing for rewriting the DTCP Descriptor to mean “No More Copies”. 
         [0063]    After the processing of step S 17 , the processing proceeds to step S 18 . The stream-data processing section  18  calculates a value which makes a time interval of each packet equal on the basis of an interval of the PCR included in the partial stream under the control of the CPU  13 , and adds the value to each packet as a time stamp. Alternatively, the stream-data processing section  18  deletes a time stamp already added to each packet under the control of the CPU  13 . 
         [0064]    After the processing of step S 18 , the processing proceeds to step S 19 . The stream-data processing section  18  supplies the AV stream, which has been subjected to the processing from step S 12  to step S 18  to the encryption section  19 . The encryption section  19  encrypts the AV stream from the stream-data processing section  18 , and supplies the encrypted AV stream to the CPU  13 . 
         [0065]    As described above, in the content processing apparatus  11 , the encrypted-stream processing circuit  16 , which is connected through the CPU  13  and a bus, decrypts an encrypted AV stream, performs predetermined processing on the AV stream, encrypts the AV stream after the processing, and then outputs the stream. Thus, a plaintext AV stream is not transmitted or received through the bus. Also, it is possible to perform processing on the encrypted AV stream at a higher speed than the CPU  13  performing processing on the encrypted AV stream by software. 
         [0066]    In this manner, in the content processing apparatus  11 , even if the CPU  13  does not grasp a content of an encrypted AV stream, it is possible to process the encrypted AV stream properly. 
         [0067]    Next,  FIG. 4  is a flowchart illustrating processing for extracting position information of PTS in step S 14  in  FIG. 3 . 
         [0068]    The stream-data processing section  18  processes a bit string included in the AV stream supplied from the decryption section  17  from the beginning bit, and checks each 8 bits whether the value matches 0x000001 in step S 21 . Here, 0x000001 is a bit string included in the beginning of an AV stream. 
         [0069]    After the processing of step S 21 , the processing proceeds to step S 22 . The stream-data processing section  18  determines whether the bit string matches 0x000001 as a result of the check in step S 21 . 
         [0070]    In step S 22 , if the stream-data processing section  18  determines that the bit string does not match 0x000001 , the processing returns to step S 21 , and the same processing is repeated. On the other hand, if the stream-data processing section  18  determines that the bit string matches 0x000001 , the processing proceeds to step S 23 , and the stream-data processing section  18  checks the next 8 bits. 
         [0071]    After the processing of step S 23 , the processing proceeds to step S 24 . The stream-data processing section  18  determines whether the 8 bits match a numeric value between 0xC0 and 0xEF as a result of the check in step S 23 . 
         [0072]    In step S 24 , if the stream-data processing section  18  determines that the 8-bit string does not have a value between 0xC0 to 0xEF, the processing returns to step S 21 , and the same processing is repeated. On the other hand, if the stream-data processing section  18  determines that the 8-bit string has a value between 0xC0 to 0xEF, the processing proceeds to step S 25 , and the stream-data processing section  18  checks the subsequent 2 bits to the next 16 bits. 
         [0073]    After the processing of step S 25 , the processing proceeds to step S 26 . The stream-data processing section  18  determines whether the 2 bits match 0b10 as a result of the check in step S 25 . 
         [0074]    In step S 26 , if the stream-data processing section  18  determines that the 2-bit string does not have a value of 0b10, the processing returns to step S 21 , and the same processing is repeated. On the other hand, if the stream-data processing section  18  determines that the 2-bit string has a value 0b10, the processing proceeds to step S 27 , and the stream-data processing section  18  skips 6 bits, and checks the subsequent 2 bits. 
         [0075]    After the processing of step S 27 , the processing proceeds to step S 28 . The stream-data processing section  18  determines whether the 2 bits match 0b01 or 0b11 as a result of the check in step S 27 . 
         [0076]    In step S 28 , if the stream-data processing section  18  determines that the 2-bit string does not have a value of 0b01 or 0b11, the processing returns to step S 21 , and the same processing is repeated. On the other hand, if the stream-data processing section  18  determines that the 2-bit string has a value either 0b01 or 0b11, the processing proceeds to step S 29 , and the stream-data processing section  18  skips the next 14 bits, and checks the subsequent 4 bits. 
         [0077]    After the processing of step S 29 , the processing proceeds to step S 30 . The stream-data processing section  18  determines whether the 4 bits match 0b0010 as a result of the check in step S 30 . 
         [0078]    In step S 30 , if the stream-data processing section  18  determines that the 4-bit string does not have a value of 0b0010, the processing returns to step S 21 , and the same processing is repeated. On the other hand, if the stream-data processing section  18  determines that the 4-bit string has a value 0b0010, the processing proceeds to step S 31 . 
         [0079]    In step S 31 , the stream-data processing section  18  generates position information indicating a position of a PTS included in the AV stream to be processed. Specifically, the stream-data processing section  18  extracts 3 bits next to the 4 bits determined to have a value of 0b0010 in step S 30  as PTS [32 to 30], skips the next 1 bit, extracts the next 15 bits as PTS [29 to 15] , skips the next 1 bit, extracts the next 15 bits as PTS [14 to 0] , and uses the PTS [32 to 0] as position information. 
         [0080]    After the processing of step S 31 , the processing of extracting position information of PTS is completed. 
         [0081]      FIG. 5  is a flowchart illustrating processing for extracting position information of Indicator of I-Picture in step S 15  in  FIG. 3 . 
         [0082]    The stream-data processing section  18  processes a bit string included in the AV stream supplied from the decryption section  17  from the beginning bit, and checks each 8 bits whether the value matches 0x000001 in step S 41 . 
         [0083]    After the processing of step S 41 , the processing proceeds to step S 42 . The stream-data processing section  18  determines whether the bit string matches 0x000001 as a result of the check in step S 41 . 
         [0084]    In step S 42 , if the stream-data processing section  18  determines that the bit string does not match 0x000001 , the processing returns to step S 41 , and the same processing is repeated. On the other hand, if the stream-data processing section  18  determines that the bit string matches 0x000001 , the processing proceeds to step S 43 , and the stream-data processing section  18  checks the next 8 bits. 
         [0085]    After the processing of step S 43 , the processing proceeds to step S 44 . The stream-data processing section  18  determines whether the 8 bits match 0x00 as a result of the check in step S 43 . 
         [0086]    In step S 44 , if the stream-data processing section  18  determines that the 8-bit string does not match 0x00, the processing returns to step S 41 , and the same processing is repeated. On the other hand, if the stream-data processing section  18  determines that the 8-bit string matches 0x00, the processing proceeds to step S 45 , and the stream-data processing section  18  checks the subsequent 3 bits to the next 10 bits. 
         [0087]    After the processing of step S 45 , the processing proceeds to step S 46 . The stream-data processing section  18  determines whether the 3 bits match 0b001 as a result of the check in step S 45 . 
         [0088]    In step S 46 , if the stream-data processing section  18  determines that the  3 -bit string does not have a value of 0b001, the processing returns to step S 41 , and the same processing is repeated. On the other hand, if the stream-data processing section  18  determines that the 3-bit string has a value 0b001, the processing proceeds to step S 47 . 
         [0089]    In step S 47 , the stream-data processing section  18  generates the position information of Indicator of I-Picture. For example, the stream-data processing section  18  counts the number of packets after the start of the processing, and generates the number of counts of packets at which 3-bit string has a value 0b001 in step S 46  as position information. 
         [0090]    After the processing of step S 47 , the processing proceeds to step S 48 . The stream-data processing section  18  determines whether the stream to be processed has been completed. For example, if supplying a stream from the decryption section  17  has been completed, and the stream-data processing section  18  has checked all the bits, the stream-data processing section  18  determines that the stream has been completed. 
         [0091]    In step S 48 , if the stream-data processing section  18  determines that the stream to be processed has not been completed, the processing returns to step S 41 , and the same processing is repeated. On the other hand, if the stream-data processing section  18  determines that the stream to be processed has been completed, the processing of extracting the position information of Indicator of I-Picture is terminated. 
         [0092]    In this regard, in the content processing apparatus  11  in  FIG. 1 , an encrypted AV stream received by the communication controller  12  is supplied to the decryption section  17  of the encrypted-stream processing circuit  16  through the CPU  13 . Also, in the content processing apparatus  11 , an encrypted AV stream encrypted by the encryption section  19  is supplied to the disk controller  14  through the CPU  13 . However, the content processing apparatus  11  may have a configuration other than such a configuration. 
         [0093]      FIG. 6  is a block diagram illustrating an example of a configuration of a content processing apparatus  11  according to another embodiment. In the content processing apparatus  11  in  FIG. 6 , the communication controller  12  is connected to the decryption section  17  through a bus. When the communication controller  12  receives an encrypted AV stream, the communication controller  12  directly supplies the AV stream to the decryption section  17 . 
         [0094]    Also,  FIG. 7  is a block diagram illustrating an example of a configuration of a content processing apparatus  11  according to still another embodiment. In the content processing apparatus  11  in  FIG. 7 , an encryption section  19  is connected to a disk controller  14  through a bus. The encryption section  19  directly supplies the encrypted AV stream to the disk controller  14 . 
         [0095]    Also,  FIG. 8  is a block diagram illustrating an example of a configuration of a content processing apparatus  11  according to still another embodiment. In the content processing apparatus  11  in  FIG. 8 , the communication controller  12  is connected to the decryption section  17  through a bus, and an encryption section  19  is connected to a disk controller  14  through a bus. When the communication controller  12  receives an encrypted AV stream, the communication controller  12  directly supplies the AV stream to the decryption section  17 , and the encryption section  19  directly supplies the AV stream to the disk controller  14 . 
         [0096]    As shown in  FIGS. 6 to 8 , in the content processing apparatus  11 , an encrypted AV stream may be input from and output to the encrypted-stream processing circuit  16  in any way as far as processing of the encrypted AV stream is performed by the encrypted-stream processing circuit  16  outside of the CPU  13 . 
         [0097]    In this regard, in the present embodiment, a description has been given of the case where the content processing apparatus  11  receives an AV stream delivered through a network, and records the stream. However, for example, the content processing apparatus  11  can transmit (deliver) an AV stream recorded in the recording section  15 . In this case, an AV stream recorded in the recording section  15  is read by the disk controller  14 , and is supplied to the encrypted-stream processing circuit  16  through the CPU  13 . The encrypted-stream processing circuit  16  performs, for example rewriting processing of a DTCP Descriptor, processing of deleting a time stamp, and transmits the stream through the CPU  13  and the communication controller  12 . 
         [0098]    In this regard, each processing described with reference to the above-described flowcharts is not necessarily processed in time series in accordance with the described sequence, but includes processing to be performed in parallel or individually (for example, parallel processing or object processing). 
         [0099]    In this regard, an embodiment of the present invention is not limited to the above-described embodiments. It is possible to make various changes without departing from the gist of the present invention. 
         [0100]    The present application contains subject matter related to that disclosed in Japanese Priority Patent Application JP 2008-101267 filed in the Japan Patent Office on Apr. 8, 2008, the entire content of which is hereby incorporated by reference. 
         [0101]    It should be understood by those skilled in the art that various modifications, combinations, sub-combinations and alterations may occur depending on design requirements and other factors insofar as they are within the scope of the appended claims or the equivalents thereof.