WO2007116970A1 - データ暗号化方法、暗号化データ再生方法 - Google Patents

データ暗号化方法、暗号化データ再生方法 Download PDF

Info

Publication number
WO2007116970A1
WO2007116970A1 PCT/JP2007/057770 JP2007057770W WO2007116970A1 WO 2007116970 A1 WO2007116970 A1 WO 2007116970A1 JP 2007057770 W JP2007057770 W JP 2007057770W WO 2007116970 A1 WO2007116970 A1 WO 2007116970A1
Authority
WO
WIPO (PCT)
Prior art keywords
data
header
frame
additional information
encrypted
Prior art date
Application number
PCT/JP2007/057770
Other languages
English (en)
French (fr)
Inventor
Makoto Fujiwara
Original Assignee
Panasonic Corporation
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Panasonic Corporation filed Critical Panasonic Corporation
Priority to JP2007544669A priority Critical patent/JPWO2007116970A1/ja
Priority to US11/915,788 priority patent/US20090316884A1/en
Publication of WO2007116970A1 publication Critical patent/WO2007116970A1/ja

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/0618Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation
    • H04L9/0637Modes of operation, e.g. cipher block chaining [CBC], electronic codebook [ECB] or Galois/counter mode [GCM]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/065Encryption by serially and continuously modifying data stream elements, e.g. stream cipher systems, RC4, SEAL or A5/3
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/08Randomization, e.g. dummy operations or using noise
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/12Details relating to cryptographic hardware or logic circuitry

Definitions

  • the present invention relates to a device that encrypts content data and stores it in a target such as a memory card, and a device that decrypts and plays back encrypted content stored in the target.
  • FIG. 22 is a block diagram of a conventional device.
  • the configuration shown in FIG. 22 includes encryption data generation / reproduction device 201 that performs encryption / decryption of AV data, a first CPU 102 that controls the entire system, and a system memory 103 that includes DRAM and the like. And an external bus 104 through which data is exchanged between these components.
  • the encrypted data generation / reproduction device 201 reproduces the encrypted AV data stored in the target 105 (storage medium such as an SD card or a memory stick) connected to the outside.
  • the downloaded AV data is also encrypted by the external force and stored in the target 105.
  • the encrypted data generation / reproduction device 201 includes a control unit 106 (second CPU) that performs internal control, an internal bus 107 that is used for data exchange between the units, and an external bus 104. Controlled by the host IF unit 108 and the control unit 106 An encryption / decryption processing unit 109 for encrypting and decrypting confidential information including AV data, and an input / output unit 110 for inputting / outputting data between the encryption / decryption processing unit 109 and the internal bus 107; Encrypted data generation ⁇ Internal memory 111 that temporarily stores data processed in the playback device 201, target IF unit 112 that controls data exchange with the target 105, and decoding the decrypted data And an audio processor 113 for playback.
  • a control unit 106 second CPU
  • AV data that has also been downloaded by a server and the like through an external IF (not shown), or AV data obtained by decrypting encrypted data stored in the target 105 is temporarily stored in the system memory 103.
  • information that defines the data length of the cipher chain unit which is an encryption unit in the chain cipher method, is set in the system memory 103 as cipher chain unit information.
  • header information that defines the frame data length of the AV data, the data length of the entire AV data, information that specifies the encoding method, and the like are set in the system memory 103 as AV data management information.
  • the data length of the cipher chain unit and the frame data length can be arbitrarily selected.
  • the encrypted data generation and playback device 201 encrypts the downloaded AV data and stores it in the target 105 in accordance with the encryption chain unit information under the control of the first CPU 102.
  • the AV data stored in the target 105 is expanded in the system memory 103 while being decoded according to the encryption chain unit information.
  • the decoded AV data is decoded and reproduced according to the AV data management information while being read from the system memory 103.
  • AV data generation / reproduction device 201 serving as a host and the target 105 (Sl l).
  • the authentication process is performed using an authentication key stored in advance in the encrypted data generation / reproduction device 201 and the target 105.
  • a content key is generated as a key for encrypting AV data.
  • a cipher that is a unit to be encrypted by the chain encryption method The chain unit is read from the system memory 103 (SI 2).
  • AV data (frame data) for each frame to be encrypted is sequentially input (S13).
  • the input frame data is sequentially encrypted by the chain encryption method until it becomes the data END (S14, S15).
  • the encrypted AV data is sequentially expanded in the system memory 103.
  • Encrypted data generating / reproducing apparatus 201 performs decryption according to the cipher chaining unit information stored in system memory 103 (S24, S25). First, in order to decrypt the first encrypted data, the data length of the cipher chain unit is set. Then, the decryption is performed sequentially, and the decrypted AV data (chained data in FIG. 24) is sequentially expanded in the system memory 103. When the decryption of one cipher key data is completed, the data length of the cipher chain unit is set for the next decryption. Decrypt all encrypted data while repeating the above.
  • AV data management information associated with the AV data body and stored in advance in the target 105 is also expanded in the system memory 103 in the same manner. Therefore, the decrypted AV data is divided and expanded on the system memory 103 in the form of a header for each frame data and a plurality of decrypted key data arranged in a lump. For this reason, decoding playback cannot be performed as it is. Therefore, the first CPU 102 converts and distributes the header information so that the corresponding frame data is stored after the header for each frame data. Since the AV data to which the header has been distributed is in a form that can be decoded and reproduced, it is input from the system memory 103 to the encrypted data generating / reproducing apparatus 201 and decoded and reproduced (S26).
  • Patent Document 1 Japanese Patent Laid-Open No. 2001-222858
  • the header of each frame data is collectively stored in the AV data management information.
  • the frame data delimiter cannot be known.
  • the header information included in the AV data management information cannot be allocated as the header for each frame data unless all the encrypted AV data is decrypted and once expanded in the memory. .
  • the system memory 103 is often configured as DRAM connected to the outside of the chip and has a large capacity.
  • the built-in memory 111 in the encrypted data generating / reproducing apparatus 101 is often composed of small-scale SRAM. For this reason, the system memory 103 must be used to decrypt all the encrypted data and expand it in the memory.
  • decoding and reproduction of encrypted AV data cannot be executed as a closed process in the encrypted data generation / reproduction device 101.
  • the encrypted data generation / playback device is configured as a mobile terminal (mobile phone, PDA, etc.)
  • the above-mentioned conventional technology is limited to the number of AV data that can be played back without charging Will occur.
  • the present invention has been made in view of the above-described problem, and the data encrypted by the chain encryption method is closed to a device having only a small number of built-in memories without using a system memory. It is intended to be reproducible.
  • the present invention relates to encryption target data including N (N is an integer of 2 or more) frame data and management data for managing the N frame data.
  • N is an integer of 2 or more
  • the additional information header corresponding to the (n + 1) th frame data is associated with the cipher key data where the boundary between the (n + 1) th frame data exists When Moni, the biasing Caro information header, in which a step (c) to be added to a predetermined position in the plurality of encryption I spoon data.
  • encryption target data including N (N is an integer of 2 or more) frame data is encrypted by a chain encryption method using an encryption chain unit having an arbitrary data length.
  • the reproduction target data includes a plurality of encrypted data and N frame headers respectively corresponding to the N frame data.
  • N additional header information headers, and the additional information header including the (n + 1) (n is an integer greater than or equal to 1 and less than N) th frame header includes the nth and (n The (n + 1) th frame data boundary is associated with the encrypted data and added to a predetermined position in the plurality of encrypted data.
  • Step (a) Separate information header
  • step (b) for decrypting the encrypted data read from the reproduction target data using information on the data length of the cipher chain unit, and the decrypted data, By performing separation and concatenation processing using the information about the frame length stored in the frame header included in the separated additional information header,
  • encryption target data including N (N is an integer of 2 or more) frame data and management data for managing the N frame data has an arbitrary data length.
  • N is an integer of 2 or more
  • management data for managing the N frame data has an arbitrary data length.
  • an encrypted data generation apparatus that encrypts data by a chain encryption method using the cipher chaining unit, an additional information header corresponding to each frame data and including a frame header of the frame data is generated from the management data.
  • a header generation unit an encryption processing unit that encrypts each frame data by a chained encryption method, and generates a series of a plurality of encryption key data, and n (n Is an integer greater than or equal to 1 and less than N)
  • the additional information header corresponding to the (n + 1) th frame data is To together Placing response, the additional information header, in which a header adding unit for adding a predetermined position in the plurality of encryption Ihideta.
  • data to be encrypted including N (N is an integer of 2 or more) frame data is encrypted by a chain encryption method using an encryption chain unit having an arbitrary data length.
  • the reproduction target data includes a plurality of encrypted data and N frame headers respectively corresponding to the N frame data, N additional header information headers, and the additional information header including the (n + 1) (n is an integer greater than or equal to 1 and less than N) th frame header includes the nth and (n The (n + 1) th frame data boundary is associated with the encrypted data and added to a predetermined position in the plurality of encrypted data.
  • Separate information header A header separation unit, a decryption processing unit for decrypting the encrypted data read from the reproduction target data using information on a data length of a cipher chain unit, and the decrypted data Frame data for generating the frame data by performing separation / concatenation processing using information on the frame length stored in the frame header included in the additional information header separated by the header separation unit A generation unit, and a header-attached card unit that adds the frame header to the head of the frame data. It is provided.
  • encryption target data including N (N is an integer of 2 or more) frame data is encrypted by a chain encryption method using an encryption chain unit having an arbitrary data length.
  • the data structure includes a plurality of encrypted data and N additional information headers each including N frame headers respectively corresponding to the N frame data, and (n + 1) ( (where n is an integer greater than or equal to 1 and less than N)
  • the additional information header including a frame header is encrypted data having a boundary between the frame data n and the frame (n + 1) among the plurality of pieces of encrypted data. Are associated with each other and added to a predetermined position in the plurality of encrypted data.
  • the encrypted data is decrypted! /
  • the frame data force with the frame header at the head is sequentially generated. Therefore, after the generated frame data is stored in the built-in memory, it can be decoded and reproduced as it is in the encrypted data generation / reproduction device. Therefore, since it is possible to sequentially reproduce frame data without decrypting a large amount of encrypted content as in the past, it becomes possible to perform processing without interposing any system memory. .
  • the header allocation is performed as a closed process in the encryption data generation 'reproduction device, there is no burden on the CPU that controls the system. Therefore, the power consumption can be significantly reduced.
  • FIG. 1 is an overall configuration diagram of an information processing system according to each embodiment of the present invention.
  • FIG. 2 is a conceptual diagram of cipher key data generation in the first embodiment.
  • FIG. 3 is a flowchart showing encryption key data generation processing in the first embodiment.
  • FIG. 4 is a diagram showing a data storage state in the target.
  • FIG. 5 is a schematic diagram of a circuit operation in generating cipher key data.
  • FIG. 6 is a conceptual diagram of cipher key data reproduction in the first embodiment.
  • FIG. 7 is a flowchart showing encryption data reproduction processing in the first embodiment. It is.
  • FIG. 8 is a schematic diagram of circuit operation in cipher key data reproduction.
  • FIG. 9 is a conceptual diagram of cipher key data reproduction in a modified example of the first embodiment.
  • FIG. 10 is a conceptual diagram of encrypted data generation in the second embodiment.
  • FIG. 11 is a flowchart showing encryption key data generation processing in the second embodiment.
  • FIG. 12 is a conceptual diagram of reproduction of encrypted data in the second embodiment.
  • FIG. 13 is a flowchart showing encryption data reproduction processing in the second embodiment.
  • FIG. 14 is a conceptual diagram of encrypted data generation in the third embodiment.
  • FIG. 15 is a flow chart showing encryption key data generation processing in the third embodiment.
  • FIG. 16 is a conceptual diagram of reproduction of encrypted data in the third embodiment.
  • FIG. 17 is a flowchart showing encryption data reproduction processing in the third embodiment.
  • FIG. 18 is a conceptual diagram of encrypted data generation in the fourth embodiment.
  • FIG. 19 is a flow chart showing encryption key data generation processing in the fourth embodiment.
  • FIG. 20 is a conceptual diagram of reproduction of encrypted data in the fourth embodiment.
  • FIG. 21 is a flowchart showing encryption data reproduction processing in the fourth embodiment.
  • FIG. 22 is an overall configuration diagram of a conventional information processing system.
  • FIG. 23 is a flowchart showing a conventional encrypted data generation process.
  • FIG. 24 is a flowchart showing a conventional encrypted data reproduction process.
  • FIG. 1 is a diagram showing an overall configuration of an information processing system including an encrypted data generation / reproduction device 101 according to the first embodiment of the present invention and a device operating in association therewith.
  • the encrypted data generating / reproducing device 101 encrypts, decrypts and reproduces AV data.
  • the first CPU 102 controls the entire information processing system, and the system memory 103 is composed of, for example, DRAM.
  • the encrypted data generation / reproduction device 101 is connected to the first CPU 102 and the system memory 103 via the external bus 104, and operates while exchanging data with them. Then, the encrypted data generation / playback apparatus 101 can encrypt the AV data downloaded from the outside and store it in the target 105 as a storage means connected to the outside. Alternatively, the encrypted AV data stored in the target 105 can be decrypted and reproduced.
  • the target 105 is composed of a storage medium such as an SD card or a memory stick.
  • AV data for each frame is referred to as frame data.
  • Encrypted data generation 'reproducing device 101 includes a control unit 106 (second CPU) that performs control in encrypted data generating / reproducing device 101 and each unit in encrypted data generating and reproducing device 101.
  • Encryption of confidential information including AV data controlled by the control unit 106 and the host IF unit 108 that controls the exchange of data between the internal bus 107 and the external bus 104 that are used to exchange data between each other Encryption / decryption processing unit 109 for performing encryption and decryption, input / output unit 110 for inputting / outputting data between the confidential information processing unit 119 including the encryption / decryption processing unit 109 and the internal node 107, and encryption Data generation ⁇ Data processed in the playback device 101 is temporarily stored
  • a built-in memory 111 made up of, for example, SRAM, a target IF unit 112 that controls data exchange with the target 105, a decoding / audio processing unit 113 that decodes and reproduces the decoded data, and Talk with
  • system memory 103 does not necessarily need to be configured with DRAM! /, But DRAM is optimally used as a high-speed and large-capacity memory.
  • the built-in memory 111 is not necessarily SR
  • the confidential information processing unit 119 receives the frame length 'cipher chain analysis unit 114, header conversion unit 115, frame length analysis in addition to the encryption' decryption processing unit 109 and the input / output unit 110. It further includes a header standby unit 116, a data conversion unit 117, and a header analysis / addition unit 118.
  • the frame length 'cipher chain analysis unit 114 sorts the AV data management information stored in the system memory 103 into the header for each frame. Based on this, the length of each frame is determined, and the length of each cipher chain unit is determined from the cipher chain unit information stored in the system memory 103.
  • the header conversion unit 115 converts the header embedded in the encrypted content in the decryption key into an audio header.
  • the frame length analysis' header standby unit 116 analyzes the frame length during decoding and temporarily holds the audio header converted by the header conversion unit 115.
  • the data conversion unit 117 rearranges the data so that the audio header is arranged at the head of the corresponding frame data.
  • the header analysis 'adding unit 118 adds the header of each frame extracted and distributed by the frame length' cipher chain analysis unit 114 to the head of the encrypted data having a boundary with the previous frame. Also, in the case of decryption, the encryption key content also separates the header.
  • the frame length / cipher chain analysis unit 114 corresponds to the header generation unit
  • the encryption / decryption The processing unit 109 corresponds to an encryption processing unit
  • the header analysis / addition unit 118 corresponds to a header-added calorie unit.
  • the header analysis / addition unit 118 is added to the header separation unit.
  • the encryption * decryption processing unit 109 corresponds to the decryption processing unit
  • the data conversion unit 117 and the frame length analysis header standby unit 116 correspond to the frame data generation unit
  • the header analysis / addition unit 118 corresponds to the header addition unit
  • the header conversion unit 115 corresponds to the header conversion unit.
  • the encrypted data generation / reproduction device 101 is normally configured as an LSI. In this case, it can be configured as a single chip including the first CPU or as separate chips. If a DRAM-mixed process is used, it is possible to use one chip including the system memory 103. Even if the DRAM and the first CPU are configured as a single LSI, the power of the built-in DRAM section can be reduced by configuring the DRAM and the first CPU so that they do not operate. Similarly, there is an effect of reducing power consumption.
  • the frame length 'cipher chain analysis unit 114, header conversion unit 115, frame length analysis' header standby unit 116, data conversion unit 117, header analysis' addition unit 118, which are added in the present embodiment, are hardware It is desirable to be configured as wear. This makes it possible to reduce power consumption.
  • FIG. 2 (a) is a diagram showing a certain file structure in the MP4 format as an example of AV data as encryption target data handled in the present embodiment.
  • MP4 can have a different file structure.
  • ft yp and moov compose AV data management information as management data!
  • ftyp is information indicating file compatibility.
  • AV data is encoded in AAC, AAC +, AAC ++, etc. .
  • mo ov includes information such as the frame length of each frame data of the AV data.
  • the frame header of each frame data is stored in a lump.
  • the body of AV data is configured as mdat. That is, frame data 1, frame data 2,...
  • the frame length / cipher chain analysis unit 114 converts headers collectively arranged in moov as necessary, and distributes them as additional information headers for each frame data.
  • the additional information header includes a frame header representing information on the frame data.
  • the encryption / decryption processing unit 109 encrypts each frame data collectively arranged in mdat by the chain encryption method based on the encryption chain unit information stored in the system memory 103. As a result, a series of a plurality of pieces of cipher data consisting of a cipher chain unit having an arbitrary data length is generated.
  • FIG. 2 (b) is a diagram conceptually showing a method of adding an additional information header in the present embodiment.
  • the header analysis / addition unit 118 adds an additional information header corresponding to each frame data to a series of encrypted data.
  • the additional information header corresponding to the (n + 1) th frame data is associated with the encryption key data where the boundary between the nth and (n + 1) th frame data exists, and A Calo information header is added to the head of the encrypted data.
  • the additional information header of frame data 1 is inserted at the beginning of encrypted data 1 that is the beginning of all encrypted data. Since the boundary between the frame data 1 and the frame data 2 exists in the encryption key data 2, the additional information header of the frame data 2 is inserted at the head of the encryption key data 2. Since there is no frame boundary in the encrypted data 3, nothing is inserted at the beginning of the encrypted data 3. Since the encrypted data 4 has a boundary between the frame data 2 and the frame data 3, the additional information header of the frame data 3 is inserted at the head thereof.
  • encrypted content including encrypted key data and an additional information header is generated.
  • the length of the additional information header is a fixed length.
  • the frame header included in the additional information header includes at least information on the data length of the corresponding frame data.
  • FIG. 3 is a flowchart of a process for encrypting AV data downloaded from an external source and storing it in the target 105, and is for generating encrypted data as shown in Fig. 2 (b). .
  • dotted lines represent data processing.
  • Encrypted data generation ⁇ Authentication is performed between the playback device 101 and the target 105 (S 301). The authentication process is performed using an authentication key stored in advance in the encrypted data generation and playback device 101 and target 105. After successful authentication, a content key is generated as a key for encrypting AV data.
  • the cipher chaining unit which becomes a unit to be encrypted by the chain cipher method, is set in the cipher / decryption processing unit 109 (S302). .
  • AV data to be encrypted is input (S303).
  • the frame length / cipher chain analysis unit 114 generates an additional information header for the frame data 1 to store the internal memory. 111 boxes are stored (S305).
  • This additional information header includes the frame length for frame data 1.
  • the input AV data is expanded in the built-in memory 111 while being sequentially encrypted by the chain encryption method until the cipher chain unit is completed (S307).
  • the header analysis'-added calor part 118 includes the frame boundary in cipher key data 1 and It is determined whether or not (S309).
  • the first encrypted data 1 does not include a frame boundary.
  • encryption key data 1 is the first data.
  • the header analysis / addition unit 118 stores the additional information header for the frame data 1 stored in the internal memory 111 at the head (S310), and expands the encrypted data 1 into the system memory 103. Redo (S311).
  • the second cipher chaining unit is sequentially encrypted.
  • the frame length 'cryptographic chain analysis unit 114 force detects the frame boundary (Yes in S304), generates an attached calo information header for the frame data 2 and stores it in the built-in memory 111.
  • the header analysis / addition unit 118 determines whether or not the encrypted data 2 includes a frame boundary (S309). Since the frame boundary is included here, the header analysis / addition unit 118 adds the additional information header for the frame data 2 to the head (S310), and expands the encrypted data data 2 into the system memory 103.
  • the encryption of the third cipher chaining unit is sequentially performed. Since the frame boundary is not included here, the encryption data 3 is expanded as it is into the system memory 103 when the encryption of the third cipher chain unit is completed.
  • the cipher chaining unit is set again and the encryption of the fourth cipher chaining unit is performed sequentially.
  • the frame length 'cipher chain analysis unit 114 detects the frame boundary, generates an additional information header for frame data 3, and stores it in the internal memory 111. Store.
  • the header analysis' adding unit 118 adds the additional information header for the frame data 3 to the head, and then sends the cipher key data 4 to the system memory 103. Expand again.
  • FIG. 4 shows a data storage state in the target 105 after the process of FIG. 3 is completed.
  • the storage area of the target 105 is divided into a system area 401, a protection area 402, and a normal area 403.
  • the system area 401 is an area set at the time of manufacture, and cannot be rewritten after it has been manufactured.
  • This system area 401 stores an encryption key required for authentication with the encryption data generation “playback apparatus 101”.
  • the protected area 402 is an area that can be accessed only when the authentication is successful, and stores a content key that is a key for encryption / decryption of encrypted content, encryption chain unit information, and the like.
  • the normal area 4003 is an area that can be freely accessed, and stores the encrypted content encrypted by the above-described method. Since the protected area 402 needs to be limited to a few percent or less of the entire storage area, it is preferable to store the cipher chaining unit information in the normal area 403. In some cases.
  • the generated encrypted content is developed in the system memory 103 and then written to the target 105 after completion of the encryption process.
  • FIG. 5 is a circuit operation schematic diagram describing the above-described operation as a data flow between circuits.
  • the frame length 'cipher chain analysis unit 114 reads AV data management information and cipher chain unit information stored in the system memory 103. Then, an encryption chain unit is set in the encryption / decryption processing unit 109, and an additional information header including a frame header is generated and output to the header analysis / addition unit 118.
  • the frame data is sequentially input from the system memory 103 to the encryption data generation / reproduction device 101, and is encrypted by the encryption / decryption processing unit 109 by the chain encryption method.
  • the encrypted data resulting from the encryption is output to the header analysis / addition unit 118.
  • the header analysis / addition unit 118 adds an additional information header for each frame to the head of the appropriate encryption data having a frame boundary as described above, and the system memory 103 as the encryption data with the additional information header. Expand to. When all encryption is completed, the encrypted data with the additional information header is stored as encrypted content in the target 105 from the system memory 103 via the target IF unit 112.
  • the encrypted data with the additional information header is expanded in the built-in memory 111
  • the encrypted data is transferred from the built-in memory 111 to the target IF unit 112 every time the cipher chain unit cipher is completed. And stored in the target 105.
  • the cipher chaining unit information is also stored in the target 105.
  • the encrypted content generated by the above process includes an additional information header for the (n + 1) th frame data at the beginning of the encrypted data where the boundary between the nth and (n + 1) th frame data exists. It becomes a data structure to which is added. According to this data structure, as will be described later, decryption and playback capability of encrypted content. As the closed processing in the raw device 101, it can be executed without using the system memory 103, and the power consumption is greatly reduced.
  • the encrypted content as data to be played back has an additional information header for the n + 1st frame data at the beginning of the encrypted data where the boundary between the nth and n + 1st frame data exists. It has an added data structure.
  • the control unit 106 sets the data length of the cipher chain unit related to each encrypted data in the encryption / decryption processing unit 109 based on the cipher chain unit information stored in the target 105.
  • the header analysis / addition unit 118 calculates the position of the additional information header from the information on the data length of the cipher chain unit and the information on the data length of the frame data included in each additional information header, and Content power Separate additional information header.
  • the header conversion unit 115 converts the additional information header into an audio header (ADTS header: Audio Data Transport Stream) as a playback frame header.
  • ADTS header Audio Data Transport Stream
  • conversion to an audio header means that, for example, if the ftyp in MP4 indicates AAC +, the AAC header can be played back only in the AAC AD TS format and audio data can be played back on the device.
  • the process of converting to is shown.
  • the converted header is temporarily held in the frame length analysis' header waiting unit 116. Note that header conversion may not be necessary. In this case, the frame header included in the additional information header is used as it is.
  • the cipher / decryption processing unit 109 sequentially decrypts the cipher key data using the information on the data length of the cipher chain unit, and expands the cipher key data in the built-in memory 111.
  • the frame length analysis' header waiting unit 116 detects the frame boundary by the information power related to the frame length stored in the additional information header, and waits when the decryption of the encrypted data having the frame boundary is completed. The header thus obtained and the decrypted data expanded in the built-in memory 111 are output to the data conversion unit 117.
  • the data converter 117 uses information on the frame length for the decoded data.
  • the frame data is generated by performing the separation and concatenation process. Then, the converted header is attached to the head of the frame data and output to the decoding / audio processing unit 113.
  • the output data has an audio header for each frame data and conforms to the audio format (AAC). Therefore, the first CPU 102 and the system memory 103 can be reproduced as they are without requiring them.
  • the encryption data generation that is the host 'authentication between the reproduction device 101 and the target 105 is performed.
  • Perform (S701).
  • the authentication process is performed using an authentication key stored in advance in the encrypted data generation / reproduction device 101 and the target 105.
  • a content key is generated as a key for decrypting the encrypted content.
  • control unit 106 refers to the cipher chaining unit information stored in the protection area 402 of the target 105, and determines the data length of the cipher chaining unit as a unit to be encrypted by the chain cipher method.
  • the decryption processing unit 109 is set (S702).
  • the header analysis / addition unit 118 determines whether or not the additional information header is included at the beginning of the encrypted data, and separates the additional information header if it is included. (S703). First, it is determined that the additional information header is always included at the beginning of the first encrypted data 1.
  • the presence / absence of the additional information header is determined from the data length of the cipher chaining unit and the frame length information included in the additional information header previously separated. .
  • the separated additional information header is converted into an audio header by the header conversion unit 115 (S704), and is waited by the frame length analysis / header waiting unit 116 (S705).
  • the encrypted data is read from the target 105 to the encrypted data generation / reproduction device 101 (S706), and the encrypted data is decrypted.
  • the data is decrypted by the physical unit 109 (S707).
  • the decrypted data is sequentially expanded in the built-in memory 111.
  • the frame length analysis / header waiting unit 116 performs frame processing based on the frame length information included in the additional information header. It is determined whether or not the system boundary is included in the encryption key data (S709). If a frame boundary is included, the data conversion unit 117 waits for V in the frame length analysis / header waiting unit 116, reads the audio header, and temporarily stores it in the built-in memory 111. The decoded data is read, and the data is rearranged so that the audio header is added to the head of the new frame data (S710). On the other hand, if a frame boundary is included! /,! /, The data length of the next cipher chain unit is set in the encryption / decryption processing unit 109 (S702), and a series of processing is repeated.
  • the frame data generated by the rearrangement is sequentially input to the decoding 'audio processing unit 113, and decoded and reproduced (S711).
  • FIG. 8 is a circuit operation schematic diagram describing the above-described operation as a data flow between circuits.
  • the encrypted content stored in the target 105 is input to the built-in memory 111 as encrypted data with an additional information header via the target IF unit 112.
  • the header analysis / addition unit 118 adds the encryption information with the additional information header read from the built-in memory 111 based on the cipher chaining unit information separately read from the target 105 and the information on the frame length stored in the additional information header.
  • ⁇ Data power Extracts and separates the additional information header.
  • the separated additional information header is output to the header conversion unit 115.
  • the header conversion unit 115 converts the input additional information header into an audio header and outputs it to the frame length analysis / header standby unit 116.
  • the cipher / decryption processing unit 109 the data length in units of cipher chaining is set by the control unit 106 for each encrypted data. Then, the encryption / decryption processing unit 109 decrypts the encrypted data from which the additional information header is separated, and expands the encrypted data in the built-in memory 111 as plaintext data.
  • the frame length analysis'header waiting unit 116 detects the encrypted data having the frame boundary, and when the decryption is completed, the plaintext data expanded in the internal memory 111 is sent to the data conversion unit 117. Output. In addition, the audio header that has been kept waiting is output to the data conversion unit 117.
  • the data conversion unit 117 rearranges the data so that the corresponding audio header is arranged at the head of the frame data !, and outputs it to the decoding / audio processing unit 113.
  • the decoding / audio processing unit 113 sequentially decodes and reproduces the input frame data.
  • the power of rearranging data by adding an audio header when all the encrypted data is decrypted is used instead. It is also possible to insert an audio header when a frame boundary is detected while sequentially outputting the decoded data to the audio processing unit 113. Thereby, the waiting time of the audio header is shortened (it can be shorter than the waiting time for the cipher chain unit) and the amount of data developed in the built-in memory 111 can be reduced, so that the circuit scale can be reduced.
  • the cipher chain unit information indicating the data length of the cipher chain unit is stored in the protection area 402 of the target 105 as data different from the cipher key content after being associated with the cipher key content. To do.
  • this cipher chain unit information can be divided and included in the additional information header! /.
  • each additional information header has information on the data length of the cipher chain unit for the encrypted data between the additional information header and the next additional information header.
  • the decryption of the encrypted content is performed as shown in FIG. That is,
  • the data length of the cipher chain unit for each cipher key data can be obtained by analyzing the additional information header added before that.
  • the addition corresponding to the (n + 1) th frame data is added to the encrypted data where the boundary between the nth and (n + 1) th frame data exists.
  • An information header is added to the head.
  • each additional information header associated with encrypted data having a boundary of frame data is added together at the head of a series of encrypted data. It shall be. Note that the apparatus configuration according to the present embodiment is the same as that shown in FIG.
  • FIG. 10 is a conceptual diagram of encryption key data generation in this embodiment, and is a diagram conceptually showing a method of adding an additional information header.
  • the additional information header for each frame data is collectively arranged at the head of a series of encrypted data.
  • Each additional information header is associated with the corresponding frame data.
  • the relationship between the additional information header and the cipher key data is the same as in the first embodiment, and for the cipher key data in which the boundary between the nth and (n + 1) th frame data exists.
  • the additional information header corresponding to the (n + 1) -th frame data is associated with! /
  • the first additional information header corresponds to cipher key data 1.
  • the second additional information header corresponds to encrypted data 2 because the boundary between frame data 1 and frame data 2 exists in encrypted data 2. Since encryption key data 3 has no frame boundary, there is no additional information header corresponding to it. Since encryption key data 4 has a boundary between frame data 2 and frame data 3, the third additional information header corresponds to this.
  • the additional information header includes a frame header including information on the data length of the corresponding frame data, as in the first embodiment.
  • the additional information header in the present embodiment has an offset.
  • the offset is information indicating which encryption key data is the additional information header of itself. Specifically, for example, there is information that indicates what number the corresponding encrypted data is counted from the beginning. Or, it is information representing the bit length from the beginning to the position of the corresponding encryption key data. By this offset, it is possible to know which encryption key data is associated with the additional information header.
  • the additional information header is arranged at the beginning of a series of encrypted data! It is not always necessary to arrange the additional information header in a lump, and if it is a place other than the beginning, Even if it is placed in, it does not help. Further, it may be arranged in a different area from the encryption key data.
  • FIG. 11 is a flowchart of processing for encrypting AV data downloaded by an external force and storing it in the target 105, and is for generating encrypted content as shown in FIG. In FIG. 11, dotted lines represent data processing.
  • step S315 the header generation step (S315).
  • step S315 the frame length 'cipher chain analysis unit 114 generates an additional information header so that the offset is included in addition to the frame length.
  • step S310 the additional information headers are collectively arranged at the beginning of the encrypted data (S311). In this case, it is preferable to provide a memory area for storing the additional information header in advance when generating the B-coded content.
  • each additional information header associated with the encrypted data having the boundary of the frame data is collectively arranged at the head of the series of encrypted data. Data structure.
  • the process in FIG. 12 is almost the same as the process in FIG. 6 in the first embodiment.
  • the difference lies in that the header analysis / addition unit 118 obtains the power corresponding to which encrypted data each additional information header corresponds to by analyzing the offset of the additional information header.
  • the additional information header and the corresponding encryption key data are not arranged in a continuous address space. Therefore, analysis of one additional information header is completed Then, using the offset, the read address from the target 105 is set to the beginning of the encrypted data to be processed. For example, the position of encryption key data 1 is set as offset 1 in the first additional information header, and the position of encryption key data 2 is set as offset 2 in the second additional information header. In the third additional information header, the position of encryption key data 4 is set as offset 3.
  • the read address is changed to the head of the encryption key data 1 and decryption is performed.
  • the read address is changed to the beginning of the encrypted data 2 to perform decryption, and then the decryption of the encrypted data 3 is completed for the third time.
  • the additional information header is analyzed.
  • the read address is changed to the head of the encryption key data 4 and decryption is performed.
  • FIG. 12 A process of decrypting and reproducing the encrypted content as shown in FIG. 12 will be described in detail using the flowchart of FIG. In FIG. 13, dotted lines represent data processing.
  • the encryption data generation host 'authentication between the reproduction device 101 and the target 105 is performed. Perform (S701). The authentication process is performed using an authentication key stored in advance in the encrypted data generation / reproduction device 101 and the target 105. After successful authentication, a content key is generated as a key for decrypting the encrypted content.
  • the control unit 106 refers to the encryption chain unit information stored in the protection area 402 of the target 105 and encrypts / decrypts the data length of the encryption chain unit of the first encrypted data 1.
  • Section 109 is set (S702).
  • the header analysis 'additional force' read address from the target 105 is changed to the first additional information header, and this is read and analyzed. (S721).
  • the second and subsequent additional information headers are included, the data length of the cipher chain unit and the frame length information included in the previously separated additional information header are determined. To be judged.
  • the separated additional information header is converted into an audio header by the header conversion unit 115 (S704), and is waited by the frame length analysis / header waiting unit 116 (S705).
  • the additional information header includes the position information of the corresponding encrypted data. It has in the form of an offset. Therefore, referring to the offset, the read address from the target 105 is changed to the beginning of the encrypted data to be processed (S722), and the encrypted data is generated from the target 105 to the playback device 101. Read the data (S706). The read encryption key data is decrypted by the encryption / decryption processing unit 109 (S707). The decrypted data is sequentially expanded in the built-in memory 111! Ku.
  • the frame length analysis / header standby unit 116 determines that the frame boundary is based on the frame length information included in the additional information header. It is determined whether it is included in the encrypted key data (S709). If a frame boundary is included, the data conversion unit 117 waits for V in the frame length analysis / header waiting unit 116, reads the audio header, and temporarily stores it in the built-in memory 111. The decoded data is read, and the data is rearranged so that the audio header is added to the head of the new frame data (S711).
  • the data length of the next cipher chain unit is set in the signal / decryption processing unit 109 (S723). Then, from the information on the frame length of the additional information header analyzed previously, the data length of the encrypted data decrypted so far, and the data length of the cipher chain unit to be decrypted next, the additional information header It is determined whether or not analysis is necessary (whether or not the next encryption key data has an additional information header) (S724). If analysis of the additional information header is not necessary, the encrypted data is read from the target 105 and decrypted. On the other hand, if analysis of the additional information header is necessary, the read address of the target 105 is changed to the position of the next additional information header, and a series of processing is repeated from the header reading 'analysis.
  • the frame data generated by the rearrangement is sequentially input to the decoding / audio processing unit 113 and decoded and reproduced (S711).
  • circuit operation schematic diagram in the present embodiment is the same as FIG. 8 in the first embodiment. However, the processing performed by each component may be partly changed from the first embodiment as shown in the flowchart of FIG.
  • the nth and (n + 1) th frames are used in the data encryption key.
  • the additional information header for the (n + 1) -th frame data is associated with the encrypted data having the boundary of the frame data, and this additional information header is added to the head of the encrypted data. In other words, there was no header at the beginning of the encryption key data where there was no frame data boundary.
  • a fixed-length header is added to the head of all encrypted data regardless of whether or not there is a boundary of frame data.
  • a dummy header that does not include a frame header is attached to the beginning of encrypted data that does not have a frame data boundary.
  • the attached header information header and the dummy header have a flag indicating whether or not the header information header and the dummy header are true headers of the frame data. That is, this flag indicates whether the header includes a frame header.
  • the flag indicates whether the header includes a frame header.
  • the header is an additional information header including a frame header
  • the header is a dummy header not including a frame header.
  • each header stores information about the data length of the encryption chain unit of the corresponding encrypted data. That is, even a dummy header whose flag is 0 has information on the data length of the cipher chaining unit. Therefore, as in the modified example of the first embodiment, each additional information header is processed in comparison with a case where each additional information header has information on the data length of the cipher chain unit for one or a plurality of cipher data. Becomes easier. In addition, since the control unit 106 does not need to distribute headers, processing is simplified. Note that the apparatus configuration according to the present embodiment is the same as that shown in FIG.
  • FIG. 14 is a conceptual diagram of encryption key data generation in this embodiment, and is a diagram conceptually showing a method of adding an additional information header.
  • a common header format is prepared for all the encrypted data.
  • a frame header field for storing a frame header an encryption chain unit field for storing information on the data length of the encryption chain unit, and a flag are allocated.
  • the flag is initially zero.
  • Frame length ' The cipher chain analysis unit 114 distributes the headers collectively arranged in moov as frame headers for each frame.
  • the frame header corresponding to the (n + 1) th frame data in the header field of that frame Is stored and the flag is set to 1. Further, the cipher chain unit field of each header is rewritten based on the cipher chain unit information stored in the system memory 103.
  • the header (additional information header) arranged at the head of encryption key data 1 the frame header of frame data 1 is inserted and the flag is set to 1. Therefore, in this additional information header, both information on the data length of the cipher chain unit and information on the frame length of frame data 1 are valid. Since there is a boundary between frame data 1 and frame data 2 in encrypted data 2, the header (additional information header) placed at the head of the encrypted data 2 includes the frame header of frame data 2 and a flag. Becomes 1. Therefore, both the information on the data length of the cipher chain unit and the information on the frame length of the frame data 2 are valid in this additional information header. Since there is no frame boundary in the cipher key data 3, the header (dummy header) placed at the head of the cipher key data has a flag of 0, and only the information on the data length of the cipher chain unit is valid.
  • each header is assumed to be a fixed length.
  • the frame header includes not only information on the frame length but also information on the audio file format.
  • FIG. 15 is a flowchart of a process for encrypting the AV data downloaded by the external force and storing it in the target 105, and is for generating the encrypted data as shown in FIG.
  • dotted lines represent data processing. Note that steps similar to those in FIG. 3 in the first embodiment are denoted by the same reference numerals, and description thereof is omitted here.
  • the frame length' signature chain analysis unit 114 performs encryption sequence in the common header format prepared in advance. Rewrite the chain unit field to the data length of the set cipher chain unit.
  • the flag for the first encrypted data 1 header is rewritten to 1 and the frame header field is rewritten to the frame header of frame data 1.
  • the flag for the detected encrypted data header is rewritten to 1 and the frame header field is changed. Rewrite the frame header of the (n + 1) th frame data.
  • header analysis 'additional unit 11 8 power' reads the header generated in step S331 to the frame length / cipher chain analysis unit 114 power ⁇ ⁇ Add to the beginning of the data.
  • the encrypted key data is expanded in the system memory 103 with a header added to the head of the encrypted key data.
  • the header is added to the beginning of all encrypted data. Only the header arranged at the beginning of the encrypted data where the frame boundary exists, that is, only the additional information header includes the frame header, and other headers. That is, the dummy header does not include the frame header that has information on the data length of the cipher chaining unit. Of course, the dummy header may contain information other than the data length of the cipher chaining unit.
  • this encrypted content is read from the system memory 103 and written to the target 105.
  • the cipher chaining unit information stored in the system memory 103 is embedded in the header attached to the head of each encrypted data, it is not written to the target 105.
  • the header is placed at the beginning of the cipher data every time the cipher key of the cipher chain unit is completed, so that it is necessary to expand the cipher key data in the system memory 103. It is also possible to write data from the built-in memory 111 to the target 105 for every encryption data. As a result, it is necessary to re-deploy the encryption key data to the system memory 103. Therefore, the power consumption required for generating encrypted content is greatly reduced.
  • the encrypted content generated by the above processing is the frame header for the (n + 1) th frame data at the beginning of the encrypted data where the boundary between the nth and (n + 1) th frame data exists.
  • the additional information header including, there is no frame data boundary !
  • the data structure has a dummy header added without including the frame header at the beginning of the encrypted data. According to this data structure, as will be described later, decryption and playback capability of encrypted content Encrypted data generation can be executed without using the system memory 103 as a closed process in the playback device 101, resulting in significant power consumption. Reduced to
  • the encrypted content as the reproduction target data includes the frame header for the (n + 1) th frame data at the beginning of the encrypted data where the boundary between the nth and (n + 1) th frame data exists.
  • a data structure is added with a dummy header that does not include a frame header at the beginning of cryptographic data that does not have a frame data boundary.
  • Each of the additional information header and the dummy header has information on the data length of each cipher chain unit for the corresponding encrypted data.
  • Header analysis' Additional unit 118 when sequentially reading the encrypted content from target 105, identifies the position of the header and separates it from the encrypted data from the information on the data length of the cipher chain unit stored in the header. .
  • Information on the data length of the cipher chain unit obtained from the header is set in the encryption / decryption processing unit 109. Further, referring to the flag of the separated header, it is determined whether or not this header is an additional information header including a frame header. If it is an additional information header, it is output to the header conversion unit 115. .
  • the header conversion unit 115 converts the input additional information header into an audio header (ADTS header). Note that header conversion may not be necessary.
  • the converted header is waited by the frame length analysis / header waiting unit 116 until all the encrypted data having a frame boundary is decrypted by the encryption / decryption processing unit 109.
  • the dummy header is discarded.
  • the encryption / decryption processing unit 109 sequentially decrypts the encrypted data using the information related to the data length of the encrypted chain unit, and expands it in the built-in memory 111.
  • the frame length analysis' header waiting unit 116 also detects the frame boundary by the information power related to the frame length stored in the additional information header, and when the decryption of the encrypted data having the frame boundary is completed, The waiting header and the decrypted data expanded in the built-in memory 111 are output to the data converter 117.
  • the data conversion unit 117 generates frame data by performing separation and concatenation processing on the decoded data using information on the frame length. Then, the converted header is attached to the head of the frame data and output to the decoding / audio processing unit 113.
  • the output data has an audio header for each frame data and conforms to the audio format (AAC). Therefore, the first CPU 102 and the system memory 103 can be reproduced as they are without requiring them.
  • FIG. 17 dotted lines represent data processing. Note that steps similar to those in FIG. 7 in the first embodiment are denoted by the same reference numerals, and description thereof is omitted here.
  • the header analysis / addition unit 118 sets the data length of the cipher chain unit in the encryption / decryption processing unit 109 with reference to the cipher chain unit field of the header arranged at the head of the encrypted data.
  • the header analysis / addition unit 118 determines whether the flag of the header arranged at the head of the encryption key data is “0”.
  • this header does not include the frame header! /, It is a dummy header, so it is separated from the encrypted data and discarded.
  • the encrypted data is output to the encryption / decryption processing unit 109 and decrypted in step S707.
  • a header is added to all the encryption key data, and information on the data length of the cipher chain unit is included in the header. For this reason, the cipher chain unit can be set by the header analysis / addition unit 118 without intervention of software processing by the control unit 106, and further, power consumption can be reduced.
  • the second and third embodiments described above are combined. That is, as in the third embodiment, the additional information header for the (n + 1) th frame data is associated with the encrypted data where the boundary between the nth and (n + 1) th frame data exists. In addition, a dummy header not including a frame header is associated with encryption key data having no frame data boundary. Similarly to the second embodiment, the associated additional information header and dummy header are collectively added to the head of a series of encrypted data.
  • FIG. 18 is a conceptual diagram of encryption key data generation in the present embodiment. As shown in Figure 18 In addition, in this embodiment, the additional information header and the dummy header are collectively arranged at the beginning of a series of encrypted data.
  • FIG. 19 is a flowchart of a process for encrypting AV data downloaded by an external force and storing it in the target 105, and is for generating encrypted content as shown in FIG. In FIG. 19, dotted lines represent data processing.
  • the flowchart of FIG. 19 is substantially the same as FIG. 15, and steps common to FIG. 15 are denoted by the same reference numerals, and detailed description thereof is omitted here.
  • the difference from Fig. 15 is the header generation step (S341).
  • the frame length 'cipher chain analysis unit 114 generates an additional information header and a dummy header so as to include an offset in addition to the frame length and the like.
  • each additional information header and dummy header are arranged together at the beginning of the encrypted data (S342). In this case, it is preferable to provide a memory area for storing the additional information header and the dummy header in advance when the encryption content is generated.
  • FIG. 20 is a diagram conceptually showing the decryption process of the encrypted content in the present embodiment.
  • the processing in FIG. 20 is almost the same as the processing in FIG. 16 in the third embodiment.
  • the header analysis' adding unit 118 determines to which encryption key data each additional information header corresponds. However, the points to be obtained by analyzing the offset of the additional information header are different.
  • FIG. 21 is a flowchart showing processing for decrypting / reproducing encrypted content in the present embodiment.
  • the flowchart in FIG. 20 is almost the same as that in FIG. 17, and steps common to those in FIG. 17 are denoted by the same reference numerals, and detailed description thereof is omitted here.
  • this header is an additional information header including a frame header
  • the header is output to the header conversion unit 115. Furthermore, the offset is analyzed to determine the start position of the encrypted data to be processed.
  • the data length of the encryption chain unit for the encrypted data to be processed is set in the encryption / decryption processing unit 109.
  • the power consumption can be greatly reduced, which is very effective when the encrypted data generation / reproduction device 101 is configured as a portable information terminal.
  • the power consumption of the device for generating / reproducing encrypted data can be greatly reduced, so that it can be used in, for example, an information processing device such as a mobile phone.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Storage Device Security (AREA)
  • Signal Processing For Digital Recording And Reproducing (AREA)

Abstract

 暗号化データ生成装置(101)は、複数のフレームデータを含む暗号化対象データを、任意のデータ長の暗号連鎖単位を用いた連鎖暗号方式によって暗号化する。フレーム長・暗号連鎖解析部(114)は、AVデータ管理情報から、各フレームデータにそれぞれ対応し、当該フレームデータのフレームヘッダを含む付加情報ヘッダを生成する。暗号・復号処理部(109)は、各フレームデータを連鎖暗号化方式によって暗号化し、一連の複数の暗号化データを生成する。ヘッダ解析・付加部(118)は、n番目と(n+1)番目のフレームデータの境界が存在する暗号化データに対して、(n+1)番目のフレームデータに対応する付加情報ヘッダを対応付け、所定位置に付加する。

Description

明 細 書
データ暗号化方法、 暗号化データ再生方法 技術分野
[0001] 本発明は、コンテンツデータを暗号ィ匕してメモリカードなどのターゲットに格納する 機器、および、ターゲットに格納された暗号化コンテンツを復号ィ匕して再生する機器 に関するものである。
背景技術
[0002] 近年、オーディオデータ、ビデオデータと!/、つた AVデータに関し、様々なフォーマ ットが提唱されている。これらの AVフォーマットの中には、フレーム毎のデータ長が 固定長のものもあれば、任意の可変長のものもある。また、フレーム毎にヘッダが分 配されて配置されている形式もあれば、 MP4フォーマットのように、フレーム毎のへッ ダがまとめて一括で配置されて 、る形式もある。
[0003] また、暗号ィ匕方式についても様々な方式が提唱されている。暗号化方式の 1つとし て、連鎖暗号方式(Cipher Block Chain)がある。連鎖暗号方式では、任意のデータ 長の暗号連鎖単位を 1単位として、暗号化を行う。
[0004] 従来の暗号ィ匕データ生成および暗号ィ匕データ再生について、説明する。
[0005] 図 22は従来の装置構成図である。図 22の構成は、 AVデータの暗号化 Z復号ィ匕 を行う暗号ィ匕データ生成'再生装置 201と、システム全体の制御を行う第 1の CPU1 02と、 DRAM等で構成されるシステムメモリ 103と、これらの構成要素間のデータの やり取りが行われる外部バス 104とを備えている。暗号化データ生成'再生装置 201 は、外部に接続されるターゲット 105 (SDカード、メモリスティック等の記憶メディア) に格納された暗号ィ匕された AVデータを再生する。あるいは、外部力もダウンロードさ れた AVデータを暗号ィ匕してターゲット 105に格納する。
[0006] 暗号化データ生成'再生装置 201は、その内部の制御を行う制御部 106 (第 2の C PU)と、各部間のデータのやり取りに用いられる内部バス 107と、外部バス 104との 間のデータのやり取りを制御するホスト IF部 108と、制御部 106によって制御されて AVデータを含む機密情報の暗号化や復号化を行う暗号 ·復号処理部 109と、暗号 · 復号処理部 109と内部バス 107との間でデータの入出力を行うための入出力部 110 と、暗号化データ生成 ·再生装置 201内で処理されるデータを一時的に記憶する内 蔵メモリ 111と、ターゲット 105とのデータのやり取りを制御するターゲット IF部 112と 、復号化されたデータをデコードして再生するデコード ·オーディオ処理部 113とを備 えている。
[0007] 図示しない外部 IFを介してサーバ等力もダウンロードされた AVデータ、あるいはタ 一ゲット 105に格納された暗号ィ匕データを復号ィ匕して得られる AVデータは、システ ムメモリ 103に一時的に記憶される(図中のフレームデータ 1、フレームデータ 2)。ま た、連鎖暗号方式における暗号化の単位となる暗号連鎖単位のデータ長を規定する 情報が、暗号連鎖単位情報として、システムメモリ 103に設定される。さらに、 AVデ 一タの各フレームデータ長や AVデータ全体のデータ長等を規定するヘッダ情報や 符号化の方式を規定する情報等が、 AVデータ管理情報として、システムメモリ 103 に設定される。暗号連鎖単位のデータ長や各フレームデータ長は任意に選択するこ とが可能である。
[0008] 暗号化データ生成'再生装置 201は、第 1の CPU102の制御のもと、暗号連鎖単 位情報に従って、ダウンロードされた AVデータを暗号ィ匕してターゲット 105に格納す る。また、第 1の CPU102の制御のもと、ターゲット 105に格納された AVデータを暗 号連鎖単位情報に従って復号ィ匕しつつシステムメモリ 103に展開する。そして、復号 化された AVデータを、システムメモリ 103から読み出しつつ AVデータ管理情報に従 つてデコードし、再生する。
[0009] 図 23のフローチャートを参照して、外部力 ダウンロードされた AVデータを暗号化 してターゲット 105に格納する従来の方法について説明する。
[0010] まず、不正なターゲット 105に AVデータを格納することを防止するために、ホストと なる暗号ィ匕データ生成 '再生装置 201とターゲット 105との間で認証を行う(Sl l)。 認証処理は、暗号化データ生成 ·再生装置 201とターゲット 105に予め格納されて ヽ る認証鍵を用いて行われる。認証に成功した後に、 AVデータを暗号ィ匕するための鍵 となるコンテンツ鍵が生成される。次に、連鎖暗号方式で暗号化する単位となる暗号 連鎖単位をシステムメモリ 103から読み取る(SI 2)。次に、暗号化の対象となるフレ ーム単位の AVデータ(フレームデータ)を順次入力していく(S13)。入力されたフレ ームデータは、データ ENDとなるまで、連鎖暗号方式によって順次暗号ィ匕されてい く(S14, S15)。暗号ィ匕された AVデータは順次システムメモリ 103に展開されていく 。 1つの暗号連鎖単位の暗号化が終わると(S16で Yes)、次の暗号化に向けて暗号 連鎖単位のデータ長の設定を行う。
[0011] 以上の処理をデータ ENDとなるまで繰り返し、最後のデータまで暗号ィ匕が終了す ると、システムメモリ 103に展開された暗号ィ匕データをまとめてターゲット 105に書き 込む(S17)。以上の処理によって、ダウンロードされた AVデータの暗号化が終了す る。また、 AVデータ管理情報や暗号連鎖単位情報も、暗号化された AVデータと関 連付けられた上で同じくターゲット 105に格納される。
[0012] 次に図 24のフローチャートを参照して、上記の方法によって生成されターゲット 10 5に格納された暗号ィ匕データを、復号ィ匕し再生する従来の方法について説明する。
[0013] まず、不正なターゲット 105に格納された AVデータを再生することを防止するため に、ホストとなる暗号ィ匕データ生成'再生装置 201とターゲット 105との間で認証を行 う(S21)。認証処理は、暗号ィ匕データ生成 ·再生装置 201とターゲット 105に予め格 納されている認証鍵を用いて行われる。認証に成功した後に、 AVデータを復号化す るための鍵となるコンテンツ鍵が生成される。認証に成功すると、暗号化された AVデ ータをターゲット 105から読み出す (S22)。これとともに、暗号ィ匕された AVデータと 関連付けて予めターゲット 105に格納されていた暗号連鎖単位情報をターゲット 105 力も読み出して、システムメモリ 103に格納する(S23)。
[0014] 暗号化データ生成 ·再生装置 201はシステムメモリ 103に格納された暗号連鎖単位 情報に従って復号ィ匕を行う(S24, S25)。まず、最初の暗号化データを復号化する ためにその暗号連鎖単位のデータ長を設定する。そして順次復号ィ匕を行っていき、 復号化された AVデータ(図 24では連鎖データ)をシステムメモリ 103に順次展開し ていく。 1つの暗号ィ匕データの復号ィ匕が終わると、次の復号化に向けて暗号連鎖単 位のデータ長の設定を行う。以上を繰り返しながら、全ての暗号化データの復号化を 行う。 [0015] また、 AVデータ本体と関連付けられて予めターゲット 105に格納されていた AVデ ータ管理情報も、同様にシステムメモリ 103に展開される。したがって、復号化された AVデータは、システムメモリ 103上では、一括に配置された各フレームデータ用の ヘッダと複数の復号ィ匕データという形で分かれて展開されている。このため、そのまま ではデコード再生を行うことができない。そこで第 1の CPU102によって、各フレーム データ用のヘッダの後に該当するフレームデータが格納されるように、ヘッダ情報を 変換し、振り分けしていく。ヘッダが振り分けられた AVデータはデコード再生できる 形となって 、るので、システムメモリ 103から暗号化データ生成 ·再生装置 201に入 力されて、デコード再生が行われる(S26)。
特許文献 1:特開 2001— 222858号公報
発明の開示
発明が解決しょうとする課題
[0016] 上述の従来技術では、各フレームデータのヘッダは、一括して AVデータ管理情報 に格納されている。ところが、暗号化された AVデータを全て復号化してみないと、フ レームデータの区切りが分からない。このため、暗号化された AVデータを全て復号 化して一旦メモリに展開した後でなければ、 AVデータ管理情報に含まれたヘッダ情 報を、各フレームデータ毎のヘッダとして割り振ることができな 、。
[0017] ここで、一般に、システムメモリ 103はチップ外部に接続された DRAMとして構成さ れることが多ぐ大容量となる。一方で、暗号化データ生成'再生装置 101内の内蔵メ モリ 111は小規模な SRAMで構成されることが多い。このため、暗号化されたデータ を全て復号ィ匕してメモリにー且展開するためには、システムメモリ 103を利用せざるを 得なくなる。
[0018] したがって、上述の従来技術によると、暗号ィ匕された AVデータのデコード再生を、 暗号ィ匕データ生成'再生装置 101内の閉じた処理として実行することができない。シ ステムメモリ 103へのアクセスが生じると、消費電力が増える。このため、例えば、暗 号化データ生成 ·再生装置を携帯端末 (携帯電話、 PDA等)として構成した場合、上 述の従来技術では、充電無しに暗号化された AVデータを再生できる数に限界が生 じてしまう。 [0019] 本発明は、前記の問題に鑑みてなされたものであり、連鎖暗号方式によって暗号 化されたデータを、システムメモリを用いることなぐ少ない内蔵メモリのみを有する装 置に閉じた処理によって、再生可能にすることを目的とする。
課題を解決するための手段
[0020] 本発明は、 N (Nは 2以上の整数)個のフレームデータと前記 N個のフレームデータ を管理するための管理データとを含む暗号ィ匕対象データを、任意のデータ長の暗号 連鎖単位を用いた連鎖暗号方式によって暗号化するデータ暗号化方法として、前記 管理データから、前記各フレームデータにそれぞれ対応し、当該フレームデータのフ レームヘッダを含む、付加情報ヘッダを生成するステップ (a)と、前記各フレームデ ータを連鎖暗号ィ匕方式によって暗号ィ匕し、一連の複数の暗号ィ匕データを生成するス テツプ (b)と、前記複数の暗号化データのうち、 n (nは 1以上 N未満の整数)番目と (n + 1)番目のフレームデータの境界が存在する暗号ィ匕データに対して、(n+ 1)番目 のフレームデータに対応する前記付加情報ヘッダを対応付けるとともに、前記付カロ 情報ヘッダを、前記複数の暗号ィ匕データにおける所定位置に付加するステップ (c)と を備えたものである。
[0021] また、本発明は、 N (Nは 2以上の整数)個のフレームデータを含む暗号ィ匕対象デ ータが、任意のデータ長の暗号連鎖単位を用いた連鎖暗号方式によって暗号化さ れてなる、再生対象データを再生する暗号化データ再生方法として、前記再生対象 データは、複数の暗号化データと、前記 N個のフレームデータにそれぞれ対応する N個のフレームヘッダをそれぞれ含む、 N個の付カ卩情報ヘッダとを備え、(n+ 1) (n は 1以上 N未満の整数)番目のフレームヘッダを含む付加情報ヘッダは、前記複数 の暗号化データのうち、 n番目と(n+ 1)番目のフレームデータの境界が存在する暗 号化データに対して対応付けられて、前記複数の暗号化データにおける所定位置 に付加されているものであり、前記再生対象データから、前記付加情報ヘッダを分離 するステップ (a)と、前記再生対象データから読み出した前記暗号化データを、暗号 連鎖単位のデータ長に関する情報を用いて、復号化するステップ (b)と、復号化され たデータに対して、分離された前記付加情報ヘッダに含まれたフレームヘッダに格 納されたフレーム長に関する情報を用いて、分離'連結処理を行うことによって、前記 フレームデータを生成するステップ(c)と、前記フレームデータの先頭に、前記フレー ムヘッダを付加するステップ (d)とを備えたものである。
[0022] また、本発明は、 N (Nは 2以上の整数)個のフレームデータと前記 N個のフレーム データを管理するための管理データとを含む暗号ィ匕対象データを、任意のデータ長 の暗号連鎖単位を用いた連鎖暗号方式によって暗号化する暗号化データ生成装置 として、前記管理データから、前記各フレームデータにそれぞれ対応し、当該フレー ムデータのフレームヘッダを含む、付加情報ヘッダを生成するヘッダ生成部と、前記 各フレームデータを連鎖暗号ィ匕方式によって暗号ィ匕し、一連の複数の暗号ィ匕データ を生成する暗号処理部と、前記複数の暗号ィ匕データのうち、 n(nは 1以上 N未満の 整数)番目と (n+ 1)番目のフレームデータの境界が存在する暗号ィ匕データに対して 、 (n+ 1)番目のフレームデータに対応する前記付加情報ヘッダを対応付けるととも に、前記付加情報ヘッダを、前記複数の暗号ィヒデータにおける所定位置に付加する ヘッダ付加部とを備えたものである。
[0023] また、本発明は、 N (Nは 2以上の整数)個のフレームデータを含む暗号化対象デ ータが、任意のデータ長の暗号連鎖単位を用いた連鎖暗号方式によって暗号化さ れてなる、再生対象データを再生する暗号ィ匕データ再生装置として、前記再生対象 データは、複数の暗号化データと、前記 N個のフレームデータにそれぞれ対応する N個のフレームヘッダをそれぞれ含む、 N個の付カ卩情報ヘッダとを備え、(n+ 1) (n は 1以上 N未満の整数)番目のフレームヘッダを含む付加情報ヘッダは、前記複数 の暗号化データのうち、 n番目と(n+ 1)番目のフレームデータの境界が存在する暗 号化データに対して対応付けられて、前記複数の暗号化データにおける所定位置 に付加されているものであり、前記再生対象データから、前記付加情報ヘッダを分離 するヘッダ分離部と、前記再生対象データから読み出された前記暗号化データを、 暗号連鎖単位のデータ長に関する情報を用いて、復号化する復号処理部と、復号 ィ匕されたデータに対して、前記ヘッダ分離部によって分離された前記付加情報へッ ダに含まれたフレームヘッダに格納されたフレーム長に関する情報を用いて、分離 · 連結処理を行うことによって、前記フレームデータを生成するフレームデータ生成部 と、前記フレームデータの先頭に、前記フレームヘッダを付カ卩するヘッダ付カ卩部とを 備えたものである。
[0024] また、本発明は、 N (Nは 2以上の整数)個のフレームデータを含む暗号ィ匕対象デ ータが、任意のデータ長の暗号連鎖単位を用いた連鎖暗号方式によって暗号化さ れたデータ構造として、複数の暗号化データと、前記 N個のフレームデータにそれぞ れ対応する N個のフレームヘッダをそれぞれ含む、 N個の付加情報ヘッダとを備え、 (n+ 1) (nは 1以上 N未満の整数)番目のフレームヘッダを含む前記付加情報ヘッダ は、前記複数の暗号ィ匕データのうち、 n番目と (n+ 1)番目のフレームデータの境界 が存在する暗号化データに対して対応付けられて、前記複数の暗号化データにお ける所定位置に付加されて 、るものである。
発明の効果
[0025] 本発明によると、暗号化データの復号化が行われて!/ヽくにつれて、先頭にフレーム ヘッダが付されたフレームデータ力 順次生成されていく。このため、生成されたフレ ームデータを内蔵メモリにー且格納した後、暗号化データ生成'再生装置内でそのま まデコード再生を行うことが可能となる。したがって、従来のようにまとまった量の暗号 化コンテンツを復号ィ匕しなくとも、順次フレームデータを再生することが可能であるの で、システムメモリを一切介在させず処理を行うことが可能となる。これにカ卩えて、へッ ダの割り振りが暗号ィ匕データ生成 '再生装置内の閉じた処理として行われるため、シ ステムを制御する CPUに負担をかけることもない。したがって、大幅な消費電力の削 減が可能となる。
図面の簡単な説明
[0026] [図 1]図 1は、本発明の各実施形態に係る情報処理システムの全体構成図である。
[図 2]図 2は、第 1の実施形態における暗号ィ匕データ生成の概念図である。
[図 3]図 3は、第 1の実施形態における暗号ィ匕データ生成処理を示すフローチャート である。
[図 4]図 4は、ターゲット内のデータ格納状態を示す図である。
[図 5]図 5は、暗号ィ匕データ生成における回路動作概要図である。
[図 6]図 6は、第 1の実施形態における暗号ィ匕データ再生の概念図である。
[図 7]図 7は、第 1の実施形態における暗号ィ匕データ再生処理を示すフローチャート である。
[図 8]図 8は、暗号ィ匕データ再生における回路動作概要図である。
[図 9]図 9は、第 1の実施形態の改変例における暗号ィ匕データ再生の概念図である。
[図 10]図 10は、第 2の実施形態における暗号化データ生成の概念図である。
[図 11]図 11は、第 2の実施形態における暗号ィ匕データ生成処理を示すフローチヤ一 トである。
[図 12]図 12は、第 2の実施形態における暗号化データ再生の概念図である。
[図 13]図 13は、第 2の実施形態における暗号ィ匕データ再生処理を示すフローチヤ一 トである。
[図 14]図 14は、第 3の実施形態における暗号化データ生成の概念図である。
[図 15]図 15は、第 3の実施形態における暗号ィ匕データ生成処理を示すフローチヤ一 トである。
[図 16]図 16は、第 3の実施形態における暗号化データ再生の概念図である。
[図 17]図 17は、第 3の実施形態における暗号ィ匕データ再生処理を示すフローチヤ一 トである。
[図 18]図 18は、第 4の実施形態における暗号化データ生成の概念図である。
[図 19]図 19は、第 4の実施形態における暗号ィ匕データ生成処理を示すフローチヤ一 トである。
[図 20]図 20は、第 4の実施形態における暗号化データ再生の概念図である。
[図 21]図 21は、第 4の実施形態における暗号ィ匕データ再生処理を示すフローチヤ一 トである。
[図 22]図 22は、従来の情報処理システムの全体構成図である。
[図 23]図 23は、従来の暗号化データ生成処理を示すフローチャートである。
[図 24]図 24は、従来の暗号化データ再生処理を示すフローチャートである。
符号の説明
101 暗号化データ生成,再生装置
109 暗号,復号処理部
114 フレーム長 '暗号連鎖解析部 116 ヘッダ待機部
117 データ変換部
118 ヘッダ解析'付加部
発明を実施するための最良の形態
[0028] 以下、図面を参照して本発明の実施の形態について説明する。なお、以下で説明 する実施の形態はあくまで一例である。
[0029] (第 1の実施形態)
<装置構成 >
図 1は本発明の第 1の実施形態に係る暗号化データ生成'再生装置 101、及びこ れと関連して動作する装置を含む情報処理システムの全体構成を示す図である。図 1にお 、て、暗号化データ生成 ·再生装置 101は AVデータの暗号化や復号化 ·再 生を行う。第 1の CPU102は情報処理システム全体の制御を行い、システムメモリ 10 3は例えば DRAMによって構成されて!ヽる。暗号化データ生成 ·再生装置 101は外 部バス 104によって第 1の CPU102とシステムメモリ 103に接続されており、これらと の間でデータのやり取りを行いつつ動作する。そして、暗号化データ生成'再生装置 101は、外部からダウンロードされた AVデータを暗号ィ匕して、外部に接続される記憶 手段としてのターゲット 105に格納することができる。あるいは、ターゲット 105に格納 された暗号化された AVデータを復号化し、再生することができる。
[0030] ターゲット 105は例えば、 SDカード、メモリスティック等の記憶メディアによって構成 される。また、本願明細書では、フレーム毎の AVデータについて、フレームデータと 称する。
[0031] 暗号化データ生成'再生装置 101は、暗号ィ匕データ生成 ·再生装置 101内の制御 を行う制御部 106 (第 2の CPU)と、暗号ィ匕データ生成'再生装置 101内の各部同士 のデータのやり取りに用いられる内部バス 107と、外部バス 104との間のデータのや り取りを制御するホスト IF部 108と、制御部 106によって制御されて AVデータを含む 機密情報の暗号化や復号化を行う暗号 ·復号処理部 109と、暗号 ·復号処理部 109 を含む機密情報処理部 119と内部ノ ス 107との間でデータの入出力を行うための入 出力部 110と、暗号ィ匕データ生成 ·再生装置 101内で処理されるデータを一時的に 記憶し、例えば SRAMで構成される内蔵メモリ 111と、ターゲット 105とのデータのや り取りを制御するターゲット IF部 112と、復号化されたデータをデコードして再生する デコード ·オーディオ処理部 113とを備えて ヽる。
[0032] なお、システムメモリ 103は必ずしも DRAMで構成する必要はな!/、が、高速大容量 のメモリとしては DRAMを用いるのが最適である。また、内蔵メモリ 111も必ずしも SR
AMで構成する必要はな ヽ。
[0033] また本実施形態では、機密情報処理部 119は、暗号 '復号処理部 109および入出 力部 110にカ卩えて、フレーム長 '暗号連鎖解析部 114、ヘッダ変換部 115、フレーム 長解析.ヘッダ待機部 116、データ変換部 117、ヘッダ解析'付加部 118をさらに有 している。
[0034] フレーム長 '暗号連鎖解析部 114は、 AVデータを暗号ィ匕してターゲット 105に格納 するに際し、一括でシステムメモリ 103に格納された AVデータ管理情報をフレーム 毎のヘッダに振り分け、これを基に各フレームの長さを判断すると共に、システムメモ リ 103に格納された暗号連鎖単位情報から各暗号連鎖単位の長さを判断する。
[0035] ヘッダ変換部 115は、復号ィ匕において暗号ィ匕コンテンツに埋め込まれているヘッダ をオーディオヘッダへと変換する。
[0036] フレーム長解析'ヘッダ待機部 116は、復号ィ匕の際にフレーム長を解析して、へッ ダ変換部 115によって変換されたオーディオヘッダを一時待機させる。
[0037] データ変換部 117は、復号ィ匕の際に必要なデータが揃うと、オーディオヘッダが対 応するフレームデータの先頭に配置されるようにデータの並べ替えを行う。
[0038] ヘッダ解析'付加部 118は、フレーム長 '暗号連鎖解析部 114によって抽出し振り 分けられたフレーム毎のヘッダを、前のフレームとの境界が存在する暗号化データの 先頭に付加する。また、復号ィ匕の際には暗号ィ匕コンテンツ力もヘッダを分離する。
[0039] 図 1の暗号化データ生成'再生装置 101が本発明の暗号化データ生成装置として 動作する場合には、フレーム長 ·暗号連鎖解析部 114がヘッダ生成部に相当し、暗 号 ·復号処理部 109が暗号処理部に相当し、ヘッダ解析 ·付加部 118がヘッダ付カロ 部に相当する。また、図 1の暗号化データ生成'再生装置 101が本発明の暗号化デ ータ再生装置として動作する場合には、ヘッダ解析 ·付加部 118がヘッダ分離部に 相当し、暗号 *復号処理部 109が復号処理部に相当し、データ変換部 117およびフ レーム長解析ヘッダ待機部 116がフレームデータ生成部に相当し、ヘッダ解析 ·付 加部 118がヘッダ付加部に相当し、ヘッダ変換部 115がヘッダ変換部に相当する。
[0040] なお、暗号化データ生成'再生装置 101は、通常、 LSIとして構成される。この場合 、第 1の CPUも含めて 1チップとすることも、別々のチップとして構成することも可能で ある。 DRAM混載プロセスを用いれば、システムメモリ 103も含めて 1チップとするこ とも可能である。ここで DRAMや第 1の CPUを 1個の LSIとして構成した場合でも、 D RAMや第 1の CPUを動作させない構成とすることによって、内蔵した DRAM部の電 力を削減することができるので、同様に低消費電力化の効果がある。
[0041] また、本実施形態において追加される、フレーム長 '暗号連鎖解析部 114、ヘッダ 変換部 115、フレーム長解析'ヘッダ待機部 116、データ変換部 117、ヘッダ解析' 付加部 118は、ハードウェアとして構成されることが望ましい。これによつて消費電力 の削減が可能である。
[0042] 上記の構成を有する暗号化データ生成'再生装置 101の動作について、以下に詳 細に説明する。
[0043] <暗号化データ生成 >
図 2を用いて、本実施形態においてシステムメモリ 103にー且格納された AVデー タを暗号ィ匕してターゲット 105に格納する概念を説明する。
[0044] 図 2 (a)は本実施形態で取り扱う暗号ィ匕対象データとしての AVデータの一例として の、 MP4フォーマットにおけるあるファイル構成を示す図である。ただし、 MP4であつ ても異なるファイル構成をとることはあり得る。図 2 (a)の MP4のファイル構成では、 ft ypおよび moovが管理データとしての AVデータ管理情報を構成して!/、る。 ftypは、 ファイルの互換性を示す情報であり、例えば AVデータが AAC、 AAC +、 AAC+ + 等の!/、ずれのフォーマットで符号化されて!/、るかと!/、つたバージョン情報を含む。 mo ovは、 AVデータの各フレームデータのフレーム長などの情報を含む。この moovに、 各フレームデータのフレームヘッダが一括で格納されて 、る。 AVデータの本体は、 mdatとして構成されている。すなわち、 mdat中に、図 1のシステムメモリ 103に格納 されているフレームデータ 1、フレームデータ 2、 ···、がまとめて配置されている。 [0045] 本実施形態では、フレーム長 ·暗号連鎖解析部 114が、 moovに一括で配置された ヘッダを、必要に応じて変換した上で、フレームデータ毎の付加情報ヘッダとして振 り分ける。付加情報ヘッダは、フレームデータに関する情報を表すフレームヘッダを 含む。また、暗号 '復号処理部 109が、 mdatにまとめて配置された各フレームデータ を、システムメモリ 103に格納された暗号連鎖単位情報に基づいて、連鎖暗号方式 によって暗号ィ匕する。これによつて、任意のデータ長の暗号連鎖単位からなる、一連 の複数の暗号ィ匕データが生成される。
[0046] 図 2 (b)は本実施形態における付加情報ヘッダの付加方法を概念的に示す図であ る。図 2 (b)に示すように、ヘッダ解析'付加部 118は、一連の複数の暗号化データに 対して、各フレームデータに対応する付加情報ヘッダを付加する。具体的には、 n番 目と(n+ 1)番目のフレームデータの境界が存在する暗号ィ匕データに対して、(n+ 1 )番目のフレームデータに対応する付加情報ヘッダを対応付けるとともに、この付カロ 情報ヘッダを、当該暗号化データの先頭に付加する。
[0047] すなわち、フレームデータ 1の付加情報ヘッダは、全ての暗号化データの先頭であ る暗号化データ 1の先頭に挿入される。フレームデータ 1とフレームデータ 2との境界 は暗号ィ匕データ 2に存在するため、フレームデータ 2の付加情報ヘッダは暗号ィ匕デ ータ 2の先頭に挿入される。暗号化データ 3にはフレーム境界が存在しないために、 暗号ィ匕データ 3の先頭には何も挿入されない。暗号ィ匕データ 4にはフレームデータ 2 とフレームデータ 3との境界が存在するため、フレームデータ 3の付加情報ヘッダが その先頭に挿入される。
[0048] このようにして、暗号ィ匕データと付加情報ヘッダとを含む暗号ィ匕コンテンツが生成さ れる。なお、付加情報ヘッダの長さは固定長であるものとする。また、付加情報ヘッダ に含まれたフレームヘッダは、少なくとも、対応するフレームデータのデータ長に関す る情報を含むものとする。
[0049] 図 3は外部力 ダウンロードされた AVデータを暗号ィ匕してターゲット 105に格納す る処理のフローチャートであり、図 2 (b)のような暗号化データを生成するためのもの である。図 3において、点線はデータ処理を表している。
[0050] まず、不正なターゲット 105に AVデータを格納することを防止するために、ホストと なる暗号化データ生成 ·再生装置 101とターゲット 105との間で認証を行う(S 301 )。 認証処理は、暗号ィ匕データ生成 '再生装置 101とターゲット 105に予め格納されてい る認証鍵を用いて行われる。認証に成功した後に、 AVデータを暗号ィ匕するための鍵 となるコンテンツ鍵が生成される。
[0051] 次に、システムメモリ 103に格納されている暗号連鎖単位情報を参照して、連鎖暗 号方式で暗号化する単位となる暗号連鎖単位を暗号'復号処理部 109に設定する( S302)。そして、暗号ィ匕の対象となる AVデータを入力していく(S303)。まず、最初 のフレームデータ 1が入力されると、データ入力開始であるため(S304で Yes)、フレ ーム長 ·暗号連鎖解析部 114が、フレームデータ 1に対する付加情報ヘッダを生成し て内蔵メモリ 111〖こ格納しておく(S305)。この付加情報ヘッダには、フレームデータ 1に対するフレーム長が含まれて 、る。
[0052] 入力された AVデータは、暗号連鎖単位が終了するまで連鎖暗号方式によって順 次暗号化されつつ、内蔵メモリ 111に展開される(S307)。 1番目の暗号連鎖単位の 暗号化が終了すると(S308で Yes、暗号ィ匕データ 1の生成完了)、ヘッダ解析'付カロ 部 118が暗号ィ匕データ 1にフレーム境界が含まれて 、る力否かを判断する(S309)。 図 2 (b)の例によると、最初の暗号ィ匕データ 1にはフレーム境界が含まれていない。た だし、暗号ィ匕データ 1は先頭のデータである。そこでヘッダ解析'付加部 118は、内 蔵メモリ 111に格納されて 、るフレームデータ 1用の付加情報ヘッダを先頭に付カロし た上で(S310)、暗号化データ 1をシステムメモリ 103に展開し直す(S311)。
[0053] 次に暗号連鎖単位を再度設定した上で (S302)、 2番目の暗号連鎖単位の暗号化 を順次行っていく。ここではフレーム境界が含まれるため、フレーム長 '暗号連鎖解析 部 114力 フレーム境界を検出して(S304で Yes)、フレームデータ 2に対する付カロ 情報ヘッダを生成し、内蔵メモリ 111に格納する。そして、 2番目の暗号連鎖単位の 暗号化が全て終了すると(S308で Yes)、ヘッダ解析 ·付加部 118が暗号化データ 2 にフレーム境界が含まれている力否かを判断する(S309)。ここではフレーム境界が 含まれていたため、ヘッダ解析'付加部 118が、フレームデータ 2に対する付加情報 ヘッダを先頭に付カ卩した上で(S310)、暗号ィ匕データ 2をシステムメモリ 103に展開し 直す(S311)。 [0054] 次に暗号連鎖単位を再度設定した上で、 3番目の暗号連鎖単位の暗号化を順次 行っていく。ここではフレーム境界が含まれていないため、 3番目の暗号連鎖単位の 暗号化が終了すると、暗号ィ匕データ 3はそのままシステムメモリ 103に展開される。次 に暗号連鎖単位を再度設定した上、 4番目の暗号連鎖単位の暗号化を順次行って いく。ここではフレームデータ 2とフレームデータ 3との境界が存在するため、フレーム 長 '暗号連鎖解析部 114が、フレーム境界を検出して、フレームデータ 3に対する付 加情報ヘッダを生成し、内蔵メモリ 111に格納する。そして、 4番目の暗号連鎖単位 の暗号ィ匕が全て終了すると、ヘッダ解析'付加部 118が、フレームデータ 3に対する 付加情報ヘッダを先頭に付加した上で、暗号ィ匕データ 4をシステムメモリ 103に展開 し直す。
[0055] 以上の処理を AVデータが終了するまで繰り返し(S306)、終了すると、それまでに 暗号化された暗号化データをまとめて暗号化コンテンツとして、システムメモリ 103か らターゲット 105へと書き込む(S312)。これによつて、 n番目と(n+ 1)番目のフレー ムデータの境界が存在する暗号化データの先頭に(n+ 1)番目のフレームデータに 対する付加情報ヘッダが付加された状態で、 AVデータ全体が暗号化されて、ター ゲット 105に格納されたことになる。また、システムメモリ 103に格納されている暗号連 鎖単位情報も、暗号ィ匕コンテンツと関連付けて、ターゲット 105に格納するものとする
[0056] 図 4は図 3の処理の終了後におけるターゲット 105内のデータ格納状態を示す。タ 一ゲット 105の記憶領域は、システム領域 401と、保護領域 402と、通常領域 403と に分かれて構成されている。システム領域 401は製造時に設定される領域であって、 製品となった後は書き換えることができな 、。このシステム領域 401には暗号ィ匕デ一 タ生成 '再生装置 101との間の認証に必要な認証鍵が格納されている。保護領域 40 2は認証に成功したときのみアクセス可能な領域であり、暗号ィ匕コンテンツの暗号化' 復号ィ匕の鍵となるコンテンツ鍵と暗号連鎖単位情報等が格納されて ヽる。通常領域 4 03は自由にアクセス可能な領域であり、上述の方法によって暗号ィ匕された暗号ィ匕コ ンテンッが格納される。なお、保護領域 402は、全体の格納領域の数%以下程度に 抑える必要があるため、暗号連鎖単位情報は通常領域 403に格納した方が好ま ヽ 場合もある。
[0057] なお、図 3のフローチャートによると、生成された暗号化コンテンツはー且システムメ モリ 103に展開された上で、暗号ィ匕処理終了後にまとめてターゲット 105に書き込ま れる。しかしながら、本実施形態によると、 1つの暗号連鎖単位の暗号化が終了した 段階でデータ順序を入れ替える必要は特にないため、暗号連鎖単位の暗号化が終 了する毎に、生成された暗号ィ匕データを内蔵メモリ 111から直接ターゲット 105に書 き込むことも可能である。この場合、システムメモリ 103に暗号ィ匕データを展開し直す 必要がないため、暗号ィ匕コンテンツ生成に必要な消費電力が大幅に削減される。
[0058] 図 5は上述した動作を回路間のデータの流れとして記述した回路動作概要図であ る。図 5に示すように、フレーム長 '暗号連鎖解析部 114はシステムメモリ 103に格納 された AVデータ管理情報と暗号連鎖単位情報とを読み込む。そして、暗号 ·復号処 理部 109に暗号連鎖単位を設定し、またフレームヘッダを含む付加情報ヘッダを生 成してヘッダ解析 ·付加部 118に出力する。フレームデータはシステムメモリ 103から 暗号ィ匕データ生成 ·再生装置 101に順次入力され、暗号'復号処理部 109によって 連鎖暗号方式によって暗号ィ匕される。暗号ィ匕された結果の暗号ィ匕データはヘッダ解 析 ·付加部 118に出力される。ヘッダ解析 ·付加部 118はフレーム毎の付加情報へッ ダを、上述のようにフレーム境界が存在する適切な暗号ィ匕データの先頭に付加し、 付加情報ヘッダ付き暗号ィ匕データとしてシステムメモリ 103に展開していく。全ての暗 号化が終了すると、付加情報ヘッダ付き暗号ィ匕データは暗号ィ匕コンテンツとして、シ ステムメモリ 103からターゲット IF部 112を介してターゲット 105に格納される。
[0059] なお、付加情報ヘッダ付き暗号ィ匕データを内蔵メモリ 111に展開する場合は、暗号 連鎖単位の暗号ィ匕が終了する毎に、暗号化データが、内蔵メモリ 111からターゲット I F部 112を介してターゲット 105に格納される。また、図示はしないが、暗号連鎖単位 情報もターゲット 105に格納される。
[0060] 以上の処理によって生成された暗号化コンテンツは、 n番目と(n+ 1)番目のフレー ムデータの境界が存在する暗号化データの先頭に、(n+ 1)番目のフレームデータ に対する付加情報ヘッダが付加されたデータ構造となって 、る。このデータ構造によ ると、後述するように、暗号化コンテンツの復号および再生力 暗号化データ生成'再 生装置 101内の閉じた処理として、システムメモリ 103を用いずに実行可能であり、 消費電力が大幅に低減される。
[0061] <暗号化データの復号 '再生 >
図 6を用いて、本実施形態における、ターゲット 105に格納された暗号ィ匕コンテンツ を復号化する処理を概念的に説明する。上述のように、再生対象データとしての暗 号化コンテンツは、 n番目と n+ 1番目のフレームデータの境界が存在する暗号化デ ータの先頭に、 n+ 1番目のフレームデータに対する付加情報ヘッダが付加されたデ ータ構造となっている。
[0062] 制御部 106は、ターゲット 105に格納された暗号連鎖単位情報に基づいて、各暗 号化データに係る暗号連鎖単位のデータ長を暗号 ·復号処理部 109に設定する。へ ッダ解析'付加部 118は、この暗号連鎖単位のデータ長に関する情報と、各付加情 報ヘッダに含まれたフレームデータのデータ長に関する情報とから、付加情報ヘッダ の位置を算出し、暗号化コンテンツ力 付加情報ヘッダを分離する。
[0063] ヘッダ変換部 115は、付加情報ヘッダを再生用フレームヘッダとしてのオーディオ ヘッダ(ADTSヘッダ: Audio Data Transport Stream)に変換する。ここで、オーディ ォヘッダへの変換とは例えば、 MP4内の ftypが AAC +を示す場合に、 AACの AD TSフォーマットでしか再生できな 、機器でもオーディオデータを再生できるように、 A AC用のヘッダに変換するような処理を示している。変換後のヘッダは、フレーム長解 析'ヘッダ待機部 116において一時待機させられる。なお、ヘッダ変換が必要でない 場合もあり得る。この場合は、付加情報ヘッダに含まれたフレームヘッダがそのまま 用いられる。
[0064] 一方、暗号'復号処理部 109は、暗号連鎖単位のデータ長に関する情報を用いて 、暗号ィ匕データを順次復号ィ匕し、内蔵メモリ 111に展開していく。フレーム長解析'へ ッダ待機部 116は、付加情報ヘッダに格納されたフレーム長に関する情報力もフレ ーム境界を検知し、フレーム境界が存在する暗号ィ匕データの復号ィ匕が終了すると、 待機させてぉ ヽたヘッダと、内蔵メモリ 111に展開されて ヽた復号化されたデータと を、データ変換部 117に出力する。
[0065] データ変換部 117は、復号化されたデータに対して、フレーム長に関する情報を用 いて、分離'連結処理を行うことによって、フレームデータを生成する。そしてそのフレ ームデータの先頭に変換後のヘッダを付カ卩し、デコード ·オーディオ処理部 113に出 力する。出力されるデータは、フレームデータ毎にオーディオヘッダが配置され、か つオーディオフォーマット(AAC)に準拠したものである。このため、第 1の CPU102 やシステムメモリ 103を必要とすることなぐそのまま再生することができる。
[0066] 図 7のフローチャートを用いて、図 6のように暗号化コンテンツを復号.再生する処理 について詳細に説明する。図 7において、点線はデータ処理を表している。
[0067] まず、不正なターゲット 105に格納された暗号ィ匕コンテンツを再生することを防止す るために、ホストとなる暗号ィ匕データ生成 '再生装置 101とターゲット 105との間で認 証を行う(S701)。認証処理は、暗号ィ匕データ生成'再生装置 101とターゲット 105 に予め格納されている認証鍵を用いて行われる。認証に成功した後に、暗号化コン テンッを復号ィ匕するための鍵となるコンテンツ鍵が生成される。
[0068] 次に、制御部 106がターゲット 105の保護領域 402に格納された暗号連鎖単位情 報を参照して、連鎖暗号方式で暗号化する単位となる暗号連鎖単位のデータ長を喑 号'復号処理部 109に設定する(S702)。次に、ヘッダ解析'付加部 118が、暗号ィ匕 データの先頭に付加情報ヘッダが含まれて ヽるカゝ否かを判断し、付加情報ヘッダが 含まれている場合にはこれを分離する(S703)。まず、 1番目の暗号ィ匕データ 1の先 頭には必ず付加情報ヘッダが含まれていると判断する。また、 2番目以降の暗号ィ匕 データについては、暗号連鎖単位のデータ長と、前に分離された付加情報ヘッダの 中に含まれたフレーム長の情報とから、付加情報ヘッダの有無を判断する。分離され た付加情報ヘッダは、ヘッダ変換部 115によってオーディオヘッダに変換され (S70 4)、フレーム長解析 ·ヘッダ待機部 116にお 、て待機させられる(S705)。
[0069] また、付加情報ヘッダが含まれている力否かに関わらず、暗号化データがターゲッ ト 105から暗号ィ匕データ生成 ·再生装置 101へと読み出され (S706)、暗号'復号処 理部 109にお ヽて復号化される (S707)。復号化されたデータは内蔵メモリ 111に順 次展開されていく。
[0070] 1つの暗号化データの復号化が終了すると(S708で Yes)、フレーム長解析.へッ ダ待機部 116が、付加情報ヘッダに含まれるフレーム長の情報に基づいて、フレー ム境界が暗号ィ匕データに含まれていたか否かを判断する(S709)。フレーム境界が 含まれていた場合は、データ変換部 117が、フレーム長解析'ヘッダ待機部 116にお V、て待機して 、たオーディオヘッダを読み出すとともに、内蔵メモリ 111に一時格納 して ヽた復号化されたデータを読み出し、新たなフレームデータの先頭にオーディオ ヘッダが付与されるように、データの並び替えを行う(S710)。一方、フレーム境界が 含まれて!/、な!/、場合は、次の暗号連鎖単位のデータ長を暗号 ·復号処理部 109に 設定し (S702)、一連の処理を繰り返す。
[0071] 並び替えによって生成されたフレームデータは、順次デコード 'オーディオ処理部 1 13に入力され、デコード再生される(S711)。
[0072] 図 8は上述した動作を回路間のデータの流れとして記述した回路動作概要図であ る。図 8に示すように、ターゲット 105に格納された暗号ィ匕コンテンツは、ターゲット IF 部 112を介して、付加情報ヘッダ付き暗号ィ匕データとして内蔵メモリ 111に入力され る。ヘッダ解析'付加部 118は、別途ターゲット 105から読み出された暗号連鎖単位 情報と付加情報ヘッダに格納されたフレーム長に関する情報とに基づいて、内蔵メ モリ 111から読み出した付加情報ヘッダ付き暗号ィ匕データ力 付加情報ヘッダを抽 出'分離する。分離された付加情報ヘッダは、ヘッダ変換部 115に出力される。へッ ダ変換部 115は入力された付加情報ヘッダをオーディオヘッダに変換して、フレーム 長解析 ·ヘッダ待機部 116に出力する。一方、暗号'復号処理部 109には、暗号連 鎖単位のデータ長が暗号ィ匕データ毎に制御部 106によって設定される。そして、暗 号 '復号処理部 109は、付加情報ヘッダが分離された暗号ィ匕データを復号ィ匕し、平 文データとして内蔵メモリ 111に展開する。
[0073] フレーム長解析'ヘッダ待機部 116は、フレーム境界が存在する暗号化データを検 知して、その復号ィ匕が終了すると、内蔵メモリ 111に展開された平文データをデータ 変換部 117に出力させる。また自らに待機させておいたオーディオヘッダをデータ変 換部 117に出力する。データ変換部 117はフレームデータの先頭に、対応するォー ディォヘッダが配置されるようにデータの並び替えを行!、、デコード 'オーディオ処理 部 113に出力する。デコード ·オーディオ処理部 113は入力されるフレームデータを 順次デコード再生する。 [0074] 以上の方法で暗号ィ匕コンテンツの復号ィ匕を行うことにより、一連の暗号化データを 復号化しつつ、フレームデータの先頭にオーディオヘッダを付与した形で、内蔵メモ リ 111からデコード ·オーディオ処理部 113にデータを転送することができ、デコード · オーディオ処理部 113はそのままデコード再生を行うことが可能となる。したがって、 従来のようにまとまった量の暗号ィ匕コンテンツを復号ィ匕しなくとも、順次フレームデー タを再生することが可能であるので、システムメモリを一切介在させず処理を行うこと が可能となる。これにカ卩えて、ヘッダの割り振りが暗号化データ生成'再生装置 101 内の閉じた処理として行われるため、第 1の CPU102に負担をかけることもない。した がって、大幅な消費電力の削減が可能となり、従来の数倍〜 10倍もの数の暗号化コ ンテンッを充電無しで再生することが可能となる。
[0075] なお、図 7のフローチャートによると、 1つの暗号ィ匕データが全て復号ィ匕された段階 でオーディオヘッダを付与してデータの並び替えを行っている力 この代わりに、復 号化されたデータを順次デコード ·オーディオ処理部 113に出力しつつ、フレーム境 界を検知したときにオーディオヘッダを挿入することも可能である。これにより、ォー ディォヘッダの待機時間が短くなり(暗号連鎖単位分の待機時間よりも短くなり得る) 、内蔵メモリ 111に展開するデータ量も少なくできるので、回路規模が縮小できる。
[0076] (第 1の実施形態の改変例)
上述の実施形態では、暗号連鎖単位のデータ長を示す暗号連鎖単位情報は、暗 号ィ匕コンテンツと関連付けた上で、暗号ィ匕コンテンツとは別データとして、ターゲット 1 05の保護領域 402に格納するものとした。し力しながら、この暗号連鎖単位情報は、 分割して、付加情報ヘッダの中に含めるようにしても力まわな!/、。
[0077] すなわち、付加情報ヘッダの中に、暗号ィ匕データの暗号連鎖単位のデータ長に関 する情報を含めるようにする。ただし、付加情報ヘッダは、全ての暗号ィ匕データの先 頭に付与されて 、る訳ではなぐ付加情報ヘッダが付された暗号ィ匕データもあれば、 付加情報ヘッダが付されていない暗号ィ匕データもある。そこで、本改変例では、各付 加情報ヘッダは、当該付加情報ヘッダから次の付加情報ヘッダまでの間にある暗号 化データについての、暗号連鎖単位のデータ長に関する情報を有するものとする。
[0078] この場合には、暗号ィ匕コンテンツの復号ィ匕は図 9に示すように行われる。すなわち、 各暗号ィ匕データについての暗号連鎖単位のデータ長は、その前に付加されている 付加情報ヘッダを解析することによって、取得することができる。
[0079] (第 2の実施形態)
上述の第 1の実施形態では、データ暗号ィ匕において、 n番目と (n+ 1)番目のフレ ームデータの境界が存在する暗号化データに対して、(n+ 1)番目のフレームデータ に対応する付加情報ヘッダを、その先頭に付加するものとした。これに対して本発明 の第 2の実施形態では、フレームデータの境界が存在する暗号ィ匕データに対応付け た各付加情報ヘッダを、一連の複数の暗号ィ匕データの先頭に、まとめて付加するも のとする。なお、本実施形態に係る装置構成は図 1と同様であり、ここでは説明を省 略する。
[0080] <暗号化データ生成 >
図 10は本実施形態における暗号ィ匕データ生成の概念図であり、付加情報ヘッダ の付加方法を概念的に示す図である。図 10に示すように、本実施形態では、フレー ムデータ毎の付加情報ヘッダを一括して、一連の暗号化データの先頭に配置する。 また、各付加情報ヘッダと、対応するフレームデータとは関連付けられている。
[0081] さらに、付加情報ヘッダと暗号ィ匕データとの関係も、第 1の実施形態と同様であり、 n番目と (n+ 1)番目のフレームデータの境界が存在する暗号ィ匕データに対して、(n + 1)番目のフレームデータに対応する付加情報ヘッダが対応付けられて!/、る。すな わち、 1番目の付加情報ヘッダは暗号ィ匕データ 1に対応する。 2番目の付加情報へッ ダは、フレームデータ 1とフレームデータ 2の境界が暗号化データ 2に存在するため、 暗号化データ 2に対応する。暗号ィ匕データ 3はフレーム境界が存在しないため、これ に対応する付加情報ヘッダは存在しな ヽ。暗号ィ匕データ 4はフレームデータ 2とフレ ームデータ 3の境界が存在するため、 3番目の付加情報ヘッダがこれに対応する。
[0082] ここで、付加情報ヘッダは、第 1の実施形態と同様に、対応するフレームデータの データ長に関する情報を含むフレームヘッダを含んでいる。これに加えて、本実施形 態における付加情報ヘッダは、オフセットを有している。ここでオフセットとは、自らが どの暗号ィ匕データの付加情報ヘッダであるかを示す情報である。具体的には例えば 、対応する暗号化データが先頭から数えて何番目のものであるかを表す情報、ある いは先頭から、対応する暗号ィ匕データの位置までのビット長を表す情報である。この オフセットによって、付加情報ヘッダがどの暗号ィ匕データと対応付けられているかを 知ることができる。
[0083] なお、本実施形態にぉ 、て、付加情報ヘッダは、一連の暗号ィ匕データの先頭に配 置されて!、る必要は必ずしもなぐ一括で配置されて 、れば先頭以外の場所に配置 されていても力まわない。また、暗号ィ匕データとは異なる領域に配置されていてもか まわない。
[0084] 図 11は外部力 ダウンロードされた AVデータを暗号ィ匕してターゲット 105に格納 する処理のフローチャートであり、図 10のような暗号化コンテンツを生成するためのも のである。図 11において、点線はデータ処理を表している。
[0085] 図 11のフローチャートは図 3とほぼ同様であり、図 3と共通のステップには同一の符 号を付しており、ここではその詳細な説明を省略する。図 3と異なるのは、ヘッダ生成 のステップ(S315)である。ステップ S315では、フレーム長 '暗号連鎖解析部 114が 、フレーム長等にカ卩えてオフセットを含むように、付加情報ヘッダを生成する。そして ステップ S310において、各付加情報ヘッダは暗号ィ匕データの先頭にまとめて配置さ れる(S311)。この場合、 B音号化コンテンツを生成するときに予め、付加情報ヘッダを 格納するメモリ領域を設けておくのが好まし 、。
[0086] <暗号化データの復号 '再生 >
図 12を用いて、本実施形態における暗号ィ匕データの復号ィ匕処理を概念的に説明 する。上述のように、再生対象データとしての暗号化コンテンツは、フレームデータの 境界が存在する暗号ィ匕データに対応付けられた各付加情報ヘッダが、一連の暗号 化データの先頭に一括して配置されたデータ構造となっている。
[0087] 図 12の処理は第 1の実施形態における図 6の処理とほぼ同様である。異なっている のは、ヘッダ解析'付加部 118が、各付加情報ヘッダがどの暗号化データに対応す るものである力を、当該付加情報ヘッダのオフセットを解析することによって、求める 点である。
[0088] ここで本実施形態では、付加情報ヘッダとこれに対応する暗号ィ匕データとは、連続 するアドレス空間に配置されていない。よって、 1つの付加情報ヘッダの解析が終了 すると、オフセットを用いて、ターゲット 105からの読み出しアドレスを、処理すべき暗 号化データの先頭に設定する。例えば、 1番目の付加情報ヘッダにはオフセット 1と して暗号ィ匕データ 1の位置が設定されており、 2番目の付加情報ヘッダにはオフセッ ト 2として暗号ィ匕データ 2の位置が設定されており、 3番目の付加情報ヘッダにはオフ セット 3として暗号ィ匕データ 4の位置が設定されている。そして、 1番目の付加情報へ ッダの解析が終了すると、暗号ィ匕データ 1の先頭へ読み出しアドレスを変化させて復 号ィ匕を行う。 2番目の付加情報ヘッダの解析が終了すると、暗号化データ 2の先頭へ 読み出しアドレスを変化させて復号ィ匕を行い、さらに連続して暗号ィ匕データ 3の復号 化が終了してから 3番目の付加情報ヘッダの解析を行う。 3番目の付加情報ヘッダの 解析が終了すると、暗号ィ匕データ 4の先頭へ読み出しアドレスを変化させて復号ィ匕を 行う。具体的なフローチャートについては後述する。
[0089] 図 13のフローチャートを用いて、図 12のように暗号化コンテンツを復号.再生する 処理について詳細に説明する。図 13において、点線はデータ処理を表している。
[0090] まず、不正なターゲット 105に格納された暗号ィ匕コンテンツを再生することを防止す るために、ホストとなる暗号ィ匕データ生成 '再生装置 101とターゲット 105との間で認 証を行う(S701)。認証処理は、暗号ィ匕データ生成'再生装置 101とターゲット 105 に予め格納されている認証鍵を用いて行われる。認証に成功した後に、暗号化コン テンッを復号ィ匕するための鍵となるコンテンツ鍵が生成される。
[0091] 次に、制御部 106がターゲット 105の保護領域 402に格納された暗号連鎖単位情 報を参照して、 1番目の暗号化データ 1の暗号連鎖単位のデータ長を暗号'復号処 理部 109に設定する(S702)。そして、暗号ィ匕データ 1には 1番目の付加情報ヘッダ が対応するので、ヘッダ解析'付加部力 ターゲット 105からの読み出しアドレスを 1 番目の付加情報ヘッダへと変更し、これを読み出して解析する(S721)。 2番目以降 の付加情報ヘッダが含まれて 、るか否かにっ 、ては、暗号連鎖単位のデータ長と、 前に分離された付加情報ヘッダの中に含まれたフレーム長の情報とから判断される。 分離された付加情報ヘッダは、ヘッダ変換部 115によってオーディオヘッダに変換さ れ (S704)、フレーム長解析 ·ヘッダ待機部 116にお 、て待機させられる (S705)。
[0092] また、本実施形態では、付加情報ヘッダが、対応する暗号化データの位置情報を オフセットという形で有している。そこで、オフセットを参照して、ターゲット 105からの 読み出しアドレスを処理対象となる暗号ィ匕データの先頭に変更して(S722)、ターゲ ット 105から暗号ィ匕データ生成 '再生装置 101へと暗号ィ匕データを読み出していく(S 706)。読み出された暗号ィ匕データは暗号'復号処理部 109において復号ィ匕される( S707)。復号化されたデータは内蔵メモリ 111に順次展開されて!、く。
[0093] 1つの暗号化データの復号化が終了すると(S708で Yes)、フレーム長解析.へッ ダ待機部 116が、付加情報ヘッダに含まれるフレーム長の情報に基づいて、フレー ム境界が暗号ィ匕データに含まれていたか否かを判断する(S709)。フレーム境界が 含まれていた場合は、データ変換部 117が、フレーム長解析'ヘッダ待機部 116にお V、て待機して 、たオーディオヘッダを読み出すとともに、内蔵メモリ 111に一時格納 して ヽた復号化されたデータを読み出し、新たなフレームデータの先頭にオーディオ ヘッダが付与されるように、データの並び替えを行う(S711)。
[0094] 一方、フレーム境界が含まれて 、な 、場合は、次の暗号連鎖単位のデータ長を喑 号'復号処理部 109に設定する (S723)。そして、以前に解析した付加情報ヘッダが 有するフレーム長の情報と、これまでに復号化した暗号化データのデータ長と、次に 復号化する暗号連鎖単位のデータ長の情報から、付加情報ヘッダの解析が必要か 否か (次の暗号ィ匕データが付加情報ヘッダを有する力否か)を判断する(S724)。付 加情報ヘッダの解析が必要ない場合は、ターゲット 105から暗号ィ匕データを読み出 し、復号化していく。一方、付加情報ヘッダの解析が必要な場合は、ターゲット 105 力 の読み出しアドレスを次の付加情報ヘッダの位置へと変更し、ヘッダの読み出し '解析から一連の処理を繰り返す。
[0095] 並び替えによって生成されたフレームデータは、順次デコード 'オーディオ処理部 1 13に入力され、デコード再生される(S711)。
[0096] 本実施形態における回路動作概要図は、第 1の実施形態における図 8と同様であ る。ただし、各々の構成要素が行う処理は、図 13のフローチャートのように、第 1の実 施形態から一部変更されて!ヽる。
[0097] (第 3の実施形態)
上述の第 1の実施形態では、データ暗号ィ匕において、 n番目と (n+ 1)番目のフレ ームデータの境界が存在する暗号化データに対して、(n+ 1)番目のフレームデータ に対する付加情報ヘッダを対応付けるとともに、この付加情報ヘッダを、当該暗号ィ匕 データの先頭に付加するものとした。すなわち、フレームデータの境界が存在しない 暗号ィ匕データの先頭には、ヘッダは存在しな力つた。
[0098] これに対して、本発明の第 3の実施形態では、フレームデータの境界の有無に関わ らず、全ての暗号ィ匕データの先頭に、固定長のヘッダが付与されるものとする。すな わち、フレームデータの境界が存在しない暗号化データに対して、その先頭に、フレ ームヘッダを含まないダミーヘッダを付カ卩するものとする。
[0099] そして、付カ卩情報ヘッダおよびダミーヘッダは、自らがフレームデータの真のヘッダ であるか否かを示すフラグを有しているものとする。すなわち、このフラグは、ヘッダが フレームヘッダを含むものであるか否かを示す。ここでは、フラグが 1のときは、ヘッダ はフレームヘッダを含む付加情報ヘッダであることを示し、フラグが 0のときは、ヘッダ はフレームヘッダを含まないダミーヘッダであることを示すものとする。
[0100] さらに、各ヘッダには、対応する暗号化データの暗号連鎖単位のデータ長に関す る情報がそれぞれ格納されているものとする。すなわち、フラグが 0であるダミーへッ ダであっても、暗号連鎖単位のデータ長に関する情報を有している。したがって、第 1の実施形態の改変例のように、各付加情報ヘッダが、 1つまたは複数の暗号ィ匕デ ータについての暗号連鎖単位のデータ長に関する情報を有する場合に比べて、処 理が簡単になる。また、制御部 106がヘッダを振り分ける必要がないので、処理が簡 単化される。なお、本実施形態に係る装置構成は図 1と同様であり、ここでは説明を 省略する。
[0101] <暗号化データ生成 >
図 14は本実施形態における暗号ィ匕データ生成の概念図であり、付加情報ヘッダ の付加方法を概念的に示す図である。ここでは、予め、全ての暗号ィ匕データに共通 のヘッダフォーマットが準備されているものとする。このヘッダフォーマットには、フレ ームヘッダを格納するフレームヘッダフィールドと、暗号連鎖単位のデータ長に関す る情報を格納する暗号連鎖単位フィールドと、フラグとが割り振られている。フラグは 最初 0になっている。 [0102] フレーム長 '暗号連鎖解析部 114は、 moovに一括で配置されたヘッダをフレーム 毎のフレームヘッダとして振り分ける。そして、 n番目と(n+ 1)番目のフレームデータ の境界が存在する暗号ィ匕データの先頭に付加するヘッダに対して、そのフレームへ ッダフィールドに(n+ 1)番目のフレームデータに対応するフレームヘッダを格納する とともに、フラグを 1に設定する。また、システムメモリ 103に格納された暗号連鎖単位 情報に基づ 、て、各ヘッダの暗号連鎖単位フィールドを書きかえる。
[0103] すなわち、図 14に示すように、暗号ィ匕データ 1の先頭に配置されるヘッダ (付加情 報ヘッダ)は、フレームデータ 1のフレームヘッダが挿入されるとともに、フラグが 1に なる。したがって、この付加情報ヘッダでは、暗号連鎖単位のデータ長に関する情報 とフレームデータ 1のフレーム長に関する情報の両方が有効である。暗号化データ 2 にはフレームデータ 1とフレームデータ 2の境界が存在するため、その先頭に配置さ れるヘッダ(付加情報ヘッダ)は、フレームデータ 2のフレームヘッダが挿入されるとと もに、フラグが 1になる。したがって、この付加情報ヘッダでも、暗号連鎖単位のデー タ長に関する情報とフレームデータ 2のフレーム長に関する情報の両方が有効である 。暗号ィ匕データ 3にはフレームの境界が存在しないため、その先頭に配置されるへッ ダ (ダミーヘッダ)はフラグが 0となり、暗号連鎖単位のデータ長に関する情報だけが 有効になる。
[0104] ここで、各ヘッダの長さは固定長であるものとする。また、フレームヘッダは、フレー ム長に関する情報のみではなくオーディオファイルフォーマットに関する情報なども 含むものとする。
[0105] 図 15は外部力もダウンロードされた AVデータを暗号ィ匕してターゲット 105に格納 する処理のフローチャートであり、図 14のような暗号化データを生成するためのもの である。図 15において、点線はデータ処理を表している。なお、第 1の実施形態にお ける図 3と同様のステップについては同じ符号を付しており、ここでは説明を省略する
[0106] [S331]
暗号連鎖単位が暗号 '復号処理部 109に設定される毎に(S302)、フレーム長 '喑 号連鎖解析部 114は、予め準備しておいた共通ヘッダフォーマットにおける暗号連 鎖単位フィールドを、設定された暗号連鎖単位のデータ長に書き換える。また、デー タ入力開始時(S304で Yes)には、最初の暗号ィ匕データ 1用のヘッダについて、フラ グを 1に書き換えるとともに、フレームヘッダフィールドをフレームデータ 1のフレーム ヘッダに書き換える。また、 n番目と (n+ 1)番目のフレームデータの境界が検知され ると(S304で Yes)、検知された暗号ィ匕データ用のヘッダについて、フラグを 1に書き 換えるとともに、フレームヘッダフィールドを(n+ 1)番目のフレームデータのフレーム ヘッダに書き換える。
[0107] [S333]
1つの暗号連鎖単位の暗号ィ匕が終了すると(S308で Yes)、ヘッダ解析 '付加部 11 8力 ステップ S331にお 、て生成されたヘッダをフレーム長 ·暗号連鎖解析部 114 力 読み出し、暗号ィ匕データの先頭に付加する。
[0108] [S332]
暗号ィ匕データを、その先頭にヘッダが付加された状態で、システムメモリ 103に展 開する。この結果、全ての暗号ィ匕データの先頭にヘッダが付加されている力 フレー ム境界が存在する暗号ィヒデータの先頭に配置されたヘッダすなわち付加情報へッ ダのみがフレームヘッダを含み、その他のヘッダすなわちダミーヘッダは、暗号連鎖 単位のデータ長に関する情報は有する力 フレームヘッダは含まない。もちろん、ダ ミーヘッダは、暗号連鎖単位のデータ長以外の情報を含んで ヽても力まわな 、。
[0109] [S334]
全ての AVコンテンツの暗号化が終了し暗号化コンテンツが生成されると、この暗号 化コンテンツをシステムメモリ 103から読み出してターゲット 105に書き込む。ただし、 システムメモリ 103に格納されていた暗号連鎖単位情報は、各暗号化データの先頭 に付与されたヘッダにそれぞれ埋め込まれているので、ターゲット 105に書き込まな い。
[0110] なお、本実施形態では、暗号連鎖単位の暗号ィ匕が終了する毎にヘッダが暗号ィ匕 データの先頭に配置されていくので、暗号ィ匕データをシステムメモリ 103に展開する 必要は必ずしもなぐ暗号ィ匕データ毎に内蔵メモリ 111からターゲット 105に書き込む ことも可能である。これにより、暗号ィ匕データをシステムメモリ 103に展開し直す必要 がないため、暗号ィ匕コンテンツ生成に必要な消費電力が大幅に削減される。
[0111] 以上の処理によって生成された暗号ィ匕コンテンツは、 n番目と (n+ 1)番目のフレー ムデータの境界が存在する暗号化データの先頭に、(n+ 1)番目のフレームデータ に対するフレームヘッダを含む付加情報ヘッダが付加されているとともに、フレーム データの境界が存在しな!、暗号化データの先頭に、フレームヘッダを含まな 、ダミー ヘッダが付加されたデータ構造となっている。このデータ構造によると、後述するよう に、暗号化コンテンツの復号および再生力 暗号化データ生成'再生装置 101内の 閉じた処理として、システムメモリ 103を用いずに実行可能であり、消費電力が大幅 に低減される。
[0112] <暗号化データの復号 '再生 >
図 16を用いて、本実施形態における、ターゲット 105に格納された暗号ィ匕コンテン ッを復号化する処理を概念的に説明する。上述のように、再生対象データとしての暗 号化コンテンツは、 n番目と(n+ 1)番目のフレームデータの境界が存在する暗号化 データの先頭に、(n+ 1)番目のフレームデータに対するフレームヘッダを含む付カロ 情報ヘッダが付加されているとともに、フレームデータの境界が存在しない暗号ィ匕デ ータの先頭に、フレームヘッダを含まな 、ダミーヘッダが付加されたデータ構造とな つている。また、付加情報ヘッダおよびダミーヘッダは、それぞれ、対応する暗号ィ匕 データにつ 、ての暗号連鎖単位のデータ長に関する情報を有して 、る。
[0113] ヘッダ解析 '付加部 118は、ターゲット 105から暗号ィ匕コンテンツを順次読み出すと 、ヘッダに格納された暗号連鎖単位のデータ長に関する情報から、ヘッダの位置を 特定し暗号化データと分離する。ヘッダから得た暗号連鎖単位のデータ長に関する 情報は、暗号'復号処理部 109に設定される。また、分離されたヘッダのフラグを参 照して、このヘッダがフレームヘッダを含む付加情報ヘッダであるか否かを判断し、 付加情報ヘッダである場合は、これをヘッダ変換部 115に出力する。ヘッダ変換部 1 15は、入力された付加情報ヘッダをオーディオヘッダ (ADTSヘッダ)に変換する。 なお、ヘッダ変換が必要でない場合もあり得る。変換後のヘッダは、暗号 '復号処理 部 109によってフレーム境界が存在する暗号ィ匕データが全て復号ィ匕されるまで、フレ ーム長解析 ·ヘッダ待機部 116にお 、て待機される。ダミーヘッダは破棄される。 [0114] 一方、暗号'復号処理部 109は、暗号連鎖単位のデータ長に関する情報を用いて 、暗号ィ匕データを順次復号ィ匕し、内蔵メモリ 111に展開していく。フレーム長解析'へ ッダ待機部 116は、付加情報ヘッダに格納されたフレーム長に関する情報力もフレ ーム境界を検知し、フレームの境界が存在する暗号ィ匕データの復号ィ匕が終了すると 、待機させておいたヘッダと、内蔵メモリ 111に展開されていた復号化されたデータと を、データ変換部 117に出力する。
[0115] データ変換部 117は、復号化されたデータに対して、フレーム長に関する情報を用 いて、分離'連結処理を行うことによって、フレームデータを生成する。そしてそのフレ ームデータの先頭に変換後のヘッダを付カ卩し、デコード ·オーディオ処理部 113に出 力する。出力されるデータは、フレームデータ毎にオーディオヘッダが配置され、か つオーディオフォーマット(AAC)に準拠したものである。このため、第 1の CPU102 やシステムメモリ 103を必要とすることなぐそのまま再生することができる。
[0116] 図 17のフローチャートを用いて、図 16のように暗号化コンテンツを復号.再生する 処理について詳細に説明する。図 17において、点線はデータ処理を表している。な お、第 1の実施形態における図 7と同様のステップについては同じ符号を付しており、 ここでは説明を省略する。
[0117] [S731]
ヘッダ解析.付加部 118が、暗号化データの先頭に配置されたヘッダの暗号連鎖 単位フィールドを参照して、暗号 ·復号処理部 109に暗号連鎖単位のデータ長を設 定する。
[0118] [S732]
ヘッダ解析.付加部 118が、暗号ィ匕データの先頭に配置されたヘッダのフラグが 1 であるカゝ 0であるかを判断する。
[0119] [S733]
フラグが 1である場合は、このヘッダはフレームヘッダを含む付加情報ヘッダである ので、ヘッダと暗号ィ匕データとを分離して、ヘッダはヘッダ変換部 115に出力し、暗 号化データは暗号 ·復号処理部 109に出力する。暗号ィ匕データはステップ S 707に おいて復号化される。ヘッダはステップ S704において変換される。 [0120] [S734]
フラグが 0である場合は、このヘッダはフレームヘッダを含まな!/、ダミーヘッダである ので、暗号化データから分離して破棄する。暗号化データは暗号'復号処理部 109 に出力され、ステップ S 707において復号ィ匕される。
[0121] 以上の方法で暗号ィ匕コンテンツの復号ィ匕を行うことにより、一連の暗号化データを 復号化しつつ、フレームデータの先頭にオーディオヘッダを付与した形で、内蔵メモ リ 111からデコード ·オーディオ処理部 113にデータを転送することができ、デコード · オーディオ処理部 113はそのままデコード再生を行うことが可能となる。したがって、 従来のようにまとまった量の暗号ィ匕コンテンツを復号ィ匕しなくとも、順次フレームデー タを再生することが可能であるので、システムメモリを一切介在させず処理を行うこと が可能となる。これにカ卩えて、ヘッダの割り振りが暗号化データ生成'再生装置 101 内の閉じた処理として行われるため、第 1の CPU102に負担をかけることもない。した がって、大幅な消費電力の削減が可能となり、従来の数倍〜 10倍もの数の暗号化コ ンテンッを充電無しで再生することが可能となる。
[0122] また、本実施形態では、全ての暗号ィ匕データにヘッダが付与されており、かつその ヘッダの中に暗号連鎖単位のデータ長に関する情報が含まれている。このため、制 御部 106によるソフトウェア処理を介入させなくとも、ヘッダ解析 ·付加部 118によって 、暗号連鎖単位を設定していくことが可能であり、さらに消費電力の削減が可能であ る。
[0123] (第 4の実施形態)
本発明の第 4の実施形態では、上述の第 2および第 3の実施形態を組み合わせて 行うものとする。すなわち、第 3の実施形態と同様に、 n番目と (n+ 1)番目のフレーム データの境界が存在する暗号化データに対して、(n+ 1)番目のフレームデータに 対する付加情報ヘッダを対応付けるとともに、フレームデータの境界が存在しない暗 号ィ匕データに対して、フレームヘッダを含まないダミーヘッダを対応付ける。そして、 第 2の実施形態と同様に、対応付けた各付加情報ヘッダおよびダミーヘッダを、一連 の複数の暗号ィ匕データの先頭に、まとめて付加するものとする。
[0124] 図 18は本実施形態における暗号ィ匕データ生成の概念図である。図 18に示すよう に、本実施形態では、付加情報ヘッダとダミーヘッダを一括して、一連の暗号化デー タの先頭に配置する。
[0125] 図 19は外部力もダウンロードされた AVデータを暗号ィ匕してターゲット 105に格納 する処理のフローチャートであり、図 18のような暗号化コンテンツを生成するためのも のである。図 19において、点線はデータ処理を表している。
[0126] 図 19のフローチャートは図 15とほぼ同様であり、図 15と共通のステップには同一の 符号を付しており、ここではその詳細な説明を省略する。図 15と異なるのは、ヘッダ 生成のステップ(S341)である。ステップ S341では、フレーム長 '暗号連鎖解析部 1 14が、フレーム長等に加えてオフセットを含むように、付加情報ヘッダおよびダミー ヘッダを生成する。そしてステップ S333において、各付加情報ヘッダおよびダミーへ ッダは暗号ィ匕データの先頭にまとめて配置される(S342)。この場合、暗号化コンテ ンッを生成するときに、予め、付加情報ヘッダおよびダミーヘッダを格納するメモリ領 域を設けておくのが好ましい。
[0127] 図 20は本実施形態における暗号ィ匕コンテンツの復号ィ匕処理を概念的に示す図で ある。図 20の処理は第 3の実施形態における図 16の処理とほぼ同様である力 へッ ダ解析'付加部 118が、各付加情報ヘッダがどの暗号ィ匕データに対応するものであ るかを、当該付加情報ヘッダのオフセットを解析することによって、求める点が、異な つている。
[0128] 図 21は本実施形態における暗号化コンテンッを復号 ·再生する処理を示すフロー チャートである。図 20のフローチャートは図 17とほぼ同様であり、図 17と共通のステ ップには同一の符号を付しており、ここではその詳細な説明を省略する。
[0129] [S741]
フラグが 1である場合は、このヘッダはフレームヘッダを含む付加情報ヘッダである ので、ヘッダ変換部 115に出力する。さらに、オフセットを解析し、処理対象となる暗 号化データの開始位置を判断する。
[0130] [S742]
ターゲット 105からの読み出しアドレスを、処理対象となる暗号ィ匕データの先頭に変 更する。 [0131] [S743]
処理対象となる暗号化データについての暗号連鎖単位のデータ長を、暗号'復号 処理部 109に設定する。
[0132] すなわち、本実施形態では、ヘッダが一連の暗号ィ匕データの先頭にまとめて付カロ されているので、ヘッダ解析'分離と暗号連鎖単位設定との順番を、図 17の逆にして いる。また、ヘッダと暗号ィ匕データとが連続していないので、ヘッダ解析'分離と暗号 連鎖単位設定との間に、オフセット位置への移動処理を追カ卩している。
[0133] 以上のように、本発明によると、消費電力を大幅に削減できるので、暗号化データ 生成 ·再生装置 101を携帯情報端末として構成した場合などに非常に効果的である 産業上の利用可能性
[0134] 本発明によると、暗号ィ匕データの生成 ·再生を行う装置について、消費電力を大幅 に削減できるので、例えば、携帯電話などの情報処理装置において利用可能である

Claims

請求の範囲
[1] N (Nは 2以上の整数)個のフレームデータと前記 N個のフレームデータを管理する ための管理データとを含む暗号ィ匕対象データを、任意のデータ長の暗号連鎖単位 を用いた連鎖暗号方式によって暗号化するデータ暗号化方法であって、
前記管理データから、前記各フレームデータにそれぞれ対応し、当該フレームデー タのフレームヘッダを含む、付加情報ヘッダを生成するステップ(a)と、
前記各フレームデータを連鎖暗号化方式によって暗号化し、一連の複数の暗号ィ匕 データを生成するステップ (b)と、
前記複数の暗号化データのうち、 n (nは 1以上 N未満の整数)番目と (n+ 1)番目 のフレームデータの境界が存在する暗号化データに対して、(n+ 1)番目のフレーム データに対応する前記付加情報ヘッダを対応付けるとともに、前記付加情報ヘッダ を、前記複数の暗号ィ匕データにおける所定位置に付加するステップ (c)とを備えた ことを特徴とするデータ暗号化方法。
[2] 請求項 1において、
ステップ )において、前記付加情報ヘッダを、対応付けられた暗号ィ匕データの先 頭に付加する
ことを特徴とするデータ暗号化方法。
[3] 請求項 2において、
前記付加情報ヘッダは、当該付加情報ヘッダから次の付加情報ヘッダまでの間に ある暗号ィ匕データについての、暗号連鎖単位のデータ長に関する情報を有する ことを特徴とするデータ暗号化方法。
[4] 請求項 2において、
ステップ )において、フレームデータの境界が存在しない暗号化データに対して 、その先頭に、フレームヘッダを含まないダミーヘッダを付カ卩する
ことを特徴とするデータ暗号化方法。
[5] 請求項 4において、
前記付加情報ヘッダおよびダミーヘッダは、フレームヘッダを含むか否かを示すフ ラグを有している ことを特徴とするデータ暗号化方法。
[6] 請求項 4において、
前記付加情報ヘッダおよびダミーヘッダは、付加されて!、る暗号化データの暗号 連鎖単位のデータ長に関する情報を有する
ことを特徴とするデータ暗号化方法。
[7] 請求項 1において、
ステップ )において、前記付加情報ヘッダを、前記複数の暗号化データの先頭に 、まとめて付加する
ことを特徴とするデータ暗号化方法。
[8] 請求項 7において、
フレームデータの境界が存在しない暗号化データに対して、フレームヘッダを含ま ないダミーヘッダを対応付けるとともに、このダミーヘッダを、前記付加情報ヘッダとと もに、前記複数の暗号ィ匕データの先頭に、まとめて付加する
ことを特徴とするデータ暗号化方法。
[9] 請求項 8において、
前記付加情報ヘッダおよびダミーヘッダは、フレームヘッダを含むか否かを示すフ ラグを有している
ことを特徴とするデータ暗号化方法。
[10] 請求項 1において、
前記付加情報ヘッダのデータ長は、固定である
ことを特徴とするデータ暗号化方法。
[11] 請求項 1において、
付加情報ヘッダが付加された前記複数の暗号化データと、暗号連鎖単位のデータ 長に関する情報とを、外部記憶手段に記憶する
ことを特徴とするデータ暗号化方法。
[12] N (Nは 2以上の整数)個のフレームデータを含む暗号ィ匕対象データ力 任意のデ ータ長の暗号連鎖単位を用いた連鎖暗号方式によって暗号化されてなる、再生対象 データを再生する暗号化データ再生方法であって、 前記再生対象データは、
複数の暗号化データと、
前記 N個のフレームデータにそれぞれ対応する N個のフレームヘッダをそれぞれ 含む、 N個の付加情報ヘッダとを備え、
(n+ 1) (nは 1以上 N未満の整数)番目のフレームヘッダを含む付加情報ヘッダは 、前記複数の暗号化データのうち、 n番目と (n+ 1)番目のフレームデータの境界が 存在する暗号化データに対して対応付けられて、前記複数の暗号化データにおける 所定位置に付加されているものであり、
前記再生対象データから、前記付加情報ヘッダを分離するステップ (a)と、 前記再生対象データから読み出した前記暗号化データを、暗号連鎖単位のデータ 長に関する情報を用いて、復号化するステップ (b)と、
復号化されたデータに対して、分離された前記付加情報ヘッダに含まれたフレーム ヘッダに格納されたフレーム長に関する情報を用いて、分離'連結処理を行うことに よって、前記フレームデータを生成するステップ(c)と、
前記フレームデータの先頭に、前記フレームヘッダを付加するステップ(d)とを備え た
ことを特徴とする暗号化データ再生方法。
[13] 請求項 12において、
分離した前記付加情報ヘッダに含まれたフレームヘッダを、再生用フレームヘッダ に変換するステップを備え、
ステップ(d)において、前記フレームデータの先頭に、フレームヘッダの代わりに、 前記再生用フレームヘッダを付加する
ことを特徴とする暗号化データ再生方法。
[14] 請求項 12において、
前記再生対象データにおいて、
前記付加情報ヘッダは、対応付けられた暗号ィ匕データの先頭に付加されており、 かつ、フレームデータの境界が存在しない暗号化データの先頭に、フレームヘッダを 含まな 、ダミーヘッダが付加されており、 前記付加情報ヘッダおよびダミーヘッダは、フレームヘッダを含むか否かを示すフ ラグを有しており、
ステップ(a)において、各暗号ィ匕データの先頭に付加されたヘッダについて、前記 フラグを参照して、前記付加情報ヘッダか否かを識別する
ことを特徴とする暗号化データ再生方法。
[15] 請求項 14において、
前記付加情報ヘッダおよびダミーヘッダは、付加された暗号化データの暗号連鎖 単位のデータ長に関する情報を含み、
ステップ (b)において、暗号化データの復号化を、当該暗号化データに付加された 前記付加情報ヘッダまたはダミーヘッダに含まれた暗号連鎖単位のデータ長に関す る情報を用いて、行う
ことを特徴とする暗号化データ再生方法。
[16] 請求項 12において、
前記再生対象データと、暗号連鎖単位のデータ長に関する情報とを、外部記憶手 段力 読み出し、
ステップ (b)において、暗号化データの復号化を、前記外部記憶手段から読み出さ れた暗号連鎖単位のデータ長に関する情報を用いて、行う
ことを特徴とする暗号化データ再生方法。
[17] N (Nは 2以上の整数)個のフレームデータと前記 N個のフレームデータを管理する ための管理データとを含む暗号ィ匕対象データを、任意のデータ長の暗号連鎖単位 を用いた連鎖暗号方式によって暗号化する暗号化データ生成装置であって、 前記管理データから、前記各フレームデータにそれぞれ対応し、当該フレームデー タのフレームヘッダを含む、付加情報ヘッダを生成するヘッダ生成部と、
前記各フレームデータを連鎖暗号化方式によって暗号化し、一連の複数の暗号ィ匕 データを生成する暗号処理部と、
前記複数の暗号化データのうち、 n (nは 1以上 N未満の整数)番目と (n+ 1)番目 のフレームデータの境界が存在する暗号化データに対して、(n+ 1)番目のフレーム データに対応する前記付加情報ヘッダを対応付けるとともに、前記付加情報ヘッダ を、前記複数の暗号ィ匕データにおける所定位置に付加するヘッダ付加部とを備えた ことを特徴とする暗号ィ匕データ生成装置。
[18] 請求項 17において、
前記ヘッダ付加部は、前記付加情報ヘッダを、対応付けられた暗号化データの先 頭に付加する
ことを特徴とする暗号ィ匕データ生成装置。
[19] 請求項 18において、
前記ヘッダ付加部は、フレームデータの境界が存在しな 、暗号ィ匕データに対して、 その先頭に、フレームヘッダを含まな 、ダミーヘッダを付カ卩する
ことを特徴とする暗号ィ匕データ生成装置。
[20] 請求項 17において、
前記ヘッダ付加部は、前記付加情報ヘッダを、前記複数の暗号化データの先頭に 、まとめて付加する
ことを特徴とする暗号ィ匕データ生成装置。
[21] 請求項 20において、
前記ヘッダ付加部は、フレームデータの境界が存在しな 、暗号ィ匕データに対して、 フレームヘッダを含まないダミーヘッダを対応付けるとともに、このダミーヘッダを、前 記付加情報ヘッダとともに、前記複数の暗号化データの先頭に、まとめて付加する ことを特徴とする暗号ィ匕データ生成装置。
[22] N (Nは 2以上の整数)個のフレームデータを含む暗号ィ匕対象データ力 任意のデ ータ長の暗号連鎖単位を用いた連鎖暗号方式によって暗号化されてなる、再生対象 データを再生する暗号化データ再生装置であって、
前記再生対象データは、
複数の暗号化データと、
前記 N個のフレームデータにそれぞれ対応する N個のフレームヘッダをそれぞれ 含む、 N個の付加情報ヘッダとを備え、
(n+ 1) (nは 1以上 N未満の整数)番目のフレームヘッダを含む付加情報ヘッダは 、前記複数の暗号化データのうち、 n番目と (n+ 1)番目のフレームデータの境界が 存在する暗号化データに対して対応付けられて、前記複数の暗号化データにおける 所定位置に付加されているものであり、
前記再生対象データから、前記付加情報ヘッダを分離するヘッダ分離部と、 前記再生対象データから読み出された前記暗号化データを、暗号連鎖単位のデ ータ長に関する情報を用いて、復号化する復号処理部と、
復号化されたデータに対して、前記ヘッダ分離部によって分離された前記付加情 報ヘッダに含まれたフレームヘッダに格納されたフレーム長に関する情報を用いて、 分離'連結処理を行うことによって、前記フレームデータを生成するフレームデータ生 成部と、
前記フレームデータの先頭に、前記フレームヘッダを付加するヘッダ付加部とを備 えた
ことを特徴とする暗号ィ匕データ再生装置。
[23] 請求項 22において、
分離した前記付加情報ヘッダに含まれたフレームヘッダを、再生用フレームヘッダ に変換するヘッダ変換部を備え、
前記ヘッダ付加部は、前記フレームデータの先頭に、フレームヘッダの代わりに、 前記ヘッダ変換部によって得られた前記再生用フレームヘッダを付加するものである ことを特徴とする暗号ィ匕データ再生装置。
[24] 請求項 22において、
前記再生対象データにおいて、
前記付加情報ヘッダは、対応付けられた暗号ィ匕データの先頭に付加されており、 かつ、フレームデータの境界が存在しない暗号化データの先頭に、フレームヘッダを 含まな 、ダミーヘッダが付加されており、
前記付加情報ヘッダおよびダミーヘッダは、フレームヘッダを含むか否かを示すフ ラグを有しており、
前記ヘッダ分離部は、各暗号化データの先頭に付加されたヘッダについて、前記 フラグを参照して、前記付加情報ヘッダか否かを識別する
ことを特徴とする暗号ィ匕データ再生装置。
[25] 請求項 24において、
前記付加情報ヘッダおよびダミーヘッダは、付加された暗号化データの暗号連鎖 単位のデータ長に関する情報を含み、
前記復号処理部は、暗号化データの復号化を、当該暗号化データに付加された前 記付加情報ヘッダまたはダミーヘッダに含まれた暗号連鎖単位のデータ長に関する 情報を用いて、行う
ことを特徴とする暗号ィ匕データ再生装置。
[26] 請求項 22において、
前記再生対象データと、暗号連鎖単位のデータ長に関する情報とを、外部記憶手 段力 読み出し、
前記復号処理部は、暗号化データの復号化を、前記外部記憶手段から読み出さ れた暗号連鎖単位のデータ長に関する情報を用いて、行う
ことを特徴とする暗号ィ匕データ再生装置。
[27] N (Nは 2以上の整数)個のフレームデータを含む暗号ィ匕対象データ力 任意のデ ータ長の暗号連鎖単位を用いた連鎖暗号方式によって暗号化されたデータ構造で あって、
複数の暗号化データと、
前記 N個のフレームデータにそれぞれ対応する N個のフレームヘッダをそれぞれ 含む、 N個の付加情報ヘッダとを備え、
(n+ 1) (nは 1以上 N未満の整数)番目のフレームヘッダを含む前記付加情報へッ ダは、前記複数の暗号化データのうち、 n番目と (n+ 1)番目のフレームデータの境 界が存在する暗号ィ匕データに対して対応付けられて、前記複数の暗号ィ匕データに おける所定位置に付加されて 、る
ことを特徴とするデータ構造。
[28] 請求項 27において、
前記付加情報ヘッダは、対応付けられた暗号化データの先頭に付加されて ヽる ことを特徴とするデータ構造。
[29] 請求項 28において、 フレームデータの境界が存在しな 、暗号化データの先頭に、フレームヘッダを含ま な!ヽダミーヘッダが付加されて!ヽる
ことを特徴とするデータ構造。
[30] 請求項 29において、
前記付加情報ヘッダおよびダミーヘッダは、フレームヘッダを含むか否かを示すフ ラグを有している
ことを特徴とするデータ構造。
[31] 請求項 27において、
前記付加情報ヘッダは、前記複数の暗号化データの先頭に、まとめて付加されて いる
ことを特徴とするデータ構造。
[32] 請求項 31において、
フレームデータの境界が存在しな ヽ暗号化データに対応付けられた、フレームへッ ダを含まないダミーヘッダが、前記付加情報ヘッダとともに、前記複数の暗号化デー タの先頭に、まとめて付加されている
ことを特徴とするデータ構造。
PCT/JP2007/057770 2006-04-07 2007-04-06 データ暗号化方法、暗号化データ再生方法 WO2007116970A1 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2007544669A JPWO2007116970A1 (ja) 2006-04-07 2007-04-06 データ暗号化方法、暗号化データ再生方法、暗号化データ生成装置、暗号化データ再生装置、および暗号化データ構造
US11/915,788 US20090316884A1 (en) 2006-04-07 2007-04-06 Data encryption method, encrypted data reproduction method, encrypted data production device, encrypted data reproduction device, and encrypted data structure

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2006105973 2006-04-07
JP2006-105973 2006-04-07

Publications (1)

Publication Number Publication Date
WO2007116970A1 true WO2007116970A1 (ja) 2007-10-18

Family

ID=38581249

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2007/057770 WO2007116970A1 (ja) 2006-04-07 2007-04-06 データ暗号化方法、暗号化データ再生方法

Country Status (4)

Country Link
US (1) US20090316884A1 (ja)
JP (1) JPWO2007116970A1 (ja)
KR (1) KR20080112082A (ja)
WO (1) WO2007116970A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015507407A (ja) * 2011-12-28 2015-03-05 インテル コーポレイション ビデオエンコーディングシステムにおける集積メタデータ挿入システム及び方法

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170222803A1 (en) * 2016-02-02 2017-08-03 Kabushiki Kaisha Toshiba Communication device, cryptographic communication system, cryptographic communication method, and computer program product
JP6721832B2 (ja) * 2016-08-24 2020-07-15 富士通株式会社 データ変換プログラム、データ変換装置及びデータ変換方法
EP4116849A1 (de) * 2021-07-07 2023-01-11 iCognize GmbH Computerimplementiertes verfahren zum verwalten eines eine sicherheitsrelevante information umfassenden datensatzes

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001358708A (ja) * 1999-10-29 2001-12-26 Matsushita Electric Ind Co Ltd コンテンツ情報変換装置、コンテンツ情報変換方法、及びプログラム記憶媒体
JP2004007533A (ja) * 2002-03-29 2004-01-08 Toshiba Corp マルチメディア・ファイル・フォーマットのデータ構造、その暗号化方法並びに装置及びその暗号の復号化方法及び装置

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6931009B1 (en) * 1997-07-15 2005-08-16 Viasat, Inc. Frame format and frame assembling/disassembling method for the frame format
US7809138B2 (en) * 1999-03-16 2010-10-05 Intertrust Technologies Corporation Methods and apparatus for persistent control and protection of content
US6971022B1 (en) * 1999-06-15 2005-11-29 Matsushita Electric Industrial Co., Ltd. Cryptographic apparatus for performing cryptography on a specified area of content data
US8214655B2 (en) * 2002-03-29 2012-07-03 Kabushiki Kaisha Toshiba Data structure of multimedia file format, encrypting method and device thereof, and decrypting method and device thereof
GB2404467A (en) * 2003-07-31 2005-02-02 Sony Uk Ltd Access control for digital content
GB2404489A (en) * 2003-07-31 2005-02-02 Sony Uk Ltd Access control for digital storage medium content
GB2404538A (en) * 2003-07-31 2005-02-02 Sony Uk Ltd Access control for digital content
GB2404486A (en) * 2003-07-31 2005-02-02 Sony Uk Ltd Access control for digital storage medium content
GB2404488B (en) * 2003-07-31 2006-05-31 Sony Uk Ltd Access control for digital content
GB2404487A (en) * 2003-07-31 2005-02-02 Sony Uk Ltd Access control for digital storage medium content
US20050097315A1 (en) * 2003-10-30 2005-05-05 Tzahi Carmeli Method and apparatus to configure transmitter and receiver to encrypt and decrypt data
US7580519B1 (en) * 2003-12-08 2009-08-25 Advanced Micro Devices, Inc. Triple DES gigabit/s performance using single DES engine
FR2863797B1 (fr) * 2003-12-15 2006-02-24 Cit Alcatel Compression/decompression de couche deux pour la transmission mixte synchrone/asynchrone de trames de donnees au sein d'un reseau de communications
US7783037B1 (en) * 2004-09-20 2010-08-24 Globalfoundries Inc. Multi-gigabit per second computing of the rijndael inverse cipher
JP2006229863A (ja) * 2005-02-21 2006-08-31 Seiko Epson Corp 暗号化/復号化装置、通信コントローラ及び電子機器
WO2006093021A1 (ja) * 2005-02-28 2006-09-08 Nec Corporation 通信装置、通信システム、通信方法、及びプログラム
EP1864425A4 (en) * 2005-03-10 2011-03-16 Korea Electronics Telecomm ENCRYPTING AND DECOMPOSITION DEVICE IN A WIRELESS PORTABLE INTERNET SYSTEM AND METHOD THEREFOR
US7647508B2 (en) * 2005-06-16 2010-01-12 Intel Corporation Methods and apparatus for providing integrity protection for management and control traffic of wireless communication networks
JP2007041223A (ja) * 2005-08-02 2007-02-15 Mitsubishi Electric Corp データ配信装置及びデータ通信システム

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001358708A (ja) * 1999-10-29 2001-12-26 Matsushita Electric Ind Co Ltd コンテンツ情報変換装置、コンテンツ情報変換方法、及びプログラム記憶媒体
JP2004007533A (ja) * 2002-03-29 2004-01-08 Toshiba Corp マルチメディア・ファイル・フォーマットのデータ構造、その暗号化方法並びに装置及びその暗号の復号化方法及び装置

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015507407A (ja) * 2011-12-28 2015-03-05 インテル コーポレイション ビデオエンコーディングシステムにおける集積メタデータ挿入システム及び方法

Also Published As

Publication number Publication date
US20090316884A1 (en) 2009-12-24
KR20080112082A (ko) 2008-12-24
JPWO2007116970A1 (ja) 2009-08-20

Similar Documents

Publication Publication Date Title
KR100730903B1 (ko) 향상된 호환성을 갖춘 보안형 메모리 장치
US8077867B2 (en) Confidential information processing apparatus, confidential information processing device, and confidential information processing method
US7219238B2 (en) Data transfer control device, electronic instrument, and data transfer control method
WO2010055658A1 (ja) コンテンツ復号処理装置、コンテンツ復号処理方法及び集積回路
US20060242429A1 (en) In stream data encryption / decryption method
US6393564B1 (en) Decrypting device
US8908859B2 (en) Cryptographic apparatus and memory system
JP2004226969A (ja) 暗号システム及び多様なモードを支援する方法
JP2003115830A (ja) 情報記録装置及び情報記録再生装置
JP2005505069A5 (ja)
US20030212886A1 (en) Encryption/decryption system and encryption/decryption method
JP5118494B2 (ja) イン−ストリームデータ暗号化/復号の機能を有するメモリシステム
KR20050069924A (ko) 블록 암호/복호방법, 회로 및 장치
JP5080908B2 (ja) 機密情報処理機器、機密情報処理装置、及び機密情報処理方法
JP2008524969A5 (ja)
WO2007116970A1 (ja) データ暗号化方法、暗号化データ再生方法
US20010005828A1 (en) Audio playback/recording apparatus
US7769166B2 (en) Dual mode AES implementation to support single and multiple AES operations
CN100524150C (zh) 分组密码方法及分组加密/解密电路
JP2006330126A (ja) 暗号化処理方法、および復号化処理方法
US9058507B2 (en) Signal processor with an encrypting or decrypting device in a memory system
JP2001282623A (ja) インターリーブ装置及びインターリーブ復元装置
JP2007500376A (ja) 鍵拡大機能の低メモリハードウェア実施のための方法および装置
JP2003169092A (ja) 暗号化装置、及び復号化装置
JP4792684B2 (ja) 復号装置

Legal Events

Date Code Title Description
ENP Entry into the national phase

Ref document number: 2007544669

Country of ref document: JP

Kind code of ref document: A

WWE Wipo information: entry into national phase

Ref document number: 11915788

Country of ref document: US

WWE Wipo information: entry into national phase

Ref document number: 1020077028899

Country of ref document: KR

121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 07741206

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 07741206

Country of ref document: EP

Kind code of ref document: A1