[go: up one dir, main page]
More Web Proxy on the site http://driver.im/

WO2001054099A1 - Systeme d'authentification de donnees - Google Patents

Systeme d'authentification de donnees Download PDF

Info

Publication number
WO2001054099A1
WO2001054099A1 PCT/JP2001/000346 JP0100346W WO0154099A1 WO 2001054099 A1 WO2001054099 A1 WO 2001054099A1 JP 0100346 W JP0100346 W JP 0100346W WO 0154099 A1 WO0154099 A1 WO 0154099A1
Authority
WO
WIPO (PCT)
Prior art keywords
data
content
processing
key
encryption
Prior art date
Application number
PCT/JP2001/000346
Other languages
English (en)
French (fr)
Inventor
Tomoyuki Asano
Yoshihito Ishibashi
Taizo Shirai
Toru Akishita
Original Assignee
Sony 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
Priority claimed from JP2000013322A external-priority patent/JP2001203686A/ja
Priority claimed from JP2000016213A external-priority patent/JP2001211151A/ja
Priority claimed from JP2000016029A external-priority patent/JP2001211149A/ja
Priority claimed from JP2000016251A external-priority patent/JP2001211152A/ja
Priority claimed from JP2000016292A external-priority patent/JP2001211080A/ja
Priority claimed from JP2000015858A external-priority patent/JP2001209310A/ja
Priority claimed from JP2000015551A external-priority patent/JP2001211148A/ja
Priority to KR1020047007534A priority Critical patent/KR100653806B1/ko
Priority to KR1020047007529A priority patent/KR100653804B1/ko
Priority to KR1020047007532A priority patent/KR100653801B1/ko
Priority to KR1020047007531A priority patent/KR100653802B1/ko
Priority to DE60132962T priority patent/DE60132962T2/de
Priority to AU27074/01A priority patent/AU785421B2/en
Priority to BR0104356-0A priority patent/BR0104356A/pt
Application filed by Sony Corporation filed Critical Sony Corporation
Priority to KR1020047007530A priority patent/KR100653803B1/ko
Priority to KR1020047007533A priority patent/KR100653805B1/ko
Priority to DK01901463T priority patent/DK1195734T3/da
Priority to ES01901463T priority patent/ES2301525T3/es
Priority to CA002365236A priority patent/CA2365236A1/en
Priority to KR1020047007535A priority patent/KR100653807B1/ko
Priority to US09/937,120 priority patent/US7373506B2/en
Priority to EP01901463A priority patent/EP1195734B1/en
Priority to KR10-2001-7012032A priority patent/KR100456496B1/ko
Publication of WO2001054099A1 publication Critical patent/WO2001054099A1/ja
Priority to HK02109413.8A priority patent/HK1047815A1/zh
Priority to US11/637,505 priority patent/US20070088961A1/en
Priority to US11/642,506 priority patent/US20070136612A1/en
Priority to US11/642,704 priority patent/US7669052B2/en
Priority to US12/709,918 priority patent/US8375206B2/en

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/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3271Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using challenge-response
    • H04L9/3273Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using challenge-response for mutual authentication
    • 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/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/64Protecting data integrity, e.g. using checksums, certificates or signatures
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/00086Circuits for prevention of unauthorised reproduction or copying, e.g. piracy
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/00086Circuits for prevention of unauthorised reproduction or copying, e.g. piracy
    • G11B20/00094Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving measures which result in a restriction to authorised record carriers
    • G11B20/00123Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving measures which result in a restriction to authorised record carriers the record carrier being identified by recognising some of its unique characteristics, e.g. a unique defect pattern serving as a physical signature of the record carrier
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/00086Circuits for prevention of unauthorised reproduction or copying, e.g. piracy
    • G11B20/00166Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving measures which result in a restriction to authorised contents recorded on or reproduced from a record carrier, e.g. music or software
    • G11B20/00173Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving measures which result in a restriction to authorised contents recorded on or reproduced from a record carrier, e.g. music or software wherein the origin of the content is checked, e.g. determining whether the content has originally been retrieved from a legal disc copy or another trusted source
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/00086Circuits for prevention of unauthorised reproduction or copying, e.g. piracy
    • G11B20/0021Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving encryption or decryption of contents recorded on or reproduced from a record carrier
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/00086Circuits for prevention of unauthorised reproduction or copying, e.g. piracy
    • G11B20/0021Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving encryption or decryption of contents recorded on or reproduced from a record carrier
    • G11B20/00217Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving encryption or decryption of contents recorded on or reproduced from a record carrier the cryptographic key used for encryption and/or decryption of contents recorded on or reproduced from the record carrier being read from a specific source
    • G11B20/00224Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving encryption or decryption of contents recorded on or reproduced from a record carrier the cryptographic key used for encryption and/or decryption of contents recorded on or reproduced from the record carrier being read from a specific source wherein the key is obtained from a remote server
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/00086Circuits for prevention of unauthorised reproduction or copying, e.g. piracy
    • G11B20/0021Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving encryption or decryption of contents recorded on or reproduced from a record carrier
    • G11B20/00217Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving encryption or decryption of contents recorded on or reproduced from a record carrier the cryptographic key used for encryption and/or decryption of contents recorded on or reproduced from the record carrier being read from a specific source
    • G11B20/00246Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving encryption or decryption of contents recorded on or reproduced from a record carrier the cryptographic key used for encryption and/or decryption of contents recorded on or reproduced from the record carrier being read from a specific source wherein the key is obtained from a local device, e.g. device key initially stored by the player or by the recorder
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/00086Circuits for prevention of unauthorised reproduction or copying, e.g. piracy
    • G11B20/0021Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving encryption or decryption of contents recorded on or reproduced from a record carrier
    • G11B20/00485Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving encryption or decryption of contents recorded on or reproduced from a record carrier characterised by a specific kind of data which is encrypted and recorded on and/or reproduced from the record carrier
    • G11B20/00492Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving encryption or decryption of contents recorded on or reproduced from a record carrier characterised by a specific kind of data which is encrypted and recorded on and/or reproduced from the record carrier wherein content or user data is encrypted
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/00086Circuits for prevention of unauthorised reproduction or copying, e.g. piracy
    • G11B20/0021Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving encryption or decryption of contents recorded on or reproduced from a record carrier
    • G11B20/00485Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving encryption or decryption of contents recorded on or reproduced from a record carrier characterised by a specific kind of data which is encrypted and recorded on and/or reproduced from the record carrier
    • G11B20/00492Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving encryption or decryption of contents recorded on or reproduced from a record carrier characterised by a specific kind of data which is encrypted and recorded on and/or reproduced from the record carrier wherein content or user data is encrypted
    • G11B20/00507Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving encryption or decryption of contents recorded on or reproduced from a record carrier characterised by a specific kind of data which is encrypted and recorded on and/or reproduced from the record carrier wherein content or user data is encrypted wherein consecutive physical data units of the record carrier are encrypted with separate encryption keys, e.g. the key changes on a cluster or sector basis
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/00086Circuits for prevention of unauthorised reproduction or copying, e.g. piracy
    • G11B20/0021Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving encryption or decryption of contents recorded on or reproduced from a record carrier
    • G11B20/00485Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving encryption or decryption of contents recorded on or reproduced from a record carrier characterised by a specific kind of data which is encrypted and recorded on and/or reproduced from the record carrier
    • G11B20/00492Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving encryption or decryption of contents recorded on or reproduced from a record carrier characterised by a specific kind of data which is encrypted and recorded on and/or reproduced from the record carrier wherein content or user data is encrypted
    • G11B20/00536Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving encryption or decryption of contents recorded on or reproduced from a record carrier characterised by a specific kind of data which is encrypted and recorded on and/or reproduced from the record carrier wherein content or user data is encrypted wherein encrypted content data is subjected to a further, iterated encryption, e.g. interwoven encryption
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/00086Circuits for prevention of unauthorised reproduction or copying, e.g. piracy
    • G11B20/0021Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving encryption or decryption of contents recorded on or reproduced from a record carrier
    • G11B20/00485Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving encryption or decryption of contents recorded on or reproduced from a record carrier characterised by a specific kind of data which is encrypted and recorded on and/or reproduced from the record carrier
    • G11B20/00557Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving encryption or decryption of contents recorded on or reproduced from a record carrier characterised by a specific kind of data which is encrypted and recorded on and/or reproduced from the record carrier wherein further management data is encrypted, e.g. sector headers, TOC or the lead-in or lead-out areas
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/00086Circuits for prevention of unauthorised reproduction or copying, e.g. piracy
    • G11B20/00731Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving a digital rights management system for enforcing a usage restriction
    • G11B20/00739Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving a digital rights management system for enforcing a usage restriction wherein the usage restriction is associated with a specific geographical region
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/00086Circuits for prevention of unauthorised reproduction or copying, e.g. piracy
    • G11B20/00731Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving a digital rights management system for enforcing a usage restriction
    • G11B20/00746Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving a digital rights management system for enforcing a usage restriction wherein the usage restriction can be expressed as a specific number
    • G11B20/00753Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving a digital rights management system for enforcing a usage restriction wherein the usage restriction can be expressed as a specific number wherein the usage restriction limits the number of copies that can be made, e.g. CGMS, SCMS, or CCI flags
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/00086Circuits for prevention of unauthorised reproduction or copying, e.g. piracy
    • G11B20/00731Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving a digital rights management system for enforcing a usage restriction
    • G11B20/00746Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving a digital rights management system for enforcing a usage restriction wherein the usage restriction can be expressed as a specific number
    • G11B20/00753Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving a digital rights management system for enforcing a usage restriction wherein the usage restriction can be expressed as a specific number wherein the usage restriction limits the number of copies that can be made, e.g. CGMS, SCMS, or CCI flags
    • G11B20/00768Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving a digital rights management system for enforcing a usage restriction wherein the usage restriction can be expressed as a specific number wherein the usage restriction limits the number of copies that can be made, e.g. CGMS, SCMS, or CCI flags wherein copy control information is used, e.g. for indicating whether a content may be copied freely, no more, once, or never, by setting CGMS, SCMS, or CCI flags
    • G11B20/00775Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving a digital rights management system for enforcing a usage restriction wherein the usage restriction can be expressed as a specific number wherein the usage restriction limits the number of copies that can be made, e.g. CGMS, SCMS, or CCI flags wherein copy control information is used, e.g. for indicating whether a content may be copied freely, no more, once, or never, by setting CGMS, SCMS, or CCI flags wherein said copy control information is encoded in an encryption mode indicator [EMI]
    • 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/0625Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation with splitting of the data block into left and right halves, e.g. Feistel based algorithms, DES, FEAL, IDEA or KASUMI
    • 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/0643Hash functions, e.g. MD5, SHA, HMAC or f9 MAC
    • 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/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0894Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage
    • H04L9/0897Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage involving additional devices, e.g. trusted platform module [TPM], smartcard or USB
    • 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/14Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using a plurality of keys or algorithms
    • 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/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3236Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions
    • H04L9/3242Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions involving keyed hash functions, e.g. message authentication codes [MACs], CBC-MAC or HMAC
    • 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/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3247Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/00007Time or data compression or expansion
    • G11B2020/00014Time or data compression or expansion the compressed signal being an audio signal
    • G11B2020/00057MPEG-1 or MPEG-2 audio layer III [MP3]
    • 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/60Digital content management, e.g. content distribution

Definitions

  • the present invention relates to a data processing device and a data processing method, and more particularly, to a method, a device, and a method of assigning a verification value for verifying the validity of data constituting data content, that is, for falsification. Also, the present invention relates to an apparatus and a method capable of enhancing security by generating an individual key required for cryptographic processing using a master key corresponding to each individual key. Further, the present invention provides a configuration for eliminating unauthorized use of data content, and more specifically, relates to an apparatus and a method capable of identifying unauthorized playback equipment and eliminating unauthorized use of content. You.
  • the present invention provides an apparatus which makes it possible to easily set content usable only in a data processing apparatus and content usable in another data processing apparatus based on information unique to the data processing apparatus. And methods. Further, the present invention relates to a method, an apparatus, and a method of assigning a verification value for verifying the validity of data constituting data content, that is, for checking for falsification.
  • the present invention encrypts data including at least one of audio information, image information, and program data, provides the encrypted data to various types of header information, and provides the content user with the content information.
  • a data processing device, a content data generation method, and a content processing device that realizes a content data configuration that enables content data to be provided and used under high security management in a configuration that executes or stores data in a recording device. And a data processing method.
  • the present invention provides a configuration for efficiently executing a reproduction process when the data content is compressed audio data or image data.
  • the configuration of the content data is composed of compressed data and decompressed data. Compressed data that has a configuration combined with a processing program, or stores an applicable decompression processing program as header information
  • the present invention relates to a data processing device, a data processing method, and a content data generation method capable of searching and extracting an applicable decompression processing program based on content header information and executing a reproduction process.
  • the present invention provides various types of contents, such as audio, images, games, and programs, which can be obtained from storage media such as DVDs and CDs, or wired and wireless communication means such as CATV, the Internet, and satellite communications. Playback on a recording / playback device
  • the present invention relates to a configuration and a method for ensuring security so that the distributed content is not illegally used by a third party other than an authorized user.
  • the main components of a memory card device used in a conventional video game device, information device such as a PC are control means for operation control, and connected to a slot provided in the information device body and connected to the control means. And a non-volatile memory connected to the control means for storing data.
  • the nonvolatile memory provided in the memory card is composed of E-PROM :, flash memory, and so on.
  • the content is called up from the nonvolatile memory by a user instruction from the information device itself such as a game device or a PC used as a playback device, or a user instruction via a connected input means, and is read from the nonvolatile memory. Or, it is reproduced through a connected display, speaker, etc.
  • the encrypted data can be returned to usable decrypted data (plaintext) by a decryption process according to a predetermined procedure.
  • Data encryption and decryption methods using an encryption key for such information encryption processing and a decryption key for decryption processing have been well known.
  • DES data encryption standard: ecryptionstanaddadard
  • the encryption key and the decryption key used for the above-described encryption processing and decryption are, for example, It can be obtained by applying a one-way function such as a hash function based on a password or the like.
  • a one-way function is a function that makes it very difficult to find its input from its output.
  • a one-way function is applied with a password determined by the user as an input, and an encryption key and a decryption key are generated based on the output.
  • a method in which processing using an encryption key used for encryption and processing for a decryption key used for decryption are different algorithms is a so-called public key encryption method.
  • the public key encryption method uses a public key that can be used by an unspecified user, and encrypts an encrypted document for a specific individual using a public key issued by the specific individual.
  • a document decrypted with a public key can be decrypted only with a private key corresponding to the public key used for the encryption process. Since the private key is owned only by the individual who issued the public key, documents encrypted with the public key can be decrypted only by the individual who has the private key.
  • a representative public key encryption method is RSA (Rivest-Shamir-Ad1eman) encryption.
  • FIG. 1 shows a program, audio data, video data, etc. (content (content)) obtained from a data providing means such as a DVD, a CD 30, the Internet 40, etc. in a reproducing means 10 such as a PC (personal computer) and a game machine. 3) shows an example of a configuration in which data obtained from a DVD, a CD 30, the Internet 40 or the like can be stored in a storage means 20 such as a floppy disk, a memory card, a hard disk, or the like.
  • a storage means 20 such as a floppy disk, a memory card, a hard disk, or the like.
  • Contents such as programs, audio data, and video data are encrypted and provided to a user having the reproduction unit 10.
  • Legitimate users can access encrypted data First, it acquires key data that is the encryption and decryption keys.
  • the reproduction means 10 has a CPU 12, and reproduces the input data in the reproduction processing section 14.
  • the reproduction processing unit 14 executes the decryption processing of the encrypted data, and reproduces the provided program and reproduces the content such as audio data and image data.
  • the authorized user performs a process of storing the content such as the program / data in the storage means 20 in order to use the provided program again.
  • the reproduction means 10 has a storage processing unit 13 for executing this content storage processing.
  • the storage processing unit 13 performs a storage process by performing an encryption process on the data in order to prevent unauthorized use of the data stored in the storage unit 20.
  • the storage processing unit 13 When encrypting content, a content encryption key is used.
  • the storage processing unit 13 encrypts the content using the content code key, and stores it in the storage unit 21 of the storage means 20 such as a floppy disk (FD), a memory card, or a hard disk.
  • the user retrieves the stored content from the storage means 20 and reproduces the content
  • the user retrieves the encrypted data from the storage means 20 and in the reproduction processing unit 14 of the reproduction means 10, the content decryption key, That is, decryption processing is performed using the decryption key to obtain decrypted data from the encrypted data and reproduce the decrypted data.
  • the storage contents are encrypted in the storage means 20 such as a floppy disk, a memory card, etc.
  • the storage means 20 such as a floppy disk, a memory card, etc.
  • the same content key that is, the same decryption key for decrypting the encrypted content is used.
  • Reproduction is impossible unless it is a means of reproduction. Therefore, in order to realize a form that can be used in multiple information devices, it is necessary to share the encryption key provided to the user.
  • sharing the encryption key and decryption key for content means that if the key information is leaked from one device, the extent of damage is limited to the entire system that uses the key. I will.
  • encrypted content created on, for example, a certain PC and stored in a storage means such as a memory card or a floppy disk is transferred to another floppy disk. It can be easily copied, and it is possible to use the copied floppy disk instead of the original content data, and many content data that can be used in information devices such as game machines and PCs are copied, or It could have been tampered with.
  • a check value for verification is included in the content data to check the validity of the content data, that is, that the data has not been tampered with, and a check generated based on the data to be verified in the recording / reproducing device
  • a method of performing data verification by comparing a value with a check value included in content data has been performed.
  • the check value for the data content is generally generated for the entire data.
  • the check processing of the check value generated for the entire data it is necessary to select the check target. It is necessary to execute check value generation processing for the entire data that has become invalid.
  • the method of obtaining the check value ICV by using the message authentication code (MAC) generated in the DES_CBC mode it is necessary to execute the DES-CBC process on the entire data.
  • This calculation amount increases as the data length increases, and there is a problem in terms of processing efficiency. Disclosure of the invention
  • the present invention solves the above-mentioned problems of the conventional technology.
  • the present invention efficiently executes data validity confirmation processing, increases the efficiency of content data verification processing, and downloads recorded data to a recording device after verification.
  • a first object is to provide a data processing device, a data processing method, a data verification value assigning method, and a program providing medium, which can efficiently execute the processing or the reproduction processing after the verification. The purpose.
  • encryption methods such as data encryption, data decryption, data verification, authentication processing, and signature processing as methods for limiting the use of content data to authorized users.
  • secret information shared between two devices that is, between devices that transfer content data or devices that perform authentication processing, is applied to encryption and decryption of content data. It is necessary to share key information and to share the authentication key used for authentication between the authenticating devices.
  • the encrypted data of the content using the shared key information can be transmitted by a third party without a license.
  • Decryption becomes possible, and unauthorized use of content becomes possible.
  • an authentication key is leaked, and authentication is performed for a device that has no license at all, and leaking the key threatens the entire system.
  • the present invention solves such a problem.
  • the data processing device, the data processing system, and the data processing method according to the present invention provide an individual link required to execute encryption processing such as data encryption, data decryption, data verification, authentication processing, and signature processing. Instead of storing in the storage unit, the master chain for generating these individual keys is stored in the storage unit, and the encryption processing unit needs the individual key based on the master key and the device or data identification data.
  • a second object of the present invention is to provide a data processing device, a data processing system, and a data processing method that enhance security in cryptographic processing by generating a data processing device.
  • the present invention provides a configuration capable of eliminating such an unauthorized playback device, that is, a configuration in which an unauthorized playback device is identified, and the identified unauthorized device is not allowed to execute processing such as reproduction and download of content data.
  • a third object is to provide a data processing device, a data processing method, and a content data generation method which are described above.
  • an encryption process using a predetermined encryption key for example, a signature process.
  • the signature key uses the content.
  • all the entities in the system are common.With such a signing key, it is possible to use common content on different devices, and problems such as illegal copying of the content occur. is there.
  • the password may be stolen, and the same password may be entered by entering the same password via a different player.
  • the present invention solves such a problem of the prior art.
  • a device unique key unique to a data processing device and a system common to other data processing devices using content data are provided.
  • a data processing device and data processing method that enables content to be played back only by a specific data processing device in accordance with content usage restrictions.
  • the fourth purpose is to provide.
  • content data includes various information such as audio information, image information, and program data.
  • content data includes various information such as audio information, image information, and program data.
  • content data includes various types of content, such as when all of the content data needs to be encrypted, or when a portion that requires encryption and a portion that does not require encryption are mixed.
  • Applying the encryption process uniformly to such various contents may cause unnecessary decryption in the playback process, or may cause undesired situations in terms of processing efficiency and processing speed.
  • data such as music data that requires real-time reproduction is desired to have a high processing speed and a content data structure that can be decoded.
  • a data processing device, a content data generation method, and a data processing method according to the present invention apply various content data configurations according to types of content data, that is, apply a plurality of different data formats according to content to content. It is a fifth object of the present invention to provide a data processing device, a content data generation method, and a data processing method that can generate and process content data with high security and that can be easily used in reproduction, execution, and the like. I do.
  • the decoded audio data, image data, and the like are output to the AV output unit and reproduced.
  • many contents are often subjected to compression processing and stored or distributed on a storage medium. Therefore, it is necessary to decompress these compressed data before the reproduction process.
  • the audio data is MP3 compressed
  • the audio data is decoded by an MP3 decoder and output.
  • the content data is image data and is an MPEG2 compressed image, it is output after the MPPEG2 decoder performs decompression processing.
  • a sixth object is to provide a data processing device, a data processing method, and a content data generation method for efficiently executing a reproduction process when the content is compressed audio data, image data, or the like.
  • a data processing device for processing content data provided by a storage medium or a communication medium, an encryption processing unit for performing encryption processing on the content data, and an encryption processing unit. And a control unit for executing control on the partial data set.
  • the encryption processing unit generates a partial check value as a check value for a partial data set including one or more partial data obtained by dividing the content data configuration unit into a plurality of parts.
  • the intermediate check value is generated based on the partial check value set data string including at least one of the partial check values, and the generated intermediate value is generated.
  • check values a plurality of partial check values corresponding to a plurality of partial check values constituting the above partial check value set
  • the data processing apparatus characterized by having a configuration that executes a verification process for the entire minute data set.
  • the partial check value is a value generated by an encryption process using a partial data to be checked as a message and applying a partial check value generation key.
  • the check value is a value generated by performing an encryption process using a partial check value set data string to be checked as a message and applying a total check value generation key. It has a configuration in which the total check value generation key is stored.
  • the cryptographic processing unit has a plurality of types of partial check value generation keys corresponding to the generated partial check values.
  • the encryption processing is DES encryption processing
  • the encryption processing unit has a configuration capable of executing DES encryption processing.
  • the partial check value is a message authentication code (MA C) generated in a DES-CBC mode using partial data to be checked as a message.
  • the intermediate check value is a message authentication code (MA C) generated in the DES-CBC mode using the partial check value set data string to be checked as a message. Characterized by having a configuration for executing
  • the encryption processing configuration in the DES-CBC mode of the encryption processing unit has a configuration in which triple DES is applied only to a part of a message sequence to be processed.
  • the data processing device has a signature key, and the encryption processing unit is generated by encryption processing applying the signature key to the intermediate check value. This feature is characterized in that a value is applied as a collation value for data verification.
  • the data processing device has a plurality of different signature keys as signature keys, and the cryptographic processing unit performs the different processing according to the usage restriction mode of the content data. It is characterized in that a signature key selected from a plurality of signature keys is applied to the encryption processing for the intermediate check value and used as a collation value for data verification.
  • the data processing device includes, as the plurality of signature keys, a common signature key common to all entities of the system that executes the data verification process; It has a device-specific signature key unique to each device to be executed.
  • the partial check value is one or more header partial check values generated for data in a header part forming a part of the data, and a partial data value.
  • one or more content check values generated for the content block data constituting Generates one or more header partial check values for the partial data set of the data in the header part and executes the matching process.
  • the partial check value includes one or more header partial check values generated for data in a header part forming a part of the data, Generates one or more header partial check values for the partial data set of the data in the header part, executes the matching process, and further generates the one or more header partial check values and
  • the present invention is characterized in that it has a configuration in which a total check value is generated based on a data string composed of content block data constituting a part, and a data verification is executed by executing a matching process.
  • the data processing device further includes a recording device for storing data on which the validity has been verified in the encryption processing unit.
  • the control unit in the collation processing of the partial check value in the cryptographic processing unit, if the collation is not established, the control unit may store the data in the recording device.
  • the feature is that it has a configuration to cancel.
  • the data processing device further includes a reproduction processing unit that reproduces the data whose validity has been verified in the encryption processing unit.
  • the control unit performs the reproduction processing. Stop playback processing in the unit It is characterized by having a configuration.
  • the data processing device executes only the process of comparing the header partial check value of the data in the process of comparing the partial check value in the encryption processing unit, It is characterized by having control means for transferring data for which verification of the partial check value has been established to the reproduction processing unit to enable reproduction.
  • a second aspect of the present invention is a data processing device that performs processing of content data provided by a storage medium or a communication medium, and an encryption processing unit that performs an encryption process on the content data; And a control unit that controls the signal processing unit.
  • the encryption processing unit operates on the decrypted data obtained by decrypting the encrypted data.
  • Data processing characterized by having a configuration for generating a check value of the data to be verified by performing cryptographic processing using a signature key on the operation processing result data obtained by executing the processing.
  • the arithmetic processing is a processing of performing an exclusive OR operation on the decrypted data obtained by the decrypting processing of the encrypted data in a predetermined byte unit.
  • a data processing method for processing content data provided by a storage medium or a communication medium wherein the partial data includes one or more partial data obtained by dividing a content data configuration unit into a plurality of parts.
  • a partial check value is generated as a check value for the set, and the verification process of the partial data is executed by comparing the generated partial check value, and the partial check value set data including at least one or more of the partial check values is executed.
  • the partial tick value Is the partial data to be checked as a message, is a partial check, and is a value generated by cryptographic processing using a value generation key. And a value generated by encryption processing using a total check value generation key.
  • the partial check value is generated by applying a different type of partial check value generation key corresponding to the generated partial check value.
  • the encryption process is a DES encryption process.
  • the partial check value is a message authentication code (MA C) generated in the DES-CBC mode using partial data to be checked as a message.
  • the intermediate check value is characterized by being a message authentication code (MA C) generated in the DES-CBC mode using a partial check value set data string to be checked as a message.
  • a value generated by encryption processing applying a signature key to the intermediate check value is applied as a collation value for data verification. Fine.
  • a different signature key is applied to the encryption process for the intermediate check value according to the data use restriction mode to be used as a collation value for data verification.
  • the signature key is a common signature key common to all entities of the system that executes the data verification process, and a unique signature key for each device that executes the data verification process. And selecting and using the device-specific signature key according to the data use restriction mode.
  • the partial check value is one or more headers generated for the data in the header part forming a part of the data.
  • the above header partial check values are generated and collation processing is performed, and one or more content check values are generated for the partial data set of the data in the content part and collation processing is executed. It is characterized in that a total check value is generated based on the header partial check value and all of the above-mentioned content check values, and data verification is executed.
  • the partial check value includes one or more header partial check values generated for data in a header portion forming a part of the data. Generates one or more header partial check values for the partial data set of the data in the header part, executes the matching process, and further generates the one or more header partial check values generated above. It is characterized in that data verification is performed by generating a total check value based on a data string composed of content block data constituting a part of the data and executing a collation process. '
  • one embodiment of the data processing method of the present invention is characterized in that after the data is verified, a process of storing the verified data in a recording device is further included. Further, in one embodiment of the data processing method of the present invention, in the collation processing of the partial check value, when collation is not established, a control for stopping the storage processing to the recording device is executed. I do.
  • one embodiment of the data processing method of the present invention is characterized in that the method includes a data reproducing process of reproducing data after verifying the data.
  • the collation processing of the partial check value only the collation processing of the header partial check value of the data is executed.
  • the data for which the matching of the header partial check value has been established is transferred to the above-mentioned reproduction processing unit, and a control for enabling reproduction is performed.
  • a fourth aspect of the present invention is a data processing method for processing content data provided by a storage medium or a communication medium, and when the data to be verified is encrypted data, decrypts the encrypted data.
  • the arithmetic processing is performed on the decrypted data obtained by the processing, and the cryptographic processing using the signature key is performed on the arithmetic processing result data obtained by the arithmetic processing, whereby the check value of the data to be verified is obtained.
  • the data processing method is characterized by generating
  • the arithmetic processing is a processing of performing an exclusive OR operation on the decrypted data obtained by decrypting the encrypted data in a predetermined byte unit.
  • a fifth aspect of the present invention is a method for assigning a data verification value for data verification processing, wherein a partial check value is used as a check value for a partial data set including one or more partial data obtained by dividing data into a plurality of parts.
  • the partial check value is a value generated by a symbol process using a partial data to be checked as a message and applying a partial check value generation key.
  • the intermediate check value described above uses a partial check value set data string to be checked as a message, and the total check value generation key Characterized in that it is a value generated by the use the cryptographic processing.
  • the partial check value is generated by applying a different type of partial check value generation key corresponding to the partial check value to be generated. I do.
  • the encryption processing is DES encryption processing.
  • the partial check value is a message recognition fjE code (MAC) generated in the DES-CBC mode using partial data to be checked as a message.
  • the intermediate check value is a message authentication code (MA C) generated in the DES-CBC mode using the partial check value set data string to be checked as a message.
  • a value generated by encryption processing applying a signature key to the intermediate check value is applied as a collation value for data verification.
  • a different signature key is applied to the encryption processing for the intermediate check value according to the data use restriction mode to make a comparison value for data verification.
  • the signature key is a common signature key common to all entities of the system that executes the data verification process, and each device that executes the data verification process A unique device-specific signature key is set so as to be selected and used according to the data use restriction mode.
  • the partial check value includes one or more header partial check values generated for data in a header part constituting a part of the data, Including one or more content check values generated for the data in the content part that constitutes the part, the above-mentioned header partial check value and the total check value for all of the above content check values are generated and data verification is executed. Is set.
  • the partial check value includes one or more header partial check values generated for data in a header part forming a part of the data, It is characterized in that data verification is performed by generating a total check value for all of the data string consisting of the one or more header partial check values and the content block data constituting a part of the data. You You.
  • a sixth aspect of the present invention is a program providing medium for providing a computer program which causes a computer to execute data verification processing for performing data validity verification on a system. Performing a verification process of the partial data by collating a partial check value generated as a check value for a partial data set including at least one partial data obtained by dividing the data into a plurality of partial data, and combining a plurality of the partial tucking values Executing a verification process on the entire partial data sets corresponding to the partial check values constituting the partial check value set, using an intermediate check value generated based on the partial check value set
  • a program providing medium characterized by including:
  • a seventh aspect of the present invention is a data processing device, comprising: an encryption processing unit that performs at least one of data encryption, data decryption, data verification, authentication processing, and signature processing; A storage unit that stores a master key for generating a key applied to the symbol processing, wherein the encryption processing unit stores an individual key required to execute the encryption processing, the master key, A data processing apparatus characterized in that the data processing apparatus has a configuration for generating the data based on identification data of a device or data to be subjected to encryption processing. Further, in one embodiment of the data processing device of the present invention, the data processing device is a data processing device that performs an encryption process on transfer data via a storage medium or a communication medium, and the storage unit stores the transmission data.
  • the storage unit stores a distribution key generation master key MK dis that generates a distribution key K dis applied to the ⁇ signal processing, and the encryption processing unit transmits the distribution key generation master key MK dis stored in the storage unit and the transfer
  • the present invention is characterized in that a cryptographic process is executed based on a data identifier which is data identification data to generate a delivery key K dis for the transfer data.
  • the data processing device is a data processing device that performs an authentication process of an external connection device that is a transfer destination or a transfer source of transfer data. Generate the authentication key Kake for the external connection device
  • the encryption processing unit stores the authentication key generation master key MKake to be generated, and the authentication key generation master key MKake stored in the storage unit and the external connection as identification data of the external connection device. It has a configuration in which an encryption key is executed based on a device identifier to generate an authentication key Kake of the externally connected device.
  • the data processing device is a data processing device that executes a signature process on data
  • the storage unit is a data processing device signature key K dev of the data processing device.
  • the cryptographic processing unit stores the signature key generation master key MK de V stored in the storage unit and the identification data of the data processing device. It is characterized in that a cryptographic process is executed based on the data processing device identifier and a data processing device signature key K dev of the data processing device is generated.
  • an individual chain generation process for generating an individual key required for performing an encryption process based on the master key and identification data of a device or data to be subjected to the encryption process.
  • a cryptographic process in which at least a part of the identification data of the device or data to be subjected to cryptographic processing is used as a message, and the master key is used as a cryptographic key.
  • the encryption processing is an encryption processing to which a DES algorithm is applied.
  • an eighth aspect of the present invention is a data processing system comprising a plurality of data processing devices, wherein each of the plurality of data processing devices performs data encryption, data decryption, data verification, and authentication processing.
  • a common master key for generating a key to be applied to at least one of the signature processing and the encryption processing, wherein each of the plurality of data processing devices identifies the master key and a device or data to be subjected to the encryption process.
  • the data processing system is characterized in that it has a configuration for generating a common individual key required for executing the above-mentioned encryption processing based on data.
  • the plurality of data processing devices include: a content data providing device that provides content data; - co that utilizes the data: is constituted by over data utilizing device, con - data providing apparatus Contact Yopiko: - both the data utilization device, distribution content De between the near point Ddeta providing apparatus and co data utilizing apparatus
  • the content data providing apparatus further includes a delivery key generation master key for generating a co-delivery key to be applied to the data processing of the data, and the content data providing apparatus includes: a delivery key generation master key; A content data delivery key is generated based on the content identifier, which is an identifier, and the content data is encrypted.
  • the content data using device transmits the content key using the delivery key generation master key and the provided content data.
  • the content data providing device includes a plurality of different distribution key generation master keys for generating a plurality of different content data distribution keys; A plurality of different content data delivery keys are generated based on one delivery key generation master key and the content identifier described above, and an encryption process is performed using the plurality of generated delivery keys to generate a plurality of types of encrypted content data.
  • the content data utilization device has at least one distribution key generation master key of a plurality of different distribution key generation master keys of the content data provision device, and has its own distribution key generation master key. Can decrypt only encrypted content data using a distribution key generated using the same distribution key generation master key as It characterized by having a a configuration.
  • the same content key generation master key for generating a content key applied to content data encryption processing is provided.
  • the data is encrypted by the content key generated based on the content key generation master key and the device identifier of the data processing device A.
  • Content data stored in the storage medium can be transferred to a different data processing device.
  • the device B generates a content key based on the same content key generation master key and the device identifier of the data processing device A. Based on the generated content key, the data processing device A It is characterized by executing decryption processing of the encrypted content data stored in the storage medium.
  • the plurality of data processing devices are configured by a host device and a slave device to be subjected to authentication processing of the host device; Both of the devices have an authentication key generation master applied to an authentication process between a host device and a slave device, and the slave device has the authentication key generation master key and a slave that is an identifier of the slave device.
  • An authentication key is generated based on the device identifier and stored in the memory in the slave device, and the host device uses the authentication key generation master key and the slave device identifier as the identifier of the slave device. It has a configuration to generate an authentication key and execute the authentication process. Sign. '
  • a ninth aspect of the present invention in a data processing method for performing at least one of data encryption, data decryption, data verification, authentication processing, and signature processing, A master key for generating a key to be applied to the above-mentioned cryptographic processing, which is an individual key required for execution; a key generation step for generating based on identification data of a device or data to be subjected to cryptographic processing; And a cryptographic processing step of performing cryptographic processing based on the key generated by the generating step.
  • the data processing executed in the data processing method is a cryptographic process for transfer data via a storage medium or a communication medium
  • the key generation step includes A cryptographic process is performed based on a distribution key generation master key MKdis for generating a distribution key Kdis applied to the cryptographic process and a data identifier which is the identification data of the above-mentioned transfer data, and the above-mentioned transfer data is distributed.
  • This is a distribution key generation step for generating a key K dis
  • the step is a step of executing the encryption processing of the transfer data based on the distribution key K dis generated in the distribution key generation step.
  • the data processing executed in the data processing method is an authentication process of an externally connected device that is a transfer destination or a transfer source of the transfer data
  • the generating step executes an encryption process based on an authentication key generation master key MKake for generating the authentication key Kake of the external connection device and an external connection device identifier which is identification data of the external connection device.
  • generating an authentication key K ake of the external connection device is performed based on the authentication key K ake generated in the authentication key generation step.
  • the authentication process is performed.
  • the data processing executed in the data processing device is a signature process for data
  • the key generation step includes a data processing device signature of the data processing device.
  • a signature for generating dev A cryptographic process is performed based on the master key MK de V for generating a key and a data processing device identifier which is identification data of the data processing device, and the data processing device signature of the data processing device is executed.
  • This is a signature key generation step of generating a key K dev
  • the encryption processing step is a step of executing a signature processing on data based on the signature key K dev generated in the signature key generation step.
  • the key generation step includes a step of performing at least a part of identification data of a device or data to be subjected to encryption processing as a message, and applying the master key as an encryption key. It is characterized by the following.
  • the encryption processing is an encryption processing to which a DES algorithm is applied.
  • a tenth aspect of the present invention is a data processing method in a data processing system comprising a content data providing device for providing content data and a content data using device for using the content data.
  • the data providing device generates a content data delivery key based on a delivery key generation master key for generating a content data delivery key applied to content data encryption processing, and a content identifier which is an identifier of the provided content data.
  • the content data encryption device executes an encryption process of the content data.
  • the data processing method is characterized in that the content data is generated and the content data is decrypted.
  • the content data providing device has a plurality of different distribution key generation master keys for generating a plurality of different content data distribution keys, and A plurality of different content data delivery keys are generated based on the delivery key generation master key and the content identifier, and encryption processing is performed using the plurality of generated delivery keys to execute a plurality of types of encrypted content data.
  • the content data utilization device has at least one distribution key generation master key of a plurality of different distribution key generation master keys of the content data providing device, and has its own distribution key generation Generates the same delivery key as the master key for decryption Decrypts only the encrypted content data with the delivery key generated using the master key for master And features.
  • a first aspect of the present invention is a data processing method in a data processing system constituted by a plurality of data processing devices.
  • the content data encrypted by the content key generated based on the content chain generation master key for generating the content key applied to the content data encryption process and the device identifier of the data processing device A is stored in the storage medium.
  • the same content key as the content key based on the same content key generation master key as the data processing device A and the device identifier of the data processing device A Generating a content key; and storing the content key using the content key generated in the data processing device B.
  • a data processing method characterized by having:
  • a twelfth aspect of the present invention is a data processing method in a data processing system including a host device and a slave device to be subjected to authentication processing of the host device.
  • An authentication key is generated based on an authentication key generation master key for generating an authentication key applied to an authentication process between the device and the slave device, and a slave device identifier which is an identifier of the slave device.
  • An authentication key is stored in a memory in the slave device, and the host device generates an authentication key based on the master key for generating an authentication chain and a slave device identifier that is an identifier of the slave device.
  • the data processing method is characterized by performing an authentication process.
  • a computer for executing, on a computer system, encryption processing for executing at least one of data encryption, data decryption, data verification, authentication processing, and signature processing.
  • a program providing medium for providing a program, wherein the computer program includes a master key for generating an individual key required for performing an encryption process and a key for applying the encryption process, and a cryptographic key.
  • a key generation step generated based on the identification data of the device or data to be processed, and a cryptographic processing step of performing cryptographic processing based on the key generated in the key generation step. It is in the program providing medium which is the feature.
  • a fourteenth aspect of the present invention is a data processing device for processing content data provided by a storage medium or a communication medium, the storage unit storing a data processing device identifier, and an unauthorized device included in content data.
  • a list verification unit that extracts a list and executes a matching process between an entry in the list and the data processing device identifier stored in the storage unit; and a result of the matching process in the matching processing unit.
  • a control unit for stopping execution of at least one of the processing of reproducing the content data and the processing of storing the content data in the recording device when the information matching the data processing identifier is included in the unauthorized device list.
  • the list verification unit has an encryption processing unit that performs encryption processing on the content data, and the encryption processing unit is included in the content data.
  • the unauthorized device list is verified for tampering based on a check value of the unauthorized device list to be tampered with, and the verification process is executed only when it is determined by the verification that there is no tampering.
  • the data processing device has an unauthorized device list check value generation key, and the encryption processing unit performs processing on the unauthorized device list configuration data to be verified.
  • the list verification unit has an encryption processing unit that performs encryption processing on the content data, and the encryption processing unit is included in the content data. Decryption processing of the encrypted unauthorized device list to be performed, and performing the above-described collation processing on the unauthorized device list obtained as a result of the decryption process.
  • the list verification unit includes a cryptographic processing unit that executes a mutual authentication process with a recording device that is a transfer destination or a transfer source of the content data, The list verification unit extracts and stores the unauthorized device list included in the content data on condition that authentication by the mutual authentication process with the recording device executed by the encryption processing unit is established. And performing a collation process with the data processing device identifier stored in the unit.
  • a fifteenth aspect of the present invention is a data processing method for processing content data provided by a storage medium or a communication medium, and a list extracting step of extracting a fraudulent device list included in the content data;
  • List extraction above A collation processing step for performing collation processing between an entry included in the list extracted by the step and the data processing device identifier stored in the storage unit in the data processing device;
  • the data processing method further includes verifying whether the unauthorized device list has been tampered with based on a check value of the unauthorized device list included in the content data.
  • a verification step is included, and the collation processing step is performed only when the verification step determines that there is no tampering.
  • the verifying step includes performing an encryption process using an unauthorized device list check value generation key on the unauthorized device list configuration data to be verified to check the unauthorized device list. Generating a value, verifying the generated unauthorized device list check value against a check value of the unauthorized device list included in the content data, and verifying whether the unauthorized device list has been tampered with. And characterized in that:
  • the data processing method further includes a decryption step of performing a decryption process of an encrypted unauthorized device list included in the content data;
  • the processing step is characterized in that the collation processing is performed on the unauthorized device list obtained as a result of the decryption step.
  • the data processing method further includes a mutual authentication processing step with a recording device that is a transfer destination or a transfer source of the content data
  • the collation processing step includes: The collation processing is executed on condition that the authentication by the mutual authentication processing with the recording device executed in the mutual authentication processing step is established.
  • a sixteenth aspect of the present invention is a content data generation method for generating content data provided to a plurality of recording / reproducing devices by a storage medium or a communication medium, and the content data generation method includes header information of the content data.
  • the content data generation method is characterized in that an unauthorized device list including a recording / reproducing device identifier of a recording / reproducing device to be excluded from use of content data as configuration data is stored as content data.
  • an unauthorized device list check value for falsification check of the unauthorized device list is stored as header information of the content data.
  • the unauthorized device list is encrypted and stored in the header information of the content data.
  • a seventeenth aspect of the present invention is a program providing medium for providing a computer program that causes a computer system to execute processing of content data provided by a storage medium or a communication medium.
  • the program includes: a list extraction step for extracting a list of unauthorized devices included in the content data; an entry included in the list extracted by the list extraction step; and the data processing stored in the storage unit in the data processing device.
  • Storage processing for recording devices In program providing medium characterized by having a step to stop the execution of any one of the processes.
  • an eighteenth aspect of the present invention is a data processing device for processing content data provided by a storage medium or a communication medium, and an encryption processing unit for performing an encryption process on the content data; A control unit that controls the cryptographic processing unit; and a control unit that is used for cryptographic processing in the cryptographic processing unit.
  • a system common key common to other data processing devices that use data a device unique key unique to the data processing device used for encryption processing in the above-mentioned symbol processing unit, or a device unique key for generating the device private key.
  • the cryptographic processing unit has at least one of an identifier and the cryptographic processing unit applies the system common key or the device unique key to the content data according to the usage mode of the content data.
  • the data processing device has a configuration for performing the following.
  • the encryption processing unit may transmit either the system common key or the device unique key in accordance with the use restriction information included in the content data. It is characterized in that it has a configuration to execute encryption processing by applying to data.
  • the data processing device further includes a recording device for recording content data
  • the encryption processing unit stores the content data in only its own data processing device.
  • the content data is subjected to symbol processing using the device unique key to generate data to be stored in the recording device, and the content data is subjected to its own data processing.
  • the content data is subjected to an encryption process using the system common key to generate data to be stored in the recording device. .
  • the data processing device has a signature key K de V unique to the data processing device and a system signature key K sys common to a plurality of data processing devices.
  • the cryptographic processor applies the above-mentioned device-specific signature key K dev to the above-mentioned content data.
  • the system signature key K sys is applied to the content data.
  • a total check value is generated by cryptographic processing, and the control unit. And executing a control for storing either the device-specific check value or the total check value generated in the recording device together with the content data in the recording device.
  • the data processing device has a signature key K dev unique to the data processing device and a system signature key K sys common to a plurality of data processing devices.
  • the signal processing unit performs encryption processing by applying the device-specific signature key K dev to the content data.
  • the unique check value is generated, the generated device-specific check value is collated, and the content data with the use restriction that can be used in the device other than the own data processing device is reproduced.
  • a total check value is generated by signal processing applying the above system signature key K sys to the content data, and the generated total check value is generated.
  • the control unit executes value comparison processing, and the control unit continues the processing of the content data in the encryption processing unit only when the comparison of the device-specific check value is established or when the comparison of the total check value is established. And generating reproducible decoded data.
  • the data processing device has a recording data processing device signature key master key MK dev and a data processing device identifier ID dev, and the encryption processing unit A signature key K dev as a data processing device unique key is generated by performing a signal processing based on the data processing device signature key master key MK dev and the data processing device identifier ID de V.
  • the encryption processing unit performs the DES encryption process by applying the data processing device signature chaining master key MK dev to the data processing device identifier ID dev.
  • the signature key K dev is generated.
  • the encryption processing unit includes: An encryption process is performed on the content data to generate an intermediate check value, and an encryption process is performed by applying the data processing device unique key or the system shared key to the intermediate check value.
  • the encryption processing unit generates a partial check value by performing an encryption process on a partial data set including one or more partial data obtained by dividing the content data into a plurality of parts, An intermediate check value is generated by encrypting a partial check value set data string including the generated partial check value.
  • a nineteenth aspect of the present invention is a data processing method for processing content data provided by a storage medium or a communication medium, and uses the content data according to a usage mode of the content data. Select either the encryption processing system common key common to other data processing devices or the encryption key specific to the data processing device, and apply the selected encryption key to the above content data to encrypt A data processing method characterized by performing a process.
  • the step of selecting the symbol processing key is a step of selecting according to use restriction information included in the content data.
  • a use restriction may be imposed on use of the content data only by its own data processing device.
  • the content data is subjected to an encryption process using the system common key to generate storage data for the recording device.
  • a device-specific check is performed on the above content data by performing cryptographic processing using the device-specific signature key K dev If a value is generated and the above-mentioned content data is stored in the above-mentioned recording device as being usable in equipment other than its own data processing device, encryption processing using the above-mentioned system signing key K sys for the above-mentioned content data Thus, a total check value is generated, and either the generated device-specific check value or the total check value is stored in the recording device together with the content data.
  • the content data whose use is restricted only for its own data processing device is reproduced. Then, a device-specific check value is generated by performing a signal process that applies the device-specific signature key K dev to the content data, and a verification process of the generated device-specific check value is performed.
  • a total check value is generated by encrypting the content data by applying the system signature key K sys, If the verification processing of the generated total check value is executed and the verification of the device-specific check value is established, Wherein the verification of the total check value to perform the reproduction of the content data only when a condition is satisfied.
  • a signature key K dev as a data processing device unique key is obtained by performing cryptographic processing based on the data processing device signature key master key MK dev and the data processing device identifier ID dev. It is characterized by including a generating step.
  • the step of generating the signature key K dev includes a DES encryption process in which the data processing device signature key master key MK dev is applied to the data processing device identifier ID dev. Generating the signature key K dev from Further, in one embodiment of the data processing method of the present invention, the data processing method further includes a step of executing an encryption process on the content data to generate an intermediate check value, wherein the data processing is performed on the intermediate check value. It is characterized by executing encryption processing using a device unique key or a system shared key.
  • the data processing method further comprises: generating a partial pick value by performing an encryption process on a partial data set including at least one partial data obtained by dividing the content data into a plurality of parts. It is a special feature to generate an intermediate check value by performing cryptographic processing on the partial chip value set data string including the generated partial chip value.
  • a 20th aspect of the present invention is a program providing medium for providing a computer program for causing a computer system to execute data processing for processing content data provided by a storage medium or a communication medium.
  • the computer program may execute a symbol processing system common key common to other data processing devices that use the content data, or a device specific device unique to the data processing device, depending on a usage mode of the content data.
  • a program providing medium comprising: a step of selecting one of the encryption processing keys of a key; and a step of performing encryption processing by applying the selected encryption processing key to the content data.
  • a twenty-first aspect of the present invention is a data processing device for processing content data provided by a storage medium or a communication medium, and an encryption processing unit for performing an encryption process on the content data; A control unit that controls the cryptographic processing unit.
  • the cryptographic processing unit generates a content check value for each unit of the verification target content data included in the data, and performs a collation process of the generated content check value.
  • the data processing device is characterized in that the data processing device has a configuration of executing a validity verification process in units of content block data in the data by executing the above.
  • the data processing device Has a content check value generation key
  • the encryption processing unit generates a content intermediate value based on the content block data to be verified, and performs an encryption process using the content check value generation key for the content intermediate value. Is executed to generate the content value.
  • the encryption processing unit when the content block data to be verified is encrypted, performs a predetermined process on the entire decrypted text obtained by decrypting the content block data.
  • a predetermined arithmetic processing is performed on a byte-by-byte basis to generate a content intermediate value. If the content block data to be verified is not decoded, the entire content block data is subjected to a predetermined arithmetic processing on a predetermined byte-by-byte basis, and the content is processed. It is characterized by a configuration that generates an intermediate value 3 ⁇ 4r.
  • the predetermined arithmetic processing applied in the generation processing of the intermediate check value in the encryption processing unit is an exclusive OR operation.
  • the encryption processing unit has a symbol processing configuration in a CBC mode, and a content intermediate value generation process when the content block data to be verified is encrypted.
  • the decoding process applied to the above is a decoding process in the CBC mode.
  • the encryption processing configuration in the CBC mode included in the encryption processing unit employs the multiple-time common key encryption processing only in a part of a message string to be processed.
  • the encryption processing unit may include a case where the content block data includes a plurality of parts, and some of the parts included in the content block data are to be verified.
  • step (1) a content check value is generated based on the verification target packet, and a verification process of the generated content check value is performed, thereby executing the validity verification process for each content block data unit in the data. It is characterized by having the structure which does.
  • the encryption processing unit includes a plurality of parts included in the content block data and a single verification-required part to be verified. If the part is encrypted, execute the encryption process by applying the content check value generation key to the value obtained by exclusive-ORing the entire decrypted text obtained by decryption processing of the verification-required part in specified byte units. If a content check value is generated and the above-mentioned verification-required parts are not encrypted, a value obtained by performing an exclusive-OR operation on the whole of the verification-required parts in a predetermined byte unit is encrypted by applying the above-mentioned content check value generation key. It is characterized in that a content check value is generated by executing processing.
  • the encryption processing unit when the content block data includes a plurality of parts and the verification target includes a plurality of verification-required parts, the encryption processing unit includes: The result obtained by executing the encryption processing using the above-mentioned content check value generation key on the concatenated data of the part check values obtained by executing the encryption processing by applying the content check value generation It is characterized in that it is a configuration with a value.
  • the data processing device further includes a recording device for storing content data including content block data that has been verified by the encryption processing unit.
  • the control unit in the collation processing of the content check value in the cryptographic processing unit, if the collation is not established, transmits to the recording device. It is a special feature that it has a configuration to stop the storage processing of. .
  • the data processing device further includes a reproduction processing unit that reproduces the data whose validity has been verified in the encryption processing unit.
  • the data processing device Is characterized in that, in the collation processing of the content check value in the encryption processing unit, if the collation is not established, the control unit has a configuration to stop the reproduction processing in the reproduction processing unit. .
  • a twenty-second aspect of the present invention is a data processing method for processing content data provided by a storage medium or a communication medium, and includes a content check value for each content block data to be verified included in the data.
  • the data processing method is characterized in that a validity verification process is executed for each content lock data in the data by generating a content check value and executing a collation process of the generated content check value.
  • the data processing method generates a content intermediate value based on the content block data to be verified, and applies a content check value generation key to the generated content intermediate value. It is characterized in that a content check value is generated by executing an encryption process.
  • the data processing method when the content block data to be verified is encrypted, the entire decrypted text obtained by the decryption processing of the content lock data is transmitted. A predetermined arithmetic processing is performed in predetermined byte units to generate a content intermediate value, and if the content block data to be verified is not encrypted, the entire content block data is subjected to predetermined calculation processing in predetermined byte units and the content intermediate value is calculated. It is characterized by generating values.
  • the predetermined arithmetic processing applied in the generation processing of the intermediate check value is an exclusive OR operation.
  • the decryption processing applied to the content intermediate value generation processing in a case where the content block data to be verified is encrypted, It is characterized by the decoding process in CBC mode. Further, in one embodiment of the data processing method of the present invention, the decryption processing configuration in the CBC mode is characterized in that the common key encryption processing is applied only to a part of a message sequence to be processed. .
  • the data processing method when the content block data includes a plurality of parts, and some of the parts included in the content block data are to be verified, A content check value is generated based on the verification target part, and a verification process of the generated content check value is executed, thereby executing a validity verification process for each content block data unit in the data.
  • the verification required part when it is encrypted, it performs a signal process that applies the content check value generation key to the value obtained by XORing the entire decrypted text obtained by decryption processing of the verification required parts in predetermined byte units.
  • a content check value is generated and the above verification required parts are not encrypted, a value obtained by performing an exclusive OR operation on the entire verification required parts in predetermined byte units is encrypted by applying the above content check value generation key. It is characterized by executing a process to generate a content check value.
  • the data processing method when the content block data includes a plurality of parts, and a plurality of verification-required parts to be verified are included,
  • the result obtained by further executing the encryption processing by applying the above-mentioned content check value generation key to the linked data of the part check values obtained by performing the encryption processing by applying the check value generation key It is characterized as a content check value.
  • the data processing method further includes a step of storing content data including content block data on which the validity has been verified. Further, in one embodiment of the data processing method of the present invention, the data processing method further includes: in the collation processing of the content check value, when the collation is not established, the control unit stores the data in the recording device. It is characterized by stopping the processing.
  • the data processing method further includes a step of executing a reproduction process of reproducing the data on which the validity has been verified.
  • the data processing method is characterized in that, in the collation processing of the content check value, when the collation is not established, the reproduction processing is stopped.
  • a twenty-third aspect of the present invention is a content data verification value assigning method for content data verification processing, wherein a content check value is generated for each content block data to be verified included in data, and the generated content is generated.
  • a method for assigning a check value to content data including content block data to be verified is characterized by providing a content data verification value assigning method.
  • the content check value is generated by a cryptographic process using a content block data to be checked as a message and applying a content check value generation key. Value.
  • the content check value includes generating a content intermediate value based on the content block data to be verified, and performing the content check on the content intermediate value. It is a value generated by performing encryption processing using a value generation key. Further, in one embodiment of the content data verification value assigning method of the present invention, the content check value is a value generated by executing a symbol processing in the CBC mode on the content block data to be verified.
  • the encryption processing configuration in the CBC mode described above includes a multiple-time common key code only in a part of a message sequence to be processed.
  • the content lock data includes a plurality of parts, and the content lock data includes a plurality of parts.
  • a content check value is generated based on the parts to be verified, and the generated content check value is added to the content data including the content block data to be verified.
  • the content block If the data contains multiple parts and there is only one part to be verified that is to be verified, and if the above parts to be verified are encrypted, the entire decrypted text obtained by decrypting the parts to be verified is required.
  • a content check value is generated by performing an encryption process by applying a content check value generation key to a value obtained by performing an exclusive OR operation on a predetermined byte unit, and if the above verification required parts are not encrypted, the relevant verification required parts are used.
  • a content check value is generated by performing an encryption process using the above content check value generation key to generate a content check value, and the generated content check value includes the content block data to be verified. It is characterized by being added to content data.
  • the content data verification value assigning method when the content block data includes a plurality of parts and there are a plurality of verification required
  • the concatenation data obtained by applying the content check value generation key to the concatenated data of the part check values obtained by applying the content check value generation key The result is a content check value, and the generated content check value is added to the content data including the content lock data to be verified.
  • the twenty-fourth aspect of the present invention is provided by a storage medium or a communication medium.
  • a twenty-fifth aspect of the present invention is directed to a storage data storage device for recording a content data having a plurality of content blocks of which at least a part of the blocks are encrypted, and a header portion storing information relating to the content block.
  • a data processing device that performs a process of generating the content block.
  • the data processing device performs a sign processing of the encryption key Kcon of the content block with the encryption key Kdis for the content data to be stored in the recording device.
  • the encryption key data Kd is [K con] is constituted by data stored in the header section
  • the encryption key data Kd is [K con] is extracted from the header section and decrypted by executing decryption processing 3 ⁇ 4.
  • the data Kcon is generated, and a different encryption key Kstr is applied to the generated decrypted data Kcon to perform the signal processing.
  • a configuration is provided in which new encryption key data K str [K con] that has been subjected to symbol processing with the encryption key K str is generated and stored in the header section of the content data.
  • a plurality of content locks in which at least a part of the blocks are encoded and storage data for a content data recording device having a header section storing information on the content blocks are generated.
  • a data processing device that executes a process for performing the above-described processing.
  • the data processing device is a device in which the content block included in the content data to be stored in the recording device is a content in which the content block is encrypted with a symbol key Kb 1 c And the encryption key data K con [Kb 1 c] encrypted with the encryption key K con, and the encryption key K .
  • the # key data Kd is [K con]
  • the decrypted data K con is generated by performing decryption processing by taking out from the header part, and performing a decryption process by applying a different decryption key K str to the generated decrypted data K con to perform encryption.
  • a data processing device having a configuration for generating encryption key data K str [K con] encrypted by a key K str and storing the generated encryption key data in a header section of the content data.
  • a twenty-seventh aspect of the present invention provides a content data storage device having a plurality of content blocks in which at least a part of the blocks are encrypted, and a content data storage device having a header unit storing information related to the content blocks.
  • a data processing device that performs a process of generating the content data, and the data processing device is encrypted by the content block power S and the encryption key Kb 1 c included in the content data to be stored in the recording device.
  • the above-mentioned encrypted chain data Kd is [Kb 1 c] is transmitted from the content block section.
  • the decrypted key Kb 1 c is decrypted to generate decrypted data Kb 1 c by performing a decryption process on the encrypted key Kb 1 c.
  • a key key K str [Kb 1 c] encrypted with the encryption key K str is generated and stored in the content block.
  • a twenty-eighth aspect of the present invention is a content data generating method for generating content data, wherein a plurality of content blocks configured by data including at least one of audio information, image information, and program data are provided. Blocks are concatenated, and at least some of the content blocks included in the plurality of content blocks are subjected to encryption processing using an encryption key K con, and decryption key data obtained by encrypting the encryption key K con using a decryption key K dis Generate Kd is [K con] and create the above content
  • the content data generation method is to store content data in a header portion and generate content data including a plurality of content blocks and a header portion.
  • identification information of the content data is characterized by including a process of generating block information storing information including the presence / absence of management and storing the generated block information in the header section.
  • the content data generation method further includes: generating a partial check value based on a part of information constituting the header portion; Storing in the header section, generating a total check value based on the partial check value, and storing the total check value in the header section.
  • the data to be checked is a message
  • the check value generation key is encrypted. It is characterized in that it is executed by applying the DES ⁇ algorithm that is the key.
  • the content data generation method further includes encrypting the block information with an encryption key K bit, and converting the encryption key K bit to an encryption key K dis.
  • the encryption key data K dis [K bit] generated by the above is stored in the header section.
  • each block of the plurality of blocks in the content lock is generated as a common fixed data length.
  • each block of the plurality of blocks in the content lock is generated as a configuration in which an encrypted data portion and a non-signature data portion are regularly arranged. It is characterized by.
  • a twentieth aspect of the present invention provides a method for generating content data.
  • This is a method of generating data, in which a plurality of content blocks including at least one of audio information, image information, and program data are connected, and at least a part of the plurality of content locks is converted into audio information, image information,
  • [Kb 1 c] generates encryption key data Kd is [Kc on] obtained by subjecting the encryption key Kc on to the encryption key Kd is and stores it in the header of the content data.
  • a content data generation method for generating content data including a plurality of content blocks and a header portion is further provided in a thirtieth aspect of the present invention.
  • This is a content data generation method for generating content data, in which a plurality of content blocks including at least one of audio information, image information, and program data are connected, and at least a part of blocks of a plurality of content blocks is connected.
  • a symbol data portion obtained by encrypting data including at least one of audio information, image information, and program data with an encryption key Kb1c, and a symbol key Kb1c of the symbol data portion as an encryption key Kd.
  • This is a content data generation method configured to generate content data including a plurality of content blocks and a header portion, which is formed by a thread of encryption key data Kd is [Kb 1 c] encrypted by is.
  • a storage device for recording content data having a plurality of content blocks in which at least a part of the blocks are encrypted, and a header portion storing information related to the content blocks.
  • This is a data processing method for executing processing, and the content data to be stored in the recording device is encryption key data Kd is [Kc on Is composed of the data stored in the header part, the encryption key data Kd is [Kc on] is taken out from the header part and decryption processing is performed to generate decrypted data K con, By applying a different key code K str to the generated decrypted data K con and performing cryptographic processing, new cryptographic key data K str [K con] encrypted by the cryptographic key K str is obtained. Generating the encryption key data K str [K con] in a header portion of the content data, and storing the encrypted key data K str [K con] in the recording device together with the plurality of content blocks. .
  • the content block contained in the content to be stored in the recording device is composed of the content encrypted by the encryption key Kb 1 c and the encryption key K con Key data K con [K b 1 c], and encryption key data Kd is [Kc on] obtained by encrypting the encryption key K con with the encryption key K dis is stored in the header section.
  • the encryption key data Kd is [Kc on] is taken out from the header portion and decryption processing is performed to perform decryption data K con
  • decryption processing is performed to perform decryption data K con
  • the encryption key data K str [K con And storing the generated encryption key data K str [K con] in the header of the content data, and storing the generated encryption key data in the recording device together with the plurality of content blocks. It is in.
  • a storage device for recording content data having a plurality of content blocks, at least some of which blocks are encrypted, and a header portion storing information related to the content blocks.
  • This is a data processing method that executes processing, and the content block contained in the content to be stored in the recording device is encrypted with the encryption key Kb1c and the content block.
  • Key data Kd is [K b 1 c]
  • the encryption key data Kd is [K b 1 c] is taken out from the content block unit
  • the encryption key Kb 1 c is decrypted to perform decryption data Kb 1 c by applying a different symbol key K str to the generated decrypted data Kb.1 c to perform symbol processing, whereby an encryption key K str [ Kb 1 c] is generated, the generated encryption key K str [Kb 1 c] is stored in the content block section, and stored in the recording device together with a plurality of content blocks. is there.
  • a thirty-fourth aspect of the present invention is directed to a content data storage device having a plurality of content blocks, at least some of which are encrypted, and a content data recording device having a header section storing information relating to the content block.
  • the encryption key data Kd is [K con] obtained by subjecting 0 11 to the encryption key 1 ⁇ (1 is is configured by data stored in the header portion
  • the encryption key data Kd is [K con on ] Is extracted from the above header
  • decryption processing is executed to generate decrypted data Kcon
  • performing encryption processing by applying a different encryption key K str to the generated decryption data K con to obtain new encryption key data K str encrypted by the encryption key K str [K con] and storing the generated encryption key data K str [K con] in the header of the content data.
  • a data processing apparatus for performing a process of reproducing content data provided by a storage medium or a communication medium, the content processing device comprising: Performs content data analysis of compressed content and decompression processing And a decompression process of compressed content included in the content data using a decompression program included in the content data obtained as an analysis result of the content data analysis unit. And a decompression processing unit.
  • a data storage unit for storing the compressed content extracted by the content data analysis unit and a decompression processing program extracted by the content data analysis unit are stored.
  • the content data analysis unit obtains configuration information of the content data based on header information included in the content data and analyzes the content data. It is characterized by having a configuration.
  • the decompression processing unit when the header information includes reproduction priority information of the compressed content, and the decompression processing unit includes a plurality of compressed contents to be subjected to decompression processing,
  • the decompression processing unit is configured to sequentially execute content decompression processing in accordance with the priority based on the priority information in the header information obtained by the content data analysis unit.
  • the data processing device further comprises a display unit for displaying information of the compressed content to be subjected to decompression processing, and content information displayed on the display unit.
  • Input means for inputting the reproduced content identification data
  • the decompression processing section performs decompression processing of the compressed content corresponding to the identification data based on the reproduced content identification data input from the input means. It is characterized in that it is configured to execute.
  • a sixth aspect of the present invention is provided by a storage medium or a communication medium.
  • a data processing device that performs content data reproduction processing, receives content data including either a compression core or a decompression processing program, and receives the content data from the header information included in the received content data, and the content data is compressed content. And if the content data is compressed content, obtain the type of compression processing program applied to the compressed content from the header information of the content data.
  • the decompression processing program includes a content data analysis unit that obtains a decompression processing program type from the header information of the content data, and a decompression processing unit that executes decompression processing of the compressed content.
  • a decompression processing program applicable to the type of compression processing program for compressed content is selected based on the type of decompression processing program analyzed by the content data analysis unit, and decompression processing by the selected decompression processing program is performed.
  • the data processing device In the data processing device.
  • the data processing device further includes a data storage unit that stores the compressed content extracted by the content data analysis unit, and a content data analysis unit.
  • the header information includes playback priority information of the compressed content, and when there are a plurality of compressed contents to be expanded,
  • the decompression process is characterized in that the decompression process is sequentially executed in accordance with the priority based on the priority information in the header information acquired by the content data analysis unit.
  • the data processing device has a search unit for searching for a decompression processing program, and the search unit includes The decompression processing program applicable to the compression processing program type of the compressed content analyzed by the data analysis unit is searched by using the program storage means accessible by the data processing device as a search target. I do.
  • the data processing device further comprises a display unit for displaying information of the compressed content to be subjected to decompression processing, and content information displayed on the display unit.
  • Input means for inputting the reproduced content identification data
  • the decompression processing section performs decompression processing of the compressed content corresponding to the identification data based on the reproduced content identification data input from the input means. It is characterized in that it is configured to execute.
  • a 37th aspect of the present invention is a data processing method for performing a reproduction process of content data provided by a storage medium or a communication medium, and includes a compressed content and a program for decompressing the compressed content. Executing a content data analysis of the content data, extracting a compressed content from the content data, and a content data analyzing step of extracting a decompression processing program; and a content data obtained as an analysis result of the content data analyzing step. A decompression processing step of performing decompression processing of compressed content included in the content data using a decompression processing program.
  • the data processing method further includes a data storage step of storing the compressed content extracted by the content data analysis step, and an extraction by the content data analysis unit.
  • the content data analyzing step includes a step of: It is characterized in that content data is analyzed by acquiring configuration information of the ten data.
  • the decompression processing step is characterized in that, based on the priority information in the header information acquired in the content data analysis step, the content decompression processing is sequentially performed according to the priority.
  • the data processing method further includes a display step of displaying information of compressed content to be subjected to decompression processing on a display means, and a content displayed on the display means. And an input step of inputting the reproduction content identification data selected from the information.
  • the decompression processing step includes the steps of: executing the identification data based on the reproduction content identification data input in the input step; It is characterized by executing the decompression processing of the compressed content corresponding to.
  • a thirty-eighth aspect of the present invention is a data processing method for performing a reproduction process of content data provided by a storage medium or a communication medium.
  • the content data including any of the decompression processing programs determines whether the content data is the compressed content or the decompression processing program, and If the data is compressed content, the type of compression processing program applied to the compressed content is obtained from the header information of the content data, and if the content data is a decompression program, the A content data analysis step of acquiring a decompression processing program type from the header information; and a decompression processing program applicable to the compression processing program type of the compressed content analyzed in the content data analysis step, According to A selection step for selecting based on the analyzed decompression processing program type; And a decompression processing step of performing decompression processing by the decompression processing program selected in the selection step.
  • the data processing method further includes a data storage step of storing the compressed content extracted by the content data analysis unit, and a data storage step of extracting the compressed content by the content data analysis unit.
  • the header information includes playback priority information of the compressed content
  • the expansion processing step includes: Based on the priority information in the header information obtained in the content data analysis step, the content data is sequentially executed in accordance with the priority.
  • the data processing method further includes a search step of searching for a decompression processing program, wherein the search step is analyzed in the content data analysis step. It is characterized in that a decompression processing program applicable to the compression processing program type of the compressed content is searched by using the accessible program storage means as a search target.
  • the data processing method further includes a display step of displaying information of the compressed content to be decompressed on a display means, and a content displayed on the display means.
  • a third aspect of the present invention is characterized in that decompression processing of compressed content is executed.
  • a content data generation method for generating content data wherein the content data generation method is characterized in that content data is generated by combining compressed content and a decompression program for the compressed content.
  • the content data is further provided with configuration information of the content data as header information of the content data.
  • the content data includes, as header information, reproduction priority information of the content included in the content data.
  • a 40th aspect of the present invention relates to a content data generation method for performing a process of generating content data provided by a storage medium or a communication medium, wherein the content data is a compressed content or an expansion processing program. If the content data is compressed content, the type of the compression processing program applied to the compressed content is added as header information, and the content data is decompressed.
  • the content data generation method is characterized by generating content data to which a decompression processing program type is added as header information.
  • reproduction priority information of the content included in the content data is added as header information of the content data.
  • a forty-first aspect of the present invention is a program providing medium for providing a computer program for causing a computer system to execute a reproduction process of content data provided by a storage medium or a communication medium,
  • the content program executes content data analysis of the content data including the compressed content and the decompression processing program of the compressed content, and executes the extraction processing of the compressed content and the decompression processing program from the content data.
  • the analysis step and the analysis result of the content data analysis step And a decompression processing step of executing decompression processing of compressed content included in the content data using a decompression processing program included in the content data obtained as described above.
  • the program providing medium is, for example, a medium that provides a computer program in a computer-readable format to a general-purpose computer system that can execute various program codes.
  • the form of the medium is not particularly limited, such as a storage medium such as CD, FD, and MO, or a transmission medium such as a network.
  • Such a program providing medium defines a structural or functional cooperative relationship between the computer and the providing medium for realizing the functions of the predetermined computer on the computer system. is there.
  • a cooperative operation is exerted on the computer system, and the same operation and effect as in the other aspects of the present invention are obtained. You can do it.
  • the partial check value generated as the check value for the partial data set including one or more partial data obtained by dividing the content data into a plurality of parts is obtained.
  • Verification processing of partial data is performed by collation processing, and verification is performed on a partial check value set obtained by combining a plurality of partial check values. Verification processing is performed for the entire partial data set corresponding to the multiple partial check values that make up, so partial verification processing is possible, unlike the configuration in which only a single check value is assigned to the entire content data Also, the entire verification process is performed using the partial check value, so that the process becomes more efficient.
  • the possibility of tampering for example, the verification process corresponding to the usage mode of the content data, for example, the download process and the reproduction process, can be performed, such as omitting the verification process for the data portion having no data, and efficient verification according to the usage mode can be performed.
  • an individual key required to execute encryption processing such as data decryption, data decryption, data verification, authentication processing, and signature processing is obtained. It has a configuration in which a master key for generating these individual keys is stored in the storage unit without being stored in the storage unit, and the encryption processing unit in the data processing device requires individual keys such as an encryption key and an authentication key. Accordingly, the master key corresponding to those individual keys is extracted from the storage unit, and based on the extracted master key and the identification data of the device or data, for example, the encryption processing applying the DES algorithm is executed, Since individual keys such as an encryption key and an authentication key are generated, there is no possibility that the individual key itself leaks from the storage unit.
  • identification data information of an unauthorized device is stored in the content data, and the unauthorized device list and After executing the matching process with the recorder / reproducer identifier of the recorder / player that wants to use the content, as a result of the comparison, an entry that matches the recorder / reproducer identifier exists in the entry included in the unauthorized device list. In such a case, the execution of subsequent processing, such as content data decryption, download, playback processing, etc., is stopped. It is possible to eliminate the illegal use of the content due to.
  • the check value for the unauthorized device list in the content data is also included in the content data. Can be prevented, and a more secure content data use configuration can be provided.
  • the data processing device such as a PC stores a device unique key unique to the data processing device and a system common key common to other data processing devices that use the content data
  • the content according to the content usage restriction is stored. Processing becomes possible.
  • the data processing device selectively uses these two keys in accordance with the content usage restrictions. For example, if the content can be used only in the data processing device, use a key unique to the data processing device. On the other hand, if the content can be used in other systems, use the system common key. Perform check value generation and collation processing of. Only when the verification is successful, the encrypted data can be decrypted and reproduced, so that the use of the content such as the content that can be used only by the data processing device or the content that can be commonly used in the system, etc. Processing according to the restriction becomes possible.
  • a content check value is generated for each content block data, and a collation process of the generated content check value is executed.
  • the content intermediate value is generated based on the content block data to be verified, and the content check value is generated by encryption processing using the content check value generation key.
  • verification can be performed in units of content blocks, and the usage of content data, for example, Simple download and playback processing It is possible to perform a simplified verification process, and it is possible to perform an efficient verification according to a use mode.
  • the data processing device, the content data generation method, and the data processing method of the present invention have a configuration in which a plurality of content blocks are provided in the content data, and an encryption process can be performed for each content block. Since the key used for content encryption is further encrypted and stored in the header, for example, even if there are multiple content blocks and blocks that require encryption and unnecessary blocks are mixed, It is possible to create an arbitrary data configuration by connecting each block.
  • the configuration of the content block is a regular configuration, for example, a configuration having a uniform data length, or an encrypted block and an unencrypted (plaintext).
  • a configuration in which blocks and blocks are alternately arranged it is possible to quickly execute the decryption processing and the like, and perform processing in accordance with the content of the content data, for example, encryption suitable for reproduction of music data and the like.
  • Content data can be provided.
  • the data processing device, the data processing method, and the content data generation method of the present invention can efficiently execute a reproduction process when the content is compressed audio data, image data, or the like.
  • the decompression processing using the decompression processing program attached to the compressed content data can be performed in the playback processing device, and the reproduction processing can be performed. It is possible to avoid a situation in which the decompression processing program does not exist in the apparatus and reproduction cannot be performed.
  • the configuration of the content data is a combination of the compressed data and the header section storing the type of the compression processing program.
  • the content is a decompression program
  • the content data is made up of a combination of a decompression program and a header section storing the type of the program, so that the playback processing device can perform compression processing.
  • the decompression processing program applicable to the tend data is determined based on the header information. Further, the decompression processing is executed by retrieving the applicable program from a recording device or the like that can be accessed by the reproduction processing device. There is no need to execute a program search process, and efficient playback processing becomes possible.
  • FIG. 1 is a diagram showing a configuration of a conventional data processing system.
  • FIG. 2 is a diagram showing a configuration of a data processing device to which the present invention is applied.
  • FIG. 3 is a diagram showing a configuration of a data processing device to which the present invention is applied.
  • FIG. 4 is a diagram showing a data format of content data on a medium and a communication path.
  • FIG. 5 is a diagram showing a handling policy included in the header in the content data.
  • FIG. 6 is a diagram showing block information included in a header in content data.
  • FIG. 7 is a diagram showing a digital signature generation method using DES.
  • FIG. 8 is a diagram showing a digital signature generation method using triple DES.
  • FIG. 9 is a diagram illustrating an embodiment of a triple DES.
  • FIG. 10 is a diagram illustrating a digital signature generation method partially using triple DES.
  • FIG. 11 is a diagram showing a processing flow in digital signature generation.
  • FIG. 12 is a diagram showing a processing flow in digital signature verification.
  • FIG. 13 is a diagram for explaining a processing sequence of a mutual authentication process using the symmetric key encryption technology.
  • FIG. 14 is a diagram illustrating a public key certificate.
  • FIG. 15 is a diagram for explaining a processing sequence of a mutual authentication process using the asymmetric key encryption technology.
  • FIG. 16 is a diagram depicting a processing flow of an encryption processing using the elliptic curve encryption
  • FIG. 17 is a diagram depicting a processing flow of a decryption processing using the elliptic curve encryption
  • FIG. 18 is a diagram showing a data holding state on the recording / reproducing device.
  • FIG. 19 is a diagram showing a data retention state on the recording device.
  • FIG. 20 is a diagram showing a flow of a mutual authentication process between the recording / reproducing device and the recording device.
  • FIG. 21 is a diagram showing a relationship between a master key of the recording / reproducing device and a corresponding key block of the recording device.
  • FIG. 22 is a diagram showing a processing flow in a content download process.
  • FIG. 23 is a diagram for explaining a method of generating a check value A: ICVa.
  • FIG. 24 is a diagram for explaining a method of generating the check value B: ICVb.
  • - Figure 25 is a diagram for explaining how to generate the total tick value and the check value unique to the recording / reproducing device.
  • FIG. 28 is a diagram showing a processing flow in content reproduction processing.
  • 'FIG. 29 is a diagram for explaining a command execution method in the recording device.
  • FIG. 30 is a diagram for explaining a command execution method in content storage processing in the recording device.
  • FIG. 31 is a diagram for explaining a command execution method in the content reproduction processing in the recording device.
  • FIG. 32 is a diagram illustrating the configuration of the format type 0 of the content data format.
  • FIG. 33 is a view for explaining the configuration of the format type 1 of the content data format.
  • FIG. 34 is a view for explaining the configuration of the format type 2 of the content data format.
  • FIG. 35 is a view for explaining the configuration of format type 3 of the content data format.
  • FIG. 36 is a diagram for explaining a generation processing method of the content check value ICVi in the format type 0.
  • FIG. 37 is a view for explaining a generation processing method of the content check value ICVi in the format type 1.
  • FIG. 38 is a diagram for explaining a method of generating a total check value and a check value specific to a recording / reproducing device in the format .types 2 and 3. ⁇
  • FIG. 39 is a diagram showing a processing flow of the content download processing in the format .types 0 and 1.
  • FIG. 40 is a diagram depicting a processing flow of a content download processing in the format type 2;
  • FIG. 41 is a diagram depicting a processing flow of a content download processing in the format type 3;
  • FIG. 42 is a diagram depicting a processing flow of a content reproduction processing in the format type 0;
  • FIG. 43 is a diagram depicting a processing flow of a content reproduction processing in the format type 1;
  • FIG. 44 is a diagram depicting a processing flow of a content reproduction processing in the format type 2;
  • FIG. 45 is a diagram depicting a processing flow of a content reproduction processing in the format type 3;
  • FIG. 46 is a diagram (part 1) illustrating a method of generating and verifying a check value by a content creator and a content verifier.
  • FIG. 4 is a diagram (part 2) for explaining the verification method.
  • FIG. 48 is a diagram (part 3) illustrating a method of generating and verifying a check value by a content creator and a content verifier.
  • FIG. 49 is a diagram illustrating a method of individually generating various keys using a master key. .
  • FIG. 50 is a diagram (example 1) showing a content provider and an example of processing performed by a user in a method of individually generating various keys using a master key.
  • Figure 51 is a diagram (Example 2) showing a content provider and an example of processing performed by a user in a method of individually generating various keys using a master chain.
  • FIG. 52 is a diagram for explaining a configuration in which the use restriction is performed by properly using the master key.
  • Figure 53 is a diagram (Example 3) showing a content provider and an example of processing performed by the user in the method of individually generating various keys using the master key.
  • Fig. 54 is a diagram (Example 4) showing a content provider and an example of processing by a user in a method of individually generating various keys using a master key.
  • FIG. 55 is a diagram (example 5) showing a content provider and an example of processing performed by a user in a method of individually generating various keys using a master key.
  • FIG. 56 is a diagram showing a processing flow for storing an encryption key to which triple DES is applied by using a single DES algorithm.
  • FIG. 57 is a diagram showing a content reproduction processing flow (Example 1) based on the priority order.
  • FIG. 58 is a diagram showing a content reproduction processing flow (example 2) based on the priority.
  • FIG. 59 is a diagram showing a content reproduction processing flow (Example 3) based on the priority.
  • FIG. 60 is a diagram illustrating a configuration for executing a process of decoding (expanding) compressed data in the content reproduction process.
  • FIG. 61 is a diagram showing a configuration example (example 1) of content.
  • FIG. 62 is a diagram showing a playback processing flow in Content Configuration Example 1.
  • FIG. 63 is a diagram illustrating a configuration example (example 2) of content.
  • FIG. 64 is a diagram illustrating a playback processing flow in the content configuration example 2.
  • FIG. 65 is a diagram illustrating a configuration example (example 3) of content.
  • FIG. 66 is a diagram showing a playback processing flow in the content configuration example 3.
  • FIG. 67 is a diagram illustrating a configuration example (example 4) of content.
  • FIG. 68 is a diagram illustrating a playback processing flow in the content configuration example 4.
  • FIG. 69 is a diagram illustrating the generation and storage processing of save data.
  • FIG. 70 is a diagram depicting a processing flow relating to a save data storage processing example (example 1);
  • FIG. 71 is a diagram showing a configuration (example 1) of a data management file used in storage and reproduction processing of save data. .
  • FIG. 72 is a diagram depicting a processing flow relating to an example of save data reproduction processing (example 1);
  • FIG. 73 is a diagram depicting a processing flow relating to a save data storage processing example (example 2); .
  • ⁇ 74 is a diagram showing a processing flow relating to an example of save data reproduction processing (Example 2).
  • FIG. 75 is a diagram depicting a processing flow relating to a save data storage processing example (example 3);
  • FIG. 76 is a diagram showing a data management file configuration (example 2) used in storage data storage and playback processing.
  • FIG. 77 is a diagram showing a processing flow relating to an example of the save data reproduction processing (Example 3).
  • FIG. 78 is a diagram showing a processing flow relating to an example of save data storage processing (Example 4).
  • FIG. 79 is a diagram illustrating a processing flow relating to an example of save data reproduction processing (Example 4).
  • FIG. 80 is a diagram depicting a processing flow relating to a save data storage processing example (example 5);
  • FIG. 81 is a diagram showing a configuration (example 3) of a data management file used in storage and reproduction processing of save data.
  • FIG. 82 is a diagram depicting a processing flow relating to an example of the save data reproduction processing (example 5);
  • FIG. 83 is a diagram depicting a processing flow relating to a save data storage processing example (example 6);
  • FIG. 84 is a diagram showing a data management file configuration (Example 4) used in storage data storage and playback processing.
  • FIG. 85 is a diagram depicting a processing flow relating to an example of save data reproduction processing (Example 6);
  • Figure 86 is a diagram for explaining the configuration of the elimination of content unauthorized users (revocation).
  • FIG. 87 is a diagram showing a processing flow (example 1) of elimination of content unauthorized users (revocation).
  • FIG 8 8 8 is a diagram depicting a processing flow of the content fraudster exclusion (Ribokeshiyon) (Example 2).
  • FIG. 89 is a diagram for explaining the configuration of the security chip (Example 1).
  • FIG. 90 is a diagram illustrating a processing flow in a method of manufacturing a security chip.
  • FIG. 91 is a diagram illustrating a configuration (example 2) of the security chip.
  • FIG. 92 is a diagram showing a processing flow in data writing processing in the security chip (example 2).
  • Figure 93 shows the write data check processing in the security chip (Example 2) It is a figure which shows the processing flow in.
  • FIG. 2 shows a block diagram of the overall configuration according to an embodiment of the data processing device of the present invention.
  • the data processing apparatus of the present invention has a recording / reproducing device 300 and a recording device 400 as main components.
  • the recording / reproducing device 300 is constituted by, for example, a personal computer (PC: Persona1Computer) or a game machine. As shown in FIG. 2, the recording / reproducing device 300 includes a control unit 301 that performs overall control including communication control with the recording device 400 during encryption processing in the recording / reproducing device 300, and a recording / reproducing device that controls overall encryption processing.
  • the recording / reproducing device 300 downloads content data to the recording device 400 and reproduces content data from the recording device 400 under the control of the control unit 301.
  • the recording device 400 is preferably a storage medium that is preferably detachable from the recording / reproducing device 300, for example, a memory card or the like. Having.
  • the recording / reproducing device 300 includes a reading unit 304 as an interface capable of inputting content data stored in a storage medium, a DVD, a CD, an FD, and an HDD shown in the left end of FIG. 2, and content distributed from a network such as the Internet. It has a communication unit 305 as an interface capable of inputting data, and inputs contents from outside.
  • the recording / reproducing device 300 has an encryption processing unit 302, and when the content data input from the outside via the reading unit 304 or the communication unit 304 is downloaded to the recording device 400, or when the content data is downloaded to the recording device 400.
  • Execute The cryptographic processing unit 302 holds a control unit 360 that controls the entire cryptographic processing unit 302, information such as a key for cryptographic processing, and performs processing so that data cannot be easily read from the outside.
  • an encrypted Z decryption unit 308 that performs encryption processing, decryption processing, data generation / verification for authentication, random number generation, and the like.
  • the control unit 301 sends an initialization instruction to the recording device 400 via the recording device controller 303 when the recording device 400 is mounted on the recording / reproducing device 300, for example.
  • the mutual authentication process performed between the encryption / decryption unit 308 of the recording / reproducing device encryption processing unit 302 and the ⁇ / decryption unit 406 of the recording device encryption processing unit 410 Performs mediation processing in various processing such as check value collation processing, encryption, and decryption processing. Each of these processes will be described in detail later.
  • the cryptographic processing unit 302 is a processing unit that executes authentication processing, encryption processing, decryption processing, data verification processing, and the like, as described above.
  • the encryption processing control unit 360 is a control unit that performs overall control of encryption processing such as authentication processing and encryption / decryption processing performed in the recording / reproducing device 300.
  • the recording / reproducing device The setting of the authentication completion flag at the time of completion of the authentication process executed between the device 300 and the recording device 400, and the execution of the encryption / decryption unit 310 of the recording / reproducing device encryption unit 302 For example, an instruction to execute a tuck value generation process relating to download or reproduction content data, an instruction to execute a generation process to generate various key data, and the like, and control the entire cryptographic process.
  • the internal memory 307 which will be described in detail later, is a key required for various processes such as a mutual authentication process, a check value comparison process, an encryption process, and a decryption process executed in the recording / reproducing device 300. Stores data or identification data.
  • the encryption Z decryption unit 308 uses the key data and the like stored in the internal memory 307 to download content data input from the outside to the recording device 400, Record content data stored in 400 It performs authentication processing, encryption processing, and decryption processing for playback and execution from the device 400, as well as generation and verification of predetermined check values and digital signatures, data verification, and generation of random numbers.
  • the signal processing unit 302 is composed of a semiconductor chip having a structure that is difficult to access from the outside, has a multilayer structure, and the internal memory is sandwiched between dummy layers such as an aluminum layer. It is configured as a tamper-resistant memory that has the characteristic that it is difficult to read data illegally from the outside, such as the operating voltage and / or frequency width is narrow. This configuration will be described in detail later.
  • the recording / reproducing device 300 has a central processing unit (main CPU: CentralProcesssingUit) 106 and a RAM in addition to these encryption processing functions.
  • main CPU CentralProcesssingUit
  • RAM random access memory
  • Central processing unit Main CPU: Central Processing Unit
  • RAM Random Access Memory
  • ROM Read Only Memory
  • a central processing unit Main Processing Unit
  • Main Processing Unit Central Processing Unit
  • RAM Random Access Memory
  • ROM Read Only Memory
  • a central processing unit Mainn CPU: Central Processing
  • Un it 106 controls the playback and execution of the content, such as outputting the content data read from the recording device and decoded to the AV processing unit 109 under the control of the control unit 301. Perform
  • RAMI 07 is used as main memory for various processing in CPU 106 And is used as a work area for processing by the main CPU 106.
  • the ROM 108 stores a basic program or the like for starting the OS or the like started by the main CPU 106.
  • the AV processing unit 109 specifically has a data compression / decompression processing mechanism such as an MPEG2 decoder, an ATRAC decoder, and an MP3 decoder. Perform processing for data output to data output devices such as displays or speakers that do not.
  • a data compression / decompression processing mechanism such as an MPEG2 decoder, an ATRAC decoder, and an MP3 decoder. Perform processing for data output to data output devices such as displays or speakers that do not.
  • the input interface 110 outputs input data from various input means such as a connected controller, keyboard, mouse, etc., to the main CPU 106.
  • the main CPU 106 executes a process according to an instruction from the controller from the user based on, for example, a game program being executed.
  • PIO Parallel I / O Interface
  • SIO Serial I / O Interface
  • the main CPU 106 also performs control when storing, for example, setting data and the like relating to a running game and the like as save data in the recording device 400.
  • the stored data is transferred to the control unit 301, and the control unit 301 causes the encryption processing unit 302 to perform encryption processing on the save data as necessary, and stores the encrypted data in the recording device 400. To be stored.
  • the recording device 400 is a storage medium that is preferably detachable from the recording / reproducing device 300 as described above, and is configured by, for example, a memory card.
  • the recording device 400 has an encryption processing unit 401 and an external memory 402.
  • the recording device encryption processing unit 401 performs an interaction between the recording / reproducing device 300 and the recording device 400 at the time of downloading content data from the recording / reproducing device 300 or reproducing content data from the recording device 400 to the recording / reproducing device 300.
  • Processing to perform authentication processing, encryption processing, decryption processing, and data verification processing It has a control unit, an internal memory, an encryption / decryption unit, and the like, like the encryption processing unit of the recording / reproducing device 300. These details are shown in Figure 3.
  • the external memory 402 is composed of, for example, a nonvolatile memory such as an EEPROM, a hard disk, a RAM with a battery, and the like, and stores encrypted content data and the like.
  • FIG. 3 shows the outline of the data structure input from the media 500 and the communication means 600 as the content providing means to which the data processing apparatus of the present invention receives data, and the content providing means 500 , 600, a recording / reproducing device for inputting contents from the recording device 400, and a recording device 400, mainly showing a configuration relating to encryption processing.
  • the medium 500 is, for example, an optical disk medium, a magnetic disk medium, a magnetic tape medium, a semiconductor medium, or the like.
  • the communication means 600 is a means capable of data communication such as Internet communication, cable communication, satellite communication and the like.
  • a recording / reproducing device 300 is a medium 500 as a content providing means.
  • the content data has the following components.
  • Identification information as an identifier of content data.
  • Handling policy Content data configuration information, for example, header size, content size, format version, content type that indicates whether the content is a program or data, etc. that make up the content data, and only devices that have downloaded the content
  • a handling policy that includes usage restriction information, such as whether it can not be used or can be used with other devices.
  • Block information Block information composed of the number of content blocks, block size, encryption flag indicating the presence or absence of encryption, and the like.
  • Key data An encryption key for encrypting the above block information, or
  • Key data consisting of a content key for encrypting the lock.
  • Content block Content block consisting of program data, music, image data, etc., which are actually played back.
  • the content data is the content key (here, this is the content key (
  • K kon Const nt t Key
  • the recording device 400 is a recording device-specific key stored in the internal memory 405 of the recording device (here, this is a storage key (storage key (hereinafter referred to as K str)). ),
  • K str storage key
  • the content included in the content data, the block information included as the header information of the content data, and various types of key information, for example, the content key K con are encrypted and stored in the external memory 402. I do.
  • the Specific procedures such as mutual authentication processing, content data encryption and decryption processing are required. These processes will be described in detail later.
  • the recording device 400 has an encryption processing unit 401 and an external memory 402, and the encryption processing unit 401 has a control unit 400, a communication unit 404, and an internal memory. It has a memory 405, an encryption Z decryption unit 406, and an external memory control unit 407.
  • the recording device 400 controls the external signal processing, controls the external memory 402, interprets the command from the recording / reproducing device 300, and executes the processing. 1 and an external memory 402 holding contents and the like.
  • the recording device encryption processing unit 401 is a control unit 403 that controls the entire recording device encryption processing unit 401, a communication unit 404 that transmits and receives data to and from the recording / reproducing device 300, and a signal processing unit.
  • Internal memory 405 that holds information such as key data of the server, and is processed so that it cannot be easily read from the outside, encryption processing, decryption processing, generation and verification of authentication data, random numbers
  • an external memory control unit 407 for reading and writing data in the external memory 402.
  • the control unit 4003 is a control unit that executes control related to overall encryption processing such as authentication processing, encryption / decryption processing, and the like executed in the recording device 400, and includes, for example, a recording / reproducing apparatus 300 Setting of the authentication completion flag at the time of completion of the authentication processing executed with the recording device 400, various processing executed in the encryption Z decryption unit 406 of the encryption processing unit 401, for example, download Or, it performs overall control of the encryption process, such as an execution instruction of a tick value generation process for reproduced content data and an execution instruction of a generation process of various key data.
  • the internal memory 405 is constituted by a memory having a plurality of blocks, and the mutual authentication processing executed in the recording device 400, the check value collation processing, the encryption, and the decryption It is configured to store a plurality of sets of key data or identification data required for various processes such as conversion processing.
  • the internal memory 405 of the recording device encryption processing unit 401 holds important information such as an encryption key, like the internal memory 307 of the recording / reproducing device encryption processing unit 302 described above. Therefore, it is necessary to have a structure that is difficult to read illegally from the outside. Therefore, the encryption processing unit 401 of the recording device 400 is composed of a semiconductor chip having a structure that is difficult to access from the outside, has a multilayer structure, and has a memory inside such as an aluminum layer. It is sandwiched between dummy layers or formed at the lowest layer, and has a configuration that makes it difficult to read data illegally from the outside, such as a narrow operating voltage and / or frequency range.
  • the recording / reproducing device encryption processing unit 302 may be software configured so that secret information such as a key is not easily leaked to the outside.
  • No. Z Decoding unit 4006 downloads content data from recording / reproducing device 300 Load processing, playback processing of the computer stored in the external memory 402 of the recording device 400, or internal memory during the mutual authentication processing between the recording / reproducing device 300 and the recording device 400 Performs data verification, encryption, decryption, generation and verification of predetermined check values and digital signatures, generation of random numbers, etc. I do.
  • the communication unit 404 is connected to the recording device controller 303 of the recording / reproducing device 300, and controls the control unit 301 of the recording / reproducing device 300 or the control unit 4 of the recording device 403. In accordance with the control of 03, communication of transfer data between the recording / reproducing device 300 and the recording device 400 at the time of content data download processing, reproduction processing, or mutual authentication processing is performed.
  • the configuration shown in FIG. 4 is a diagram showing the format of the entire content data
  • the configuration shown in FIG. 5 is a diagram showing details of a “handling policy” constituting a part of the header portion of the content data
  • FIG. 4 is a diagram showing details of “block information” whose configuration forms part of a header part of content data.
  • a representative example of a data format applied in the system of the present invention will be described.
  • a format suitable for a game program a format suitable for real-time processing of music data, and the like.
  • a plurality of different data formats such as mats are available, and these formats are described in “(10) Multiple content data formats and download and playback processing corresponding to each format” later. Details will be described.
  • each block (content block data) in the content section includes both encrypted and unencrypted data. These forms differ depending on the content data, and a configuration in which all content block data included in the data may be encrypted.
  • the data format is divided into a header part and a content part.
  • the header part consists of identification information (Content ID), handling policy (Usage P o 1 icy), check value A, Integrity Check V A (hereinafter referred to as ICV a)), block information key (B 1 ock Information Table Key (hereinafter referred to as Kbit)), content key Kcon, and block information (B lock Information (Table)), a check value B (ICVb), and a total check value (ICVt).
  • the content section consists of multiple content blocks (ICVt). For example, it consists of encrypted content and unencrypted content.
  • the identification information indicates an individual identifier (Content ID) for identifying the content.
  • the handling policy is as follows: header size (Header Length), which indicates the size of the header, content size (Content'Length), which indicates the size of the content, and format.
  • the format version (For—mat Version) indicating the version information of the format
  • the format type (For mat Type) indicating the type of format, whether the content stored in the content section is a program or data.
  • Content type that indicates the type of content (Content Type)
  • launch priority information that indicates the launch priority when the content type is a program, and content that is downloaded according to this format.
  • the data items recorded in the above-mentioned handling policy are one example, and various handling policy information can be recorded according to the form of the corresponding content data.
  • various handling policy information can be recorded according to the form of the corresponding content data. For example, as will be described in detail in “(1 7) Rejection of unauthorized devices (revocation) configuration” later, the identifier of the unauthorized recording / reproducing device is recorded as data, and the content is used by the unauthorized device by collation at the start of use. It is also possible to configure to eliminate.
  • Check values A and ICVa are check values for verifying falsification of identification information and handling policies. It functions as a check value for partial data, not the entire content data, that is, a partial check value.
  • the data block information key Kbit is used to encrypt the block information
  • the content key Kcon is used to encrypt the content block. It should be noted that the block information key Kbit and the content key Kcon are encrypted on the medium 500 and the communication means 600 with a delivery key (Distributio n Key (hereinafter, referred to as Kdis)) described later.
  • Kdis Distribution key
  • Figure 6 shows the details of the block information.
  • the block information in Fig. 6 is based on Fig. 4. All data is encrypted with the block information key Kbit to be decrypted.
  • the block information includes a content block number (Bockock Number) indicating the number of content blocks and N pieces of content block information.
  • the content block information includes a block size (B lock Length), an encryption flag (Encryption Flag) indicating whether or not encryption is performed, and a verification target flag indicating whether a check value needs to be calculated ( ICVF 1 ag) and content check value (ICV i).
  • the content check value is a check value used to verify tampering of each content block.
  • a specific example of the method of generating the content check value is described in the section “(10) Multiple data formats, download processing to recording device corresponding to each format, and reproduction process from recording device” below. I do.
  • the block information key Kbit that encrypts the block information is further encrypted by the delivery key Kdis.
  • the check values B and ICVb are check values for verifying tampering of the block information key Kbit, the content key Kcon, and the block information. It functions as a check value of partial data, not the entire content data, ie, a partial check value.
  • the total check value I CV t is calculated based on I CV a, I CVb, the check value I CV i (if set) of each content block, these partial check values, or all of the data to be checked. This is a check value for verifying tampering.
  • the block size, encryption flag, and verification target flag can be set freely in FIG. 6, a configuration in which rules are determined to some extent may be used.
  • the ciphertext area and the plaintext area may be repeated at a fixed size, all content data may be encrypted, and the block information BIT may be compressed.
  • the content key KcQn may be included in the content block instead of the header portion. No. An example of the content data format will be described in more detail in the section “(10) Multiple Content Data Formats and Download and Playback Processes Corresponding to Each Format”.
  • Falsification detection data is attached to data for which falsification is to be detected, ⁇ ⁇ ⁇ Data for author authentication.
  • each check value A, B, total check value in the double frame part in the data structure described in Fig. 4, and the content check value stored in each block in the block information shown in Fig. 6, etc. is generated as the tampering detection data.
  • a general method of generating a digital signature using DES will be described with reference to FIG.
  • the message to be digitally signed is divided into 8-byte units (hereinafter, the divided messages are referred to as Ml, ⁇ 2, ⁇ , ⁇ ).
  • the initial value (InitialValue (hereinafter, referred to as IV)) and Ml are exclusively ORed (the result is I1).
  • I I is entered into the DES encryption section, and is encrypted using a key (hereinafter, referred to as K 1) (the output is referred to as E 1).
  • E1 and M2 are exclusive-ORed, and the output I2 is input to the DES encryption unit, and is decrypted using the key K1 (output E2). Thereafter, this process is repeated, and encryption processing is performed on all messages.
  • the last EN appears as an electronic signature.
  • This key is generally called a message authentication code (MAC (Message Authentic—cationdCode)), and is used to check for falsification of the message.
  • MAC message Authentic—cationdCode
  • CBC Cipher'BlocChChailning
  • the MAC values output in the generation example shown in FIG. 7 correspond to the respective chip values A and B, the total chip value in the double frame portion in the data structure shown in FIG.
  • the content check values I CV1 to I CV N stored in each block in the block information can be used.
  • the verifier uses the same If the MAC value is generated by the method and the same value is obtained, the verification is successful.
  • FIG. 8 shows a processing configuration diagram showing a MAC value generation method with further improved security compared to the MAC value generation method shown in Fig. ⁇ .
  • FIG. 8 shows an example in which a MAC value is generated using a triple DES (Trim DES) instead of the single DES in FIG.
  • Triple DES triple DES
  • FIG. 9 shows a detailed configuration example of each Triple DES (Tripple DES) component shown in FIG.
  • Triple DES Triple DES
  • FIGS. 9 (a) and 9 (b) there are two different modes in the configuration as a triple DES (TrippleDES).
  • FIG. 9 (a) shows an example in which two encryption keys are used, in which an encryption process using a key 1, a decryption process using a key 2, and an encryption process using a key 1 are performed in this order. Two types of keys are used in the order of Kl, K2, and Kl.
  • Fig. 9 (b) shows an example using three encryption keys, in which the encryption process with key 1, the encryption process with key 2, and the encryption process with key 3 are performed in this order. The encryption process is performed every time.
  • FIG. 10 shows an example of an MA C value generation configuration obtained by improving the triple DES configuration described in FIGS. 8 and 9.
  • Fig. 10 all the encryption processing for each message from the beginning to the middle of the message string to be signed is performed by a single DES, and only the encryption processing for the last message is shown in Fig. 9 (a). It has a triple DE S (Trile DE S) configuration.
  • the MAC value generation processing time of the message is almost as short as the time required for the MAC value generation processing by a single DES.
  • the security is reduced and the MAC value is higher than the MAC value by single DES.
  • the triple DES configuration for the final message can be the configuration shown in Fig. 9 (b).
  • FIG. 11 is a flow of processing for generating digital signature data using EC—DSA ((Elitic Curve Digital Signature A 1—gorit hm), IEEE P 13 63 / D 3). is there.
  • ECC elliptic curve cryptography
  • ECC elliptic CurvveCrryptograaphy
  • the hash function is a function that receives a message, compresses the message into data of a predetermined bit length, and outputs the data as a hash value.
  • a hash function it is difficult to predict the input from the hash value (output).
  • many bits of the hash value change, and the same hash value It has the feature that it is difficult to find different input data with.
  • MD4, MD5, SHA-1 or the like may be used, or DES-CBC similar to that described in FIG. 7 or the like may be used.
  • the MAC value (the check value: equivalent to I CV) that becomes the force value becomes the hash value.
  • step S3 a random number u (0 ⁇ u ⁇ r) is generated, and in step S4, a coordinate V (Xv, Yv) obtained by multiplying the base point by u is calculated.
  • u ⁇ u ⁇ r
  • step S8 Calculate dr, determine whether d is 0 in step S8, and if d is not 0, output c and d as digital signature data in step S9. Assuming that r is 160 bits long, the digital signature data is 320 bits long.
  • step S6 If c is 0 in step S6, the process returns to step S3 and a new random Regenerate numbers. Similarly, if d is 0 in step S8, the process returns to step S3 to generate a random number again.
  • step S 18 Xp modr is calculated and compared with the digital signature data c. Finally, if the values match, the flow advances to step S19 to determine that the electronic signature is correct.
  • the data has not been tampered with, indicating that the person holding the private key corresponding to the public key generated the electronic signature.
  • step S12 If the electronic signature data c or d does not satisfy 0 ⁇ c ⁇ r and 0 ⁇ d ⁇ r in step S12, the process proceeds to step S20. If the point P is a point at infinity in step S17, the process proceeds to step S20. Furthermore, In step S18, also when the value of Xp mod does not match the digital signature data c, the process proceeds to step S20.
  • step S20 If it is determined in step S20 that the digital signature is incorrect, it is known that the data has been falsified or that the person holding the private key corresponding to the public key has not generated the digital signature.
  • DES is used as the common key code method, but any common key encryption method may be used as described above.
  • 8 generates a 64-bit random number Rb, and transmits Rb and its own ID, ID (b), to A.
  • A Upon receiving this, A generates a new 64-bit random number R a, encrypts the data using the key K ab in the DE CCB mode in the order of Ra, Rb, and ID (b). I will send it back.
  • Ra corresponds to M1
  • Rb corresponds to M2
  • ID (b) corresponds to M3
  • B receiving this decrypts the received data with the key K ab.
  • the ciphertext E1 is decrypted with the key Kab to obtain a random number Ra.
  • the cipher text E 2 is decrypted with the key K ab, and the result is exclusively ORed with E 1 to obtain Rb.
  • the cipher text E 3 is decrypted with the key K ab, and the result is XORed with E 2 to obtain I D (b). From the obtained Ra, Rb, and ID (b), verify that the Rb and ID (b) force B match those transmitted. If this passes, B authenticates A as valid.
  • B generates a session key to be used after authentication (Sessio n Key (hereinafter referred to as Kses)) (random number is used as the generation method). Then, Rb, Ra, ⁇ : 3 6 3 1 ashamed, encrypts using the key Kab in the DE CCB mode, and sends it back to A.
  • Kses Sessio n Key
  • A decrypts the received data with the key Kab. Decrypt received data Since the decoding method is the same as the decoding process of B, the details are omitted here. Of the Rb, R a, and K ses obtained in this way, verify that 113 and 1 ⁇ & match the one sent by A. If it passes, A authenticates B as valid. After mutually authenticating each other, the session key K ses is used as a common key for secret communication after authentication.
  • a public key certificate is a certificate issued by a certificate authority (CA) in public key cryptography, and the user submits his / her ID, public chain, etc. to the certificate authority to authenticate.
  • the certificate is created by the certificate authority by adding information such as the certificate authority's ID and expiration date, and adding a signature from the certificate authority.
  • the public key certificate shown in Figure 14 contains the certificate version number, the serial number of the certificate assigned by the certificate authority to the certificate subscriber, the algorithm and parameters used for digital signature, the name of the certificate authority, and the validity of the certificate. Includes the expiration date, the relying party's name (user ID), the relying party's public key, and a digital signature.
  • the digital signature is the version number of the certificate, the serial number of the certificate assigned by the certificate authority to the subscriber, the algorithm and parameters used for the electronic signature, the name of the certificate authority, the expiration date of the certificate, the certificate subscriber
  • a hash value is generated by applying a hash function to the name of the certificate and the entire public key of the certificate subscriber, and the data is generated using the private key of the certificate authority for the hash value. For example, the processing flow described in FIG. 11 is applied to the generation of the digital signature.
  • the certification authority issues the public key certificate shown in Figure 14, updates the expired public key certificate, and creates, manages, and manages a list of unauthorized persons to exclude users who have committed illegal acts. Distribute (this is called Revocation). It also generates public and private keys as needed.
  • Revocation this is called Revocation
  • the user verifies the digital signature of the public key certificate using the public key of the certificate authority held by the user, and after the verification of the digital signature succeeds. Extract the public key from the public key certificate and use the public key. Therefore, all users who use the public key certificate need to hold the public key of the common certificate authority. Since the method of verifying the electronic signature has been described with reference to FIG. 12, the details thereof will be omitted.
  • ECC is used as the public key cryptosystem, but any public key cryptosystem may be used as described above. Also, the key size need not be 160 bits.
  • Ra and Rb are 64 bits each, and the X and Y coordinates of Av are each 160 bits. Therefore, a digital signature is generated for a total of 448 bits.
  • the method for generating a digital signature has been described with reference to FIG. 11, and the details thereof will be omitted. Also, the public key certificate has been described with reference to FIG.
  • B Receiving the public key certificate, Ra, Rb, Av, and electronic signature A.
  • Sig of B B verifies that Rb sent by A matches the one generated by B.
  • the electronic signature in the public key certificate of A is verified with the public key of the certificate authority, and the public key of A is extracted.
  • the verification of the public key certificate was explained using FIG. 14, and the details are omitted.
  • Sig is verified using the extracted public key of A.
  • the method for verifying the electronic signature has been described with reference to FIG. 12, and the details thereof will be omitted.
  • B After successfully verifying the electronic signature, B authenticates A as valid.
  • B After successfully verifying the electronic signature, B authenticates A as valid.
  • B generates a random number B k smaller than the characteristic p.
  • Aig receives Sig and verifies that Ra sent by B matches the one generated by A. As a result, if they match, the digital signature in B's public key certificate is verified with the public key of the certificate authority, and B's public key is extracted. Then, the electronic signature B. Sig is verified using the extracted public key of B. After successfully verifying the electronic signature, A authenticates B as valid.
  • B is calculated as B k XAV (B k is a random number, but Av is a point on the elliptic curve, so scalar multiplication of the point on the elliptic curve is required).
  • A calculates Ak XBV, and uses the lower 64 bits of the X coordinate of these points as a session key and uses it for subsequent communication (when the common key encryption is a 64-bit key length common key encryption).
  • the session key may be generated from the Y coordinate, and may not be the lower 64 bits.
  • the transmitted data may not only be encrypted with the session key but also may be digitally signed.
  • step S24 the X coordinate of V is multiplied by Mx Then, the remainder is obtained by p and set as XO.
  • step S25 the Y coordinate of V is multiplied by My to obtain the remainder by p and set to Y0. If the length of the message is less than the number of bits of p, My uses a random number, and the decoding unit discards My.
  • step S26 uXG is calculated, and in step S27, ciphertext uXG, (X'0, Y0) is obtained.
  • step S35 the message is extracted by setting X1 to Mx and Y1 to My. At this time, if My is not a message, Y 1 is discarded.
  • the key used for encryption and the key used for decryption can be different keys.
  • the RSA cryptosystem is known, but a detailed description thereof is omitted (the details are described in PKC S # 1 Ver s io n 2).
  • a method of generating random numbers include a method of generating a true random number by amplifying thermal noise and generating the AZD output, and a method of generating a pseudo random number by combining a plurality of linear circuits such as M-sequences.
  • a method of generating the data using a common key encryption such as DES is also known.
  • a pseudorandom number generation method using DES will be described (based on ANIX 9.17).
  • FIG. 18 is a diagram for explaining data holding contents of the internal memory 307 included in the recording / reproducing device encryption processing unit 302 in the recording / reproducing device 300 shown in FIG.
  • the following keys and data are stored in the internal memory 307.
  • MK ake Authentication key required for mutual authentication performed between the recording / reproducing device 300 and the recording device 400 (see Fig. 3) (Au thentication and Key Exchange Key (hereinafter referred to as Ka ke)) Master key for the recording device authentication key for generating the key.
  • IV ake Initial value for recording device authentication key.
  • MK dis The master key for the distribution key for generating the distribution chain Kd is.
  • K i c V t Total check value generation key which is a key for generating total check value I CV t.
  • K s y s A system signing key used to attach a common signature or ICV to the distribution system.
  • KdeV A recording / reproducer signature key that is unique to each recording / reproducing device and is used by the recording / reproducing device to apply a signature or ICV.
  • I Vmem Initial value, initial value used for encryption processing in mutual authentication processing. Common with recording devices.
  • FIG. 19 is a diagram showing a data retention state on the recording device.
  • the internal memory 405 is divided into a plurality of blocks (N blocks in this example), and the following keys and data are stored in each block.
  • I Dmem recording device identification information, identification information unique to the recording device.
  • Kake an authentication key, an authentication key used for mutual authentication with the recording / reproducing device 300.
  • I Vmem Initial value, initial value used for encryption processing during mutual authentication processing.
  • K s tr A storage key, a block information key, and a symbol key for other content data.
  • K r random number generation chain
  • s seed
  • the external memory 402 holds a plurality of (M in this example) content data, and each holds the data described in FIG. 4, for example, as shown in FIG. 26 or FIG. 27. . The differences between the configurations in FIGS. 26 and 27 will be described later.
  • FIG. 20 is a flowchart showing an authentication procedure between the recording / reproducing device 300 and the recording device 400.
  • step S41 the user enters the recording device 400 into the recording / reproducing device 300.
  • a recording device that can communicate without contact is used, there is no need to insert it.
  • the recording device detecting means (not shown) in the recording / reproducing device 300 shown in FIG. Notify the installation of.
  • the control unit 301 of the recording / reproducing device 300 transmits an initialization command to the recording device 400 via the recording device controller 303.
  • the recording device 400 receives the command via the communication unit 404 in the control unit 403 of the recording device No. processing unit 401, and sets the authentication completion flag. If you clear. That is, it is set to the unauthenticated state. .
  • step S43 the control unit 301 of the recording / reproducing device 300 transmits an initialization command to the recording / reproducing device encryption processing unit 302.
  • the recording device ⁇ entrance number is also transmitted.
  • the recording / reproducing device encryption processing unit 302 of the recording / reproducing device 300 that has received the initialization command corresponds to the recording device / entrance number in the control unit 303 of the recording / reproducing device encryption processing unit 302. If the authentication completion flag is set and cleared, clear it. Ie unauthenticated state Set to o.
  • step S44 the control unit 301 of the recording / reproducing device 300 specifies a key block number used by the recording device encryption processing unit 401 of the recording device 400. The details of the key block number will be described later.
  • step S45 the control unit 301 of the recording / reproducing device 300 reads out the recording device identification information IDmem stored in the designated lock block of the internal memory 40.5 of the recording device 400.
  • step S46 the control unit 301 of the recording / reproducing device 300 transmits the recording device identification information ID mem to the recording / reproducing device encryption processing unit 302, and performs authentication based on the recording device identification information ID mem. Generate a key Kake.
  • the method of generating the authentication key K a ke is, for example, as follows.
  • MK ake is executed between the recording / reproducing device 300 and the recording device 400 (see FIG. 3).
  • This is a master key for a recording device authentication key for generating an authentication key Kake required for mutual authentication processing.
  • This is a key stored in the internal memory 307 of the recording / reproducing device 300 as described above. It is.
  • ID mem is recording device identification information unique to the recording device 400.
  • IVake is the initial value for the recording device authentication key.
  • DES () is a function that uses the first argument as an encryption key and encrypts the value of the second argument with DES, and the operation ⁇ ⁇ indicates exclusive OR of 64 bits. .
  • the message M shown in FIGS. 7 and 8 is the recording device identification information: ID mem
  • the key 1 is the master key for the device authentication key: MKake
  • Initial value IV The output obtained as IV ake is the authentication key K ake.
  • step S47 mutual authentication and session key K ses generation processing are performed.
  • Mutual authentication is performed by the encryption / decryption unit 308 of the recording / reproducing unit encryption unit 302 and the recording data. This is performed between the encryption / decryption units 406 of the vice encryption processing unit 401, and the mediation is performed by the control unit 301 of the recording / reproducing unit 300.
  • the mutual authentication processing can be executed, for example, according to the processing described in FIG. 13 described above.
  • a and B correspond to the recording / reproducing device 300 and the recording device 400, respectively.
  • the recording / reproducing device encryption processing section 302 of the recording / reproducing device 300 generates a random number R b, and records the random number R b and the recording S live device identification information ID de V, which is its own ID, on the recording device 400. Is transmitted to the recording device encryption processing section 401.
  • the recording / reproducing device identification information ID deV is an identifier unique to the reproducing device stored in the storage unit configured in the recording / reproducing device 300.
  • the configuration may be such that the recording / reproducing device identification information IDdev is recorded in the internal memory of the recording / reproducing device encryption processing section 302.
  • the recording device encryption processing unit 401 of the recording device 400 receives the random number Rb and the recording / reproducing device identification information ID de V
  • the recording device encryption processing unit 401 of the recording device 400 generates a new 64 bit random number Ra, and generates Ra, Rb
  • the recording / reproducing device identification information ID de V in this order, encrypts the data using the authentication key Kake in the CBC mode of DES, and returns it to the recording / reproducing device encryption processing unit 302 of the recording / reproducing device 300.
  • 1 & corresponds to ⁇ 1 1
  • 1 13 corresponds to]
  • ID de V corresponds to M3
  • the output E1, E2, E3 at the time becomes a ciphertext.
  • the recording / reproducing device encryption processing unit 302 of the recording / reproducing device 300 that has received the ciphertexts El, E2, and E3 decrypts the received data with the authentication key Kake.
  • the ciphertext E1 is decrypted with the authentication key Kake, and the result is exclusively ORed with the IV mem to obtain a random number Ra.
  • the ciphertext E2 is decrypted with the authentication key Kake, and the result is XORed with E1 to obtain Rb.
  • the cipher text E 3 is decrypted with the authentication key K ake, and the result is XORed with E 2 to obtain the recording / reproducing device identification information ID de V.
  • the recording / reproducing device encryption processing unit 302 of the recording / reproducing device 300 authenticates the recording device 400 as valid.
  • the recording / reproducing device encryption processing unit 302 of the recording / reproducing device 300 generates a session key (Session Key (hereinafter referred to as K ses)) to be used after authentication (the generating method is a random number). Is used).
  • K ses Session Key
  • the recording device encryption processing unit 401 of the recording device 400 that has received this decrypts the received data with the key K a ke.
  • the method of decrypting the received data is the same as the decryption process in the recording / reproducing device encryption processing section 302 of the recording / reproducing device 300, and thus the details are omitted here.
  • Rb, Ra, and Kse s obtained in this way, it is verified that Rb and Ra match those transmitted by the recording device 400. If the verification is successful, the recording device encryption processing unit 401 of the recording device 400 authenticates the recording / reproducing device 300 as valid.
  • the session key K se s is used as a common key for secret communication after authentication.
  • step S48 the process proceeds from step S48 to step S49, where the session key K ses is held in the recording / reproducing device encryption processing section 302 of the recording / reproducing device 300, and the mutual key is retained.
  • An authentication completion flag indicating that the authentication has been completed is set. If the mutual authentication has failed, the process proceeds to step S50, where the session key K ses generated in the authentication process is discarded, and the authentication completion flag is cleared. It should be noted that if the recording device has already been cleared, it is not necessary to perform the clearing process.
  • the recording device 300 If the recording device 400 is removed from the entrance of the recording device, the recording device 300 The recording device detection means notifies the control unit 301 of the recording / reproducing device 300 that the recording device 400 has been removed, and receives the notification, and the control unit 301 of the recording / reproducing device 300 receives the notification. Instructs the recording / reproducing device encryption processing section 302 of the recording / reproducing device 300 to clear the authentication completion flag corresponding to the recording device / entrance number. The recording / reproducing device encryption unit 302 of the recording device Clear the authentication completion flag corresponding to the entrance number.
  • the present invention is not limited to the above-described example of the authentication process. May be performed.
  • a in FIG. 13 is a recording / reproducing device 300
  • B is a recording device 400
  • B the recording device 400 is A: a recording / reproducing device 30.
  • the mutual authentication process may be performed by setting the ID sent first to 0 as the recording device identification information in the key lock in the recording device.
  • Various processes can be applied to the authentication process performed in the present invention, and the present invention is not limited to the above-described authentication process.
  • One feature of the mutual authentication process in the data processing device of the present invention is that a plurality of key blocks (ex. N key blocks) are configured on the recording device 400 side, and the recording / reproducing device 300 The point is that one key block is designated (step S44 in the processing flow of FIG. 20) and the authentication processing is executed.
  • a plurality of key blocks are formed in the internal memory 405 configured in the encryption processing unit 401 of the recording device 400, and different key data and Various data such as ID information is stored.
  • the mutual authentication process performed between the recording / reproducing device 300 and the recording device 400 described in FIG. 20 is performed for one key block of the plurality of key blocks of the recording device 400 in FIG. Executed.
  • a common key is used for mutual authentication: a common authentication key is generally used. Therefore, for example, if the authentication key is changed for each product destination (by country) or for each product, the key data required for the authentication process on the recording / reproducing device side and the recording device side is changed on both devices It is necessary to do. Therefore, for example, the key data required for the authentication processing stored in the newly released recording / reproducing device does not correspond to the key data required for the authentication processing stored in the previously sold recording device. Recording / playback device will not be able to access older versions of the recording device c
  • a plurality of key blocks as different key sets are stored in the recording device 400 in advance.
  • a key block to be applied to the authentication process that is, a designated key block
  • This setting information is stored in the memory unit of the recording / reproducing device, for example, the internal memory 307 in FIG. 3 or another storage element of the recording / reproducing device 300, and the control unit in FIG. Accessed by 301, the key block designation is performed according to the setting information.
  • the master key MKake for the recording device authentication key in the internal memory 307 of the recording / reproducing device 300 is a master key for the authentication key set according to the setting of each designated key block. Only the designated key block can be supported, and mutual authentication with key blocks other than the designated key block is not established.
  • N memory blocks 1 to N are set in the internal memory 405 of the recording device 400, and the recording device identification information, the authentication chain, The initial value, storage chain, random number generation key, and seed are stored, and at least key data for authentication is stored as different data for each block.
  • the key data configuration of the key block of the recording device 400 is different for each block. Therefore, for example, the key block that a certain recording / reproducing apparatus A can perform authentication processing using the master key MKake for the recording device authentication key stored in the internal memory is the key block No. 1, and another The key block that can be authenticated by the recording / reproducing device B having the following specifications can be set as another key block, for example, a key block No. 2.
  • encryption processing is performed using the storage key K str stored in each key block, and the content is stored.
  • the content processor The content key for encrypting the key is encrypted with the storage key.
  • the storage key is configured as a different key for each block. Therefore, between two recording / reproducing units set to specify different key blocks, it is prevented that the content stored in the memory of one recording device is commonly used by both. You. In other words, a recording / reproducing device with different settings can use only the content stored in the recording device that matches each setting.
  • data that can be shared for each key block can be shared.
  • only the key data for authentication and the stored key data may be configured to be different.
  • a key block number to be specified for each model (stationary type, portable type, etc.) of the recording / reproducing device 300 is set differently, or There are examples in which the designated key block is set differently for each application.
  • the designated key block is No. 1 for recording / reproducing units sold in Japan, and the key block differs for each region so that the designated key block is No. 2 for recording / reproducing units sold in the United States.
  • a configuration for performing the setting is also possible.
  • the content used in each different sales area and stored on the recording device with a different storage key even if the recording device such as a memory card is from the United States to Japan or from S to United States Even if it is transferred to a storage device, it cannot be used by a recording / reproducing device with a different key setting, so that illegal or irregular distribution of the content stored in the memory can be prevented.
  • the content key K con encrypted with the different storage key K s tr can be mutually used between the two countries.
  • At least one key block from 1 to N in the internal memory 405 of the recording device 400 shown in FIG. Can also be configured as a commonly available key block Les ,.
  • the master key MKake for the recording device authentication key that can be authenticated with the key block No.N in all devices, the type of the recording / reproducing device 300, each application, each destination country, etc. It can be handled as distributable content regardless of.
  • the encrypted content stored in the memory card with the storage key stored in the key block No. N becomes a content that can be used in all devices.
  • music data and the like are encrypted with a storage key of a commonly available key block and stored in a memory card, and this memory card is also stored in a common storage device authentication key master key MKake. It is possible to perform decoding / reproduction processing of data from a memory card by setting it in an audio reproduction device or the like.
  • the recorder / reproducer 2101 is a recorder / reproducer for products destined for Japan, and has a master key that can be authenticated with No. 1, 4 of the key block of the recording device.
  • the recording / reproducing device 2102 is a recording / reproducing device for a product for the US, and has a master key for establishing an authentication process with No. 2, 4 of the key block of the recording device.
  • the recorder / reproducer 2103 is a recorder / reproducer for EU products, and has a master key that can be authenticated with No. 3 and 4 of the key block of the recording device.
  • the recording / reproducing unit 201 establishes authentication with the key block 1 or key block 4 of the recording device A, 210 4, and performs encryption via the storage key stored in each key block.
  • the processed content is stored in the external memory.
  • the recording / reproducing device 2102 establishes authentication with the key block 2 or the key block 4 of the recording device B, 210, and performs encryption processing via the storage key stored in each key block.
  • the applied content is stored in the external memory.
  • the recording / reproducing device 2103 establishes authentication with the lock block 3 or 4 of the recording device C, 210, and performs encryption processing via the storage key stored in each lock block.
  • the content subjected to is stored in the external memory.
  • recording device A, 210 is connected to recording / reproducing device 2 When attached to 102 or recording / reproducing device 2103, the content that has been encrypted with the storage key of key block 1 is recorded to recording / reproducing device 210, recording / reproducing device 210 It cannot be used because authentication with Block 1 is not established. On the other hand, the content that has been subjected to symbol processing with the key stored in the key block 4 is used because authentication is established between the recording / reproducing device 210, the recording / reproducing device 210, and the key block 4. It becomes possible.
  • a key block including a plurality of different key sets is configured in a recording device, while a master key capable of authenticating a specific key block is provided in a recording / reproducing device. Since the configuration is such that the content is stored, it is possible to set content usage restrictions according to various usage modes.
  • a plurality of key blocks that can be designated in one recording / reproducing device for example, 1 to k, and a plurality of key blocks that can be designated in other recording / reproducing devices, such as p to q, can be provided.
  • a configuration in which a plurality of lock blocks that can be used in common are provided;
  • the recording / reproducing device 300 the recording / reproducing device 300
  • FIG. 22 is a flowchart illustrating a procedure for downloading content from the recording / reproducing device 300 to the recording device 400.
  • FIG. 22 it is assumed that the above-described mutual authentication processing has already been completed between the recording / reproducing device 300 and the recording device 400.
  • step S51 the control unit 301 of the recording / reproducing unit 300 reads data according to a predetermined format from the medium 500 storing the content using the reading unit 304, The data is received from the communication means 600 in accordance with a predetermined format by using the communication device 300. Then, the control section 301 of the recording / reproducing apparatus 300 sends the header (Header) part (see FIG. 4) of the data to the recording / reproducing apparatus signal processing section 302 of the recording / reproducing apparatus 300. Send.
  • Header header part
  • step S52 the header (Header) is extracted in step S51.
  • the control unit 306 of the received recording / reproducing device encryption processing unit 302 causes the encryption / decryption unit 308 of the recording / reproducing device encryption processing unit 302 to calculate the check value A.
  • the check value A is, as shown in FIG. 23, the check value A generation key KicVa stored in the internal memory 307 of the recording / reproducing device encryption processing unit 302 as a key and identification information
  • the handling policy (Usage P o 1 icy) as a message, and is calculated according to the ICV calculation method described in Fig. 7.
  • the check value A is compared with the check value: I CV a stored in the header (He ader). If they match, the process proceeds to step S53.
  • check values A and I CVa are check values for verifying falsification of identification information and handling policy.
  • identification information Content ID
  • handling policy User Policy
  • step S53 the control unit 306 of the recording / reproducing device encryption processing unit 302 causes the encryption / decryption unit 308 of the recording / reproducing device encryption processing unit 302 to generate the delivery key Kd is.
  • a method of generating the delivery key Kd is, for example,
  • K d i s D E S (M K d i s, C o n t e n t I D ⁇ I V d i s)
  • MKd is is a master key for the distribution key for generating the distribution key Kd is, which is stored in the internal memory of the recording / reproducing device 300 as described above.
  • Content ID is identification information of the header part of the content data
  • Ivdis is an initial value for a delivery key.
  • DES () is a function for encrypting the value of the second argument using the first argument as an encryption key
  • the operation ⁇ ⁇ indicates a 64-bit exclusive OR.
  • step S54 the control unit 306 of the recording / reproducing device encryption processing unit 302 uses the encryption / decryption unit 308 of the recording / reproducing device encryption processing unit 302, and uses the distribution key Kd is generated in step S53.
  • the block information key Kbit and the content key Kcon stored in the header of the data 500 received via the reading unit 304 or the data received from the communication unit 600 via the communication unit 305 (see FIG. 4). ) Is decrypted.
  • the block information key Kbit and the content key Kcon are previously encrypted by a distribution key Kdis on a medium such as a DVD or a CD or a communication path such as the Internet.
  • step S55 the control section 303 of the recording / reproducing apparatus signal processing section 302 uses the signal / Z decryption section 308 of the recording / reproducing apparatus encryption processing section 302 to perform decryption in step S54.
  • the block information (BIT) is decrypted with the obtained block information key Kbit.
  • the block information (BIT) is previously encrypted with a block information key Kbit on a medium such as a DVD or a CD or a communication path such as the Internet.
  • step S56 the control section 303 of the recording / reproducing apparatus encryption processing section 302 divides the block information key Kbit, the content key K con and the block information (BIT) into 8-byte units, and Exclusive OR (any operation, such as addition or subtraction, may be used).
  • the control section 303 of the recording / reproducing apparatus encryption processing section 302 causes the encryption / decryption section 308 of the recording / reproducing apparatus encryption processing section 302 to calculate the check value B (IC Vb).
  • the check value B is obtained by using the check value B generation key K ic V b stored in the internal memory 307 of the recording / reproducing device signal processing unit 302 as a key, Generate the value by encrypting it with DES.
  • check value B is compared with I CVb in the header, and if they match, Proceed to step S57.
  • the check values B and I CVb are check values for verifying tampering of the block information key Kbit, the content key Kcon, and the block information (BIT).
  • the check value B generation key KicVb stored in the internal memory 307 of the recorder / reproducer encryption processor 302 is used as a key, and the block information key Kbit, the content key Kcon and the block information (BIT) are 8 bytes. If the check value B, which is generated by encrypting the value obtained by dividing the unit into exclusive OR and using DES with DES, matches the check value: ICV b stored in the header, It is determined that the block information key Kbit; the content key Kcon and the block information have not been tampered with.
  • step S57 the control section 306 of the recording / reproducing apparatus encryption processing section 302 causes the encryption / decryption section 308 of the recording / reproducing apparatus encryption processing section 302 to calculate an intermediate check value.
  • the intermediate check value is stored in the header (Header) verified using the total check value generation key KicVt stored in the internal memory 307 of the recording / reproducing device encryption processing unit 302 as a key.
  • the generated intermediate check value is stored in the recording / reproducing device encryption processing unit 302 of the recording / reproducing device 300 as necessary.
  • This intermediate check value is generated as a message with check value A, check value B, and all content check values, and the intermediate check verifies the data to be verified for each of these check values.
  • This may be performed by a value matching process.
  • the non-tampering verification process as shared data of the entire system and the verification process for identifying as occupied data occupied only by each recording / reproducing device 300 after the download process can be performed separately.
  • a plurality of different check values that is, the total check value I
  • the CV t and the recording / reproducing unit specific check value I CVd ev can be generated separately based on the intermediate check value.
  • the control unit 306 of the recording / reproducing device encryption processing unit 302 described later will cause the encryption / decryption unit 308 of the recording / reproducing device encryption processing unit 302 to calculate the total check value ICVt.
  • the total check value I CV t is, as shown in FIG. 25, the system signature key K sys stored in the internal memory 307 of the recording / reproducing device signal processing unit 302 as a key, and the intermediate check value is encrypted with DES. And generate it.
  • the generated total check value I CV t is compared with the I CV t in the header stored in step S51, and if they match, the process proceeds to step S58.
  • the system signature key K sys is a signature key that is common to a plurality of recording / reproducing devices, that is, the entire system set that executes recording / reproducing processing of certain data.
  • the total check value I CV t is a check value for verifying tampering of all check values of I CV a, I C Vb, and each content block. Therefore, if the total check value generated by the above processing matches the check value: ICV t stored in the header (He ader), the IC Va, ICVb, and all check values of each content block are falsified. It is determined that there is not.
  • step S58 the control unit 301 of the recording / reproducing device 300 extracts the content block information from the block information (BIT), and checks whether the content block is to be verified. If the content block is to be verified, the content check value is stored in the block information in the header.
  • BIT block information
  • the corresponding content block is read from the medium 500 by using the reading unit 304 of the recording / reproducing device 300, or by using the communication unit 305 of the recording / reproducing device 300. It is received from the communication means 600 and transmitted to the recording / reproducing device encryption processing section 302 of the recording / reproducing device 300. Received this The control section 303 of the recording / reproducing apparatus encryption processing section 302 causes the encryption / decryption section 308 of the recording / reproducing apparatus encryption processing section 302 to calculate a content intermediate value.
  • the content intermediate value is obtained by decrypting the input content block in the DES CBC mode with the content key K con decrypted in step S54, dividing the result into 8-byte units, and performing exclusive OR (addition, Any operation, such as subtraction, may be used).
  • the control section 303 of the recording / reproducing apparatus encryption processing section 302 causes the encryption / decryption section 308 of the recording / reproducing apparatus encryption processing section 302 to calculate the content check value.
  • the content check value is generated by encrypting the content intermediate value with DES using the content check value generation key K i cvc stored in the internal memory 307 of the recording / reproducing device encryption processing unit 302 as a key.
  • the control unit 303 of the recording / reproducing device encryption processing unit 302 sets the content check value and the ICV in the content block received from the control unit 301 of the recording / reproducing device 300 in step S51. Are compared, and the result is passed to the control section 301 of the recording / reproducing apparatus 300.
  • the control unit 301 of the recording / reproducing unit 300 that has received the data extracts the next content block to be verified and extracts the next content block to be verified. The same verification process is repeated until all content locks are verified.
  • the initial value IVc for generating the content check value is stored in the internal memory 307 of the recording / reproducing device encryption processing unit 302, You may use it. Also, all the checked content values are stored in the recording / reproducing device encryption processing section 302 of the recording / reproducing device 300.
  • the recording / reproducing device cryptographic processing section 302 of the recording / reproducing device 300 monitors the verification order of the content blocks to be verified, and verifies the order of the content blocks being incorrect or the same content block more than once. If it is, authentication shall be deemed to have failed. If all the verifications are successful, the process proceeds to step S59.
  • step S59 the recording / reproducing device encryption processing section 302 of the recording / reproducing device 300 sends the content of the block information key K bit decrypted in step S54 to the content.
  • the key K con is encrypted by the encryption / decryption unit 308 of the recording / reproducing device signal processing unit 302 using the session key K ses shared at the time of mutual authentication.
  • the control unit 301 of the recording / reproducing device 300 sends the block information key K bit and the content key K con coded with the session key K ses to the recording / reproducing device encryption processing unit 300 of the recording / reproducing device 300. 2, and transmits these data to the recording device 400 via the recording device controller 303 of the recording / reproducing device 300.
  • step S600 the recording device 400, which has received the block information key K bit and the content key K con transmitted from the recording / reproducing device 300, processes the received data into a recording device.
  • the encryption / decryption unit 406 of the unit 401 decrypts it with the session key K ses shared at the time of mutual authentication, and stores it in the internal memory 405 of the recording device encryption processing unit 401. Re-encrypt with the stored storage device-specific storage key K str.
  • the control unit 301 of the recording / reproducing device 300 was re-encrypted with the storage key K str from the recording device 400 via the recording device controller 303 of the recording / reproducing device 300. Read the block information key K b 1 t and the content key K con. Then, these keys are replaced with a block information key Kbit and a content key Kcon encrypted with the distribution key Kdis.
  • step S61 the control unit 301 of the recording / reproducing device 300 extracts the usage restriction information from the usage policy of the data header, and the downloaded content is recorded / reproduced. It can be used only by the device 300 (in this case, the use restriction information is set to 1). F) It is determined whether it can be used by another similar recording / reproducing device 300 (in this case, the use restriction information is set to 0). If the result of the determination is that the use restriction information is 1, the flow proceeds to step S62.
  • step S62 the control unit 301 of the recording / reproducing device 300 causes the recording / reproducing device encryption processing unit 302 of the recording / reproducing device 300 to calculate a check value unique to the recording / reproducing device.
  • the check value specific to the recording / reproducing device is obtained by setting the recording / reproducing device signature key K de V stored in the internal memory 307 of the recording / reproducing device encryption processing unit 302 as ⁇ as shown in FIG. 5 Generate the intermediate check value stored in 8 by encrypting it with DES .
  • the calculated recording / reproducing device-specific check value ICV dev is overwritten instead of the total check value ICV t.
  • the system signature key K S y S is a system signature key used to attach a common signature or ICV to the distribution system
  • the recording / reproducing device signature key K dev is a recording / reproducing device. This is different for each device, and is the signature key used by the recorder / player to sign the ICV or the ICV. That is, data signed by the system signature key K sys is successfully used by a system (recording / reproducing apparatus) having the same system signature key, that is, the total check value ICV t is equal to the data, and is commonly used.
  • the recording / reproducing device signature key is a key unique to the recording / reproducing device.
  • the data that was signed by the device i.e., the data stored in the recording device after the signature
  • the recording / reproducing device-specific check value ICV dev Will not match, and an error will occur and playback will not be possible.
  • the data processing device of the present invention by setting the usage restriction information, it is possible to freely set the content that can be commonly used in the system and the content that can be used uniquely for the recording / reproducing device.
  • step S63 the control unit 301 of the recording / reproducing device 300 stores the content in the external memory 402 of the recording device 400.
  • FIG. 26 is a diagram showing the content status in the recording device when the use restriction information is 0.
  • FIG. 27 is a diagram showing the content status in the recording device when the use restriction information is 1.
  • FIG. 26 differs from FIG. 4 in that the content block information key K bit and the content key K c 0 1 1 are encrypted with the delivery key! ⁇ (1 is The only difference between Fig. 27 and Fig. 26 is that the check value calculated from the intermediate check value is encrypted with the system signature key K sys in Fig. 26, In FIG. 27, it is encrypted with the recording / reproducing device signature key K dev unique to the recording / reproducing device.
  • the verification of the check value A fails in step S52
  • if the verification of the check value B fails in step S56
  • step S62 is skipped and the process proceeds to step S63.
  • FIG. 28 is a flowchart illustrating a procedure in which the recording / reproducing device 300 reads out a content from the recording device 400 and uses the content. Also in FIG. 28, it is assumed that mutual authentication has already been completed between the recording / reproducing device 300 and the recording device 400.
  • step S71 the control unit 301 of the recording / reproducing device 300 reads the content from the external memory 402 of the recording device 400 using the recording device controller 303. Then, the control section 301 of the recording / reproducing apparatus 300 transmits a header (Head er) portion of the data to the recording / reproducing apparatus signal processing section 302 of the recording / reproducing apparatus 300.
  • Step S72 is a process similar to step S52 described in “(7) Download process from recording / reproducing device to recording device”, and is a recording / reproducing device encryption processing unit that receives the header (Header).
  • the control unit 306 of 302 causes the encryption / decryption unit 308 of the recording / reproducing device encryption processing unit 302 to calculate the pick value A.
  • the check value A is obtained by using the check value A generation key K leva stored in the internal memory 307 of the recording / reproducing device encryption processing unit 302 as a key as shown in FIG.
  • check values A and I CVa are check values for verifying falsification of identification information and handling policy.
  • the check value A generated key K icva stored in the internal memory 307 of the recording / reproducing device encryption processing unit 302 is used as a key, and identification information (Content ID) and handling policy (Usage Policy) are used as messages in Fig. 7. If the check value A calculated according to the described ICV calculation method matches the check value stored in the header: ICV a, the identification information stored in the recording device 400 and the handling Then, it is determined that the policy has not been tampered.
  • step S73 the control unit 301 of the recording / reproducing device 300 divides the block information key K bit and the content key K c ⁇ ⁇ from the read header (He ader) part. It is taken out and transmitted to the recording device 400 via the recording device controller 303 of the recording / reproducing device 300.
  • the recording device 400 that has received the block information key K bit and the content key K con transmitted from the recording / reproducing device 300 transmits the received data to the encryption Z decryption unit 406 of the recording device encryption processing unit 401 and the recording device.
  • the control unit 301 of the recording / reproducing device 300 transmits the content of the block information key Kbit re-encoded by the session key K ses from the recording device 400 via the recording device controller 303 of the recording / reproducing device 300. Read the key K con.
  • step S74 the control section 301 of the recording / reproducing apparatus 300 transmits the received book information key K bit and the content key Kcon re-encrypted with the received session key K ses to the recording / reproducing apparatus 300. This is transmitted to the recording / reproducing device encryption processing unit 302.
  • the recording / reproducing device encryption processing unit 302 of the recording / reproducing device 300 sends the encryption / decryption Z decryption of the recording / reproducing device encryption processing unit 302.
  • the encryption unit 308 sends the block information key Kbit and the content key Kcon encrypted with the session key K ses Decrypt with the shared session key K ses.
  • the block information received in step S71 is decrypted with the decrypted block information key Kbit.
  • the recording / reproducing device encryption processing section 302 of the recording / reproducing device 300 transmits the decrypted block information key Kbit, content key Kcon and block information BIT to the block information received in step S71.
  • the key Kbit, the content key Kcon and the block information BIT are replaced and stored.
  • the control unit 301 of the recording / reproducing device 300 reads out the decrypted block information BI from the recording / reproducing device encryption processing unit 302 of the recording / reproducing device 300.
  • Step S75 is the same process as step S56 described in “(7) Download process from recording / reproducing device to recording device”.
  • the control unit 306 of the recording / reproducing device encryption processing unit 302 divides the block information key ⁇ bit, content key K con and block information (BIT) read from the recording device 400 into 8-byte units, and exclusive ORs all of them. I do.
  • the control section 306 of the recording / reproducing apparatus cryptographic processing section 302 causes the encryption Z decrypting section 308 of the recording / reproducing apparatus cryptographic processing section 302 to calculate the check value B (ICVb). As shown in FIG.
  • the check value B is obtained by using the chip value B generation key Kicvb stored in the internal memory 307 of the recording / reproducing device encryption processing unit 302 as a key, and Is generated by encrypting the logical OR value with DES. Finally, the check-in B is compared with the I CVb in the header, and if they match, the process proceeds to step S76.
  • the check values B and I CVb are check values for verifying tampering of the block information key Kbit, the content key Kcon, and the block information.
  • the check value B generation key KicVb stored in the internal memory 307 of the recording / reproducing device encryption processing unit 302 as a key
  • the block information read from the recording device 400, the key Kbit, the content key Kcon, and the block information ( BIT) is divided into 8-byte units, and the value obtained by exclusive ORing is encrypted with DES.
  • the check value B generated is the header (Header) in the data read from the recording device 400.
  • step S76 the control unit 306 of the recording / reproducing device encryption processing unit 302 causes the encryption / decryption unit 308 of the recording / reproducing device encryption processing unit 302 to calculate an intermediate check value.
  • the intermediate check value is obtained by using the total check value generation key KicVt stored in the internal memory 307 of the recording / reproducing device encryption processing unit 302 as a key as shown in FIG.
  • the check value A, check value B, and all retained content check values in parentheses are calculated as messages according to the ICV calculation method described in FIG.
  • the internal memory 307 of the recording / reproducing device encryption processing unit 302 may store the IVt as the initial value for generating the total tick value and use it. .
  • the generated intermediate check value is stored in the recording / reproducing device encryption processing unit 302 of the recording / reproducing device 300 as necessary.
  • the control unit 301 of the recording / reproducing device 300 transmits the usage restriction information from the usage policy (Usage Policy) included in the header of the data read from the external memory 402 of the recording device 400.
  • Usage Policy usage policy
  • step S77 It is determined whether the extracted and downloaded content can be used only by the recording / reproducing device 300 (use restriction information is 1), and can be used by another similar recording / reproducing device 300 (use restriction information is 0). As a result of the determination, if the use restriction information is 1, that is, if the use restriction that the downloaded content can be used only by the recording / reproducing device 300 is set, the process proceeds to step S80, and the use restriction information is 0, that is, another If the setting can be used by the similar recording / reproducing device 300, the process proceeds to step S78. Note that the process of step S77 may be performed by the encryption processing unit 302.
  • step S78 the calculation of the total check value I CV t is performed in the same manner as in step S58 described in (7) Down-port processing from the recording / reproducing device to the recording device. That is, the control unit 306 of the recording / reproducing device encryption processing unit 302 calculates the total check value ICVt in the encryption / decoding unit 308 of the recording / reproducing device encryption processing unit 302 Let The total check value I CV t is determined by using the system signature key K sys stored in the internal memory 307 of the recording / reproducing device encryption processing unit 302 as a key as shown in FIG. Generated by encrypting with S.
  • step S79 the process proceeds to step S79, and the total check value I CV t generated in step S 78 is compared with the I CV t in the header (Header) stored in step S 71, and when they match.
  • step S82 the total check value I CV t generated in step S 78 is compared with the I CV t in the header (Header) stored in step S 71, and when they match.
  • the total check value I CV t is a check value for verifying tampering of all check values of I CVa, I CVb and each content block. Therefore, if the total check value generated by the above-described processing matches the check value: I CV t stored in the header (Header), the data stored in the recording device 400 includes I CVa, It is determined that all the check values of I CVb and each content block have not been tampered with.
  • step S77 If it is determined in step S77 that the downloaded content is a setting that can be used only by the recording / reproducing device 300, that is, if the setting information is 1, the process proceeds to step S80.
  • step S80 the control unit 306 of the recording / reproducing device signal processing unit 302 sends the recording / reproducing device-specific tuck value I CVd ev to the encryption / decryption unit 308 of the recording / reproducing device encryption processing unit 302.
  • the recording / reproducing device-specific check value I CVd e V is the recording / reproducing device-specific recording / reproducing device signature stored in the internal memory 307 of the recording / reproducing device encryption processing section 302 as shown in FIG.
  • an intermediate check value is generated by encrypting it with DES.
  • step S81 the check value I CVd ev unique to the recording / reproducing device calculated in step S 80 is compared with the I CVd ev in the header stored in step S71, and when they match, Goes to step S82.
  • data signed by the system signing key K sys is commonly checked by a system (recording / reproducing apparatus) having the same system signing key, that is, the total check value ICV t is matched.
  • a system recording / reproducing apparatus
  • the recording / reproducing device signature key is a key unique to the recording / reproducing device
  • data signed using the recording / reproducing device signature key K dev In other words, after the signature, the data stored in the recording device will not match the check value ICV dev unique to the recording / reproducing device if the recording device is mounted on another recording / reproducing device and the reproduction is attempted. It will not be possible to play because of an error.
  • step S82 the control of the recording / reproducing device 300 is performed.
  • the unit 301 extracts the content block information in the block information BIT read out in step S74, and checks whether or not the content block is to be encrypted. If the content block has been encrypted, the corresponding content block is read out from the external memory 402 of the recording device 400 via the recording device controller 303 of the recording / reproducing device 300, and then recorded / reproduced.
  • the recording / reproducing device encryption processing unit 302 of the device 300 To the recording / reproducing device encryption processing unit 302 of the device 300.
  • control unit 303 of the recording / reproducing device encryption processing unit 302 causes the encryption / decryption unit 308 of the recording / reproducing device encryption processing unit 302 to decrypt the content, and at the same time, the content. If the block is to be verified, the content check value is verified in the next step S83.
  • Step S83 is the same process as step S58 described in “(7) Download process from recording / reproducing device to recording device”.
  • the control unit 301 of the recording / reproducing device 300 fetches the content block information in the block information (BIT), determines whether or not the content block is to be verified from the storage status of the content check value, If the content block is to be verified, the corresponding content block is received from the external memory 402 of the recording device 400, and the recording / reproducing device encryption processing unit 3002 of the recording / reproducing device 300 is received.
  • Send to The control unit 303 of the recording / reproducing device encryption processing unit 302 that has received this causes the symbol Z decryption unit 308 of the recording / reproducing device encryption processing unit 302 to calculate a content intermediate value.
  • the content intermediate value is generated by decrypting the input content block in the DES CBC mode with the content key K con decrypted in step S74, dividing the result into 8 bytes, and performing exclusive OR operation.
  • the control section 303 of the recording / reproducing apparatus encryption processing section 302 causes the encryption Z decrypting section 308 of the recording / reproducing apparatus encryption processing section 302 to calculate the content check value.
  • the content check value is generated by encrypting the content intermediate value with DESS using the content check value generation key K i cvc stored in the internal memory 307 of the recording / reproducing device encryption processing unit 302 as a key.
  • the control unit 303 of the recording / reproducing device encryption processing unit 302 determines the content check value and the content block in the content block received from the control unit 301 of the recording / reproducing device 300 in step S.71.
  • the ICV is compared, and the result is passed to the control section 301 of the recording / reproducing apparatus 300.
  • the control unit 301 of the recording / reproducing device 300 receives the comparison result of the content check value (if not verified, the comparison results are all successful), and the verification is successful. Then, the decrypted content is extracted from the recording / reproducing device encryption processing section 302 of the recording / reproducing device 300. Then, the next content block to be decrypted is taken out, decrypted by the recording / reproducing device encryption processing section 302 of the recording / reproducing device 300, and the process is repeated until all content blocks are decrypted. In step S83, if the recording / reproducing apparatus encryption processing unit 302 of the recording / reproducing apparatus 300 does not match in the verification processing of the content check value, the processing is regarded as a failure in the verification at that time.
  • the recording / reproducing device encryption processing section 302 of the recording / reproducing device 300 monitors the decryption order of the content locks to be decrypted, and detects the wrong order or the same content block. If decryption is performed more than once, the decryption shall be deemed to have failed. .
  • step S72 If the check value A fails in step S72, the check value B fails in step S75, the total check value ICV t fails in step S79, the step If the verification of the check value ICV dev specific to the recording / reproducing device has failed in S81, and if the verification of the content check value of each content block has failed in step S83, the process proceeds to step S84, and The error is displayed.
  • step S74 of FIG. 28 the data encrypted with the different storage key K str for each recording device is decrypted, so that the data can be correctly decrypted by another recording device. What! / Because it has a configuration
  • the recording device can be used only after the mutual authentication process executed between the recording / reproducing device 300 and the recording device 400 described above.
  • a recording / reproducing device 300 and a recording / reproducing device may be used to generate a recording device, such as a memory card, in which contents are stored by unauthorized duplication, etc.
  • Fig. 29 is a diagram illustrating the command processing configuration in this recording device.
  • the recording / reproducing apparatus 300 As shown in FIG. 29, between the recording / reproducing apparatus 300 having the recording / reproducing apparatus encryption processing section 302 and the recording device 400 having the recording device encryption processing section 401, the recording / reproducing apparatus 300 is provided. Under the control of the control unit 301 of the recording device controller 303, a command number (No. 0) is transmitted to the communication unit (including the reception register) 404 of the recording device 400. ) Is output.
  • the recording device 400 has a command number management unit 222 in the control unit 403 in the encryption processing unit 401.
  • the command number management unit 2901 holds a command register 2902, and stores a command sequence corresponding to a command number output from the recording / reproducing device 300. In the command sequence, as shown on the right side of FIG. 29, command numbers 0 to y are sequentially associated with execution commands for the command numbers.
  • the command number management unit 290 1 monitors the command number output from the recording / reproducing device 300, retrieves the corresponding command from the command register 292, and executes it.
  • the command sequence stored in the command register 2992 is associated with the command numbers 0 to k preceding the command sequence relating to the authentication processing sequence, as shown on the right of FIG. Furthermore, the command sequence for the authentication processing sequence The subsequent command numbers p to s are associated with decryption, key exchange, and encryption processing command sequence 1, and the following command numbers u to y are associated with decryption, key exchange, and encryption processing command sequence 2.
  • the recording device 400 when the recording device 400 is mounted on the recording / reproducing device 300, the control unit 301 of the recording / reproducing device 300, the recording device controller An initialization command is transmitted to the recording device 400 via the interface 303. Receiving this, the recording device 400 receives the command via the communication unit 404 in the control unit 403 of the recording device encryption processing unit 401, and clears the authentication flag 2903. That is, an unauthenticated state is set. Alternatively, in the case where power is supplied from the recording / reproducing device 300 to the recording device 400, the system may be set to an unapproved state at power-on.
  • the control unit 301 of the recording / reproducing device 300 transmits an initialization command to the recording / reproducing device encryption processing unit 302.
  • the recording device @ entrance number is also transmitted.
  • the recording / reproducing device encryption processing unit 302 of the recording / reproducing device 300 executes the authentication corresponding to the recording device / entrance number in the control unit of the recording / reproducing device signal processing unit 302. Clear flag 2904. That is, an unauthenticated state is set.
  • the control unit 301 of the recording / reproducing device 300 outputs the command numbers sequentially from the command number ⁇ in ascending order via the recording device controller 303.
  • the command sequence stored in the command register 2902 is assigned a command number so that the authentication process is performed in advance, and the subsequent processes are decrypted, key exchanged, and encrypted. Is stored.
  • a specific example of the processing sequence of decryption, key exchange, and encryption processing will be described with reference to FIGS.
  • FIG. 30 shows a part of the process executed in the process of downloading content from the recording / reproducing device 300 to the recording device 400 described above with reference to FIG. Specifically, it is executed between steps S59 and S60 in FIG.
  • step S 3001 is processing in which the recording device receives data (ex. Block information key Kbit, content key Kcon) encrypted with the session key K ses from the recording / reproducing device.
  • the command sequence p to s shown in FIG. 29 is started.
  • the command strings p to s are started after the authentication processing commands 0 to k have been completed and the authentication flags 2903 and 2904 shown in FIG. 29 are set to the authenticated flags. This is guaranteed by the command number management section 2901 accepting command numbers only in ascending order from 0.
  • Step S3002 is a process of storing, in a register, data (ex. Block information key Kbit, content key Kcon) encrypted by the recording device using the session key Kse s received from the recording / reproducing device.
  • data ex. Block information key Kbit, content key Kcon
  • Step S3003 is a step of executing processing for extracting data (ex. Block information linked Kbit, content key Kcon) encoded with the session key Kses from a register and decrypting the data with the session key Kses. is there.
  • data ex. Block information linked Kbit, content key Kcon
  • Step S3004 is a step of executing a process of encrypting the data (ex. Block information key Kbit, content key Kcon) decrypted with the session key Kses with the storage key Kstr.
  • the above processing steps 3002 to 3004 are processings included in the command numbers p to s in the command register described in FIG. These processes are recorded data
  • the recording device signal processing unit 401 sequentially executes according to the command numbers p to s received from the recording / reproducing device 300. This is the step of storing the converted data (ex. The pro- cess information key Kbit and the content key Kcon) in the external memory of the recording device.
  • the recording / reproducing unit 300 may read the data encrypted with the storage key K str from the recording device encryption processing unit 401, and then store the data in the external memory 402 of the recording device 400.
  • steps S 3002 to S 3004 are a non-interruptible execution sequence that is continuously executed. For example, at the end of the decoding process in step S 3003, a data read command from the recording / reproducing device 300 is issued. However, since the read command is different from the command numbers in ascending order set in the command numbers p to s of the command register 2902, the command number management unit 2901 does not accept the execution of the read. Therefore, it is impossible to read out the decrypted data generated at the time of key exchange in the recording device 400 from the outside, for example, from the recording / reproducing device 300, and it is possible to prevent the key data and the contents from being illegally read.
  • FIG. 31 constitutes a part of the processing executed in the content reproduction processing in which the content is read from the recording device 400 described above with reference to FIG. Specifically, this is the process executed in step S73 in FIG.
  • a step S 3101 reads data (& ⁇ . Block information key Kbit, content key Kcon) encrypted with the storage key K str from the external memory 402 of the recording device 400. The steps to be performed.
  • Step S3102 is a step of storing data (ex. Block information key Kbit, content key Kcon) encrypted with the storage key Kstr read from the memory of the recording device in a register.
  • the recording / reproducing device 300 encrypts the data from the external memory 402 of the recording device 400 with the storage key Kstr.
  • the read data may be read and then stored in the register of the recording device 400.
  • Step S3103 is a step of taking out the data (ex. Block information key K bit and content key K con) decoded with the storage key K str from the register and decrypting it with the storage key K str. .
  • Step S3104 is a step of encrypting the data (ex. Block information key Kbit, content key Kcon) decrypted with the storage key Kstr using the session key Kses.
  • the above processing steps 3102 to 3104 are the processings included in the command numbers u to y in the command register described in FIG. These processes are sequentially executed by the recording device encryption processing unit 406 according to the command numbers U to y received from the recording / reproducing unit 300 in the command number management unit 2901 of the recording device.
  • the next step S3105 is a process of transmitting data (ex. Block information key K bit, content key K con) encrypted with the session key K ses from the recording device to the recording / reproducing device.
  • steps S3102 to S3104 are non-interruptible execution sequences that are continuously executed.
  • the recording / reproducing unit 3 Even if there is a data read instruction from 00, the read command is the command number in the command register 2902! ! Since the command numbers are different from the ascending command numbers set in ⁇ y, the command number management unit 290 1 does not accept the execution of reading. Therefore, it is impossible to read out the decrypted data generated at the time of key exchange in the recording device 400 from outside, for example, from the recording / reproducing device 300, and it is possible to prevent the key data or the content from being illegally read.
  • the objects to be decrypted and encrypted by key exchange are the block information key Kbit and the content key Kcon.
  • the command sequence stored in the command register 2902 shown may include decryption and encryption processing involving key exchange of the content itself.
  • the object to be decrypted and encrypted by the exchange is not limited to the above example.
  • the key exchange processing in the data processing apparatus of the present invention can be executed only after the authentication processing between the recording / reproducing device and the recording device is completed. Since the configuration prevents access, high security of contents and key data is ensured.
  • the data format in the media 500 or the communication means 600 shown in FIG. 3 is one type shown in FIG.
  • the data format in the media 500 or the communication means 600 is not limited to the format shown in FIG. 4 described above. If the content is music, if it is image data, or if it is a program such as a game. In some cases, it is desirable to adopt a data format according to the content.
  • Figures 32 to 35 show four different data formats. The data format on the media 500 or the communication means 600 shown in FIG.
  • the data format is shown in the following case. First, the outline of the data formats shown in FIGS. 32 to 35 will be described, and then the content of each data in each format and the difference between the data in each format will be described.
  • FIG. 32 shows format type 0, which is common to the type shown as an example in the above description.
  • the feature of this format type 0 is that the whole data is divided into N data blocks of arbitrary size, that is, block 1 to block N, and each block is arbitrarily encrypted.
  • data can be configured by mixing plaintext blocks.
  • Block encryption Is executed by the content key K con the content key K con is encrypted on the medium by the distribution key K dis, and at the time of storage in the recording device, by the storage key K str stored in the internal memory of the recording device. It is encrypted.
  • the block information key K bit is also encrypted on the medium using the distribution key K dis, and when stored in the recording device, is encrypted using the storage key K str stored in the internal memory of the recording device.
  • FIG. 33 shows format type 1.
  • Format type 1 divides the entire data into N data blocks, that is, block 1 to block N, as in format type 0. It differs from the above-mentioned format type 0 in that the size of each block is the same.
  • the encryption mode of the block using the content key K con is the same as that of the format type 0 described above.
  • the content key K con and the block information key K bit are encrypted by the distribution key K dis on the media and encrypted by the storage key K str stored in the internal memory of the recording device when stored in the recording device. Is the same as the format type 0 described above.
  • Format type 1 differs from format type 0 in that a fixed block configuration simplifies configuration data such as the data length of each block. Noise can be reduced. '
  • each block is composed of a pair of an encrypted part and a non-encrypted (plaintext) part.
  • the block length and configuration are regular, there is no need to check each block length and block configuration at the time of decryption processing or the like, so that efficient decryption and encryption processing can be performed.
  • the parts that make up each block that is, the encrypted part and the non-encrypted (plaintext) part, can be defined as check targets for each part. If the block is a containing block, the content check value for that block is I CV i is defined.
  • FIG. 34 shows format type 2.
  • the feature of format type 2 is that it is divided into N data blocks of the same size, that is, blocks 1 to N, and each block has its own block key K b It is encrypted with 1c.
  • the encryption of each block key K b 1 c is performed by the content key K con, and the content key K con is encrypted on the medium by the distribution key K dis. It is encoded by the storage key K str stored in the internal memory of.
  • the block information key Kbit is also encrypted on the medium by the distribution key Kdis, and is encoded by the storage key Kstr stored in the internal memory of the recording device when stored in the recording device.
  • Fig. 35 shows format type 3.
  • the feature of format type 3 is that it is divided into N data blocks of the same size, that is, block 1 to block N, like format 'type 2.
  • Each block is encrypted with its own block key K b 1 c, and further, without using a content key, each block key K b 1 c is encrypted with a distribution key K dis on the media. It is encrypted and is encrypted on the recording device by the storage key K str.
  • the content key K con does not exist on the media or on the device.
  • the block information key Kbit is encrypted on the medium by the delivery key Kdis, and when stored in the recording device, is encrypted by the storage key Kstr stored in the internal memory of the recording device.
  • the header part contains the content identifier, handling policy, check values A and B, total check value, block information key, Includes content key and block information.
  • the handling policy includes the content data length, header length, format type (formats 0 to 3 described below), for example, whether it is a program or data.
  • the localization flag which is a flag for determining whether or not the content can be used specifically for the recording / reproducing device. It stores permission flags for content copy and move processing, as well as various usage restriction information and process information on the content, such as the content encryption algorithm and mode.
  • Check value A is a check value for identification information and handling policy, and is generated by, for example, the method described above with reference to FIG.
  • the block information key K bit is a key for encrypting the block information.
  • the block information key is encrypted by the distribution key K dis on the medium, and when stored in the recording device, the internal memory of the recording device is used. Is encrypted by the storage key K str stored in.
  • the content key K con is a key used for encrypting the content.
  • the content key K con is encrypted with the distribution key K dis on the medium in the same manner as the block information key K bit. It is encrypted with the storage key K str stored in the internal memory of the device.
  • the content key K con is also used for encrypting the block key K b 1 c that can be formed in each content block.
  • the content key K con does not exist.
  • the block information is a table that describes the information of each block.
  • the block check value that is, the content check value ICV i
  • the block check value is a value obtained by performing an exclusive OR operation on the entire plaintext (decrypted text) in units of 8 bytes.
  • ic V c is used as a key).
  • FIG. 36 shows an example of a configuration for generating the content block check value I CV i.
  • Each of the messages M constitutes 8 bytes each of the decrypted data and the plaintext data.
  • the content check value I CV i is defined for the block.
  • the check value P_ICV ij of part j in block i is the packet; if j is encrypted, the content check value is the exclusive OR of the entire plaintext (decrypted text) in 8-byte units. Generated as a value encrypted with the generation key KicVc. If the part j is not encrypted, the whole block data (plaintext) of the part is tampered with the tampering check value generation function (DES-CBC-MAC, content check value generation) shown in Fig. 36 in 8-byte units. Key KicVc).
  • Figure 37 shows a falsified check value generation function (DES-CBC-MAC, content check value) in 8-byte units for data obtained by concatenating multiple part check values P—I CV ij in the order of the part numbers. Generated key K icvc).
  • Figure 37 shows an example of a configuration for generating the content check value I CVi for the content block.
  • the block check value I CV i is not defined.
  • Check value B is a check value for the block information key, the content key, and the entire block information, and is generated by, for example, the method described with reference to FIG.
  • the total check value I CV t is the check value A: I CVa, the check value B: I CVb, and the check value I CV i included in each block whose content is to be checked.
  • the check value A is generated by applying a system signing key K sys to an intermediate check value generated from each check value such as I CV a and performing an encryption process.
  • the total check value I CV t is calculated from the above check value A: I CV a, check value B: I CV from the content data, ie, the block key of block 1.
  • Figure 38 shows an example of a configuration that generates the total check value I CVT for Format Types 2 and 3.
  • the unique check value ICV de V is equal to the total check value I if the above-mentioned low power flag is set to 1, that is, if the content indicates that the content is uniquely available to the recording / reproducing device.
  • Check value that can be replaced by CV t In the case of format 'type 0 or 1, check value A: I CV a, check value B: I CVb, and each plot whose content is to be checked.
  • the check value I CV i included in the check is generated as a check value for the entirety. Specifically, as described with reference to FIG. 25 or FIG. 38 above, the check value A is encrypted by applying the recording / reproducing device signature key Kd ev to the intermediate check value generated from each check value such as ICV a. Generated by performing the conversion process.
  • Step S101 is an authentication processing step between the recording / reproducing device and the recording device, and is executed according to the authentication processing flow of FIG. 20 described above.
  • step S101 When the authentication processing in step S101 is completed and the authentication flag is set, the recording / reproducing apparatus 300 proceeds to step S102 via the reading unit 304, for example, the medium 500 storing the content data.
  • the data is read in accordance with a predetermined format by using the communication unit 305, or the data is received from the communication means 600 in accordance with the predetermined format using the communication unit 305, and the header (He ader)
  • the portion is transmitted to the recording / reproducing device encryption processing section 302 of the recording / reproducing device 300.
  • step S103 the control unit 306 of the encryption processing unit 302 causes the encryption Z decryption unit 308 of the recording / reproducing device encryption processing unit 302 to calculate the check value A.
  • the checker A uses the chip value A generation key Kicva stored in the internal memory 307 of the recording / reproducing device encryption processor 3 ⁇ 2 as a key, and uses identification information (Content ID) as the key. This is calculated according to the ICV calculation method described with reference to Fig. 7 using the usage policy as a message.
  • step S104 the checker A is compared with the checker ID: ICVa stored in the header, and if they match, the process proceeds to step S105.
  • the check values A and ICV a are check values for verifying falsification of identification information and handling policy.
  • Check value stored in the internal memory 307 of the recorder / reproducer encryption unit 302 The check value A generation key Kicva is used as a key, and identification information (Content ID) and handling policy (Usage Policy) are sent as a message. If, for example, the check value A calculated according to the ICV calculation method matches the check value: ICV a stored in the header (Header), there is no falsification of the identification information and the handling policy. Is determined.
  • step S105 the control section 303 of the recording / reproducing apparatus cryptographic processing section 302 determines whether the delivery key Kdis is taken out or generated, by the decoding / decoding section 3 of the recording / reproducing apparatus cryptographic processing section 302. 08.
  • the method of generating the delivery key Kd is performed, for example, by using the master key MKd is for delivery as in step S53 of FIG. 22 described above.
  • step S106 the control unit 306 of the recording / reproducing device encryption processing unit 302 uses the generated transmission key Kd is using the symbol / decryption unit 308 of the recording / reproducing device encryption processing unit 302. Of the block information key Kbit and the content key K con stored in the header part of the data 500 received via the reading unit 304 or the data received from the communication unit 600 via the communication unit 304. Perform decryption processing. Further, in step S107, the control section 303 of the recording / reproducing apparatus signal processing section 302 uses the decrypted block information key Kbit in the encryption / decryption section 308 of the recording / reproducing apparatus encryption processing section 302. Decode the block information.
  • step S108 the control section 303 of the recording / reproducing apparatus encryption processing section 302 generates a check value B (ICVb ') from the block information key Kbit, the content key Kcon, and the block information (BIT). I do.
  • the check value B is obtained by using the check value B generation key KicVb stored in the internal memory 307 of the recording / reproducing device encryption processing unit 302 as a key, a block information key Kbit, and a content
  • the exclusive OR value consisting of the key K c ⁇ ⁇ and the block information (BI ⁇ ) is encrypted with DES and generated.
  • step S109 the check value ⁇ is compared with the ICVb in the header (Header), and if they match, the process proceeds to step S110.
  • the check values B and I CVb are check values for verifying tampering of the block information key Kbit, the content key Kcon, and the block information.
  • the check value B generation key KicVb stored in the internal memory 307 of the recording / reproducing device encryption processing unit 302 is used as a key, and the block information key Kbit, the content key Kcon and the block information (BIT) are 8 bytes. If the check value B generated by encrypting the value obtained by dividing the data into units and performing the exclusive OR with DES using the DES matches the check value: I CVb stored in the header (Header), It is determined that there is no falsification of the block information link Kbit, the content key Kcon, and the block information.
  • step S110 the control unit 306 of the recording / reproducing device signal processing unit 302 causes the encryption / Z decryption unit 308 of the recording / reproducing device signal processing unit 302 to calculate an intermediate check value.
  • the intermediate check value is obtained by using the total check value generation key K ic V t stored in the internal memory 307 of the recording / reproducing device signal processing unit 302 as a key,
  • the value A, check value B, and all retained content check values are calculated as messages according to the ICV calculation method described in Fig. 7 and others.
  • the generated intermediate chip value is stored in the recording / reproducing device encryption processing section 30'2 of the recording / reproducing device 300 as necessary.
  • step S111 the control section 303 of the recording / reproducing apparatus cryptographic processing section 302 calculates the total check value ICVt 'in the signal decoding section 308 of the recording / reproducing apparatus signal processing section 302.
  • the total check value I CV t is obtained by encrypting the intermediate check value with DES using the system signature key K sys stored in the internal memory 307 of the recording / reproducing device encryption processing unit 302 as a key.
  • step S112 the generated total check value ICVt 'is compared with the ICVt in the header (Header), and if they match, the process proceeds to step S113. As described above with reference to FIG.
  • the total check value I CV t is a check value for verifying tampering of all check values of I CV a, IC Vb, and each content block. Therefore, if the total check value generated by the above processing matches the check value stored in the header (Header): ICVt, the check values of I CV a, I CVb, It is determined that there is no tampering
  • the control unit 301 of the recording / reproducing device 300 extracts the content block information in the block information (BIT), and determines whether the content block is to be verified. Check. If a content block is to be verified, a content check flag is stored in the block information in the header.
  • step S114 the corresponding content block is read from the medium 500 using the reading unit 304 of the recording / reproducing device 300.
  • the data is received from the communication means 600 using the communication section 300 of the recording / reproducing apparatus 300, and transmitted to the recording / reproducing apparatus encryption processing section 302 of the recording / reproducing apparatus 300.
  • the control section 303 of the recording / reproducing apparatus encryption processing section 302 calculates the content check value ICV i, in the encryption / decryption section 308 of the recording / reproducing apparatus encryption processing section 302. Let it.
  • the content check value ICV i when the block is encrypted, decrypts the input content block with the content key K con in the DES CBC mode and all the results are 8 bytes.
  • the content intermediate value generated by performing an exclusive OR operation on a unit basis is encrypted with the content check value generation key KicVc stored in the internal memory 307 of the recording / reproducing device 300 to generate the content intermediate value.
  • the falsification check value generation function (DES_CBC—MAC, content check value generation key KicV) shown in Fig. 36 shows the entire data (plaintext) in 8-byte units. c is used as a key).
  • step S115 the control section 303 of the recording / reproducing apparatus encryption processing section 302 records the content check value and the recording in step S102.
  • the ICV in the content block received from 1 is compared, and the result is passed to the control section 301 of the recording / reproducing apparatus 300.
  • the control unit 301 of the recording / reproducing unit 300 that has received the data extracts the next content block to be verified and extracts the next content block to be verified. Then, the same verification process is repeated until all content locks are verified (step S116). If any of the check values cannot be obtained in step S104, step S109, step S112, or step S115, the download process ends as an error. .
  • step S117 the recording / reproducing device encryption processing section 302 of the recording / reproducing device 300 records the block information key K bit and the content key Kcon decrypted in step S106.
  • the encryptor Z decryptor 308 of the regenerator cryptographic processor 302 encrypts with the session key K ses shared at the time of mutual recognition and authentication.
  • the control unit 310 of the recording / reproducing device 300 stores the block information key K bit and the content key K con encrypted with the session key K ses in the recording / reproducing device encryption processing unit 300 2 of the recording / reproducing device 300. And transmits these data to the recording device 400 via the recording device controller 303 of the recording / reproducing device 300.
  • step S118 the recording device 400, which has received the block information key K bit and the content key KcoII transmitted from the recording / reproducing device 300, transmits the received data to the recording device.
  • the encryption / decryption unit 406 of the encryption processing unit 401 decrypts it with the session key K ses shared during mutual authentication, and the recording device internal memory 400 of the encryption processing unit 401 Then, the data is encrypted again with the storage device-specific storage key K str stored in 5, and the control unit 301 of the recording / reproducing device 300 controls the recording device controller 303 of the recording / reproducing device 300. Then, the block information key K bit and the content link K con re-encrypted with the storage key K str are read from the recording device 400. That is, the key of the block information key Kbit encrypted with the delivery key Kdis and the key of the content key Kcon are exchanged.
  • step S120 the control unit 301 of the recording / reproducing device 300 causes the recording / reproducing device encryption processing unit 302 of the recording / reproducing device 300 to calculate a check value unique to the recording / reproducing device.
  • the check value unique to the recording / reproducing device is obtained by using the recording / reproducing device signature key K dev unique to the recording / reproducing device stored in the internal memory 307 of the recording / reproducing device encryption processing section 302
  • the intermediate check value generated in step S110 is encrypted by DES and generated.
  • the calculated recording / reproducing device-specific check value I C V de V is overwritten instead of the total check value I C V t.
  • the system signing key K sys is a system signing key used to attach a common signature or ICV to the distribution system, and the recording / reproducing device signing key K dev is used for each recording / reproducing device. Differently, it is the recorder / reproducer signing key used by the recorder / player to sign or ICV. In other words, data signed with the system signature key K sys can be shared by systems (recording / reproducing devices) that have the same system signature key, so that the total check value ICV t matches.
  • the recording / reproducing device signature key K de V is used because the recording / reproducing device signature key is unique to the recording / reproducing device. If the data signed by using this method, that is, the data stored in the recording device after signing, is used to set the recording device to another recording / reproducing device and reproducing it, the check value ICV unique to the recording / reproducing device is used. Since dev does not match and an error occurs, playback cannot be performed.
  • the content that can be used in common with the system and the content that can be used uniquely for the recording / reproducing device can be freely set by setting the use restriction information.
  • step S122 the control unit 301 of the recording / reproducing device 300 causes the recording / reproducing device encryption processing unit 302 to execute formation of a stored data format.
  • a stored data format there are 0 to 3 format types, and the format in the header is According to this setting type, data is formed according to the storage format on the right side of FIGS. 32 to 35 described above according to this setting type. Since the flow shown in FIG. 39 has one of the formats 0 and 1, it is formed in one of the formats shown in FIGS.
  • step S122 when the formation of the stored data format is completed, in step 122, the control unit 301 of the recording / reproducing device 300 stores the content in the external memory 4 of the recording device 400. 0 Save to 2.
  • the above is the mode of the download processing of the content data in the format types 0 and 1.
  • Steps S101 to S109 are the same as the above-described download processing of format types 0 and 1, and a description thereof will be omitted.
  • the format type 2 does not have the content check value ICVi in the block information because the content check value ICVi is not defined.
  • the intermediate check value in format type 2 is the concatenation of check value A, checky B, and the entire contents data from the first data of the first block (block key of block 1) to the last block. It is generated by applying the system signature key K sys to the intermediate check value generated based on the data and executing the encryption process.
  • the content data is read out in step S151, and based on the check value A and the check value B in step S152, the content data is read out! /, Generate intermediate check value. Note that even if the content data is encrypted, the decryption process is not performed.
  • Format type 2 uses the same processing as format types 0 and 1 described above. Since the decryption of the block data and the inquiry processing of the content check value are not performed in the first step, quick processing is possible.
  • step S111 and subsequent steps is the same as the processing in format types 0 and 1, and a description thereof will be omitted.
  • the download processing of format type 2 does not perform block data decryption and content check value inquiry processing, unlike the processing of format types 0 and 1, so that rapid processing can be performed and music data can be obtained.
  • Etc. This format is suitable for data processing that requires real-time processing.
  • Steps S101 to S105 are the same as the above-described download processing of format types 0, 1, and 2, and thus description thereof is omitted.
  • Format type 3 basically has much in common with the processing in format type 2, but format type 3 does not have a content key, and the block key K b 1 c is a storage key in the recording device. It differs from the format type 2 in that it is stored after being encrypted with K str.
  • the block information key is decrypted in the step S161 following the step S105.
  • the control unit 300 of the recording / reproducing device encryption processing unit 302 uses the encryption / decryption unit 308 of the recording / reproducing device signal processing unit 302, and the delivery generated in step S105.
  • the key K dis uses the key K dis, the block stored in the header section of the data received from the media 500 via the reading section 304 or the communication means 600 via the communication section 304. Performs decryption processing of the key information key K bit.
  • format type 3 since the content key K con does not exist in the data, the content key K con is decrypted. Is not executed.
  • step S107 the block information is decrypted using the block information key K bit decrypted in step S161, and in step S162, the recording / reproducing device encryption processing unit 3
  • the control unit 302 of 02 generates a pick value B (ICVb ') from the block information key K bit and the block information (BIT).
  • the check value B is obtained by using the check value B generation key KicVb stored in the internal memory 307 of the recording / reproducing device encryption processor 302 as a key, a block information key Kbit, and block information (BIT). Is generated by encrypting the exclusive OR value consisting of
  • step S109 the check value B is compared with the ICVb in the header (Header), and if they match, the process proceeds to step S151.
  • check values B and I CV b function as check values for verifying tampering of block information key K bit and block information. If the generated check value B matches the check value: ICVb stored in the header (Header), it is determined that the block information key Kbit and the block information have not been tampered with.
  • Steps 3151 to 3112 are the same as the processing of the format type 2 and thus the description is omitted.
  • step S163 the block key Kb1c included in the content data read in step S151 is decrypted with the distribution key Kdis generated in step S105.
  • step S164 the recording / reproducing device encryption processing unit 302 of the recording / reproducing device 300 transmits the block information key K bit decrypted in step S1661 and in step S166,
  • the decrypted block key Kb1c is encrypted by the encryption / decryption unit 308 of the recording / reproducing device signal processing unit 302 with the session key Kses shared at the time of mutual authentication.
  • the control unit 301 of the recording / reproducing device 300 sends the block information key K bit and the block key Kb 1 c encrypted with the session key K ses to the recording / reproducing device encryption processing unit 3 of the recording / reproducing device 300. And read these data from the recording / reproducing unit 300.
  • the data is transmitted to the recording device 400 via the device controller 303.
  • step S165 the recording device 400, which has received the block information key K bit and block key Kb1c transmitted from the recording / reproducing device 300, stores the received data in the storage device 400.
  • the encryption / decryption unit 406 of the recording device No. processing unit 401 decrypts it with the session key K ses shared during mutual authentication, and the internal memory of the recording device encryption processing unit 401 The re-encryption is performed using the storage device-specific storage key K str stored in the storage device 400, and the control unit 301 of the recording / reproducing device 300 operates as a recording device controller 300 of the recording / reproducing device 300.
  • the block information key K bit and the block key K b 1 c re-encrypted with the storage key K str are read from the recording device 400 through 3. That is, the block information key K bit and the block key K b 1 c encrypted with the delivery key K dis are initially converted to the block information key K bit and the block key K b 1 c re-encrypted with the storage key K str Perform the replacement.
  • format type 3 download processing like format type 2, does not perform block data decoding and content check value query processing, so rapid processing is possible, and music data and other real-time processing is required. It is a format suitable for the data processing performed. In addition, since the range in which the encrypted content is protected by the block key Kb1c is localized, the security is higher than that of the format type 2.
  • 201 is an authentication processing step between the recording / reproducing device and the recording device. This is executed according to the authentication processing flow of FIG. 20 described above.
  • step S202 the recording / reproducing apparatus 300 reads a data header according to a predetermined format from the recording device 400 and records the data. This is transmitted to the recording / reproducing device encryption processing unit 302 of the reproducing device 300.
  • step S203 the control section 306 of the signal processing section 302 causes the encryption Z decryption section 308 of the recording / reproducing apparatus encryption processing section 302 to calculate the check value A.
  • the check value A is determined by using the check value A generation key KicVa stored in the internal memory 307 of the recording / reproducing device encryption processing unit 302 as a key and identifying information ( Content ID) and handling policy (Usage P ⁇ ⁇ 1 icy) are calculated as messages.
  • step S204 the calculated check value A is compared with the check value: I CVa stored in the header (Header), and if they match, the process proceeds to step S205.
  • Check values A and ICVa are check values for verifying falsification of identification information and handling policies. If the calculated check value A matches the check value: I CV a stored in the header, it is determined that the identification information and the handling policy stored in the recording device 400 have not been tampered with. Is done.
  • step S205 the control unit 301 of the recording / reproducing device 300 transmits the block information chain Kbit and the content key K c encrypted with the storage device-specific storage key K str from the read header.
  • ⁇ ⁇ is taken out and transmitted to the recording device 400 via the recording device controller 303 of the recording / reproducing device 30.
  • the recording device 400 that has received the block information key Kbit and the content key Kcon transmitted from the recording / reproducing device 300 transmits the received data to the encryption Z decryption unit 406 of the recording device encryption processing unit 401 and the recording device. It is decrypted with the storage device-specific storage key K str stored in the internal memory 405 of the cryptographic processing unit 401, and is re-encrypted with the session key K se s. Shared during mutual authentication. Let it. This process is as described in detail in (9) Key exchange process after mutual authentication. is there.
  • step S206 the control unit 301 of the recording / reproducing device 300 sends the block information key re-encoded by the session key K ses from the recording device 400 via the recording device controller 303 of the recording / reproducing device 300.
  • Receive Kbit and content key Kcon Receive Kbit and content key Kcon.
  • step S207 the control unit 301 of the recording / reproducing device 300 transmits / receives the block information key Kbit and the content key K con re-encrypted with the received session key K ses to the recording / reproducing device 300.
  • the recording / reproducing apparatus encryption processing section 302 of the recording / reproducing apparatus 300 that has transmitted the block information key Kbit and the content key Kco11 re-encrypted with the session key K ses to the Regenerator
  • the session where the block information key Kbit and the content key Kcon encrypted by the session key K ses are shared by the encryption / decryption unit 308 of the Decrypt with key K ses.
  • step S208 the block information read out in step S202 is decrypted with the decrypted block information chain Kbit.
  • the recording / reproducing device encryption processing unit 302 of the recording / reproducing device 300 transmits the decrypted block information key K bit, content key K con and block information BIT to the block information included in the header read in step S202. It is retained by replacing it with the link Kbit, the content key K con and the block information BIT.
  • the control unit 301 of the recording / reproducing device 300 reads out the decrypted block information BIT from the recording / reproducing device encryption processing unit 302 of the recording / reproducing device 300 in advance.
  • step S209 the control unit 303 of the recording / reproducing device encryption processing unit 302 generates a check value B (ICV b ′) from the block information key Kbit, the content key Kcon, and the block information (BIT). I do.
  • the check value B is determined by using the check value B generation key Kic Vb stored in the internal memory 307 of the recording / reproducing device signal processing unit 302 as a key, the block information key Kbit, and the content The exclusive OR value consisting of the key K con and the block information (BIT) Generated by encryption.
  • step S210 the check value B is compared with the ICVb in the header, and if they match, the process proceeds to step S211.
  • the check values B and I CVb are check values for verifying tampering of the block information key Kb i.t, the content key Kcon, and the block information, and the generated check value B is included in the header (Header).
  • step S 211 the control unit 306 of the recording / reproducing device encryption processing unit 302 causes the encryption / decryption unit 308 of the recording / reproducing device encryption processing unit 302 to calculate an intermediate check value.
  • the total check value generation key KicVt stored in the internal memory 307 of the recording / reproducing device encryption processing unit 302 is used as a key, and the check value in the verified header is used.
  • A, check value B, and all content check values in the block information are calculated as messages according to the ICV calculation method described in FIG. Note that the generated intermediate check value is stored in the recording / reproducing unit signal processing unit 302 of the recording / reproducing device 300 as necessary.
  • step S212 the control unit 301 of the recording / reproducing device 300 uses the usage policy information from the handling policy (Usage Policy) included in the header of the data read from the external memory 402 of the recording device 400. Then, it is determined whether the content to be reproduced can be used only by the recording / reproducing device 300 (use restriction information is 1) or can be used by another similar recording / reproducing device 300 (use restriction information is 0).
  • Usage Policy the usage policy information from the handling policy included in the header of the data read from the external memory 402 of the recording device 400. Then, it is determined whether the content to be reproduced can be used only by the recording / reproducing device 300 (use restriction information is 1) or can be used by another similar recording / reproducing device 300 (use restriction information is 0).
  • step S212 the processing of step S212 may be performed by the encryption processing unit 302.
  • the control unit 301 of the recording / reproducing device 300 is Is calculated by the recording / reproducing device encryption processing section 302 of the recording / reproducing device 300.
  • the check value I CVd e V ′ unique to the recording / reproducing device is obtained by using the recording / reproducing device signature key Kdev stored in the internal memory 307 of the recording / reproducing device encryption processing section 302 as a key as shown in FIG. 21 Generate the intermediate check value stored in 1 by encrypting it with DES.
  • step S 214 the ICV de V ′ of the recording / reproducing device specific calculated in step S 2 13 and the ICV dev in the header read out in step S 202 are compared, and they match. In this case, the process proceeds to step S217.
  • step S215 the control unit 306 of the recording / reproducing device encryption processing unit 302 causes the encryption / Z decryption unit 308 of the recording / reproducing device signal processing unit 302 to calculate the total check value I C Vt.
  • the total check value I CV t ′ is obtained by using the system signature key K sys stored in the internal memory 307 of the recording / reproducing device encryption processing unit 302 as a key and setting the intermediate check value to DES. Generate by encryption.
  • step S216 the generated total check-in ICVt, and the ICVt in the header (Header) are compared, and if they match, the process proceeds to step S217. .
  • the total check value I CV t and the check value I CVd e v specific to the recording / reproducing device are check values for verifying tampering of all the check values of I CVa, I CVb and each content block. Therefore, if the check value generated by the above process matches the check value stored in the header (Header): ICV t or ICV dev, the ICVa, ICVb stored in the recording device 400 It is determined that all the check values of each content block have not been tampered with.
  • step S 217 the control unit 301 of the recording / reproducing device 300 reads the block data from the recording device 400. Further, it is determined in step S218 whether or not the data has been encrypted. If the data has been encrypted, the encryption processing unit 302 of the recording / reproducing device 300 decrypts the block data. If not, the process skips step S219 and proceeds to step S220.
  • step S220 the control unit 301 of the recording / reproducing device 300 Check whether the content block is verified based on the content block information in the block information (BIT). If the content block is to be verified, the content check value is stored in the block information in the header. If the content block was verified, go to step S
  • the content check value I CV i ′ is obtained by decrypting the input content block with the content key Kcon in the DES CBC mode using the content key Kcon when the block is encrypted as described above with reference to Fig. 36.
  • a content intermediate value generated by exclusive ORing all the results in units of 8 bytes is encrypted and generated using a content check value generation key KicVc stored in an internal memory 307 of the recording / reproducing device 300. If the block is not encrypted, the entire data (plaintext) is plotted in 8-byte units.
  • step S222 the control unit 306 of the recording / reproducing device encryption processing unit 302 stores the generated content check value I CVi, and the header value received from the recording device 400 in step S202.
  • the content check value I CV i is compared, and the result is passed to the control unit 301 of the recording / reproducing device 300.
  • the control unit 301 of the recording / reproducing apparatus 300 stores the plaintext data for execution (reproduction) in the recording / reproducing apparatus system RAM in step S223 if the verification is successful.
  • the control section 301 of the recording / reproducing apparatus 300 further takes out the next content lock to be verified, and causes the recording / reproducing apparatus encryption processing section 302 of the recording / reproducing apparatus 300 to verify the content lock, and performs the same verification processing until all content blocks are verified. Then, the RAM storage process is repeated (step S224).
  • Step S204 step S210, step S214, step S204
  • step S224 If it is determined in step S224 that all blocks have been read, the flow advances to step S225 to start execution and reproduction of the content (program, data).
  • the above is a description of the mode of content data reproduction processing in format type 0.
  • step S201 to step S217 The processing from step S201 to step S217 is the same as the above-mentioned format type 0 reproduction processing, and therefore the description is omitted.
  • step S231 decryption of an encrypted part is executed, and a part ICV is generated. Further, in step S232, a block I CV i, is generated.
  • the content check value I CV i is defined for the block.
  • the check value P—I CV ij of part j in block i is the content check value generation key K ic that is the exclusive-OR value of the entire plaintext (decrypted text) in 8-byte units when the part is encrypted. Generated as a value encrypted with Vc.
  • the entire data (plaintext) is changed in 8 bytes in units of the tampering check value generation function (DES-CBC-MAC, the content check value generation key K icvc). ) Is generated as the value obtained by inputting to.
  • DES-CBC-MAC the tampering check value generation function
  • the falsification check value generation function (DES-CBC-MA) shown in Fig. 36 shows the entire data (plain text) in 8-byte units for data obtained by concatenating a plurality of part check values P_ICV i, j in the order of part numbers.
  • C the content check value generation key K icvc is used as the key). This is as described earlier in FIG. 37.
  • step S222 the process of comparing the content check values generated in the above-described procedure is executed in step S222. Subsequent steps S 2 2 3 The following processing is the same as that of the format type 0, and a description thereof will be omitted.
  • Steps S201 to S210 are the same as the above-described playback processing of format types 0 and 1, and a description thereof will be omitted.
  • format type 2 In format type 2, the processing of steps S211 to S216 performed in format types 0 and 1 is not performed. Also, since the format type 2 does not have a content check value, the verification of the content check value in step S222 executed in the format types 0 and 1 is not performed.
  • step S210 After the step of verifying the check value B in step S210, the process proceeds to step S217, where the control unit 301 of the recording / reproducing device 300 Block data is read by control. Further steps
  • the encryption processing unit 303 of the recording / reproducing device 300 executes the decryption processing of the block key Kb1c included in the block data.
  • the block key Kb1c stored in the recording device 400 is encrypted with the content key Kcon as shown in FIG. 34, and the content key Kcon decrypted in the previous step S207 is obtained. To decrypt the block key K b 1 c using the key.
  • step S 2 42 the block key decrypted in step S 2 41
  • a block data decoding process is performed using Kb 1 c.
  • step S243 execution (reproduction) of content (program, data) is performed. Steps S217 to S243 are repeatedly executed for all blocks. If it is determined in step S244 that all blocks have been read, the playback processing ends.
  • the format type 2 processing omits the check value verification processing such as the total check value, and is a configuration suitable for high-speed decoding processing, and requires real-time processing such as music data.
  • This format is suitable for data processing.
  • the reproduction process of the content data in the format type 3 will be described with reference to FIG. The following describes mainly the points that are different from the format types 0, 1, and 2 playback processing described above.
  • Format type 3 basically has many parts in common with the processing in format type 2, but format type 3 does not have a content key as described in FIG. 35 and block key Kb 1
  • the difference from format type 2 is that c is encrypted and stored with the storage key K str in the recording device.
  • steps S201 to S210 the processing of step S251, step S252, step S253, and step S254 is different from the corresponding processing in the format types 0, 1, and 2 in that the processing does not include the content chain. It is configured as
  • step S251 the control unit 301 of the recording / reproducing device 300 extracts the block information key K bit encoded with the storage device-specific storage key Kstr from the read header, and reads the recording device of the recording / reproducing device 300. It is transmitted to the recording device 400 via the controller 303.
  • the recording device 400 that has received the block information key Kbit transmitted from the recording / reproducing device 300 transmits the received data to the encryption / decryption unit 406 of the recording device signal processing unit 401 and the internal of the recording device encryption processing unit 401.
  • Decryption is performed using the storage device-specific storage key K str stored in the memory 405 and shared during mutual authentication. Re-encrypt with the saved session key K ses. This processing is as described in detail in the section of (9) Key exchange processing after mutual authentication described above.
  • step S252 the control unit 301 of the recording / reproducing device 300 re-executes from the recording device 400 using the session key Kses via the recording device controller 303 of the recording / reproducing device 300. ⁇ Receives the encrypted block information key K bit.
  • the control unit 301 of the recording / reproducing device 300 stores the block information key K bit re-encrypted with the received session key K ses in the recording / reproducing device 300.
  • the recording / reproducing device signal processing unit 302 of the recording / reproducing device 300 which has transmitted the block information key K bit re-encrypted with the session key K ses to the reproducing device encryption processing unit 302,
  • the encryption / decryption unit 308 of the recording / reproducing device signal processing unit 302 sends the block information key K bit encrypted with the session key K ses to the session key shared during mutual authentication. Decrypt with K ses.
  • step S208 the block information read out in step S202 is decrypted with the decrypted block information key Kbit.
  • the recording / reproducing device encryption processing unit 302 of the recording / reproducing device 300 includes the decrypted block information key K bit and the block information BIT in the header read out in step S202. Block information key K bit and block information BIT are replaced and stored.
  • the control section 301 of the recording / reproducing apparatus 300 reads out the decrypted block information BIT from the recording / reproducing apparatus encryption processing section 302 of the recording / reproducing apparatus 300.
  • step S254 the control unit 306 of the recording / reproducing device encryption-processing unit 302 generates a check value B (ICVb ') from the block information key K bit and the block information (BIT). I do.
  • the check value B is, as shown in FIG. 24, a check value B generation key K ic V b stored in the internal memory 307 of the recording / reproducing device encryption processing unit 302, and a block information key.
  • An exclusive OR value consisting of K bits and block information (BIT) is generated by encrypting with DES.
  • step S210 the check value B is compared with the ICV b in the header (Header), and if they match, the process proceeds to step S211.
  • step S255 and step S256 since the block key is encrypted with the storage key when stored in the recording device, the decryption processing with the storage key in the recording device 400, the encryption processing with the session key, and the recording The decryption process using the session key in the reproducer 300 is required. A series of these processes are the processing steps shown in step S255 and step S256.
  • step S255 the control unit 301 of the recording / reproducing device 300 sends the block key Kb1c encrypted from the block read in step S217 with the storage device-specific storage key Kstr. Is taken out and transmitted to the recording device 400 via the recording device controller 303 of the recording / reproducing device 300.
  • the recording device 400 receiving the block key K b 1 c transmitted from the recording / reproducing device 300 transmits the received data to the recording device encryption processing unit 410 encryption Z decryption unit 4 06.
  • the encryption key is decrypted with the storage device-specific storage key K str stored in the internal memory 405 of the storage device encryption processor 401, and the session key K shared during mutual authentication Re-encrypt with ses. This processing is as described in detail in the section of “(9) Key exchange processing after mutual authentication” described above.
  • step S256 the control unit 301 of the recording / reproducing device 300 sends the session key K ses from the recording device 400 via the recording device controller 303 of the recording / reproducing device 300.
  • the control unit 301 of the recording / reproducing device 300 sends the session key K ses from the recording device 400 via the recording device controller 303 of the recording / reproducing device 300.
  • the block key K b 1 c re-encrypted.
  • step S257 a decryption process using the session key Kse s of the block key Kb1c is performed by the encryption processing unit 310 of the recording / reproducing device 300.
  • step S224 block data is decrypted using the block key Kb1c decrypted in step S257.
  • step S243 execution (reproduction) of content (program, data) is performed. The processing from step S217 to step S243 is repeatedly executed for all blocks. If it is determined in step S224 that all blocks have been read, the playback processing ends.
  • the above processing is the content reproduction processing in the format type 3. This is similar to Format Type 2 in that the verification processing of the total check value is omitted, but has a higher security and higher level of processing configuration compared to Format Type 2 in that it includes a block key key exchange process. Has become.
  • check values ICV used in the data processing device of the present invention are as follows, briefly summarizing each check value described in the embodiment.
  • Check value B, I CVb Check value for verifying tampering of block information key Kbit, content key Kcon, and block information.
  • Content check value I C Vi Check value for verifying tampering of each content block of content.
  • Total check value I CV t Check value I CV a, Check value I CVb, Check value for verifying tampering of all check values of each content lock.
  • Reproducer-specific check value ICV de V Replaced with the total check value I CV t when the localization flag is set to 1, that is, when the content indicates that the content is available for the recording / reproducer. This is a check value.
  • the content to be checked by ICVt and ICV deV may include the content itself instead of the check value of each content block.
  • the above check values are used in the data processing device of the present invention.
  • the check value A, the check value B, the total check value, and the content check value are, for example, the content providing the content data as shown in FIGS. 32 to 35 and FIG.
  • An ICV value is generated by the provider or the content manager based on the respective data to be verified, stored in the data together with the content, and provided to the user of the recording / reproducing device 300.
  • the user of the recording / reproducing device that is, the content user
  • downloads this content to the recording device or reproduces the content it generates an ICV for verification based on the data to be verified and stores the generated ICV.
  • the playback device-specific check value ICV dev is replaced with the total check value ICV t and stored in the recording device when the content indicates that the content is available for the recording / playback device.
  • the generation process of the check value has been described mainly in terms of the configuration of the generation process based on DES-CBC.
  • the IVC generation processing modes are not limited to the above-described methods, but include various generation processing modes and various verification processing modes. In particular, for the relationship between the content provider or administrator and the content user, various IVC generation and verification processing configurations described below are possible.
  • Figs. 46 to 48 show diagrams describing the generation process of the check value I CV by the creator and the verification process by the verifier.
  • Fig. 46 shows the process of generating ICV by DES_CBC described in the above embodiment, for example, by the ICV creator who is the content provider or administrator, and the generated ICV together with the content is used by the recording / playback user. That is, the configuration provided to the verifier.
  • the key required by the recording / reproducing device user, that is, the verifier in the verification process is, for example, each check value generation key stored in the internal memory 307 shown in FIG.
  • the verifier who is a content user uses the check value generation key stored in the internal memory 307, the verifier who is a content user generates a check value by applying DES-CBC to the data to be verified. And execute the comparison processing with the stored check value.
  • each check value generation key is configured as a key that is secretly shared by the creator of the ICV and the verifier.
  • Figure 47 shows that an ICV creator, a content provider or administrator, generates an ICV with a public key symbol digital signature and provides the generated ICV along with the content to the content user, that is, a verifier. I do.
  • the content user that is, the verifier, stores the public key of the ICV creator, and executes the ICV verification process using this public key.
  • the public key of the content user (recorder / reproducer user), that is, the ICV generator of the verifier does not need to be kept secret, and is easy to manage. This is a mode suitable for the case where the generation and management of the ICV is performed at a high security management level, such as when the generation and management of the ICV are performed by one entity.
  • Figure 48 shows that an ICV creator, a content provider or administrator, generates an ICV using a public key cryptographic digital signature and provides the generated ICV along with the content to the content user, that is, a verifier. Further, the public key used for verification by the verifier is stored in a public key certificate (for example, see FIG. 14) and provided to the recording / reproducing device user, that is, the verifier, together with the content data. If there are multiple ICV generators, each generator will have the Key Management Center create data (public key certificate) that certifies the validity of the public key.
  • the content user who is the verifier of the ICV, has the public key of the key management center, and the verifier verifies the public key certificate using the public key of the key management center, and the validity is confirmed. Then, retrieve the public key of the ICV creator stored in the public key certificate. In addition, the method of verifying the ICV using the extracted public key of the ICV creator is used in this method. This is an effective mode when it is established.
  • various master keys are stored in the internal memory of the recording / reproducing device 300 in the data processing device of the present invention.
  • an authentication key Kake is generated (see Equation 3), or a distribution key Kdis is generated (see Equation 4).
  • each entity held common secret information, such as key information.
  • a one-to-many relationship for example, a relationship between many content users for one content provider or many recording media for one recording / reproducing device, all entities, that is, many content users, or Is to store and hold secret information shared by multiple recording media, for example, key information.
  • one content provider can individually store secret information (ex. Key) for each of a number of content users. This was managed and used appropriately for each content user.
  • FIG. 49 shows a diagram illustrating a configuration for generating various keys using various master keys of the recording / reproducing device 300.
  • Content is input from the medium 500 and the communication means 600 in FIG. 49 in the same manner as in the embodiment described above.
  • the content is decrypted by the content key K con, and the content key K con is decrypted by the delivery key K dis.
  • the recording / reproducing device 300 when the recording / reproducing device 300 takes out the content from the medium 500 and the communication means 600 and tries to download it to the recording device 400, in the case of FIG. 22 and FIGS. As described above, the recording / reproducing device 300 needs to acquire the distribution key K dis that encrypts the content key.
  • This K dis can be obtained directly from the media 500 and the communication means 600, or it can be obtained in advance by the recording / reproducing device 300 and stored in the memory in the recording / reproducing device 300.
  • K dis can be obtained directly from the media 500 and the communication means 600, or it can be obtained in advance by the recording / reproducing device 300 and stored in the memory in the recording / reproducing device 300.
  • such a key distribution scheme to a large number of users has the potential for leakage that affects the entire system as described above. ′
  • the data processing system of the present invention as shown in the lower part of FIG.
  • the recording / reproducing device 300 needs the authentication key K a ke.
  • the recording / reproducing device 300 can obtain the authentication key directly from the recording medium 400, for example, or can be obtained in advance by the recording / reproducing device 300 and stored in the memory in the recording / reproducing device 300. Similar to the distribution key configuration described above, the distribution configuration of such a key to a large number of users has the potential for leakage that affects the entire system.
  • this authentication key K ake is used as an authentication key master key MK ake stored in the memory of the recording / reproducing device 300 and a recording device identification ID: I Dm
  • the recording / reproducing device signature key Kd e “required for the process of generating the recording / reproducing device-specific check value I CVd ev can have the same configuration as the above-described distribution key and authentication chain.
  • the recording / reproducing device signature key Kd ev was configured to be stored in the internal memory
  • the recording / reproducing device signature key master key MKd ev was stored in the memory
  • the recording / reproducing device signature key Kd ev was not stored in the internal memory. As shown in the lower part of FIG.
  • Kd ev DES (MK dev, I Dd ev) based on the ID de V and the master key MKd e V for the recording / reproducing device signature key.
  • FIG. 50 is a diagram illustrating an encryption process of content or the like using a master key in content production or an administrator, and decryption of encrypted data using a master key in a user device, for example, the recording / reproducing device 300 in the above-described embodiment. It is a processing example.
  • Step S501 in content production or management is a step of assigning an identifier (content ID) to the content.
  • Step S502 is a step of generating a key for encrypting content or the like based on the master key of the content production or manager and the content ID. This is, for example,
  • step S503 is a step of encrypting a part or all of the content with a key (for example, a distribution key Kdis).
  • the content creator distributes the encrypted content through such steps through media such as a DVD and communication means.
  • step S504 Reads out the content ID from the content data received via media, communication means, etc.
  • step S505 a key to be applied to decrypt the encrypted content is generated based on the read content ID and the owned master key.
  • step S507 use of the decrypted content, that is, reproduction or a program is executed.
  • both the content production or administrator and the user device have a master key (for example, a master key MKdis for generating a distribution key), and perform encryption and decryption of the content.
  • a master key for example, a master key MKdis for generating a distribution key
  • Necessary delivery keys are generated sequentially based on the master key possessed by each and each ID (content ID).
  • a content production or manager owns a plurality of master keys and executes a process corresponding to a content distribution target.
  • Step S 511 in content production or management is a step of assigning an identifier (content ID) to the content.
  • Step S 512 is a step of selecting one master key from a plurality of master keys (for example, a plurality of distribution key generation master keys MK dis) possessed by the content production or manager. The selection process will be further described with reference to FIG. 52.
  • a master key to be applied is set in advance in association with each country of the content user, each model, or each version of the model, and the setting is performed. In accordance with the following.
  • step S 514 is a step of encrypting a part or all of the content with a chain (for example, a distribution key Kd isi).
  • the content creator uses the content ID, the used masker key identification information, and the encrypted content as a distribution unit for the encrypted content, such as a DVD or other media, a communication means, or the like. Deliver via.
  • step S516 the master key corresponding to the master key identification information in the content data distributed via media such as a DVD or communication means. Determine whether or not you own If there is no master key corresponding to the master-key identification information in the content data, the distribution content cannot be used in the user device, and the process ends.
  • step S 517 If the user owns the master key corresponding to the master-key identification information in the distributed content data, the content ID is determined from the content data received via the media, the communication means, etc. in step S 5 17. read out.
  • step S5108 a chain to be applied to decryption of the encrypted content is generated based on the read content ID and the owned master key.
  • step S 519 the content is decrypted using this key, and in step S 520, use of the decrypted content, that is, reproduction or program is executed.
  • the content production or manager has a master key set including a plurality of master keys, for example, a plurality of distribution key generation master keys MK disl to n.
  • the user device has one master key, for example, one distribution key generation master key KK disi, and The user device can decrypt and use the content only when the administrator performs encryption processing using MK d 'isi.
  • FIG. 52 shows an example in which a different master key is applied for each country.
  • the content provider has master keys ⁇ 1 to ⁇ , and MK1 is used to generate a key to execute the encryption processing of the content to be delivered to the user device for Japan.
  • an encryption key K1 is generated from the content ID and MK1, and the content is encrypted by ⁇ 1.
  • ⁇ 2 is used to generate a key to execute the encryption processing of the content delivered to the user device for US
  • MK3 is the key to execute the encryption processing of the content to be delivered to the user device for EU (Europe). It is set to be used for generation.
  • the master key MK1 is stored in its internal memory in a user device for Japan, specifically, a recording / reproducing device such as a PC or a game device sold in Japan.
  • MK 2 is stored in its internal memory
  • the user device for the EU has a master key MK 3 stored in its internal memory.
  • the content provider performs the encryption process of the content that is delivered to the user device by selectively using the master key from the master keys MK1 to n according to the user device that can use the content.
  • the content is encrypted with the link K1 generated using the master key MK1.
  • This encrypted content can be decrypted using the master key MK1 stored in the user device for Japan, that is, a decryption key can be generated, but it is stored in another US or EU user device. Since the key K1 cannot be obtained from the master keys MK2 and MK3, decryption of the encrypted content becomes impossible.
  • Figure 52 shows an example of distinguishing the master key by user device country.
  • Various usage forms are possible, such as switching the master key according to the model of the device or the version.
  • FIG. 53 shows a processing example in which an identifier unique to a medium, that is, a medium ID and a master key are combined.
  • the medium is a medium storing content such as a DVD and a CD.
  • the media ID may be unique for each individual medium, for example, may be unique for each title of content such as a movie, or may be unique for each production lot of media. As described above, various methods can be used as the media ID allocation method.
  • Step S521 in the media production or management is a step of determining an identifier (media ID) for the media.
  • step S523 is a step of encrypting a part or all of the media storage content with a key (for example, a distribution key Kdis). The media producer supplies the content storage media that has been encrypted through these steps.
  • the user device such as the recording / reproducing device 300 reads the medium ID from the supplied medium in step S524.
  • the content is decrypted using the key, and in step S527, the decrypted content is used, that is, the reproduction or the program is executed.
  • both the media production or administrator and the user device use a master key (for example, a master key MKd is ), And sequentially generates distribution keys required for content encryption and decryption based on their own master key and each ID (media ID).
  • a master key MKd for example, MKd is
  • the content in the media can be decrypted by the third party, but the decryption of the content stored on other media with a different media ID is prevented.
  • This has the effect of minimizing the impact of the disclosure of one media key on the entire system.
  • the user device side that is, the recording / reproducing device does not need to hold the key association list for each medium.
  • FIG. 54 shows an example of processing in which an identifier unique to a recording / reproducing device, that is, a recording / reproducing device ID and a master key are combined.
  • Step S531 in the recording / reproducing apparatus user is a step of generating a key for encrypting content or the like based on the master key stored in, for example, the internal memory of the recording / reproducing apparatus and the recording / reproducing apparatus ID.
  • step S532 is a step of encrypting a part or all of the stored content with a key (for example, a distribution key Kcon).
  • the encrypted content is stored in a recording device such as a hard disk.
  • the system administrator managing the recording / reproducing device receives a request from the recording / reproducing device user who has stored the content to restore the stored data.
  • the recording / reproducing device sends the recording / reproducing device ID. Is read.
  • the content is decrypted using this key.
  • both the recording / reproducing user and the system administrator have a master key (for example, a master key MK con for content key generation), and encrypt and decrypt the content.
  • the distribution key required for each is sequentially generated based on the owning master key and each ID (recorder / reproducer ID).
  • FIG. 55 shows a configuration in which an authentication chain used for a mutual authentication process between a slave device, for example, a recording device such as a memory card, and a host device, for example, a recording / reproducing device, is generated based on one master key.
  • a slave device for example, a recording device such as a memory card
  • a host device for example, a recording / reproducing device
  • the slave device which is a recording device, performs mutual processing based on the master key and the slave device ID stored in the internal memory of the slave device, which is a recording device, as initialization processing before the start of authentication processing in step S541.
  • Generate an authentication key Kake to be used for authentication processing. This is generated by, for example, K a ke D E S (M K a ke, slave device I D).
  • the generated authentication key is stored in the memory.
  • step S543 the slave device ID is read from the attached recording device, that is, the slave device, via the communication means.
  • step S544 the read An authentication key to be applied to mutual authentication processing is generated based on the obtained slave device ID and the owned authentication key generation master key.
  • This generation processing is, for example, an authentication key K ake-DES (M ake, slave device ID).
  • step S545 an authentication process is performed using this authentication key.
  • both the slave device and the master device have a master key, that is, a master key MKake for generating an authentication key, and sequentially generate authentication keys necessary for mutual authentication processing. It is generated based on its own master key and slave device ID.
  • information such as keys necessary for a procedure related to cryptographic information processing between two entities such as between a content provider and a recording / reproducing device or between a recording / reproducing device and a recording device is stored.
  • the configuration is such that the master key and each ID are generated sequentially. Therefore, even if key information is leaked from each entity, the range of damage caused by individual keys is further limited, and it is not necessary to manage the key list for each individual entity as described above.
  • the signal processing between the recording / reproducing device 300 and the recording device 400 is mainly performed by the single DES configuration described above with reference to FIG. 7 in order to facilitate understanding of the description.
  • the example using the encryption processing has been described.
  • the encryption processing method applied to the data processing device of the present invention is not limited to the above-mentioned simple DES method, and an encryption method according to a required security state is adopted. Is possible.
  • a triple DES scheme such as the configuration of FIGS. 8 to 10 described above may be applied.
  • Both the cryptographic processing unit 401 of the chair 400 can execute the Triple DES method, and can execute the processing corresponding to the Triple DES encryption processing described in FIGS. 8 to 10. It is.
  • the content provider may set the content key K con to a 64-bit key configuration using the single DES method in order to prioritize the processing speed according to the content. May be a 128-bit or a 192-bit key configuration using the triple DES method. Therefore, the configuration of the encryption processing unit 302 of the recording / reproducing device 300 and the encryption processing unit 401 of the recording device 400 can be adapted to either the triple DES method or the single DES method. It is not preferable to adopt a simple configuration. Therefore, it is desirable that the encryption processing section 302 of the recording / reproducing apparatus 300 and the encryption processing section 401 of the recording device 400 be configured to be compatible with both the single DES and the triple DES.
  • the encryption processing unit 302 of the recording / reproducing device 300 and the encryption processing unit 401 of the recording device 400 are configured to be able to execute both the single DES method and the triple DES method. In order to do this, they have to configure different circuits and logic. For example, in order to execute processing corresponding to Triple DES in the recording device 400, it is necessary to newly store the instruction set of Triple DES in the command register shown in FIG. This complicates the processing unit included in the recording device 400.
  • the data processing apparatus of the present invention has a single DES configuration for the logic of the encryption processing unit 401 on the recording device 400 side, and can execute processing corresponding to triple DES encryption processing.
  • step S101 of this step an authentication process is executed, and a session key Kses is generated here.
  • step S 117 the content key K con is encrypted by the session key K ses in the signal processing unit 302 of the recording / reproducing device 300, and the encryption key is stored in the recording device.
  • step S118 the encryption processing unit 400 of the recording device 400, which has been transferred to the storage device 400 via communication means and received the encryption key, transmits the content key Kcon with the session key Kses.
  • the reproducer 300 forms the data format (step S122), transmits the formatted data to the recording device 400, and the recording device 400 transmits the received data to the external memory 400. 2 is being processed.
  • the encryption processing in the signal processing unit 401 of the recording device 400 executed between steps S117 and S118 can be performed using either the single DES method or the trynole DES method. If the content provider provides content data using the content key K con according to Triple DES, it also provides content data using the content link K con according to single DES. In both cases, it is possible to deal with both cases.
  • FIG. 56 shows the triple DES method using both the encryption processing unit 302 of the recording / reproducing device 300 and the encryption processing unit 401 of the recording device 400 in the data processing device of the present invention. 4 shows a flow illustrating a configuration for executing a cryptographic processing method.
  • FIG. 56 shows an example of encryption processing of the content key Kc ⁇ using the storage key Kstr executed when the content data is downloaded from the recording / reproducing device 300 to the recording device 400 as an example.
  • content key K c ⁇ ⁇ force S Triple DES method is shown as an example in the case of a key.
  • a processing example is shown as a representative of the content key Kc ⁇ , but the same processing can be performed for other data such as another key or content.
  • the process uses two or three keys as a 128-bit key or a 19-bit key configuration when using a 64-bit key or triple DES.
  • these three content keys be Kcon1, Kcon2, (Kcon3), respectively.
  • K con 3 is shown in parentheses because it may not be used in some cases.
  • Step S301 is a mutual authentication processing step between the recording / reproducing device 300 and the recording device 400. This mutual authentication processing step is executed by the processing of FIG. 20 described above. At the time of this authentication processing, a session key K se s is generated.
  • step S302 a check processing of each check value, check value A, check value B, content check value, total check value, and each ICV is executed.
  • step S303 the recording / reproducing apparatus 300 controls the recording / reproducing apparatus encryption processing section 302.
  • the unit 306 uses the encryption / decryption unit 308 of the recording / reproducing device encryption processing unit 302 and uses the previously extracted or generated distribution key K dis to receive the media 504 Alternatively, the content key K con stored in the header part of the data received from the communication means 600 via the communication section 305 is decrypted.
  • the content key is a key based on the triple DES scheme, and is a content key Kcon1, Kcon2, (Kcon3).
  • step S 304 the control unit 306 of the recording / reproducing device signal processing unit 302, the encryption / decryption unit 308 of the recording / reproducing device encryption processing unit 302, Only the content key K c ⁇ ⁇ 1 in the content keys K con 1, K con 2, (K con 3) decrypted in S 303 is shared by the session key K ses shared during mutual authentication. Encrypt.
  • the control unit 301 of the recording / reproducing device 300 stores data including the content key K con 1 encrypted with the session key K ses in the recording / reproducing device encryption processing unit of the recording / reproducing device 300.
  • the data is read from 302 and these data are transmitted to the recording device 400 via the recording device controller 303 of the recording / reproducing device 300.
  • step S305 the recording device 400 that has received the content key Kcon1 transmitted from the recording / reproducing device 300 transmits the received content key Kcon1 to the recording device signal processing.
  • the encryption / decryption unit 406 of the unit 401 decrypts it with the session key K ses shared during mutual authentication.
  • step S306 the recording device is re-encrypted with the storage device-specific storage key K str stored in the internal memory 405 of the recording device encryption processing unit 401, and transmitted via the communication unit 404. To the recording / reproducing device 300.
  • step S307 the control unit 360 of the recording / reproducing device signal processing unit 302, the encryption / decryption unit 330 of the recording / reproducing device encryption processing unit 302, performs step S307. Encrypt only the content key K con 2 in the content keys K con 1, K con 2, (K con 3) decrypted with 303 with the session key K ses shared during mutual authentication .
  • the control unit 301 of the recording / reproducing device 300 sends data including the content key K con 2 encrypted with the session key K ses from the recording / reproducing device encryption processing unit 302 of the recording / reproducing device 300.
  • the data is read and transmitted to the recording device 400 via the recording device controller 303 of the recording / reproducing device 300.
  • step S308 the recording device 400 that has received the content key Kcon2 transmitted from the recording / reproducing device 300 transmits the received content key Kcon2 to the recording device encryption processing unit. It is decrypted by the session key K ses shared at the time of mutual authentication by the encryption and decryption unit 410 of the 401. Further, in step S309, the recording device is re-encrypted with the storage device-specific storage key K str stored in the internal memory 405 of the recording device encryption processing unit 401, and transmitted via the communication unit 404. To the recording / reproducing device 300.
  • step S310 the control unit 360 of the recording / reproducing device signal processing unit 302, the encryption / decryption unit 308 of the recording / reproducing device signal processing unit 302, Only the content key K con 3 in the content keys K con 1, K con 2, and (K con 3) decrypted in S 303 is encrypted with the session key K ses shared during mutual authentication. I do.
  • the control unit 310 of the recording / reproducing device 300 sends data including the content key K con 3 encrypted with the session key K ses from the recording / reproducing device encryption processing unit 302 of the recording / reproducing device 300.
  • the data is read and transmitted to the recording device 400 via the recording device controller 303 of the recording / reproducing device 300.
  • step S 311 the recording device 400 that has received the content link K con 3 transmitted from the recording / reproducing device 300 transmits the received content key K con 3 to the recording device encryption processing unit. Decryption is performed by the session key K ses shared at the time of mutual authentication by the symbol / decryption unit 406 of 401. Further, in step S 312, the communication unit 4104 is re-encrypted with the storage device-specific storage key K str stored in the internal memory 405 of the recording device signal processing unit 401, and And sends it to the recording / reproducing device 300.
  • step S 3 13 the encryption processing unit of the recording / reproducing device forms the various data formats described in FIGS. 32 to 35 and transmits the data format to the recording device 400.
  • the recording device 40 stores the received data for which the format formation has been completed in the external memory 402.
  • the format data includes a content key Kcon1, Kcon2, (Kcon3) encrypted with the storage key Kstr.
  • the recording device 400 repeatedly executes the same mode of processing, that is, the processing steps of steps S305 and S306 multiple times only by changing its target.
  • the key to which Triple DES is applied can be stored in the memory.
  • steps S305 and S306 are executed, the formatting process of step S313 is executed, and the content is stored in the memory. .
  • a command for executing the processing of steps S305 and S306 is stored in the command register of FIG. 29 described above, and this processing is performed in the form of a content key, that is, a triple DES method.
  • the configuration may be appropriately executed once to three times. Therefore, both the triple DES method and the single DES method can be performed without including the triple DES processing method in the processing logic of the recording device 400.
  • the decoding method can be determined by recording it in the handling policy in the header part of the content data and referring to this.
  • the handling policy stored in the header part of the content data used in the data processing device of the present invention includes the content type and the activation priority. Information is included.
  • the recording / reproducing device 300 in the data processing apparatus of the present invention stores the accessible content data recorded on a recording device 400 or various recording media such as a DVD, a CD, a hard disk, and a game cartridge. If there is more than one, the activation order of these contents is determined according to the activation priority information. ''
  • the recording / reproducing device 300 performs the authentication process with various recording devices such as DVD device, CD drive device, and hard disk drive device, and then performs the highest priority according to the priority information in the content data.
  • the program in the content data with the highest priority is executed with priority.
  • this “program activation processing based on the activation priority in the handling policy for content data” will be described.
  • the recording / reproducing device 300 is not limited to a recording device 400 as shown in FIG. 2, but also a DVD, a CD, a hard disk, a PI 011 It has a configuration that allows access to various recording media such as a memory card and a game cartridge connected via 112.
  • FIG. 2 shows only one reading unit 304 to avoid complicating the drawing, the recording / reproducing unit 304 may be a different storage medium, such as a DVD, a CD, a floppy disk, or a hard disk. Can be mounted in parallel.
  • the recording / reproducing device 300 can access a plurality of storage media, and each of the storage media stores content data.
  • content data supplied by an external content provider such as a CD is stored on the media in the data configuration shown in FIG. 4 described above, and when downloaded via these media or communication means, the content data shown in FIG.
  • the content data structure shown in Fig. 27 is stored in each storage medium such as a memory card.
  • the content data is stored in different formats on a medium and a recording device according to the format type of the content data.
  • the handling policy in the header of the content data includes the content type and activation priority information. The content activation process of the recording / reproducing device when access to a plurality of content data is possible will be described according to a flow.
  • FIG. 57 is a process flow showing a process example (1) when there are a plurality of startable contents.
  • Step S611 is a step of executing a recording device authentication process accessible by the recording / reproducing device 300.
  • the accessible recording devices include a memory card, a DVD device, a CD drive, a hard disk device, and, for example, a game cartridge connected via PI0111 and SIO112.
  • the authentication process is executed for each recording device under the control of the control unit 301 shown in FIG. 2, for example, according to the procedure described above with reference to FIG.
  • step S612 an executable program is detected from the content data stored in the memory of the recording device that has been successfully authenticated. This is Specifically, it is executed as a process of extracting a program whose content type included in the content data handling policy is a program.
  • step S613 the startup priority of the bootable programs extracted in step S612 is determined. Specifically, this is a process of comparing the priority information included in the handling information in the header of the plurality of startable content data selected in step S612 and selecting the highest priority.
  • the program selected in step S 6 14 is started. In the case where the priorities set in a plurality of bootable programs are the same, a default priority is set among the recording devices, and the content program stored in the highest priority device is set. Execute.
  • Fig. 58 shows a processing mode in which identifiers are set for a plurality of recording devices, and authentication processing and content program search are sequentially performed on the recording devices with each identifier, that is, processing when there are a plurality of bootable contents.
  • Example (2) is shown.
  • Step S621 is a step of executing an authentication process (see FIG. 20) of the recording device (i) attached to the recording / reproducing device 300.
  • a plurality (n) of recording devices are assigned an identifier of 1 (1 to n on the first page).
  • step S622 it is determined whether or not the authentication in step S621 is successful, and if the authentication is successful, the process proceeds to step S623 and the recording medium of the recording device (i) is determined. Search for executable programs from inside. If the authentication is not successful, the process proceeds to step S627, and the presence or absence of a recording device capable of searching for new content is determined. If not, the process ends. If the recording device exists, the process proceeds to step S627. Proceed to 8 to update the recording device identifier i, and repeat the authentication processing steps from step S621.
  • the process in step S6223 is a process of detecting a startable program from the content data stored in the recording device (i). This is, specifically, the content included in the content data handling policy.
  • step S624 it is determined whether or not the content type program is extracted. If the content type is extracted, in step S625, the program having the highest priority among the extracted programs is selected. In step S626, the selection program is executed.
  • step S624 If it is determined in step S624 that a program whose content type is a program has not been extracted, the flow advances to step S6272 to determine whether or not there is a recording device for searching for new content. If the recording device exists, the flow advances to step S628 to update the recording device identifier i, and the authentication processing steps from step S621 are repeated.
  • FIG. 59 is a process flow showing a process example (3) when there are a plurality of startable contents.
  • Step S651 is a step of executing an authentication process of a recording device accessible by the recording / reproducing device 300. Executes authentication processing for accessible DVD devices, CD drives, hard disk devices, memory cards, game cartridges, etc. The authentication process is executed for each recording device under the control of the control unit 301 shown in FIG. 2, for example, according to the procedure described above with reference to FIG.
  • step S652 a bootable program is detected from the content data stored in the memory of the recording device that has been successfully authenticated. Specifically, this is executed as a process of extracting a program whose content type included in the content data handling policy is a program.
  • step S653 information such as the name of the startable program extracted in step S652 is displayed on the display means.
  • the display means is not shown in FIG. 2, the data output as the AV output data is output to the display means (not shown).
  • the user-provided information such as the program name of each content data is stored in the identification information of the content data, and is transmitted via the control unit 301 under the control of the main CPU 106 shown in FIG.
  • the program information such as the program name of each content data that has been authenticated is output to the output means.
  • step S654 the input interface, controller, The main CPU 106 receives a program selection input by the user from input means such as a mouse or a keyboard via the interface 110, and executes the user selection program in step S655 according to the selection input. I do.
  • the program start priority information is stored in the handling information in the header in the content data, and the recording / reproducing device 300 starts or displays the program according to this priority order. Since the startup program information is displayed on the means and selected by the user, there is no need for the user to search for the program, and the time required for startup and labor of the user can be saved. In addition, all bootable programs are started after the recording device is authenticated, or displayed as a bootable program, so the process of selecting the program and then confirming its validity is complicated. Is eliminated.
  • the recording / reproducing device 300 downloads content from the medium 500 or the communication means 600 or performs reproduction processing from the recording device 400.
  • the above description has centered on the processing of encrypted data associated with content download or playback processing.
  • the control unit 301 in the recording / reproducing device 300 in FIG. 3 is a device 500 such as a DVD for providing content data, a communication means 600, a process of downloading or reproducing content data from a recording device. It controls the overall authentication, encryption, and decryption processes associated with the authentication.
  • Reproducible contents obtained as a result of these processes are, for example, audio data, image data, and the like.
  • the decoded data is placed under the control of the main CPU shown in FIG. 2 from the control unit 301, and is output to the AV output unit according to audio data, image data, and the like.
  • the audio data is decoded and output by the MP3 decoder of the AV output unit shown in FIG.
  • the MPEG 2 decoder of the AV processing unit executes decompression processing. Will be output.
  • the data included in the content data may have been subjected to compression (encoding) processing, and some data may not have been subjected to compression processing. I do.
  • the data processing device of the present invention has a structure in which compressed data and its decoding (decompression) processing program are stored together in the data content, or the link information between the compressed data and the decoding (decompression) processing program is stored in the content.
  • a configuration for storing data as header information is disclosed.
  • Fig. 60 shows a simplified diagram of the elements related to this configuration and related elements from the overall data processing diagram shown in Fig. 2.
  • the recording / reproducing device 300 receives various contents from a device 500 such as a DVD, a CD, or the like, a communication device 600, or a recording device 400 such as a memory card storing the contents.
  • contents are audio data, still images, moving image data, program data, etc., and are those that have been subjected to encryption processing, those that have not been subjected to compression processing, and those that have been subjected to compression processing.
  • Various data such as those that have not been included.
  • the control of the control unit 301 and the decryption processing of the encryption processing unit 302 are performed by the method described in the above item. .
  • the decrypted data is transferred to the AV processing unit 109 under the control of the main CPU 106 and stored in the memory 309 of the AV processing unit 109.
  • the analysis of the content configuration is performed. For example, if a data decompression program is stored in the content, the program is stored in the program storage unit 309. If data such as audio data and image data is included, these are stored in the data storage unit 309. Remember in 2.
  • the decompression processing section 3904 executes decompression processing of the compressed data stored in the data storage section 3902 by using a decompression processing program such as MP3 stored in the program storage section. Output to monitor 3001 and monitor 302.
  • audio data is shown as an example of content
  • MP3 is applied as an example of a compression program.
  • this configuration is applicable not only to audio data but also to image data.
  • MP3 but also various programs such as MPEG2 and 4 can be applied to the compression / expansion processing program.
  • FIG. 61 shows a content configuration example.
  • FIG. 61 shows an example in which the music data 6102 compressed by the MP3 and the MP3 decoding (expansion) processing program 6101 are combined into one content. These contents are stored in the medium 500 or the recording device 400 as one content, or distributed from the communication means 600. If these contents are encrypted as described above, the recording / reproducing unit 300 executes decryption processing by the signal processing unit 303 and then executes the AV processing unit 109 Is forwarded to
  • the content analysis unit 3101 of the AV processing unit 109 analyzes the received content and converts the content consisting of the audio data decompression program (MP3 decoder) and the compressed audio data part into an audio data decompression program (MP (3 Decoder)
  • MP3 decoder the audio data decompression program
  • MP (3 Decoder) The section is taken out, the program is stored in the program storage section 3093, and the compressed audio data is stored in the data storage section 3092.
  • the content analysis unit 3101 receives information such as the content name and content configuration information received separately from the content, or identifies the identification data such as the data name included in the content, data length, Content analysis may be performed based on data indicating a data configuration or the like.
  • the compression / decompression processing unit 3094 executes the MP3 compression stored in the data storage unit 392 according to the audio data decompression program (MP3 decoder) stored in the program storage unit 3093.
  • the audio data decompression process is performed, and the AV processing unit 109 outputs the decompressed audio data to the speaker 3001.
  • FIG. 62 shows a flow chart illustrating an example of a reproduction process of data having the content configuration shown in FIG. 61. Is shown.
  • step S670 the data name stored in the memory 390 of the AV processing unit 109, for example, in the case of music data content, information such as a song name and the like received separately from the content, or in the content And display it on the monitor 302.
  • step S672 the user's selection is received from various input means such as a switch and a keyboard via the input interface 110, and the reproduction process based on the user input data is controlled under the control of the CPU 106.
  • the instruction is output to the AV processing unit 109.
  • the AV processing unit 109 executes data extraction and decompression processing by user selection in step S673.
  • Fig. 63 shows a configuration example in which one content contains either compressed audio data or a decompression processing program, and further includes content information indicating the content of the content as header information of each content. Show.
  • the header information 622 when the content is a program 622, the header information 622 includes content identification information indicating that the program is a program and the program type is an MP3 decompressed program. It is.
  • the audio data 620 when the audio data 620 is included as the content, the content information of the header 623 includes information indicating that the data is MP3 compressed data.
  • the header information for example, only the information necessary for reproduction is selected from the data included in the content data configuration handling policy shown in FIG. 4 (see FIG. 5) and transferred to the AV processing unit 109. It is possible to configure by adding to.
  • handling policy data required by the encryption processing unit 302 and the data required during the playback processing by the AV processing unit 109 are included in each configuration data in the “handling policy” shown in FIG.
  • the AV processing unit 109 can extract only those identification values indicating that these identification values are necessary and use the extracted identification values as header information.
  • the content analysis section 310 of the AV processing section 109 that has received each content shown in FIG. 63 stores the program content in the program storage section 303 according to the header information if the program is a program, and In the case of, the data content is stored in the data storage unit 392. After that, the compression / decompression processing section 3 0 9 4 The data is taken out from the data storage unit, and decompression processing is executed according to the MP3 program stored in the program storage unit 309 and output. If the same program is already stored in the program storage unit 309, the program storing process may be omitted.
  • FIG. 64 shows a flow chart illustrating an example of a reproduction process of data having the content configuration of FIG. 63.
  • the data name stored in the memory 309 of the AV processing unit 109 for example, in the case of music data content, information such as a song name received separately from the content, or in the content And display it on the monitor 302.
  • the user's selection is received from various input means such as a switch and a keyboard via the input interface 110.
  • a search program for example, MP3 for reproducing data corresponding to the user selection is retrieved.
  • the maximum search range of the program search target is preferably an accessible range of the recording / reproducing device 300.
  • each medium 500, communication means 600, recording device 400 0 etc. is also set as the search range.
  • the content passed to the AV processing section 109 is only the data section, and the program content may be stored in another recording medium in the recording / reproducing apparatus 300, and may be transmitted via a medium such as a DVD or CD. It may be provided by a content provider. Therefore, a search target is a range in which the recording / reproducing device 300 can access and store the data.
  • a reproduction program is found as a result of the search, a reproduction processing instruction based on the user input data is output to the AV processing unit 109 under the control of the CPU 106.
  • the AV processing unit 109 executes data extraction and decompression processing according to the user selection in step S679. Further, as another embodiment, a program search may be performed before step S675, and in step S675, only data in which a program is detected may be displayed.
  • one content contains compressed audio data 6303 and a decompression processing program 6302, and the content is further included as content header information 6301.
  • 5 shows an example of a configuration that includes the reproduction priority information of the two. This is an example in which reproduction priority information is added as header information to the content configuration shown in FIG. This is based on the playback priority set between the contents received by the AV processing unit 109, as in “(14) Program start processing based on the start priority in the handling policy for content data” described above. The reproduction order is determined based on the reproduction order.
  • FIG. 66 shows a flow chart illustrating an example of a reproduction process of data having the content configuration of FIG. 65.
  • a step S681 sets the data stored in the memory 390 of the AV processing unit 109, that is, the data information of the data to be reproduced in the search list.
  • the search list is set using a partial area of the memory in the AV processing unit 109.
  • step S6882 the data analysis section 3101 of the AV processing section 109 selects high-priority data from the search list in the content analysis section 310, and in step S6883, the selected data is selected. Execute data playback processing.
  • FIG. 67 shows an example in which one content is composed of any combination of header information and program data 640 or header information 640 and compressed data 640.
  • An example of a configuration in which reproduction priority information is added to only the header 6403 is shown.
  • FIG. 68 shows a flow chart illustrating an example of a process of reproducing data having the content configuration of FIG. 67.
  • a step S691 sets the data stored in the memory 390 of the AV processing unit 109, that is, the data information of the data to be reproduced in the search list.
  • the search list is set using a partial area of the memory in the AV processing unit 109.
  • the content analysis unit 3101 of the AV processing unit 109 selects data having a high priority from the search list.
  • step S693 a data reproduction program (for example, MP3) corresponding to the selected data is searched.
  • the program search target it is preferable that the maximum search range be the access storage range of the recording / reproducing device 30 ⁇ similarly to the processing in the flow of FIG. 64 described above.
  • each medium 50 shown in FIG. 0, communication means 600, recording device 400, etc. are also set as the search range. If a playback program is found as a result of the search (Yes in step S694), in step S695, the selected data is subjected to decompression playback processing using the program obtained as a result of the search. .
  • step S694 if no program is detected as a search result (Yes in step S694), the process proceeds to step S696, and other data included in the search list set in step S691 , Those that require playback using the same program are deleted. This is because it is clear that even if a new playback program search for the data is executed, no data is detected. Further, in step S6997, it is determined whether the search list is empty. If the search list is not empty, the process returns to step S692, and the next higher priority data is extracted, and the program search process is executed. I do.
  • the compressed content is composed of only the compressed data composed of the decryption (decompression) program or the compressed data, or if the decompression processing program is the only content, Since it has header information indicating what kind of compressed data the content is and what kind of processing is to be executed, the processing unit (for example, AV processing unit) that has received the content converts the compressed data into Either execute the decompression / reproduction processing using the attached decompression processing program, or search for the decompression processing program based on the header information of the compressed data, and perform the decompression / reproduction processing according to the program obtained as a result of the search.
  • the configuration having the reproduction priority information in the header a configuration in which the reproduction order is automatically set is possible, and the operation of setting the reproduction order by the user can be omitted.
  • the data processing device of the present invention provides a game processing system in which, for example, the content executed by the recording / playback device 300 is a game program or the like. If you want to interrupt the program halfway and restart anew after a predetermined time, save the game state at the time of the interruption, that is, store it in a recording device, read it out when resuming, and continue the game. It has a possible configuration.
  • the configuration of save data storage in a conventional game machine, a personal computer or other recording / reproducing device is, for example, a configuration in which the save data is stored in a storage medium such as a memory card, a floppy disk, a game cartridge, or a hard disk which can be built in or external to the recording / reproducing device.
  • a storage medium such as a memory card, a floppy disk, a game cartridge, or a hard disk which can be built in or external to the recording / reproducing device.
  • the configuration is such that the data set processing is performed according to the common specification of the game application program.
  • save data saved using a certain recording / reproducing device A may be used or rewritten by another game program, and conventionally, security of the save data has hardly been considered. This is the actual situation.
  • the data processing device of the present invention provides a configuration capable of realizing such security of save data.
  • save data of a certain game program is encrypted based on information usable only by the game program and stored in the recording device.
  • the data is encrypted based on the information unique to the recording / reproducing device and stored in the recording device.
  • FIG. 69 is a block diagram illustrating a save data storage process in the data processing device of the present invention.
  • the content is provided to the recording / reproducing device 300 from a medium 500 such as a DVD or a CD, or from the communication means 600.
  • the content provided is As described above, the content is encrypted with the content key K con, which is a key unique to the content, and the recording / reproducing device 300 executes the process described in “(7) Download process from recording / reproducing device to recording device”.
  • the content key is obtained according to the processing described in the section (see FIG. 22), and the encrypted content is decrypted and stored in the recording device 400.
  • the recording / reproducing device 300 decodes and reproduces the content program from a medium or a communication means, executes the program, and after execution, externally saves the obtained save data, or uses a built-in memory card, a hard disk, or the like.
  • the recording device 400 Play and execute the content from the OA and attach the saved data to an external device or to a built-in memory card, hard disk, or other recording device 400A, 400B, or 400C. Processing to be Stored The processing to be stored in the recording device 400 and reproduced will be described.
  • the recording / reproducing device 300 has a recording / reproducing device identifier ID dev, a system signature key K sys, which is a signature key common to the system, and a recording, which is a signature key unique to each recording / reproducing device. It has a regenerator signature key K dev and a master key for generating various individual keys.
  • the master key is, for example, a key for generating a distribution key Kd is or an authentication key K ak, as described in detail in “(1 2) Encryption processing key generation configuration based on master key”.
  • M Kx is shown as a representative of all the master keys of the recording / reproducing device 300 without limiting the type of the master key.
  • the save data No. key KsaV is used to encrypt the save data when storing it in the various recording devices 400A to 400C, and to decrypt the save data when reproducing from the various recording devices 400A to 400C.
  • the encryption key used for An example of the storage processing and the reproduction processing of the sep data will be described with reference to FIG.
  • FIG. 70 is a flowchart of a process of storing save data in any of the recording devices 40 OA to 40 C using either the content private key or the system common key. Note that The process in each flow is a process executed by the recording / reproducing device 300, and the recording device for storing save data in each flow may be any of the built-in and external recording devices 400A to C. It is not limited to either.
  • Step S701 is processing in which the recording / reproducing device 300 reads out a content identifier, for example, a game ID. This is the data included in the identification information in the content data shown in FIGS. 4, 26, 27, and 32 to 35 described above.
  • the storage data storage instruction is input to the input interface 11 shown in FIG.
  • the main CPU 106 received via 0 instructs the control unit 301 to read the content identifier.
  • the control unit 301 controls the header in the content data via the reading unit 304. If the execution program is a content stored in the recording device 400, the identification information is retrieved via the recording device controller 303. If the recording / reproducing device 300 is executing a content program and the content identifier is already stored in the RAM or other accessible recording medium in the recording / reproducing device, a new reading process is performed. Without running
  • the identification information included in the read data may be used.
  • step S702 is a step of changing the processing depending on whether or not the use of the program is restricted.
  • the program use restriction is restriction information for setting whether or not to impose a restriction that save data to be saved can be uniquely used only for that program.
  • Program use is restricted ”, and save data that is not restricted by the program is“ unrestricted program use ”. This may be set arbitrarily by the user, or may be set by the content creator, and this information may be stored in the content program. Are stored as data management files in the recording devices 400A to 400C.
  • Figure 71 shows an example of a data management file.
  • the data management file contains data numbers, content identifiers, recorder / reproducer identifiers, and programs that contain program usage restrictions. Generated as a pull.
  • the content identifier is identification data of a content program for which save data is to be stored.
  • the recording / reproducing device identifier is the identifier of the recording / reproducing device storing the save data, for example, [ID de V] shown in FIG. 69.
  • the program use restriction is set to “Yes” when the saved data to be saved is uniquely usable only for that program, and is set to “No” when the saved data can be used without being restricted to the corresponding program.
  • the program use restriction may be arbitrarily set by the user of the content program, or may be set by the content creator, and this information may be stored in the content program.
  • step S703 a content-specific key, for example, the content key Kcon described above is read from the content data, and the content-specific key is used as the save data encryption key KsaV, or based on the content-specific key. Generate save data ⁇ No. key K sa V.
  • step S 702 if “NO” is set for the program use restriction, the process proceeds to step S 707.
  • the system common key stored in the recording / reproducing device 300 for example, the system signature key Ksys
  • the system signature key K Set sys is read from the internal memory 300 of the recording / reproducing device 300, and the system signature key K Set sys as the save data encryption key K sa V, or generate the save data encryption key K sa V based on the system signature key.
  • another encryption key that is separately stored in the internal memory 307 of the recording / reproducing device 300 and is different from the other keys may be used as the save data encryption key KsaV.
  • step S704 the save data encryption process is executed using the save data encryption key KsaV selected or generated in step S703 or step S707.
  • This encryption process is executed by the symbol processing unit 302 in FIG. 2 by applying, for example, the DES algorithm described above.
  • the save data encrypted in step S704 is stored in the recording device in step S705.
  • the user selects one of the recording devices 400A to C in advance as a save data storage destination.
  • step S706 the program use restriction information previously set in step S702 is written into the data management file described earlier with reference to FIG. 71, that is, the program use restriction "Yes" or " Do not write ".
  • step S702 Yes, that is, "program use restriction” is selected, and in step S703, encryption is performed using the save data encryption key KsaV generated based on the content unique key.
  • the processed save data cannot be decrypted by a content program that does not have content-specific key information, and save data can be used only by content programs that have the same content key information.
  • the save data encryption key K sa V is not generated based on information unique to the recording / reproducing device, so the save data stored in a removable recording device such as a memory card is different.
  • the recording / reproducing device can reproduce the content as long as it is used with the corresponding content program.
  • step S 702 No, that is, “no program use restriction” is selected, and in step S 707, the save data encrypted by the save data encryption key K sav based on the system common key, Can be reproduced and used even when a program with a different content identifier is used or when a recording / reproducing device is different.
  • FIG. 72 is a flowchart showing a process of reproducing the save data stored by the save data storage process of FIG.
  • Step S711 is processing in which the recording / reproducing device 300 reads out a content identifier, for example, a game ID. This is the same process as step S701 of the save data storage process in FIG. 70 described above, and is included in the identification information in the content data. This is the process of reading the data to be read.
  • step S711 the data management file described with reference to FIG. 71 is read from the recording devices 40OA to shown in FIG. 69, and the content identifier read in step S711, And extract the program use restriction information set correspondingly. If the program use restriction set in the data management file is "YES”, the process proceeds to step S714, and if "NO”, the process proceeds to step S717.
  • a content-specific key for example, the content key Kcon described above is read from the content data and the content-specific key is used as the save data decryption key KsaV, or based on the content-specific key.
  • a processing algorithm corresponding to the encryption key generation process is applied, and the data encrypted based on a certain content unique key is decrypted based on the same content unique key.
  • a decryption key generation algorithm that can be decrypted by the key is applied.
  • the system stored in the recording / reproducing device 300 is set in step S 717.
  • the common key for example, the system signature key K sys is read from the internal memory 307 of the recording / reproducing device 300, and the system signature key K sys is used as the save data decryption key K sa V, or is used as the system signature key. Based on this, a save data decryption key K sa V is generated.
  • another encryption key that is separately stored in the internal memory 307 of the recording / reproducing device 300 and is different from the other keys may be used as the save data encryption key KsaV.
  • step S 715 the save data is decrypted using the save data decryption key K sa V selected or generated in step S 714 or step S 717.
  • step S 716 the decrypted save data is reproduced and executed by the recording / reproducing device 300.
  • the data management If the file is set to “Restrict program use”, the save data decryption key is generated based on the content unique key. If the setting is “No program use restriction”, the save data decryption key is generated based on the system common key. Then, the save data decryption key is generated. If "Use program restriction” is set, if the content identifiers of the used content are not the same, it will not be possible to obtain a decryption chain that enables the save data to be decrypted. Security can be improved.
  • FIGS. 73 and 74 show a save data storage processing flow (FIG. 73) and a save data reproduction processing flow (FIG. 74) for generating an encryption key and a decryption key of the save data using the content identifier. .
  • steps S721 to S722 are the same processing as steps S701 to S702 in FIG. 70, and a description thereof will be omitted.
  • the content identifier that is, the content ID is read from the content data in step S722.
  • the encryption processing unit 3007 of the recording / reproducing device 300 applies the master key MKx stored in the internal memory of the recording / reproducing device 300 to the content ID read from the content data, and performs, for example, DES.
  • the save data encryption key K sa V can be obtained by (MK x, content ID).
  • an encryption key that is separately stored in the internal memory 307 of the recording / reproducing device 300 and is different from the other keys may be used as the save data encryption key Ks'aV.
  • step S720 the system common key stored in the recording / reproducing device 300, for example, the system signature key K sys is read from the internal memory 307 of the recording / reproducing device 300, and the system signature key K sys is saved data encryption key K sav, or generates a save data encryption key K sav based on the system signature key.
  • the save data encryption key KsaV another key different from the other keys, which is separately stored in the internal memory 307 of the recording / reproducing device 300, may be used as the save data encryption key KsaV.
  • step S724 and subsequent steps is the same as the processing in step S720 and subsequent steps in the processing flow of FIG. 70 described above, and a description thereof will not be repeated.
  • FIG. 74 is a processing flow for reproducing and executing the save data stored in the recording device in the save data storage processing flow of FIG. 73, and steps S731 to S73'3 are described above. This is the same as the corresponding processing in FIG. 72, except for step S734.
  • a content identifier that is, a content ID is read from the content data and the content ID is used as a save data decryption key K sa V, or the save data decryption key K sa Generate V.
  • this decryption key generation process a processing algorithm corresponding to the encryption key generation process is applied, and data encrypted based on a certain content identifier is converted by a decryption key generated based on the same content identifier.
  • a decryption key generation algorithm that can be decrypted is applied.
  • Fig. 75 and Fig. 77 show the save data storage processing flow (Fig. 75) for generating the save data encryption key and the decryption key using the recording / playback device unique key (Fig. 75), and the save data reproduction processing flow (Fig. 77). ).
  • step S 741 is the same as step S 7101 in FIG. The explanation is omitted.
  • Step S 742 is a step of setting whether or not to limit the recording / reproducing device.
  • the recording / reproducing device limit is set to ⁇ Yes '' when limiting the recording / reproducing device that can use save data, that is, when only saving / generating and storing the saved data can be used only for the recording / reproducing device.
  • the setting is “No” when the device can be used. If the setting of “ ⁇ Restrict recording / reproducing device” is set in step S 742, the process proceeds to step S 743, and if the setting is “no”, the process proceeds to step S 747.
  • Figure 76 shows an example of a data management file.
  • the data management file is generated as a table containing items such as a data number, a content identifier, a recording / reproducing device identifier, and a recording / reproducing device restriction.
  • the content identifier is identification data of a content program for which save data is to be stored.
  • the recording / reproducing device identifier is the identifier of the recording / reproducing device storing the save data, for example, [IDdev] shown in FIG. 69.
  • the recording / reproducing device limit is set to ⁇ Yes '' when limiting the recording / reproducing device that can use save data, that is, when using only the recording / reproducing device that generated and stored save data,
  • the setting of "Never” is used when other recording / reproducing devices can be used.
  • the recording / reproducing device restriction information may be arbitrarily set by a user who uses the content program, or may be set by a content creator, and this information may be stored in the content program.
  • the recording / reproducing device 300 transmits the recording / reproducing device unique key in step S 743.
  • the recording / reproducing device signature key K dev is read from the internal memory 307 of the recording / reproducing device 300, and the recording / reproducing device signature key K dev is used as the save data encryption key K sa V, or the recording / reproducing device A save data encryption key K sa V is generated based on the signature key K dev.
  • a key different from the other keys stored separately in the internal memory 307 of the recording / reproducing device 300 may be used as the save data key KsaV.
  • step S 742 set “No” for recording / reproducing device restrictions.
  • step S 747 the system common key stored in the recording / reproducing device 300, for example, the system signature key K sys, is read from the internal memory 307 of the recording / reproducing device 300. Then, the system signature key K sys is used as the save data encryption key K sav, or the save data encryption key K sa V is generated based on the system signature key. Alternatively, another key different from the other keys stored separately in the internal memory 307 of the recording / reproducing device 300 may be used as the save data encryption key Ksav.
  • steps S744 and S745 is the same as the corresponding processing in the processing flow of FIG. 70 described above, and a description thereof will be omitted.
  • step S 746 the content identifier, the recording / reproducing device identifier, and the recording / reproducing device restriction information “yes / no” set by the user in step 742 are written in the data management file (see FIG. 76).
  • FIG. 77 is a processing flow for reproducing and executing the save data stored in the recording device in the save data storage processing flow of FIG. 75
  • step S751 is the corresponding processing of FIG. 72 described above. Reads the content identifier in the same manner as in.
  • step S752 the recording / reproducing device identifier (, IDdeV) stored in the memory in the recording / reproducing device 300 is read.
  • step S753 the information of the content identifier, the recording / reproducing device identifier, and the set recording / reproducing device restriction information “Yes Z No” is read from the data management file (see FIG. 76).
  • the recording / reproducing device restriction information is set to “Yes”
  • the recording / reproducing device identifier of the table entry is read from the recording / reproducing device identifier read in step S752. If not, the process ends.
  • step S754 if the data management file setting is “recording / reproducing device restriction” in step S754, the process proceeds to step S755, and if “no”, the process proceeds to step S758. .
  • the recording / reproducing device 300 sends the recording / reproducing device unique key, for example,
  • the recording / reproducing device signature key K dev is read from the internal memory 307 of the recording / reproducing device 300 and the recording / reproducing device signature key K dev is used as the save data decryption key K sav or recording / reproducing.
  • a save data decryption key K sav is generated based on the device signature key K dev.
  • a processing algorithm corresponding to the encryption key generation process is applied, and data encrypted based on a certain recording / reproducing device unique key is generated based on the same recording / reproducing device unique key.
  • a decryption key generation algorithm that can be decrypted by the decrypted key is applied.
  • another encryption key that is separately stored in the internal memory 307 of the recording / reproducing device 300 and is different from the other keys may be used as the save data encryption key KsaV.
  • step S 758 the system common key, for example, the system signature key K sys stored in the recording / reproducing device 300 is read out from the internal memory 300 of the recording / reproducing device 300, and the system signature key is read out.
  • K sys as the save data decryption key K sa V or generate a save data decryption key K sa V based on the system signature key.
  • an encryption key that is separately stored in the internal memory 307 of the recording / reproducing device 300 and different from the other keys may be used as the save data encryption key KsaV.
  • the following steps S 756 and S 757 are the same as the corresponding steps in the save data reproduction processing flow described above.
  • FIGS. 78 and 79 show processing flows for generating, storing, and reproducing save data encryption / decryption keys using the recording / reproducing device identifier.
  • the save data is encrypted using the recording / reproducing device identifier and stored in the recording device.
  • Steps S761 to S763 are the same processing as in FIG. 75 described above.
  • an encryption key Ksav for the save data is generated using the recording / reproducing device identifier (ID dev) read from the recording / reproducing device.
  • ID dev save Apply the data encryption key K sav, or apply the master key MK X stored in the internal memory of the recording / reproducing device 300 and use the DES (MK X, ID de V) to generate the save data encryption key K sav.
  • a save data encryption key ksav is generated based on IDev.
  • another encryption key that is separately stored in the internal memory 307 of the recording / reproducing device 300 and is different from the other keys may be used as the save data encryption key KsaV.
  • FIG. 79 is a processing flow for reproducing and executing the save data stored in the recording device by the processing of FIG. 78. Steps S 771 to S 774 are the same as the corresponding processing in FIG. 77 described above.
  • a decryption key Ksav of the save data is generated using the recording / reproducing device identifier (IDdeV) read from the recording / reproducing device.
  • I Ddev as the save data decryption key K sa V, or apply the master key MK X stored in the internal memory of the recording / reproducing unit 300 to decrypt the save data using DES (MKx, ID dev).
  • a save data decryption key K sa V is generated based on I D dev, such as obtaining an encryption key K sav.
  • this decryption key generation process a processing algorithm corresponding to the encryption key generation process is applied, and data encrypted based on a certain recording / reproducing device identifier is generated based on the same recording / reproducing device identifier.
  • a decryption key generation algorithm that can be decrypted by the decryption key is applied.
  • another encryption key that is separately stored in the internal memory 307 of the recording / reproducing device 300 and is different from the other keys may be used as the save data encryption key KsaV.
  • the save data for which “recording / playback device restriction” is selected is encrypted and decrypted by the recording / playback device identifier. Since the processing is executed, the recording It becomes possible to decode and use only a live creature, that is, the same recording and reproducing device.
  • Figure 80 shows the save data storage processing flow.
  • step S781 the content identifier is read from the content data.
  • step S782 a program use restriction determination is performed, and in step S783, a recording / reproducing device restriction determination is performed.
  • step S785 both the content unique key (ex.Kc on) and the recording / reproducing device unique key (Kd eV) are used. Based on this, a save data encryption key K sav is generated.
  • a symbol key different from the other keys stored separately in the internal memory 307 of the recording / reproducing device 300 may be used as the save data encryption key KsaV.
  • step S787 use the recording / reproducing device unique key (Kde V) as the save data encryption key K sa V or record / reproduce.
  • Kde V recording / reproducing device unique key
  • a save data encryption key Ksav is generated based on the device unique key (KdeV).
  • another encryption key that is separately stored in the internal memory 307 of the recording / reproducing device 300 and is different from the other keys may be used as the save data encryption key KsaV.
  • a system common key for example, a system signature key K sys is used as the save data encryption key K sav, or a save data encryption key K sa V is generated based on the system signature key K sys .
  • an encryption key that is separately stored in the internal memory 307 of the recording / reproducing device 300 and is different from the other keys may be used as the save data encryption key KsaV.
  • step S789 the save data is encrypted by the save data encryption key Ksav generated in any of steps S785 to S788, and the saved data is stored in the recording device.
  • the restriction information set in steps S782 and S783 is stored in the data management file.
  • the data management file has, for example, the configuration shown in FIG. 81 and includes items such as a data number, a content identifier, a recording / reproducing device identifier, a program use restriction, and a recording / reproducing device restriction.
  • FIG. 82 is a processing flow for reproducing and executing the save data stored in the recording device by the processing of FIG.
  • step S791 the content identifier and recording / reproducing device identifier of the execution program are read
  • step S792 the content identifier, recording / reproducing device identifier, program use restriction, Read the recording / reproducing device restriction information.
  • the program usage restriction is “Yes” and the content identifiers do not match, or if the recording / reproducing apparatus restriction information is “Yes” and the recording / reproducing apparatus identifiers do not match, the process ends.
  • steps S793, S794, and S795 the decryption key generation process is performed according to the data recorded in the data management file in one of the four modes of steps S796 to S799.
  • step S796 both the content unique key (ex. K con) and the recording / reproducing device unique key (K de V) are used.
  • a save data decryption key K sav is generated based on.
  • a symbol different from the other keys stored separately in the internal memory 307 of the recording / reproducing device 300 may be used as the save data encryption key KsaV.
  • the content unique key (ex.K con) is saved data decryption ⁇ ⁇ ⁇ K sav or the content unique key.
  • a save data decryption key K sa V is generated based on (ex.K con).
  • another encryption key that is separately stored in the internal memory 307 of the recording / reproducing device 300 and is different from the other keys may be used as the save data encryption key KsaV.
  • step S798 the recording / reproducing device unique key (K de V) is used as the save data decryption key K sa V or A save data decryption key K sa V is generated based on the recording / reproducing device unique key (K de V).
  • K de V the recording / reproducing device unique key
  • K de V another key different from the other keys stored separately in the internal memory 307 of the recording / reproducing device 300 may be used as the save data encryption key KsaV.
  • a system common key for example, a system signature key K sys is set as a save data decryption key K sav
  • a save data decryption key K sav is generated on the basis of the system signature key K sys.
  • an encryption key that is separately stored in the internal memory 307 of the recording / reproducing device 300 and is different from the other keys may be used as the save data encryption key KsaV.
  • step S800 a decryption process is performed using the save data decryption key generated in any of the above steps S796 to S799, and the decrypted save data is recorded / reproduced. Reproduced and executed at 300.
  • the save data for which “program use restriction” is selected is subjected to encryption / decryption processing using the content unique key. Have the same content unique key Only when one piece of content data is used, it can be decrypted and used. Also, save data for which “Record / reproduce device restriction” is selected is encrypted and decrypted by the record / reproducer identifier, so that the record / reproducer with the same recorder / reproducer identifier is used. That is, decoding and use can be performed only by the same recording and reproducing device. Therefore, it is possible to set usage restrictions by both the content and the recording / reproducing device, and it is possible to further enhance the security of the save data.
  • FIGS. 80 and 82 the generation configuration of the content unique key, the save data encryption key using the recording / reproducing device private key, and the decryption key is shown, but the content private key is used instead of the content private key.
  • a configuration may be employed in which the recording / reproducing device identifier is used instead of the identifier and the recording / reproducing device unique key, and the save data encryption key and the decryption key are generated based on these identifiers.
  • FIG. 83 shows a processing flow for generating an encryption key for save data based on the password input by the user and storing the encryption key in the recording device.
  • Step S8221 is a process of reading a content identifier from the content data, which is the same as the above-described processes.
  • Step S822 is a step of determining whether or not the user sets the program use restriction.
  • the data management file set in this configuration has, for example, the configuration shown in FIG.
  • the data includes a data number, a content identifier, a recording / reproducing device identifier, and program use restriction information by the user.
  • “Program use restriction information by user” is an item for setting whether to restrict users who use the program.
  • the user password is input in step S822.
  • This input is made from input means such as a keyboard shown in FIG.
  • the input password is output to the signal processing unit 302 under the control of the main CPU 106 and the control unit 301, and is processed based on the processing in step S824, that is, based on the input user password.
  • a save data encryption key K sa V is generated.
  • the password itself may be used as the encryption key K sa V, or the save data encryption key K sa V may be used by using the master key MK x of the recording / reproducing device.
  • V DES (MK x, password).
  • a one-way function may be applied with a password as an input, and an encryption key may be generated based on the output.
  • step S828 a save data encryption key is generated based on the system common key of the recording / reproducing device 300.
  • the save data is encrypted using the save data encryption key K sa V generated in step S828 or step S828 in step S828, and the save data is encrypted in step S828.
  • the encrypted save data is stored in the recording device at.
  • step S828 the program use restriction information set by the user set in step S822 is written in the data management file of FIG. 84 in association with the content identifier and the recording / reproducing device identifier.
  • FIG. 85 is a diagram showing a playback processing flow of the save data stored by the processing of FIG. 83.
  • step S831 the content identifier is read from the content data.
  • step S832 the content identifier and the program use restriction information by the user are read from the data management file shown in FIG.
  • step S833 a judgment based on the data in the data management file is performed, and if "use program restriction by user" is set, a password input is requested in step S834.
  • step S835 a decryption key based on the input password is generated.
  • a processing algorithm corresponding to the encryption key generation processing is applied, and encryption is performed based on a certain password.
  • the decrypted data is set to a decryption key generation algorithm that can be decrypted with a decryption key generated based on the same password.
  • step S833 If the determination in step S833 is that there is no restriction on the use of the program by the user, the system common key stored in the internal memory of the recording / reproducing device 300, for example, the system signature key Ksys is determined in step S8337.
  • the save data decryption key K sav is generated using this.
  • another encryption key which is separately stored in the internal memory 307 of the recording / reproducing device 300 and is different from the other keys, may be used as the save data encryption key KsaV.
  • step S8336 the save data stored in the recording device is decrypted by using the decryption key KsaV generated in any of step S835 and step S8337, and In step S8336, the recording / reproducing device reproduces and executes the save data.
  • the save data for which "Restrict program use by user" is selected is encrypted and decrypted using a key based on the user input password. Is executed, it is possible to decrypt and use the same password only when the same password is input, thereby improving the security of the save data.
  • the data processing device of the present invention various contents data provided from the medium 500 (see FIG. 3) and the communication means 600 are recorded and reproduced by the recording / reproducing device 300.
  • the security of the provided contents is enhanced by executing the encryption process and storing it on the recording device, and the configuration is such that only authorized users can use it.
  • the input content is composed of various signature keys, master keys, and check value generation keys stored in the internal memory 307 included in the encryption processing unit 302 of the recording / reproducing device 300 (see FIG. Authentication processing, encryption processing, and decryption processing are performed using (see 18).
  • the internal memory 307 for storing the key information is basically formed of a semiconductor chip having a structure that is difficult to access from the outside, has a multilayer structure, and has an internal memory of aluminum. It is sandwiched between dummy layers such as a Eu layer, or is formed at the lowest layer, and has a characteristic that makes it difficult to read data illegally from the outside, such as the operating voltage or Z and the width of the frequency are narrow. Desirably, in the unlikely event that unauthorized reading of the internal memory is performed and such key data etc. leaks out and is copied to a recording / reproducing device that is not properly licensed, unauthorized content will be copied by the copied key information. It may be used.
  • Fig. 86 is a block diagram illustrating this configuration "(17) Configuration for eliminating unauthorized devices".
  • the recording / reproducing device 300 is similar to the recording / reproducing device shown in FIGS. 2 and 3 above, has an internal memory, and has various key data described above (FIG. 18). have.
  • the identifier of the recording / reproducing device, key data, etc. copied by a third party are not always stored in the internal memory 307 shown in FIG. 3, but the key data of the recording / reproducing device 300 shown in FIG. Are stored together or separately in a memory unit accessible by the cryptographic processing unit 302 (see FIGS. 2 and 3).
  • the configuration is such that an unauthorized recording / reproducing device identifier list in the header of content data is stored.
  • the content data has a revocation list as an illegal recording / reproducing device identifier (IDev) list.
  • a list check value I CV rev is provided for checking the falsification of the repo list.
  • Illegal recorder / reproducer identifier (IDev) lists can be used by content providers or For example, it is a list of IDs of IDs of unauthorized recording / reproducing devices found from the distribution status of unauthorized copying. This revocation list may be stored, for example, after being encrypted by the distribution key Kdis.
  • the decoding process by the recording / reproducing device is the same as, for example, the content download process of FIG.
  • the revocation list is shown as independent data in the content data of FIG. 86 for easy understanding.
  • the revocation list is a component of the header part of the content data described above.
  • a revocation list may be included in a certain handling policy (eg, see Figures 32 to 35).
  • the tampering check of the handling policy data including the revocation list is performed by the check value ICVa described above. If the revocation list is included in the handling policy, the check value A is replaced by the ICVa check, the check value A generation key ic Va in the recording / reproducing device is used, and the check value generation key K ic is used. There is no need to store V-rev.
  • the revocation list is checked with the list check value ICV rev for falsification check of the revocation list, and the list check value ICV re V is used.
  • An intermediate check value is generated from other partial check values in the content data, and the intermediate check value is verified.
  • the check method of the revocation list using the list check value I CV re V for falsification check of the revocation list is based on the generation of the check values such as I CVa and I CVb described in FIGS. It can be executed in the same manner as the processing. That is, the check value generation key KicV—reV stored in the internal memory 307 of the recording / reproducing device encryption processing unit 302 is used as a key, and the revocation list included in the content data is used as a message as shown in FIG. It is calculated according to the ICV calculation method described in FIG. The calculated check value I CV- rev 'is compared with the check value I CV- rev stored in the header, and if they match, it is determined that there is no tampering.
  • the intermediate check value including the list check value ICV rev is, for example, as shown in FIG. 25, the total check value generation key K ic stored in the internal memory 307 of the recording / reproducing device encryption processing unit 302.
  • Vt the check value A, check value B, list check value ICV rev in the verified header, and the message string to which the content check value is added according to the format are used for the ICV calculation method described in Fig. 7 and others. Apply and generate.
  • the revocation list and the list check value are recorded on a recording / reproducing device 3 via a media 500 such as a DVD or a CD, communication means 600 or a recording device 400 such as a memory card.
  • a media 500 such as a DVD or a CD
  • communication means 600 or a recording device 400 such as a memory card.
  • the recording / reproducing device 300 may be a recording / reproducing device that holds valid key data, or may have an illegally copied identifier ID.
  • FIGS. 87 and 88 show the processing flow of the elimination process of the unauthorized recording / reproducing device in such a configuration.
  • FIG. 87 is a flowchart of a process for removing an unauthorized recording / reproducing device (revocation) when content is provided from a medium 500 such as a DVD or a CD, or a communication means 600.
  • FIG. This is a flow of processing for eliminating an illegal recording / reproducing device when content is provided from the recording device 400 (revocation).
  • Step 901 is a step in which a medium is mounted and content is provided, that is, a request for reproduction processing or download is made.
  • the process shown in FIG. 87 is executed as a step before, for example, loading a medium such as a DVD into a recording / reproducing device and executing a download process or the like.
  • the download process is as described above with reference to FIG. 22.
  • the process is performed as a step before the execution of the process flow of FIG. 22 or in the process flow of FIG. 22. 87 is executed.
  • step S911 When the recording / reproducing device 300 receives the content via a communication means such as a network, a communication session with the content distribution service side is established in step S911, and thereafter, the process proceeds to step S902. move on.
  • step S902 a revocation list (see FIG. 86) is obtained from the header of the content data.
  • the control unit 301 shown in FIG. 3 reads the content from the medium via the reading unit 304 when the content is in the medium, and the control unit shown in FIG. 3 when the content is from the communication unit. 301 is received from the content distribution side via the communication unit 305.
  • step S903 the control unit 301 passes the revocation list acquired from the medium 500 or the communication means 600 to the symbol processing unit 302, and causes the symbol processing unit 302 to execute a check value generation process.
  • the recording / reproducing apparatus 300 internally has a revocation check value generation key KicV-rev, and applies the revocation check value generation key KicV-rev as a message with the received revocation list as a message.
  • the check value I CV—rev is calculated according to the I CV calculation method described in FIG. 23, FIG. 24, etc., and the calculation result and the check value stored in the header (Header) of the content data: ICV—rev If they match, it is determined that there is no tampering (Yes in step S904). If they do not match, it is determined that the data has been tampered with, and the process advances to step S909 to end the process as a processing error.
  • step S905 the control unit 306 of the recording / reproducing device encryption processing unit 302 causes the encryption / decryption unit 308 of the recording / reproducing device encryption processing unit 302 to calculate the total check value I C V t ′.
  • the total check value I CV t is obtained by encrypting the intermediate check value with DES using the system signature key K sys stored in the internal memory 307 of the recording / reproducing device encryption processing unit 302 as a key.
  • the verification processing of each partial check value for example, ICVa, ICVb, etc., is omitted in the processing flow shown in FIG. 87, it is the same as the processing flow of FIGS. 39 to 45 described above. Verification of the partial check value corresponding to each data format is performed.
  • step S906 the generated total check value ICVt, is compared with the ICVt in the header (Header), and if they match (Yes in step S906), step S907 Proceed to. If they do not match, they have been tampered with The process proceeds to step S909, and the process ends as a process error.
  • the total check value I CV t checks the entire partial check value included in the content data, such as I CVa, I CVb, and the check value of each content block according to the data format.
  • a list check value I CV rev for alteration check of the revocation list is added as a partial check value to these partial check values, and all of these alterations are verified.
  • the total check value generated by the above process is the header (
  • step S907 a comparison is made between the revocation list determined to have not been tampered with and the recording / reproducing device identifier (IDdeV) stored in its own recording / reproducing device 300.
  • IDdeV recording / reproducing device identifier
  • the recorder / reproducer 300 is illegally copied. It is determined that the key data is present, the process proceeds to step S909, and the subsequent procedures are stopped. For example, it is impossible to execute the procedure of the content download process shown in FIG.
  • step S907 If it is determined in step S907 that the list of the illegal recording / reproducing device identifiers ID Dev does not include the identifier ID dev of its own recording / reproducing device, the recording / reproducing device 300 It is determined that the key data is present, and the process proceeds to step S908, where the subsequent procedures, for example, the program execution process or the content download process shown in FIG.
  • FIG. 88 shows processing for reproducing content data stored in a recording device 400 such as a memory card.
  • the recording device 400 such as a memory card and the recording / reproducing device 300 perform the mutual authentication process (step S922) described with reference to FIG.
  • step S922 if mutual authentication is OK If the mutual authentication fails, the process proceeds to step S923 and subsequent steps, and an error occurs in step S930, and the subsequent processes are not executed.
  • step S923 a revocation list (see FIG. 86) is obtained from the header of the content data.
  • the subsequent processing of steps S924 to S930 is the same as the corresponding processing in FIG. 87 described above. That is, verification of the list by the list check value (S924, S925), verification by the total check value (S926, S927), and the correspondence between the list entry and its own recording / reproducing device identifier ID dev.
  • step S930 the subsequent procedures are stopped. For example, the content reproduction process shown in FIG. 28 cannot be executed.
  • the recorder / reproducer 300 transmits the valid key data. The process proceeds to step S929, and the subsequent procedures can be executed.
  • data for identifying an unauthorized recording / reproducing device in combination with the content provided by the content provider or the administrator, that is, an invalid recording / reproducing device identifier A revocation list in which ID de Vs are listed is included as constituent data of the header part of the content data and provided to the user of the recording / reproducing device, and the user of the recording / reproducing device performs the operation prior to using the content by the recording / reproducing device.
  • the identifier of the recording / reproducing device stored in the memory of its own recording / reproducing device is compared with the identifier of the list and there is data that matches, the subsequent processing is not executed. Therefore, it is possible to eliminate the use of content by an unauthorized recording / reproducing device that duplicates key data and stores it in memory.
  • the internal memory 307 of the recording / reproducing device encryption processing unit 302 or the internal memory 405 of the recording device 400 holds important information such as a key. Therefore, it is necessary to have a structure that is difficult to read illegally from the outside. Therefore, the recording / reproducing device encryption processing unit 302 and the recording device encryption processing unit 401 are configured by, for example, a semiconductor chip having a structure that is difficult to access from the outside, have a multilayer structure, and The memory is sandwiched between dummy layers such as an aluminum layer or the lowermost layer, and has a characteristic that it is difficult to read data from the outside illegally, such as when the operating voltage or frequency width is narrow. It is configured as a memory.
  • a conventional method for making it difficult to read and rewrite write data is to keep the command protocol of the data write secret, for example.
  • the signal line that receives the data write command on the chip is separated from the signal line for communication used after commercialization, and the data write command is valid unless a signal is sent directly to the chip on the board For example, there is a method of preventing such a situation.
  • FIG. 89 shows a security chip configuration applicable to, for example, the above-described recording / reproducing device encryption processing unit 302 or the encryption processing unit 401 of the recording device 400.
  • Figure 89 (A) shows the security chip configuration during the chip manufacturing process, that is, the data writing process
  • Figure 89 (B) shows a configuration example of a product equipped with a security chip that has written data, such as a recording / reproducing device.
  • a recording / reproducing device Here is an example of 300, recording device 400.
  • the security chip in the manufacturing process has a processing unit 8001 connected to a mode designation signal line 8003 and various command signal lines 8004, and a processing unit 8001 receives a mode designation signal.
  • a data write process to the storage unit 8002 which is a non-volatile memory according to a mode set by the line 8003, for example, a data write mode or a data read mode, or data read from the storage unit 8002. Execute the processing.
  • the security chip-equipped product shown in Fig. 89 (B) the security chip is connected to the external connection interface, peripheral devices, other elements, etc. by general-purpose signal lines, but the mode signal line 8003 It is in a disconnected state.
  • Specific processing includes, for example, connecting the mode signal line 8003 to ground, rising to Vcc, cutting the signal line, or sealing with an insulating resin.
  • the security chip 800 of the present configuration is stored in the data storage section 8002. Write processing and read processing of the data written to the storage unit 8002, even if a third party succeeds in accessing the mode signal line 8003. Unauthorized data writing and reading can be prevented.
  • Step S951 is a step of setting the mode signal line 803 to the data write mode or the data read mode.
  • Step S952 is a step of extracting authentication information from the chip.
  • the security chip of this configuration stores information necessary for the authentication process such as a password and key information for the authentication process in the encryption technology in advance by, for example, a wire (Wire) and a mask ROM configuration.
  • a step S952 reads out the authentication information and executes an authentication process. For example, if the authentication process is executed by connecting a legitimate data writing jig and data reading device to the general-purpose signal line, the result of authentication OK (Yes in step S953) is obtained, If a data write jig or data read device is connected to a general-purpose signal line and authentication processing is performed, authentication fails (No in step S953) and processing is stopped at that point. .
  • the authentication processing can be executed, for example, according to the mutual authentication processing procedure of FIG. 13 described above.
  • the processing unit 8001 shown in FIG. 89 has a configuration capable of executing these authentication processes. This can be realized, for example, by the same configuration as the command register incorporated in the control unit 403 of the encryption processing unit 401 of the recording device 4 ⁇ 0 shown in FIG. 29 described above.
  • the processing unit of the chip in FIG. 89 has the same configuration as the command register built in the control unit 403 of the signal processing unit 401 of the recording device 400 shown in FIG.
  • the processing unit 8001 accepts a data write command or a data read command and writes data only when authentication is performed in the authentication process. Processing (step S955) or data reading processing (step S956) is executed.
  • authentication processing is performed when data is written or read, so that data is read from the storage unit of the security chip by a third party who does not have a proper right.
  • data writing to the storage unit can be prevented.
  • FIG. 91 shows an example in which an element configuration with higher security is adopted.
  • the separation storage unit 8 2 0 0 security chip into two areas, one read-write capable read write combination region data (RW,: R ead W rite region) be 8 2 0 1
  • the other is a write-only area (WO: Write Only) area 822 where only data can be written.
  • the processing unit 8001 executes the data readout process including the authentication process described above with reference to Fig. 90 in the data readout process from the read / write combined area (RW: ReadWrite area) 8201. I do. However, the data write processing is executed according to the flow shown in FIG. '
  • Step S961 in FIG. 92 sets the mode signal line 8003 to the write mode.
  • step 962 the same authentication processing as that described in FIG. 90 is executed. . If the authentication is successful in the authentication process, the flow advances to step S9663 to store information such as highly secure key data in the write-only (WO) area 8202 via the command signal line 8004.
  • a write / read / write area (RW: Read Write area) 8201 outputs a command to write data for checking that is not so high in security level, for example, to the processing section 8001.
  • step S9664 the processing unit 8001 that received the command writes data according to the command in a write-only (WO) area 8202, a read / write combined area (RW: Read Write area).
  • FIG. 93 shows a flow of a process for verifying data written in the write-only (WO) area 8202.
  • step S971 in FIG. 93 the processing unit 8001 executes writing only (WO
  • An encryption process based on the data written in the area 8202 is executed.
  • These execution configurations are realized by a configuration that sequentially executes the cryptographic processing sequence stored in the command register, as in the above-described authentication processing execution configuration.
  • the encryption processing algorithm executed in the processing unit 8001 is not particularly limited, and, for example, may be configured to execute the above-described DES algorithm.
  • step S972 the verification device connected to the security chip receives the encryption processing result from the processing unit 8001.
  • step S973 the same encryption processing as the algorithm executed in the processing unit 8001 was applied to the regular write data that was previously written to the storage unit. The result is compared with the encryption result from the processing unit 8001.
  • the data readable area is limited to the read / write combined area (RW: Read Write area) 8201, and the write It is impossible to read the data written in the dedicated (WO) area 822, and the configuration has higher security. Also, unlike a chip that cannot read data at all, it has a read / write combined area (RW: Read Write area) 8201, so it is possible to check the correctness of memory access.
  • the present invention is based on the user's possession of various contents such as audio, images, games, and programs that can be obtained through storage media such as DVDs and CDs, or wired and wireless communication means such as CATV, the Internet and satellite communications. Playback on a recording / playback device
  • the distributed content can be used for devices and systems that ensure security so that third parties other than authorized users can not use the content illegally.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Power Engineering (AREA)
  • Multimedia (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Bioethics (AREA)
  • Health & Medical Sciences (AREA)
  • Technology Law (AREA)
  • General Health & Medical Sciences (AREA)
  • Storage Device Security (AREA)
  • Signal Processing For Digital Recording And Reproducing (AREA)
  • Lock And Its Accessories (AREA)
  • Burglar Alarm Systems (AREA)
  • Air Bags (AREA)
  • Radar Systems Or Details Thereof (AREA)
  • Selective Calling Equipment (AREA)
  • Circuits Of Receivers In General (AREA)
  • Communication Control (AREA)
  • Adhesives Or Adhesive Processes (AREA)
  • Polyesters Or Polycarbonates (AREA)
  • Holo Graphy (AREA)

Description

明 細 書
データ認証処理システム
技術分野
本発明は、 データ処理装置おょぴデータ処理方法に関し、 さらに詳細には、 デ 一タコンテンツを構成するデータの正当性、 すなわち改竄の有無を検証する方法 、 装置、 検証値の付与方法に関する。 また、 暗号処理に必要な個別鍵を、 各個別 鍵に対応したマスター鍵によって生成することにより、 セキュリティを高めるこ とを可能とした装置および方法に関する。 また、 本発明は、 データコンテンツの 不正利用を排除する構成を提供するものであり、 具体的には、 不正再生機器を識 別してコンテンツの不正利用を排除することを可能とした装置および方法に関す る。 さらに本発明は、 データ処理装置のみに利用可能なコンテンツと、 他のデー タ処理装置においても利用可能なコンテンツとをデータ処理装置固有の情報等に 基づいて容易に設定することを可能とした装置および方法に関する。 さらに、 デ 一タコンテンツを構成するデータの正当性、 すなわち改竄の有無を検証する方法 、 装置、 検証値の付与方法に関する。
さらに、 本発明は、 音声情報、 画像情報、 プログラムデータの少なくともいず れかを含むデータを暗号化処理して、 各種のへッダ情報と共にコンテンッ利用者 に提供し、 コンテンツ利用者が再生、 実行、 あるいは記録デバイスに対する格納 処理等を行なう構成において、 コンテンツデータを高いセキュリティ管理のもと に提供おょぴ利用することを可能としたコンテンツデータ構成を実現するデータ 処理装置、 コンテンツデータ生成方法、 およびデータ処理方法に関する。
さらに、 データコンテンツが圧縮された音声データ、 あるいは画像データ等で ある場合の再生処理を効率的に実行する構成を提供するものであり、 具体的には 、 コンテンッデータの構成を圧縮データと伸長処理プログラムとを組み合わせた 構成としたり、 適用伸長処理プログラムをヘッダ情報として格納した圧縮データ コンテンツのヘッダ情報に基づいて適用可能な伸長処理プログラムを検索抽出し て再生処理を実行することを可能としたデータ処理装置、 データ処理方法おょぴ コンテンツデータ生成方法に関する。
本発明は、 DVD、 CD等の記憶媒体、 あるいは CATV、 インターネット、 衛星通信等の有線、 無線各通信手段等の経路で入手可能な音声、 画像、 ゲーム、 プログラム等の各種コンテンツを、 ユーザの所有する記録再生器において再生し
、 専用の記録デバイス、 例えばメモリカード、 ハードディスク、 CD— R等に格 納するとともに、 記録デバイスに格納されたコンテンツを利用する際、 コンテン ッ配信側の希望する利用制限を付す構成を実現するとともに、 この配布されたコ ンテンッを、 正規ユーザ以外の第三者に不正利用されないようにセキュリティを 確保する構成および方法に関する。 背景技術
昨今、 ゲームプログラム、 音声データ、 画像データ、 文書作成プログラム等、 様々なソフトウェアデータ (以下、 これらをコンテンツ (C o n t e n t) と呼 ぶ) 1S インターネット等のネットワークを介して、 あるいは DVD、 CD等の 流通可能な記憶媒体を介して流通している。 これらの流通コンテンツは、 ユーザ の所有する PC (P e r s o n a l C omp u t e r)、 ゲーム機器等の記録 再生機器に付属する記録デバイス、 例えばメモリカード、 ハードディスク等に格 納することが可能であり、 ー且格納された後は、 格納媒体からの再生により利用 可能となる。
従来のビデオゲーム機器、 PC等の情報機器において使用されるメモリカード 装置の主な構成要素は、 動作制御のための制御手段と、 制御手段に接続され情報 機器本体に設けられたスロットに接続するためのコネクタと、 制御手段に接続さ れデータを記憶するための不揮発性メモリ等である。 メモリカードに備えられた 不揮発性メモリは E E P ROM:、 フラッシュメモリ等によって構成される。
このようなメモリカードに記憶されたデータ、 あるいはプログラム等の様々な コンテンツは、 再生機器として利用されるゲーム機器、 P C等の情報機器本体か らのユーザ指示、 あるいは接続された入力手段を介したユーザの指示により不揮 発性メモリから呼び出され、 情報機器本体、 あるいは接続されたディスプレイ、 スピーカ等を通じて再生される。
ゲームプログラム、 音楽データ、 画像データ等、 多くのソフトウェア .コンテ ンッは、 一般的にその作成者、 販売者に頒布権等が保有されている。 従って、 こ れらのコンテンツの配布に際しては、 一定の利用制限、 すなわち、 正規なユーザ に対してのみ、 ソフトウェアの使用を許諾し、 許可のない複製等が行われないよ うにする、 すなわちセキュリティを考慮した構成をとるのが一般的となっている ユーザに対する利用制限を実現する 1つの手法が、 配布コンテンツの暗号化処 理である。 すなわち、 例えばインターネット等を介じて暗号化された音声データ 、 画像データ、 ゲームプログラム等の各種コンテンツを配布するとともに、 正規 ユーザであると確認された者に対してのみ、 配布された暗号化コンテンツを復号 する手段、 すなわち復号鍵を付与する構成である。
暗号化データは、 所定の手続きによる復号化処理によつて利用可能な復号デ一 タ (平文) に戻すことができる。 このよゔな情報の暗号化処理に暗号化鍵を用い 、 複号化処理に復号化鍵を用いるデータ暗号化、 復号化方法は従来からよく知ら れている。
暗号化鍵と復号化鍵を用いるデータ暗号化 ·復号化方法の態様には様々な種類 あるが、 その 1つの例としていわゆる共通鍵暗号化方式と呼ばれている方式があ る。 共通鍵暗号化方式は、 データの暗号化処理に用いる暗号化鍵とデータの復号 化に用いる複号化鍵を共通のものとして、 正規のユーザにこれら暗号化処理、 復 号化に用いる共通鍵を付与して、 鏈を持たない不正ユーザによるデータアクセス を排除するものである。 この方式の代表的な方式に D E S (データ暗号標準: D a t e e n c r y p t i o n s t a n d a r d カ ある。
上述の暗号化処理、 復号化に用いられる暗号化鍵、 複号化鍵は、 例えばあるパ スワード等に基づいてハッシュ関数等の一方向性関数を適用して得ることができ る。 一方向性関数とは、 その出力から逆に入力を求めるのは非常に困難となる関 数である。 例えばユーザが決めたパスヮードを入力として一方向性関数を適用し て、 その出力に基づいて暗号化鍵、 復号化鍵を生成するものである。 このように して得られた暗号化鍵、 復号化鍵から、 逆にそのオリジナルのデータであるパス ワードを求めることは実質上不可能となる。
また、 暗号化するときに使用する暗号化鍵による処理と、 復号するときに使用 する複号化鍵の処理とを異なるアルゴリズムとした方式がいわゆる公開鍵暗号化 方式と呼ばれる方式である。 公開鍵暗号化方式は、 不特定のユーザが使用可能な 公開鍵を使用する方法であり、 特定個人に対する暗号化文書を、 その特定個人が 発行した公開鍵を用いて暗号化処理を行なう。 公開鍵によつて喑号化された文書 は、 その暗号化処理に使用された公開鍵に対応する秘密鍵によってのみ復号処理 が可能となる。 秘密鍵は、 公開鍵を発行した個人のみが所有するので、 その公開 鍵によって暗号化された文書は秘密鍵を持つ個人のみが復号することができる。 公開鍵暗号化方式の代表的なものには RS A (R i v e s t -S h am i r - A d 1 e m a n) 暗号がある。
このような暗号化方式を利用することにより、 暗号化コンテンツを正規ユーザ に対してのみ復号可能とするシステムが可能となる。 これらの暗号方式を採用し た従来のコンテン.ッ配布構成について図 1を用いて簡単に説明する。
図 1は、 PC (パーソナルコンピュータ)、 ゲーム機器等の再生手段 1 0にお いて、 DVD, CD 30、 インターネット 40等のデータ提供手段から取得した プログラム、 音声データ、 映像データ等 (コンテンツ (C o n t e n t)) を再 生するとともに、 DVD, CD 30、 インターネット 40等から取得したデータ をフロッピーディスク、 メモリカード、 ハードディスク等の記憶手段 20に記憶 可能とした構成例を示すものである。
プログラム、 音声データ、 映像データ等のコンテンツは、 暗号化処理がなされ 、 再生手段 1 0を有するユーザに提供される。 正規ユーザは、 暗号化データとと もに、 その暗号化、 複号化鍵である鍵データを取得する。
再生手段 1 0は C P U 1 2を有し、 入力データの再生処理を再生処理部 1 4で 実行する。 再生処理部 1 4は、 暗号化データの復号処理を実行して、 提供された プログラムの再生、 音声データ、 画像データ等コンテンツ再生を行なう。
正規ユーザは、 提供されたプログラムを、 再度使用するために記憶手段 2 0に プログラム/データ等、 コンテンツの保存処理を行なう。 再生手段 1 0には、 こ のコンテンツ保存処理を実行するための保存処理部 1 3を有する。 保存処理部 1 3は、 記憶手段 2 0に記憶されたデータの不正使用を防止するため、 データに喑 号化処理を施して保存処理を実行する。
コンテンツを暗号化する際には、 コンテンツ暗号用鍵を用いる。 保存処理部 1 3は、 コンテンツ喑号用鍵を用いて、 コンテンツを暗号化し、 それを F D (フロ ッピーディスク)、 メモリカード、 ハードディスク等の記憶手段 2 0の記憶部 2 1に記憶する。
ユーザは、 記憶手段 2 0から格納コンテンツを取り出して再生する場合には、 記憶手段 2 0から、 暗号化データを取り出して、 再生手段 1 0の再生処理部 1 4 において、 コンテンツ復号用の鍵、 すなわち複号化鍵を用いて復号処理を実行し て暗号化データから復号データを取得して再生する。
図 1に示す従来の構成例に従えば、 フロッピーディスク、 メモリカード等の記 憶手段 2 0では格納コンテンツが暗号化されているため、 外部からの不正読み出 しは防止可能となる。 しかしながら、 このフロッピーディスクを他の P C、 ゲー ム機器等の情報機器の再生手段で再生して利用しょうとすると、 同じコンテンツ 鍵、 すなわち暗号化されたコンテンツを復号するための同じ復号化鍵を有する再 生手段でなければ再生不可能となる。 従って、 複数の情報機器において利用可能 な形態を実現するためには、 ユーザに提供する暗号鍵を共通化しておくことが必 要となる。
しかしながら、 コンテンツの暗号鍵を共通化するということは、 正規ライセン スを持たないユーザに暗号処理用の鍵を無秩序に流通させる可能性を高めること になり、 正規のライセンスを持たないユーザによるコンテンツの不正利用を防止 できなくなるという欠点があり、 正規ライセンスを持たない P C、 ゲーム機器等 での不正利用の排除が困難になる。
また、 コンテンツの暗号鍵、 復号鍵を共通化するということは、 一つの機器か ら万一その鍵情報が漏洩した場合に、 被害の及ぶ範囲がその鍵を用いているシス テム全体となってしまう。
さらに、 上述のように鍵を共通化した環境においては、 例えばある P C上で作 成され、 メモリカード、 フロッピーディスク等の記憶手段に保存された暗号化さ れたコンテンツは、 別のフロッピーディスクに容易に複製することが可能であり 、 オリジナルのコンテンツデータではなく複製フロツビ一ディスクを用いた利用 形態が可能となり、 ゲーム機器、 P C等の情報機器において利用可能なコンテン ッデータが多数複製されたり、 または改竄されてしまう可能性があった。
コンテンッデータの正当性、 すなわちデータが改竄されていないことをチェッ クするために検証用のチェック値をコンテンツデータに含ませ、 記録再生器にお いて、 検証対象のデータに基づいて生成したチェック値とコンテンツデータに含 まれるチエック値とを照合処理することによって、 データ検証を行なう方法が従 来から行なわれている。
しかしながら、 データコンテンツに対するチェック値は、 データ全体に対して 生成されるのが一般的であり、 データ全体に対して生成されたチェック値の照合 処理を実行するためには、 チ -ック対象となったデータ全体に対するチェック値 生成処理を実行することが必要となる。 例えば D E S _ C B Cモードにおいて生 成されるメッセージ認証符号 (MA C) により、 チェック値 I C Vを求める手法 を.行なう場合、 データ全体に対する D E S— C B Cの処理を実行することが必要 となる。 この計算量は、 データ長が長くなるにつれ増大することとなり、 処理効 率の点で問題がある。 発明の開示 本発明は、 このような従来技術の問題点を解決するものであり、 データ正当性 の確認処理を効率的に実行し、 コンテンツデータの検証処理の効率化、 さらに検 証後の記録デバィスに対するダウンロード処理、 あるいは検証後の再生処理等を 効率的に実行することを可能とするデータ処理装置、 データ処理方法およぴデ一 タ検証値付与方法、 並びにプログラム提供媒体を提供することを第 1の目的とす る。
また、 コンテンツデータの利用を正当な利用者に限定する手法としてデータ暗 号化、 データ複号化、 データ検証、 認証処理、 署名処理等、 各種の暗号処理があ るが、 これら各種の暗号処理を実行するためには、 2つの装置間、 すなわち、 コ ンテンッデータを転送する装置間、 あるいは認証処理を実行する装置間において 、 共有する秘密情報、 例えばコンテンツデータの暗号化、 複号化に適用する鍵情 報を共有したり、 認証する装置間で認証に使用する認証鍵を共有することが必要 となる。
従って例えば、 2つの装置のいずれかから、 その共有秘密情報である鍵データ が漏洩した場合には、 その共有鍵情報を用いたコンテンツの暗号化データは、 ラ ィセンスを持たない第三者によっても復号可能となり、 不正なコンテンツの利用 が可能となってしまう。 また認証鍵が漏洩した場合にも同様であり、 全くライセ ンスを持たない装置に対する認証が成立してしまい、 鍵の漏洩は、 システム全体 を脅かす結果をもたらす。
本発明は、 このような問題点を解決するものである。 本発明のデータ処理装置 、 データ処理システム、 およびデータ処理方法は、 データ暗号化、 データ複号化 、 データ検証、 認証処理、 署名処理等の暗号処理を実行するために必要となる個 別鏈を記憶部に記憶格納せず、 これらの個別鍵を生成するためのマスタ一鏈を記 憶部に格納し、 暗号処理部がマスター鍵と、 装置またはデータの識別データに基 づいて必要な個別鍵を生成することにより、 暗号処理におけるセキュリティを高 めたデータ処理装置、 データ処理システム、 およびデータ処理方法を提供するこ とを第 2の目的とする。 また、 コンテンツデータは、 暗号化されて提供することにより、 ある程度のセ キユリティを保持することが可能であるが、 メモリに格納された様々な暗号鍵が メモリの不正な読み取りにより予も取られ、 鍵データ等が流出し、 正規なライセ ンスのされていない記録再生器にコピーされた場合、 コピーされた鍵情報によつ て不正なコンテンツ利用がなされる可能性がある。
本発明は、 このような不正な再生機器の排除を可能とした構成、 すなわち不正 な再生機器を識別し、 識別された不正機器においては、 コンテンツデータの再生 、 ダウンロード等の処理を実行させない構成としたデータ処理装置、 データ処理 方法およびコンテンツデータ生成方法を提供することを第 3の目的とする。 また、 コンテンツデータの利用を正当な利用者に限定する手法として所定の暗 号化鍵を用いた暗号処理、 例えば署名処理があるが、 従来の署名による暗号処理 は、 署名鍵がコンテンツを利用するシステムのエンティティのすべてにおいて共 通化されているものが一般的であり、 このような署名鍵では、 異なる装置で共通 のコンテンツを利用することが可能となり、 コンテンツの不正コピーが発生する 等の問題がある。
独自のパスワード等を用いてコンテンツを暗号化して格納することも可能であ るが、 パスワードは盗まれる可能性もあり、 また、 異なる再生器を介して同一の パスワードを入力することによって、 同じ暗号化コンテンツデータを復号するこ とが可能であり、 従来のセキュリティ構成においては、 再生器を識別して、 その 再生器にのみ利用可能なシステムを実現することが困難だった。
本発明は、 このような従来技術の問題点を解決するものであり、 本発明の構成 においては、 データ処理装置固有の装置固有鍵と、 コンテンツデータを利用する 他のデータ処理装置に共通のシステム共通鍵とを選択的に利用可能とすることに より、 コンテンツの利用制限に応じて、 特定のデータ処理装置においてのみコン テンッを再生することを可能としたデータ処理装置おょぴデータ処理方法を提供 することを第 4の目的とする。
また、 コンテンツデータは、 音声情報、 画像情報、 プログラムデータ等様々な 種類があり、 また、 コンテンツデータのすべてを暗号化する必要がある場合や、 暗号化処理の必要な部分と暗号化処理の不要な部分とが混在する場合等、 様々な コンテンツが存在する。
このような、 様々なコンテンツに対して、 一律に暗号化処理を適用することは 、 その再生処理において不要な復号処理を発生させたり、 処理効率、 処理速度の 点で好ましくない事態が発生する場合がある。 例えば音楽データのようなリアル タィム再生が必須となるデータ等には処理速度の速 、復号処理可能なコンテンツ データ構成とすることが望まれる。
本発明は、 このような問題点を解決するものである。 本発明のデータ処理装置 、 コンテンツデータ生成方法、 およびデータ処理方法は、 コンテンツデータの種 類に応じた様々なコンテンツデータ構成、 すなわちコンテンツに応じた異なる複 数のデータフォーマツトをコンテンツに適用することを可能とし、 セキュリティ が高くかつ再生、 実行等において利用しやすいコンテンツデータの生成および処 理を可能としたデータ処理装置、 コンテンツデータ生成方法、 およびデータ処理 方法を提供することを第 5の目的とする。
また、 復号された音声データ、 画像データ等は、 A V出力部に出力されて再生 される。 しかし、 昨今多くのコンテンツは圧縮処理がなされて記憶媒体に格納、 あるいは配信されることが多い。 従って再生処理の前に、 これらの圧縮データを 伸長処理することが必要となる。 例えば音声データであって M P 3圧縮がなされ ていれば、 M P 3デコーダによって音声データの復号処理がなされて出力される 。 また、 コンテンツデータが画像データであり、 M P E G 2圧縮画像であれば、 M P E G 2デコーダによって伸長処理が実行された後、 出力されることになる。
しかしながら、 圧縮処理、 伸長処理プログラムには、 様々な種類があり、 コン テンップロバイダから媒体、 ネットワーク等を介して圧縮デ タを提供されても 、 再生装置内に対応する伸長処理実行プログラムが無い場合は、 これを再生する ことができないという事態が発生する。
本発明は、 圧縮データの再生処理を効率的に実行する構成、 すなわち、 コンテ ンッが圧縮された音声データ、 あるいは画像データ等である場合の再生処理を効 率的に実行するデータ処理装置、 データ処理方法およびコンテンツデータ生成方 法を提供することを第 6の目的とする。
本発明の第 1の側面は、 記憶媒体または通信媒体によつて提供されるコンテン ッデータの処理を行なうデータ処理装置であり、 上記コンテンツデータに対する 暗号処理を実行する暗号処理部と、 上記暗号処理部に対する制御を実行する制御 部とを有し、 上記暗号処理部は、 コンテンツデータ構成部を複数部分に分割した 部分データを 1以上含む部分データ集合に対するチェック値として部分チェック 値を生成し、 該生成した部分チェック値の照合処理により上記部分データの検証 処理を実行するとともに、 少なくとも上記部分チェック値を 1以上含む部分チェ ック値集合データ列に基づいて中間チェック値を生成し、 該生成した中間チェッ ク値を用いて、 上記部分チェック値集合を構成する複数の部分チェック値に対応 する複数の部分データ集合全体に対する検証処理を実行する構成を有することを 特徴とするデータ処理装置にある。
さらに、 本発明のデータ処理装置の一実施態様において、 上記部分チェック値 は、 チェック対象となる部分データをメッセージとし、 部分チェック値生成鍵を 適用した暗号処理によって生成される値であり、 上記中間チェック値は、 チェッ ク対象となる部分チェック値集合データ列をメッセージとし、 総チェック値生成 鍵を適用した暗号処理によって生成される値であり、 上記暗号処理部は、 上記部 分チェック値生成鍵おょぴ上記総チェック値生成鍵を格納した構成を有すること を特徴とする。
さらに、 本発明のデータ処理装置の一実施態様において、 上記暗号処理部は、 生成する部分チェック値に対応する複数種類の部分チェック値生成鍵を有するこ とを特徴とする。
さらに、 本発明のデータ処理装置の一実施態様において、 上記暗号処理は D E S暗号処理であり、 上記暗号処理部は、 D E S暗号処理を実行可能な構成を有す ることを特徴とする。 さらに、 本発明のデータ処理装置の一実施態様において、 上記部分チェック値 は、 チェック対象となる部分データをメッセージとして D E S— C B Cモードに おいて生成されるメッセージ認証符号 (MA C ) であり、 上記中間チェック値は 、 チェック対象となる部分チェック値集合データ列をメッセージとして D E S— C B Cモードにおいて生成されるメッセージ認証符号 (MA C ) であり、 上記喑 号処理部は、 D E S— C B Cモードによる暗号処理を実行する構成を有すること を特徴とする。
さらに、 本発明のデータ処理装置の一実施態様において、 上記暗号処理部の有 する D E S— C B Cモードによる暗号処理構成は、 処理対象となるメッセージ列 の一部においてのみトリプル D E Sが適用される構成であることを特徴とする。 さらに、 本発明のデータ処理装置の一実施態様において、 上記データ処理装置 は、 署名鍵を有し、 上記暗号処理部は、 上記中間チェック値に対して上記署名鍵 を適用した暗号処理により生成される値をデータ検証のための照合値として適用 する構成であることを特徴とする。
さらに、 本発明のデータ処理装置の一実施態様において、 上記データ処理装置 は、 署名鍵として異なる複数の署名鍵を有し、 上記暗号処理部は、 上記コンテン ッデータの利用制限態様に応じて上記異なる複数の署名鍵から選択された署名鍵 を上記中間チェック値に対する暗号処理に適用してデータ検証のための照合値と する構成を有することを特徴とする。
さらに、 本発明のデータ処理装置の一実施態様において、 上記データ処理装置 は、 上記複数の署名鍵として、 データ検証処理を実行するシステムの全ェンティ ティに共通の共通署名鍵と、 データ検証処理を実行する各々の装置固有の装置固 有署名鍵とを有することを特徴とする。
さ に、 本発明のデータ処理装置の一実施態様において、 上記部分チェック値 は、 データの一部を構成するヘッダ部内データについて生成される 1以上のへッ ダ部分チエック値と、 データの一部を構成するコンテンツブロックデータについ て生成される 1以上のコンテンツチェック値とを含み、 上記暗号処理部は、 上記 へッダ部内データの部分データ集合について 1以上のヘッダ部分チェック値を生 成して照合処理を実行し、 上記コンテンツ部内データの部分データ集合について
1以上のコンテンツチェック値を生成して照合処理を実行し、 さらに、 生成され た上記ヘッダ部分チェック値おょぴ上記コンテンツチェック値全てに基づいて総 チェック値を生成して照合処理を実行することによりデータ検証を実行する構成 を有することを特徴とする。
さらに、 本発明のデータ処理装置の一実施態様において、 上記部分チェック値 は、 データの一部を構成するヘッダ部内データについて生成される 1以上のへッ ダ部分チェック値を含み、 上記暗号処理部は、 上記ヘッダ部内データの部分デー タ集合について 1以上のヘッダ部分チェック値を生成して照合処理を実行し、 さ らに、 生成された上記 1以上のヘッダ部分チェック値おょぴ上記データの一部を 構成するコンテンツブロックデータからなるデータ列に基づいて総チエック値を 生成して照合処理を実行することによりデータ検証を実行する構成を有すること を特徴とする。
さらに、 本発明のデータ処理装置の一実施態様において、 上記データ処理装置 は、 さらに、 上記暗号処理部において正当性検証の実行されたデータを格納する 記録デバイスを有することを特徴とする。
さらに、 本発明のデータ処理装置の一実施態様において、 上記暗号処理部にお ける部分チェック値の照合処理において、 照合が成立しなかつた場合において、 上記制御部は、 上記記録デバィスへの格納処理を中止する構成を有することを特 徴とする。
さらに、 本発明のデータ処理装置の一実施態様において、 上記データ処理装置 は、 さらに、 上記暗号処理部において正当性検証の実行されたデータを再生する 再生処理部を有することを特徴とする。
さらに、 本発明のデータ処理装置の一実施態様において、 上記データ処理装置 は、 上記暗号処理部における部分チェック値の照合処理において、 照合が成立し なかった場合において、 上記制御部は、 上記再生処理部での再生処理を中止する 構成を有することを特徴とする。
さらに、 本発明のデータ処理装置の一実施態様において、 上記データ処理装置 は、 上記暗号処理部における部分チェック値の照合処理において、 データのへッ ダ部分チェック値の照合処理のみを実行し、 ヘッダ部分チェック値の照合が成立 したデータを上記再生処理部に転送して再生可能とする制御手段を有することを 特徴とする。
さらに、 本発明の第 2の側面は、 記憶媒体または通信媒体によって提供される コンテンッデータの処理を行なうデータ処理装置であり、 上記コンテンッデータ に対する暗号処理を実行する暗号処理部と、 上記喑号処理部に対する制御を実行 する制御部とを有し、 上記暗号処理部は、 検証対象データが暗号化データである 場合、 該暗号化データの復号処理によつて得られる復号データに対して演算処理 を実行して得られる演算処理結果データに対して署名鍵を適用した暗号処理を施 すことにより、 該検証対象データのチ ック値を生成する構成を有することを特 徴とするデータ処理装置にある。
さらに、 本発明のデータ処理装置の一実施態様において、 上記演算処理は、 上 記暗号化データの復号処理によつて得られる復号データを所定バイト単位で排他 的論理和演算する処理であることを特徴とする。
さらに、 本発明の第 3の側面は、 記憶媒体または通信媒体によって提供される コンテンツデータの処理を行なうデータ処理方法において、 コンテンツデータ構 成部を複数部分に分割した部分データを 1以上含む部分データ集合に対するチェ ック値として部分チェック値を生成し、 該生成部分チェック値を照合する処理に より上記部分データの検証処理を実行し、 少なくとも上記部分チェック値を 1以 上含む部分チユック値集合データ列に基づいて中間チェック値を生成し、 該生成 中間チェック値を用いて上記部分チェック値集合を構成する複数の部分チェック 値に対応する複数の部分データ集合全体に対する検証処理を実行することを特徴 とするデータ処理方法にある。
さらに、 本発明のデータ処理方法の一実施態様において、 上記部分チ ック値 は、 チェック対象となる部分データをメッセージとし、 部分チェック.値生成鍵を 適用した暗号処理によって生成される値であり、 上記中間チェック値は、 チエツ ク対象となる部分チェック値集合データ列をメッセージとし、 総チェック値生成 鍵を適用した暗号処理によつて生成される値であることを特徴とする。
さらに、 本発明のデータ処理方法の一実施態様において、 上記部分チェック値 は、 生成する部分チュック値に対応する異なる種類の部分チェック値生成鍵を適 用して生成することを特徴とする。
さらに、 本発明のデータ処理方法の一実施態様において、 上記暗号処理は D E S暗号処理であることを特徴とする。
さらに、 本発明のデータ処理方法の一実施態様において、 上記部分チェック値 は、 チェック対象となる部分データをメッセージとして D E S— C B Cモードに おいて生成されるメッセージ認証符号 (MA C ) であり、 上記中間チェック値は 、 チェック対象となる部分チェック値集合データ列をメッセージとして D E S - C B Cモードにおいて生成されるメッセージ認証符号 (MA C ) であることを特 徴とする。
さらに、 本発明のデータ処理方法の一実施態様において、 さらに、 上記中間チ ェック値に対して署名鍵を適用した暗号処理により生成される値をデータ検証の ための照合値として適用することを特微とする。
さらに、 本発明のデータ処理方法の一実施態様において、 データの利用制限態 様に応じて異なる署名鍵を上記中間チェック値に対する暗号処理に適用してデー タ検証のための照合値とすることを特徴とする。
さらに、 本発明のデータ処理方法の一実施態様 おいて、 上記署名鍵として、 データ検証処理を実行するシステムの全エンティティに共通の共通署名鍵と、 デ —タ検証処理を実行する各々の装置固有の装置固有署名鍵とをデータの利用制限 態様に応じて選択して使用することを特徴とする。
さらに、 本発明のデータ処理方法の一実施態様において、 上記部分チェック値 は、 データの一部を構成するヘッダ部内データについて生成される 1以上のへッ ダ部分チェック値と、 データの一部を構成するコンテンツ部内データについて生 成される 1以上のコンテンツチヱック値とを含み、 データ検証処理は、 上記へッ ダ部内データの部分データ集合について 1以上のヘッダ部分チエック値を生成し て照合処理を実行し、 上記コンテンツ部内データの部分データ集合について 1以 上のコンテンツチェック値を生成して照合処理を実行し、 さらに、 生成された上 記へッダ部分チエック値および上記コンテンツチェック値全てに基づいて総チェ ック値を生成してデータ検証を実行するものであることを特徴とする。
さらに、 本発明のデータ処理方法の一実施態様において、 上記部分チェック値 は、. データの一部を構成するヘッダ部内データについて生成される 1以上のへッ ダ部分チェック値を含み、 データ検証処理は、 上記ヘッダ部内データの部分デー タ集合について 1以上のヘッダ部分チヱック値を生成して照合処理を実行し、 さ らに、 生成された上記 1以上のへッダ部分チェック値おょぴ上記データの一部を 構成するコンテンツブロックデータからなるデータ列に基づいて総チェック値を 生成して照合処理を実行することによりデータ検証を実行するものであることを 特徴とする。 '
さらに、 本発明のデータ処理方法の一実施態様において、 データの検証後、 さ らに、 検証済みデータを記録デバィスに格納する処理を含むことを特徴とする。 さらに、 本発明のデータ処理方法の一実施態様において、 上記部分チェック値 の照合処理において、 照合が成立しなかった場合において、 上記記録デバイスへ の格納処理を中止する制御を実行することを特徴とする。
さらに、 本発明のデータ処理方法の一実施態様において、 データの検証後、 デ ータを再生するデータ再生処理を含むことを特徴とする。
さらに、 本発明のデータ処理方法の一実施態様において、 上記部分チエック値 の照合処理において、 照合が成立しなかった場合において、 上記再生処理部での 再生処理を中止する制御を実行することを特徴とする。
さらに、 本発明のデータ処理方法の一実施態様において、 上記部分チェック値 の照合処理において、 データのへッダ部分チエック値の照合処理のみを実行し、 へッダ部分チヱック値の照合が成立したデータを上記再生処理部に転送して再生 可能とする制御を実行することを特徴とする。
さらに、 本発明の第 4の側面は、 記憶媒体または通信媒体によって提供される コンテンッデータの処理を行なうデータ処理方法であり、 検証対象データが暗号 化データである場合、 該暗号化データの復号処理によって得られる復号データに 対して演算処理を実行し、 上記演算処理によつて得られる演算処理結果データに 対して署名鍵を適用した暗号処理を実行することにより上記検証対象データのチ ェック値を生成することを徴とするデータ処理方法にある。
さらに、 本発明のデータ処理方法の一実施態様において、 上記演算処理は、 上 記暗号化データの復号処理によつて得られる復号データを所定バイト単位で排他 的論理和演算する処理であることを特徴とする。
さらに、 本発明の第 5の側面は、 データ検証処理のためのデータ検証値付与方 法であり、 データを複数部分に分割した部分データを 1以上含む部分データ集合 に対する 'チェック値として部分チヱック値を付与し、 少なくとも上記部分チェッ ク値を 1以上含む部分チェック値集合データ列に対する検証を行なう中間チェッ ク値を検証対象データに付与することを特徴とするデータ検証値付与方法にある さらに、 本発明のデータ検証値付与方法の一実施態様において、 上記部分チェ ック値は、 チェック対象となる部分データをメッセージとし、 部分チェック値生 成鍵を適用した喑号処理によって生成される値であり、 上記中間チェック値は、 チェック対象となる部分チェック値集合データ列をメッセージとし、 総チェック 値生成鍵を適用した暗号処理によって生成される値であることを特徴とする。
さらに、 本発明のデータ検証値付与方法の一実施態様において、 上記部分チェ ック値は、 生成する部分チユック値に対応する異なる種類の部分チェック値生成 鍵を適用して生成することを特徴とする。
さらに、 本発明のデータ検証値付与方法の一実施態様において、 上記暗号処理 は D E S暗号処理であることを特徴とする。 さらに、 本発明のデータ検証値付与方法の一実施態様において、 上記部分チェ ック値は、 チェック対象となる部分データをメッセージとして D E S— C B Cモ ードにおいて生成されるメッセージ認 fjE符号 (MA C ) であり、 上記中間チェッ ク値は、 チェック対象となる部分チェック値集合データ列をメッセージとして D E S— C B Cモードにおいて生成されるメッセージ認証符号 (MA C ) であるこ とを特徴とする。
さらに、 本発明のデータ検証値付与方法の一実施態様において、 さらに、 上記 中間チェック値に対して署名鍵を適用した暗号処理により生成される値をデータ 検証のための照合値として適用することを特徴とする。
さらに、 本発明のデータ検証値付与方法の一実施態様において、 データの利用 制限態様に応じて異なる署名鍵を上記中間チェック値に対する暗号処理に適用し てデータ検証のための照合値とすることを特徴とする。
さらに、 本発明のデータ検証値付与方法の一実施態様において、 上記署名鍵と して、 データ検証処理を実行するシステムの全エンティティに共通の共通署名鍵 と、 データ検証処理を実行する各々の装置固有の装置固有署名鍵とをデータの利 用制限態様に応じて選択して使用するように設定することを特徴とする。
さらに、 本発明のデータ検証値付与方法の一実施態様において、 上記部分チェ ック値は、 データの一部を構成するヘッダ部内データについて生成される 1以上 のヘッダ部分チエック値と、 データの一部を構成するコンテンッ部内データにつ いて生成される 1以上のコンテンツチェック値とを含み、 上記ヘッダ部分チエツ ク値および上記コンテンツチェック値全てに対する総チェック値を生成してデー タ検証を実行するように設定することを特徴とする。
さらに、 本発明のデータ検証値付与方法の一実施態様において、 上記部分チェ ック値は、 データの一部を構成するヘッダ部内データについて生成される 1以上 のへッダ部分チェック値を含み、 上記 1以上のへッダ部分チェック値および上記 データの一部を構成するコンテンツブロックデータからなるデータ列全てに対す る総チェック値を生成してデータ検証を実行するように設定することを特徴とす る。
さらに、 本発明の第 6の側面は、 データ正当性の検証を実行するデータ検証処 理をコンピュータ ■システム上で実行せしめるコンピュータ ·プログラムを提供 するプログラム提供媒体であって、 上記コンピュータ 'プログラムは、 データを 複数部分に分割した部分データを 1以上含む部分データ集合に対するチェック値 として生成される部分チェック値の照合処理により上記部分データの検証処理を 実行するステップと、 上記部分チュック値を複数個組み合わせた部分チェック値 集合に基づいて生成される中間チェック値を用いて、 上記部分チェック値集合を 構成する複数の部分チ ック値に対応する複数の部分データ集合全体に対する検 証処理を実行するステップと、 を含むことを特徴とするプログラム提供媒体にあ る。
' さらに、 本発明の第 7の側面は、 データ処理装置において、 データ暗号化、 デ 一タ復号化、 データ検証、 認証処理、 署名処理の少なくともいずれかの暗号処理 を実行する暗号処理部と、 上記喑号処理に適用する鍵を生成するためのマスター 鍵を格納した記憶部とを有し、 上記暗号処理部は、 上記暗号処理を実行するに必 要な個別鍵を、 上記マスター鍵と、 暗号処理対象の装置またはデータの識別デー タに基づいて生成する構成を有することを特徴とするデータ処理装置にある。 さらに、 本発明のデータ処理装置の一実施態様において、 上記データ処理装置 は、 記憶媒体または通信媒体を介する転送データに関する暗号処理を行なうデー タ処理装置であり、 上記記憶部は、 上記 送データの喑号処理に適用する配送鍵 K d i sを生成する配送鍵生成用マスター鍵 MK d i sを格納し、 上記暗号処理 部は、 上記記憶部に格納された配送鍵生成用マスター鍵 MK d i sと、 上記転送 データの識別データであるデータ識別子とに基づいて暗号処理を実行して、 上記 転送データの配送鍵 K d i sを生成する構成を有することを特徴とする。
さらに、 本発明のデータ処理装置の一実施態様において、 上記データ処理装置 は、 転送データの転送先あるいは転送元となる外部接続装置の認証処理を行なう データ処理装置であり、 上記記憶部は、 上記外部接続装置の認証鍵 K a k eを生 成する認証鍵生成用マスター鍵 MK a k eを格納し、 上記暗号処理部は、 上記記 憶部に格納された認証鍵生成用マスター鍵 MK a k eと、 上記外部接続装置の識 別データである外部接続装置識別子とに基づいて暗号処理を実行して、 上記外部 接続装置の認証鍵 K a k eを生成する構成を有することを特徴とする。
さらに、 本発明のデータ処理装置の一実施態様において、 上記データ処理装置 は、 データに対する署名処理を実行するデータ処理装置であり、 上記記憶部は、 上記データ処理装置のデータ処理装置署名鍵 K d e vを生成する署名鍵生成用マ スター鍵 MK d e Vを格納し、 上記暗号処理部は、 上記記憶部に格納された署名 鍵生成用マスター鍵 MK d e Vと、 上記データ処理装置の識別データであるデー タ処理装置識別子とに基づいて暗号処理を実行して、 上記データ処理装置のデー タ処理装置署名鍵 K d e vを生成する構成を有することを特徴とする。
さらに、 本発明のデータ処理装置の一実施態様において、 暗号処理を実行する に必要な個別鍵を、 上記マスター鍵と、 暗号処理対象の装置またはデータの識別 データに基づいて生成する個別鏈生成処理は、 暗号処理対象の装置またはデータ の識別データの少なくとも一部をメッセージとし、 上記マスター鍵を暗号鍵とし て適用した暗号処理であることを特徴とする。
さらに、 本発明のデータ処理装置の一実施態様において、 上記暗号処理は D E Sアルゴリズムを適用した暗号処理であることを特徴とする。
さらに、 本発明の第 8の側面は、 複数のデータ処理装置から構成されるデータ 処理システムにおいて、 上記複数のデータ処理装置の各々が、 データ暗号化、 デ 一タ復号化、 データ検証、 認証処理、 署名処理の少なくともいずれか 暗号処理 に適用する鍵を生成するための共通のマスタ 鍵を有し、 上記複数のデータ処理 装置の各々が、 上記マスター鍵と、 暗号処理対象の装置またはデータの識別デー タに基づいて上記暗号処理を実行するに必要な共通の個別鍵を生成する構成を有 することを特徴とするデータ処理システムにある。
さらに、 本発明のデータ処理システムの一実施態様において、 上記複数のデー タ処理装置は、 コンテンツデータを提供するコンテンツデータ提供装置と、 コン -タの利用を行なうコ :、ータ利用装置によって構成され、 コン -タ提供装置およぴコ: -タ利用装置の双方が、 上記コンテン ッデータ提供装置およびコ タ利用装置間における流通コンテンツデ 一タの喑号処理に適用するコ 一タ配送键を生成するための配送鍵生成 用マスター鍵を有し、 上記コンテンツデータ提供装置は、 上記配送鍵生成用マス ター鍵と、 提供コンテンツデータの識別子であるコンテンツ識別子とに基づいて コンテンツデータ配送鍵を生成して、 該コンテンツデータの暗号化処理を実行し 、 上記コンテンツデータ利用装置は、 上記配送鍵生成用マスター鍵と、 提供コン テンッデータの識別子であるコンテンツ識別子とに基づいてコンテンツデータ配 送鍵を生成して、 該コンテンツデータの復号化処理を実行する構成を有すること を特徴とする。
さらに、 本発明のデータ処理システムの一実施態様において、 上記コンテンツ データ提供装置は、 複数の異なるコンテンツデータ配送鍵を生成するための複数 の異なる配送鍵生成用マスタ一鍵を有し、 該複数の配送鍵生成用マスタ一鍵と上 記コンテンツ識別子に基づいて複数の異なるコンテンツデータ配送鍵を生成し、 該生成した複数の配送鍵による暗号化処理を実行して複数種類の暗号化コンテン ッデータを生成し、 上記コンテンツデータ利用装置は、 上記コンテンツデータ提 供装置の有する複数の異なる配送鍵生成用マスター鍵の少なくとも 1つの配送鍵 生成用マスター鍵を有し、 自己の所有する配送鍵生成用マスター鍵と同じ配送鍵 生成用マスタ一鍵を使用して生成された配送鍵による暗号化コンテンツデータの みを復号可能とした構成を有することを特徴とする。
さらに、 本発明のデータ処理システムの一実施態様において、 上記複数のデー タ処理装置の各々に、 コンテンッデータの暗号処理に適用するコンテンッ鍵を生 成するための同一のコンテンツ鍵生成用マスター鍵を格納し、 上記複数のデータ 処理装置の 1つのデータ処理装置 Aにおいて、 上記コンテンツ鍵生成用マスター 鍵と、 該データ処理装置 Aの装置識別子とに基づいて生成されたコンテンツ鍵に より暗号化され記憶媒体に格納されたコンテンツデータを、 異なるデータ処理装 置 Bにおいて、 上記同一のコンテンツ鍵生成用マスター鍵と、 上記データ処理装 置 Aの装置識別子とに基づいてコンテンツ鍵を生成し、 該生成したコンテンツ鍵 に基づいて、 上記データ処理装置 Aにおいて上記記憶媒体に格納した暗号化コン テンッデータの復号処理を実行する構成としたことを特徴とする。
さらに、 本発明のデータ処理システムの一実施態様において、 上記複数のデー タ処理装置は、 ホストデバイスと、 該ホストデバイスの認証処理の対象となるス レーブデバイスとによって構成され、 上記ホストデバイスおよびスレーブデバイ スの双方が、 ホストデバイスとスレーブデバイス間の認証処理に適用する認証鍵 生成用マスターを有し、 上記スレーブデバイスは、 上記認証鍵生成用マスター鍵 と、 該スレープデバイスの識別子であるスレーブデバイス識別子とに基づいて認 証鍵を生成してスレーブデバイス内メモリに格納し、 上記ホス トデバイスは、 上 記認証鍵生成用マスター鍵と、 上記スレーブデバイスの識別子であるスレーブデ バイス識別子とに基づいて認証鍵を生成して認証処理を実行する構成を有するこ とを特徴とする。 '
さらに、 本発明の第 9の側面は、 データ暗号化、 データ復号化、 データ検証、 認証処理、 署名処理の少なくともいずれかの暗号処理を実行する暗号処理を実行 するデータ処理方法において、 暗号処理を実行するに必要な個別鍵を、 上記暗号 処理に適用する鍵を生成するためのマスタ一鍵と、 暗号処理対象の装置またはデ ータの識別データに基づいて生成する鍵生成ステップと、 上記鍵生成ステップに よって生成した鍵に基づいて暗号処理を実行する暗号処理ステップと、 を有する ことを特徴とするデータ処理方法にある。
さらに、 本発明のデータ処理方法の一実施態様において、 上記データ処理方法 において実行するデータ処理は、 記憶媒体または通信媒体を介する転送データに 関する暗号処理であり、 上記鍵生成ステップは、 転送データの暗号処理に適用す る配送鍵 K d i sを生成する配送鍵生成用マスター鍵 MK d i sと、 上記転送デ 一タの識別データであるデータ識別子とに基づいて暗号処理を実行し、 上記転送 データの配送鍵 K d i sを生成する配送鍵生成ステップであり、 上記暗号処理ス テツプは、 上記配送鍵生成ステップにおいて生成した配送鍵 K d i sに基づいて 転送データの暗号処理を実行するステップであることを特徴とする。
さらに、 本発明のデータ処理方法の一実施態様において、 上記データ処理方法 におレ、て実行するデータ処理は、 転送データの転送先あるいは転送元となる外部 接続装置の認証処理であり、 上記鍵生成ステップは、 上記外部接続装置の認証鍵 K a k eを生成する認証鍵生成用マスタ一鍵 M K a k eと、 上記外部接続装置の 識別デ一タである外部接続装置識別子とに基づいて暗号処理を実行して、 上記外 部接続装置の認証鍵 K a k eを生成する認証鍵生成ステップであり、 上記喑号処 理ステップは、 上記認証鍵生成ステップにおいて生成した認証鍵 K a k eに基づ いて外部接続装置の認証処理を実行するステップであることを特徴とする。 さらに、 本発明のデータ処理方法の一実施態様において、 上記データ処理装置 において実行するデータ処理は、 データに対する署名処理であり、 上記鍵生成ス テツプは、 上記データ処理装置のデータ処理装置署名鏈 K d e vを生成する署名 鍵生成用マスター鍵 MK d e Vと、 上記データ処理装置の識別データであるデー タ処理装置識別子とに基づいて暗号処理を実行して、 上記データ処理装置のデー タ処理装置署名鍵 K d e vを生成する署名鍵生成ステップであり、 上記暗号処理 ステップは、 上記署名鍵生成ステップにおいて生成した署名鍵 K d e vに基づい てデータに対する署名処理を実行するステップであることを特徴とする。
さらに、 本発明のデータ処理方法の一実施態様において、 上記鍵生成ステップ は、 暗号処理対象の装置またはデータの識別データの少なくとも一部をメッセー ジとし、 上記マスター鍵を暗号鍵として適用した暗号処理であることを特徴とす る。
さらに、 本発明のデータ処理方法の一実施態様において、 上記暗号処理は D E Sアルゴリズムを適用した暗号処理であることを特徴とする。
さらに、 本発明の第 1 0の側面は、 コンテンツデータを提供するコンテンツデ ータ提供装置と、 コンテンツデータの利用を行なうコンテンツデータ利用装置と からなるデータ処理システムにおけるデータ処理方法であり、 上記コンテンツデ 一タ提供装置は、 コンテンツデータの暗号処理に適用するコンテンツデータ配送 鍵を生成するための配送鍵生成用マスター鍵と、 提供コンテンツデータの識別子 であるコンテンツ識別子とに基づいてコンテンツデータ配送鍵を生成して、 該コ ンテンッデータの暗号化処理を実行し、 上記コンテンツデータ利用装置は、 上記 配送鍵生成用マスター鍵と、 提供コンテンツデータの識別子であるコンテンツ識 別子とに基づいてコンテンツデータ配送鍵を生成して、 該コンテンツデータの復 号化処理を実行することを特徴とするデータ処理方法にある。
さらに、 本発明のデータ処理方法の一実施態様において、 上記コンテンツデー タ提供装置は、 複数の異なるコンテンツデータ配送鍵を生成するための複数の異 なる配送鍵生成用マスター鍵を有し、 該複数の配送鍵生成用マスター鍵と上記コ ンテンッ識別子に基づいて複数の異なるコンテンツデータ配送鍵を生成し、 該生 成した複数の配送鍵による暗号化処理を実行して複数種類の暗号化コンテンッデ ータを生成し、 上記コンテンツデータ利用装置は、 上記コンテンツデータ提供装 置の有する複数の異なる配送鍵生成用マスター鍵の少なくとも 1つの配送鍵生成 用マスタ一鍵を有し、 自己の所有する配送鍵生成用マスタ一鍵と同じ配送鍵生成 用マスタ一鍵を使用して生成された配送鍵による暗号化コンテンツデータのみを 復号することを特徴とする。
さらに、 本発明の第 1 1の側面は、 複数のデータ処理装置によって構成される データ処理システムにおけるデータ処理方法であり、 上記複数のデータ処理装置 中の 1つのデ^"タ処理装置 Aにおいて、 コンテンツデータの暗号処理に適用する コンテンツ鍵を生成するためのコンテンツ鏈生成用マスター鍵と、 該データ処理 装置 Aの装置識別子とに基づいて生成されたコンテンツ鍵により暗号化されたコ ンテンッデータを記憶媒体に格納するステップと、 異なるデータ処理装置 Bにお いて、 上記データ処理装置 Aと同一の上記コンテンツ鍵生成用マスタ一鍵と上記 データ処理装置 Aの装置識別子とに基づいて上記コンテンツ鍵と同一のコンテン ッ鍵を生成するステップと、 上記データ処理装置 Bにおいて生成したコンテンツ 鍵により上記記憶媒体に格納したコンテンツデータの復号を行なうステップと、 を有することを特徴とするデータ処理方法にある。
さらに、 本発明の第 1 2の側面は、 ホストデバイスと、 該ホストデバイスの認 証処理の対象となるスレーブデバイスとからなるデータ処理システムにおけるデ ータ処理方法であり、 上記スレーブデバイスは、 ホストデバイスとスレープデバ ィス間の認証処理に適用する認証鍵を生成するための認証鍵生成用マスター鍵と 、 該スレープデバイスの識別子であるスレーブデバイス識別子とに基づいて認証 鍵を生成し、 生成した認証鍵を該スレープデバイス内のメモリに格納し、 上記ホ ストデバイスは、 上記認証鏈生成用マスター鍵と、 上記スレーブデパイスの識別 子であるスレーブデバイス識別子とに基づいて認証鍵を生成して認証処理を実行 することを特徴とするデータ処理方法にある。
さらに、 本発明の第 1 3の側面は、 データ暗号化、 データ復号化、 データ検証 、 認証処理、 署名処理の少なくともいずれかの暗号処理を実行する暗号処理をコ ンピュータ ·システム上で実行せしめるコンピュータ ·プログラムを提供するプ ログラム提供媒体であって、 上記コンピュータ 'プログラムは、 暗号処理を実行 するに必要な個別鍵を、 上記暗号処理に適用する鍵を生成するため,のマスタ一鍵 と、 暗号処理対象の装置またはデータの識別データに基づレ、て生成する鍵生成ス テツプと、 上記鍵生成ステップによって生成した鍵に基づいて暗号処理を実行す る暗号処理ステップと、' を含むことを特徴とするプロダラム提供媒体にある。 本発明の第 1 4の側面は、 記憶媒体または通信媒体によって提供されるコンテ ンッデータの処理を行なうデータ処理装置であり、 データ処理装置識別子を格納 した記憶部と、 コンテンツデータ中に含まれる不正機器リス トを抽出し、 該リス ト内のェントリと上記記憶部に格納された上記データ処理装置識別子との照合処 理を実行するリス ト検証部と、 上記照合処理部における照合処理の結果、 上記不 正機器リスト中に上記データ処理識別子と一致する情報が含まれる場合において 、 上記コンテンツデータの再生または記録デバイスに対する格納処理少なくとも いずれかの処理の実行を中止する制御部と、 を有することを特徴とするデータ処 理装置にある。 さらに、 本発明のデータ処理装置の一実施態様において、 上記リス ト検証部は 、 上記コンテンツデータに対する暗号処理を実行する暗号処理部を有し、 上記喑 号処理部は、 上記コンテンツデータ中に含まれる不正機器リス トのチェック値に 基づいて上記不正機器リス トの改竄の有無を検証し、 該検証により、 改竄なしと 判定した場合にのみ上記照合処理を実行する構成であることを特徴とする。 さらに、 本発明のデータ処理装置の一実施態様において、 上記データ処理装置 は、 不正機器リストチェック値生成鍵を有し、 上記暗号処理部は、 検証対象の不 正機器リス ト構成データに対して上記不正機器リストチェック値生成鍵を適用し た喑号処理を実行して不正機器リストチェック値を生成し、 該生成した不正機器 リス トチェック値と、 上記コンテンツデータ中に含まれる不正機器リストのチェ ック値との照合を実行して上記不正機器リス トの改竄の有無を検証する構成であ ることを特徴とする。
さらに、 本発明のデータ処理装置の一実施態様において、 上記リス ト検証部は 、 上記コンテンツデータに対する暗号処理を実行する暗号処理部を有し、 上記喑 号処理部は、 上記コンテンツデータ中に含まれる暗号化された不正機器リス トの 復号処理を実行し、 該復号処理の結果として得られた不正機器リ.ストについて上 記照合処理を実行する構成であることを特徴とする。
さらに、 本発明のデータ処理装置の一実施態様において、 上記リス ト検証部は 、 コンテンッデータの転送先または転送元となる記録デバィスとの相互認証処理 を実行する暗号処理部を有し、 上記リス ト検証部は、 上記暗号処理部によって実 行される上記記録デバィスとの相互認証処理による認証が成立したことを条件と して、 上記コンテンツデータ中に含まれる不正機器リストを抽出し上記記憶部に 格納された上記データ処理装置識別子との照合処理を実行する構成であることを 特徴とする。
さらに、 本発明の第 1 5の側面は、 記憶媒体または通信媒体によって提供され るコンテンツデータの処理を行なうデータ処理方法であり、 コンテンツデータ中 に含まれる不正機器リストを抽出するリスト抽出ステップと、 上記リスト抽出ス テツプによって抽出されたリストに含まれるェントリと、 データ処理装置内の記 憶部に格納された上記データ処理装置識別子との照合処理を実行する照合処理ス テツプと、 上記照合処理ステップにおける照合処理の結果、 上記不正機器リスト 中に上記データ処理識別子と一致する情報が含まれる場合、 上記コンテンッデー タの再生または記録デバイスに対する格納処理少なくともいずれかの処理の実行 を中止するステップと、 を有することを特徴とするデータ処理方法にある。
さらに、 本発明のデータ処理方法の一実施態様において、 上記データ処理方法 は、 さらに、 上記コンテンツデータ中に含まれる不正機器リス トのチェック値に 基づいて上記不正機器リストの改竄の有無を検証する検証ステップを含み、 上記 照合処理ステップは、 上記検証ステップにより、 改竄なしと判定した場合にのみ 実行することを特徴とする。
さらに、 本発明のデータ処理方法の一実施態様において、 上記検証ステップは 、 検証対象の不正機器リスト構成データに対して不正機器リストチェック値生成 鍵を適用した暗号処理を実行して不正機器リストチェック値を生成するステップ と、 生成した不正機器リス トチェック値と、 上記コンテンツデータ中に含まれる 不正機器リストのチェック値との照合を実行して上記不正機器リストの改竄の有 無を検証するステップとを含むことを特徴とする。
さらに、 本発明のデータ処理方法の一実施態様において、 上記データ処理方法 は、 さらに、 上記コンテンツデータ中に含まれる暗号化された不正機器リス トの 復号処理を実行する復号ステップを含み、 上記照合処理ステップは、 上記復号ス テツプの結果として得られた不正機器リストについて上記照合処理を実行するこ とを特徴とする。
さらに、 本発明のデータ処理方法の一実施態様において、 上記データ処理方法 は、 さらに、 コンテンツデータの転送先または転送元となる記録デバイスとの相 互認証処理ステップを含み、 上記照合処理ステップは、 上記相互認証処理ステツ プによって実行される上記記録デバィスとの相互認証処理による認証が成立した ことを条件として上記照合処理を実行することを特徴とする。 さらに、 本発明の第 1 6の側面は、 記憶媒体または通信媒体によって複数の記 録再生器に対して提供されるコンテンツデータの生成を行なうコンテンツデータ 生成方法であり、 コンテンツデータのヘッダ情報として該コンテンツデータの利 用の排除対象となる記録再生器の記録再生器識別子を構成データとした不正機器 リストを格納してコンテンツデータとすることを特徴とするコンテンツデータ生 成方法にある。
さらに、 本発明のコンテンツデータ生成方法の一実施態様において、 コンテン ッデータのヘッダ情報として、 上記不正機器リストの改竄チェック用の不正機器 リストチェック値を格納することを特徴とする。
さらに、 本発明のコンテンツデータ生成方法の一実施態様において、 上記不正 機器リストを暗号化してコンテンッデータのへッダ情報中に格納することを特徴 とする。
さらに、 本発明の第 1 7の側面は、 記憶媒体または通信媒体によって提供され るコンテンツデータの処理をコンピュータ .システム上で実行せしめるコンビュ ータ 'プログラムを提供するプログラム提供媒体であって、 上記コンピュータ · プログラムは、 コンテンツデータ中に含まれる不正機器リストを抽出するリスト 抽出ステップと、 上記リスト抽出ステップによって抽出されたリストに含まれる エントリと、 データ処理装置内の記憶部に格納された上記データ処理装置識別子 との照合処理を実行する照合処理ステツプと、 上記照合処理ステップにおける照 合処理の結果、 上記不正機器リスト中に上記データ処理識別子と一致する情報が 含まれる場合、 上記コンテンツデータの再生または記録デバィスに対する格納処 理少なくともいずれかの処理の実行を中止するステップと、 を有することを特徴 とするプログラム提供媒体にある。
さらに、 本発明の第 1 8の側面は、 記憶媒体または通信媒体によって提供され るコンテンッデータの処理を行なうデータ処理装置であり、 上記コンテンツデー タに対する暗号処理を実行する暗号処理部と、 上記暗号処理部に対する制御を実 行する制御部と、 上記暗号処理部における暗号処理に使用され、 上記コン データを利用する他のデータ処理装置に共通のシステム共通鍵と、 上記喑号処理 部における暗号処理に使用されるデータ処理装置固有の装置固有鍵または該装置 個有鍵を生成するための装置固有識別子の少なくともいずれかを有し、 上記暗号 処理部は、 上記コンテンツデータの利用態様に応じて上記システム共通鍵、 また は上記装置固有鍵のレ、ずれかを上記コンテンツデータに適用して暗号処理を実行 する構成を有することを特徴とするデータ処理装置にある。
さらに、 本発明のデータ処理装置の一実施態様において、 上記暗号処理部は、 上記コンテンツデータに含まれる利用制限情報に応じて上記システム共通鍵、 ま たは上記装置固有鍵のいずれかを上記コンテンツデータに適用して暗号処理を実 行する構成を有することを特徴とする。
さらに、 本発明のデータ処理装置の一実施態様において、 上記データ処理装置 は、 さらに、 コンテンツデータを記録する記録デバイスを有し、 上記暗号処理部 は、 上記コンテンツデータを自己のデーダ処理装置のみにおいて使用する利用制 限を付する場合、 上記コンテンツデータに対して上記装置固有鍵を用いた喑号処 理を実行して上記記録デバイスへの格納データを生成し、 上記コンテンツデータ を自己のデータ処理装置以外の装置においても使用可能とする場合、 上記コンテ ンッデータに対して上記システム共通鍵を用いた暗号処理を実行して上記記録デ バイスへの格納データを生成する構成を有することを特徴とする。
さらに、 本発明のデータ処理装置の一実施態様において、 上記データ処理装置 は、 データ処理装置固有の署名鍵 K d e V、 および複数のデータ処理装置に共通 のシステム署名鍵 K s y sを有し、 上記暗号処理部は、 上記コンテンツデータを 自己のデータ処理装置のみにおいて使用する利用制限を付して上記記録デバイス に格納する場合、 上記コンテンツデータに対して上記装置固有の署名鍵 K d e v を適用した暗号処理により装置固有チェック値を生成し、 上記コンテンツデータ を自己のデータ処理装置以外の装置においても使用可能として上記記録デバイス に格納する場合、 上記コンテンツデータに対して上記システム署名鍵 K s y sを 適用した暗号処理により総チェック値を生成し、 上記制御部.は、 上記暗号処理部 の生成した上記装置固有チェック値または上記総チェック値のいずれかを上記コ ンテンッデータと共に上記記録デバイスに格納する制御を実行することを特徴と する。
さらに、 本発明のデータ処理装置の一実施態様において、 上記データ処理装置 は、 データ処理装置固有の署名鍵 K d e v、 および複数のデータ処理装置に共通 のシステム署名鍵 K s y sを有し、 上記喑号処理部は、 自己のデータ処理装置の みにおいて使用する利用制限の付されたコンテンツデータを再生する場合、 上記 コンテンツデータに対して上記装置固有の署名鍵 K d e vを適用した暗号処理に より装置固有チェック値を生成し、 該生成した装置固有チヱック値の照合処理を 実行し、 自己のデータ処理装置以外の装置においても使用可能とされた利用制限 の付されたコンテンツデータを再生する場合、 上記コンテンツデータに対して上 記システム署名鍵 K s y sを適用した喑号処理により総チェック値を生成し、 該 生成した総チェック値の照合処理を実行し、 上記制御部は、 上記装置固有チエツ ク値の照合が成立した場合、 あるいは上記総チヱック値の照合が成立した場合に のみコンテンツデータの暗号処理部での処理を続行させて再生可能復号デ一タを 生成する構成を有することを特徴とする。
さらに、 本発明のデータ処理装置の一実施態様において、 上記データ処理装置 は、 記録データ処理装置署名鍵用マスター鍵 MK d e v、 およびデータ処理装置 識別子 I D d e vを有し、 上記暗号処理部は、 上記データ処理装置署名鍵用マス ター鍵 MK d e vと上記デ^ "タ処理装置識別子 I D d e Vとに基づく喑号処理に よりデータ処理装置固有鍵としての署名鍵 K d e vを生成する構成を有すること を特徴とする。
さらに、 本発明のデータ処理装置の一実施態様において、 上記暗号処理部は、 上記データ処理装置識別子 I D d e vに対して上記データ処理装置署名鏈用マス ター鍵 MK d e vを適用した D E S暗号処理により上記署名鍵 K d e vを生成す る構成であることを特徴とする。
さらに、 本発明のデータ処理装置の一実施態様において、 上記暗号処理部は、 上記コンテンツデータに対する暗号処理を実行して中間チェック値を生成し、 該 中間チェック値に上記データ処理装置固有鍵またはシステム共有鍵を適用した暗 号処理を実行することを特徴とする。
さらに、 本発明のデータ処理装置の一実施態様において、 上記暗号処理部は、 上記コンテンッデータを複数部分に分割した部分データを 1以上含む部分データ 集合に対する暗号処理により部分チェック値を生成し、 該生成した部分チェック 値を含む部分チェック値集合データ列に対する暗号処理により中間チェック値を 生成する構成であることを特徴とする。 '
さらに、 本発明の第 1 9の側面は、 記憶媒体または通信媒体によって提供され るコンテンツデータの処理を行なうデータ処理方法であり、 上記コンテンツデー タの利用態様に応じて、 上記コンテンツデータを利用する他のデータ処理装置に 共通の暗号処理用システム共通鍵、 または、 データ処理装置固有の装置固有鍵の いずれかの暗号処理鍵を選択し、 選択した暗号処理鍵を上記コンテンツデータに 適用して暗号処理を実行することを特徴とするデータ処理方法にある。
さらに、 本発明のデータ処理方法の一実施態様において、 上記データ処理方法 において、 上記喑号処理鍵を選択するステップは、 上記コンテンツデータに含ま れる利用制限情報に応じて選択するステップであることを特徴とする。
さらに、 本発明のデータ処理方法の一実施態様において、 上記データ処理方法 におけるコンテンツデータの記録デバィスに対する記録処理において、 上記コン テンッデータを自己のデータ処理装置のみにおいて使用する利用制限を付する場 合、 上記コンテンツデータに対して上記装置固有鍵を用いた暗号処理を実行して 上記記録デバィスへの格納データを生成し、 上記コンテンツデータを自己のデー タ処理装置以外の装置においても使用可能とする場合、 上記コンテンツデータに 対して上記システム共通鍵を用いた暗号処理を実行して上記記録デバィスへの格 納データを生成することを特徴とする。
さらに、 本発明のデータ処理方法の一実施態様において、 上記データ処理方法 におけるコンテンツデータの記録デバィスに対する記録処理において、 上記コン テンッデータを自己のデータ処理装置のみにおいて使用する利用制限を付して上 記記録デバイスに格納する場合、 上記コンテンツデータに対して上記装置固有の 署名鍵 K d e vを適用した暗号処理により装置固有チェック値を生成し、 上記コ ンテンッデータを自己のデータ処理装置以外の装寧においても使用可能として上 記記録デバイスに格納する場合、 上記コンテンツデータに対して上記システム署 名鍵 K s y sを適用した暗号処理により総チ ック値を生成し、 上記生成した上 記装置固有チエック値または上記総チェック値のいずれかを上記コンテンツデー タと共に上記記録デバィスに格納することを特徴とする。
さらに、 本発明のデータ処理方法の一実施態様において、 上記データ処理方法 におけるコンテンッデータの再生処理において、 自己のデータ処理装置のみにお いて使用する利用制限の付されたコンテンツデータを再生する場合、 上記コンテ ンッデータに対して上記装置固有の署名鍵 K d e vを適用した喑号処理により装 置固有チェック値を生成し、 該生成した装置固有チェック値の照合処理を実行し 、 自己のデータ処理装置以外の装置においても使用可能とされた利用制限の付さ れたコンテンツデータを再生する場合、 上記コンテンツデータに対して上記シス テム署名鍵 K s y sを適用した暗号処理により総チェック値を生成し、 該生成し た総チェック値の照合処理を実行し、 上記装置固有チェック値の照合が成立した 場合、 あるいは上記総チエック値の照合が成立した場合にのみコンテンツデータ の再生を実行することを特徴とする。
さらに、 本発明のデータ処理方法の一実施態様において、 データ処理装置署名 鍵用マスター鍵 MK d e vとデータ処理装置識別子 I D d e vとに基づく暗号処 理によりデータ処理装置固有鍵としての署名鍵 K d e vを生成するステップを含 むことを特徴とする。
さらに、 本発明のデータ処理方法の一実施態様において、 上記署名鍵 K d e v 生成ステップは、 上記データ処理装置識別子 I D d e vに対して上記データ処理 装置署名鍵用マスター鍵 MK d e vを適用した D E S暗号処理により上記署名鍵 K d e vを生成するステップであることを特徴とする。 さらに、 本発明のデータ処理方法の一実施態様において、 上記データ処理方法 は、 さらに、 上記コンテンツデータに対する暗号処理を実行して中間チェック値 を生成するステップを含み、 上記中間チェック値に上記データ処理装置固有鍵ま たはシステム共有鍵を適用した暗号処理を実行することを特徴とする。
さらに、 本発明のデータ処理方法の一実施態様において、 上記データ処理方法 は、 さらに、 上記コンテンツデータを複数部分に分割した部分データを 1以上含 む部分データ集合に対する暗号処理により部分チヱック値を生成し、 該生成した 部分チヱック値を含む部分チ ック値集合データ列に対する暗号処理により中間 チェック値を生成することを特徼とする。
さらに、 本発明の第 2 0の側面は、 記憶媒体または通信媒体によって提供され るコンテンツデータの処理を行なうデータ処理をコンピュータ · システム上で実 行せしめるコンピュータ ·プログラムを提供するプログラム提供媒体であつ.て、 上記コンピュータ 'プログラムは、 上記コンテンツデータの利用態様に応じて、 上記コンテンツデータを利用する他のデータ処理装置に共通の喑号処理用システ ム共通鍵、 または、 データ処理装置固有の装置固有鍵のいずれかの暗号処理鍵を 選択するステップと、 選択した暗号処理鍵を上記コンテンツデータに適用して暗 号処理を実行するステップと、 を含むことを特徴とするプログラム提供媒体にあ る。
さらに、 本発明の第 2 1の側面は、 記憶媒体または通信媒体によって提供され るコンテンッデータの処理を行なうデータ処理装置であり、 上記コンテンツデー タに対する暗号処理を実行する暗号処理部と、 上記暗号処理部に対する制御を実 行する制御部とを有し、 上記暗号処理部は、 データに含まれる検証対象のコンテ ンッブ口ックデータ単位にコンテンツチェック値を生成し、 生成したコンテンツ チェック値の照合処理を実行することにより、 上記データ中のコンテンツプロッ クデータ単位の正当性検証処理を実行する構成を有することを特徴とするデータ 処理装置にある。
さらに、 本発明のデータ処理装置の一実施態様において、 上記データ処理装置 は、 コンテンツチェック値生成鍵を有し、 上記暗号処理部は、 検証対象のコンテ ンッブロックデータに基づいてコンテンツ中間値を生成し、 該コンテンツ中間値 に対する上記コンテンツチェック値生成鍵を適用した暗号処理を実行してコンテ ンツチ ック値を生成する構成であることを特徴とする。 '
さらに、 本発明のデータ処理装置の一実施態様において、 上記暗号処理部は、 検証対象のコンテンツプロックデータが暗号化されている場合、 該コンテンツブ 口ックデータの復号処理によって得られる復号文全体を所定バイ ト単位で所定の 演算処理を行いコンテンツ中間値を生成し、 検証対象のコンテンツプロックデ一 タが喑号化されていない場合、 コンテンツプロックデータ全体を所定バイト単位 で所定の演算処理を行いコンテンッ中間値 ¾r生成する構成であることを特徴とす る。
さらに、 本発明のデータ処理装置の一実施態様において、 上記暗号処理部にお ける上記中間チェック値の生成処理において適用する上記所定の演算処理は排他 的論理和演算であることを特徴とする。
さらに、 本発明のデータ処理装置の一実施態様において、 上記暗号処理部は、 C B Cモードによる喑号処理構成を有し、 検証対象のコンテンツプロックデータ が暗号化されている場合のコンテンツ中間値生成処理に適用する上記復号処理は 、 C B Cモードによる復号処理であることを特徴とする。
さらに、 本発明のデータ処理装置の一実施態様において、 上記暗号処理部の有 する C B Cモードによる暗号処理構成は、 処理対象となるメッセージ列の一部に おいてのみ複回数共通鍵暗号処理が適用される構成であることを特徴とする。 さらに、 本発明のデータ処理装置の一実施態様において、 上記暗号処理部は、 コンテンツプロックデータに複数のパーツが含まれ、 該コンテンツプロックデ一 タに含まれる一部のパーツが検証対象である場合において、 検証対象パ一ッに基 づいてコンテンツチェック値を生成し、 生成したコンテンツチェック値の照合処 理を実行することにより、 上記データ中のコンテンツブロックデータ単位毎の正 当性検証処理を実行する構成を有することを特徴とする。 さらに、 本発明のデータ処理装置の一実施態様において、 上記暗号処理部は、 上記コンテンツプロックデータに複数のパーツが含まれ、 検証対象である要検証 パーツが 1つである場合において、 上記要検証パーツが暗号化されている場合、 要検証パーツの復号処理によつて得られる復号文全体を所定バイト単位で排他論 理和した値に、 コンテンツチェック値生成鍵を適用した暗号処理を実行してコン テンツチエック値を生成し、 上記要検証パーツが暗号化されていない場合、 該要 検証パーツ全体を所定バイト単位で排他論理和した値を、 上記コンテンツチエツ ク値生成鍵を適用して暗号処理を実行してコンテンツチェック値を生成する構成 であることを特徴とする。
さらに、 本発明のデータ処理装置の一実施態様において、 上記暗号処理部は、 上記コンテンツプロックデータに複数のパーツが含まれ、 検証対象である要検証 パーツが複数である場合において、 各パーツ毎にコンテンツチェック値生成键を 適用して暗号処理を実行して得られたパーツチェック値の連結データに対して、 さらに上記コンテンツチェック値生成鍵を適用した暗号処理を実行して得られる 結果をコンテンツチェック値とする構成であることを特徴とする。
さらに、 本発明のデータ処理装置の一実施態様において、 上記データ処理装置 は、 さらに、 上記暗号処理部において正当性検証の実行されたコンテンツプロッ クデータを含むコンテンツデータを格納する記録デバイスを有することを特徴と する。
さらに、 本発明のデータ処理装置の一実施態様において、 上記暗号処理部にお けるコンテンツチェック値の照合処理において、.照合が成立しなかつた場合にお いて、 上記制御部は、 上記記録デバイスへの格納処理を中止する構成を有するこ とを特 ί数とする。 .
さらに、 本発明のデータ処理装置の一実施態様において、 上記データ処理装置 は、 さらに、 上記暗号処理部において正当性検証の実行されたデータを再生する 再生処理部を有することを特徴とする。
さらに、 本発明のデータ処理装置の一実施態様において、 上記データ処理装置 は、 上記暗号処理部におけるコンテンツチェック値の照合処理において、 照合が 成立しなかった場合において、 上記制御部は、 上記再生処理部での再生処理を中 止する構成を有すること,を特徴とする。
さらに、 本発明の第 2 2の側面は、 記憶媒体または通信媒体によって提供され るコンテンッデータの処理を行なうデータ処理方法であり、 データに含まれる検 証対象のコンテンツプロックデータ単位にコンテンツチェック値を生成し、 生成 したコンテンツチェック値の照合処理を実行することにより、 上記データ中のコ ンテンップロックデータ単位の正当性検証処理を実行することを特徴とするデー タ処理方法にある。
さらに、 本発明のデータ処理方法の一実施態様において、 上記データ処理方法 は、 検証対象のコンテンツブロックデータに基づいてコンテンツ中間値を生成し 、 生成したコンテンツ中間値に対するコンテンツチェック値生成鍵を適用した暗 号処理を実行してコンテンツチヱック値を生成することを特徴とする。
さらに、 本発明のデータ処理方法の一実施態様において、 上記データ処理方法 において、 検証対象のコンテンツブロックデータが暗号化されている場合、 該コ ンテンップロックデータの復号処理によって得られる復号文全体を所定バイト単 位で所定の演算処理を行いコンテンツ中間値を生成し、 検証対象のコンテンツブ 口ックデータが暗号化されていない場合、 コンテンツプロックデータ全体を所定 バイト単位で所定の演算処理を行いコンテンツ中間値を生成することを特徴とす る。
さらに、 本発明のデータ処理方法の一実施態様において、 上記データ処理方法 において、 上記中間チヱック値の生成処理において適用する上記所定の演算処理 は排他的論理和演算であることを特徴とする。
さらに、 本発明のデータ処理方法の一実施態様において、 上記コンテンツ中間 値の生成処理において、 検証対象のコンテンツプロックデータが暗号化されてい る場合のコンテンツ中間値生成処理に適用する上記復号処理は、 C B Cモードに よる復号処理であることを特徴とする。 さらに、 本発明のデータ処理方法の一実施態様において、 上記 C B Cモードに よる復号処理構成は、 処理対象となるメッセージ列の一部においてのみ複回数共 通鍵暗号処理が適用することを特徴とする。
さらに、 本発明のデータ処理方法の一実施態様において、 上記データ処理方法 において、 コンテンツプロックデータに複数のパーツが含まれ、 該コンテンツブ 口ックデータに含まれる一部のパーツが検証対象である場合、 検証対象パーツに 基づいてコンテンツチェック値を生成し、 生成したコンテンツチェック値の照合 処理を実行することにより、 上記データ中のコンテンツプロックデータ単位毎の 正当性検証処理を実行することを特徴とする。
さらに、 本発明のデータ処理方法の一実施態様において、 上記データ処理方法 において、 コンテンツプロックデータに複数のパーツが含まれ、 検証対象である 要検証パーツが 1つである場合、 上記要検証パーツが暗号化されている場合、 要 検証パーツの復号処理によつて得られる復号文全体を所定バイト単位で排他論理 和した値に、 コンテンツチヱック値生成鍵を適用した喑号処理を実行してコンテ ンッチェック値を生成し、 上記要検証パーツが暗号化されていない場合、 該要検 証パーツ全体を所定バイ ト単位で排他論理和した値を、 上記コンテンツチェック 値生成鍵を適用して暗号処理を実行してコンテンツチェック値を生成することを 特徴とする。
さらに、 本発明のデータ処理方法の一実施態様において、 上記データ処理方法 において、 上記コンテンツプロックデータに複数のパーツが含まれ、 検証対象で ある要検証パーツが複数である場合、 各パーツ毎にコンテンツチヱック値生成鍵 を適用して暗号処理を実行して得られたパーツチェック値の連結データに対して 、 さらに上記コンテンツチェック値生成鍵を適用した暗号処理を実行して得られ る結果をコンテンツチェック値とすることを特徴とする。
さらに、 本発明のデータ処理方法の一実施態様において、 上記データ処理方法 は、 さらに、 正当性検証の実行されたコンテンツプロックデータを含むコンテン ッデータを格納するステップを含むことを特徴とする。 さらに、 本発明のデータ処理方法の一実施態様において、 上記データ処理方法 は、 さらに、 コンテンツチェック値の照合処理において、 照合が成立しなかった 場合において、 上記制御部は、 上記記録デバイスへの格納処理を中止することを 特徴とする。
さらに、 本発明のデータ処理方法の一実施態様において、 上記データ処理方法 は、 さらに、 正当性検証の実行されたデータを再生する再生処理を実行するステ ップを含むことを特徴とする。
さらに、 本発明のデータ処理方法の一実施態様において、 上記データ処理方法 は、 コンテンツチェック値の照合処理において、 照合が成立しなかった場合にお いて、 再生処理を中止することを特徴とする。
さらに、 本発明の第 2 3の側面は、 コンテンツデータ検証処理のためのコンテ ンッデータ検証値付与方法であり、 データに含まれる検証対象のコンテンツプロ ックデータ単位にコンテンツチェック値を生成し、 生成したコンテンツチェック 値を検証対象コンテンツプロックデータを含むコンテンツデータに付与すること を特徴とするコンテンツデータ検証値付与方法にある。
さらに、 本発明のコンテンツデータ検証値付与方法の一実施態様において、 上 記コンテンツチェック値は、 チェック対象となるコンテンツプロックデータをメ ッセージとし、 コンテンツチェック値生成鍵を適用した暗号処理によって生成さ れる値であることを特徴とする。
さらに、 本発明のコンテンツデータ検証値付与方法の一実施態様において、 上 記コンテンツチェック値は、 検証対象のコンテンツプロックデータに基づいてコ ンテンッ中間ィ直を生成し、 該コンテンツ中間値に対する上記コンテンツチェック 値生成鍵を適用した暗号処理を実行して生成される値であることを特徴とする。 さらに、 本発明のコンテンツデータ検証値付与方法の一実施態様において、 上 記コンテンツチェック値は、 検証対象のコンテンツプロックデータに対する C B Cモードによる喑号処理を実行することによって生成される値であることを特徴 とする。 さらに、 本発明のコンテンツデ"タ検証値付与方法の一実施態様において、 上 記 C B Cモードによる暗号処理構成は、 処理対象となるメッセ一ジ列の一部にお いてのみ複回数共通鍵喑号処理が適用される構成であることを特徴とする。 さらに、 本発明のコンテンツデータ検証値付与方法の一実施態様において、 コ ンテンップロックデータに複数のパーツが含まれ、 該コンテンツプロックデータ に含まれる一部のパーツを検証対象とする場合において、 検証対象パーツに基づ いてコンテンツチェック値を生成し、 生成したコンテンツチェック値を検証対象 コンテンツプロックデータを含むコンテンツデータに付与することを特徴とする さらに、 本発明のコンテンツデータ検証値付与方法の一実施態様において、 上 記コンテンツプロックデータに複数のパーツが含まれ、 検証対象である要検証パ ーッが 1つである場合において、 上記要検証パーツが暗号化されている場合、 要 検証パーツの復号処理によって得られる復号文全体を所定バイト単位で排他論理 和した値に、 コンテンツチェック値生成鍵を適用した暗号処理を実行してコンテ ンツチユック値を生成し、 上記要検証パーツが暗号化されていない場合、 該要検 証パーツ全体を所定バイト単位で排他論理和した値を、 上記コンテンツチェック 値生成鍵を適用して暗号処理を実行してコンテンツチェック値を生成し、 生成し たコンテンツチェック値を検証対象コンテンツブロックデータを含むコンテンッ データに付与することを特徴とする。
さらに、 本発明のコンテンツデータ検証値付与方法の一実施態様において、 上 記コンテンツブロックデータに複数のパーツが含まれ、 検証対象である要検証パ 一ッが複数である場合において、 各パーツ毎にコンテンツチェック値生成鍵を適 用して暗号処理を実行して得られたパーツチェック値の連結データに対して、 さ らに上記コンテンツチェック値生成鍵を適用した暗号処理を実行して得られる結 果をコンテンツチェック値とし、 生成したコンテンツチェック値を検証対象コン テンップロックデータを含むコンテンツデータに付与することを特徴とする。 さらに、 本発^の第 2 4の側面は、 記憶媒体または通信媒体によって提供され るコンテンツデータの処理を行なうデータ処理をコンピュータ ·システム上で実 行せしめるコンピュータ ·プログラムを提供するプログラム提供媒体であって、 上記コンピュータ 'プログラムは、 データに含まれる検証対象のコンテンツブロ ックデータ単位にコンテンツチェック値を生成するステップと、 生成したコンテ ンッチェック値の照合処理を実行することにより、 上記データ中のコンテンツブ 口ックデータ単位の正当性検証処理を実行するステップと、 を含むことを特徴と するプログラム提供媒体にある。
さらに、 本発明の第 25の側面は、 少なくとも一部のブロックが暗号化された 複数のコンテンツブロックと、 該コンテンツプロックに関する情報を格納したへ ッダ部を有するコンテンッデータの記録デバイスに対する格納データを生成する 処理を実行するデータ処理装置であり、 上記データ処理装置は、 上記記録デバィ スに対する格納対象となるコンテンツデータが、 上記コンテンツブロックの暗号 鍵 Kc o nを暗号鍵 Kd i sによって喑号処理した暗号鍵データ Kd i s [K c o n] を上記ヘッダ部に格納したデータによって構成されている場合において、 上記暗号鍵データ Kd i s [Kc o n] を上記ヘッダ部から取り出して復号処 ¾ を実行して復号データ Kc o nを生成し、 該生成した復号データ Kc o nに対し て異なる暗号鍵 K s t rを適用して喑号処理を実行することにより、 暗号鍵 K s t rによって喑号処理された新たな暗号鍵データ K s t r [Kc o n] を生成し て上記コンテンツデータのヘッダ部に格納する処理を実行する構成を有すること を特徴とするデータ処理装置にある。
本発明の第 26の側面は、 少なくとも一部のプロックが喑号化された複数のコ ンテンップロックと、 該コンテンツプロックに関する情報を格納したヘッダ部を 有するコンテンツデータの記録デバィスに対する格納データを生成する処理を実 行するデータ処理装置であり、 上記データ処理装置は、 上記記録デバイスに対す る格納対象となるコンテンツデータに含まれる上記コンテンツプロックが、 喑号 鍵 Kb 1 cによって暗号化されたコンテンツと、 暗号鍵 K c o nによって暗号化 された暗号鍵データ K c o n [Kb 1 c] によって構成され、 さらに、 暗号鍵 K 。 0 11を喑号鍵1^(1 i sによって暗号処理した喑号鍵データ K d i s [Kc o n ] を上記ヘッダ部に格納した構成を有する場合において、 上記喑号鍵データ Kd i s [Kc o n] を上記ヘッダ部から取り出して復号処理を実行して復号データ K c o nを生成し、 該生成した復号データ Kc o nに対して異なる喑号鍵 K s t rを適用して喑号処理を実行することにより、 暗号鍵 K s t rによって暗号処理 された暗号鍵データ K s t r [Kc o n] を生成して上記コンテンツデータのへ ッダ部に格納する処理を実行する構成を有することを特徴とするデータ処理装置 にある。
さらに、 本発明の第 27の側面は、 少なくとも一部のプロックが暗号化された 複数のコンテンツプロックと、 該コンテンツプロックに関する情報を格納したへ ッダ部を有するコンテンッデータの記録デバイスに対する格納データを生成する 処理を実行するデータ処理装置であり、 上記データ処理装置は、 上記記録デバィ スに対する格納対象となるコンテンツデータに含まれる上記コンテンツプロック 力 S、 喑号鍵 Kb 1 cによって暗号化されたコンテンツと、 暗号鍵 Kd i sによつ て暗号化された暗号鍵データ Kd i s [Kb 1 c] によって構成されている場合 において、 上記暗号鏈データ Kd i s [Kb 1 c] を上記コンテンツブロック部 から取り出して、 該暗号鍵 Kb 1 cの復号処理を実行して復号データ Kb 1 cを 生成し、 該生成した復号データ Kb 1 cに対して異なる喑号鍵 K s t rを適用し て暗号処理を実行することにより、 暗号鍵 K s t rによって暗号処理された喑号 鍵 K s t r [Kb 1 c] を生成してコンテンツプロック部に格納する処理を実行 する構成を有することを特徴とするデータ処理装置にある。
さらに、 本発明の第 28の側面は、 コンテンツデータを生成するコンテンツデ ータ生成方法であり、 音声情報、 画像情報、 プログラムデータの少なくともいず れかを含むデータによって構成されるコンテンツプロックを複数プロック連結し 、 複数のコンテンツプロックに含まれる少なくとも一部のコンテンツプロックを 暗号鍵 K c o nによつて暗号処理し、 上記暗号鍵 K c o nを喑号鍵 K d i sによ つて暗号処理した喑号鍵データ Kd i s [K c o n] を生成して上記コンテンツ データのヘッダ部に格納し、 複数のコンテンツプロックとヘッダ部を含むコンテ ンッデータを生成するコンテンツデータ生成方法にある。
さらに、 本発明のコンテンツデータ生成方法の一実施態様において、 さらに、 コンテンツデータの識別情報、 コンテンツデータのデータ長、 コンテンツデータ' のデータ種類を含む取扱方針情報、 上記コンテンツブロックのデータ長、 暗号処 理の有無を含む情報を格納したプロック情報を生成して、 上記ヘッダ部に格納す る処理を含むことを特徴とする。
さらに、 本発明のコンテンツデータ生成方法の一実施態様において、 上記コン テンッデータ生成方法は、 さらに、 上記ヘッダ部を構成する一部の情報に基づく 部分チェック値を生成して、 該部分チェック値を上記ヘッダ部に格納し、 さらに 、 上記部分チェック値に基づく総チェック値を生成して、 該総チェック値を上記 へッダ部に格納する処理を含むことを特徴とする。
さらに、 本発明のコンテンツデータ生成方法の一実施態様において、 上記部分 チェック値の生成処理およぴ総チエック値の生成処理は、 チェック対象となるデ 一タをメッセージとし、 チェック値生成鍵を暗号鍵とする D E S喑号処理アルゴ リズムを適用して実行することを特徴とする。
さらに、 本発明のコンテンツデータ生成方法の一実施態様において、 上記コン テンッデ タ生成方法は、 さらに、 上記プロック情報を暗号鍵 K b i tにより暗 号化処理し、 該暗号鍵 K b i tを暗号鍵 K d i sによって生成した暗号鍵データ K d i s [ K b i t ] を上記ヘッダ部に格納することを特徴とする。
さらに、 本発明のコンテンツデータ生成方法の一実施態様において、 上記コン テンップロック中の複数プロックの各々のプロックは共通する一定のデータ長と して生成することを特徴とする。
さらに、 本発明のコンテンツデータ生成方法の一実施態様において、 上記コン テンップロック中の複数プロックの各々のプロックは暗号データ部と非喑号デ一 タ部とを規則的に配列した構成として生成することを特徴とする。
さらに、 本発明の第 2 9の側面は、 コンテンツデータを生成するコ ータ生成方法であり、 音声情報、 画像情報、 プログラムデータの少なくともいず れかを含むコンテンツブロックを複数ブロック連結するとともに、 複数のコンテ ンップロックの少なくとも一部のプロックを、 音声情報、 画像情報、 プログラム データの少なくともいずれかを含むデータを暗号鍵 Kb 1 cで暗号化した喑号デ ータ部と、 該暗号データ部の暗号鍵 Kb 1 cを暗号鍵 Kc o nによって暗号処理 した暗号鍵データ Kc o n [Kb 1 c] の組によって構成し、 上記暗号鍵 Kc o nを暗号鍵 Kd i sによって喑号処理した暗号鍵データ Kd i s [Kc o n] を 生成して上記コンテンツデータのヘッダ部に格納し、 複数のコンテンツブロック とヘッダ部を含むコンテンツデータを生成するコンテンツデータ生成方法にある さらに、 本発明の第 30の側面は、 コンテンツデータを生成するコンテンツデ ータ生成方法であり、 音声情報、 画像情報、 プログラムデータの少なくともいず れかを含むコンテンツプロックを複数プロック連結するとともに、 複数のコンテ ンッブロックの少なくとも一部のプロックを、 音声情報、 画像情報、 プログラム データの少なくともいずれかを含むデータを暗号鍵 Kb 1 cで暗号化した喑号デ ータ部と、 該喑号データ部の喑号鏈 Kb 1 cを暗号鍵 Kd i sによって暗号処理 した暗号鍵データ Kd i s [Kb 1 c] の糸且によって構成し、 複数のコンテンツ プロックとヘッダ部を含むコンテンツデータを生成するコンテンツデータ生成方 法にある。
さらに、 本発明の第 3 1の側面は、 少なくとも一部のブロックが暗号化された 複数のコンテンツプロックと、 該コンテンツプロックに関する情報を格納したへ ッダ部を有するコンテンッデータの記録デバィスに対する格納処理を実行するデ ータ処理方法であり、 上記記録デバィスに対する格納対象となるコンテンッデー タが、 上記コンテンツプロックの喑号鍵 K c o nを暗号鍵 K d i sによって暗号 処理した暗号鍵データ Kd i s [Kc o n] を上記ヘッダ部に格納したデータに よって構成されている場合において、 上記暗号鍵データ Kd i s [Kc o n] を 上記ヘッダ部から取り出して復号処理を実行して復号データ Kc o nを生成し、 該生成した復号データ Kc o nに対して異なる喑号鍵 K s t rを適用して暗号処 理を実行することにより、 暗号鏈 K s t rによって暗号処理された新たな暗号鍵 データ K s t r [K c o n] を生成し、 上記生成した暗号鍵データ K s t r [K c o n] を上記コンテンツデータのヘッダ部に格納し、 上記複数のコンテンツプ ロックと共に上記記録デバイスに格納することを特徴とするデータ処理方法にあ る。
さらに、 本発明の第 3 2の側面は、 少なくとも一部のブロックが暗号化された 複数のコンテンツプロックと、 該コンテンツプロックに関する情報を格納したへ ッダ部を有するコンテンツデータの記録デバイスに対する格納処理を実行するデ ータ処理方法であり、 上記記録デバイスに対する格納対象となるコンテンッデー タに含まれる上記コンテンツプロックが、 喑号鍵 Kb 1 cによって暗号化された コンテンツと、 暗号鍵 K c o nによって喑号化された喑号鍵データ K c o n [K b 1 c] によって構成され、 さらに、 暗号鍵 Kc o nを暗号鍵 Kd i sによって 暗号処理した暗号鍵データ Kd i s [Kc o n] を上記ヘッダ部に格納した構成 を有する場合において、 上記暗号鍵データ Kd i s [Kc o n] を上記ヘッダ部 から取り出して復号処理を実行して復号データ K c o nを生成し、 該生成した復 号データ Kc o nに対して異なる暗号鏈 K s t rを適用して暗号処理を実行する ことにより、 喑号鍵 K s t rによって暗号処理された喑号鍵データ K s t r [K c o n] を生成し、 上記生成した暗号鍵データ K s t r [Kc o n] を上記コン テンッデータのヘッダ部に格納し、 上記複数のコンテンツプロックと共に上記記 録デバイスに格納することを特徴とするデータ処理方法にある。
さらに、 本発明の第 3 3の側面は、 少なくとも一部のブロックが暗号化された 複数のコンテンツプロックと、 該コンテンツプロックに関する情報を格納したへ ッダ部を有するコンテンッデータの記録デバィスに対する格納処理を実行するデ ータ処理方法であり、 上記記録デバイスに対する格納対象となるコンテンッデー タに含まれる上記コンテンツブロックが、 暗号鍵 Kb 1 cによって暗号化された コンテンツと、 暗号鍵 Kd i sによって暗号化された喑号鍵データ Kd i s [K b 1 c] によって構成されている場合において、 上記暗号鍵データ Kd i s [K b 1 c] を上記コンテンツプロック部から取り出して、 該暗号鍵 Kb 1 cの復号 処理を実行して復号データ Kb 1 cを生成し、 該生成した復号データ Kb.1 cに 対して異なる喑号鍵 K s t rを適用して喑号処理を実行することにより、 暗号鍵 K s t rによって暗号処理された暗号鍵 K s t r [Kb 1 c] を生^し、 該生成 した暗号鍵 K s t r [Kb 1 c] をコンテンツプロック部に格納し、 複数のコン テンッブロックと共に上記記録デバイスに格納することを特徴とするデータ処理 方法にある。
さらに、 本発明の第 34の側面は、 少なくとも一部のブロックが暗号化された 複数のコンテンツブロックと、 該コンテンツプロックに関する情報を格納したへ ッダ部を有するコンテンツデータの記録デバィスに対する格納データの生成処理 をコンピュータ ·システム上で実行せしめるコンピュータ ·プログラムを提供す るプログラム提供媒体であって、 上記コンピュータ 'プログラムは、 上記記録デ バイスに対する格納対象となるコンテンツデータが、 上記コンテンツブロックの 暗号鍵 Kc 0 11を暗号鍵1^(1 i sによって喑号処理した暗号鍵データ Kd i s [ K c o n] を上記ヘッダ部に格納したデータによって構成されている場合におい て、 上記暗号鍵データ Kd i s [Kc o n] を上記ヘッダ部から取り出して復号 処理を実行して復号データ Kc o nを生成するステップと、 該生成した復号デ一 タ Kc o nに対して異なる暗号鍵 K s t rを適用して暗号処理を実行することに より、 暗号鍵 K s t rによって暗号処理された新たな暗号鍵データ K s t r [K c o n] を生成するステップと、 上記生成した暗号鍵データ K s t r [Kc o n ] を上記コンテンツデータのヘッダ部に格納するステップと、 を含むことを特徴 とするプログラム提供媒体にある。
本発明の第 3 5の側面は、 記憶媒体または通信媒体によって提供されるコンテ ンッデータの再生処理を行なうデータ処理装置であり、 圧縮されたコンテンツと 該圧縮コンテンツの伸長処理プログラムとを含むコンテンヅデータのコンテンツ データ解析を実行し、 該コンテンツデータから圧縮コンテンツと、 伸長処理プロ グラムの抽出処理を実行するコンテンツデータ解析部と、 上記コンテンツデータ 解析部の解析結果として得られたコンテンツデータに含まれる伸長処理プロダラ ムを用いて該コンテンツデータに含まれる圧縮コンテンツの伸長処理を実行する 伸長処理部とを有することを特徴とするデータ処理装置にある。
さらに、 本発明のデータ処理装置の一実施態様において、 上記コンテンツデ一 タ解析部によって抽出された圧縮コンテンツを格納するデータ記憶部と、 上記コ ンテンッデータ解析部によって抽出された伸長処理プログラムを格納するプログ ラム記憶部とを有し、 上記伸長処理部は、 上記データ記憶部に記憶された圧縮コ ンテンッに対して、 上記プログラム記憶部に記憶された伸長処理プログラムを適 用して伸長処理を実行する構成を有することを特徴とする。
さらに、 本発明のデータ処理装置の一実施態様において、 上記コンテンツデー タ解析部は、 上記コンテンツデータに含まれるへッダ情報に基づいてコンテンツ データの構成情報を取得してコンテンツデータの解析を行なう構成であることを 特徴とする。
さらに、 本発明のデータ処理装置の一実施態様において、 上記ヘッダ情報には 、 圧縮コンテンツの再生優先順位情報が含まれ、 上記伸長処理部において伸長処 理対象となる圧縮コンテンツが複数ある場合、 上記伸長処理部は、 上記コンテン ッデータ解析部におレ、て取得されたへッダ情報中の優先順位情報に基づいて、 該 優先順位に従って順次コンテンツ伸長処理を'実行する構成であることを特徴とす る。
さらに、 本発明のデータ処理装置の一実施態様において、 上記データ処理装置 は、 さらに、 伸長処理対象となる圧縮コンテンツの情報を表示する表示手段と、 上記表示手段に表示されたコンテンツ情報から選択された再生コンテンツ識別デ ータを入力する入力手段を有し、 上記伸長処理部は、 上記入力手段から入力され た再生コンテンツ識別データに基づいて、 該識別データに対応する圧縮コンテン ッの伸長処理を実行する構成であることを特徴とする。
さらに、 本発明の第 3 6の側面は、 記憶媒体または通信媒体によって提供され るコンテンツデータの再生処理を行なうデータ処理装置であり、 圧縮コ 、 または伸長処理プログラムのいずれかを含むコンテンツデータを受領し、 受領 コンテンツデータに含まれるヘッダ情報から該コンテンツデータが圧縮コンテン ッであるか伸長処理プログラムであるかを判別するとともに、 該コンテンツデー タが圧縮コンテンツである場合、 該コンテンツデータのヘッダ情報から、 該圧縮 コンテンツに適用された圧縮処理プログラム種類を取得し、 該コンテンツデータ が伸長処理プログラムである場合、 該コンテンツデータのへッダ情報から伸長処 理プログラム種類を取得するコンテンッデータ解析部と、 圧縮コンテンッの伸長 処理を実行する伸長処理部とを有し、 上記伸長処理部は、 上記コンテンツデータ 解析部が解析しだ圧縮コンテンツの圧縮処理プログラム種類に対して適用可能な 伸長処理プログラムを、 上記コンテンツデータ解析部によつて解析された伸長処 理プログラム種類に基づいて選択し、 該選択した伸長処理プログラムによる伸長 処理を実行する構成を有することを特徴とするデータ処理装置にある。
さらに、 本発明のデータ処理装置の一実施態様において、 上記データ処理装置 は、 さらに、 上記コンテンツデータ解析部によって抽出された圧縮コンテンツを 格納するデータ記憶部と、 上記コンテンツデ^^タ解析部によって抽出された伸長 処理プログラムを格納するプログラム記憶部とを有し、 上記伸長処理部は、 上記 データ記憶部に記憶された圧縮コンテンツに対して、 上記プロダラム記憶部に記 憶された伸長処理プログラムを適用して伸長処理を実行する構成を有することを 特徴とする。
さらに、 本発明のデータ処理装置の一実施態様において、 上記ヘッダ情報には 、 圧縮コンテンツの再生優先順位情報が含まれ、 伸長処理対象となる圧縮コンテ ンッが複数ある場合、 上記伸長処理部におけるコンテンツ伸長処理は、 上記コン テンッデータ解析部において取得されたヘッダ情報中の優先順位情報に基づいて 、 該優先順位に従って順次実行する構成であることを特徴とする。
さらに、 本発明のデータ^理装置の一実施態様において、 上記データ処理装置 は、 伸長処理プログラムを検索する検索手段を有し、 上記検索手段は、 上記コン ータ解析部が解析した圧縮コンテンツの圧縮処理プログラム種類に対し て適用可能な伸長処理プログラムを、 上記データ処理装置がアクセス可能なプロ グラム格納手段を検索対象として検索する構成であることを特徴とする。
さらに、 本発明のデータ処理装置の一実施態様において、 上記データ処理装置 は、 さらに、 伸長処理対象となる圧縮コンテンツの情報を表示する表示手段と、 上記表示手段に表示されたコンテンツ情報から選択された再生コンテンツ識別デ ータを入力する入力手段を有し、 上記伸長処理部は、 上記入力手段から入力され た再生コンテンッ識別データに基づいて、 該識別データに対応する圧縮コンテン ッの伸長処理を実行する構成であることを特徴とする。
さらに、 本発明の第 3 7の側面は、 記憶媒体または通信媒体によって提供され るコンテンツデータの再生処理を行なうデータ処理方法であり、 圧縮されたコン テンッと該圧縮コンテンッの伸長処理プログラムとを含むコンテンツデータのコ ンテンッデータ解析を実行し、 該コンテンツデータから圧縮コンテンツと、 伸長 処理プログラムの抽出処理を実行するコンテンツデータ解析ステップと、 上記コ ンテンッデータ解析ステップの解析結果として得られたコンテンツデータに含ま れる伸長処理プログラムを用いて該コンテンツデータに含まれる圧縮コンテンツ の伸長処理を実行する伸長処理ステップとを有することを特徴とするデータ処理 方法にある。
さらに、 本発明のデータ処理方法の一実施態様において、 上記データ処理方法 は、 さらに、 上記コンテンツデータ解析ステップによって抽出された圧縮コンテ ンッを格納するデータ記憶ステップと、 上記コンテンッデータ解析部によって抽 出された伸長処理プログラムを格納するプログラム記憶ステップとを有し、 上記 伸長処理ステップは、 上記データ記憶ステップにおいて記憶された圧縮コンテン ッに対して、 上記プログラム記憶ステップにおいて記憶された伸長処理プロダラ ムを適用して伸長処理を実行する構成を有することを特徴とする。
さらに、 本発明のデータ処理方法の一実施態様において、 上記コンテンツデー タ解析ステップは、 上記コンテンツデータに含まれるへッダ情報に基づいてコン テンッデータの構成情報を取得してコンテンツデータの解析を行なうことを特徴 とする。
さらに、 本発明のデータ処理方法の一実施態様において、 上記ヘッダ情報には 、 圧縮コンテンツの再生優先順位情報が含まれ、 上記伸長処理部において伸長処 理対象となる圧縮コンテンツが複数ある場合、 上記伸長処理ステップは、 上記コ ンテンッデータ解析ステップにおいて取得されたヘッダ情報中の優先順位情報に 基づいて、 該優先順位に従って順次コンテンツ伸長処理を実行することを特徴と する。
さらに、 本発明のデータ処理方法の一実施態様において、 上記データ処理方法 は、 さらに、 伸長処理対象となる圧縮コンテンツの情報を表示手段に表示する表 示ステップと、 上記表示手段に表示されたコンテンツ情報から選択された再生コ ンテンッ識別データを入力する入力する入力ステップとを有し、 上記伸長処理ス テップは、 上記入力ステップにおいて入力された再生コンテンツ識別デ一タに基 づいて、 該識別データに対応する圧縮コンテンツの伸長処理を実行することを特 徴とする。
さらに、 本発明の第 3 8の側面は、 記憶媒体または通信媒体によって提供され るコンテンツデータの再生処理を行なうデータ処理方法であり、 圧縮コンテンツ
、 または伸長処理プログラムのいずれかを含むコンテンツデータを受領し、 受領 コンテンツデータに含まれるへッダ情報から該コンテンツデータが圧縮コンテン ッであるか伸長処理プログラムであるかを判別するとともに、 該コンテンツデー タが圧縮コンテンツである場合、 該コンテンツデータのヘッダ情報から、 該圧縮 コンテンッに適用された圧縮処理プ口グラム種類を取得し、 該コンテンッデータ が伸長処理プログラムである場合、 該コンテンツデータのヘッダ情報から伸長処 理プログラム種類を取得するコンテンツデータ解析ステップと、 上記コンテンツ データ解析ステップにおいて解析した圧縮コンテンツの圧縮処理プログラム種類 に対して適用可^な伸長処理プログラムを、 上記コンテンッデータ解析ステツプ によつて解析された伸長処理プログラム種類に基づいて選択する選択ステツプと 、 上記選択ステップにおいて選択 Lた伸長処理プログラムによる伸長処理を実行 する伸長処理ステップとを有することを特徴とするデータ処理方法にある。
さらに、 本発明のデータ処理方法の一実施態様において、 上記データ処理方法 は、 さらに、 上記コンテンツデータ解析部によって抽出された圧縮コンテンツを 格納するデータ記憶ステップと、 上記コンテンッデータ解析部によって抽出され た伸長処理プログラムを格納するプログラム記憶ステップとを有し、 上記伸長処 理ステップは、 上記データ記憶ステップにおいて記憶された圧縮コンテンツに対 して、 上記プログラム記憶ステップにおいて記憶された伸長処理プログラムを適 用して伸長処理を実行することを特徴とする。
さらに、 本発明のデータ処理方法の一実施態様において、 上記ヘッダ情報には 、 圧縮コンテンツの再生優先順位情報が含まれ、 伸長処理対象となる圧縮コンテ ンッが複数ある場合、 上記伸長処理ステップは、 上記コンテンツデータ解析ステ ップにおいて取得されたヘッダ情報中の優先順位情報に基づいて、 該優先順位に 従って順次実行することを特徴とする。
さらに、 本発明のデータ処理方法の一実施態様において、 上記データ処理方法 は、 さらに、 伸長処理プログラムを検索する検索ステップを有し、 上記検索ステ ップは、 上記コンテンッデータ解析ステップにおいて解析した圧縮コンテンツの 圧縮処理プログラム種類に対して適用可能な伸長処理プログラムを、 アクセス可 能なプログラム格納手段を検索対象として検索することを特徴とする。
さらに、 本発明のデータ処理方法の一実施態様において、 上記データ処理方法 は、 さらに、 伸長処理対象となる圧縮コンテンツの情報を表示手段に表示する表 示ステップと、 上記表示手段に表示されたコンテンッ情報から選択された再生コ ンテンッ識別データを入力する入力する入力ステップとを有し、 上記伸長処理ス テツプは、 上記入力手段から入力された再生コンテンツ識別データに基づいて、 該識別データに対応する圧縮コンテンツの伸長処理を実行することを特徴とする さらに、 本発明の第 3 9の側面は、 記憶媒体または通信媒体によって提供する コンテンツデータの生成処理を行なうコンテンツデータ生成方法であり、 圧縮さ れたコンテンッと該圧縮コンテンツの伸長処理プログラムとを組み合わせたコン テンッデータを生成することを特徴とするコンテンッデータ生成方法にある。 さらに、 本発明のコンテンツデータ生成方法の一実施態様において、 さらに、 上記コンテンツデータのヘッダ情報として該コンテンツデータの構成情報を付加 することを特徴とする。
'さらに、 本発明のコンテンツデータ生成方法の一実施態様において、 さらに、 上記コンテンッデータのヘッダ情報として、 該コンテンツデータに含まれるコン テンッの再生優先順位情報を付加することを特徴とする。
さらに、 本発明の第 4 0の側面は、 記憶媒体または通信媒体によって提供され るコンテンツデータの生成処理を行なうコンテンツデータ生成方法であり、 コン テンッデータが圧縮コンテンツであるか伸長処理プログラムであるかを識別する コンテンツデータ種類をヘッダ情報として付加し、 該コンテンツデータが圧縮コ ンテンッである場合は、 該圧縮コンテンツに適用された圧縮処理プログラム種類 をヘッダ情報として付加し、 該コンテンツデータが伸長処理プログラムである場 合は、 伸長処理プログラム種類をヘッダ情報として付加したコンテンツデータを 生成することを特徴とするコンテンッデータ生成方法にある。
さらに、 本発明のコンテンツデータ生成方法の一実施態様において、 上記コン テンッデータのへッダ情報として、 該コンテンツデータに含まれるコンテンツの 再生優先順位情報を付加することを特徴とする。
さらに、 本発明の第 4 1の側面は、 記憶媒体または通信媒体によって提供され るコンテンツデータの再生処理をコンピュータ ·システム上で実行せしめるコン ピュータ 'プログラムを提供するプログラム提供媒体であって、 上記コンビユー タ ·プログラムは、 圧縮されたコンテンツと該圧縮コンテンツの伸長処理プログ ラムとを含むコンテンツデータのコンテンツデータ解析を実行し、 該コンテンツ データから圧縮コンテンツと、 伸長処理プログラムの抽出処理を実行するコンテ ンッデータ解析ステップと、 上記コンテンツデータ解析ステップの解析結果とし て得られたコンテンツデータに含まれる伸長処理プログラムを用いて該コンテン ッデータに含まれる圧縮コンテンツの伸長処理を実行する伸長処理ステップとを 有することを特徴とするプログラム提供媒体にある。
本発明に係るプログラム提供媒体は、 例えば、 様々なプログラム ·コードを実 行可能な汎用コンピュータ 'システムに対して、 コンピュータ 'プログラムをコ ンピュータ可読な形式で提供する媒体である。 媒体は、 C Dや F D、 MOなどの 記憶媒体、 あるいは、 ネットワークなどの伝送媒体など、 その形態は特に限定さ れない。
このようなプログラム提供媒体は、 コンピュータ ·システム上で所定のコンビ ユータ .プログラムの機能を実現するための、 コンピュータ 'プログラムと提供 媒体との構造上又は機能上の協働的関係を定義したものである。 換言すれば、 該 提供媒体を介してコンピュータ ·プログラムをコンピュータ ·システムにインス トールすることによって、 コンピュータ ■システム上では協働的作用が発揮され 、 本発明の他の側面と同様の作用効果を得ることができるのである。
本発明のさらに他の目的、 特徴や利点は、 後述する本発明の実施例や添付する 図面に基づくより詳細な説明によって明らかになるであろう。
このように、 本発明のデータ処理装置おょぴデータ処理方法によれば、 コンテ ンッデータを複数部分に分割した部分データを 1以上含む部分データ集合に対す るチェック値として生成される部分チヱック値の照合処理により部分データの検 証処理を実行し、 部分チェック値を複数個組み合わせた部分チェック値集合に対 する検証を行なう部分チェック値検証用チェック値の照合処理により、 部分チェ ック値集合を構成する複数の部分チェック値に対応する複数の部分データ集合全 体に対する検証処理を実行する構成としたので、 コンテンツデータ全体に対する 唯一のチェック値を付与した構成と異なり、 部分的な検証処理が可能となり、 ま た、 全体の検証処理も、 部分チェック値を使用して実行するので、 効率的となる さらに、 本発明のデータ処理装置おょぴデータ処理方法によれば、 改竄の恐れ のないデータ部分に対する検証処理を省略する等、 コンテンツデータの使用態様 、 例えばダウンロード処理、 再生処理に応じた検証処理が可能となり、 使用態様 に則した効率的な検証を行なうことができる。
さらに、 本発明のデータ処理装置およびデータ処理方法によれば、 データ喑号 化、 データ複号化、 データ検証、 認証処理、 署名処理等の暗号処理を実行するた めに必要となる個別鍵を記憶部に格納せず、 これらの個別鍵を生成するためのマ スター鍵を記憶部に格納した構成を持ち、 データ処理装置における暗号処理部が 、 暗号鍵、 認証鍵等の個別鍵を必要に応じて、 それらの個別鍵に対応するマスタ ー鏈を記憶部から取り出して、 取り出したマスター鍵と、 装置またはデータの識 別データに基づいて、 例えば D E Sアルゴリズムを適用した暗号処理を実行して 、 暗号鍵、 認証鍵等の個別鍵を生成する構成としたので、 個別鍵自体が記憶部か ら漏洩する可能性がなく、 個別鍵を得るためには、 個別鍵生成アルゴリズと、 マ スター鍵の双方の情報、 さらに装置またはデータの識別データ等、 複数の情報が 必要となり、 暗号処理システムのセキュリティを高めることが可能となる。 また 、 個別鍵が何ちかの理由により漏洩したした場合でも、 その被害の範囲は個別鍵 の範囲に限定されるため、 システム前名対の崩壌にはつながらないといえる。 さらに、 本発明のデータ処理装置おょぴデータ処理方法によれば、 装置または データの識別データに基づいて、 個別鍵を逐次生成する構成であるので、 個々の 装置に適用する鍵のリス トを管理装置において保持する必要がなく、 セキュリテ ィが高まると同時にシステム管理も容易になる。 - さらに、 本発明のデータ処理装置、 データ処理方法およびコンテンツデータ生 成方法によれば、 コンテンツデータに不正機器の識別データ情報を格納し、 記録 再生器におけるコンテンツ利用に先立って、 不正機器リストと、 コンテンツを利 用しょうとする記録再生器の記録再生器識別子.との照合処理を実行して、 照合の 結果、 不正機器リストに含まれるヱントリに記録再生器識別子と一致するェント リが存在した場合には、 以降の処理、 例えばコンテンツデータ復号、 ダウンロー ド、 再生処理等の実行を中止する構成としたので不正に鍵を取得した再生機器等 によるコンテンツの不正利用を排除することが可能となる。
さらに、 本発明のデータ処理装置、 データ処理方法およびコンテンツデータ生 成方法によれば、 コンテンツデータ中の不正機器リスト用のチェック値を併せて コンテンツデータに含ませる構成としたので、 リスト自体の改竄の防止が図れ、 さらにセキュリティの高いコンテンツデータ利用構成が提供可能となる。
さらに、 本発明のデータ処理装置おょぴデータ処理方法によれば、 記録再生器
、 P C等のデータ処理装置にデータ処理装置固有の装置固有鍵と、 コンテンツデ ータを利用する他のデータ処理装置に共通のシステム共通鍵とを格納したのでコ ンテンッの利用制限に応じたコンテンツ処理が可能となる。 データ処理装置は、 これら 2つの鍵をコンテンツの利用制限に応じて選択的に利用する。 例えばその データ処理装置においてのみ利用可能なコンテンツである場合は、 データ処理装 置固有の鍵を用い、 一方、 他のシステムにおいても利用可能なコンテンツである 場合にはシステム共通鍵を用いてコンテンツデータのチェック値生成、 照合処理 を実行する。 照合が成立した場合にのみ暗号化データを復号して再生することが 可能となるので、 そのデータ処理装置のみが利用可能なコンテンツ、 あるいはシ ステムに共通して利用可能なコンテンツ等、 コンテンツの利用制限に応じた処理 が可能となる。
さらに、 本発明のデータ処理装置、 データ処理方法およびコンテンツデータ検 証値付与方法によれば、 コンテンツプロックデータ単位にコンテンツチェック値 を生成し、 生成したコンテンツチェック値の照合処理を実行し、 さらに、 検証対 象のコンテンツプロックデータに基づいてコンテンツ中間値を生成してコンテン ツチエック値生成鍵を適用した暗号処理によりコンテンツチェック値を生成する 構成としたので、 従来のデータ全体の処理に比較して効率的な検証が可能となる さらに、 本発明のデータ処理装置、 データ処理方法およびコンテンツデータ検 証値付与方法によれば、 コンテンツプロック単位での検証が可能となるとともに 、 コンテンツデータの使用態様、 例えばダウンロード処理、 再生処理に応じた簡 略化した検証処理が可能となり、 使用態様に則した効率的な検証を行なうことが できる。
さらに、 本発明のデータ処理装置、 コンテンツデータ生成方法、 およびデータ 処理方法においては、 コンテンツデータ中に複数のコンテンツプロックを設け、 各コンテンツプロック単位での暗号化処理を可能とした構成を持ち、 またコンテ ンッ暗号化に用いた鍵をさらに暗号化してヘッダ部に格納する構成としたので、 例えば複数のコンテンツプロックが存在し、 暗号処理の必要なブロックと、 不要 なプロックとが混在する場合でも、 各プロックを連結した任意なデータ構成とす るこどが可能となる。
さらに、 本発明のデータ処理装置、 データ処理システム、 およびデータ処理方 法によれば、 コンテンツブロックの構成を規則的構成、 例えば一律のデータ長を 持つ構成、 あるいは暗号化プロックと非暗号化 (平文) ブロックとを交互に配置 した構成とすることにより、 その復号処理等を速やかに実行することが可能とな り、 コンテンツデータの内容に応じた処理、 例えば音楽データの再生等に適した 暗号化コンテンッデータの提供が可能となる。
さらに、 本発明のデータ処理装置、 データ処理方法およびコンテンツデータ生 成方法は、 コンテンツが圧縮された音声データ、 あるいは画像データ等である場 合の再生処理を効率的に実行することができる。 すなわち、 コンテンツデータの 構成を圧縮データと伸長処理プログラムとを組み合わせた構成とすることで、 再 生処理装置において、 圧縮コンテンツデータに付帯する伸長処理プログラムを適 用した伸長処理が可能となり、 再生処理装置内に伸長処理プログラムが存在せず 再生ができないという事態が回避できる。
さらに、 本発明のデータ処理装置、 データ処理方法おょぴコンテンツデータ生, 成方法によれば、 コンテンツデータの構成を圧縮データとその圧縮処理プロダラ ム種類を格納したヘッダ部の組合わせとし、 また、 コンテンツが伸長処理プログ ラムである場合、 コンテンツデータを伸長処理プログラムとそのプログラム種類 を格納したヘッダ部の組み合わせとすることにより、 再生処理装置が、 圧縮コン テンッデータに適用可能な伸長処理プログラムをヘッダ情報に基づいて判定し、 さらに再生処理装置がアクセス可能な記録デバィス等から適用可能なプログラム を検索して伸長処理を実行する構成としたので、 ユーザによるプログラム検索処 理を実行する必要がなくなり、 効率的な再生処理が可能となる。 図面の簡単な説明
図 1は、 従来のデータ処理システムの構成を示す図である。
図 2は、 本発明の適用されるデータ処理装置の構成を示す図である。
図 3は、 本発明の適用されるデータ処理装置の構成を示す図である。
図 4は、 メディア上、 通信路上におけるコンテンツデータのデータフォーマツ トを示す図である。
図 5は、 コンテンツデータ中のへッダに含まれる取扱方針を示す図である。 図 6は、 コンテンツデータ中のヘッダに含まれるブロック情報を示す図である 図 7は、 D E Sを用いた電子署名生成方法を示す図である。
図 8は、 トリプル D E Sを用いた電子署名生成方法を示す図である。
図 9は、 トリプル D E Sの態様を説明する図である。
図 1 0は、 一部にトリプル D E Sを用いた電子署名生成方法を示す図である。 図 1 1は、 電子署名生成における処理フローを示す図である。
図 1 2は、 電子署名検証における処理フローを示す図である。
図 1 3は、 対称鍵暗号技術を用いた相互認証処理の処理シーケンスを説明する 図である。
図 1 4は、 公開鍵証明書を説明する図である。
図 1 5は、 非対称鍵暗号技術を用いた相互認証処理の処理シーケンスを説明す る図である。
図 1 6は、 楕円曲線暗号を用いた暗号化処理の処理フローを示す図である。 図 1 7は、 楕円曲線暗号を用いた復号化処理の処理フローを示す図である。 図 1 8は、 記録再生器上のデータ保持状況を示す図である。
図 1 9は、 記録デバイス上のデータ保持状況を示す図である。
図 2 0は、 記録再生器と記録デバイスとの相互認証処理フローを示す図である 図 2 1は、 記録再生器のマスタ鍵と記録デバイスの対応鍵ブロックとの関係を 示す図である。
図 2 2は、 コンテンツのダウンロード処理における処理フローを示す図である 図 2 3は、 チェック値 A: I C V aの生成方法を説明する図である。
図 2 4は、 チェック値 B : I C V bの生成方法を説明する図である。 - 図 2 5は、 総チ ック値、 記録再生器固有チェック値の生成方法を説明する図 である。
図 2 6は、 記録デバイスに保存されたコンテンツデータのフォーマット (利用 制限情報 = 0 ) を示す図である。
図 2 7は、 記録デバイスに保存されたコンテンツデータのフォーマツト (利用 制限情報 = 1 ) を示す図である。
図 2 8は、 コンテンツの再生処理における処理フローを示す図である。 ' 図 2 9は、 記録デバイスにおけるコマンド実行方法について説明する図である 図 3 0は、 記録デバイスにおけるコンテンツ格納処理におけるコマンド実行方 法について説明する図である。
図 3 1は、 記録デバイスにおけるコンテンツ再生処理におけるコマンド実行方 法について説明する図である。
図 3 2は、 コンテンツデータフォーマツトのフォーマツト · タイプ 0の構成を 説明する図である。
図 3 3は、 コンテンツデータフォーマツトのフォーマツト ·タイプ 1の構成を 説明する図である。 図 3 4は、 コンテンツデータフォーマツトのフォーマツト ·タイプ 2の構成を 説明する図である。
図 3 5は、 コンテンッデータフォーマツトのフォーマツト ·タイプ 3の構成を 説明する図である。
図 3 6は、 フォーマツト ·タイプ 0におけるコンテンツチェック値 I C V iの 生成処理方法を説明する図である。
図 3 7は、 フォーマツト .タイプ 1におけるコンテンツチェック値 I C V iの 生成処理方法を説明する図である。
図 3 8は、 フォーマット .タイプ 2, 3における総チェック値、 記録再生器固 有チェック値の生成処理方法を説明する図である。 ■
図 3 9は、 フォーマット .タイプ 0, 1におけるコンテンツダウンロード処理 の処理フローを示す図である。
図 4 0は、 フォーマツト ·タイプ 2におけるコンテンッダウンロード処理の処 理フローを示す図である。
図 4 1は、 フォーマツト ·タイプ 3におけるコンテンッダウンロード処理の処 理フローを示す図である。
図 4 2は、 フォーマツト ·タイプ 0におけるコンテンツ再生処理の処理フロー を示す図である。
図 4 3は、 フォーマツト ·タイプ 1におけるコンテンツ再生処理の処理フロー を示す図である。
図 4 4は、 フォーマツト ·タイプ 2におけるコンテンツ再生処理の処理フロー を示す図である。
図 4 5は、 フォーマツト .タイプ 3におけるコンテンッ再生処理の処理フロー を示す図である。
図 4 6は、 コンテンツ生成者と、 コンテンツ検証者におけるチェック値の生成 、 検証方法を説明する図 (その 1 )である。
図 4 7は、 コンテンツ生成者と、 コンテンツ検証者におけるチェック値の生成 、 検証方法を説明する図 (その 2 ) である。
図 4 8は、 コンテンツ生成者と、 コンテンツ検証者におけるチェック値の生成 、 検証方法を説明する図 (その 3 ) である。
図 4 9は、 マスタ鍵を用いて各種の鍵を個別に生成する方法について説明する 図である。 .
図 5 0は、 マスタ鍵を用いて各種の鍵を個別に生成する方法について、 コンテ ンップロバイダと、 ユーザにおける処理例を示す図 (例 1 ) である。
図 5 1は、 マスタ鏈を用いて各種の鍵を個別に生成する方法について、 コンテ ンップロバイダと、 ユーザにおける処理例を示す図 (例 2 ) である。
図 5 2は、 マスタ鍵の使い分けにより、 利用制限を実行する構成について説明 する図である。
図 5 3は、 マスタ鍵を用いて各種の鍵を個別に生成する方法について、 コンテ ンップロバイダと、 ユーザにおける処理例を示す図 (例 3 ) である。
図 5 4は、 マスタ鍵を用いて各種の鍵を個別に生成する方法について、 コンテ ンップロバイダと、 ユーザにおける処理例を示す図 (例 4 ) である。
図 5 5は、 マスタ鍵を用いて各種の鍵を個別に生成する方法について、 コ'ンテ ンップロバイダと、 ユーザにおける処理例を示す図 (例 5 ) である。
図 5 6は、 トリプル D E Sを適用した暗号鍵をシングル D E Sアルゴリズムを 用いて格納する処理フローを示す図である。
図 5 7は、 優先順位に基づくコンテンツ再生処理フロー (例 1 ) を示す図であ る。
図 5 8は、 優先順位に基づくコンテンツ再生処理フロー (例 2 ) を示す図であ る。
図 5 9は、 優先順位に基づくコンテンツ再生処理フロー (例 3 ) を示す図であ る。
図 6 0は、 コンテンツ再生処理における圧縮デー^の復号 (伸長) 処理を実行 する構成について説明する図である。 図 6 1は、 コンテンツの構成例 (例 1 ) を示す図である。
図 6 2は、 コンテンツの構成例 1における再生処理フローを示す図である。 図 6 3は、 コンテンツの構成例 (例 2 ) を示す図である。
図 6 4は、 コンテンツの構成例 2における再生処理フローを示す図である。 図 6 5は、 コンテンツの構成例 (例 3 ) を示す図である。
図 6 6は、 コンテンツの構成例 3における再生処理フローを示す図である。 図 6 7は、 コンテンツの構成例 (例 4 ) を示す図である。
図 6 8は、 コンテンッの構成例 4における再生処理フローを示す図である。 図 6 9は、 セーブデータの生成、 格納処理について説明する図である。
図 7 0は、 セーブデータの格納処理例 (例 1 )に関する処理フローを示す図であ る。
図 7 1は、 セーブデータの格納、 再生処理において使用されるデータ管理ファ ィル構成 (例 1 ) を示す図である。 .
図 7 2は、 セーブデータの再生処理例 (例 1 )に関する処理フローを示す図であ る。
図 7 3は、 セーブデータの格納処理例 (例 2 )に関する処理フローを示す図であ る。 .
囪 7 4は、 セーブデータの再生処理例 (例 2 )に関する処理フローを示す図であ る。
図 7 5は、 セーブデータの格納処理例 (例 3 )に関する処理フローを示す図であ る。
図 7 6は、 セーブデータの格納、 再生処理において使用されるデータ管理ファ ィル構成 (例 2 ) を示す図である。
図 7 7は、 セーブデータの再生処理例 (例 3 )に関する処理フローを示す図であ る。
図 7 8は、 セーブデータの格納処理例 (例 4 )に関する処理フローを示す図であ る。 図 7 9は、 セーブデータの再生処理例 (例 4 )に関する処理フローを示す図であ る。
図 8 0は、 セーブデータの格納処理例 (例 5 )に関する処理フローを示す図であ る。
図 8 1は、 セーブデータの格納、 再生処理において使用されるデータ管理ファ ィル構成 (例 3 ) を示す図である。
図 8 2は、 セーブデータの再生処理例 (例 5 )に関する処理フローを示す図であ る。
図 8 3は、 セーブデータの格納処理例 (例 6 )に関する処理フローを示す図であ る。
図 8 4は、 セーブデータの格納、 再生処理において使用されるデータ管理ファ ィル構成 (例 4 ) を示す図である。
図 8 5は、 セーブデータの再生処理例 (例 6 )に関する処理フローを示す図であ る。
図 8 6は、 コンテンツ不正利用者排除 (リボケーシヨン) 構成を説明する図で ある。
図 8 7は、 コンテンツ不正利用者排除 (リボケーシヨン) の処理フロー (例 1 ) を示す図である。
8 8は、 コンテンツ不正利用者排除 (リボケーシヨン) の処理フロー (例 2 ) を示す図である。
図 8 9は、 セキュリティチップの構成 (例 1 ) を説明する図である。
図 9 0は、 セキュリティチップの製造方法における処理フローを示す図である 図 9 1は、 セキュリティチップの構成 (例 2 ) を説明する図である。
図 9 2は、 セキュリティチップ (例 2 ) におけるデータ書き込み処理における 処理フローを示す図である。
図 9 3は、 セキュリティチップ (例 2 ) における書き込みデータチェック処理 における処理フローを示す図である。 発明を実施するための最良の形態
以下に本発明の実施の形態を説明する。 説明の手順は、 以下の項目に従って行 なう。
(1) データ処理装置構成
(2) コンテンツデータフォーマット
(3) データ処理装置において適用可能な暗号処理概要
(4) 記録再生器の格納データ構成
( 5 ) 記録デバィスの格納データ構成
(6) 記録再生器、 記録デバイス間における相互認証処理
(6- 1) 相互認証処理の概要
(6— 2) 相互認証時の鍵プロックの切り替え
(7) 記録再生器から記録デバイスへのダウンロード処理
( 8 ) 記録デバィス格納情報の記録再生器での再生処理
(9) 相互認証後の鍵交換処理
(1 0) 複数のコンテンツデータフォーマットと、 各フォーマットに対応するダ ゥンロードおょぴ再生処理
(1 1) コンテンツプロバイダにおけるチェック値 ( I CV) 生成処理態様
(1 2) マスタ鍵に基づく暗号処理鍵生成構成
(1 3) 暗号処理における暗号強度の制御
(14) コンテンツデータにおける取扱方針中の起動優先順位に基づくプロダラ ム起動処理
(1 5) コンテンツ構成および再生 (伸長)処理
(1 6) セーブデータの生成おょぴ記録デバイスへの格納、 再生処理
(1 7) 不正機器の排除 (リボケーシヨン) 構成
(1 8) セキュアチップ構成および製造方法 (1) データ処理装置構成
図 2に本発明のデータ処理装置の一実施例に係る全体構成プロック図を示す。 本発明のデータ処理装置は、 記録再生器 300と記録デバイス 400とを主要構 成要素とする。
記録再生器 300は、 例えばパーソナル · コンピュータ (PC : P e r— s o n a 1 C omp u t e r), あるいはゲーム機器等によって構成される。 記録再生器 300は、 図 2に示すように、 記録再生器 300における暗号処理時 の記録デバイス 400との通信制御を含む統括的制御を実行する制御部 30 1、 暗号処理全般を司る記録再生器暗号処理部 302、 記録再生器に接続される記録 デバイス 400と認証処理を実行しデータの読み書きを行う記録デバイスコント ローラ 303、 DVDなどのメディア 500から少なくともデータの読み出しを 行う読み取り部 304、 外部とデータの送受信を行う通信部 30 5を有する。 記録再生器 300は、 制御部 30 1の制御により記録デパイス 400に対する コンテンツデータのダウンロード、 記録デバイス 400からのコンテンツデータ 再生を実行する。 記録デバイス 400は、 記録再生器 300に対して好ましくは 着脱可能な記憶媒体、 例えばメモリカード等であり、 EEPROM、 フラッシュ メモリ等の不揮発メモリ、 ハードディスク、 電池つき RAMなどによって構成さ れる外部メモリ 40 2を有する。
記録再生器 300は、 図 2の左端に示す記憶媒体、 DVD、 CD、 FD、 HD Dに格納されたコンテンツデータを入力可能なィンタフェースとしての読み取り 部 304、 インターネット等のネットワークから配信されるコンテンツデータを 入力可能なインタフェースとしての通信部 305を有し、 外部からコンテンツを 入力する。
記録再生器 300は、 暗号処理部 302を有し、 読取部 304または通信部 3 05を介して外部から入力されるコンテンツデータを記録デバイス 400にダウ ンロード処理する際、 あるいはコンテンツデータを記録デバイス 400から再生 、 実行する際の認証処理、 暗号化処理、 複号化処理、 さらにデータの検証処理等 を実行する。 暗号処理部 3 0 2は、 暗号処理部 3 0 2全体を制御する制御部 3 0 6、 暗号処理用の鍵などの情報を保持し、 外部から容易にデータを読み出せない ように処理が施された内部メモリ 3 0 7、 暗号化処理、 複号化処理、 認証用のデ ータの生成 ·検証、 乱数の発生などを行う暗号 Z復号化部 3 0 8から構成されて いる。
制御部 3 0 1は、 例えば、 記録再生器 3 0 0に記録デバィス 4 0 0が装着され た際に記録デバイスコントローラ 3 0 3を介して記録デバイス 4 0 0に初期化命 令を送信したり、 あるいは、 記録再生器暗号処理部 3 0 2の暗号/複号化部 3 0 8と記録デバイス暗号処理部 4 0 1の喑号/複号化部 4 0 6の間で行われる相互 認証処理、 チェック値照合処理、 暗号化、 複号化処理等、 各種処理における仲介 処理を行なう。 これらの各処理については、 後段で詳細に説明する。
暗号処理部 3 0 2は、 前述のように認証処理、 暗号化処理、 複号化処理、 さら にデータの検証処理等を実行する処理部であり、 暗号処理制御部 3 0 6、 内部メ モリ 3 0 7、 暗号ノ複号化部 3 0 8を有する。
暗号処理制御部 3 0 6は、 記録再生器 3 0 0において実行される認証処理、 暗 号化ノ復号化処理等の暗号処理全般に関する制御を実行する制御部であり、 例え ば、 記録再生器 3 0 0と記録デバイス 4 0 0との間で実行される認証処理の完了 時における認証完了フラグの設定、 記録再生器暗号処理部 3 0 2の暗号 Z複号化 部 3 0 8において実行される各種処理、 例えばダウンロード、 あるいは再生コン テンッデータに関するチュック値生成処理の実行命令、 各種鍵データの生成処理 の実行命令等、 暗号処理全般に関する制御を行なう。
内部メモリ 3 0 7は、 後段で詳細に説明するが、 記録再生器 3 0 0において実 行される相互認証処理、 チェック値照合処理、 暗号化、 復号化処理等、 各種処理 において必要となる鍵データ、 あるいは識別データ等を格納する。
暗号 Z複号化部 3 0 8は、 内部メモリ 3 0 7に格納された鍵データ等を使用し て、 外部から入力されるコンテンツデータを記録デバイス 4 0 0にダウンロード 処理する際、 あるいは記録デバイス 4 0 0に格納されたコンテンツデータを記録 デバイス 4 00から再生、 実行する際の認証処理、 暗号化処理、 復号化処理、 さ らに所定のチェック値や電子署名の生成,検証、 データの検証、 乱数の発生など の処理を実行する。
ここで、 記録再生器暗号処理部 3 0 2の内部メモリ 3 0 7は、 喑号鍵などの重 要な情報を保持しているため、 外部から不正に読み出しにくい構造にしておく必 要がある。 従って、 喑号処理部 3 0 2は、 外部からアクセスしにくい構造を持つ た半導体チップで構成され、 多層構造を有し、 その内部のメモリはアルミ二ユウ ム層等のダミー層に挟まれるか、 最下層に構成され、 また、 動作する電圧または /かつ周波数の幅が狭い等、 外部から不正にデータの読み出しが難しい特性を有 する耐タンパメモリとして構成される。 この構成については、 後段で詳細に説明 する。
記録再生器 3 00は、 これらの暗号処理機能の他に、 中央演算処理装置 (メイ ン C PU : C e n t r a l P r o c e s s i n g U i t ) 1 0 6、 RAM
(R a n d om A c c e s s Me mo r y) 1 0 7s ROM (R e a d On l y Me mo r y) 1 0 8、 AV処理部 1 0 9、 入力インタフェース 1 1 0、 P I O (パラレル I Ζθインタフェース) 1 1 1、 S I O (シリアル I /O インタフェース) 1 1 2を備えている。
中央演算処理装置 (メイン C PU : C e n t r a l P r o c e s s i n g Un i t ; 1 0 6、 RAM (R a n d om A c c e s s Me mo r y) 1 0 7、 ROM (R e a d On l y Me mo r y) 1 0 8は、 記録再生器 3 0 0 本体の制御系として機能する構成部であり、 主として記録再生器暗号処理部 3 0 2で復号されたデータの再生を実行する再生処理部として機能する。 例えば中央 演算処理装置 (メイン CPU : C e n t r a l P r o c e s s i n g
Un i t ) 1 0 6は、 制御部 3 0 1の制御のもとに記録デバイスから読み出され て復号されたコンテンツデータを AV処理部 1 0 9へ出力する等、 コンテンツの 再生、 実行に関する制御を行なう。
RAMI 0 7は、 C PU 1 0 6における各種処理用の主記憶メモリとして使用 され、 メイン CPU 1 06による処理のための作業領域として使用される。 RO M1 0 8は、 メイン CPU1 06で起動される OS等を立ち上げるための基本プ ログラム等が格納される。
AV処理部 1 0 9は、 具体的には、 例えば MP EG 2デコーダ、 ATRACデ コ一ダ、 MP 3デコーダ等のデータ圧縮伸長処理機構を有し、 記録再生器本体に 付属または接続された図示しないディスプレイまたはスピーカ等のデータ出力機 器に対するデータ出力のための処理を実行する。
入カインタフェース 1 1 0は、 接続されたコントローラ、 キーボード、 マウス 等、 各種の入力手段からの入力データをメイン C PU 1 06に出力する。 メイン CPU1 06は、 例えば実行中のゲームプログラム等に基づいて使用者からのコ ントローラからの指示に従つた処理を実行する。
P I O (パラレル I /Oインタフェース) 1 1 1、 S I O (シリアル I/Oィ ンタフェース) 1 1 2は、 メモリカード、 ゲームカートリッジ等の記憶装置、 携 帯用電子機器等との接続ィンタフユースとして使用される。
また、 メイン CPU1 06は、 例えば実行中のゲーム等に関する設定データ等 をセーブデータとして記録デバイス 400に記憶する際の制御も行なう。 この処 理の際には、 記憶データを制御部 30 1に転送し、 制御部 30 1は必要に応じて 暗号処理部 3 02にセーブデータに関する暗号処理を実行させ、 暗号化データを 記録デバイス 400に格納する。 これらの暗号処理については、 後段で詳細に説 明する。
記録デバィス 400は、 前述したように好ましくは記録再生器 300に対して 着脱可能な記憶媒体であり、 例えばメモリカードによって構成される。 記録デバ イス 400は暗号処理部 401、 外部メモリ 402を有する。
記録デバイス暗号処理部 401は、 記録再生器 300からのコンテンツデータ のダウンロード、 または記録デバイス 400から記録再生器 300へのコンテン ッデータの再生処理時等における記録再生器 300と記録デバイス 400間の相 互認証処理、 暗号化処理、 復号化処理、 さらにデータの検証処理等を実行する処 理部であり、 記録再生器 3 0 0の暗号処理部と同様、 制御部、 内部メモリ、 暗号 ノ複号化部等を有する。 これらの詳細は図 3に示す。 外部メモリ 4 0 2は、 前述 したように、 例えば E E P R OM等のフラッシュメモリからなる不揮発メモリ、 ハードディスク、 電池つき R AMなどによって構成され、 暗号化されたコンテン ッデータ等を格納する。
図 3は、 本発明のデータ処理装置がデータ供給を受けるコンテンッ提供手段で あるメディア 5 0 0、 通信手段 6 0 0から入力されるデータ構成の概略を示すと ともに、 これらコンテンツ提供手段 5 0 0, 6 0 0からコンテンツを入力する記 録再生器 3 0 0と、 記録デバイス 4 0 0における暗号処理に関する構成を中心と して、 その構成を示した図である。
メディア 5 0 0は、 例えば光ディスクメディア、 磁気ディスクメディア、 磁気 テープメディア、 半導体メディア等である。 通信手段 6 0 0は、 インターネット 通信、 ケーブル通信、 衛星通信等の、 データ通信可能な手段である。
図 3において、 記録再生器 3 0 0は、 コンテンツ提供手段であるメディア 5 0
0、 通信手段 6 0 0から入力されるデータ、 すなわち図 3に示すような所定のフ ォーマツトに従ったコンテンツを検証し、 検証後にコンテンツを記録デバイス 4
0 0に保存する。
図 3のメディア 5 0 0、 通信手段 6 0 0部分に示すようにコンテンツデータは 以下のような構成部を有する。
識別情報: コンテンツデータの識別子としての識別情報。
取扱方針: コンテンツデータの構成情報、 例えばコンテンツデータを構成する ヘッダー部サイズ、 コンテンッ部サイズ、 フォーマットのバージョン、 コンテン ッがプログラムかデータか等を示すコンテンツタイプ、 さらにコンテンツがダウ ンロードした機器だけでしか利用できないのか他の機器でも利用できるのか等の 利用制限情報等を含む取扱方針。
プロック情報: コンテンツプロックの数、 ブロックサイズ、 暗号化の有無を示 す暗号化フラグ等から構成されるプロック情報。 鍵データ :上述のプロック情報を暗号化する暗号化鍵、 あるいはコ
口ックを暗号化するコンテンツ鍵等からなる鍵データ。
コンテンツブロック :実際の再生対象となるプログラムデータ、 音楽、 画像デ ータ等からなるコンテンツプロック。
を有する。 なお、 コンテンツデータ詳細については、 後段で図4以下を用いて さらに詳細に説明する.。
コンテンツデータは、 コンテンツ鍵 (ここでは、 これをコンテンツ鍵 (
C o n t e n t K e y (以下、 K c o nとする)) と呼ぶ) によって暗号化さ れて、 メディア 5 0 0、 通信手段 6 0 0から記録再生器 3 0 0に提供される。 コ ンテンッは、 記録再生器 3 0 0 -を介して記録デバイス 4 0◦の外部メモリに格納 することができる。
例えば、 記録デバィス 4 0 0は、 記録デバイス内の内部メモリ 4 0 5に格納さ れた記録デバイス固有の鍵 (ここでは、 これを保存鍵 (S t o r a g e K e y (以下、 K s t rとする)) と呼ぶ) を用いて、 コンテンツデータに含まれるコ ンテンッ、 及びコンテンツデータのヘッダ情報として含まれるブロック情報、 各 種鍵情報、 例えばコンテンッ鍵 K c o nなどを暗号化して外部メモリ 4 0 2に記 憶する。 コンテンツデータの記録再生器 3 0 0から記録デバイス 4 0 0へのダウ ンロード処理、 あるいは記録再生器 3 0 0による記録デバイス 4 0 0内に格納さ れたコンテンツデータの再生処理においては、 機器間の相互認証処理、 コンテン ッデータの暗号化、 復号化処理等、 所定の手続きが必要となる。 これらの処理に ついては、 後段で詳細に説明する。
記録デバィス 4 0 0は、 図 3に示すように暗号処理部 4 0 1、 外部メモリ 4 0 2を有し、 暗号処理部 4 0 1は、 制御部 4 0 3、 通信部 4 0 4、 内部メモリ 4 0 5、 暗号 Z複号化部 4 0 6、 外部メモリ制御部 4 0 7を有する。
記録デバィス 4 0 0は、 喑号処理全般を司り、 外部メモリ 4 0 2を制御すると ともに、 記録再生器 3 0 0からのコマンドを解釈し、 処理を実行する記録デバィ ス喑号処理部 4 0 1と、 コンテンツなどを保持する外部メモリ 4 0 2からなる。 記録デバイス暗号処理部 4 0 1は、 記録デバイス暗号処理部 4 0 1全体を制御 する制御部 4 0 3、 記録再生器 3 0 0とデータの送受信を行う通信部 4 0 4、 喑 号処理用の鍵データなどの情報を保持し、 外部から容易に読み出せないように処 理が施された内部メモリ 4 0 5、 暗号化処理、 復号化処理、 認証用のデータの生 成 ·検証、 乱数の発生などを行う暗号/復号化部 4 0 6、 外部メモリ 4 0 2のデ ータを読み書きする外部メモリ制御部 4 0 7を有する。
制御部 4 0 3は、 記録デバイス 4 0 0において実行される認証処理、 暗号化ノ 復号化処理等の暗号処理全般に係る制御を実行する制御部であり、 例えば、 記録 再生器 3 0 0と記録デバイス 4 0 0との間で実行される認証処理の完了時におけ る認証完了フラグの設定、 暗号処理部 4 0 1の暗号 Z復号化部 4 0 6において実 行される各種処理、 例えばダウンロード、 あるいは再生コンテンツデータに関す るチ ック値生成処理の実行命令、 各種鍵データの生成処理の実行命令等、 暗号 処理全般に関する制御を行なう。
内部メモリ 4 0 5は、 後段で詳細に説明するが、 複数のプロックを持つメモリ によって構成されており、 記録デバイス 4 0 0において実行される相互認証処理 、'チェック値照合処理、 暗号化、 復号化処理等、 各種処理において必要となる鍵 データ、 あるいは識別データ等の組を複数格納した構成となっている。
記録デバイス暗号処理部 4 0 1の内部メモリ 4 0 5は、 先に説明した記録再生 器暗号処理部 3 0 2の内部メモリ 3 0 7と同様、 暗号鍵などの重要な情報を保持 しているため、 外部から不正に読み出しにくい構造にしておく必要がある。 従つ て、 記録デバイス 4 0 0の暗号処理部 4 0 1は、 外部からアクセスしにくい構造 を持った半導体チップで構成され、 多層構造を有し、 その内部のメモリはアルミ 二ユウム層等のダミー層に挟まれるか、 最下層に構成され、 また、 動作する電圧 または/かつ周波数の幅が狭い等、 外部から不正にデータの読み出しが難しい特 性とした構成とされる。 なお、 記録再生器暗号処理部 3 0 2は、 鍵などの秘密の 情報を容易に外部に漏らさないように構成されたソフトウエアであってもよい。 喑号 Z復号化部 4 0 6は、 記録再生器 3 0 0からのコンテンツデータのダウン ロード処理、 記録デバイス 4 0 0の外部メモリ 4 0 2に格納されたコン ータの再生処理、 あるいは、 記録再生器 3 0 0と記録デバイス 4 0 0間の相互認 証処理の際、 内部メモリ 4 0 5に格納された鍵データ等を使用して、 データの検 証処理、 暗号化処理、 復号化処理、 所定のチェック値や電子署名の生成 ·検証、 乱数の発生などの処理等を実行する。
通信部 4 0 4は、 記録再生器 3 0 0の記録デバィスコントローラ 3 0 3に接続 され、 記録再生器 3 0 0の制御部 3 0 1、 あるいは、 記録デバイス 4 0 3の制御 部 4 0 3の制御に従って、 コンテンツデータのダウンロード処理、 再生処理、 あ るいは、 相互認証処理の際の記録再生器 3 0 0と記録デバイス 4 0 0間の転送デ ータの通信を行なう。
( 2 ) コンテンツデータフォーマツト
次に、 図 4乃至図 6を用いて、 本発明のシステムにおけるメディア 5 0 0に格 納され、 またはデータ通信手段 6 0 0上を流通するデータのデータフォーマツト について説明する。
図 4に示す構成がコンテンツデータ全体のフォーマツトを示す図であり、 図 5 に示す構成がコンテンツデータのヘッダ部の一部を構成する 「取扱方針」 の詳細 を示す図であり、 図 6に示す構成がコンテンツデータのヘッダ部の一部を構成す る '「ブロック情報」 の詳細を示す図である。
なお、 ここでは、 本発明のシステムにおいて適用されるデータフォーマットの 代表的な一例について説明するが、 本発明のシステムでは、 例えばゲームプログ ラムに対応したフォーマツト、 音楽データ等のリアルタイム処理に適したフォー マット等、 異なる複数のデータフォーマットが利用可能であり、 これらのフォー マツトの態様については、 後段 「(1 0 ) 複数のコンテンツデータフォーマツト と、 各フォーマットに対応するダウンロードおよび再生処理」 において、 さらに 詳しく述べる。
図 4に示すデータフォーマツトにおいて、 グレーで示す部分は暗号化されたデ ータであり、 二重枠の部分は改竄チ ックデータ、 その他の白い部分は暗号化さ れていない平文のデータである。 暗号化部の暗号化鍵は、 それぞれの枠の左に示 す鍵である。 図 4に示す例においては、 コンテンツ部の各ブロック (コンテンツ ブロックデータ) に暗号化されたものと暗号化されていないものとが混在してい る。 これらの形態は、 コンテンツデータに応じて異なるものであり、 データに含 まれるすべてのコンテンツプロックデータが暗号化されている構成であってもよ い。
図 4に示すように、 データフォーマットは、 ヘッダー部とコンテンツ部に分か れており、 ヘッダー部は、 識別情報 (Co n t e n t I D)、 取扱方針 ( U s a g e P o 1 i c y)、 テェック値 A 、 I n t e g r i t y Ch e c k Va l u e A (以下、 I C V aとする))、 ブロック情報鍵 (B 1 o c k I n f o rma t i o n T a b l e Ke y (以下、 Kb i tとする))、 コン テンッ鍵 Kc o n、 プロック情報 (B l o c k I n f o r ma t i o n 一 T a b l e (以下、 B I Tとする))、 チェック値 B ( I CVb)、 総チェック値 ( I C V t ) により構成されており、 コンテンツ部は、 複数のコンテンツプロッ ク (例えば暗号化されたコンテンツと、 暗号化されていないコンテンツ) から構 成されている。
ここで、 識別情報は、 コンテンツを識別するための個別の識別子 (C o n— t e n t I D) を示している。 取扱方針は、 図 5にその詳細を示すように、 へ ッダ一部分のサイズを示すヘッダーサイズ (He a d e r L e n g t h)、 コ ンテンッ部分のサイズを示すコンテンッサイズ (C o n t e n t ' L e n g t h )、 フォーマットのバージョン情報を示すフォーマットバージョン (F o r— ma t V e r s i o n)、 フォーマツトの種類を示すフォーマツトタイプ ( F o r ma t Ty p e)、 コンテンツ部に保存されているコンテンツがプログ ラムなのか、 データなのか等コンテンツの種類を示すコンテンツタイプ ( C o n t e n t Ty p e)、 コンテンツタイプがプログラムである場合の起動 優先順位を示す起動優先順位情報 (Op e r a t i o n P r i o r i t y), このフォーマツトに従ってダウンロードされたコンテンツが、 ダウンロードした 機器だけでしか利用できないのか、 他の同様な機器でも利用できるのかを示す利 用制限情報 (L o c a l i z a t i o n F i e l d)、 このフォーマツトに従 つてダウンロードされたコンテンツが、 ダウンロードした機器から他の同様な機 器に複製できるのか否かを示す複製制限情報 (C o p y P e r m i s s i o n ), このフォーマットに従ってダウンロードされたコンテンツが、 ダウンロード した機器から他の同様な機器に移動できるのか否かを示す移動制限情報 ( Mo V e P e r m i s s i o n)、 コンテンツ部内のコンテンツブロックを喑 号するのに使用したアルゴリズムを示す喑号アルゴリズム (En c r y p_ t i o n A l g o r i t hm)、 コンテンッ部内のコンテンツを暗号化するの に使用したアルゴリズムの使用方法を示す暗号化モード (E n c r y p t i o n Mo d e)、 チヱック値の生成方法を示す検証方法 (I n t e g r i t y
Ch e c k Me t h o d) から構成されている。
なお、 上述した取扱方針に記録するデータ項目は、 1つの例であり、 対応する コンテンッデータの態様に応じて様々な取扱方針情報を記録することが可能であ る。 例えば後段の 「(1 7) 不正機器の排除 (リボケーシヨン) 構成」 で詳しく 述べるが、 不正な記録再生器の識別子をデータとして記録して、 利用開始時の照 合によつて不正機器によるコンテンッ利用を排除するように構成することも可能 である。
チェック値 A, I CVaは、 識別情報、 取扱方針の改竄を検証するためのチェ ック値である。 コンテンツデータ全体ではなく部分データのチェック値、 すなわ ち部分チェック値として機能する。 データプロック情報鍵 Kb i tは、 ブロック 情報を暗号化するのに用いられ、 コンテンツ鍵 K c o nは、 コンテンツブロック を暗号化するのに用いられる。 なお、 ブロック情報鍵 Kb i t及びコンテンツ鍵 Kc o nは、 メディア 500上および通信手段 600上では後述する配送鍵 ( D i s t r i b u t i o n Ke y (以下、 K d i sとする)) で暗号化されて いる。
ブロック情報の詳細を図 6に示す。 なお、 図 6のブロック情報は、 図 4か.ら理 解されるようにすベてブロック情報鍵 Kb i tによって暗号化されているデータ である。 プロック情報は、 図 6に示すように、 コンテンツブロックの数を示すコ ンテンップロック数 (B 1 o c k Numb e r) と N個のコンテンツブロック 情報から構成されている。 コンテンツブロック情報は、 ブロックサイズ ( B l o c k L e n g t h)、 暗号化されているか否かを示す暗号化フラグ ( En c r y p t i o n F l a g)、 チェック値を計算する必要があるか否かを 示す検証対象フラグ ( I C V F 1 a g)、 コンテンツチェック値 ( I C V i ) から構成されている。
コンテンツチェック値は、 各コンテンツプロックの改竄を検証するために用い られるチェック値である。 コンテンツチェック値の生成手法の具体例については 、 後段の 「(1 0) 複数のデータフォーマットと、 各フォーマットに対応する記 録デバイスへのダウンロード処理および記録デバイスからの再生処理」 の欄で説 明する。 なお、 プロック情報を暗号化しているブロック情報鍵 Kb i tは、 さら に、 配送鍵 Kd i sによって暗号化されている。
図 4のデータフォーマットの説明を続ける。 チェック値 B, I CVbは、 プロ ック情報鍵 K b i t、 コンテンッ鍵 K c o n, ブロック情報の改竄を検証するた めのチェック値である。 コンテンツデータ全体ではなく部分データのチェック値 、 すなわち部分チヱック値として機能する。 総チ ック値 I CV tは、 I CV a 、 I CVb、 各コンテンツブロックのチェック値 I CV i (設定されている場合 )、 これらの部分チェック値、 あるいはそのチェック対象となるデータ全ての改 竄を検証するためのチェック値である。
なお、 図 6においては、 ブロックサイズ、 暗号化フラグ、 検証対象フラグを自 由に設定できるようにしているが、 ある程度ルールを決めた構成としてもよい。 例えば、 暗号文領域と平文領域を固定サイズ繰り返しにしたり、 全コンテンツデ ータを暗号化したりし、 プロック情報 B I Tを圧縮してもよい。 また、 コンテン ッ鍵 Kc o nをコンテンツブロック毎に異なるようにするため、 コンテンツ鍵 K c Q nをヘッダー部分ではなく、 コンテンツプロックに含ませるようにしてもよ い。 コンテンツデータフォーマットの例については、 「(1 0) 複数のコンテンツ データフォーマツトと、 各フォーマツトに対応するダウンロードおよび再生処理 」 の項目において、 さらに詳細に説明する。
(3) 本発明のデータ処理装置において適用可能な暗号処理概要
次に、 本発明のデータ処理装置において適用され得る各種暗号処理の態様につ いて説明する。 なお、 本項目 「(3 ) 本発明のデータ処理装置において適用可能 な暗号処理の概要」 に示す暗号処理に関する説明は、 後段で具体的に説明する本 発明のデータ処理装置における各種処理、 例えば a . 記録再生器と記録デバイス 間での認証処理。 b . コンテンツの記録デバイスに対するダウンロード処理。 c . 記録デバイスに格納したコンテンツの再生処理等の処理において実行される処 理の基礎となる喑号処理の態様について、 その概要を説明するものである。 記録 再生器 3 0 0と記録デバイス 4 0 0における具体的処理については、 本明細書の 項目 (4) 以下において、 各処理毎に詳細に説明する。
以下、 データ処理装置において適用可能な暗号処理の概要について、
(3 - 1 ) 共通鍵暗号方式によるメッセージ認証
(3 - 2) 公開鍵喑号方式による電子署名
(3 - 3) 公開鍵喑号方式による電子署名の検証
(3 -4) 共通鍵喑号方式による相互認証 ,
(3 - 5) 公開鍵証明書 '
(3— 6) 公開:舞暗号方式による相互認証
(3 - 7) 楕円曲線暗号を用いた暗号化処理
(3— 8) 楕円曲線暗号を用いた復号化処理
(3 - 9) 乱数生成処理
の順に説明する。
(3 - 1 ) 共通鍵暗号方式によるメッセージ認証
まず、 共通鍵喑号方式を用いた改竄検出データの生成処理について説明する。 改竄検出データは、 改竄の検出を行ないたいデータに付け、 改竄のチェックおよ ぴ作成者認証をするためのデータである。 ' 例えば、 図 4で説明したデータ構造中の二重枠部分の各チェック値 A, B、 総 チェック値、 およぴ図 6に示すブロック情報中の各プロックに格納されたコンテ ンッチェック値等が、 この改竄検出データとして生成される。
ここでは、 電子署名データの生成処理方法の例の 1つとして共通鍵暗号方式に おける DE Sを用いた例を説明する。 なお、 本発明においては、 DES以外にも 、 同様の共通鍵暗号方式における処理として例えば F EAL (F a s t
En c i p h e r me n t A 1 g o r i t hm : NTT)、 AE S (Adv a n c e d En c r y p t i o n S t a n d a r d :米国次期標準暗号) 等を用いることも可能である。
一般的な D E Sを用いた電子署名の生成方法を図 7を用いて説明する。 まず、 電子署名を生成するに先立ち、 電子署名の対象となるメッセージを 8バイ ト単位 に分割する (以下、 分割されたメッセージを Ml、 Μ2、 · · ·、 ΜΝとする)。 そして、 初期値 ( I n i t i a l V a l u e (以下、 I Vとする)) と Mlを 排他的論理和する (その結果を I 1とする)。 次に、 I Iを DE S暗号化部に入 れ、 鍵 (以下、 K 1とする) を用いて暗号化する (出力を E 1とする)。 続けて 、 E 1および M 2を排他的論理和し、 その出力 I 2を DE S暗号化部へ入れ、 鍵 K1を用いて喑号化する (出力 E 2)。 以下、 これを繰り返し、 全てのメッセ一 ジに対して暗号化処理を施す。 最後に出てきた ENが電子署名になる。 このィ直は 一般にはメッセージ認証符号 (MAC (Me s s a g e Au t h e n t i— c a t i o n C o d e)) と呼ばれ、 メッセージの改竄チェックに用いられる 。 また、 このように暗号文を連鎖させる方式のことを CBC (C i p h e r ' B l o c k C h a i n i n g) モードと呼ぶ。
なお、 図 7のような生成例において出力される MAC値が、 図 4で示すデータ 構造中の二重枠部分の各チ ック値 A, B、 総チヱック値、 および図 6に示すブ 口ック情報中の各ブロックに格納されたコンテンツチェック値 I CV1〜 I CV Nとして使用可能である。 この MAC値の検証時には、 検証者が生成時と同様の 方法で MAC値を生成し、 同一の値が得られた場合、 検証成功とする。
なお、 図 7に示す例では初期値 I Vを、 初めの 8バイトメッセージ M 1に排他 的論理和したが、 初期値 I V=0として、 初期値を排他的論理和しない構成とす ることも可能である。
図 Ίに示す MAC値生成方法に対して、 さらにセキュリティを向上させた MA C値生成方法を示す処理構成図を図 8に示す。 図 8は、 図 7のシングル D E Sに 代えてトリプル DE S (T r i l e DES) を用いて MA C値の生成を実行 する例を示したものである。
図 8に示す各トリプル D E S (T r i p l e DE S) 構成部の詳細構成例を 図 9に示す。 図 9 (a)、 (b) に示すようにトリプル DE S (T r i p l e D E S) としての構成には 2つの異なる態様がある。 図 9 (a) は、 2つの暗号鍵 を用いた例を示すものであり、 鍵 1による暗号化処理、 鍵 2による複号化処理、 さらに鍵 1による暗号化処理の順に処理を行う。 鍵は、 Kl、 K2、 Klの順に 2種類用いる。.図 9 (b) は 3つの暗号鍵を用いた例を示すものであり、 鍵 1に よる暗号化処理、 鍵 2による暗号化処理、 さらに鍵 3による暗号化処理の順に処 理を行い 3回とも暗号化処理を行う。 鍵は、 Kl、 Κ2、 Κ 3の順に 3種類の鍵 を用いる。 このように複数の処理を連続させる構成とすることで、 シングル DE Sに比較してセキュリティ強度を向上させている。 しかしながら、 このトリプル DE S (T r i p l e DE S) 構成は、 処理時間がシングル D E Sのおよそ 3 倍かかるという欠点を有する。
図 8および図 9で説明したトリプル D E S構成を改良した MA C値生成構成例 を図 1 0に示す。 図 1 0においては、 署名対象となるメッセージ列の初めから途 中までの各メッセージに対する暗号化処理は全てシングル DE Sによる処理とし 、 最後のメッセージに対する暗号化処理のみを図 9 (a) に示すトリプル DE S (T r i l e DE S) 構成としたものである。
図 1 0に示すこのような構成とすることで、 メッセージの MAC値の生成処理 時間は、 シングル DE Sによる MAC値生成処理に要する時間とほぼ同程度に短 縮され、 かつセキュリティはシングル DESによる MAC値よりも高めることが 可能となる。 なお、 最終メッセージに対するトリプル DES構成は、 図 9 (b) の構成とすることも可能である。
(3- 2) 公開鍵暗号方式による電子署名
以上は、 暗号化方式として共通鍵暗号化方式を適用した場合の電子署名データ の生成方法であるが、 次に、 暗号化方式として公開鍵暗号方式を用いた電子署名 の生成方法を図 1 1を用いて説明する。 図 1 1に示す処理は、 EC— DSA (( E l l i t i c Cu r v e D i g i t a l S i g n a t u r e A 1― g o r i t hm), I EEE P 1 3 63/D 3) を用いた電子署名データの生 成処理フローである。 なお、 ここでは^開鍵暗号として楕円曲線暗号 (E 1— l i p t i c Cu r v e C r y p t o g r a p h y (以下、 E C Cと呼ぶ) ) を用いた例を説明する。 なお、 本発明のデータ処理装置においては、 楕円曲線 暗号以外にも、 同様の公開鍵暗号方式における、 例えば RS A暗号 ((
R i v e s t、 S h am i r、 Ad l ema n) など (ANS I X 9. 3 1) ) を用いることも可能である。
図 1 1の各ステップについて説明する。 ステップ S 1において、 pを標数、 a 、 bを楕円曲線の係数 (楕円曲線 ·· y 2 = x 3+ a x + b)、 Gを楕円曲線上のベ ースポイント、 rを Gの位数、 K sを秘密鍵 (0'く K sく r) とする。 ステップ S 2おいて、 メッセージ Mのハッシュ値を計算し、 f =H a s h (M) とする。 ここで、 ハッシュ関数を用いてハッシュ値を求める方法を説明する。 ハッシュ 関数とは、 メッセージを入力とし、 これを所定のビット長のデータに圧縮し、 ノヽ ッシュ値として出力する関数である。 ハッシュ関数は、 ハッシュ値 (出力) から 入力を予測することが難しく、 ハッシュ関数に入力されたデータの 1ビットが変 化したとき、 ハッシュ値の多くのビットが変化し、 また、 同一のハッシュ値を持 つ異なる入力データを探し出すことが困難である特徴を有する。 ハッシュ関数と しては、 MD4、 MD 5、 SHA— 1などが用いられる場合もあるし、 図 7他で 説明したと同様の DE S— CB Cが用いられる場合もある。 この場合は、 最終出 力値となる MAC (チェック値: I CVに相当する) がハッシュ値となる。 続けて、 ステップ S 3で、 乱数 u (0 < u< r ) を生成し、 ステップ S 4でべ ースポイントを u倍した座標 V (Xv, Yv) を計算する。 なお、 楕円曲線上の 加算、 2倍算は次のように定義されている。
Ρ= (X a , Y a), Q= (X b, Yb), R= (X c, Y c ) =P + Qとすると
P≠Qのとき、 (加算)、
X c = λ 2— X a -X b
Y c = X (X a - X c ) -Y a
λ = (Yb -Y a) / (X b -X a )
P = Qの時 (2倍算)、
X c = l2- 2X a
Y c = λ X (X a -X c ) - Y a
λ = (3 (X a) 2+ a) / (2 Y a) ······ (1) これらを用いて点 Gの u倍を計算する (速度は遅いが、 最もわかりやすい演算 方法として次のように行う。 G、 2 XG、 4 XG · .を計算し、 uを 2進数展開 して 1が立っているところに対応する 21 XG (Gを i回 2倍算した値) を加算 する ( iは uの L S Bから数えた時のビット位置))。
ステップ S 5で、 c =Xvmo d rを計算し、 ステップ S 6でこの値が 0に なるかどうか判定し、 0でなければステップ S 7で d = [(f + c K s) /u] mo d rを計算し、 ステップ S 8で dが 0であるかどうか判定し、 dが 0でな ければ、 ステップ S 9で cおよび dを電子署名データとして出力する。 仮に、 r を 1 60ビット長の長さであると仮定すると、 電子署名データは 320ビット長 となる。
ステップ S 6において、 cが 0であった場合、 ステップ S 3に戻って新たな乱 数を生成し直す。 同様に、 ステップ S 8で dが 0であった場合も、 ステップ S 3 に戻って乱数を生成し直す。
(3-3) 公開鍵暗号方式による電子署名の検証
次に、 公開鍵暗号方式を用いた電子署名の検証方法を、 図 1 2を用いて説明す る。 ステップ S 1 1で、 Mをメッセージ、 pを標数、 a、 bを楕円曲線の係数 ( 楕円曲線: y 2 = x 3+ a X + b)、 Gを楕円曲線上のベースボイント、 rを Gの 位数、 Gおよび K s XGを公開鍵 (0く K sく r ) とする。 ステップ S 1 2で電 子署名データ cおよび dが 0< c < r、 0 < d < rを満たすか検証する。 これを 満たしていた場合、 ステップ S 1 3で、 メッセージ Mのハッシュ値を計算し、 f =H a s h (M) とする。 次に、 ステップ S 1 4で h = lZd mo d rを計 算し、 ステップ S 1 5で h l = f h mo d r、 h 2 = c h mo d rを計 算する。
ステップ S I 6において、 既に計算した h 1および h 2を用い、 点 P= (X p , Yp) =h 1 XG+h 2 - K s XGを計算する。 電子署名検証者は、 公開鍵 G および K s XGを知っているので、 図 1 1のステップ S 4と同様に楕円曲線上の 点のスカラー倍の計算ができる。 そして、 ステップ S 1 7で点 Pが無限遠点かど うか判定し、 無限遠点でなければステップ S 1 8に進む (実際には、 無限遠点の 判定はステップ S 1 6でできてしまう。 つまり、 P二 (X, Y)、 Q= (X, ― Y) の加算を行うと、 λが計算できず、 P + Qが無限遠点であることが判明して いる)。 ステップ S 1 8で Xp mo d rを計算し、 電子署名データ cと比較 する。 最後に、 この値が一致していた場合、 ステップ S 1 9に進み、 電子署名が 正しいと判定する。
電子署名が正しいと判定された場合、 データは改竄されておらず、 公開鍵に対 応した秘密鍵を保持する者が電子署名を生成したことがわかる。
ステップ S 1 2において、 電子署名データ cまたは dが、 0< c < r、 0 < d < rを満たさなかった場合、 ステップ S 20に進む。 また、 ステップ S 1 7にお いて、 点 Pが無限遠点であった場合もステップ S 20に進む。 さらにまた、 ステ ップ S 1 8において、 Xp mo d rの値が、 電子署名データ cと一致してい なかった場合にもステップ S 20に進む。
ステップ S 20において、 電子署名が正しくないと判定された場合、 データは 改竄されているか、 公開鍵に対応した秘密鍵を保持する者が電子署名を生成した のではないことがわかる。
(3-4) 共通鍵暗号方式による相互認証
次に、 共通鍵喑号方式を用いた相互認証方法を、 図 1 3を用いて説明する。 図 1 3において、 共通鍵喑号方式として DE Sを用いているが、 前述のように同様 な共通鍵暗号方式であればいずれでもよい。 図 1 3において、 まず、 8が64ビ ットの乱数 Rbを生成し、 Rbおよび自己の I Dである I D (b) を Aに送信す る。 これを受信した Aは、 新たに 64ビットの乱数 R aを生成し、 Ra、 Rb、 I D (b) の順に、 DE Sの CB Cモードで鍵 K a bを用いてデータを暗号化し 、 Bに返送する。 図 7に示す DESの CBCモード処理構成によれば、 R aがM 1、 RbがM2、 I D (b) が M 3に相当し、 初期値: I V=0としたときの出 力 E l、 E 2、 E 3が暗号文となる。
これを受信した Bは、 受信データを鍵 K a bで復号化する。 受信データの復号 化方法は、 まず、 暗号文 E 1を鍵 Ka bで複号化し、 乱数 R aを得る。 次に、 暗 号文 E 2を鍵 K a bで復号化し、 その結果と E 1を排他的論理和し、 Rbを得る 。 最後に、 暗号文 E 3を鍵 K a bで復号化し、 その結果と E 2を排他的論理和し 、 I D (b) を得る。 こうして得られた R a、 Rb、 I D (b) の内、 Rbおよ び I D (b) 力 Bが送信したものと一致するか検証する。 この検証に通った場 合、 Bは Aを正当なものとして認証する。
次に Bは、 認証後に使用するセッション鍵 (S e s s i o n Ke y (以下、 K s e sとする)) を生成する (生成方法は、 乱数を用いる)。 そして、 Rb、 R a、 《: 3 6 3の1瞋に、 DE Sの CB Cモードで鍵 K a bを用いて暗号化し、 Aに 返送する。
これを受信した Aは、 受信データを鍵 K a bで復号化する。 受信データの復号 化方法は、 Bの復号化処理と同様であるので、 ここでは詳細を省略する。 こうし て得られた Rb、 R a、 K s e sの内、 1 13ぉょび1^&が、 Aが送信したものと 一致するか検証する。 この検証に通った場合、 Aは Bを正当なものとして認証す る。 互いに相手を認証した後には、 セッション鍵 K s e sは、 認証後の秘密通信 のための共通鍵として利用される。
なお、 受信データの検証の際に、 不正、 不一致が見つかった場合には、 相互認 証が失敗したものとして処理を中断する。
(3- 5) 公開鍵証明書
次に、 公開鍵証明書について図 1 4を用いて説明する。 公開鍵証明書は、 公開 鍵暗号方式における認証局 (CA : C e r t i f i c a t e Au t h o r i - t y) が発行する証明書であり、 ユーザが自己の I D、 公開鏈等を認証局に提出 することにより、 認証局側が認証局の I Dや有効期限等の情報を付加し、 さらに 認証局による署名を付加して作成される証明書である。
図 14に示す公開鍵証明書は、 証明書のバージョン番号、 認証局が証明書利用 者に対し割り付ける証明書の通し番号、 電子署名に用いたァルゴリズムおよびパ ラメータ、 認証局の名前、 証明書の有効期限、 証明書利用者の名前 (ユーザ I D )、 証明書利用者の公開鍵並びに電子署名を含む。
電子署名は、 証明書のバージョン番号、 認証局が証明書利用者に対し割り付け る証明書の通し番号、 電子署名に用いたアルゴリズムおよびパラメータ、 認証局 の名前、 証明書の有効期限、 証明書利用者の名前並びに証明書利用者の公開鍵全 体に対しハッシュ関数を適用してハッシュ値を生成し、 そのハッシュ値に対して 認証局の秘密鍵を用いて生成したデータである。 この電子署名の生成には、 例え ば図 1 1で説明した処理フローが適用される。
認証局は、 図 14に示す公開鍵証明書を発行するとともに、 有効期限が切れた 公開鍵証明書を更新し、 不正を行った利用者の排斥を行うための不正者リストの 作成、 管理、 配布 (これをリボケーション: Re v o c a t i o nと呼ぶ) を行 う。 また、 必要に応じて公開鍵 ·秘密鍵の生成も行う。 一方、 この公開鍵証明書を利用する際には、 利用者は自己が保持する認証局の 公開鍵を用い、 当該公開鍵証明書の電子署名を検証し、 電子署名の検証に成功し た後に公開鍵証明書から公開鍵を取り出し、 当該公開鍵を利用する。 従って、 公 開鍵証明書を利用する全ての利用者は、 共通の認証局の公開鍵を保持している必 要がある。 なお、 電子署名の検証方法については、 図 1 2で説明したのでその詳 細は省略する。
(3-6) 公開鍵暗号方式による相互認証
次に、 公開鍵暗号方式である 1 60ビット長の楕円曲線暗号を用いた相互認証 方法を、 図 1 5を用いて説明する。 図 1 5において、 公開鍵暗号方式として EC Cを用いているが、 前述のように同様な公開鍵暗号方式であればいずれでもよい 。 また、 鍵サイズも 1 60ビットでなくてもよい。 図 1 5において、 まず Bが、 64ビットの乱数 R bを生成し、 Aに送信する。 これを受信した Aは、 新たに 6 4ビットの乱数 R aおよぴ標数] Dより小さい乱数 A kを生成する。 そして、 ベー スポイント Gを Ak倍した点 Av=Ak XGを求め、 Ra、 Rb、 A v (X座標 と Y座標) に対する電子署名 A. S i gを生成し、 Aの公開鍵証明書とともに B に返送する。 ここで、 R aおよび Rbはそれぞれ 64ビット、 Avの X座標と Y 座標がそれぞれ 1 60ビットであるので、 合計 448ビットに対する電子署名を 生成する。 電子署名の生成方法は図 1 1で説明したので、 その詳細は省略する。 また、 公開鍵証明書も図 14で説明したので、 その詳細は省略する。
Αの公開鍵証明書、 Ra、 Rb、 Av、 電子署名 A. S i gを受信した Bは、 Aが送信してきた Rbが、 B.が生成したものと一致するか検証する。 その結果、 一致していた場合には、 Aの公開鍵証明書内の電子署名を認証局の公開鍵で検証 し、 Aの公開鍵を取り出す。 公開鍵証明書の検証については、 図 14を用いて説 明したので、 その詳細は省略する。 そして、 取り出した Aの公開鍵を用い電子署 名 A. S i gを検証する。 電子署名の検証方法は図 1 2で説明したので、 その詳 細は省略する。 電子署名の検証に成功した後、 Bは Aを正当なものとして認証す る。 次に、 Bは、 標数 pより小さい乱数 B kを生成する。 そして、 ベースポイント Gを B k倍した点 B v = B k XGを求め、 Rb、 R a、 B v (X座標と Y座標) に対する電子署名 Β. S i gを生成し、 Bの公開鍵証明書とともに Aに返送する
Bの公開鍵証明書、 Rb、 Ra、 Av、 電子署名 Β . S i gを受信した Aは、 Bが送信してきた R aが、 Aが生成したものと一致するか検証する。 その結果、 一致していた場合には、 Bの公開鍵証明書内の電子署名を認証局の公開鍵で検証 し、 Bの公開鍵を取り出す。 そして、 取り出した Bの公開鍵を用い電子署名 B. S i gを検証する。 電子署名の検証に成功した後、 Aは Bを正当なものとして認 証する。
両者が認証に成功した場合には、 Bは B k X A V (B kは乱数だが、 A vは楕 円曲線上の点であるため、 楕円曲線上の点のスカラー倍計算が必要) を計算し、 Aは Ak X B Vを計算し、 これら点の X座標の下位 64ビットをセッション鍵と して以降の通信に使用する (共通鍵暗号を 64ビット鍵長の共通鍵暗号とした場 合)。 もちろん、 Y座標からセッション鍵を生成してもよいし、 下位 64ビット でなくてもよい。 なお、 相互認証後の秘密通信においては、 送信データはセッシ ヨン鍵で暗号化されるだけでなく、 電子署名も付されることがある。
電子署名の検証や受信データの検証の際に、 不正、 不一致が見つかった場合に は、 相互認証が失敗したものとして処理を中断する。
(3-7) 楕円曲線暗号を用いた暗号化処理
次に、 楕円曲線暗号を用いた暗号化について、 図 1 6を用いて説明する。 ステ · ップ S 21において、 Mx、 M.yをメッセージ、 pを標数、 a、 bを楕円曲線の 係数 (楕円曲/線: y 2 = x 3+a x + b)、 Gを楕円曲線上のベースポイント、 rを Gの位数、 Gおよび K s XGを公開鍵 (0 <K s < r ) とする。 ステップ S 2 2 で乱数 uを 0く XIく rになるように生成し、 ステップ S 23で公開鍵 K s XGを u倍した座標 Vを計算する。 なお、 楕円曲線上のスカラー倍は図 1 1のステップ S 4で説明したので、 詳細は省略する。 ステップ S 24で、 Vの X座標を Mx倍 して pで剰余を求め XOとし、 ステップ S 25で Vの Y座標を My倍して pで剰 余を求め Y0とする。 なお、 メッセージの長さが pのビット数より少ない場合、 Myは乱数を使い、 複号化部では Myを破棄するようにする。 ステップ S 26に おいて、 u XGを計算し、 ステップ S 27で暗号文 u XG、 (X'0、 Y 0) を得 る。
(3-8) 楕円曲線暗号を用いた復号化処理
次に、 楕円曲線暗号を用いた復号化について、 図 1 7を用いて説明する。 ステ ップ S 3 1において、 u XG、 (XQ、 Y 0) を暗号文データ、 ρを標数、 a、 bを楕円曲線の係数 (楕円曲線: y 2 = x 3+ a x + b)、 Gを楕円曲線上のベー スポイント、 rを Gの位数、 K sを秘密鏈 (0く K sく r) とする。 ステップ s 32において、 暗号データ u XGを秘密鍵 K s倍し、 座標 V (X V , Y v) を求 める。 ステップ S 3 3では、 暗号データの内、 (XO、 Y 0) の X座標を取り出 し、 X l =XOZXv mo d ρを計算し、 ステップ S 34においては、 Υ座 標を取り出し、 Υ 1 =Υ0,Υ V mo d pを計算する。 そして、 ステップ S 3 5で X 1を Mxとし、 Y 1を Myとしてメッセージを取り出す。 この時、 My をメッセージにしていなかった場合、 Y 1は破棄する。
このように、 秘密鍵を K s、 公開鍵を G、 K s XGとすることで、 暗号化に使 用する鍵と複号化に使用する鍵を、 異なる鍵とすることができる。
また、 公開鍵暗号の他の例としては RS A暗号が知られているが、 詳しい説明 は省略する (PKC S # 1 V e r s i o n 2に詳細が記述されている)。
(3-9) 乱数生成処理
次に、 乱数の生成方法について説明する。 乱数の生成方法としては、 熱雑音を 増幅し、 その AZD出力から生成する真性乱数生成法や、 M系列等の線形回路を 複数組み合わせて生成する疑似乱数生成法等が知られている。 また、 DES等の 共通鍵暗号を用いて生成する方法も知られている。 本例では、 DESを用いた疑 似乱数生成方法について説明する (ANS I X 9. 1 7ベース)。
まず、 時間等のデータから得られた 64ビット (これ以下のビット数の場合、 上位ビットを 0とする) の値を D、 T r i p 1 e— DE Sに使われる鍵情報を K r、 乱数発生用の種 (S e e d) を Sとする。 このとき、 乱数 Rは以下のように 計算される。
I =T r i p l e— DES (Kr, D) (2— 1)
R = T r i p 1 e -DE S (K r, S ^ I ) …… (2-2)
S=T r i p l e— DES (K r , R ^ I ) …… (2— 3) (2) ここで、 T r i p 1 e— DES () は、 第 1引数を暗号鍵情報として、 第 2引 数の値を T r i p 1 e—DE Sで暗号化する関数とし、 演算 Λは 64ビット単位 の排他的論理和、 最終的にでてきた値 Sは、 新規の S e e d (種) として更新さ れていくものとする。
以下、 連続して乱数を生成する場合には、 (2— 2) 式、 (2— 3) 式を繰り返 すものとする。
以上、 本発明のデータ処理装置において適用可能な暗号処理に関する各種処理 態様について説明した。 次に、 本発明のデータ処理装置において実行される具体 的な処理について、 詳細に説明する。
(4) 記録再生器の格納データ構成
図 1 8は、 図 3で示す記録再生器 300での記録再生器暗号処理部 302に構 成された内部メモリ 307のデータ保持内容を説明する図である。
図 1 8に示すように、 内部メモリ 307には、 以下の鍵、 データが格納されて いる。
MK a k e :記録再生器 300と記録デバィス 400 (図 3参照) との間で実 行される相互認証処理に必要な認証鍵 (Au t h e n t i c a t i o n a n d Ke y E x c h a n g e Ke y (以下、 Ka k eとする)) を生成するため の記録デバィス認証鍵用マスター鍵。
I V a k e :記録デバイス認証鍵用初期値。 MK d i s 配送鏈 Kd i sを生成するための配送鍵用マスター鍵。
I V d i s 配送鍵生成用初期値。
K i c v a チェック値 I CV aを生成するための鍵であるチェック値 A生成
K i c V b :チェック値 I CVbを生成するための鍵であるチェック値 B生成
K i c V c :各コンテンッブロックのチェック値 I C V i ( i = 1〜N) を生 成するための鍵であるコンテンツチェック値生成鍵。
K i c V t :総チェック値 I CV tを生成するための鍵である総チェック値生 成鍵。
K s y s :配信システムに共通の署名または I CVをつけるために使用するシ ステム署名鍵。
Kd e V :記録再生器毎に異なり、 記録再生器が署名または I CVをつけるた めに使用する記録再生器固有の記録再生器署名鍵。
I Vmem :初期値、 相互認証処理等の際の暗号処理に用いられる初期値。 記 録デバイスと共通。
これらの鍵、 データが記録再生器暗号処理部 302に構成された内部メモリ 3 07に格納されている。
(5) 記録デバイスの格納データ構成
図 1 9は、 記録デバイス上でのデータ保持状況を示す図である。 図 1 9におい て、 内部メモリ 40 5は、 複数のブロック (本例では Nブロック) に分割されて おり、 それぞれのプロック中に、 以下の鍵、 データが格納されている。
I Dmem:記録デバイス識別情報、 記録デバイス固有の識別情報。
Ka k e :認証鍵、 記録再生器 300との相互認証時に用いる認証鍵。
I Vmem:初期値、 相互認証処理等の際の暗号処理に用いられる初期値。 K s t r :保存鍵、 プロック情報鍵他のコンテンツデータの喑号鍵。
K r :乱数生成鏈、 s :種
これらのデータを個別のブロックに各々保持している。 外部メモリ 4 0 2は複 数 (本例では M個) のコンテンツデータを保持しており、 それぞれ図 4で説明し たデータを、 例えば図 2 6、 または図 2 7のように保持している。 図 2 6、 図 2 7の構成の差異については後段で説明する。
( 6 ) 記録再生器、 記録デバイス間における相互認証処理
( 6 - 1 ) 相互認証処理の概要
図 2 0は、 記録再生器 3 0 0と記録デバイス 4 0 0との認証手順を示す流れ図 である。 ステップ S 4 1において、 利用者が記録デバイス 4 0 0を記録再生器 3 0 0に揷入する。 ただし非接触で通信できる記録デバイスを使用する場合には、 挿入する必要はない。
記録再生器 3 0 0に記録デバィス 4 0 0をセットすると、 図 3に示す記録再生 器 3 0 0内の記録デバイス検知手段 (図示せず) 力 制御部 3 0 1に記録デバィ ス 4 0 0の装着を通知する。 次に、 ステップ S 4 2において、 記録再生器 3 0 0 の制御部 3 0 1は、 記録デバィスコントローラ 3 0 3を介して記録デバィス 4 0 0に初期化命令を送信する。 これを受信した記録デバイス 4 0 0は、 記録デバィ ス喑号処理部 4 0 1の制御部 4 0 3において、 通信部 4 0 4を介して命令を受信 し、 認証完了フラグがセットされていればクリアする。 すなわち未認証状態に設 定する。 .
次に、 ステップ S 4 3において、 記録再生器 3 0 0の制御部 3 0 1は、 記録再 生器暗号処理部 3 0 2に初期化命令を送信する。 このとき、 記録デバイス揷入口 番号も併せて送信する。 記録デバイス揷入口番号を送信することにより、 記録再 生器 3 0 0に複数の記録デバイスが接続された場合であっても同時に複数の記録 デバイス 4 0 0との認証処理、 およびデータ送受信が可能となる。
. 初期化命令を受信した記録再生器 3 0 0の記録再生器暗号処理部 3 0 2は、 記 録再生器暗号処理部 3 0 2の制御部 3 0 6において、 記録デバイス揷入口番号に 対応する認証完了フラグがセットされ,ていればクリアする。 すなわち未認証状態 に設定 o。
次に、 ステップ S 4 4において、 記録再生器 3 0 0の制御部 3 0 1は、 記録デ バイス 4 0 0の記録デバイス暗号処理部 4 0 1が使う鍵プロック番号を指定する 。 なお、 鍵ブロック番号の詳細に関しては後述する。 ステップ S 4 5において、 記録再生器 3 0 0の制御部 3 0 1は、 記録デバィス 4 0 0の内部メモリ 4 0.5の 指定された鍵プロックに格納された記録デバィス識別情報 I D m e mを読み出す 。 ステップ S 4 6において、 記録再生器 3 0 0の制御部 3 0 1は、 記録再生器暗 号処理部 3 0 2に記録デバィス識別情報 I D m e mを送信し、 記録デバィス識別 情報 I D m e mに基づく認証鍵 K a k eを生成させる。 認証鍵 K a k eの生成方 法としては、 例えば次のように生成する。
K a k e = D E S (MK a k e , I D m e m Λ I V a k e ) …… (3 ) ここで、 MK a k eは、 記録再生器 3 0 0と記録デバイス 4 0 0 (図 3参照) との間で実行される相互認証処理に必要な認証鍵 K a k eを生成するための記録 デバイス認証鍵用マスター鍵であり、 これは、 前述したように記録再生器 3 0 0 の内部メモリ 3 0 7に格納されている鍵である。 また I D m e mは、 記録デバィ ス 4 0 0に固有の記録デバイス識別情報である。 さらに I V a k eは、 記録デバ イス認証鍵用初期値である。 また、 上記式において、 D E S () は、 第 1引数を 暗号鍵として、 第 2引数の値を D E Sで暗号化する関数であり、 演算 Λは 6 4ビ ット単位の排他的論理和を示す。
例えば図 7、 図 8に示す D E S構成を適用する場合には、 図 7, 8に示される メッセージ Mを記録デバイス識別情報: I D m e mとし、 鍵 1をデバイス認証 鍵用マスター鍵: M K a k eとし、 初期値 I Vを: I V a k eとして得られる出 力が認証鍵 K a k eとなる。
次に、 ステップ S 4 7で相互認証およびセッション鍵 K s e sの生成処理を行 う。 相互認証は、 記録再生器暗号処理部 3 0 2の暗号/複号化部 3 0 8と記録デ バイス暗号処理部 4 0 1の暗号ノ復号化部 4 0 6の間で行われ、 その仲介を記録 再生器 3 0 0の制御部 3 0 1が行っている。
相互認証処理は、 例えば前述の図 1 3で説明した処理にしたがって実行するこ とができる。 図 1 3に示す構成において、 A、 Bがそれぞれ記録再生器 3 0 0と 記録デバイス 4 0 0に対応する。 まず、 記録再生器 3 0 0の記録再生器暗号処理 部 3 0 2が乱数 R bを生成し、 乱数 R bおよび自己の I Dである記録 S生器識別 情報 I D d e Vを記録デバィス 4 0 0の記録デバイス暗号処理部 4 0 1に送信す る。 なお、 記録再生器識別情報 I D d e Vは、 記録再生器 3 0 0内に構成された 記憶部に記憶された再生器固有の識別子である。 記録再生器暗号処理部 3 0 2の 内部メモリ中に記録再生器識別情報 I D d e vを記録する構成としてもよい。 乱数 R bおよび記録再生器識別情報 I D d e Vを受信した記録デバィス 4 0 0 の記録デバイス暗号処理部 4 0 1は、 新たに 6 4ビットの乱数 R aを生成し、 R a、 R b、 と記録再生器識別情報 I D d e Vの順に、 D E Sの C B Cモードで認 証鍵 K a k eを用いてデータを暗号化し、 記録再生器 3 0 0の記録再生器暗号処 理部 3 0 2に返送する。 例えば、 図 7に示す D E Sの C B Cモード処理構成によ れば、 1 &が^1 1、 1 13が]\ 2、 I D d e Vが M 3に相当し、 初期値: I V = I V m e mとしたときの出力 E 1、 E 2、 E 3が暗号文となる。
暗号文 E l、 E 2、 E 3を受信した記録再生器 3 0 0の記録再生器暗号処理部 3 0 2は、 受信データを認証鍵 K a k eで複号化する。 受信データの複号化方法 は、 まず、 暗号文 E 1を認証鍵 K a k eで復号化し、 その結果と I V m e mとを 排他的論理和し、 乱数 R aを得る。 次に、 暗号文 E 2を認証鍵 K a k eで復号化 し、 その結果と E 1を排他的論理和し、 R bを得る。 最後に、 暗号文 E 3を認証 鍵 K a k eで復号化し、 その結果と E 2を排他的論理和し、 記録再生器識別情報 I D d e Vを得る。 こうして得られた R a、 R b、 記録再生器識別情報 I D d e vの内、 R bおよび記録再生器識別情報 I D d e Vが、 記録再生器 3 0 0が送信 したものと一致するか検証する。 この検証に通った場合、 記録再生器 3 0 0の記 録再生器暗号処理部 3 0 2は記録デバィス 4 0 0を正当なものとして認証する。 次に、 記録再生器 3 0 0の記録再生器暗号処理部 3 0 2は、 認証後に使用する セッション鍵 (S e s s i o n K e y (以下、 K s e sとする)) を生成する (生成方法は、 乱数を用いる)。 そして、 R b、 R a、 K s e sの順に、 DE S の CB Cモードで鍵 K a k e、 初期値 I Vm e mを用いて暗号化し、 記録デバィ ス 4 0 0の記録デバイス暗号処理部 4 0 1に返送する。
これを受信した記録デバィス 40 0の記録デバイス暗号処理部 40 1は、 受信 データを鍵 K a k eで復号化する。 受信データの復号化方法は、 記録再生器 3 0 0の記録再生器暗号処理部 3 0 2における復号化処理と同様であるので、 ここで は詳細を省略する。 こうして得られた Rb、 R a、 K s e sの内、 Rbおよび R aが、 記録デバイス 4 0 0が送信したものと一致するか検証する。 この検証に通 つた場合、 記録デバィス 40 0の記録デバィス暗号処理部 4 0 1は記録再生器 3 0 0を正当なものとして認証する。 互いに相手を認証した後には、 セッション鍵 K s e sは、 認証後の秘密通信のための共通鍵として利用される。
なお、 受信データの検証の際に、 不正、 不一致が見つかった場合には、 相互認 証が失敗したものとして処理を中断する。
相互認証に成功した場合には、 ステップ S 4 8からステップ S 4 9に進み、 セ ッション鍵 K s e sを記録再生器 3 0 0の記録再生器暗号処理部 3 0 2で保持す るとともに、 相互認証が終了したことを示す認証完了フラグをセットする。 また 、 相互認証に失敗した場合には、 ステップ S 5 0に進み、 認証処理過程で生成さ れたセッション鍵 K s e sを破棄するとともに、 認証完了フラグをクリァする。 なお、 すでにクリアされている^ ¾合には必1"しもクリア処理は必要ではない。 なお、 記録デバィス 40 0が記録デバィス揷入口から取り除かれた場合には、 記録再生器 3 0 0内の記録デバイス検知手段が、 記録再生器 3 0 0の制御部 3 0 1に記録デバイス 4 0 0が取り除かれたことを通知し、 これを受けた記録再生器 3 0 0の制御部 3 0 1は、 記録再生器 3 0 0の記録再生器暗号処理部 3 0 2に対 し記録デバイス揷入口番号に対応する認証完了フラグをクリアするように命令し 、 これを受けた記録再生器 3 0 0の記録再生器暗号処理部 3 0 2は、 記録デバィ ス揷入口番号に対応する認証完了フラグをクリアする。
なお、 ここでは相互認証処理を図 1 3に示す手続きにしたがつて実行する例に ついて説明したが、 上述した認証処理例に限らず、 例えば先に説明した図 1 5の 相互認証手続きに従った処理を実行してもよい。 また、 図 1 3に示す手続きにお いて、 図 1 3の Aを記録再生器 3 0 0とし、 Bを記録デバイス 4 0 0とし、 B : 記録デバイス 4 0 0が A:記録再生器 3 0 0に最初に送付する I Dを記録デバィ ス中の鍵プロック中の記録デバイス識別情報として相互認証処理を行なってもよ い。 本発明において実行される認証処理手続きは、 様々な処理が適用可能であり 、 上述の認証処理に限定されるものではない。
( 6 - 2 ) 相互認証時の鍵プロックの切り替え
本発明のデータ処理装置における相互認証処理における 1つの特徴は、 記録デ バイス 4 0 0側に複数の鍵ブロック (e x . N個の鍵ブロック) を構成して、 記 録再生器 3 0 0が 1つの鍵ブロックを指定 (図 2 0の処理フローにおけるステツ プ S 4 4 ) して認証処理を実行する点である。 先に図 1 9において説明したよう に、 記録デバィス 4 0 0の暗号処理部 4 0 1に構成された内部メモリ 4 0 5には 複数の鍵ブロックが形成されており、 それぞれが異なる鍵データ、 I D情報等各 種データを格納している。 図 2 0で説明した記録再生器 3 0 0と記録デバイス 4 0 0間で実行される相互認証処理は、 図 1 9の記録デバィス 4 0 0の複数の鍵ブ ロックの 1つの鍵プロックに対して実行される。
従来、 記憶媒体とその再生機器間における相互認証処理を実行する構成では、 相互認証に用いる鍵:認証鍵は共通なものが使用されるのが一般的であった。 従 つて、 例えば製品仕向け先 (国別) ごと、 あるいは製品ごとに認証鍵を変更しよ うとすると、 記録再生器側と、 記録デバイス側の認証処理に必要となる鍵データ を双方の機器において変更することが必要となる。 従って例えば新たに発売され た記録再生器に格納された認証処理に必要となる鍵データは、 先に販売された記 録デバイスに格納された認証処理に必要となる鍵データに対応せず、 新たな記録 再生器は、 古いバージョンの記録デバイスへのアクセスができなくなってしまう c
事態が発生する。 逆に新しいバージョンの記録デバイスと古いバージョンの記録 再生器との関係においても同様の事態が発生する。
本発明のデータ処理装置においては、 図 1 9に示すように予め記録デバイス 4 0 0に複数の異なる鍵セットとしての鍵ブロックが格納されている。 記録再生器 は例えば製品仕向け先 (国別) ごと、 あるいは製品、 機種、 バージョン、 アプリ ケーシヨンごとに、 認証処理に適用すべき鍵ブロック、 すなわち指定鍵プロック が設定される。 この設定情報は、 記録再生器のメモリ部、 例えば、 図 3における 内部メモリ 3 0 7、 あるいは、 記録再生器 3 0 0の有するその他の記憶素子内に 格納され、 認証処理時に図 3の制御部 3 0 1によってアクセスされ設定情報にし たがった鍵プロック指定が行われる。
記録再生器 3 0 0の内部メ^リ 3 0 7の記録デバイス認証鍵用マスター鍵 M K a k eは、 それぞれの指定鍵プロックの設定に従って設定された認証鍵用マスタ 一鍵であり、 指定鍵ブロックにのみ対応可能となっており、 指定鍵プロック以外 の鍵プロックとの相互認証は成立しない構成となっている。
図 1 9力 ら理解されるように、 記録デバイス 4 0 0の内部メモリ 4 0 5には 1 〜Nの N個の鍵プロックが設定され、 各鏈プロック毎に記録デバイス識別情報、 認証鏈、 初期値、 保存鏈、 乱数生成鍵、 種が格納され、 少なくとも認証用のかぎ データがプロック毎に異なるデータとして格納されている。
このように、 記録デバイス 4 0 0の鍵プロックの鍵データ構成は、 ブロック毎 に異なっている。 従って、 例えば、 ある記録再生機器 Aが内部メモリに格納され た記録デバイス認証鍵用マスター鍵 MK a k eを用いて認証処理を行ない得る鍵 ブ口ックは鍵プロック N o . 1であり、 また別の仕様の記録再生器 Bが認証可能 な鍵プロックは別の鍵プロック、 例えば鍵プロック N o . 2のように設定するこ とが可能となる。
後段でさらに詳細に説明するが、 コンテンツを記録デバイス 4 0 0の外部メモ リ 4 0 2に格納する際、 各鍵プロックに格納された保存鍵 K s t rを用いて暗号 化処理がなされ、 格納されることになる。 より、 具体的には、 コンテンツプロッ クを暗号化するコンテンッ鍵を保存鍵で暗号化処理する。
図 1 9に示すように保存鍵は、 各プロック毎に異なる鍵として構成されている 。 従って、 異なる鍵プロックを指定するように設定された 2つの異なる設定の記 録再生器間においては、 ある 1つの記録デバイスのメモリに格納されたコンテン ッを両者で共通に利用することは防止される。 すなわち、 異なる設定のなされた 記録再生器は、 それぞれの設定に合致する記録デバイスに格納されたコンテンツ のみが利用できる。
なお、 各鍵プロックについて共通化可能なデータは共通化することも可能であ り、 例えば認証用の鍵データ、 保存鍵データのみを異なるように構成してもよい このような記録デバィスに複数の異なる鍵データからなる鍵プロックを構成す る具体例としては、 例えば記録再生器 3 0 0の機種別 (据え置き型、 携帯型等) で指定すべき鍵ブロック番号を異なるように設定したり、 あるいは、 アプリケー シヨン毎に指定鍵ブロックを異なるように設定する例がある。 さらに、 例えば日 本で販売する記録再生器については指定鍵ブロックを N o . 1とし、 米国で販売 する記録再生器は指定鍵プロックを N o . 2とするように地域ごとに異なる鍵プ ロック設定を行なう構成とすることも可能である。 このような構成とすることで 、 それぞれの異なる販売地域で使用され、 記録デバイスに異なる保存鍵で格納さ れたコンテンツは、 たとえメモリカードのような記録デバィスが米国から日本、 あるいは S本から米国へ転送されてきても、 異なる鍵設定のなされた記録再生器 で利用することは不可能であるので、 メモリに格納したコンテンツの不正、 無秩 序な流通を防止できる。 具体的には、 異なる保存鍵 K s t rで暗号化されている コンテンツ鍵 K c o nが 2国間で相互に利用可能となる状態を排除することがで きる。
さらに、 図 1 9に示す記録デバィス 4 0 0の内部メモリ 4 0 5の鍵プロック 1 〜Nまでの少なくとも 1つの鍵ブロック、 例えば N o . Nの鍵プロックをいずれ の記録再生器 3 0 0においても共通に利用可能な鍵プロックとして構成してもよ レ、。
例えば、 全ての機器に鍵プロック N o . Nとの認証可能な記録デバィス認証鍵 用マスター鍵 MK a k eを格納することで、 記録再生器 3 0 0の機種別、 アプリ ケーシヨン毎、 仕向け国毎等に無関係に流通可能なコンテンツとして扱うことが できる。 例えば、 鍵ブロック N o . Nに格納された保存鍵でメモリカードに格納 された暗号化コンテンツは、 すべての機器において利用可能なコンテンツとなる 。 例えば、 音楽データ等を共通に利用可能な鍵ブロックの保存鍵で暗号化してメ モリカードに記憶し、 このメモリカードを、 やはり共通の記録デバイス認証鍵用 マスター鍵 MK a k eを格納した例えば携帯型の音声再生機器等にセットするこ とで、 メモリ力一ドからのデータの復号再生処理を可能とすることができる。 本発明のデータ処理装置における複数の鍵ブロックを有する記録デバイスの利 用例を図 2 1に示す。 記録再生器 2 1 0 1は日本向け製品の記録再生器であり、 記録デバイスの鍵プロックの N o . 1, 4との間での認証処理が成立するマスタ 一鍵を持っている。 記録再生器 2 1 0 2は U S向け製品の記録再生器であり、 記 録デバイスの鍵プロックの N o . 2 , 4との間での認証処理が成立するマスター 鍵を持っている。 記録再生器 2 1 0 3は E U向け製品の記録再生器であり、 記録 デバイスの鍵プロックの N o . 3, 4との間での認証処理が成立するマスター鍵 を持っている。
例えば記録再生器 2 1 0 1は、 記録デバィス A, 2 1 0 4の鍵プロック 1また は鍵プロタク 4との間で認証が成立し、 それぞれの鍵プロックに格納された保存 鍵を介した暗号処理を施したコンテンツが外部メモリに格納される。 記録再生器 2 1 0 2は、 記録デバィス B, 2 1 0 5の鍵ブロック 2または鍵プロック 4との 間で認証が成立し、 それぞれの鍵プロックに格納された保存鍵を介した暗号処理 を施したコンテンツが外部メモリに格納される。 記録再生器 2 1 0 3は、 記録デ バイス C, 2 1 0 6の鍵プロック 3または鍵プロック 4との間で認証が成立し、 それぞれの鍵プロックに格納された保存鍵を介した暗号処理を施したコンテンツ が外部メモリに格納される。 ここで、 記録デバイス A, 2 1 0 4を記録再生器 2 1 0 2、 または記録再生器 2 1 0 3に装着した場合、 鍵プロック 1の保存鍵で暗 号処理がなされたコンテンツは、 記録再生器 2 1 0 2、 記録再生器 2 1 0 3と鍵 ブロック 1との間での認証が成立しないので利用不可能となる。 一方、 鍵プロッ ク 4の保存鍵で喑号処理がなされたコンテンツは、 記録再生器 2 1 0 2、 記録再 生器 2 1 0 3と鍵プロック 4との間での認証が成立するので利用可能となる。 上述のように、 本発明のデータ処理装置においては、 記録デバイスに複数の異 なる鍵セットからなる鍵ブロックを構成し、 一方、 記録再生機器には、 特定の鍵 プロックに対する認証可能なマスター鍵を格納する構成としたので、 様々な利用 態様に応じたコンテンツの利用制限を設定することが可能となる。
なお、 1つの記録再生機器において指定可能な鍵プロックを複数、 例えば 1〜 kとし、 他の記録再生器において指定可能な鍵プロックを p〜qのように複数と することも可能であり、 また、 共通に利用可能な鍵プロックを複数設ける構成と
( 7 ) 記録再生器から記録デバイスへのダウンロード処理
次に、 本発明のデータ処理装置において、 記録再生器 3 0 0から記録デバイス
4 0 0の外部メモリにコンテンツをダウンロードする処理について説明する。 図 2 2は、 記録再生器 3 0 0から記録デバイス 4 0 0へコンテンツをダウン口 ードする手順を説明する流れ図である。 なお、 図 2 2においては、 既に記録再生 器 3 0 0と記録デバイス 4 0 0との間で上述した相互認証処理が完了しているも のとする。
ステップ S 5 1において、 記録再生器 3 0 0の制御部 3 0 1は、 読み取り部 3 0 4を使ってコンテンツを格納したメディア 5 0 0から所定のフォーマツトに従 つたデータを読み出すか、 通信部 3 0 5を使って通信手段 6 0 0から所定のフォ 一マツトに従ってデータを受信する。 そして、 記録再生器 3 0 0の制御部 3 0 1 は、 データの内のヘッダ (H e a d e r ) 部分 (図 4参照) を記録再生器 3 0 0 の記録再生器喑号処理部 3 0 2に送信する。
次に、 ステップ S 5 2において、 ステップ S 5 1でヘッダ (H e a d e r ) を 受信した記録再生器暗号処理部 302の制御部 306は、 記録再生器暗号処理部 30 2の暗号ノ復号化部 308にチェック値 Aを計算させる。 チェック値 Aは、 図 23に示すように、 記録再生器暗号処理部 30 2の内部メモリ 307に保存さ れているチェック値 A生成鍵 K i c V aを鍵とし、 識別情報 (C o n t e n t I D) と取扱方針 (U s a g e P o 1 i c y) をメッセージとして図 7で説明 した I CV計算方法に従って計算される。 なお、 初期値は、 I V=0としても、 記録再生器暗号処理部 302の内部メモリ 307にチェック値 A生成用初期値 I V aを保存しておき、 それを使用してもよい。 最後に、 チェック値 Aとヘッダ ( He a d e r) 内に格納されたチェック値: I CV aを比較し、 一致していた場 合にはステップ S 5 3へ進む。
先に図 4において説明したようにチェック値 A, I CVaは、 識別情報、 取扱 方針の改竄を検証するためのチェック値である。 記録再生器暗号処理部 30 2の 内部メモリ 307に保存されているチェック値 A生成鍵 K i c V aを鍵とし、 識 別情報 (C o n t e n t I D) と取扱方針 (U s a g e P o l i c y) をメ ッセージとして図 7で説明した I CV計算方法に従って計算されるチェック値 A が、 ヘッダ (He a d e r) 内に格納されたチェック値: I CV aと一致した場 合には、 識別情報、 取扱方針の改竄はないと判断される。
次に、 ステップ S 53において、 記録再生器暗号処理部 302の制御部 306 は、 配送鍵 Kd i sの生成を記録再生器暗号処理部 302の暗号/複号化部 30 8に行わせる。 配送鍵 Kd i sの生成方法としては、 例えば次のように生成する
K d i s =D E S (MK d i s, C o n t e n t I D ^ I V d i s )
…… (4) ここで、 MKd i sは、 配送鍵 Kd i sを生成するための配送鍵用マスター鍵 であり、 これは、 前述したように記録再生器 300の内部メモリに格納されてい る鍵である。 また C o n t e n t I Dはコンテンツデータのヘッダ部の識別情 報であり、 さらに I Vd i sは、 配送鍵用初期値である。 また、 上記式において 、 DES () は、 第 1引数を暗号鍵として、 第 2引数の値を暗号化する関数であ り、 演算 Λは 64ビット単位の排他的論理和を示す。
ステップ S 54において、 記録再生器暗号処理部 302の制御部 306は、 記 録再生器暗号処理部 302の暗号/復号化部 308を使って、 ステップ S 53で 生成した配送鍵 Kd i sを用いて、 読み取り部 304を介して受信したメディア 500、 または、 通信部 305を介して通信手段 600から受信したデータのへ ッダ部に格納されたブロック情報鍵 Kb i tとコンテンツ鍵 Kc o n (図 4参照 ) の復号化処理を行う。 図 4に示されるようにこれらブロック情報鍵 Kb i tと コンテンツ鍵 K c o nは、 DVD, CD等のメディア、 あるいはインターネット 等の通信路上では、 配送鍵 Kd i sによって予め暗号化処理が施されている。 さらに、 ステップ S 55において、 記録再生器喑号処理部 30 2の制御部 3 0 6は、 記録再生器暗号処理部 302の喑号 Z複号化部 308を使って、 ステップ S 54で復号化したプロック情報鍵 Kb i tでプロック情報 (B I T) を復号化 する。 図 4に示されるようにプロック情報 (B I T) は、 DVD, CD等のメデ ィァ、 あるいはインターネット等の通信路上では、 ブロック情報鍵 Kb i tによ つて予め暗号化処理が施されている。
さらに、 ステップ S 56において、 記録再生器暗号処理部 30 2の制御部 3 0 6は、 ブロック情報鍵 Kb i t、 コンテンツ鍵 K c o nおよびブロック情報 (B I T) を 8バイ ト単位に分割し、 それら全てを排他的論理和する (加算、 減算等 、 いずれの演算でもよい)。 次に、 記録再生器暗号処理部 30 2の制御部 3 06 は、 記録再生器暗号処理部 302の暗号/復号化部 308にチェック値 B ( I C Vb) を計算させる。 チェック値 Bは、 図 24に示すように、 記録再生器喑号処 理部 302の内部メモリ 307に保存されているチェック値 B生成鍵 K i c V b を鍵とし、 先ほど計算した排他的論理和値を DE Sで暗号化して生成する。 最後 に、 チェック値 Bと He a d e r内の I CVbを比較し、 一致していた場合には ステップ S 57へ進む。
先に図 4において説明したように、 チェック値 B, I CVbは、 ブロック情報 鍵 Kb i t、 コンテンツ鍵 Kc o n、 プロック情報 (B I T) の改竄を検証する ためのチェック値である。 記録再生器暗号処理部 302の内部メモリ 307に保 存されているチェック値 B生成鍵 K i c V bを鍵とし、 プロック情報鍵 Kb i t 、 コンテンツ鍵 Kc o nおよびプロック情報 (B I T) を 8バイ ト単位に分割し 排他的論理和して得られる値を DESで暗号化して生成したチェック値 Bが、 へ ッダ (He a d e r) 内に格納されたチェック値: I C V bと一致した場合には 、 プロック情報鍵 Kb i t;、 コンテンツ鍵 Kc o n、 ブロック情報の改竄はない と判断される。
ステップ S 57において、 記録再生器暗号処理部 302の制御部 306は、 記 録再生器暗号処理部 302の暗号ノ複号化部 308に中間チェック値の計算をさ せる。 中間チェック値は、 図 25に示すように、 記録再生器暗号処理部 302の 内部メモリ 307に保存されている総チェック値生成鍵 K i c V tを鍵とし、 検 証したヘッダ (He a d e r) 内のチェック値 A、 チェック値 B、 保持しておい た全てのコンテンツチェック値をメッセージとして図 7で説明した I C V計算方 法に従って計算する。 なお、 初期値 I V=0としても、 記録再生器暗号処理部 3 02の内部メモリ 3 07に総チェック値生成用初期値 I V tを保存しておき、 そ れを使用してもよい。 また、 生成した中間チェック値は、 必要に応じて記録再生 器 300の記録再生器暗号処理部 302に保持しておく。
この中間チェック値は、 チェック値 A、 チェック値 B、 全てのコンテンツチェ ック値をメッセージとして生成されるものであり、 これらの各チェック値の検証 対象となっているデータについての検証を中間チェック値の照合処理によって行 なってもよい。 しかし、 本実施例においては、 システム全体の共有データとして の非改竄性検証処理と、 ダウンロード処理後に各記録再生 ¾器 300のみが占有 する占有データとして識別するための検証処理を区別して実行可能とするために 、 中間チェック値からさらに複数の異なるチェック値、 すなわち総チェック値 I CV tと、 記録再生器固有チェック値 I CVd e vとを別々に、 中間チェック値 に基づいて生成可能としている。 これらのチェック値については後段で説明する 記録再生器暗号処理部 302の制御部 306は、 記録再生器暗号処理部 30 2 の暗号/復号化部 308に総チェック値 I C V tの計算をさせる。 総チェック値 I CV tは、 図 25に示すように、 記録再生器喑号処理部 302の内部メモリ 3 07に保存されているシステム署名鍵 K s y sを鍵とし、 中間チェック値を DE Sで暗号化して生成する。 最後に、 生成した総チェック値 I CV tとステップ S 51で保存しておいた He a d e r内の I CV tを比較し、 一致していた場合に は、 ステップ S 58へ進む。 システム署名鍵 K s y sは、 複数の記録再生器、 す なわちある一定のデータの記録再生処理を実行するシステム集合全体において共 通する署名鍵である。
先に図 4において説明したように、 総チェック値 I CV tは、 I CV a、 I C Vb、 各コンテンツプロックのチェック値全ての改竄を検証するためのチェック 値である。 従って、 上述の処理によって生成された総チェック値がヘッダ ( He a d e r) 内に格納されたチェック値: I C V tと一致した場合には、 I C Va、 I CVb、 各コンテンツブロックのチェック値全ての改竄はないと判断さ れる。
次に、 ステップ S 58において、 記録再生器 3 00の制御部 301は、 プロッ ク情報 (B I T) 内のコンテンツブロック情報を取り出し、 コンテンツブロック が検証対象になっているかいなレ、か調べる。 コンテンツブロックが検証対象にな つている場合には、 ヘッダ中のブロック情報中にコンテンツチェック値が格納さ れている。
コンテンツプロックが検証対象になっていた場合には、 該当するコンテンツブ ロックを、 記録再生器 300の読み取り部 304を使ってメディア 500から読 み出すか、 記録再生器 300の通信部 305を使つて通信手段 600から受信し 、 記録再生器 300の記録再生器暗号処理部 30 2へ送信する。 これを受信した 記録再生器暗号処理部 3 0 2の制御部 3 0 6は、 記録再生器暗号処理部 3 0 2の 暗号/複号化部 3 0 8にコンテンツ中間値を計算させる。
コンテンツ中間値は、 ステップ S 5 4で復号化したコンテンツ鍵 K c o nで、 入力されたコンテンツプロックを D E Sの C B Cモードで復号化し、 その結果を 8バイトごとに区切り、 全て排他的論理和 (加算、 減算等、 いずれの演算でもよ い) して生成する。
次に、 記録再生器暗号処理部 3 0 2の制御部 3 0 6は、 記録再生器暗号処理部 3 0 2の暗号/復号化部 3 0 8にコンテンツチ: ック値の計算をさせる。 コンテ ンツチエック値は、 記録再生器暗号処理部 3 0 2の内部メモリ 3 0 7に保存され ているコンテンツチェック値生成鍵 K i c v cを鍵とし、 コンテンツ中間値を D E Sで暗号化して生成する。 そして、 記録再生器暗号処理部 3 0 2の制御部 3 0 6は、 当該コンテンツチェック値と、 ステップ S 5 1で記録再生器 3 0 0の制御 部 3 0 1から受信したコンテンツプロック内の I C Vを比較し、 その結果を記録 再生器 3 0 0の制御部 3 0 1に渡す。 これを受信した記録再生器 3 0 0の制御部 3 0 1は、 検証に成功していた場合、 次の検証対象コンテンツプロックを取り出 して記録再生器 3 0 0の記録再生器暗号処理部 3 0 2に検証させ、 全てのコンテ ンップロックを検証するまで同様の検証処理を繰り返す。 なお、 H e a d e r生 成側と合わせておけば、 I V = 0としても、 記録再生器暗号処理部 3 0 2の内部 メモリ 3 0 7にコンテンツチェック値生成用初期値 I V cを保存しておき、 それ を使用してもよい。 また、 チェックした全てのコンテンツチェック値は、 記録再 生器 3 0 0の記録再生器暗号処理部 3 0 2に保持しておく。 さらにまた、 記録再 生器 3 0 0の記録再生器暗号処理部 3 0 2は、 検証対象のコンテンツプロックの 検証順序を監視し、 順序が間違っていたり、 同一のコンテンツプロックを 2回以 上検証させられたりした場合には、 認証に失敗したものとする。 そして、 全ての 検証が成功した場合には、 ステップ S 5 9へ進む。
次に、 ステップ S 5 9において、 記録再生器 3 0 0の記録再生器暗号処理部 3 0 2は、 ステップ S 5 4で復号化しておいたブロック情報鍵 K b i tとコンテン ッ鍵 K c o nを、 記録再生器喑号処理部 3 0 2の暗号ノ復号化部 3 0 8に、 相互 認証の際に共有しておいたセッション鍵 K s e sで暗号化させる。 記録再生器 3 0 0の制御部 3 0 1は、 セッション鍵 K s e sで喑号化されたプロック情報鍵 K b i tとコンテンッ鍵 K c o nを記録再生器 3 0 0の記録再生器暗号処理部 3 0 2から読み出し、 これらのデータを記録再生器 3 0 0の記録デバイスコントロー ラ 3 0 3を介して記録デバイス 4 0 0に送信する。
次に、 ステップ S 6 0において、 記録再生器 3 0 0から送信されてきたブロッ ク情報鍵 K b i tとコンテンツ鍵 K c o nを受信した記録デバィス 4 0 0は、 受 信したデータを記録デバイス暗号処理部 4 0 1の暗号ノ復号化部 4 0 6に、 相互 認証の際に共有しておいたセッション鍵 K s e sで復号化させ、 記録デバイス暗 号処理部 4 0 1の内部メモリ 4 0 5に保存してある記録デバイス固有の保存鍵 K s t rで再暗号化させる。 最後に、 記録再生器 3 0 0の制御部 3 0 1は、 記録再 生器 3 0 0の記録デバイスコントローラ 3 0 3を介し、 記録デバイス 4 0 0から 保存鍵 K s t rで再暗号化されたプロック情報鍵 K b 1 tとコンテンツ鍵 K c o nを読み出す。 そして、 これらの鍵を、 配送鍵 K d i sで暗号化されたプロック 情報鍵 K b i tとコンテンツ鍵 K c o nに置き換える。
ステップ S 6 1において、 記録再生器 3 0 0の制御部 3 0 1は、 データのへッ ダ部の取扱方針 (U s a g e P o l i c y ) から利用制限情報を取り出し、 ダ ゥンロードしたコンテンツが当該記録再生器 3 0 0のみで利用できる (この場合 、 利用制限情報が 1に設定) カ 別の同様な記録再生器 3 0 0でも利用できる ( この場合、 利用制限情報が 0に設定) か判定する。 判定の結果、 利用制限情報が 1であった場合には、 ステップ S 6 2に進む。
ステップ S 6 2において、 記録再生器 3 0 0の制御部 3 0 1は、 記録再生器固 有のチェック値を記録再生器 3 0 0の記録再生器暗号処理部 3 0 2に計算させる 。 記録再生器固有のチェック値は、 図 2 5に示すように記録再生器暗号処理部 3 0 2の内部メモリ 3 0 7に保存されている記録再生器署名鍵 K d e Vを键とし、 ステップ S 5 8で保持しておいた中間チェック値を D E Sで暗号化して生成する 。 計算された記録再生器固有のチェック値 I C V d e vは、 総チェック値 I C V tの代わりに上書きされる。
先に説明したように、 システム署名鍵 K S y Sは、 配信システムに共通の署名 または I C Vをつけるために使用するシステム署名鍵であり、 また、 記録再生器 署名鍵 K d e vは、 記録再生器毎に異なり、 記録再生器が署名.または I C Vをつ けるために使用する記録再生器署名鍵である。 すなわち、 システム署名鍵 K s y sによって署名されたデータは、 同じシステム署名鍵を有するシステム (記録再 生器) によってチェックが成功、 すなわち総チェック値 I C V tがー致すること になるので、 共通に利用可能となるが、 記録再生器署名鍵 K d e vを用いて署名 された場合には、 記録再生器署名鍵はその記録再生器に固有の鍵であるので、 記 録再生器署名鍵 K d e vを用いて署名されたデータ、 すなわち、 署名後、 記録デ バイスに格納されたデータは、 他の記録再生器に、 その記録デバイスを装着して 再生しようとした場合、 記録再生器固有のチェック値 I C V d e vが不一致とな り、 エラーとなるので再生できないことになる。
従って、 本発明のデータ処理装置においては、 利用制限情報の設定によって、 システムに共通に使用できるコンテンツ、 記録再生器固有に利用できるコンテン ッを自在に設定することが可能となる。
ステップ S 6 3において、 記録再生器 3 0 0の制御部 3 0 1は、 コンテンツを 記録デバィス 4 0 0の外部メモリ 4 0 2に保存する。
図 2 6は、 利用制限情報が 0の場合における記録デバイス内のコンテンツ状況 を示す図である。 図 2 7は、 利用制限情報が 1の場合における記録デバイス内の コンテンツ状況を示す図である。 図 2 6が図 4と異なる点は、 コンテンツプロッ ク情報鍵 K b i tとコンテンツ鍵 K c 0 11が配送鍵!^ (1 i sで暗号化されている 力、 保存鍵 K s t rで暗号化されているかだけである。 また、 図 2 7が図 2 6と 異なる点は、 中間チェック値から計算されるチェック値が、 図 2 6ではシステム 署名鍵 K s y sで暗号化されているのに対し、 図 2 7では記録再生器固有の記録 再生器署名鍵 K d e vで暗号化されていることである。 なお、 図 22の処理フローにおいて、 ステップ S 52でチェック値 Aの検証に 失敗した場合、 ステップ S 56でチェック値 Bの検証に失敗した場合、 ステップ
557で総チェック値 I C V tの検証に失敗した場合、 ステップ S '58で各コン テンッブロックのコンテンツチェック値の検証に失敗した場合には、 ステップ S
64に進み、 所定のエラー表示を行う。
また、 ステップ S 6 1で利用制限情報が 0であった場合には、 ステップ S 6 2 をスキップしてステップ S 63へ進む。
(8) 記録デバイス格納情報の記録再生器での再生処理
次に記録デバイス 400の外部メモリ 402に格納されたコンテンツ情報の記 録再生器 300での再生処理について説明する。
図 28は、 記録再生器 300が記録デバィス 400からコンテンツを読み出し 、 コンテンツを利用する手順を説明する流れ図である。 なお、 図 28においても 、 既に記録再生器 3 00と記録デバイス 400との間で相互認証が完了している ものとする。
ステップ S 7 1において、 記録再生器 300の制御部 301は、 記録デバイス コントローラ 3 03を使って記録デバイス 400の外部メモリ 402からコンテ ンッを読み出す。 そして、 記録再生器 300の制御部 30 1は、 データの内のへ ッダ (He a d e r) 部分を記録再生器 300の記録再生器喑号処理部 30 2に 送信する。 ステップ S 72は、 「(7) 記録再生器から記録デバイスへのダウン口 ード処理」 において説明したステップ S 52と同様の処理であり、 ヘッダ ( He a d e r) を受信した記録再生器暗号処理部 302の制御部 306が、 記録 再生器暗号処理部 3 02の暗号 複号化部 308にチヱック値 Aを計算させる処. 理である。 チェック値 Aは、 先に説明した図 23に示すように記録再生器暗号処 理部 302の内部メモリ 307に保存されているチェック値 A生成鍵 K l e v a を鍵とし、 識別情報 (C o n t e n t I D) と取扱方針 (U s a g e
P o l i c y) をメッセージとして図 7で説明したと同様の I CV計算方法に従 つて計算される。 先に説明したようにチェック値 A, I CVaは、 識別情報、 取扱方針の改竄を 検証するためのチェック値である。 記録再生器暗号処理部 302の内部メモリ 3 07に保存されているチェック値 A生成鍵 K i c v aを鍵とし、 識別情報 ( C o n t e n t I D) と取扱方針 (U s a g e P o l i c y) をメッセージ として図 7で説明した I CV計算方法に従って計算されるチェック値 Aが、 へッ ダ (He a d e r) 内に格納されたチェック値: I C V aと一致した場合には、 記録デバイス 400に格納された識別情報、 取扱方針の改竄はないと判断される 次に、 ステップ S 73において、 記録再生器 300の制御部 301は、 読み出 したヘッダ (He a d e r) 部分からブロック情報鍵 K b i tとコンテンツ鍵 K c ο ηを取り出し、 記録再生器 300の記録デバイスコントローラ 30 3を介し て記録デバイス 400に送信する。 記録再生器 300から送信されてきたプロッ ク情報鍵 K b i tとコンテンッ鍵 K c o nを受信した記録デバィス 400は、 受 信したデータを記録デバイス暗号処理部 401の暗号 Z復号化部 406に、 記録 デバイス暗号処理部 40 1の内部メモリ 405に保存してある記録デバイス固有 の保存鍵 K s t rで復号化処理させ、 相互認証の際に共有しておいたセッション 鍵 K S e sで再暗号化させる。 そして、 記録再生器 300の制御部 30 1は、 記 録再生器 300の記録デパイスコントローラ 30 3を介し、 記録デバィス 400 からセッション鍵 K s e sで再喑号化されたプロック情報鍵 Kb i tとコンテン ッ鍵 K c o nを読み出す。
次に、 ステップ S 74において、 記録再生器 300の制御部 301は、 受信し たセッション鍵 K s e sで再暗号化されたブ口ック情報鍵 K b i tとコンテンツ 鍵 Kc o nを記録再生器 300の記録再生器暗号処理部 302に送信する。 セッション鍵 K s e sで再暗号化されたブロック情報鍵 Kb i tとコンテンツ 鍵 K c o nを受信した記録再生器 300の記録再生器暗号処理部 302は、 記録 再生器暗号処理部 3 02の暗号 Z複号化部 308に、 セッション鍵 K s e sで暗 号化されたプロック情報鍵 Kb i tとコンテンツ鍵 Kc o nを、 相互認証の際に 共有しておいたセッション鍵 K s e sで複号化させる。 そして、 復号化したプロ ック情報鍵 Kb i tで、 ステップ S 71で受信しておいたプロック情報を復号化 させる。
なお、 記録再生器 300の記録再生器暗号処理部 30 2は、 複号化したプロッ ク情報鍵 Kb i t、 コンテンツ鍵 K c o nおよびブロック情報 B I Tを、 ステツ プ S 71で受信しておいたブロック情報鍵 Kb i t、 コンテンツ鍵 K c o nおよ びプロック情報 B I Tに置き換えて保持しておく。 また、 記録再生器 300の制 御部 301は、 復号化されたプロック情報 B I Τを記録再生器 300の記録再生 器暗号処理部 302から読み出しておく。
ステップ S 75は、 「(7) 記録再生器から記録デバイスへのダウンロード処理 」 において説明したステップ S 56と同様の処理である。 記録再生器暗号処理部 302の制御部 306が、 記録デバィス 400から読み出したプロック情報鍵 Κ b i t , コンテンツ鍵 K c o nおよびブロック情報 (B I T) を 8バイト単位に 分割し、 それら全てを排他的論理和する。 次に、 記録再生器暗号処理部 30 2の 制御部 306は、 記録再生器暗号処理部 302の暗号 Z復号化部 308にチエツ ク値 B ( I CVb) を計算させる。 チェック値 Bは、 先に説明した図 24に示す ように、 記録再生器暗号処理部 30 2の内部メモリ 307に保存されているチヱ ック値 B生成鍵 K i c v bを鍵とし、 先ほど計算した排他的論理和値を DE Sで 暗号化して生成する。 最後に、 チェックイ直 Bと H e a d e r内の I CVbを比較 し、 一致していた場合にはステップ S 76へ進む。
先に説明したように、 チェック値 B, I CVbは、 プロック情報鍵 Kb i t、 コンテンツ鍵 Kc o n、 ブロック情報の改竄を検証するためのチェック値である 。 記録再生器暗号処理部 302の内部メモリ 30 7に保存されているチェック値 B生成鍵 K i c V bを鍵とし、 記録デバイス 400から読み出したプロック情報 鍵 Kb i t、 コンテンツ鍵 Kc o nおよびプロック情報 (B I T) を 8バイト単 位に分割し排他的論理和して得られる値を DESで暗号化して生成したチェック 値 Bが、 記録デバイス 400から読み出したデータ中のヘッダ (He a d e r) 内に格納されたチェック値: I CVbと一致した場合には、 記録デバイス 400 に格納されたデータのプロック情報鍵 Kb i t、 コンテンツ鍵 Kc o n、 プロッ ク情報の改竄はないと判断される。 ' ステップ S 76において、 記録再生器暗号処理部 302の制御部 306は、 記 録再生器暗号処理部 302の暗号/復号化部 308に中間チェック値の計算をさ せる。 中間チェック値は、 先に説明した図 25に示すように記録再生器暗号処理 部 302の内部メモリ 307に保存されている総チェック値生成鍵 K i c V tを 鍵とし、 検証したヘッダ (He a d e r) 内のチェック値 A、 チェック値 B、 保 持しておいた全てのコンテンツチェック値をメッセージとして図 7他で説明した I CV計算方法に従って計算する。 なお、 初期値は I V=0としても、 記録再生 器暗号処理部 3 02の内部メモリ 30 7に総チ ック値生成用初期値に I V tを 保存しておき、 それを使用してもよい。 また、 生成した中間チェック値は、 必要 に応じて記録再生器 300の記録再生器暗号処理部 302に保持しておく。 次に、 ステップ S 77において、 記録再生器 300の制御部 301は、 記録デ バイス 400の外部メモリ 402から読み出したデータのヘッダ部に含まれる取 极方針 (U s a g e P o l i c y) から利用制限情報を取り出し、 ダウンロー ドしたコンテンツが当該記録再生器 300のみで利用できる (利用制限情報が 1 ) 力、 別の同様な記録再生器 300でも利用できる (利用制限情報が 0) か判定 する。 判定の結果、 利用制限情報が 1、 すなわちダウンロードしたコンテンツが 当該記録再生器 300のみで利用できる利用制限が設定されている場合には、 ス テツプ S 80に進み、 利用制限情報が 0、 すなわち別の同様な記録再生器 300 でも利用できる設定であった場合には、 ステップ S 78に進む。 なお、 ステップ S 77の処理は、 暗号処理部 302が行なってもよい。
ステップ S 78においては、 (7) 記録再生器から記録デバイスへのダウン口 一ド処理において説明したステップ S 58と同様の総チェック値 I CV tの計算 が実行される。 すなわち、 記録再生器暗号処理部 302の制御部 306は、 記録 再生器暗号処理部 3 02の暗号/複号化部 308に総チェック値 I C V tの計算 をさせる。 総チェック値 I CV tは、 先に説明した図 25に示すように記録再生 器暗号処理部 30 2の内部メモリ 30 7に保存されているシステム署名鍵 K s y sを鍵とし、 中間チェック値を DE Sで暗号化して生成する。
次に、 ステップ S 79に進み、 ステップ S 78において生成した総チェック値 I CV tとステップ S 71で保存しておいたヘッダ (He a d e r) 内の I CV tを比較し、 一致していた場合には、 ステップ S 82へ進む。
先に説明したように、 総チェック値 I CV tは、 I CVa、 I CVb、 各コン テンッブロックのチェック値全ての改竄を検証するためのチェック値である。 従 つて、 上述の処理によって生成された総チェック値がヘッダ (He a d e r) 内 に格納されたチェック値: I CV tと一致した場合には、 記録デバイス 400に 格納されたデータにおいて、 I CVa、 I CVb、 各コンテンツブロックのチェ ック値全ての改竄はないと判断される。
ステップ S 77での判定において、 ダウンロードしたコンテンツが当該記録再 生器 300のみで利用できる設定であった場合、 すなわち設定情報が 1であった 場合は、 ステップ S 80に進む。
ステップ S 80において、 記録再生器喑号処理部 302の制御部 306は、 記 録再生器暗号処理部 30 2の暗号/複号化部 308に、 記録再生器固有のチュッ ク値 I CVd e vの計算をさせる。 記録再生器固有のチェック値 I CVd e Vは 、 先に説明した図 25に示すように記録再生器暗号処理部 30 2の内部メモリ 3 07に保存されている記録再生器固有の記録再生器署名鍵 Kd e vを鍵とし、 中 間チェック値を DE Sで暗号化して生成する。 ステップ S 81において、 ステツ プ S 80で計算した記録再生器固有のチェック値 I CVd e vとステップ S 7 1 で保存しておいた He a d e r内の I CVd e vを比較し、 一致していた場合に は、 ステップ S 8 2へ進む。
このように、 システム署名鍵 K s y sによって署名されたデータは、 同じシス テム署名鍵を有するシステム (記録再生器) によってチェックが成功、 すなわち 総チェック値 I C V tがー致することになるので共通に利用可能となり、 記録再 生器署名鍵 K d e vを用いて署名された場合には、 記録再生器署名鍵はその記録 再生器に固有の鍵であるので、 記録再生器署名鍵 K d e vを用いて署名されたデ ータ、 すなわち、 署名後、 記録デバイスに格納されたデータは、 他の記録再生器 に、 その記録デバイスを装着して再生しょうとした場合、 記録再生器固有のチェ ック値 I C V d e vが不一致となり、 エラーとなるので再生できないことになる 。 従って、 利用制限情報の設定によって、 システムに共通に使用できるコンテン ッ、 記録再生器固有に利用できるコンテンツを自在に設定することが可能となる ステップ S 8 2において、 記録再生器 3 0 0の制御部 3 0 1は、 ステップ S 7 4で読み出しておいたプロック情報 B I T内のコンテンツプロック情報を取り出 し、 コンテンツブロックが暗号化対象になっているかいないか調べる。 暗号化対 象になっていた場合には、 該当するコンテンツブロックを、 記録再生器 3 0 0の 記録デバイスコントローラ 3 0 3を介し、 記録デバイス 4 0 0の外部メモリ 4 0 2から読み出し、 記録再生器 3 0 0の記録再生器暗号処理部 3 0 2へ送信する。 これを受信した記録再生器暗号処理部 3 0 2の制御部 3 0 6は、 記録再生器暗号 処理部 3 0 2の暗号ノ復号化部 3 0 8にコンテンツを復号化させるとともに、 コ ンテンップロックが検証対象になつている場合には次のステップ S 8 3において コンテンツチェック値を検証させる。
ステップ S 8 3は、 「(7 ) 記録再生器から記録デバイスへのダウンロード処理 」 において説明したステップ S 5 8と同様の処理である。 記録再生器 3 0 0の制 御部 3 0 1は、 プロック情報 (B I T ) 内のコンテンツブロック情報を取り出し 、 コンテンツブロックが検証対象になっているかいないかをコンテンツチェック 値の格納状況から判定し、 コンテンツプロックが検証対象になつていた場合には 、 該当するコンテンツプロックを、 記録デバイス 4 0 0の外部メモリ 4 0 2から 受信し、 記録再生器 3 0 0の記録再生器暗号処理部 3 0 2へ送信する。 これを受 信した記録再生器暗号処理部 3 0 2の制御部 3 0 6は、 記録再生器暗号処理部 3 0 2の喑号 Z複号化部 3 0 8にコンテンツ中間値を計算させる。 コンテンツ中間値は、 ステップ S 7 4で復号化したコンテンツ鍵 K c o nで、 入力されたコンテンツブロックを D E Sの C B Cモードで復号化し、 その結果を 8バイトに区切り全て排他的論理和して生成する。
次に、 記録再生器暗号処理部 3 0 2の制御部 3 0 6は、 記録再生器暗号処理部 3 0 2の暗号 Z復号化部 3 0 8にコンテンツチェック値の計算をさせる。 コンテ ンッチェック値は、 記録再生器暗号処理部 3 0 2の内部メモリ 3 0 7に保存され ているコンテンツチェック値生成鍵 K i c v cを鍵とし、 コンテンツ中間値を D E Sで暗号化して生成する。 そして、 記録再生器暗号処理部 3 0 2の制御部 3 0 6は、 当該コンテンツチェック値と、 ステップ S. 7 1で記録再生器 3 0 0の制御 部 3 0 1から受信したコンテンツブロック内の I C Vを比較し、 その結果を記録 再生器 3 0 0の制御部 3 0 1に渡す。 これを受信した記録再生器 3 0 0の制御部 3 0 1は、 検証に成功していた場合、 次の検証対象コンテンツブロックを取り出 して記録再生器 3 0 0の記録再生器暗号処理部 3 0 2に検証させ、 全てのコンテ ンッブロックを検証するまで同様の検証処理を繰り返す。 なお、 初期値は ι ν = 0としても、 記録再生器暗号処理部 3 0 2の内部メモリ 3 0 7にコンテンツチェ ック値生成用初期値 I V cを保存しておき、 それを使用してもよい。 また、 チェ ックした全てのコンテンツチェック値は、 記録再生器 3 0 0の記録再生器暗号処 理部 3 0 2に保持しておく。 さらにまた、 記録再生器 3 0 0の記録再生器暗号処 理部 3 0 2は、 検証対象のコンテンツブロックの検証順序を監視し、 順序が間違 つていたり、 同一のコンテンツプロックを 2回以上検証させられたりした場合に は、 認証に失敗したものとする。
記録再生器 3 0 0の制御部 3 0 1は、 当該コンテンツチェック値の比較結果 ( 検証対象になつていない場合、 比較結果は全て成功とする) を受信し、 検証に成 功していた場合には、 記録再生器 3 0 0の記録再生器暗号処理部 3 0 2から復号 化されたコンテンツを取り出す。 そして、 次の復号化対象コンテンツプロックを 取り出して記録再生器 3 0 0の記録再生器暗号処理部 3 0 2に復号化させ、 全て のコンテンツプロックを復号化するまで繰り返す。 なお、 ステップ S 8 3において、 記録再生器 3 0 0の記録再生器暗号処理部 3 0 2は、 コンテンツチェック値の検証処理において不一致となった場合には、 検 証失敗としてその時点で処理を中止し、 残るコンテンツの復号化は行わない。 ま た、 記録再生器 3 0 0の記録再生器暗号処理部 3 0 2は、 復号化対象のコンテン ップロックの復号化順序を監視し、 順序が間違っていたり、 同一のコンテンツブ 口ックを 2回以上複号化させられたりした場合には、 複号化に失敗したものとす る。 .
なお、 ステップ S 7 2でチェック値 Aの検証に失敗した場合、 ステップ S 7 5 でチエック値 Bの検証に失敗した場合、 ステップ S 7 9で総チエック値 I C V t の検証に失敗した場合、 ステップ S 8 1で記録再生器固有のチェック値 I C V d e vの検証に失敗した場合には、 ステップ S 8 3で各コンテンツプロックのコン テンツチエック値の検証に失敗した場合、 ステップ S 8 4に進み、 所定のエラー 表示を行う。
以上説明してきたように、 コンテンツをダウンロードしたり、 利用したりする 際に、 重要なデータやコンテンツを暗号化しておいて隠蔽化したり、 改竄検証が できるだけでなく、 ブロック情報 B I Tを複号化するためのプロック情報鍵 K b i t、 コンテンツを復号化するためのコンテンツ鍵 K c o nが記録デバイス固有 の保存鍵 K s t rで保存されているため、 単純に記録メディア上のデータを別の 記録メディアに複製したとしても、 コンテンツを正しく復号化することができな くすることができる。 より具体的には、 例えば図 2 8のステップ S 7 4において 、 記録デバイス毎に異なる保存鍵 K s t rで暗号化されたデータを復号化するた め、 別の記録デバイスではデータを正しく復号化できな!/、構成を持つからである
( 9 ) 相互認証後の键交換処理
本発明のデータ処理装置における特徴の 1つに、 上述した記録再生器 3 0 0と 記録デバイス 4 0 0との間で実行される相互認証処理の後においてのみ、 記録デ バイスの利用を可能とし、 また、 その利用態様を制限した点がある。 例えば、 不正な複製等によってコンテンツを格納したメモリカード等の記録デ バイスを生成し、 これを記録再生器にセットして利用されることを排除するため に、 記録再生器 3 0 0と、 記録デバイス 4 0 0間での相互認証処理を実行し、 か つ認証 O Kとなったことを条件として、 コンテンツ (暗号化された) の記録再生 器 3 0◦および記録デバイス 4 0 0間での転送を可能としている。
上記の制限的処理を実現するために、 本発明のデータ処理装置においては、 記 録デバイス 4 0 0の暗号処理部 4 0 1での処理は、 すべて、 予め設定されたコマ ンド列に基づいて実行される構成となっている。 すなわち、 記録デバイスは、 コ マンド番号に基づくコマンドを順次レジスタから取り出して実行するコマンド処 理構成を持つ。 この記録デバイスでのコマンド処理構成を説明する図を図 2 9に 示す。
図 2 9に示すように記録再生器暗号処理部 3 0 2を有する記録再生器 3 0 0と 記録デバイス暗号処理部 4 0 1を有する記録デバイス 4 0 0間においては、 記録 再生器 3 0 0の制御部 3 0 1の制御のもとに記録デバィスコントローラ 3 0 3力、 ら記録デバイス 4 0 0の通信部 (受信レジスタを含む) 4 0 4に対してコマンド番 号 (N o . ) が出力される。
記録デバィス 4 0 0は、 暗号処理部 4 0 1内の制御部 4 0 3にコマンド番号管 理部 2 2 0 1を有する。 コマンド番号管理部 2 9 0 1は、 コマンドレジスタ 2 9 0 2を保持しており、 記録再生器 3 0 0から出力されるコマンド番号に対応する コマンド列を格納している。 コマンド列は、 図 2 9の右に示すようにコマンド番 号 0から yまで順次、 コマンド番号に対して実行コマンドが対応付けされている 。 コマンド番号管理部 2 9 0 1は、 記録再生器 3 0 0から出力されるコマンド番 号を監視し、 対応するコマンドをコマンドレジスタ 2 9 0 2から取り出して実行 する。
コマンドレジスタ 2 9 0 2に格納されたコマンドシーケンスは、 図 2 9の右に 示すように、 認証処理シーケンスに関するコマンド列が先行するコマンド番号 0 〜kに対応付けられている。 さらに、 認証処理シーケンスに関するコマンド列の 後のコマンド番号 p〜 sに復号、 鍵交換、 暗号処理コマンドシーケンス 1、 さら に、 後続するコマンド番号 u〜yに復号、 鍵交換、 暗号処理コマンドシーケンス 2が対応付けされている。
先に図 2 0の認証処理フローにおいて説明したように、 記録デバイス 4 0 0が 記録再生器 3 0 0に装着されると、 記録再生器 3 0 0の制御部 3 0 1 、 記録デ バイスコントローラ 3 0 3を介して記録デバイス 4 0 0に初期化命令を送信する 。 これを受信した記録デバィス 4 0 0は、 記録デバイス暗号処理部 4 0 1の制御 部 4 0 3において、 通信部 4 0 4を介して命令を受信し、 認証フラグ 2 9 0 3を クリアする。 すなわち未認証状態に設定する。 または、 記録再生器 3 0 0から記 録デバイス 4 0 0に電源が供給される様な場合には、 パワーオン時に未承認状態 としてセットを行なう方式でもよい。
次に、 記録再生器 3 0 0の制御部 3 0 1は、 記録再生器暗号処理部 3 0 2に初 期化命令を送信する。 このとき、 記録デバイス揷入口番号も併せて送信する。 記 録デバイス揷入口番号を送信することにより、 記録再生器 3 0 0に複数の記録デ バイスが接続された場合であっても同時に複数の記録デバイス 4 0 0との認証処 理、 およびデータ送受信が可能となる。
初期化命令を受信した記録再生器 3 0 0の記録再生器暗号処理部 3 0 2は、 記 録再生器喑号処理部 3 0 2の制御部において、 記録デバイス揷入口番号に対応す る認証フラグ 2 9 0 4をクリアする。 すなわち未認証状態に設定する。
これらの初期化処理が完了すると、 記録再生器 3 0 0の制御部 3 0 1は、 記録 デバイスコントローラ 3 0 3を介してコマンド番号◦から順次コマンド番号を昇 順に出力する。 記録デバイス 4 0 0のコマンド番号管理部 2 9◦ 1は、 記録再生 器 3 0 0から入力されるコマンド番号を監視し、 0から順次入力されることを確 認して、 対応するコマンドをコマンドレジスタ 2 9 0 2から取り出して認証処理 等各種処理を実行する。 入力されるコマンド番号が規定の順でなかった場合には 、 エラーとし、 コマンド番号受付値を初期状態、 すなわち実行可能コマンド番号 = 0にリセットする。 図 2 9に示すようにコマンドレジスタ 2902に格納されたコマンドシーケン スは、 認証処理を先行して処理するようにコマンド番号が付与されており、 その 後の処理に復号、 鍵交換、 暗号化処理の処理シーケンスが格納されている。 復号、 鍵交換、 暗号化処理の処理シーケンスの具体例を図 30, 3 1を用いて 説明する。
図 30は、 先に図 22において説明した記録再生器 300から記録デバイス 4 00へのコンテンツのダウン口一ド処理において実行される処理の一部を構成す るものである。 具体的には図 22におけるステップ S 5 9〜S 60の間で実行さ れる
図 30において、 ステップ S 3001は、 記録再生器からセッション鍵 K s e sで暗号化されたデータ (e x. プロック情報鍵 Kb i t、 コンテンツ鍵 Kc o n) を記録デバイスが受信する処理であり、 その後、 前述の図 29で示したコマ ンド列 p〜 sが開始される。 コマンド列 p〜 sは認証処理コマンド 0〜 kが完了 し、 図 29に示す認証フラグ 2903, 2904に認証済みのフラグがセットさ れた後開始される。 これは、 コマンド番号管理部 290 1がコマンド番号を 0か ら昇順でのみ受け付けることによって保証される。
ステップ S 300 2は、 記録デバイスが記録再生器から受信したセッション鍵 K s e sで暗号化されたデータ (e x. プロック情報鍵 Kb i t, コンテンツ鍵 Kc o n) をレジスタに格納する処理である。
ステップ S 3003は、 セッション鍵 K s e sで喑号化されたデータ (e x. プロック情報鏈 Kb i t, コンテンツ鍵 Kc o n) をレジスタから取り出してセ ッシヨン鍵 K s e sで復号する処理を実行するステップである。
ステップ S 3004は、 セッション鍵 K s e sで復号化されたデータ (e x. プロック情報鍵 Kb i t, コンテンツ鍵 Kc o n) を保存鍵 K s t rで暗号化す る処理を実行するステップである。
上記の処理ステップ 3002〜 3004は、 先の図 29で説明したコマンドレ ジスタ中のコマンド番号 p〜 sに含まれる処理である。 これらの処理は、 記録デ バイス 400のコマンド番号管理部 290 1において記録再生器 300から受信 するコマンド番号 p〜 sに従って記録デバイス喑号処理部 40 1が順次実行する 次のステツ'プ S 3005は、 保存鍵 K s t rで暗号化したデータ (e x. プロ ック情報鍵 Kb i t、 コンテンツ鍵 K c o n) を記録デバイスの外部メモリに格 納するステップである。 このステップにおいては、 記録デバイス暗号処理部 40 1から記録再生器 300が保存鍵 K s t rで暗号化したデータを読み出して、 そ の後に記録デバイス 400の外部メモリ 402に格納してもよい。
上述のステップ S 3002〜S 3004は、 連続して実行される割込み不可能 な実行シーケンスであり、 たとえば、 ステップ S 3003の復号処理終了時点で 、 記録再生器 3 00からのデータ読み出し命令があつたとしても、 その読み出し コマンドは、 コマンドレジスタ 2902のコマンド番号 p〜 sに設定された昇順 のコマンド番号とは異なるため、 コマンド番号管理部 290 1は、 読み出しの実 行を受け付けない。 従って、 記録デバイス 400における鍵交換の際に発生する 復号データを外部、 例えば記録再生器 300から読み出すことは不可能となり、 鍵データ、 コンテンツの不正な読み出しを防止できる。
図 31は、 先に図 28において説明した記録デバイス 400からコンテンツを 読み出して記録再生^ 30◦において再生するコンテンツ再生処理において実行 される処理の一部を構成するものである。 具体的には図 28におけるステップ S 73において実行される処理である。
図 3 1において、 ステップ S 3 1 0 1は、 記録デバイス 400の外部メモリ 4 02から保存鍵 K s t rで暗号化されたデータ (& χ. ブロック情報鍵 Kb i t 、 コンテンツ鍵 Kc o n) の読み出しを実行するステップである。
ステップ S 3 1 0 2は、 記録デバイスのメモリから読み出した保存鍵 K s t r で暗号化されたデータ (e x. ブロック情報鍵 Kb i t、 コンテンツ鍵 Kc o n ) をレジスタに格納するステップである。 このステップにおいては、 記録デバィ ス 400の外部メモリ 402から記録再生器 300が保存鍵 K s t rで暗号化し たデータを読み出して、 その後に記録デバイス 4 0 0のレジスタに格納してもよ い。
ステップ S 3 1 0 3は、 保存鍵 K s t rで喑号化されたデータ (e x . ブロッ ク情報鍵 K b i t、 コンテンツ鍵 K c o n) をレジスタから取り出して保存鍵 K s t rで復号処理するステップである。
ステップ S 3 1 0 4は、 保存鍵 K s t rで復号化されたデータ (e x . プロッ ク情報鍵 Kb i t、 コンテンツ鍵 K c o n) をセッション鍵 K s e sで暗号化処 理するステップである。
上記の処理ステップ 3 1 0 2〜 3 1 0 4は、 先の図 2 9で説明したコマンドレ ジスタ中のコマンド番号 u〜yに含まれる処理である。 これらの処理は、 記録デ バイスのコマンド番号管理部 2 9 0 1において記録再生器 3 0 0から受信するコ マンド番号 U〜yに従って記録デバイス暗号処理部 4 0 6が順次実行する。 次のステツプ S 3 1 0 5は、 セッション鍵 K s e sで暗号化したデータ ( e x . ブロック情報鍵 K b i t、 コンテンツ鍵 K c o n) を記録デバイスから記録再 生器へ送信する処理である。
上述のステップ S 3 1 0 2〜S 3 1 0 4は、 連続して実行される割込み不可能 な実行シーケンスであり、 たとえば、 ステップ S 3 1 0 3の復号処理終了時点で 、 記録再生器 3 0 0からのデータ読み出し命令があつたとしても、 その読み出し コマンドは、 コマンドレジスタ 2 9 0 2のコマンド番号!!〜 yに設定された昇順 のコマンド番号とは異なるため、 コマンド番号管理部 2 9 0 1は、 読み出しの実 行を受け付けない。 従って、 記録デバイス 4 0 0における鍵交換の際に発生する 復号データを外部、 例えば記録再生器 3 0 0から読み出すことは不可能となり、 鍵データあるいはコンテンツの不正な読み出しを防止できる。
なお、 図 3 0, 3 1に示す処理では、 鍵交換によって復号、 暗号化される対象 が、 ブロック情報鍵 Kb i t、 コンテンツ鍵 K c o nである例を示したが、 これ らの図 2 9に示したコマンドレジスタ 2 9 0 2に格納されたコマンドシーケンス には、 コンテンツ自体の鍵交換を伴う復号、 暗号化処理を含ませてもよく、 鍵交 換によって復号、 暗号化される対象は上述の例に限定されるものではない。
以上、 本発明のデータ処理装置における相互認証後の鍵交換処理について説明 した。 このように、 本発明のデータ処理装置における鍵交換処理は、 記録再生器 と記録デバイス間での認証処理が終了した後においてのみ実行可能となり、 さら に、 鍵交換処理における復号データの外部からのアクセスが防止可能な構成とな つているので、 コンテンツ、 鍵データの高度なセキュリティが確保される。
( 1 0 ) 複数のコンテンツデータフォーマットと、 各フォーマットに対応する ダウンロードおよぴ再生処理
上述した実施例では、 例えば図 3に示すメディア 5 0 0あるいは通信手段 6 0 0におけるデータフォーマツトが図 4に示す 1つの種類である場合について説明 してきた。 しかしながら、 メディア 5 0 0あるいは、 通信手段 6 0 0におけるデ ータフォーマットは、 上述の図 4に示すフォーマットに限らず、 コンテンツが音 楽である場合、 画像データである場合、 ゲーム等のプログラムである場合等、 コ ンテンッに応じたデータフォーマットを採用することが望ましい。 以下、 複数の 異なるデータデータフォーマツトと、 各フォーマツトに対応する記録デバイスへ のダウンロード処理およぴ記録デバイスからの再生処理について説明する。 図 3 2〜3 5に 4つの異なるデータフォーマツトを示す。 各図の左側には、 図 3に示すメディア 5 0 0、 または通信手段 6 0 0上におけるデータフォーマツト を、 また各図の右側には記録デバイス 4 0 0の外部メモリ 4 0 2に格納される場 合のデータフォーマットを示してある。 先に、 図 3 2〜3 5に示すデータフォー マットの概略を説明し、 その後、 各フォーマットにおける各データの内容、 およ ぴ各フォーマットにおけるデータの差異について説明する。
図 3 2は、 フォーマットタイプ 0であり、 上述の説明中で例として示したタイ プと共通のものである。 このフォーマットタイプ 0の特徴は、 データ全体を任意 の大きさの N個のデータブロック、 すなわちプロック 1〜ブロック Nに分割し、 各ブロックについて任意に暗号化し、 暗号化ブロックと非暗号化ブロック、 すな わち平文プロックを混在させてデータを構成できる点である。 プロックの暗号化 は、 コンテンツ鍵 K c o nによって実行されており、 コンテンツ鍵 K c o nは、 メディア上では配送鍵 K d i sによって暗号化され、 記録デバイスにおける保存 時には、 記録デバイスの内部メモリに格納された保存鍵 K s t rによって暗号化 される。 プロック情報鍵 K b i tについてもメディア上では配送鍵 K d i sによ つて暗号化され、 記録デバイスにおける保存時には、 記録デバイスの内部メモリ に格納された保存鍵 K s t rによって暗号化される。 これらの鍵交換は、 前述の 「(9 ) 相互認証後の鍵交換処理」 において説明した処理にしたがって実行され る。
図 3 3は、 フォーマットタイプ 1であり、 このフォーマットタイプ 1は、 フォ 一マットタイプ 0と同様、 データ全体を N個のデータブロック、 すなわちプロッ ク 1〜プロック Nに分割しているが、 N個の各プロックの大きさを同じ大きさと した点で前述のフォーマツトタイプ 0と異なる。 コンテンツ鍵 K c o nによるプ ロックの暗号化処理態様は前述のフォーマットタイプ 0と同様である。 また、 メ ディア上で配送鍵 K d i sによって暗号化され、 記録デバイスにおける保存時に は記録デバイスの内部メモリに格納された保存鍵 K s t rによって暗号化される コンテンツ鍵 K c o nおよびブロック情報鍵 K b i t構成も上述のフォーマツト タイプ 0と同様である。 フォーマットタイプ 1は、 フォーマットタイプ 0と異な り、 固定的なプロック構成としたことで、 ブロック毎のデータ長等の構成データ が簡略化されるので、 フォーマツトタイプ 0に比較してプロック情報のメモリサ ィズを減らすことが可能となる。 '
図 3 3の構成例では、 各プロックを暗号化パートと非暗号化 (平文) パートの 1組によって構成している。 このようにブロックの長さ、 構成が規則的であれば 、 復号処理等の際に各プロック長、 プロック構成を確認する必要がなくなるので 効率的な復号、 暗号処理が可能となる。 なお、 フォーマット 1においては、 各プ ロックを構成するパート、 すなわち暗号化パート、 非暗号化 (平文) パートは、 各パート毎にチェック対象として定義可能な構成となっており、 要チェックパー ッを含むプロックである場合は、 そのプロックに関してコンテンツチェック値 I C V iが定義される。
図 3 4は、 フォーマットタイプ 2であり、 このフォーマットタイプ 2の特徴は 、 同じ大きさの N個のデータブロック、 すなわちプロック 1〜ブロック Nに分割 され、 各ブロックについて、 それぞれ個別のブロック鍵 K b 1 cで暗号化されて いることである。 各プロック鍵 K b 1 cの暗号化は、 コンテンツ鍵 K c o nによ つて実行されており、 コンテンツ鍵 K c o nは、 メディア上では配送鍵 K d i s によって暗号化され、 記録デバイスにおける保存時には、 記録デバイスの内部メ モリに格納された保存鍵 K s t rによって喑号化される。 ブロック情報鍵 K b i tについてもメディア上では配送鍵 K d i sによって暗号化され、 記録デバイス における保存時には、 記録デバイスの内部メモリに格納された保存鍵 K s t rに よって喑号化される。
図 3 5は、 フォーマットタイプ 3であり、 このフォーマットタイプ 3の特徴は 、 フォーマット 'タイプ 2と同様、 同じ大きさの N個のデ一タブロック、 すなわ ちプロック 1〜プロック Nに分割され、 各ブロックについて、 それぞれ個別のプ ロック鍵 K b 1 cで暗号化されていること、 さらに、 コンテンツ鍵を用いず、 各 プロック鍵 K b 1 cの暗号化は、 メディア上では配送鍵 K d i sによって暗号化 され、 記録デバイス上では保存鍵 K s t rによって暗号化されている点である。 コンテンツ鍵 K c o nは、 メディア上、 デバイス上、 いずれにも存在しない。 プ ロック情報鍵 K b i tはメディア上では配送鍵 K d i sによって暗号化され、 記 録デバイスにおける保存時には、 記録デバィスの内部メモリに格納された保存鍵 K s t rによって暗号化される。
次に、 上記フォーマットタイプ 0〜3のデータの内容について説明する。 デー タは先に説明したように、 ヘッダ部とコンテンツ部に大きく 2つに分類され、 へ ッダ部にはコンテンツ識別子、 取扱方針、 チェック値 A, B, 総チェック値、 ブ ロック情報鍵、 コンテンツ鍵、 ブロック情報が含まれる。
取扱方針には、 コンテンツのデータ長、 ヘッダ長、 フォーマットタイプ (以下 説明するフォーマット 0〜3 )、 例えばプログラムであるか、 データであるか等 のコンテンツタイプ、 前述のコンテンツの記録デバイスへのダウンロード、 再生 の欄で説明したように、 コンテンツが記録再生器固有に利用可能か否かを決定す るフラグであるローカリゼーシヨン 'フラグ、 さらに、 コンテンツのコピー、 ム ープ処理に関する許可フラグ、 さらに、 ンテンッ暗号化アルゴリズム、 モード 等、 コンテンツに関する各種の利用制限情報および処理情報を格納する。
チェック値 A : I C V aは、 識別情報、 取扱方針に対するチェック値であり、 例えば、 前述の図 2 3で説明した手法によって生成される。
プロック情報鍵 K b i tは、 ブロック情報を暗号化するための鍵であり、 先に 説明したように、 メディア上では配送鍵 K d i sによって暗号化され、 記録デバ イスにおける保存時には、 記録デバイスの内部メモリに格納された保存鍵 K s t rによって暗号化される。
コンテンツ鍵 K c o nは、 コンテンツの暗号化に用いる鍵であり、 フォーマツ トタイプ 0, 1では、 ブロック情報鍵 K b i tと同様にメディア上では配送鍵 K d i sによって暗号化され、 記録デバイスにおける保存時には、 記録デバイスの 内部メモリに格納された保存鍵 K s t rによって暗号化される。 なお、 ブォーマ ットタイプ 2では、 コンテンツ鍵 K c o nは、 コンテンツ各ブロックに構成きれ るプロック鍵 K b 1 cの暗号化にも利用される。 また、 フォーマット 'タイプ 3 においては、 コンテンツ鍵 K c o nは存在しない。
ブロック情報は、 個々のブロックの情報を記述するテーブルであり、 ブロック の大きさ、 暗号化されているか否かについてのフラグ、 すなわち各プロックがチ エックの対象 ( I C V) と、 なっているか否かを示す情報が格納される。 ブロッ クがチェックの対象となっている場合は、 ブロックのチェック値 I C V i (プロ ック iのチェック値) がテーブル中に定義されて格納される。 このプロック情報 は、 ブロック情報暗号鍵 K b i tによって暗号化される。
なお、 プロックのチェック値、 すなわちコンテンツチェック値 I C V iは、 ブ ロックが暗号化されている場合、 平文 (復号文) 全体を 8パイ ト単位で排他論理 和した値を記録再生器 3 0 0の内部メモリ 3 0 7に格納されたコンテンツチェッ ク値生成鍵 K i c v cで暗号化した値として生成される。 また、 プロックが暗号 化されていない場合は、 プロック —タ (平文) の全体を 8バイト単位で図 3 6 に示す改竄チェック値生成関数 (DE S— CB C— MAC、 コンテンツチェック 値生成鍵 K i c V cを鍵とする) に入力して得た値として生成される。 図 36に コンテンツプロックのチエッグ値 I CV iを生成する構成例を示す。 メッセージ Mの各々が復号文データまだは平文データの各 8パイトを構成する。
なお、 フォーマット 'タイプ 1においては、 ブロック内のパーツのうち少なく とも 1つがチェック値 I CV iの対象データ、 すなわち要チヱックパーツである 場合は、 そのブロックに関してコンテンツチェック値 I CV iが定義される。 プ ロック iにおけるパーツ j のチェック値 P_ I CV i jは、 パ一ッ; jが暗号化さ れている場合、 平文 (復号文) 全体を 8バイト単位で排他論理和した値をコンテ ンッチェック値生成鍵 K i c V cで暗号化した値として生成される。 また、 パー ッ jが暗号化されていない場合は、 パーツのプロックのデータ (平文) の全体を 8バイト単位で図 3 6に示す改竄チェック値生成関数 (DES— CBC—MAC 、 コンテンツチェック値生成鍵 K i c V cを鍵とする) に入力して得た値として 生成される。
さらに、 1つのブロック i内にチェック対象であることを示す [ I CVフラグ = s u b j e c t o f I CV] であるパーツ、 すなわち要チェックパーツが 1つのみ存在する場合は、 上述の手法で生成したチェック値 P_ I CV i jをそ のままプロックのチェック値 I CV i とし、 また、 1つのブロック i内にチェッ ク対象であることを示す [ I C Vフラグ = s u b j e c t o f I CV] であ るパーツが複数存在する場合は、 複数のパーツチェック値 P— I CV i jをパー ッ番号順に連結したデータを対象にして 8バイト単位で図 3 7に示す改竄チヱッ ク値生成関数 (DE S— CB C— MAC、 コンテンツチェック値生成鍵 K i c v cを鍵とする) に入力して得た値として生成される。 図 3 7にコンテンツブロッ クのコンテンツチェック値 I CV iを生成する構成例を示す。
なお、 フォーマット 'タイプ 2, 3においては、 プロックのチェック値 I CV iは定義されない。
チェック値 B : I CVbは、 ブロック情報鍵、 コンテンツ鍵、 ブロック情報全 体に対するチ ック値であり、 例えば、 前述の図 24で説明した手法によって生 成される。
総チェック値 I CV tは、 前述のチェック値 A: I CVa、 チェック値 B : I CVb、 さらにコンテンツのチェック対象となっている各プロックに含まれるチ エック値 I CV i全体に対するチェック値であり、 前述の図 25で説明したよう にチェック値 A: I CV a等の各チェック値から生成される中間チェック値にシ ステム署名鍵 K s y sを適用して暗号化処理を実行することによって生成される なお、 フォーマット 'タイプ 2, 3においては、 総チェック値 I CV tは、 前 述のチェック値 A: I CV a、 チェック値 B : I CV にコンテンツデータ、 す なわちプロック 1のプロック鍵から最終ブロックまでのコンテンツデータ全体を 連結したデータから生成される中間チェック値にシステム署名鍵 K s y sを適用 して暗号化処理を実行することによって生成される。 図 38にフォーマツト ·タ イブ 2, 3における総チェック値 I C V tを生成する構成例を示す。
固有チェック値 I C V d e Vは、 前述のロー力リゼーションフラグが 1にセッ トされている場合、 すなわち、 コンテンツが記録再生器固有に利用可能であるこ とを示している場合に、 総チェック値 I CV tに置き換えられるチェック値であ り、 フォーマツト 'タイプ 0, 1の場合は、 前述のチェック値 A: I CV a、 チ エック値 B : I CVb, さらにコンテンツのチェック対象となっている各プロッ クに含まれるチヱック値 I CV i全体に対するチェック値として生成される。 具 体的には、 前述の図 25、 または図 38で説明したようにチェック値 A: I C V a等の各チェック値から生成される中間チェック値に記録再生器署名鍵 Kd e v を適用して暗号化処理を実行することによって生成される。
次にフォーマツトタイプ 0〜 3各々における記録再生器 300から記録デバィ ス 400に対するコンテンッのダウンロード処理、 および記録再生器 300にお ける記録デバイス 400からの再生処理について図 3 9〜44のフローを用いて 説明する。
まず、 フォーマットタイプ 0, 1におけるコンテンツのダウンロード処理につ いて図 3 9を用いて説明する。
図 3 9に示す処理は、 例えば図 3に示す記録再生器 300に記録デバィス 40 0を装着することによって開始される。 ステップ S 1 01は、 記録再生器と記録 デバイス間における認証処理ステップであり、 先に説明した図 20の認証処理フ ローに従って実行される。
ステップ S 1 0 1の認証処理が終了し、 認証フラグがセットされると、 記録再 生器 300は、 ステップ S 1 02において、 例えばコンテンツデータを格納した メディア 500力、ら、 読み取り部 304を介して所定のフォーマツトに従ったデ ータを読み出すか、 通信部 305を使って通信手段 600から所定のフォーマツ トに従ってデータを受信し、 記録再生器 300の制御部 301力 データの内の ヘッダ (He a d e r) 部分を記録再生器 300の記録再生器暗号処理部 30 2 に送信する。
次に、 ステップ S 1 03において、 暗号処理部 302の制御部 306が記録再 生器暗号処理部 30 2の暗号 Z復号化部 308にチェック値 Aを計算させる。 チ エツクイ直 Aは、 図 23に示すように、 記録再生器暗号処理部 3◦ 2の内部メモリ 307に保存されているチヱック値 A生成鍵 K i c v aを鍵とし、 識別情報 ( C o n t e n t I D) と取扱方針 (U s a g e P o l i c y) をメッセージ として図 7を用いて説明した I CV計算方法に従って計算される。 次に、 ステツ プ S 1 04において、 チェックィ直 Aとヘッダ (He a d e r) 内に格納されたチ エツクイ直: I CVaを比較し、 一致していた場合にはステップ S 105へ進む。 先に説明したようにチェック値 A, I CV aは、 識別情報、 取扱方針の改竄を 検証するためのチェック値である。 記録再生器暗号処理部 30 2の内部メモリ 3 07に保存されているチェック値 A生成鍵 K i c v aを鍵とし、 識別情報 ( C o n t e n t I D) と取扱方針 (U s a g e P o l i c y) をメッセージ として、 例えば I CV計算方法に従って計算されるチ-ック値 Aが、 ヘッダ ( He a d e r) 内に格納されたチェック値: I C V aと一致した場合には、 識別 情報、 取扱方針の改竄はないと判断される。
次に、 ステップ S 1 05において、 記録再生器暗号処理部 302の制御部 3 0 6は、 配送鍵 Kd i sの取り出しまたは生成を記録再生器暗号処理部 30 2の喑 号/複号化部 3 08に行わせる。 配送鍵 Kd i sの生成方法は、 先に説明した図 22のステップ S 5 3と同様、 例えば配送鏈用マスター鍵 MKd i sを用いて行 われる。
次にステップ S 1 06において、 記録再生器暗号処理部 302の制御部 306 が、 記録再生器暗号処理部 302の喑号/複号化部 308を使って、 生成した配 送鍵 Kd i sを用いて、 読み取り部 304を介して受信したメディア 500、 ま たは、 通信部 3 05を介して通信手段 600から受信したデータのヘッダ部に格 納されたブロック情報鍵 Kb i tとコンテンツ鍵 K c o nの複号化処理を行う。 さらに、 ステップ S 1 07において、 記録再生器喑号処理部 302の制御部 3 06は、 記録再生器暗号処理部 30 2の暗号/複号化部 308において、 復号化 したプロック情報鍵 Kb i tでブロック情報を復号化する。
さらに、 ステップ S 1 08において、 記録再生器暗号処理部 302の制御部 3 06は、 プロック情報鍵 Kb i t、 コンテンツ鍵 K c o nおよびプロック情報 ( B I T) から、 チェック値 B ( I C V b ') を生成する。 チェック値 Bは、 図 2 4に示すように、 記録再生器暗号処理部 302の内部メモリ 30 7に保存されて いるチェック値 B生成鍵 K i c V bを鍵とし、 プロック情報鍵 Kb i t、 コンテ ンッ鍵 K c ο ηおよびブロック情報 ( B I Τ) .からなる排他的論理和値を D E S で暗号化して生成する。 次に、 ステップ S 1 0 9において、 チェック値 Βとへッ ダ (He a d e r ) 内の I CVbを比較し、 一致していた場合にはステップ S 1 1 0へ進む。
先に説明したように、 チェック値 B, I CVbは、 ブロック情報鍵 Kb i t、 コンテンツ鍵 Kc o n、 プロック情報の改竄を検証するためのチェック値である 。 記録再生器暗号処理部 302の内部メモリ 307に保存されているチェック値 B生成鍵 K i c V bを鍵とし、 ブロック情報鍵 Kb i t、 コンテンツ鍵 K c o n およぴプロック情報 (B I T) を 8バイト単位に分割し排他的論理和して得られ る値を DE Sで暗号化して生成したチユック値 Bが、 ヘッダ (He a d e r) 内 に格納されたチェック値: I CVbと一致した場合には、 プロック情報鏈 Kb i t、 コンテンツ鍵 Kc o n、 プロック情報の改竄はないと判断される。
ステップ S 1 1 0において、 記録再生器喑号処理部 302の制御部 306は、 記録再生器喑号処理部 302の暗号 Z復号化部 308に中間チェック値の計算を させる。 中間チェック値は、 図 25に示すように、 記録再生器喑号処理部 30 2 の内部メモリ 307に保存されている総チェック値生成鍵 K i c V tを鍵とし、 検証した H e a d e r内のチェック値 A、 チェック値 B、 保持しておいた全ての コンテンツチェック値をメッセージとして図.7他で説明した I CV計算方法に従 つて計算する。 なお、 生成した中間チ-ック値は、 必要に応じて記録再生器 3 0 0の記録再生器暗号処理部 30 '2に保持しておく。
次に、 ステップ S 1 1 1において、 記録再生器暗号処理部 302の制御部 3 0 6は、 記録再生器喑号処理部 302の喑号ノ復号化部 308に総チェック値 I C V t ' の計算をさせる。 総チェック値 I CV t, は、 図 25に示すように、 記録 再生器暗号処理部 302の内部メモリ 307に保存されているシステム署名鍵 K s y sを鍵とし、 中間チェック値を DESで暗号化して生成する。 次に、 ステツ プ S 1 1 2において、 生成した総チェック値 I C V t ' とヘッダ (He a d e r ) 内の I CV tを比較し、 一致していた場合には、 ステップ S 1 1 3へ進む。 先に図 4において説明したように、 総チェック値 I CV tは、 I CV a、 I C Vb、 各コンテンツプロックのチェック値全ての改竄を検証するためのチェック 値である。 従って、 上述の処理によって生成された総チェック値がヘッダ (He a d e r ) 内に格納されたチェック値: I C V tと一致した場合には、 I CV a 、 I CVb, 各コンテンツブロックのチェック値全ての改竄はないと判断される 次に、 ステップ S 1 1 3において、 記録再生器 3 0 0の制御部 3 0 1は、 プロ ック情報 (B I T ) 内のコンテンツブロック情報を取り出し、 コンテンツブロッ クが検証対象になっているかいないか調べる。 コンテンツブロックが検証対象に なっている場合には、 ヘッダ中のブロック情報中にコンテンツチェック俥が格納 されている。
コンテンツプロックが検証対象になつていた場合には、 ステップ S 1 1 4にお いて、 該当するコンテンツブロックを、 記録再生器 3 0 0の読み取り部 3 0 4を 使ってメディア 5 0 0から読み出すか、 記録再生器 3 0 0の通信部 3 0 5を使つ て通信手段 6 0 0から受信し、 記録再生器 3 0 0の記録再生器暗号処理部 3 0 2 へ送信する。 これを受信した記録再生器暗号処理部 3 0 2の制御部 3 0 6は、 記 録再生器暗号処理部 3 0 2の暗号 Z複号化部 3 0 8にコンテンツチェック値 I C V i, を計算させる。
コンテンツチェック値 I C V i, は、 先に説明したようにプロックが暗号化さ れている場合、 コンテンツ鍵 K c o nで、 入力されたコンテンツブロックを D E Sの C B Cモードで復号化し、 その結果を全て 8バイト単位で排他的論理和して 生成したコンテンツ中間値を記録再生器 3 0 0の内部メモリ 3 0 7に格納された コンテンツチェック値生成鍵 K i c V cで暗号化して生成する。 また、 プロック が暗号化されていない場合は、 データ (平文) 全体を 8バイト単位で図 3 6に示 す改竄チェック値生成関数 (D E S _ C B C— MA C、 コンテンツチェック値生 成鍵 K i c V cを鍵とする) に入力して得た値として生成される。
次にステップ S 1 1 5において、 記録再生器暗号処理部 3 0 2の制御部 3 0 6 は、 当該コンテンツチェック値と、 ステップ S 1 0 2で記録.再生器 3 0 0の制御 部 3 0 1から受信したコンテンツブロック内の I C Vを比較し、 その結果を記録 再生器 3 0 0の制御部 3 0 1に渡す。 これを受信した記録再生器 3 0 0の制御部 3 0 1は、 検証に成功していた場合、 次の検証対象コンテンツプロックを取り出 して記録再生器 3 0 0の記録再生器暗号処理部 3 0 2に検証させ、 全てのコンテ ンップロックを検証するまで同様の検証処理を繰り返す (ステップ S 1 1 6 )。 なお、 ステップ S 1 0 4、 ステップ S 1 0 9、 ステップ S 1 1 2、 ステップ S 1 1 5のいずれかにおいて、 チェック値の一致が得られなかった場合はエラーと してダウンロード処理は終了する。
次に、 ステップ S 1 1 7において、 記録再生器 3 0 0の記録再生器暗号処理部 3 0 2は、 ステップ S 1 0 6で復号化したブロック情報鍵 K b i tとコンテンツ 鍵 K c o nを、 記録再生器暗号処理部 3 0 2の暗号 Z複号化部 3 0 8に、 相互認、 証の際に共有しておいたセッション鍵 K s e sで暗号化させる。 記録再生器 3 0 0の制御部 3 0 1は、 セッション鍵 K s e sで暗号化されたプロック情報鍵 K b i tとコンテンツ鍵 K c o nを記録再生器 3 0 0の記録再生器暗号処理部 3 0 2 から読み出し、 これらのデータを記録再生器 3 0 0の記録デバイスコントローラ 3 0 3を介して記録デバイス 4 0 0に送信する。
次に、 ステップ S 1 1 8において、 記録再生器 3 0 0から送信されてきたプロ ック情報鍵 K b i tとコンテンツ鍵 K c o IIを受信した記録デバイス 4 0 0は、 受信したデータを記録デバイス暗号処理部 4 0 1の暗号/復号化部 4 0 6に、 相 互認証の際に共有しておいたセッション鍵 K s e sで復号化させ、 記録デバイス 暗号処理部 4 0 1の内部メモリ 4 0 5に保存してある記録デバイス固有の保存鍵 K s t rで再び暗号化させ、 記録再生器 3 0 0の制御部 3 0 1は、 記録再生器 3 0 0の記録デバィスコントローラ 3 0 3を介し、 記録デバィス 4 0 0から保存鍵 K s t rで再暗号化されたブロック情報鍵 K b i tとコンテンツ鏈 K c o nを読 み出す。 すなわち、 配送鍵 K d i sで暗号化されたプロック情報鍵 K b i tとコ ンテンッ鍵 K c o nの鍵のかけかえを行なう。
次に、 ステップ S 1 1 9において、 記録再生器 3 0 0の制御部 3 0 1は、 デー タのヘッダ部の取扱方針 (U s a g e P o l i c y ) から利用制限情報を取り 出し、 ダウンロードしたコンテンツが当該記録再生器 3 0 0のみで利用できるか 否かの判定を行なう。 この判定は、 ローカリゼーシヨンフラグ (利用制限情報) = 1に設定されている場合は、 ダウンロードしたコンテンツが当該記録再生器 3 0 0のみで利用でき、 ローカリゼーシヨンフラグ (利用制限情報) = 0に設定さ れている場合は、 ダウンロードしたコンテンツが別の同様な記録再生器 3 0 0で も利用できることを示す。 判定の結果、 ローカリゼーシヨンフラグ (利用制限情 報) = 1であった場合には、 ステップ S 1 2 0に進む。
ステップ S 1 2 0において、 記録再生器 3 0 0の制御部 3 0 1は、 記録再生器 固有のチェック値を記録再生器 3 0 0の記録再生器暗号処理部 3 0 2に計算させ る。 記録再生器固有のチェック値は、 図 2 5に示すように記録再生器暗号処理部 3 0 2の内部メモリ 3 0 7に保存されている記録再生器に固有の記録再生器署名 鍵 K d e vを鍵とし、 ステップ S 1 1 0で生成した中間チェック値を D E Sで暗 号化して生成する。 計算された記録再生器固有のチヱック値 I C V d e Vは、 総 チェック値 I C V tの代わりに上書きされる。
先に説明したように、 システム署名鍵 K s y sは、 配信システムに共通の署名 または I C Vをつけるために使用するシステム署名鍵であり、 また、 記録再生器 署名鍵 K d e vは、 記録再生器毎に異なり、 記録再生器が署名または I C Vをつ けるために使用する記録再生器署名鍵である。 すなわち、 システム署名鍵 K s y sによって署名されたデータは、 同じシステム署名鍵を有するシステム (記録再 生器) によってチェックが成功、 すなわち総チェック値 I C V tが一致すること になるので、 共通に利用可能となるが、 記録再生器署名鍵 K d e Vを用いて署名 された場合には、 記録再生器署名鍵はその記録再生器に固有の鍵であるので、 記 録再生器署名鍵 K d e Vを用いて署名されたデータ、 すなわち、 署名後、 記録デ バイスに格納されたデータは、 他の記録再生器に、 その記録デバイスを装置して 再生しようとした場合、 記録再生器固有のチェック値 I C V d e vが不一致とな り、 エラーとなるので再生できないことになる。 本発明のデータ処理装置におい ては、 利用制限情報の設定によって、 システムに共通に使用できるコンテンツ、 記録再生器固有に利用できるコンテンツを自在に設定できるものである。
次に、 ステップ S 1 2 1において、 記録再生器 3 0 0の制御部 3 0 1は、 記録 再生器暗号処理部 3 0 2に格納データフォーマツトの形成を実行させる。 先に説 明したように、 フォーマットタイプは 0〜3まで各タイプがあり、 ヘッダ中の取 扱方針 (図 5参照) 中に設定され、 この設定タイプにしたがって、 先に説明した 図 3 2〜3 5の右側の格納フォーマツトにしたがってデータを形成する。 この図 3 9に示すフローはフォーマット 0, 1のいずれかであるので、 図 3 2, 3 3の いずれかのフォーマツトに形成される。
ステップ S 1 2 1において格納データフォーマツトの形成が終了すると、 ステ ップ 1 2 2において、 記録再生器 3 0 0の制御部 3 0 1は、 コンテンツを記録デ バイス 4 0 0の外部メモリ 4 0 2に保存する。
以上が、 フォーマットタイプ 0, 1におけるコンテンツデータのダウンロード 処理の態様である。
次に、 フォーマツトタイプ 2におけるコンテンツデータのダウンロード処理に ついて図 4 0を用いて説明する。 上記したフォーマットタイプ 0, 1のダウン口 一ド処理と異なる点を中心に説明する。
ステップ S 1 0 1〜S 1 0 9は、 上記したフォーマットタイプ 0, 1のダウン ロード処理と同様であるので説明は省略する。
フォーマツトタイプ 2は、 先に説明したようにコンテンツチェック値 I C V i が定義されていないので、 プロック情報中には、 コンテンツチェック値 I C V i を持たない。 フォーマットタイプ 2における中間チェック値は、 図 3 8に示すよ うにチェック値 A、 チェックィ直 Bと、 第 1ブロックの先頭データ (ブロック 1の プロック鍵) から最終プロックまでのコンテンツデータ全体を連結したデータに 基づいて生成される中間チェック値にシステム署名鍵 K s y sを適用して暗号化 処理を実行することによって生成される。
従って、 フォーマットタイプ 2のダウンロード処理においては、 ステップ S 1 5 1においてコンテンツデータを読み出し、 ステップ S 1 5 2において、 チエツ ク値 A、 チェック値 Bと読み出したコンテンツデータに基づ!/、て中間チェック値 の生成を実行する。 なお、 コンテンツデータは暗号化されている場合でも、 復号 処理を行なわない。
フォーマットタイプ 2では、 前述のフォーマットタイプ 0, 1での処理のよう にブロックデータの復号、 コンテンツチェック値の照会処理を行なわないので、 迅速な処理が可能となる。
ステップ S 1 1 1以下の処理は、 フォーマットタイプ 0, 1における処理と同 様であるので説明を省略する。
以上が、 フォーマツトタイプ 2におけるコンテンツデータのダウンロード処理 の態様である。 上述したようにフォーマットタイプ 2のダウンロード処理は、 フ ォーマットタイプ 0, 1での処理のようにプロックデータの復号、 コンテンツチ エック値の照会処理を行なわないので、 迅速な処理が可能となり、 音楽データ等 リアルタイム処理が要求されるデータ処理に適したフォーマツトである。
次に、 フォーマツトタイプ 3におけるコンテンツデータのダウンロード処理に ついて図 4 1を用いて説明する。 上記したフォーマットタイプ 0 , 1, 2のダウ ンロード処理と異なる点を中心に説明する。
ステップ S 1 0 1〜S 1 0 5は、 上記したフォーマットタイプ 0, 1, 2のダ ゥンロード処理と同様であるので説明は省略する。
フォーマツトタイプ 3は、 基本的にフォーマツトタイプ 2における処理と共通 する部分が多いが、 フォーマットタイプ 3はコンテンツ鍵を有しておらず、 また ブロック鍵 K b 1 cが記録デバイスにおいては保存鍵 K s t rで暗号化されて格 納される点がフォーマツトタイプ 2と異なる。
フォーマツトタイプ 3のダウンロード処理におけるフォーマツトタイプ 2と相 違する点を中心として説明する。 フォーマットタイプ 3では、 ステップ S 1 0 5 の次ステップであるステップ S 1 6 1において、 ブロック情報鍵の復号を行なう 。 記録再生器暗号処理部 3 0 2の制御部 3 0 6が、 記録再生器喑号処理部 3 0 2 の暗号 Z複号化部 3 0 8を使って、 ステップ S 1 0 5で生成した配送鍵 K d i s を用いて、 読み取り部 3 0 4を介して受信したメディア 5 0 0、 または、 通信部 3 0 5を介して通信手段 6 0 0から受信したデータのヘッダ部に格納されたブロ ック情報鍵 K b i tの復号化処理を行う。 フォーマットタイプ 3では、 データ中 にコンテンツ鍵 K c o nが存在しないため、 コンテンツ鍵 K c o nの復号化処理 は実行されない。
次のステップ S 1 0 7では、 ステップ S 1 6 1で復号したプロック情報鍵 K b i tを用いてプロック情報の復号が実行され、 さらに、 ステップ S 1 6 2におい て、 記録再生器暗号処理部 3 0 2の制御部 3 0 6は、 プロック情報鍵 K b i t、 およびブロック情報 (B I T) から、 チヱック値 B ( I CV b ') を生成する。 チェック値 Bは、 記録再生器暗号処理部 3 0 2の内部メモリ 3 0 7に保存されて いるチェック値 B生成鍵 K i c V bを鍵とし、 プロック情報鍵 K b i t、 および ブロック情報 (B I T) からなる排他的論理和値を D E Sで暗号化して生成する 。 次に、 ステップ S 1 0 9において、 チェック値 Bとヘッダ (H e a d e r ) 内 の I C V bを比較し、 一致していた場合にはステップ S 1 5 1へ進む。
フォーマットタイプ 3では、 チェック値 B, I CV bは、 プロック情報鍵 K b i t、 ブロック情報の改竄を検証するためのチェック値として機能する。 生成し たチェック値 Bが、 ヘッダ (H e a d e r ) 内に格納されたチェック値: I CV bと一致した場合には、 プロック情報鍵 K b i t、 ブロック情報の改竄はないと 判断される。
ステップ3 1 5 1〜3 1 1 2は、 フォーマツトタイプ 2の処理と同様であるの で説明を省略する。
• ステップ S 1 6 3では、 ステップ S 1 5 1で読み出したコンテンツデータに含 まれるプロック鍵 K b 1 cをステップ S 1 0 5で生成した配送鍵 K d i sによつ て復号する。
次にステップ S 1 6 4では、 記録再生器 3 0 0の記録再生器暗号処理部 3 0 2 が、 ステップ S 1 6 1で複号化したブロック情報鍵 K b i tと、 ステップ S 1 6 3で復号したプロック鍵 Kb 1 cを、 記録再生器喑号処理部 3 0 2の暗号/復号 化部 3 0 8に、 相互認証の際に共有しておいたセッション鍵 K s e sで暗号化さ せる。 記録再生器 3 0 0の制御部 3 0 1は、 セッション鍵 K s e sで暗号化され たブロック情報鍵 K b i tとプロック鍵 K b 1 cを記録再生器 3 0 0の記録再生 器暗号処理部 3 0 2から読み出し、 これらのデータを記録再生器 3 0 0の記録デ バイスコントローラ 3 0 3を介して記録デバイス 4 0 0に送信する。
次に、 ステップ S 1 6 5において、 記録再生器 3 0 0から送信されてきたプロ ック情報鍵 K b i tとプロック鍵 K b 1 cを受信した記録デバイス 4 0 0は、 受 信したデータを記録デバイス喑号処理部 4 0 1の暗号 復号化部 4 0 6に、 相互 認証の際に共有しておいたセッション鍵 K s e sで復号化させ、 記録デバイス暗 号処理部 4 0 1の内部メモリ 4 0 5に保存してある記録デバイス固有の保存鍵 K s t rで再暗号化させ、 記録再生器 3 0 0の制御部 3 0 1は、 記録再生器 3 0 0 の記録デバィスコントローラ 3 0 3を介し、 記録デバィス 4 0 0から保存鍵 K s t rで再暗号化されたプロック情報鍵 K b i tとプロック鍵 K b 1 cを読み出す 。 すなわち、 当初、 配送鍵 K d i sで暗号化されたプロック情報鍵 K b i tとブ ロック鍵 K b 1 cを保存鍵 K s t rで再暗号化されたプロック情報鍵 K b i tと プロック鍵 K b 1 cへ置き換えを行なう。
以下のステップ S 1 1 9〜S 1 2 2は、 前述のフォーマットタイプ 0, 1, 2 と同様であるので説明を省略する。
以上が、 フォーマツトタイプ 3におけるコンテンツデータのダウンロード処理 の態様である。 上述したようにフォーマッ トタイプ 3のダウンロード処理は、 フ ォーマットタイプ 2と同様、 ブロックデータの復号、 コンテンツチェック値の照 会処理を行なわないので、 迅速な処理が可能となり、 音楽データ等リアルタイム 処理が要求されるデータ処理に適したフォーマットである。 また、 ブロック鍵 K b 1 cにより暗号化コンテンツを保護する範囲が局所化されているので、 フォー マツトタイプ 2に比較して、 よりセキュリティが高度となる。
次に、 フォ一マツトタイプ 0〜3各々における記録再生器 3 0 0における記録 デバイス 4 0 0からの再生処理について図 4 2 ~ 4 5のフローを用いて説明する まず、 フォーマツトタイプ 0におけるコンテンツの再生処理について図 4 2を 用いて説明する。
2 0 1は、 記録再生器と記録デバイス間における認証処理ステップ であり、 先に説明した図 20の認証処理フローに従って実行される。
ステップ S 20 1の認証処理が終了し、 認証フラグがセットされると、 記録再 生器 300は、 ステップ S 202において、 記録デバイス 400から所定のフォ 一マツトに従ったデータのヘッダを読み出し、 記録再生器 300の記録再生器暗 号処理部 302に送信する。
次に、 ステップ S 203において、 喑号処理部 302の制御部 306が記録再 生器暗号処理部 30 2の暗号 Z復号化部 308にチェック値 Aを計算させる。 チ エック値 Aは、 先に説明した図 23に示すように、 記録再生器暗号処理部 30 2 の内部メモリ 307に保存されているチェック値 A生成鍵 K i c V aを鍵とし、 識別情報 (Co n t e n t I D) と取扱方針 (U s a g e P ·ο 1 i c y ) を メッセージとして計算される。 次に、 ステップ S 204において、 計算されたチ エック値 Aとヘッダ (He a d e r) 内に格納されたチェック値: I CVaを比 較し、 一致していた場合にはステップ S 20 5へ進む。
チェック値 A, I CVaは、 識別情報、 取扱方針の改竄を検証するためのチェ ック値である。 計算されたチェック値 Aが、 ヘッダ (He a d e r) 内に格納さ れたチェック値: I CV aと一致した場合には、 記録デバイス 400に格納され た識別情報、 取扱方針の改竄はないと判断される。
次に、 ステップ S 205において、 記録再生器 300の制御部 30 1は、 読み 出したへッダから記録デバイス固有の保存鍵 K s t rで暗号化されたプロック情 報鏈 Kb i tとコンテンツ鍵 K c ο ηを取り出し、 記録再生器 30ひの記録デバ イスコントローラ 303を介して記録デバイス 400に送信する。
記録再生器 300から送信されてきたプロック情報鍵 Kb i tとコンテンツ鍵 Kc o nを受信した記録デバィス 400は、 受信したデータを記録デバイス暗号 処理部 40 1の暗号 Z複号化部 406に、 記録デバイス暗号処理部 40 1の内部 メモリ 405に保存してある記録デバイス固有の保存鍵 K s t rで復号化処理さ せ、 相互認証の際に共有しておいたセッション鍵 K s e s.で再ぴ暗号化させる。 この処理は、 前述した (9) 相互認証後の鍵交換処理の欄で詳しく述べた通りで ある。
ステップ S 20 6では、 記録再生器 300の制御部 301は、 記録再生器 30 0の記録デバィスコントローラ 303を介し、 記録デバィス 400からセッショ ン鍵 K s e sで再喑号化されたプロック情報鍵 Kb i tとコンテンツ鍵 K c o n を受信する。
次に、 ステップ S 207において、 記録再生器 300の制御部 30 1は、 受信 したセッション鍵 K s e sで再暗号化されたブロック情報鍵 Kb i tとコンテン ッ鍵 K c o nを記録再生器 300の記録再生器暗号処理部 302に送信し、 セッ シヨン鍵 K s e sで再暗号化されたブロック情報鍵 Kb i tとコンテンツ鍵 K c o 11を受信した記録再生器 300の記録再生器暗号処理部 30 2は、 記録再生器 暗号処理部 30 2の暗号/複号化部 308に、 セッション鍵 K s e sで暗号化さ れたプロック情報鍵 Kb i tとコンテンツ鍵 Kc o nを、 相互認証の際に共有し ておいたセッション鍵 K s e sで復号化させる。
さらに、 ステップ S 208において、 復号化したブロック情報鏈 Kb i tで、 ステップ S 202で読み出しておいたプロック情報を複号化する。 なお、 記録再 生器 300の記録再生器暗号処理部 302は、 復号化したプロック情報鍵 K b i t、 コンテンツ鍵 K c o nおよびブロック情報 B I Tを、 ステップ S 202で読 み出したヘッダに含まれるブロック情報鏈 Kb i t、 コンテンツ鍵 K c o nおよ ぴプロック情報 B I Tに置き換えて保持しておく。 また、 記録再生器 300の制 御部 301は、 復号化されたプロック情報 B I Tを記録再生器 300の記録再生 器暗号処理部 30 2から読み出しておく。
さらに、 ステップ S 20 9において、 記録再生器暗号処理部 302の制御部 3 06は、 プロック情報鍵 Kb i t、 コンテンツ鍵 K c o nおよびブロック情報 ( B I T) から、 チェック値 B ( I C V b ') を生成する。 チェック値 Bは、 図 2 4に示すように、 記録再生器喑号処理部 302の内部メモリ 307に保存されて いるチェック値 B生成鍵 K i c V bを鍵とし、 ブロック情報鍵 Kb i t、 コンテ ンッ鍵 K c o nおよびブロック情報 (B I T) からなる排他的論理和値を DE S で暗号化して生成する。 次に、 ステップ S 21 0において、 チェック値 Bとへッ ダ (He a d e r) 内の I CVbを比較し、 一致していた場合にはステップ S 2 1 1へ進む。
チェック値 B, I CVbは、 ブロック情報鍵 K b i. t、 コンテンツ鍵 Kc o n 、 プロック情報の改竄を検証するためのチェック値であり、 生成したチェック値 Bが、 ヘッダ (He a d e r) 内に格納されたチェック値: I C Vbと一致した 場合には、 記録デバイス 400に保存されたデータ中のブロック情報鍵 Kb i t 、 コンテンツ鍵 Kc o n、 プロック情報の改竄はないと判断される。
ステップ S 21 1において、 記録再生器暗号処理部 302の制御部 306は、 記録再生器暗号処理部 302の暗号/複号化部 308に中間チェック値の計算を させる。 中間チェック値は、 図 25に示すように、 記録再生器暗号処理部 30 2 の内部メモリ 307に保存されている総チェック値生成鍵 K i c V tを鍵とし、 検証した He a d e r内のチェック値 A、 チェック値 B、 ブロック情報中の全て のコンテンツチェック値をメッセージとして図 7他で説明した I CV計算方法に 従って計算する。 なお、 生成した中間チェック値は、 必要に応じて記録再生器 3 00の記録再生器喑号処理部 30 2に保持しておく。
次に、 ステップ S 21 2において、 記録再生器 300の制御部 30 1は、 記録 デバイス 400の外部メモリ 40 2から読み出したデータのヘッダ部に含まれる 取扱方針 (U s a g e P o l i c y) から利用制限情報を取り出し、 再生予定 のコンテンツが当該記録再生器 300のみで利用できる (利用制限情報が 1 ) か 、 別の同様な記録再生器 300でも利用できる (利用制限情報が 0) か判定する 。 判定の結果、 利用制限情報が 1、 すなわち再生コンテンツが当該記録再生器 3 00のみで利用できる利用制限が設定されている場合には、 ステップ S 21 3に 進み、 利用制限情報が 0、 すなわち別の同様な記録再生器 300でも利用できる 設定であった場合には、 ステップ S 21 5に進む。 なお、 ステップ S 21 2の処 理は暗号処理部 30 2が行なってもよい。
21 3では、 記録再生器 300の制御部 301は、 記録再生器固有 のチェック値 I CV d e v' を記録再生器 300の記録再生器暗号処理部 30 2 に計算させる。 記録再生器固有のチェック値 I CVd e V ' は、 図 25に示すよ うに記録再生器暗号処理部 302の内部メモリ 30 7に保存されている記録再生 器署名鍵 Kd e vを鍵とし、 ステップ S 21 1で保持しておいた中間チェック値 を D E Sで暗号化して生成する。
次に、 ステップ S 214において、 ステップ S 2 1 3で計算した記録再生器固 有のチェックィ直 I C V d e V ' とステップ S 20 2で読み出したヘッダ内の I C V d e vを比較し、 一致していた場合には、 ステップ S 21 7へ進む。
一方ステップ S 2 1 5では、 記録再生器暗号処理部 302の制御部 306は、 記録再生器喑号処理部 30 2の暗号 Z複号化部 308に総チェック値 I C V tの 計算をさせる。 総チェック値 I CV t ' は、 図 25に示すように、 記録再生器暗 号処理部 302の内部メモリ 30 7に保存されているシステム署名鍵 K s y sを 鍵とし、 中間チェック値を DE Sで暗号化して生成する。 次に、 ステップ S 2 1 6において、 生成した総チェックイ直 I C V t, とヘッダ (H e a d e r ) 内の I CV tを比較し、 一致していた場合には、 ステツ.プ S 21 7へ進む。 ' 総チェック値 I CV t、 および記録再生器固有のチェック値 I CVd e vは、 I CVa、 I CVb、 各コンテンツブロックのチェック値全ての改竄を検証する ためのチェック値である。 従って、 上述の処理によって生成されたチェック値が ヘッダ (H e a d e r ) 内に格納されたチェック値: I C V tまたは I C V d e vと一致した場合には、 記録デバイス 400に格納された I CV a、 I CVb、 各コンテンツプロックのチェック値全ての改竄はないと判断される。
次に、 ステップ S 21 7において、 記録再生器 300の制御部 301は、 記録 デバイス 400からブロックデータを読み出す。 さらに、 ステップ S 21 8にお いて暗号化されているか否かを判定し、 暗号化されている場合は、 記録再生器 3 00の暗号処理部 3 02においてブロックデータの復号を行なう。 暗号化されて いない場合は、 ステップ S 21 9をスキップしてステップ S 220に進む。
次に、 ステップ S 220において、 記録再生器 300の制御部 30 1は、 プロ ック情報 (B I T) 内のコンテンツプロック情報に基づいて、 コンテンツプロッ クが検証対象になっているかいないか調べる。 コンテンツブロックが検証対象に なっている場合には、 ヘッダ中のブロック情報中にコンテンツチェック値が格納 されている。 コンテンツブロックが検証対象になつていた場合には、 ステップ S
22 1において、 該当するコンテンッブロックのコンテンツチェック値 I C V
1 ' を計算させる。 コンテンツプロックが検証対象になつていない場合には、 ス テツプ S 22 1 と S 222をスキップしてステップ S 223に進む。
コンテンツチェック値 I CV i ' は、 先に図 3 6で説明したようにブロックが 暗号化されている場合、 コンテンツ鍵 Kc o nで、 入力されたコンテンツブロッ クを DESの CBCモードで復号化し、 その結果を全て 8バイト単位で排他的論 理和して生成したコンテンツ中間値を記録再生器 300の内部メモリ 307に格 納されたコンテンツチェック値生成鍵 K i c V cで暗号化して生成する。 また、 プロックが暗号化されていない場合は、 データ (平文) 全体を 8バイト単位で図
36に示す改竄チェック値生成関数 (DE S— C B C— MAC、 コンテンツチェ ック値生成鍵 K i c v cを鍵とする) に入力して得た値として生成される。 ステップ S 2 22においては、 記録再生器暗号処理部 302の制御部 30 6は 、 生成したコンテンツチェック値 I CV i, と、 ステップ S 20 2で記録デバィ ス 400から受信したヘッダ部に格納されたコンテンツチェック値 I CV i とを 比較し、 その結果を記録再生器 300の制御部 3 01に渡す。 これを受信した記 録再生器 300の制御部 30 1は、 検証に成功していた場合、 ステップ S 223 において、 記録再生器システム RAM上に実行 (再生) 用コンテンツ平文データ を格納する。 記録再生器 300の制御部 30 1は、 さらに次の検証対象コンテン ップロックを取り出して記録再生器 300の記録再生器暗号処理部 30 2に検証 させ、 全てのコンテンツブロックを検証するまで同様の検証処理、 RAM格納処 理を繰り返す (ステップ S 224)。
なお、 ステップ S 204、 ステップ S 21 0、 ステップ S 21 4, ステップ S
21 6、 ステップ S 222のいずれかにおいて、 チェック値の一致が得られなか つた場合はエラーとして再生処理は終了する。
ステップ S 224において全ブロック読み出しと判定されると、 ステップ S 2 25に進み、 コンテンツ (プログラム、 データ) の実行、 再生が開始される。 以上が、 フォーマツトタイプ 0におけるコンテンツデータの再生処理の態様で める。
次に、 フォーマツトタイプ 1におけるコンテンツデータの再生処理について図 43を用いて説明する。 上記したフォーマツトタイプ 0の再生処理と異なる点を 中心に説明する。
ステップ S 20 1〜ステップ S 2 1 7までの処理は、 上記したフォーマツトタ イブ 0の再生処理と同様であるので説明は省略する。
フォーマットタイプ 1では、 ステップ S 23 1において、 暗号化パーツの復号 が実行され、 パーツ I CVが生成される。 さらに、 ステップ S 232において、 ブロック I CV i, が生成される。 先に説明したように、 フォーマット 'タイプ 1においては、 プロック内のパーツのうち少なくとも 1つがチェック値 I CV i の対象データである場合は、 そのプロックに関してコンテンツチェック値 I CV iが定義される。 プロック iにおけるパーツ jのチェック値 P— I CV i jは、 パーツ』が暗号化されている場合、 平文 (復号文) 全体を 8バイト単位で排他論 理和した値をコンテンツチェック値生成鍵 K i c V cで暗号化した値として生成 される。 また、 パーツ jが暗号化されていない場合は、 データ (平文) 全体を 8 バイト単位で図 36に示す改竄チェック値生成関数 (DES— CBC—MAC、 コンテンツチェック値生成鍵 K i c v cを鏈とする) に入力して得た値として生 成される。
さらに、 1つのプロック i内にチェック対象であることを示す [ I CVフラグ = s u b j e c t o f I CV] であるパーツが 1つのみ存在する場合は、 上 述の手法で生成したチェック値 P— I CV i jをそのままプロックのチェック値 I CV i とし、 また、 1つのプロック i内にチェック対象であることを示す [ I CVフラグ = s u b j e c t o f I CV] であるパーツが複数存在する場合 は、 複数のパーツチェック値 P _ I C V i , jをパーツ番号順に連結したデータ を対象にしてデータ (平文) 全体を 8バイト単位で図 3 6に示す改竄チェック値 生成関数 (D E S - C B C -MA C , コンテンツチェック値生成鍵 K i c v cを 鍵とする) に入力して得た値として生成される。 これは、 先に図 3 7で説明した 通りである。
フォーマツトタイプ 1では、 上述の手順で生成されたコンテンツチェック値の 比較処理がステップ S 2 2 2で実行されることになる。 以下のステップ S 2 2 3 以下の処理はフォーマツトタイプ 0と同様であるので説明は省略する。
次に、 フォーマツトタイプ 2におけるコンテンツデータの再生処理について図
4 4を用いて説明する。 上記したフォーマットタイプ 0, 1の再生処理と異なる 点を中心に説明する。
ステップ S 2 0 1〜S 2 1 0は、 上記したフォーマットタイプ 0, 1の再生処 理と同様であるので説明は省略する。
フォーマットタイプ 2においては、 フォーマットタイプ 0, 1において実行さ れたステップ S 2 1 1〜S 2 1 6の処理が実行されない。 また、 フォーマツトタ ィプ 2においては、 コンテンツチェック値を持たないため、 フォーマットタイプ 0, 1において実行されたステップ S 2 2 2のコンテンツチェック値の検証も実 行されない。
フォーマツトタイプ 2のデータ再生処理においては、 ステップ S 2 1 0のチヱ ック値 Bの検証ステップの後、 ステップ S 2 1 7に進み、 記録再生器 3 0 0の制 御部 3 0 1の制御によって、 プロックデータが読み出される。 さらに、 ステップ
5 2 4 1において、 記録再生器 3 0 0の暗号処理部 3 0 6によるプロックデータ に含まれるプロック鍵 K b 1 cの復号処理が実行される。 記録デバイス 4 0 0に 格納されたプロック鍵 K b 1 cは、 図 3 4で示すようにコンテンツ鍵 K c o nで 暗号化されており、 先のステップ S 2 0 7において復号したコンテンツ鍵 K c o nを用いてプロック鍵 K b 1 cの復号を行なう。
次に、 ステップ S 2 4 2において、 ステップ S 2 4 1で復号されたプロック鍵 Kb 1 cを用いてブロックデータの復号処理が実行される。 さらに、 ステップ S 243において、 コンテンツ (プログラム、 データ) の実行、 再生処理が実行さ れる。 ステップ S 21 7〜ステップ S 243の処理が全プロックについて繰り返 し実行される。 ステップ S 244において全プロック読み出しと判定されると再 生処理は終了する。
このようにフォーマツトタイプ 2の処理は、 総チェック値等のチェック値検証 処理を省略しており、 高速な復号処理の実行に適している構成であり、 音楽デー タ等リアルタイム処理が要求されるデータ処理に適したフォーマツトである。 次にフォーマツトタイプ 3におけるコンテンツデータの再生処理について図 4 5を用いて説明する。 上記したフォーマットタイプ 0, 1, 2の再生処理と異な る点を中心に説明する。
フォーマットタイプ 3は、 基本的にフォーマツトタイプ 2における処理と共通 する部分が多いが、 フォーマツトタイプ 3は図 3 5において説明したようにコン テンッ鍵を有しておらず、 またブロック鍵 Kb 1 cが記録デバイスにおいては保 存鍵 K s t rで暗号化されて格納される点がフォーマットタイプ 2と異なる。 ステップ S 201〜S 21 0において、 ステップ S 25 1、 ステップ S 25 2 、 ステップ S 253、 ステップ S 254の処理は、 前述のフォーマットタイプ 0 , 1, 2における対応処理と異なりコンテンツ鏈を含まない処理として構成され ている。
ステップ S 25 1において、 記録再生器 300の制御部 30 1は、 読み出した ヘッダから記録デバイス固有の保存鍵 K s t rで喑号化されたプロック情報鍵 K b i tを取り出し、 記録再生器 300の記録デバイスコントローラ 303を介し て記録デバィス 400に送信する。
記録再生器 300から送信されてきたプロック情報鍵 Kb i tを受信した記録 デバイス 400は、 受信したデータを記録デバイス喑号処理部 401の暗号 復 号化部 406に、 記録デバイス暗号処理部 401の内部メモリ 405に保存して ある記録デバイス固有の保存鍵 K s t rで複号化処理させ、 相互認証の際に共有 しておいたセッション鍵 K s e sで再暗号化させる。 この処理は、 前述した (9 ) 相互認証後の鍵交換処理の欄で詳しく述べた通りである。
ステップ S 2 5 2では、 記録再生器 3 0 0の制御部 3 0 1は、 記録再生器 3 0 0の記録デバイスコントローラ 3 0 3を介し、 記録デバイス 4 0 0からセッショ ン鍵 K s e sで再喑号化されたブロック情報鍵 K b i tを受信する。
次に、 ステップ S 2 5 3において、 記録再生器 3 0 0の制御部 3 0 1は、 受信 したセッション鍵 K s e sで再暗号化されたプロック情報鍵 K b i tを記録再生 器 3 0 0の記録再生器暗号処理部 3 0 2に送信し、 セッション鍵 K s e sで再暗 号化されたプロック情報鍵 K b i tを受信した記録再生器 3 0 0の記録再生器喑 号処理部 3 0 2は、 記録再生器喑号処理部 3 0 2の暗号/復号化部 3 0 8に、 セ ッシヨン鍵 K s e sで暗号化されたプロック情報鍵 K b i tを、 相互認証の際に 共有しておいたセッション鍵 K s e sで復号化させる。
さらに、 ステップ S 2 0 8において、 復号化したブロック情報鍵 K b i tで、 ステップ S 2 0 2で読み出しておいたプロック情報を復号化する。 なお、 記録再 生器 3 0 0の記録再生器暗号処理部 3 0 2は、 復号化したプロック情報鍵 K b i tおよぴブロック情報 B I Tを、 ステップ S 2 0 2で読み出したヘッダに含まれ るブロック情報鍵 K b i tおよびプロック情報 B I Tに置き換えて保持しておく 。 また、 記録再生器 3 0 0の制御部 3 0 1は、 復号化されたプロック情報 B I T を記録再生器 3 0 0の記録再生器暗号処理部 3 0 2から読み出しておく。
さらに、 ステップ S 2 5 4において、 記録再生器暗号-処理部 3 0 2の制御部 3 0 6は、 プロック情報鍵 K b i tおよびプロック情報 (B I T) から、 チェック 値 B ( I C V b ' ) を生成する。 チヱック値 Bは、 図 2 4に示すように、 記録再 生器暗号処理部 3 0 2の内部メモリ 3 0 7に保存されているチェック値 B生成鍵 K i c V bを鍵とし、 プロック情報鍵 K b i tおよびブロック情報 (B I T ) か らなる排他的論理和値を D E Sで暗号化して生成する。 次に、 ステップ S 2 1 0 において、 チェック値 Bとヘッダ (H e a d e r ) 内の I C V bを比較し、 一致 していた場合にはステップ S 2 1 1へ進む。 フォーマットタイプ 3では、 さらに、 ブロック鍵が記録デバイスでの格納時に 保存鍵によって暗号化されるため、 記録デバイス 4 0 0における保存鍵での復号 処理、 およびセッション鍵での暗号化処理、 さらに、 記録再生器 3 0 0でのセッ シヨン鍵での復号処理が必要となる。 これらの一連の処理がステップ S 2 5 5、 ステップ S 2 5 6で示した処理ステップである。
ステップ S 2 5 5では、 記録再生器 3 0 0の制御部 3 0 1は、 ステップ S 2 1 7で読み出したプロックから記録デバイス固有の保存鍵 K s t rで暗号化された プロック鍵 K b 1 cを取り出し、 記録再生器 3 0 0の記録デバイスコントローラ 3 0 3を介して記録デバイス 4 0 0に送信する。
記録'再生器 3 0 0から送信されてきたブロック鍵 K b 1 cを受信した記録デバ イス 4 0 0は、 受信したデータを記録デバイス暗号処理部 4 0 1の暗号 Z復号化 部 4 0 6に、 記録デバイス暗号処理部 4 0 1の内部メモリ 4 0 5に保存してある 記録デバイス固有の保存鍵 K s t rで複号化処理させ、 相互認証の際に共有して おいたセッショ ン鍵 K s e sで再暗号化させる。 この処理は、 前述した 「(9 ) 相互認証後の鍵交換処理」 の欄で詳しく述べた通りである。
ステップ S 2 5 6では、 記録再生器 3 0 0の制御部 3 0 1は、 記録再生器 3 0 0の記録デバィスコントローラ 3 0 3を介し、 記録デバィス 4 0 0からセッショ ン鍵 K s e sで再暗号化されたプロック鍵 K b 1 cを受信する。
次に、 ステップ S 2 5 7において、 記録再生器 3 0 0の暗号処理部 3 0 6によ るプロック鍵 K b 1 cのセッション鍵 K s e sを用いた復号処理が実行される。 次に、 ステップ S 2 4 2において、 ステップ S 2 5 7で復号されたブロック鍵 K b 1 cを用いてブロックデータの復号処理が実行される。 さらに、 ステップ S 2 4 3において、 コンテンツ (プログラム、 データ) の実行、 再生処理が実行さ れる。 ステップ S 2 1 7〜ステップ S 2 4 3の処理が全プロックについて繰り返 し実行される。 ステップ S 2 4 4において全プロック読み出しと判定されると再 生処理は終了する。
以上の処理が、 フォーマツトタイプ 3におけるコンテンツの再生処理である。 総チェック値の検証処理が省略された点でフォーマツトタイプ 2と類似するが、 ブロック鍵の鍵交換処理を含む点でフォーマツトタイプ 2に比較して、 さらにセ キユリティ . レベルの高い処理構成となっている。
(1 1) コンテンツプロバイダにおけるチェック値 (I CV) 生成処理態様 上述の実施例中において、 各種のチェック値 I CVについての検証処理が、 コ ンテンッのダウンロード、 または再生処理等の段階で実行されることを説明して きた。 ここでは、 これら各チェック値 (I CV) 生成処理、 検証処理の態様につ いて説明する。
まず、 実施例で説明した各チ ック値について、 簡潔にまとめると、 本発明の データ処理装置において利用されるチェック値 I CVには以下のものがある。 チェック値 A, I CV a : コンテンツデータ中の識別情報、 取扱方針の改竄を 検証するためのチ ック値。
チェック値 B, I CVb :ブロック情報鍵 Kb i t、 コンテンツ鍵 Kc o n、 プロック情報の改竄を検証するためのチェック値。
コンテンツチェック値 I C V i : コンテンッの各コンテンツプロックの改竄を 検証するためのチェック値。 ,
総チェック値 I CV t :チェック値 I CV a、 チェック値 I CVb、 各コンテ ンップロックのチェック値全ての改竄を検証するためのチェック値である。
再生器固有チェック値 I C V d e V : ローカリゼーションフラグが 1にセット されている場合、 すなわち、 コンテンツが記録再生器固有に利用可能であること を示している場合に、 総チェック値 I CV tに置き換えられるチェック値であり 、 前述のチェック値 A: I C V a s チェックイ直 B : I CVb、 さらにコンテンツ のチェック対象となっている各ブロックに含まれるチェック値 I CV i全体に対 するチェック値として生成される。
フォーマットによっては、 I CV t、 I C V d e Vがチェックする対象に含ま れるのは、 各コンテンツブロックのチェック値ではなく、 コンテンツそのものと なる場合もある。 以上の各チェック値が本発明のデータ処理装置において用いられる。 上記各チ エック値の中で、 チェック値 A、 チェック値 B、 総チェック値、 コンテンツチェ ック値は、 例えば図 3 2〜3 5、 および図 6に示されるようにコンテンツデータ を提供するコンテンツプロバイダ、 あるいはコンテンツ管理者によって、 それぞ れの検証対象データに基づいて I C V値が生成され、 コンテンツと共にデータ中 に格納されて記録再生器 3 0 0の利用者に提供される。 記録再生器の利用者、 す なわちコンテンッ利用者は、 このコンテンツを記録デバィスにダウンロードする 際、 または再生する際にそれぞれの検証対象データに基づいて検証用の I C Vを 生成して、 格納済みの I C Vとの比較を行なう。 また、 再生器固有チェック値 I C V d e vは、 コンテンツが記録再生器固有に利用可能であることを示している 場合に、 総チェック値 I C V tに置き換えられて、 記録デバイスに格納されるも のである。
チェック値の生成処理は、 前述の実施例中では、 主として D E S— C B Cによ る生成処理構成を説明してきた。 しかし、 I C Vの生成処理態様には、 上述の方 法に限らず様々な生成処理態様、 さらに、 様々な検証処理態様がある。 特にコン テンッ提供者または管理者と、 コンテンツ利用者との関係においては、 以下に説 明する各種の I C V生成および検証処理構成が可能である。
図 4 6〜図 4 8にチェック値 I C Vの生成者における生成処理と、 検証者によ る検証処理を説明する図を示す。
図 4 6は、 上述の実施例中で説明した D E S _ C B Cによる I C Vの生成処理 を、 例えばコンテンツ提供者または管理者である I C V生成者が行ない、 生成し た I C Vをコンテンツと共に記録再生器利用者、 すなわち検証者に提供する構成 である。 この場合に記録再生器利用者、 すなわち検証者が検証処理の際に必要と なる鍵は、 例えば図 1 8に示す内部メモリ 3 0 7に格納された各チェック値生成 鍵である。 コンテンツ利用者である検証者 (記録再生器利用者) は、 内部メモリ 3 0 7に格納されたチェック値生成鍵を使用して、 検証対象のデータに D E S— C B Cを適用してチェック値を生成して格納チェック値と比較処理を実行する。 この場合、 各チェック値生成鍵は、 I CVの生成者と、 検証者が秘密に共有する 鍵として構成される。
図 47は、 コンテンツ提供者または管理者である I CVの生成者が公開鍵喑号 系のデジタル署名により I CVを生成して、 生成した I CVをコンテンツと共に コンテンツ利用者、 すなわち検証者に提供する。 コンテンツ利用者、 すなわち検 証者は、 I CV生成者の公開鍵を保存し、 この公開鍵を用いて I CVの検証処理 を実行する構成である。 この場合、 コンテンツ利用者 (記録再生器利用者)、 す なわち検証者の有する I CV生成者の公開鍵は秘密にする必要がなく、 管理ば容 易となる。 I CVの生成、 管理が 1つのエンティティにおいて実行される場合等 、 I CVの生成、 管理が高いセキュリティ管理レベルで行われている場合に適し た態様である。
図 48は、 コンテンツ提供者または管理者である I CVの生成者が公開鍵暗号 系のデジタル署名により I CVを生成して、 生成した I CVをコンテンツと共に コンテンツ利用者、 すなわち検証者に提供し、 さらに、 検証者が検証に用いる公 開鍵を公開鍵証明書 (例えば図 14参照) に格納してコンテンツデータと共に記 録再生器利用者、 すなわち検証者に提供する。 I CVの生成者が複数存在する場 合には、 各生成者は、 公開鍵の正当性を証明するデータ (公開鍵証明書) を鍵管 理センタに作成してもらう。
I CVの検証者であるコンテンツ利用者は、 鍵管理セン の公開鍵を持ち、 検 証者は公開鍵証明書の検証を鍵管理センタの公開鍵によつて実行し、 正当性が確 認されたら、 その公開鍵証明書に格納された I CVの生成者の公開鍵を取り出す 。 さらに、 取り出した I CVの生成者の公開鍵を用いて I CVの検証を実行する この方法は、 I CVの生成者が複数あり、 それらの管理を実行するセンタによ る管理の実行システムが確立している場合に有効な態様である。
(1 2) マスタ鍵に基づく暗号処理鍵生成構成
次に、 本発明のデータ処理システムにおける特徴的な構成の 1つである、 マス タ鍵に基づく各種暗号処理用鍵の生成構成について説明する。
先に図 1 8を用いて説明したように、 本発明のデータ処理装置における記録再 生器 3 0 0の内部メモリには、 様々なマスタ鍵が格納され、 これらの各マスタ鍵 を用いて、 例えば認証鍵 K a k eを生成 (数 3参照) したり.、 あるいは配送鍵 K d i sを生成 (数 4参照) する構成となっている。
従来、 1対 1のエンティティ間、 すなわちコンテンツプロバイダとコンテンツ 利用者間、 あるいは、 上述の本発明のデータ処理装置における記録再生器 3 0 0 と記録メディア 4 0 0との間において暗号通信、 相互認証、 MA C生成、 検証等 を行なう際には、 各エンティティに共通な秘密情報、 例えば鍵情報を保持させて いた。 また、 1対多の関係、 例えば 1つのコンテンツプロバイダに対する多数の コンテンツ利用者、 あるいは 1つの記録再生器に対する多数の記録メディア等の 関係においては、 すべてのエンティティ、 すなわち多数のコンテンツ利用者、 あ るいは多数の記録メディアにおいて共有させた秘密情報、 例えば鍵情報を格納保 持させる構成とするか、 あるいは、 1つのコンテンツプロバイダが多数のコンテ ンッ利用者各々の秘密情報 (e x . 鍵) を個別に管理し、 これを各コンテンツ利 用者に応じて使い分けていた。
しかしながら、 上記のような 1対多の利用関係がある場合、 すべてが共有する 秘密情報 (e x . 鍵) を所有する構成においては、 1箇所の秘密漏洩が発生する と同じ秘密情報 (e x . 鍵) を利用している者すべてに影響が及ぶという欠点が ある。 また、 1つの管理者、 例えばコンテンツプロバイダが多数のコンテンツ利 用者各々の秘密情報 (e x . 鍵) を個別に管理し、 これを各コンテンツ利用者に 応じて使い分ける構成とすると、 すべての利用者を識別し、 かつその識別データ に固有の秘密情報 (e x . 鍵) を対応づけたリストが必要となり、 利用者の増大 に伴うリストの保守管理の負担が増加するという欠点がある。
本発明のデータ処理装置においては、 このようなエンティティ間における秘密 情報の共有における従来の問題点をマスタ一鍵の保有、 およびマスタ一鍵から各 種の個別鍵を生成する構成により解決した。 以下、 この構成について説明する。 本発明のデータ処理装置においては、 記録デバイスやコンテンツを格納したメ ディア、 または記録再生器間での各種の暗号処理、 認証処理等において異なる個 別の鍵が必要になる場合、 その個別の鍵を、 デバイスやメディアが固有に持つ識 別子データ ( I D ) などの個別情報と記録再生器 3 0 0内であらかじめ決められ た個別鍵生成方式を用いて生成する。 この構成により万が一、 生成された個別の 鍵が特定された場合でもマスター鍵の漏洩を防止すれば、 システム全体への被害 を防ぐことが可能となる。 またマスター鍵によって鍵を生成する構成により対応 づけリストの管理も不要となる。
具体的な構成例について、 図を用いて説明する。 まず、 図 4 9に各種の鍵を記 録再生器 3 0 0の有する各種のマスタ鍵を用いて生成する構成を説明する図を示 す。 図 4 9のメディア 5 0 0、 通信手段 6 0 0からは、 すでに説明した実施例と 同様、 コンテンツが入力される。 コンテンツはコンテンツ鍵 K c o nによって喑 号化され、 またコンテンツ鍵 K c o nは、 配送鍵 K d i sによって喑号化されて いる。
例えば、 記録再生器 3 0 0がメディア 5 0 0、 通信手段 6 0 0からコンテンツ を取り出して、 記録デバイス 4 0 0にダウンロードしょうとする場合、 先の図 2 2、 図 3 9〜4 1において説明したように、 記録再生器 3 0 0は、 コンテンツ鍵 を暗号化している配送鍵 K d i sを取得することが必要となる。 この K d i sを メディア 5 0 0、 通信手段 6 0 0から直接取得したり、 あるいは予め記録再生器 3 0 0が取得して記録再生器 3 0 0内のメモリに格納しておくことも可能である が、 このような鍵の多数のユーザに対する配布構成は、 先にも説明したようにシ ステム全体に影響を及ぼす漏洩の可能性がある。 ' 本発明のデータ処理システムでは、 この配送鍵 K d i sを図 4 9の下部に示す ように、 記録再生器 3 0 0のメモリに格納された配送鍵用マスター鍵 MK d i s と、 コンテンツ I Dに基づく処理、 すなわち K d i s = D E S (MK d i s , コ ンテンッ I D ) を適用して配送鍵 K d i sを生成する構成としている。 本構成に よれば、 メディア 5 0 0、 通信手段 6 0 0からコンテンツを供給するコンテンツ プロバイダとそのコンテンツ利用者である記録再生器 300間におけるコンテン ッ配布構成において、 コンテンツプロバイダが多数存在した場合であっても、 個 々の配送鍵 Kd i sをメディア、 通信媒体等を介して流通させる必要もなく、 ま た、 各記録再生器 300に格納する必要もなく、 セキュリティを高度に保つこと が可能となる。
次に、 認証鍵 Ka k eの生成について説明する。 先に説明した図 22、 図 3 9 〜41の記録再生器 300から記録メディア 400に対するダウンロード処理、 あるいは図 28, 図 42〜45で説明した記録メディア 400に格納されたコン テンッを記録再生器 300において実行、 再生する場合、 記録再生器 300と記 録メディア 400間における相互認証処理 (図 20参照) が必要となる。
図 20で説明したように、 この認証処理において記録再生器 300は認証鍵 K a k eが必要となる。 記録再生器 300は、 認証鍵を例えば記録メディァ 400 から直接取得したり、 あるいは予め記録再生器 300が取得して記録再生器 3 0 0内のメモリに格納しておくことも可能であるが、 上述の配送鍵の構成と同様、 このような鍵の多数のユーザに対する配布構成は、 システム全体に影響を及ぼす 漏洩の可能性がある。
本発明のデータ処理システムでは、 この認証鍵 K a k eを図 4 9の下部に示す ように、 記録再生器 300のメモリに格納された認証鍵用マスター鍵 MK a k e と、 記録デバイス識別 I D : I Dm emに基づく処理、 すなわち Ka k e =DE S (MKa k e , I Dm em) によって認証鍵 K a k eを求める構成としている さらに、 図 2 2、 図 3 9〜 41の記録再生器 300から記録メディア 400に 対するダウンロード処理、 あるいは図 28, 図 42〜45で説明した記録メディ ァ 400に格納されたコンテンツを記録再生器 3 00において実行、 再生する場 合、 記録再生器固有に利用可能なコンテンツである場合の記録再生器固有チェッ ク値 I CVd e vの生成処理に必要となる記録再生器署名鍵 Kd e "めについても 上述の配送鍵、 認証鏈と同様の構成とすることができる。 上述の実施例中では、 記録再生器署名鍵 Kd e vは内部メモリに格納する構成としていたが、 記録再生 器署名鍵用マスター鍵 MKd e vをメモリに格納し、 記録再生器署名鍵 Kd e v は内部メモリに格納せず、 必要に応じて図 49の下部に示すように記録再生器識 別子: I D d e Vと記録再生器署名鍵用マスター鍵 MKd e Vに基づいて、 Kd e v = DE S (MK d e v , I Dd e v) によって記録再生器署名鍵 K d e vを 求める構成とすることで、 記録再生器署名键 Kd e vを機器個別に持たせる必要 がなくなるという利点が挙げられる。 , このように、 本発明のデータ処理装置においては、 プロバイダと記録再生器、 あるいは記録再生器と記録デバイス間のような 2つのエンティティ間における暗 号情報処理に関する手続きに必要な鍵等の情報をマスター鍵と各 I Dから逐次的 に生成する構成としたので、 鍵情報が各エンティティから漏洩した場合でも、 個 別の鍵による被害の範囲はより限定され、 また前述したような個別のェンティテ ィごとの鍵リストの管理も不要となる。
本構成に関する複数の処理例についてフローを示して説明する。 図 50は、 コ ンテンッ製作または管理者におけるマスター鍵を用いたコンテンツ等の暗号化処 理と、 ユーザデバイス、 例えば上述の実施例における記録再生器 300における マスタ一鍵を用いた暗号化データの復号処理例である。
コンテンツ製作または管理者におけるステップ S 50 1は、 コンテンツに対す る識別子 (コンテンツ I D) を付与するステップである。 ステップ S 502は、 コンテンツ製作または管理者の有するマスター鍵とコンテンツ I Dとに基づいて コンテンツ等を暗号化する鍵を生成するステップである。 これは例えば、 配送鏈
Kd i sを生成する工程とすれば、 前述の Kd i s = DE S (MKd i s, コン テンッ I D) によって配送鍵 Kd i sを生成する。 次に、 ステップ S 503は、 コンテンツの一部、 または全部を鍵 (例えば配送鍵 Kd i s) によって暗号化す るステップである。 コンテンツ製作者は、 このようなステップを経て暗号化処理 を行なったコンテンツを D V D等のメディア、 通信手段等を介して配信する。 一方、 例えば記録再生器 300等のユーザデバイス側では、 ステップ S 504 において、 メディア、 通信手段等を介して受領したコンテンツデータ中からコン テンッ I Dを読み出す。 次に、 ステップ S 5 0 5において、 読み出したコンテン ッ I Dと所有するマスター鍵に基づいて暗号化コンテンツの復号に適用する鍵を 生成する。 この生成処理は、 配送鍵 K d i sを得るものである場合は、 例えば配 送鍵 K d i s = D E S (MK d i s, コンテンツ I D ) となる。 ステップ S 5 0 6で、 この鏈を用いてコンテンツを復号し、 ステップ S 5 0 7で復号コンテンツ の利用、 すなわち再生またはプログラムを実行する。
この例においては、 図 5 0下段に示すように、 コンテンツ製作または管理者と 、 ユーザデバイスの双方がマスター鍵 (例えば配送鍵生成用マスター鍵 MK d i s ) を有し、 コンテンツの暗号化、 復号に必要な配送鍵を逐次的にそれぞれの所 有するマスター鍵と各 I D (コンテンツ I D) に基づいて生成する。
このシステムでは、 万が一配送鍵が第三者に漏洩した場合、 そのコンテンツの 復号が第三者において可能となるが、 コンテンツ I Dの異なる他のコンテンツの 復号は防止することが可能であるため、 1つのコンテンツ鍵の漏洩がシステム全 体に及ぼす影響を最小限にすることができるという効果がある。 また、 ユーザデ バイス側、 すなわち記録再生器において、 コンテンツ毎の鍵の対応付けリストを 保持する必要がないという効果もある。 '
次に図 5 1を用いて、 コンテンツ製作または管理者が複数のマスター鍵を所有 して、 コンテンツの配信対象に応じた処理を実行する例について説明する。
コンテンツ製作または管理者におけるステップ S 5 1 1は、 コンテンツに対す る識別子 (コンテンツ I D ) を付与するステップである。 ステップ S 5 1 2は、 コンテンツ製作または管理者の有する複数のマスター鍵 (例えば複数の配送鍵生 成用マスター鍵 MK d i s ) から 1つのマスター鍵を選択するステップである。 この選択処理は図 5 2を用いてさらに説明するが、 コンテンツの利用者の国ごと 、 機種ごと、 あるいは機種のバージョンごとなどに対応付けて予め適用するマス ター鍵を設定しておき、 その設定に従って実行するものである。
次に、 ステップ S 5 1 3では、 ステップ S 5 1 2で選択したマスター鍵と、 ス テツプ S 51 1で決定したコンテンツ I Dとに基づいて暗号化用の鍵を生成する 。 これは例えば、 配送鍵 Kd i s iを生成する工程とすれば、 Kd i s i =DE S (MK d i s i, コンテンツ I D) によって生成する。 次に、 ステップ S 5 1 4はコンテンツの一部、 または全部を鏈 (例えば配送鍵 Kd i s i ) によって喑 号化するステップである。 コンテンツ製作者は、 ステップ S 51 5において、 コ ンテンッ I Dと、 使用したマスダー鍵識別情報と、 暗号化コンテンツを 1つの配 布単位として暗号化処理を行なったコンテンツを DVD等のメディア、 通信手段 等を介して配信する。
一方、 例えば記録再生器 300等のユーザデバイス側では、 ステップ S 51 6 において、 DVD等のメディア、 通信手段等を介して配信されたコンテンツデ一 タ中のマスタ一鍵識別情報に対応するマスター鍵を自己が所有するか否かについ て判定する。 コンテンツデータ中のマスタ一鍵識別情報に対応するマスター鍵を 持たない場合は、 その配布コンテンツは、 そのユーザデバイスにおいては利用で きないものであり、 処理は終了する。
配信されたコンテンツデータ中のマスタ一鍵識別情報に対応するマスター鍵を 自己が所有する場合は、 ステップ S 5 1 7において、 メディア、 通信手段等を介 して受領したコンテンツデータ中からコンテンツ I Dを読み出す。 次に、 ステツ プ S 5 1 8において、 読み出したコンテンツ I Dと所有するマスター鍵に基づい て暗号化コンテンツの復号に適用する鏈を生成する。 この生成処理は、 配送鍵 K d i s iを得るものである場合は、 例えば配送鍵 Kd i s i =DE S (MKd i s i, コンテンツ I D) となる。 ステップ S 5 1 9で、 この鍵を用いてコンテン ッを復号し、 ステップ S 520で復号コンテンツの利用、 すなわち再生またはプ ログラムを実行する。
この例においては、 図 5 1下段に示すように、 コンテンツ製作または管理者は 、 複数のマスター鍵、 例えば複数の配送鍵生成用マスター鍵 MK d i s l〜nか らなるマスター鍵セットを有する。 一方、 ユーザデバイスには 1つのマスター鍵 例えば 1つの配送鍵生成用マスター鍵 KK d i s iを有し、 コンテンツ製作また は管理者が MK d ' i s iを用いて暗号化処理している場合のみ、 ユーザデバイス は、 そのコンテンツを復号して利用することができる。
この図 5 1のフローに示す態様の具体例として、 国毎に異なるマスター鍵を適 用した例を図 5 2に示す。 コンテンツプロバイダは、 マスター鍵 ΜΚ 1〜ηを有 し、 MK 1は日本向けのユーザデバイスに配信するコンテンツの暗号化処理を実 行する鍵生成に用いる。 例えば、 コンテンツ I Dと MK 1から暗号化鍵 K 1を生 成して Κ 1によってコンテンツを暗号化する。 また、 ΜΚ 2は U S向けの ーザ デバイスに配信するコンテンッの暗号化処理を実行する鍵生成に用い、 MK 3は E U (ヨーロッパ) 向けのユーザデバイスに配信するコンテンツの暗号化処理を 実行する鍵生成に用いるよう設定している。
一方、 日本向けユーザデバイス、 具体的には日本で販売される P Cまたはゲー ム機器等の記録再生器には、 マスター鍵 MK 1がその内部メモリに格納され、 U S向けユーザデバイスには、 マスター鍵 MK 2がその内部メモリに格納され、 E U向けユーザデバイスには、 マスター鍵 MK 3がその内部メモリに格納されてい る。
このような構成において、 コンテンツプロバイダは、 コンテンツを利用可能な ユーザデバイスに応じて、 マスター鍵 MK 1〜nから、 マスター鍵を選択的に使 用してユーザデバイスに配信するコンテンッの暗号化処理を実行する。 例えばコ ンテンッを日本向けのユーザデバイスのみ利用可能とするためには、 マスター鍵 MK 1を用いて生成された鏈 K 1によってコンテンツを暗号化する。 この暗号化 コンテンツは、 日本向けユーザデバイスに格納されたマスター鍵 MK 1を用いて 復号可能、 すなわち復号鍵を生成可能であるが、 他の U S、 または E U向けのュ 一ザデバイスに格納されたマスター鍵 MK 2, M K 3からは鍵 K 1を得ることが できないので、 暗号化コンテンツの復号は不可能となる。
このように、 コンテンツプロバイダが複数のマスター鍵を選 ¾:尺的に使用するこ とにより、 様々なコンテンツの利用制限を設定することができる。 図 5 2では、 ユーザデバイスの国別にマスター鍵を区別する例を示したが、 前述のように、 ュ 一ザデバイスの機種に応じて、 あるいはバージョンに応じてマスター鍵を切り換 える等、 様々な利用形態が可能である。
次に、 図 53にメディア固有の識別子、 すなわちメディア I Dとマスター鍵を 組み合わせた処理例を示す。 ここで。 メディアとは例えば DVD、 CD等のコン テンッを格納したメディアである。 メディア I Dは、 1つ 1つのメディアごとに 固有としてもよいし、 たとえば、 映画などのコンテンツのタイトルごとに固有と してもよいし、 メディアの製造ロットごとに固有としてもよい。 このようにメデ ィァ I Dの割り当て方法としては様々な方法を用いることができる。
メディア製作または管理者におけるステップ S 521は、 メディアに対する識 別子 (メディア I D) を決定するステップである。 ステップ S 5 22は、 メディ ァ製作または管理者の有するマスター鍵とメディア I Dとに基づいてメディア内 の格納コンテンツ等を暗号化する鍵を生成するステップである。 これは例えば、 配送鍵 Kd i sを生成する工程とすれば、 前述の Kd i s =DE S (MKd i s , メディア I D) によって配送鍵 K d i sを生成する。 次に、 ステップ S 523 は、 メディア格納コンテンツの一部、 または全部を鍵 (例えば配送鍵 Kd i s ) によって暗号化するステップである。 メディア製作者は、 このようなステップを 経て暗号化処理を行なったコンテンツ格納メディアを供給する。
一方、 例えば記録再生器 300等のユーザデバイス側では、 ステップ S 5 24 において、 供給されたメディアからメディア I Dを読み出す。 次に、 ステップ S 525において、 読み出したメディア I Dと所有するマスター鍵に基づいて暗号 化コンテンツの復号に適用する鍵を生成する。 この生成処理は、 配送鍵 Kd i s を得るものである場合は、 例えば配送鍵 Kd i s =DE S (MKd i s, メディ ァ I D) となる。 ステップ S 526で、 この鍵を用いてコンテンツを復号し、 ス テツプ S 5 27で復号コンテンツの利用、 すなわち再生またはプログラムを実行 する。
この例においては、 図 53下段に示すように、 メディア製作または管理者と、 ユーザデバイスの双方がマスター鍵 (例えば配送鍵生成用マスター鍵 MKd i s ) を有し、 コンテンツの暗号化、 復号に必要な配送鍵を逐次的にそれぞれの所有 するマスター鍵と各 I D (メディア I D) に基づいて生成する。
このシステムでは、 万が一メディア鍵が第三者に漏洩した場合、 そのメディア 内のコンテンツの復号が第三者において可能となるが、 メディア I Dの異なる他 のメディアに格納されたコンテンツの復号は防止することが可能であるため、 1 つのメディァ鍵の漏洩がシステム全体に及ぼす影響を最小限にすることができる という効果がある。 また、 ユーザデバイス側、 すなわち記録再生器において、 メ ディア毎の鍵の対応付けリストを保持する必要がないという効果もある。 また、
1つのメディァ鍵で暗号化されるコンテンッサイズは、 そのメディア内に格納可 能な容量に制限されるため、 暗号文攻撃のために必要な情報量に達する可能性は 少なく、 暗号解読の可能性を低減させることができる。
次に、 図 54に記録再生器固有の識別子、 すなわち記録再生器 I Dとマスター 鍵を組み合わせた処理例を示す。
記録再生器利用者におけるステップ S 53 1は、 記録再生器の例えば内部メモ リに格納されたマスター鍵と記録再生器 I Dとに基づいてコンテンツ等を暗号化 する鍵を生成するステップである。 これは例えば、 コンテンツ鍵 Kc o nを生成 する工程とすれば、 Kc o n=DE S (MK c o n, 記録再生器 I D) によって コンテンツ鍵 Kc o nを生成する。 次に、 ステップ S 53 2は、 格納するコンテ ンッの一部、 または全部を鍵 (例えば配送鍵 Kc o n) によって暗号化するステ ップである。 ステップ S 533は、 暗号化コンテンツを例えばハードディスク等 の記録デバイスに格納する。
一方、 記録再生器を管理するシステム管理者側では、 コンテンツを格納した記 録再生器利用者から格納データの復旧を依頼されると、 ステップ S 534におい て、 記録再生器から、 記録再生器 I Dを読み出す。 次に、 ステップ S 53 5にお いて、 読み出した記録再生器 I Dと所有するマスター鍵に基づいて暗号化コンテ ンッの復号に適用する鍵を生成する。 この生成処理は、 コンテンツ鍵 Kc o nを 得るものである場合は、 例えばコンテンツ鍵 K c o n=DE S (MK c o n, 記 録再生器 I D ) となる。 ステップ S 5 3 6で、 この鍵を用いてコンテンツを復号 する。
この例においては、 図 5 4下段に示すように、 記録再生器利用者と、 システム 管理者の双方がマスター鍵 (例えばコンテンツ鍵生成用マスター鍵 MK c o n ) を有し、 コンテンツの暗号化、 復号に必要な配送鍵を逐次的にそれぞれの所有す るマスター鍵と各 I D (記録再生器 I D) に基づいて生成する。
このシステムでは、 万が一コンテンツ鍵が第三者に漏洩した場合、 その,コンテ ンッの復号が第三者において可能となるが、 記録再生器 I Dの異なる他の記録再 生器用に喑号化されたコンテンツの復号は防止することが可能であるため、 1つ のコンテンツ鍵の漏洩がシステム全体に及ぼす影響を最小限にすることができる という効果がある。 また、 システム管理側、 ユーザデバイス側両者において、 コ ンテンッ毎の鍵の対応付けリス トを保持する必要がないという効果もある。 図 5 5は、 スレーブデバイス、 例えばメモリカード等の記録デバイスと、 ホス トデバイス、 例えば記録再生器間における相互認証処理に用いる認証鏈をマスタ 一鍵に基づいて生成する構成である。 先に説明した認証処理 (図 2 0参照) では 、 スレーブデバイスの内部メモリに認証鍵を予め格納した構成としてあるが、 こ れを図 5 5に示すように認証処理時にマスター鍵に基づいて生成する構成とする ことができる。
例えば記録デバイスであるスレーブデバイスは、 認証処理開始前の初期化処理 として、 ステップ S 5 4 1において、 記録デバイスであるスレーブデバイスの内 部メモリに格納したマスター鍵とスレーブデバイス I Dとに基づいて相互認証処 理に用いる認証鍵 K a k eを生成する。 これは例えば、 K a k e = D E S (M K a k e, スレーブデバイス I D ) によって生成する。 次に、 ステップ S 5 4 2に おいて、 生成した認証鍵をメモリに格納する。
—方、 例えば記録再生器等のホストデバイス側では、 ステップ S 5 4 3におい て、 装着された記録デバイス、 すなわちスレーブデバイスから、 通信手段を介し てスレーブデバイス I Dを読み出す。 次に、 ステップ S 5 4 4において、 読み出 したスレーブデバイス I Dと所有する認証鍵生成用マスター鍵に基づいて相互認 証処理に適用する認証鍵を生成する。 この生成処理は、 例えば認証鍵 K a k e - D E S (MK a k e , スレーブデバイス I D ) となる。 ステップ S 5 4 5で、 こ の認証鍵を用いて認証処理を実行する。
この例においては、 図 5 5下段に示すように、 スレーブデバイスと、 マスター デバイスの双方がマスター鍵、 すなわち認証鍵生成用マスター鍵 MK a k eを有 し、 相互認証処理に必要な認証鍵を逐次的にそれぞれの所有するマスター鍵とス レーブデバイス I Dに基づいて生成する。
このシステムでは、 万が一認証鍵が第三者に漏洩した場合、 その認証鍵は、 そ のスレーブデバイスのみに有効であるため、 他のスレープデバイスとの関係にお いては、 認証が成立しないことになり、 鍵の漏洩によって発生する影響を最小限 にすることができるという効果がある。
このように、 本発明のデータ処理装置においては、 コンテンツプロバイダと記 録再生器、 あるいは記録再生器と記録デバィス間のような 2つのエンティティ間 における暗号情報処理に関する手続きに必要な鍵等の情報をマスター鍵と各 I D から逐次的に生成する構成とした。 従って、 鍵情報が各エンティティから漏洩し た場合でも、 個別の鍵による被害の範囲はより限定され、 また前述したような個 別のエンティティごとの鍵リストの管理も不要となる。
( 1 3 ) 喑号処理における暗号強度の制御
上述した実施例において、 記録再生器 3 0 0と記録デバイス 4 0 0間での喑号 処理は、 説明を理解しやすくするため、 主として、 先に図 7を用いて説明したシ ングル D E S構成による暗号処理を用いた例について説明してきた。 しかしなが ら、 本発明のデータ処理装置において適用される暗号化処理方式は上述したシン' ダル D E S方式に何ら限定されるものではなく、 必要なセキュリティ状態に応じ た暗号化方式を採用することが可能である。
例えば先に説明した図 8〜図 1 0の構成のようなトリプル D E S方式を適用し てもよい。 例えば図 3に示す記録再生器 3 0 0の暗号処理部 3 0 2と、 記録デバ イス 4 0 0の暗号処理部 4 0 1の双方において、 トリプル D E S方式を実行可能 な構成とし、 図 8〜図 1 0で説明したトリプル D E S方式による暗号処理に対応 する処理を実行する構成が可能である。
しかしながら、 コンテンツの提供者は、 コンテンツに応じて処理速度を優先し てコンテンツ鍵 K c o nをシングル D E S方式による 6 4ビット鍵構成とする場 合もあり、 また、 セキュリティを優先してコンテンツ鍵 K c o nをトリプル D E S方式による 1 2 8ビット、 または 1 9 2ビット鍵構成とする場合もある。 従つ て、 記録再生器 3 0 0の暗号処理部 3 0 2と、 記録デバイス 4 0 0の暗号処理部 4 0 1の構成をトリプル D E S方式、 シングル D E S方式いずれか一方の方式に のみ対応可能な構成とすることは好ましくない。 従って、 記録再生器 3 0 0の暗 号処理部 3 0 2と、 記録デバィス 4 0 0の暗号処理部 4 0 1は、 シングル D E S 、 トリプル D E Sいずれの方式にも対応可能とする構成が望ましい。
しかしながら、 記録再生器 3 0 0の暗号処理部 3 0 2と、 記録デバイス 4 0 0 の暗号処理部 4 0 1の暗号処理構成をシングル D E S方式、 トリプル D E S方式 の双方を実行可能な構成とするためには、 それぞれの別の回路、 ロジックを構成 しなければならない。 例えば、 記録デバイス 4 0 0においてトリプル D E Sに対 応する処理を実行するためには、 先の図 2 9に示すコマンドレジスタにトリプル D E Sの命令セットを新たに格納することが必要となる。 これは記録デバイス 4 0 0に構成する処理部の複雑化を招くこととなる。
そこで、 本発明のデータ処理装置は、 記録デバイス 4 0 0側の暗号処理部 4 0 1の有するロジックをシングル D E S構成として、 かつトリプル D E S暗号化処 理に対応した処理が実行可能で、 トリプル D E S方式による暗号化データ(鍵、 コンテンツ等)を記録デバイスの外部メモリ 4 0 2に格納することを可能とした 構成を提案する。
例えば図 3 2に示すデータフォーマツトタイプ 0の例において、 記録再生器 3 0 0から記録デバイス 4 0 0に対してコンテンツデータのダウンロードを実行す る際、 先に説明したフォーマツトタイプ 0のダウンロードのフローを示す図 3 9 のステップ S 1 0 1で認証処理を実行し、 ここでセッション鍵 K s e sを生成す る。 さらに、 ステップ S 1 1 7において、 記録再生器 3 0 0側の喑号処理部 3 0 2においてセッション鍵 K s e sによるコンテン 鍵 K c o nの暗号化処理が実 行され、 この暗号化鍵が記録デバイス 4 0 0に通信手段を介して転送され、 ステ ップ S 1 1 8において、 この暗号化鍵を受信した記録デバイス 4 0 0の暗号処理 部 4 0 3がセッション鍵 K s e sによるコンテンッ鍵 K c o nの復号処理を実行 し、 さらに、 保存鍵 K s t rによるコンテンツ鍵 K c o riの暗号化処理を実行し て、 これを記録再生器 3 0 0の暗号処理部 3 0 2に送信し、 その後、 記録再生器 3 0 0がデータフォーマットを形成 (ステップ S 1 2 1 ) してフォーマット化さ れたデータを記録デバィス 4 0 0に送信し、 記録デバィス 4 0 0が受信したデー タを外部メモリ 4 0 2に格納する処理を行なっている。
上記処理においてステップ S 1 1 7 , S 1 1 8間において実行される記録デバ イス 4 0 0の喑号処理部 4 0 1での暗号処理をシングル D E S、 またはトリプノレ D E Sいずれかの方式を選択的に実行可能な構成とすれば、 コンテンッ提供業者 がトリプル D E Sにしたがったコンテンツ鍵 K c o nを用いたコンテンツデータ を提供する場合も、 またシングル D E Sにしたがったコンテンツ鏈 K c o nを用 いたコンテンツデータを提供する場合も、 いずれの場合にも対応可能となる。 図 5 6に本発明のデータ処理装置における記録再生器 3 0 0の暗号処理部 3 0 2と、 記録デバイス 4 0 0の暗号処理部 4 0 1との双方を用いてトリプル D E S 方式に従った暗号処理方法を実行する構成を説明するフローを示す。 図 5 6では 、 一例として記録再生器 3 0 0からコンテンツデータを記録デバイス 4 0 0にダ ゥンロードする際に実行される保存鍵 K s t rを用いたコンテンツ鍵 K c ο ηの 暗号化処理例であり、 コンテンツ鍵 K c ο η力 Sトリプル D E S方式による鍵であ る場合の例を示している。 なお、 ここでは、 コンテンツ鍵 K c ο ηを代表して、 その処理例を示すが、 他の鍵、 またはコンテンツ等、 その他のデータについても 同様の処理が可能である。
トリプル D E S方式においては、 先の図 8〜1 0において説明したように、 シ ングル D E Sでは 6 4ビット鍵、 トリプル D E S方式による場合は、 1 2 8ビッ ト、 または 1 9 2ビット鍵構成として、 2つ、 または 3つの鍵が用いられる処理 である。 これら 3つのコンテンツ鍵をそれぞれ K c o n 1, K c o n 2 , ( K c o n 3 ) とする。 K c o n 3は用いられない場合もあるので、 かっこで示してい る。
図 5 6の処理について説明する。 ステップ S 3 0 1は記録再生器 3 0 0と、 記 録デバイス 4 0 0間での相互認証処理ステップである。 この相互認証処理ステツ プは、 先に説明した図 2 0の処理によって実行される。 なお、 この認証処理の際 、 セッション鍵 K s e sが生成される。
ステップ S 3 0 1の認証処理が終了すると、 ステップ S 3 0 2において、 各チ エック値、 チェック値 A, チェック値 B、 コンテンツチェック値、 総チェック値 、 各 I C Vの照合処理が実行される。
これらのチェック値 (I C V) 照合処理が終了し、 データ改竄がないと判定さ れると、 ステップ S 3 0 3に進み、 記録再生器 3 0 0において、 記録再生器暗号 処理部 3 0 2の制御部 3 0 6は、 記録再生器暗号処理部 3 0 2の暗号/複号化部 3 0 8を使って、 先に取り出したまたは生成した配送鍵 K d i sを用いて、 受信 したメディア 5 0 0、 または、 通信部 3 0 5を介して通信手段 6 0 0から受信し たデータのヘッダ部に格納されたコンテンツ鍵 K c o nの複号化処理を行う。 こ の場合のコンテンツ鍵は、 トリプル D E S方式による鍵であり、 コンテンツ鍵 K c o n 1 , K c o n 2 , ( K c o n 3 ) である。
次に、.ステップ S 3 0 4において、 記録再生器喑号処理部 3 0 2の制御部 3 0 6は、 記録再生器暗号処理部 3 0 2の暗号ノ復号化部 3 0 8において、 ステップ S 3 0 3で復号化したコンテンツ鍵 K c o n 1, K c o n 2 , ( K c o n 3 ) の 中のコンテンツ鍵 K c ο η 1のみを相互認証の際に共有しておいたセッション鍵 K s e sで暗号化する。
記録再生器 3 0 0の制御部 3 0 1は、 セッション鍵 K s e sで暗号化されたコ ンテンッ鍵 K c o n 1を含むデータを記録再生器 3 0 0の記録再生器暗号処理部 3 0 2から読み出し、 これらのデータを記録再生器 3 0 0の記録デバイスコント ローラ 3 0 3を介して記録デバイス 4 0 0に送信する。
次に、 ステップ S 3 0 5において、 記録再生器 3 0 0から送信されてきたコン テンッ鍵 K c o n 1を受信した記録デバイス 4 0 0は、 受信したコンテンツ鍵 K c o n 1を記録デバイス喑号処理部 4 0 1の暗号 復号化部 4 0 6に、 相互認証 の際に共有しておいたセッション鍵 K s e sで復号化する。 さらに、 ステップ S 3 0 6において、 記録デバイス暗号処理部 4 0 1の内部メモリ 4 0 5に保存して ある記録デバイス固有の保存鍵 K s t rで再暗号化させて、 通信部 4 0 4を介し て記録再生器 3 0 0に送信する。
次に、 ステップ S 3 0 7において、 記録再生器喑号処理部 3 0 2の制御部 3 0 6は、 記録再生器暗号処理部 3 0 2の暗号ノ復号化部 3 0 8において、 ステップ S 3 0 3で復号化したコンテンツ鍵 K c o n 1, K c o n 2 , ( K c o n 3 ) の 中のコンテンツ鍵 K c o n 2のみを相互認証の際に共有しておいたセッション鍵 K s e sで暗号化する。
記録再生器 3 0 0の制御部 3 0 1は、 セッション鍵 K s e sで暗号化されたコ ンテンッ鍵 K c o n 2を含むデータを記録再生器 3 0 0の記録再生器暗号処理部 3 0 2から読み出し、 これらのデータを記録再生器 3 0 0の記録デバイスコント ローラ 3 0 3を介して記録デバィス 4 0 0に送信する。
次に、 ステップ S 3 0 8において、 記録再生器 3 0 0から送信されてきたコン テンッ鍵 K c o n 2を受信した記録デバイス 4 0 0は、 受信したコンテンツ鍵 K c o n 2を記録デバイス暗号処理部 4 0 1の暗号 Z復号化部 4 0 6に、 相互認証 の際に共有しておいたセッション鍵 K s e sで複号化する。 さらに、 ステップ S 3 0 9において、 記録デバイス暗号処理部 4 0 1の内部メモリ 4 0 5に保存して ある記録デバイス固有の保存鍵 K s t rで再暗号化させて、 通信部 4 0 4を介し て記録再生器 3 0 0に送信する。
次に、 ステップ S 3 1 0において、 記録再生器喑号処理部 3 0 2の制御部 3 0 6は、 記録再生器喑号処理部 3 0 2の暗号 復号化部 3 0 8において、 S 3 0 3で復号化したコンテンツ鍵 K c o n 1, K c o n 2 , ( K c o n 3 ) の 中のコンテンツ鍵 K c o n 3のみを相互認証の際に共有しておいたセッション鍵 K s e sで暗号化する。
記録再生器 3 0 0の制御部 3 0 1は、 セッション鍵 K s e sで暗号化されたコ ンテンッ鍵 K c o n 3を含むデータを記録再生器 3 0 0の記録再生器暗号処理部 3 0 2から読み出し、 これらのデータを記録再生器 3 0 0の記録デバイスコント ローラ 3 0 3を介して記録デバイス 4 0 0に送信する。
次に、 ステップ S 3 1 1において、 記録再生器 3 0 0から送信されてきたコン テンッ鏈 K c o n 3を受信した記録デバイス 4 0 0は、 受信したコンテンツ鍵 K c o n 3を記録デバイス暗号処理部 4 0 1の喑号/複号化部 4 0 6に、 相互認証 の際に共有しておいたセッション鍵 K s e sで復号化する。 さらに、 ステップ S 3 1 2において、 記録デバイス喑号処理部 4 0 1の内部メモリ 4 0 5に保存して ある記録デバイス固有の保存鍵 K s t rで再暗号化させて、 通信部 4 0 4を介し て記録再生器 3 0 0に送信する。
次にステップ S 3 1 3において、 記録再生器の暗号処理部は、 図 3 2〜 3 5で 説明した各種のデータフォーマツトを形成して、 記録デバイス 4 0 0に送信する 最後にステップ S 3 1 4において、 記録デバイス 4 0◦は、 フォーマツト形成 が終了した受信データを外部メモリ 4 0 2に格納する。 このフォーマツトデータ には、 保存鍵 K s t rで暗号化されたコンテンツ鍵 K c o n 1, K c o n 2 , ( K c o n 3 ) を含んでいる。
このような処理を実行することにより、 記録デバイス 4 0 0に格納するコンテ ンッ鍵をトリプル D E S方式の暗号方式による鍵として格納することが可能とな る。 なお、 コンテンツ鍵が K c o n 1 , K c o n 2の 2つの鍵である場合は、 ス テツプ S 3 1 0〜S 3 1 2の処理は省略される。
このように、 記録デバイス 4 0 0は、 同じ態様の処理、 すなわちステップ S 3 0 5, S 3 0 6の処理ステップを複数回、 その対象を変更するのみで繰り返し実 行することにより、 トリプル D E Sの適用された鍵をメモリに格納可能となる。 コンテンツ鍵 K c o nがシングル D E Sの適用鍵である場合は、 ステップ S 3 0 5, S 3 0 6を実行して、 ステップ S 3 1 3のフォーマット化処理を実行してメ モリに格納すればよい。 このような構成は、 ステップ S 3 0 5 , S 3 0 6の処理 を実行するコマンドを先に説明した図 2 9のコマンドレジスタに格納し、 この処 理をコンテンツ鍵の態様、 すなわちトリプル D E S方式か、 シングル D E S方式 かによつて、 適宜 1回〜 3回実行する構成とすればよい。 従って、 記録デバイス 4 0 0の処理ロジック中にトリプル D E Sの処理方式を含ませることなく、 トリ プル D E S方式、 シングル D E S方式、 の双方の処理が可能となる。 なお、 喑号 化方式については、 コンテンツデータのヘッダ部内の取扱方針に記録し、 これを 参照することで判定することが可能である。
( 1 4 ) コンテンツデータにおける取扱方針中の起動優先順位に基づくプログ ラム起動処理
先に説明した図 4〜 6のコンテンッデータ構成から理解されるように、 本発明 のデータ処理装置において利用されるコンテンツデータのヘッダ部に格納された 取扱方針には、 コンテンツタイプ、 起動優先順位情報が含まれる。 本発明のデー タ処理装置における記録再生器 3 0 0は、 記録デバイス 4 0 0、 あるいは、 D V D、 C D、 ハードディスク、 さらにはゲームカートリッジ等の各種記録媒体に記 録されたアクセス可能なコンテンツデータが複数存在する場合、 これらコンテン ッの起動順位を起動優先順位情報に従って決定する。 ' 記録再生器 3 0 0は、 各記録デバイス D V D装置、 C Dドライブ装置、 ハード ディスクドライブ装置等各種記録デバイスとの認証処理を実行後、 コンテンツデ 一タ中の優先順位情報に従つて、 最も優先順位の高いコンテンツデータ中のプロ グラムを優先して実行する。 以下、 この 「コンテンツデータにおける取扱方針中 の起動優先順位に基づくプログラム起動処理」 について説明する。
上述した本発明のデータ処理装置実施例の説明においては、 記録再生器 3 0 0 が 1つの記録デバイス 4 0 0からコンテンツデータを再生、 実行する場合の処理 を中心として説明した。 しかし、 一般に記録再生器 3 0 0は、 図 2に示すように 記録デバイス 4 0 0の他に、 読み取り部 3 0 4を介して D V D、 C D、 ハードデ イスク、 さらに、 P I 0 1 1 1、 S I O 1 1 2を介して接続されるメモリカード 、 ゲームカートリッジ等、 各種記録媒体にアクセス可能な構成を有する。 なお、 図 2では、 図の複雑化を避けるため読み取り部 3 0 4を 1つのみ記載しているが 、 記録再生器 3 0 0は、 異なる記憶媒体、 例えば D V D、 C D、 フロッピーディ スク、 ハードディスクを並列に装着可能である。
記録再生器 3 0 0は、 複数の記憶媒体にアクセス可能であり、 それぞれの記憶 媒体にはそれぞれコンテンッデータが格納されている。 例えば C D等外部のコン テンップロバイダが供給するコンテンツデータは、 前述の図 4のデータ構成でメ ディアに格納され、 これらのメディアまたは、 通信手段を介してダウンロードし た場合には、 図 2 6、 図 2 7のコンテンツデータ構成でメモリカード等の各記憶 媒体に格納されている.。 さらに、 具体的には、 コンテンツデータのフォーマッ ト タイプに応じて図 3 2〜3 5に示すようにメディア上、 記録デバイス上でそれぞ れ異なるフォーマットで格納される。 しかし、 いずれの場合にもコンテンツデー タのヘッダ中の取扱方針にはコンテンツタイプ、 起動優先順位情報が含まれる。 これら、 複数のコンテンツデータに対するアクセスが可能な場合の記録再生器 のコンテンツ起動処理をフローに従って説明する。
図 5 7は、 起動可能コンテンツが複数ある場合の処理例 (1 ) を示す処理フロ 一である。 ステップ S 6 1 1は、 記録再生器 3 0 0がアクセス可能な記録デバィ スの認証処理を実行するステップである。 アクセス可能な記録デバイスには、 メ モリカード、 D V D装置、 C Dドライブ、 ハードディスク装置、 さらに、 例えば P I 0 1 1 1、 S I O 1 1 2を介して接続されるゲームカートリッジ等が含まれ る。 認証処理は、 図 2で示す制御部 3 0 1の制御のもとに各記録デバィスに対し て例えば先に図 2 0で説明した手順に従って実行される。
次に、 ステップ S 6 1 2おいて、 認証に成功した記録デバイス内のメモリに格 納されたコンテンツデータから起動可能なプログラムを検出する。 これは、 具体 的には、 コンテンツデータの取扱方針に含まれるコンテンツタイプがプログラム であるものを抽出する処理として実行される。
次に、 ステップ S 6 1 3において、 ステップ S 6 1 2で抽出された起動可能な プログラムにおける起動優先順位を判定する。 これは、 具体的には、 ステップ S 6 1 2において選択された複数の起動可能なコンテンツデータのヘッダ中の取扱 情報に含まれる優先情報を比較して最も高い優先順位を選択する処理である。 次にステップ S 6 1 4で選択されたプログラムを起動する。 なお、 複数の起動 可能なプログラムにおいて設定された優先順位が同じである場合には、 記録デバ ィス間でデフォルトの優先順位を設定し、 最優先されるデバイスに格納されたコ ンテンップログラムを実行する。
図 5 8には、 複数の記録デバイスに識別子を設定し、 各識別子の付された記録 デバイスについて順次、 認証処理、 コンテンツプログラム検索を実行する処理態 様、 すなわち起動可能コンテンツが複数ある場合の処理例 (2 ) を示した。 ステップ S 6 2 1では、 記録再生器 3 0 0に装着された記録デバイス ( i ) の 認証処理 (図 2 0参照) を実行するステップである。 複数 (n個) の記録デバィ スには 1(1頁次 1〜 nの識別子が付与されている。
' ステップ S 6 2 2では、 ステップ S 6 2 1での認証が成功したか否かを判定し 、 認証が成功した場合は、 ステップ S 6 2 3に進み、 その記録デバイス ( i ) の 記録媒体中から起動可能プログラムを検索する。 認証が成功しなかった場合は、 ステップ S 6 2 7に進み、 新たコンテンツ検索可能な記録デバイスの有無を判定 し、 無い場合は処理を終了し、 記録デバイスが存在する場合は、 ステップ S 6 2 8に進み記録デバイス識別子 iを更新し、 ステップ S 6 2 1以降の認証処理ステ ップを繰り返す。
ステップ S 6 2 3における処理は、 記録デバイス ( i ) に格納されたコンテン ッデータから起動可能なプログラムを検出する処理である。 これは、 具体的には 、 コンテンツデータの取扱方針に含まれるコン
ものを抽出する処理として実行される。 ステップ S 6 2 4では、 コンテンツタイプがプログラムであるものが抽出され たか否かを判定し、 抽出された場合は、 ステップ S 6 2 5において、 抽出プログ ラム中最も優先順位の高いものを選択し、 ステップ S 6 2 6において選択プログ ラムを実行する。
ステップ S 6 2 4において、 コンテンツタイプがプログラムであるものが抽出 されなかったと判定された場合には、 ステップ S 6 2 7に進み、 新たコンテンツ 検索な記録デバイスの有無を判定し、 無い場合は処理を終了し、 記録デバイスが 存在する場合は、 ステップ S 6 2 8に進み記録デバイス識別子 iを更新し、 ステ ップ S 6 2 1以降の認証処理ステップを繰り返す。
図 5 9は、 起動可能コンテンツが複数ある場合の処理例 (3 ) を示す処理フロ 一である。 ステップ S 6 5 1は、 記録再生器 3 0 0がアクセス可能な記録デバィ スの認証処理を実行するステップである。 アクセス可能な D V D装置、 C Dドラ イブ、 ハードディスク装置、 メモリカード、 ゲームカートリッジ等の認証処理を 実行する。 認証処理は、 図 2で示す制御部 3 0 1の制御のもとに各記録デバィス に対して例えば先に図 2 0で説明した手順に従って実行される。
次に、 ステップ S 6 5 2おいて、 認証に成功した記録デバイス内のメモリに格 納されたコンテンツデータから起動可能なプログラムを検出する。 これは、 具体 的には、 コンテンツデータの取扱方針に含まれるコンテンツタイプがプログラム であるものを抽出する処理として実行される。
次に、 ステップ S 6 5 3において、 ステップ S 6 5 2で抽出された起動可能な プログラムの名称等の情報を表示手段に表示する。 なお、 表示手段は図 2では示 されていないが、 A V出力データとして出力されたデータが図示しない表示手段 に出力される構成となっている。 なお、 各コンテンツデータのプログラム名等の ユーザ提供情報は、 コンテンツデータの識別情報中に格納されており、 図 2に示 すメイン C P U 1 0 6の制御のもとに制御部 3 0 1を介して認証済みの各コンテ ンッデータのプログラム名称等、 プログラム情報を出力手段に出力する。
次にステップ S 6 5 4では、 図 2に示す入力インタフェース、 コントローラ、 マウス、 キーボード等の入力手段からのユーザによるプログラム選択入力を入力 インタフェース 1 1 0を介してメイン C P U 1 0 6が受領し、 選択入力にしたが つて、 ステップ S 6 5 5においてユーザ選択プログラムを実行する。
このように本発明のデータ処理装置では、 コンテンツデータ中のヘッダ内の取 扱情報にプログラム起動優先順位情報を格納し、 記録再生器 3 0 0がこの優先順 位に従ってプログラムを起動する、 あるいは表示手段に起動プログラム情報を表 示してユーザによって選択する構成としたので、 ユーザがプログラムを検索する 必要がなく、 起動に要する時間おょぴユーザの労力を省くことが可能となる。 ま た、 起動可能なプログラムは、 すべて記録デバイスの認証処理後に起動、 または 起動可能プログラムであることの表示がなされるので、 プログラムを選択してか ら正当性の確認を行なう等の処理の煩雑性が解消される。
( 1 5 ) コンテンツ構成および再生 (伸長) 処理
本発明のデータ処理装置では、 上述した.ように記録再生器 3 0 0は、 メディア 5 0 0または通信手段 6 0 0からコンテンツをダウンロード、 あるいは記録デバ イス 4 0 0から再生処理を行う。 上記の説明は、 コンテンツのダウンロード、 あ るいは再生処理に伴う、 暗号化データの処理を中心として説明してきた。
図 3の記録再生器 3 0 0における制御部 3 0 1は、 コンテンツデータを提供す る D V D等のデバイス 5 0 0、 通信手段 6 0 0、 記録デバイスからのコンテンツ データのダウンロード処理、 または再生処理に伴う認証処理、 暗号化、 復号化処 理全般を制御する。
これらの処理結果として得られた再生可能なコンテンツは、 例えば音声データ 、 画像データ等である。 復号データは制御部 3 0 1から図 2に示すメイン C P U の制御下に置かれ、 音声データ、 画像データ等に応じて A V出力部に出力される 。 しかし、 コンテンツが例えば音声データであって M P 3圧縮がなされていれば 、 図 2に示す A V出力部の M P 3デコーダによって音声データの復号処理がなさ れて出力される。 また、 コンテンツデータが画像データであり、 M P E G 2圧縮 画像であれば、 A V処理部の M P E G 2デコーダによって伸長処理が実行されて 出力されることになる。 このように、 コンテンツデータに含まれるデータは、 圧 縮 (符号化) 処理がなされている場合もあり、 また圧縮処理の施されていないデ ータもあり、 コンテンツに応じた処理を施して出力する。
しかしながら、 圧縮処理、 伸長処理プログラムには、 様々な種類があり、 コン テンップロバイダから圧縮データを提供されても対応する伸長処理実行プロダラ ムが無い場合は、 これを再生することができないという事態が発生する。
そこで、 本発明のデータ処理装置は、 データコンテンツ中に、 圧縮データとそ の復号 (伸長) 処理プログラムを併せて格納する構成、 あるいは圧縮データと復 号 (伸長) 処理プログラムとのリンク情報をコンテンツデータのヘッダ情報とし て格納する構成を開示する。
図 2に示したデータ処理全体図から、 本構成に関する要素および関連要素を簡 潔にまとめた図を図 6 0に示す。 記録再生器 3 0 0は、 例えば D V D, C D等の デバイス 5 0 0、 または通信手段 6 0 0、 あるいはコンテンツを格納したメモリ カード等の記録デバイス 4 0 0から様々なコンテンツの提供を受ける。 これらの コンテンツは、 音声データ、 静止画像、 動画像データ、 プログラムデータ等であ り、 また暗号化処理の施されているもの、 施されていないもの、 また、 圧縮処理 がなされているもの、 なされていないもの等、 様々なデータが含まれる。
受領コンテンツが暗号化されている場合は、 すでに上述した項目中で説明した ような手法によって制御部 3 0 1の制御、 および暗号処理部 3 0 2の喑号処理に よって復号処理が実行される。 復号されたデータはメイン C P U 1 0 6の制御下 で、 A V処理部に 1 0 9に転送されて、 A V処理部 1 0 9のメモリ 3 0 9 0に格 納された後、 コンテンツ解析部 3 0 9 1においてコンテンツ構成の解析が実行さ れる。 例えばコンテンツ中にデータ伸長プログラムが格納されていれば、 プログ ラム記憶部 3 0 9 3にプログラムを格納し、 音声データ、 画像データ等のデータ が含まれていればこれらをデータ記憶部 3 0 9 2に記憶する。 伸長処理部 3 0 9 4では、 プログラム記憶部に記憶された例えば M P 3等の伸長処理プログラムを 用いてデータ記憶部 3 0 9 2に記憶された圧縮データの伸長処理を実行して、 ス ピー力 3 0 0 1、 モニタ 3 0 0 2に出力される。
次に、 A V処理部 1 0 9が制御部 3 0 1を介して受領するデータの構成および 処理のいくつかの例について説明する。 なお、 ここでは、 コンテンツの例として 音声データを示し、 また圧縮プログラムの例として M P 3を適用したものを代表 して説明するが、 本構成は、 音声データのみならず、 画像データにも適用できる ものであり、 また、 圧縮伸長処理プログラムについても M P 3のみならず、 M P E G 2 , 4等各種のプログラムを適用することが可能である。
図 6 1にコンテンツ構成例を示す。 図 6 1は M P 3によって圧縮された音楽デ ータ 6 1 0 2、 M P 3復号 (伸長) 処理プログラム 6 1 0 1を併せて 1つのコン テンッとして構成した例である。 これらのコンテンツは、 1コンテンツとしてメ ディア 5 0 0、 あるいは記録デバイス 4 0 0に格納され、 または通信手段 6 0 0 から配信される。 記録再生器 3 0 0は、 これらのコンテンツが先に説明した通り 、 暗号化されているものであれば、 喑号処理部 3 0 3によって復号処理を実行し た後、 A V処理部 1 0 9に転送される。
A V処理部 1 0 9のコンテンツ解析部 3 0 9 1では、 受け取ったコンテンツを 解析し、 音声データ伸長プログラム (M P 3デコーダ) 部と、 圧縮音声データ部 からなるコンテンツから、 音声データ伸長プログラム (M P 3デコーダ) 部を取 り出してプログラム記憶部 3 0 9 3にプログラムを記憶し、 圧縮音声データをデ ータ記憶部 3 0 9 2に記憶する。 なお、 コンテンツ解析部 3 0 9 1は、 コンテン ッとは別に受領したコンテンツ名、 コンテンッ構成情報等の情報を受領したり、 あるいはコンテンツ内に含まれるデ一タ名等の識別データ、 データ長、 データ構 成等を示すデータに基づいてコンテンツ解析を実行してもよい。 次に、 圧縮伸長 処理部 3 0 9 4は、 プログラム記憶部 3 0 9 3に記憶された音声データ伸長プロ グラム (M P 3デコーダ) に従ってデータ記憶部 3 0 9 2に記憶された M P 3圧 縮音声データの伸長処理を実行して、 A V処理部 1 0 9は伸長した音声データを スピーカ 3 0 0 1に出力する。
図 6 2に図 6 1のコンテンツ構成を持つデータの再生処理の一例を示すフロー を示す。 ステップ S 6 7 1は、 A V処理部 1 0 9のメモリ 3 0 9 0に格納された データ名、 例えば音楽データのコンテンツであれば曲名等の情報をコンテンツと は別に受領した情報、 あるいはコンテンツ内のデータから取り出し、 モニタ 3 0 0 2に表示する。 ステップ S 6 7 2は、 ユーザの選択をスィッチ、 キーボード等 の各種入力手段から入カインタフエース 1 1 0を介して受領し、 C P U 1 0 6の 制御のもとにユーザ入力データに基づく再生処理命令を A V処理部 1 0 9に出力 する。 A V処理部 1 0 9は、 ステップ S 6 7 3においてユーザ選択によるデータ の抽出、 伸長処理を実行する。
次に図 6 3に、 1つのコンテンツには圧縮音声データ、 あるいは伸長処理プロ グラムのいずれか一方が含まれ、 さらに各コンテンツのヘッダ情報としてコンテ ンッの内容を示すコンテンツ情報が含まれる構成例を示す。
図 6 3に示すように、 コンテンツがプログラム 6 2 0 2である場合は、 ヘッダ 情報 6 2 0 1としてプログラムであること、 およびプログラム種類が M P 3伸長 プログラムであることを示すコンテンツ識別情報が含まれる。 一方、 音声データ 6 2 0 4をコンテンツとして含む場合は、 ヘッダ 6 2 0 3のコンテンツ情報には M P 3圧縮データであるとの情報が含まれる。 このヘッダ情報は、 前述した例え ば図 4に示すコンテンツデータ構成の取扱方針 (図 5参照) 中に含まれるデータ から再生に必要な情報のみを選択して A V処理部 1 0 9へ転送するコンテンツに 付加して構成することが可能である。 具体的には、 図 5に示す 「取扱方針」 中の 各構成データに暗号処理部 3 0 2において必要となる取扱方針データと、 A V処 理部 1 0 9における再生処理時に必要となるデータとの識別値を付加し、 これら 識別値が、 A V処理部 1 0 9において必要であることを示すもののみを抽出して へッダ情報とすることができる。
図 6 3に示す各コンテンツを受領した A V処理部 1 0 9のコンテンツ解析部 3 0 9 1は、 ヘッダ情報に従って、 プログラムである場合はプログラムコンテンツ をプログラム記憶部 3 0 9 3に記憶し、 データである場合は、 データコンテンツ をデータ記憶部 3 0 9 2に記憶する。 その後、 圧縮伸長処理部 3 0 9 4は、 デ一 タ記憶部からデータを取り出して、 プログラム記憶部 3 0 9 3に記憶した M P 3 プログラムに従って伸長処理を実行して出力する。 なお、 プログラム記憶部 3 0 9 3にすでに同一プログラムが格納されている場合は、 プログラム格納処理は省 略してもよい。
図 6 4に図 6 3のコンテンツ構成を持つデータの再生処理の一例を示すフロー を示す。 ステップ S 6 7 5は、 A V処理部 1 0 9のメモリ 3 0 9 0に格納された データ名、 例えば音楽データのコンテンツであれば曲名等の情報をコンテンツと は別に受領した情報、 あるいはコンテンツ内のヘッダから取り出し、 モニタ 3 0 0 2に表示する。 ステップ S 6 7 6は、 ユーザの選択をスィッチ、 キーボード等 の各種入力手段から入力インタフェース 1 1 0を介して受領する。
次に、 ステップ S 6 7 7では、 ユーザ選択に対応するデータの再生用プログラ ム (例えば M P 3 ) を検索する。 このプログラム検索対象は、 記録再生機器 3 0 0のアクセス可能な範囲を最大検索範囲とすることが好ましく、 例えば図 6 0に 示す、 各メディア 5 0 0、 通信手段 6 0 0、 記録デバィス 4 0 0等も検索範囲と する。
A V処理部 1 0 9に渡されるコンテンツはデータ部のみであり、 プログラムコ ンテンッは記録再生器 3 0 0内の他の記録媒体に格納される場合もあり、 D V D 、 C D等のメディアを介してコンテンツ提供業者から提供されることもある。 従 つて、 検索対象を記録再生機器 3 0 0のアクセス格納な範囲を検索範囲とする。 検索の結果として再生プログラムが見つかると、 C P U 1 0 6の制御のもとにュ 一ザ入力データに基づく再生処理命令を A V処理部 1 0 9に出力する。 A V処理 部 1 0 9は、 ステップ S 6 7 9においてユーザ選択によるデータの抽出、 伸長処 理を実行する。 また、 別の実施例として、 プログラムの検索をステップ S 6 7 5 より前に行い、 ステップ S 6 7 5においては、 プログラムが検出されたデータの みを表示するようにしてもよい。
次に図 6 5に、 1つのコンテンツに圧縮音声データ 6 3 0 3、 伸長処理プログ ラム 6 3 0 2が含まれ、 さらにコンテンツのヘッダ情報 6 3 0 1としてコンテン ッの再生優先順位情報が含まれる構成例を示す。 これは、 先の図 6 1のコンテン ッ構成にヘッダ情報として再生優先順位情報を付加した例である。 これは、 前述 の 「(1 4 ) コンテンツデータにおける取扱方針中の起動優先順位に基づくプロ グラム起動処理」 と同様、 A V処理部 1 0 9が受領したコンテンツ間において設 定された再生優先順位に基づいて再生順を決定するものである。
図 6 6に図 6 5のコンテンツ構成を持つデータの再生処理の一例を示すフロー を示す。 ステップ S 6 8 1は、 A V処理部 1 0 9のメモリ 3 0 9 0に格納された データ、 すなわち再生対象データのデータ情報を検索リストに設定する。 検索リ ストは A V処理部 1 0 9内のメモリの一部領域を使用して設定する。 次に、 ステ ップ S 6 8 2において、 A V処理部 1 0 9のコンテンツ解析部 3 0 9 1において 検索リストから優先順位の高いデータを選択し、 ステップ S 6 8 3において、 選 択されたデータの再生処理を実行する。
次に図 6 7に、 1つのコンテンツにヘッダ情報とプログラムデータ 6 4 0 2、 あるいはヘッダ情報 6 4 0 3と、 圧縮データ 6 4 0 4のいずれかの組合せから成 る例において、 データコンテンツのへッ'ダ 6 4 0 3にのみ、 再生優先順位情報が 付加されている構成例を示す。
図 6 8に図 6 7のコンテンツ構成を持つデータの再生処理の一例を示すフロー を示す。 ステップ S 6 9 1は、 A V処理部 1 0 9のメモリ 3 0 9 0に格納された データ、 すなわち再生対象データのデータ情報を検索リストに設定する。 検索リ ストは A V処理部 1 0 9内のメモリの一部領域を使用して設定する。 次に、 ステ ップ S 6 9 2において、 A V処理部 1 0 9のコンテンツ解析部 3 0 9 1において 検索リストから優先順位の高いデータを選択する。
次に、 ステップ S 6 9 3では、 選択されたデータに対応するデータ再生用プロ グラム (例えば M P 3 ) を検索する。 このプログラム検索対象は、 先の図 6 4の フローにおける処理と同様、 記録再生機器 3 0◦のアクセス格納な範囲を最大検 索範囲とすることが好ましく、 例えば図 6 0に示す各メディア 5 0 0、 通信手段 6 0 0、 記録デバイス 4 0 0等も検索範囲とする。 検索の結果として再生プログラムが見つかる (ステップ S 6 9 4で Y e s ) と 、 ステップ S 6 9 5において、 選択されたデータを検索の結果得られたプログラ ムを用いて、 伸長再生処理を実行する。
一方、 検索結果としてプログラムが検出されなかった場合 (ステップ S 6 9 4 で Y e s ) は、 ステップ S 6 9 6に進み、 ステップ S 6 9 1で設定した検索リス ト中に含まれる他のデータにおいて、 同一のプログラムを用いた再生処理が必要 なものを削除する。 これは、 新たにそのデータに対する再生プログラム検索を実 行しても検出されないことが明らかであるからである。 さらに、 ステップ S 6 9 7において検索リストが空であるかを判定し、 からでない場合は、 ステップ S 6 9 2に戻り、 さらに次の優先順位の高いデータを抽出して、 プログラム検索処理 を実行する。
このように、 本構成によれば、 圧縮処理されたコンテンツは、 その復号 (伸長 ) プログラムと共に構成されるカ あるいはコンテンツが圧縮されたデータのみ 、 あるいは伸長処理プログラムのみである場合は、 それぞれのコンテンツにコン テンッがどのような圧縮データであるのか、 あるいはどのような処理を実行する かを示すヘッダ情報を有しているので、 コンテンツを受領した処理部 (例えば A V処理部) は、 圧縮データに付属する伸長処理プログラムを用いて伸長再生処理 を実行するか、 あるいは伸長処理プログラムを圧縮データのへッダ情報に基づレヽ て検索して、 検索の結果得られたプログラムにしたがって伸長再生処理を実行す るので、 ユーザによるデータの伸長プログラムの選択、 検索等の処理が不要とな りユーザ負担が軽減され、 効率的なデータ再生が可能となる。 さらに、 ヘッダに 再生優先順位情報を有した構成によれば、 再生順序を自動設定する構成が可能と なり、 ユーザによる再生順設定の操作を省略することができる。
なお、 上述の実施例では、 圧縮音声データコンテンツ、 および音声圧縮データ の伸長処理プログラムとしての M P 3を例として説明したが、 圧縮データを含む コンテンツ、 圧縮画像データの伸長処理プログラムを有するコンテンツであって も本構成は同様に適用可能であり、 同様の効果を奏するものである。 ( 1 6 ) セーブデータの生成おょぴ記録デバイスへの格納、 再生処理 本発明のデータ処理装置は、 例えば記録再生器 3 0 0において実行されるコン テンッがゲームプログラム等である場合等、 ゲームプログラムを途中で中断して 、 所定時間後、 新たに再開したい場合には、 その中断時点のゲーム状態等をセー ブ、 すなわち記録デバイスに格納し、 これを再開時に読み出してゲームを続行す ることが可能な構成を持つ。
従来のゲーム機器、 パソコン等め記録再生器におけるセーブデータ保存構成は 、 例えば記録再生器に内蔵、 あるいは外付け可能なメモリカード、 フロッピーデ イスク、 ゲームカートリッジ、 あるいはハードディスク等の記憶媒体にセーブデ ータを保存する構成を持つが、 特に、 そのセーブデータに対するセキュリティ碓 保構成を有しておらず、 例えばゲームアプリケーションプログラムに共通の仕様 でデータのセ一プ処理が行われる構成となっている。
従って、 例えばある 1つの記録再生器 Aを用いてセーブされたセーブデータが 別のゲームプログラムによって使用されたり、 書換えられたりする事態が発生し 、 従来、 セーブデータのセキュリティはほとんど考慮されていなかったのが実状 である。
本発明のデータ処理装置は、 このようなセーブデータのセキュリティ確保を実 現可能とした構成を提供する。 例えばあるゲームプログラムのセーブデータは、 そのゲームプログラムのみが使用可能な情報に基づいて暗号化して記録デバィス に格納する。 あるいは、 記録再生器固有の情報に基づいて暗号化して記録デバィ スに格納する。 これらの手法により、 セーブデータの利用を特定の機器、 特定の プログラムのみに制限することができ、 セーブデータのセキュリティが確保され る。 以下、 本発明のデータ処理装置における 「セーブデータの生成おょぴ記録デ バイスへの格納、 再生処理」 について説明する。
図 6 9に本発明のデータ処理装置におけるセーブデータ格納処理について説明 するプロック図を示す。 D V D, C D等のメディア 5 0 0、 あるいは通信手段 6 0 0からコンテンツが記録再生器 3 0 0に提供される。 提供されるコンテンツは 、 先に説明したようにコンテンツ固有の鍵であるコンテンツ鍵 K c o nによって 暗号化されており、 記録再生器 3 0 0は、 前述した 「(7 ) 記録再生器から記録 デバイスへのダウンロード処理」 の欄で説明 (図 2 2参照) した処理に従ってコ ンテンッ鍵を取得して、 暗号化コンテンツを復号した後、 記録デバイス 4 0 0に 格納する。 ここでは、 記録再生器 3 0 0がコンテンツプログラムをメディア、 通 信手段から復号して再生.、 実行を行ない、 実行の後、 得られるセーブデータを外 付け、 あるいは内蔵のメモリカード、 ハードディスク等の各種の記録デバイス 4 0 0 A、 4 0 0 B、 4 0 0 Cのいずれかに格納し、 .再生する処理、 あるいはコン テンッを記録デバイス 4 0 0 A'にダウンロードした後、 記録デバイス 4 0 O Aか らコンテンツを再生、 実行して、 そのセーブデータを外付け、 あるいは内蔵のメ モリカード、 ハードディスク等の各種の記録デバイス 4 0 0 A、 4 0 0 B、 4 0 0 Cのいずれかに格納する処理記録デバイス 4 0 0に格納し、 再生する処理につ いて説明する。
記録再生器 3 0 0には、 先に説明したように記録再生器識別子 I D d e v、 シ ステムに共通な署名鍵であるシステム署名鍵 K s y s、 個々の記録再生器に固有 の署名鍵である記録再生器署名鍵 K d e v、 さらに各種の個別鍵を生成するマス タ鍵を有する。 マスタ鍵については、 「(1 2 ) マスタ鍵に基づく暗号処理鍵生成 構成」 において、 詳しく説明した通り、 例えば、 配送鍵 K d i s、 あるいは認証 鍵 K a k e等を生成する鍵である。 ここでは、 特にマスタ鍵の種類を限定するこ となく記録再生器 3 0 0の有するマスタ鍵全般を代表するものとして M K xとし て示す。 図 6 9の下段には、 セーブデータの喑号鍵 K s a vの例を示した。 セー プデータ喑号鍵 K s a Vは、 セーブデータを各種記録デバイス 4 0 0 A〜Cに格 納する場合の暗号化処理、 そして、 各種記録デバイス 4 0 0 A〜Cから再生する 際の復号処理に用いられる暗号鍵である。 図 7 0以下を用いて、 セ一プデータの 格納処理および再生処理の例を説明する。
図 7 0は、 コンテンツ個有鍵、 システム共通鍵のいずれかを用いてセーブデー タを記録デバイス 4 0 O A〜Cいずれかに格納する処理のフロー図である。 なお 、 各フローにおける処理は記録再生器 3 0 0が実行する処理であり、 各フローで セーブデータを格納する記録デバイスは内蔵、 外付け記録デバイス 4 0 0 A〜C のいずれかであればよく、 いずれかに限定さるものではない。
ステップ S 7 0 1は、 コンテンツ識別子、 例えばゲーム I Dを記録再生器 3 0 0が読み出す処理である。 これは、 先に説明した図 4、 2 6、 2 7、 3 2〜3 5 に示すコンテンツデータ中の識別情報に含まれるデータであり、 セープデータの 格納処理命令を図 2に示す入力インタフェース 1 1 0を介して受領したメイン C P U 1 0 6がコンテンツ識別子の読み取りを制御部 3 0 1に指示する。
制御部 3 0 1は、 実行プログラムが D V D、 C D— R OM等、 読取部 3 0 4を 介して実行されているコンテンツの場合は、 読取部 3 0 4を介してコンテンツデ ータ中のヘッダに含まれる識別情報を取り出し、 実行プログラムが、 記録デバィ ス 4 0 0に格納されたコンテンツである場合は、 記録デバイスコントローラ 3 0 3を介して識別情報を取り出す。 なお、 記録再生器 3 0 0がコンテンツプロダラ ムを実行中で、 すでに記録再生器中の R AM、 その他のアクセス可能な記録媒体 にコンテンツ識別子が格納済みである場合は、 新たな読み取り処理を実行せずに
、 読み込み済みデータに含まれる識別情報を利用してもよい。
次に、 ステップ S 7 0 2は、 プログラムの使用制限を行なうか否かによって処 理を変更するステップである。 プログラム使用制限とは、 保存するセーブデータ をそのプログラムのみに固有に利用可能とする制限を付するか否かを設定する制 限情報であり、 プログラムのみに固有に利用可能とする場合は、 「プログラム使 用制限あり」 とし、 プログラムに利用を拘束されないセーブデータとする場合を 「プログラム使用制限なし」 とする。 これは、 ユーザが任意に設定できるように してもよいし、 コンテンツ製作者が設定して、 この情報をコンテンツプログラム 中に格納しておいてもよく、 設定された制限情報は、 図 6 9の記録デバイス 4 0 0 A〜Cにデ一タ管理ファイルとして格納される。
データ管理ファイルの例を図 7 1に示す。 データ管理ファイルは項目としてデ ータ番号、 コンテンツ識別子、 記録再生器識別子、 プログラム使用制限を含むテ 一プルとして生成される。 コンテンツ識別子は、 セーブデータを格納する対象と なったコンテンツプログラムの識別データである。 記録再生器識別子は、 セーブ データを格納した記録再生器の識別子、 例えば図 6 9に示す [ I D d e V ] であ る。 プログラム使用制限は、 上述したように保存するセーブデータをそのプログ ラムのみに固有に利用可能とす場合、 「する」 の設定とし、 対応プログラムに制 限されない利用を可能とする場合「しない」の設定となる。 プログラム使用制限は 、 コンテンツプログラムを利用するユーザが任意に設定できるようにしてもよい し、 コンテンツ製作者が設定して、 この情報をコンテンツプログラム中に格納し ておいてもよい。
図 7 0に戻り、 フローの説明を続ける。 ステップ S 7 0 2において、 プログラ ム使用制限について 「する」 の設定がされている場合は、 ステップ S 7 0 3に進 む。 ステップ S 7 0 3では、 コンテンツデータからコンテンツ固有の鍵、 例えば 先に説明したコンテンツ鍵 K c o nを読み出してコンテンツ固有鍵をセーブデ一 タ暗号鍵 K s a Vとするか、 あるいはコンテンツ固有鍵に基づいてセーブデータ 喑号鍵 K s a Vを生成する。
一方、 ステップ S 7 0 2において、 プログラム使用制限について 「しない」 の 設定がされている場合は、 ステップ S 7 0 7に進む。 ステヅプ S 7 0 7では、 記 録再生器 3 0 0内に格納されたシステム共通鍵、 例えばシステム署名鍵 K s y s を記録再生器 3 0 0の内部メモリ 3 0 7から読み出して、 システム署名鍵 K s y sをセーブデータ暗号鍵 K s a Vとするか、 あるいはシステム署名鍵に基づいて セーブデータ暗号鍵 K s a Vを生成する。 または、 別途、 記録再生器 3 0 0の内 部メモリ 3 0 7内に保存しておいた、 他の鍵とは別の暗号鍵をセーブデータ暗号 鍵 K s a Vとして使用してもよい。
次に、 ステップ S 7 0 4において、 ステップ S 7 0 3、 またはステップ S 7 0 7で選択、 または生成されたセーブデータ暗号化鍵 K s a Vを用いてセーブデー タの暗号化処理を実行する。 この暗号化処理は、 図 2における喑号処理部 3 0 2 が例えば前述の D E Sアルゴリズムを適用して実行する。 ステップ S 7 0 4において暗号化処理されたセーブデータは、 ステップ S 7 0 5において記録デバイスに格納される。 セーブデータを格納可能な記録デバイス が図 6 9に示すように複数ある場合は、 ユーザが記録デバイス 4 0 0 A〜Cのい ずれかをセーブデータ格納先として予め選択する。 さらに、 ステップ S 7 0 6に おいて先に図 7 1を用いて説明したデータ管理ファイルに先にステップ S 7 0 2 で設定したプログラム使用制限情報の書き込み、 すなわちプログラム使用制限 「 する」 または 「しない」 の書き込みを実行する。
以上で、 セーブデータの格納処理が終了する。 ステップ S 7 0 2において Y e s、 すなわち 「プログラム使用制限する」 の選択がなされ、 ステップ S 7 0 3に おいてコンテンツ固有鍵に基づいて生成されたセーブデータ暗号化鍵 K s a Vに よって暗号化処理されたセープデータは、 コンテンツ固有鍵情報を持たないコン テンップログラムによる復号処理が不可能となり、 セーブデータは同じコンテン ッ鍵情報を有するコンテンップログラムのみが利用できることになる。 ただし、 ここでは、 セーブデータ暗号化鍵 K s a Vは記録再生器固有の情報に基いて生成 されたものではないので、 例えばメモリカード等の着脱可能な記録デバイスに格 納されたセーブデータは異なる記録再生器においても対応するコンテンツプログ ラムと共に使用する限り再生可能となる。
また、 ステップ S 7 0 2において N o、 すなわち 「プログラム使用制限しない 」 の選択がなされ、 ステップ S 7 0 7においてシステム共通鍵に基づくセーブデ ータ暗号化鍵 K s a vによって暗号化処理されたセーブデータは、 コンテンツ識' 別子が異なるプログラムを用いた場合でも、 また、 記録再生器が異なっていた場 合でも再生して利用することが可能となる。
図 7 2は、 図 7 0のセーブデータ格納処理によって格納されたセーブデータを 再生する処理を示したフローである。
ステップ S 7 1 1は、 コンテンツ識別子、 例えばゲーム I Dを記録再生器 3 0 0が読み出す処理である。 これは、 先に説明した図 7 0のセーブデータ格納処理 のステップ S 7 0 1と同様の処理であり、 コンテンツデータ中の識別情報に含ま れるデータを読み出す処理である。
次に、 ステップ S 7 1 2では、 図 6 9に示す記録デバイス 4 0 O A〜 から、 図 7 1を用いて説明したデータ管理ファイルを読み出し、 ステップ S 7 1 1にお いて読み出したコンテンツ識別子、 および対応して設定された使用プログラム制 限情報を抽出する。 データ管理ファイルに設定されたプログラム使用制限が 「す る」 であった場合は、 ステップ S 7 1 4に進み、 「しない」 であった場合には、 ステップ S 7 1 7に進む。
ステップ S 7 1 4では、 コンテンツデータからコンテンツ固有の鍵、 例えば先 に説明したコンテンツ鍵 K c o nを読み出してコンテンツ固有鍵をセーブデータ 復号化鍵 K s a Vとするか、 あるいはコンテンツ固有鍵に基づいてセーブデータ 復号化鍵 K s a Vを生成する。 この復号化鍵生成処理は、 暗号化鍵生成処理に対 応する処理アルゴリズムが適用され、 あるコンテンツ固有鍵に基づいて暗号化さ れたデータは、 同一のコンテンツ固有鍵に基づいて生成された復号鍵によって復 号可能なものとなる複号化鍵生成アルゴリズムが適用される。
一方、 ステップ S 7 1 2において、 データ管理ファイルの設定がプログラム使 用制限について 「しない」 の設定であった場合は、 ステップ S 7 1 7において、 記録再生器 3 0 0内に格納されたシステム共通鍵、 例えばシステム署名鍵 K s y sを記録再生器 3 0 0の内部メモリ 3 0 7から読み出して、 システム署名鍵 K s y sをセーブデータ複号化鍵 K s a Vとするか、 あるいはシステム署名鍵に基づ いてセーブデータ複号化鍵 K s a Vを生成する。 または、 別途、 記録再生器 3 0 0の内部メモリ 3 0 7内に保存しておいた、 他の鍵とは別の暗号鍵をセーブデー タ暗号鍵 K s a Vとして使用してもよい。
次に、 ステップ S 7 1 5において、 ステップ S 7 1 4、 またはステップ S 7 1 7で選択、 または生成されたセーブデータ複号化鍵 K s a Vを用いてセーブデー タの復号化処理を実行し、 ステップ S 7 1 6において、 復号したセーブデータを 記録再生器 3 0 0において再生、 実行する。
以上で、 セーブデータの再生処理が終了する。 上述のようにデータ管理フアイ ルに 「プログラム使用制限する」 の設定がなされている場合は、 コンテンツ固有 鍵に基づいてセーブデータ複号化鍵が生成され、 「プログラム使用制限しない」 の設定がある場合はシステム共通鍵に基づいてセーブデータ復号化鍵が生成され る。 「プログラム使用制限する」 の設定がされている場合、 使用しているコンテ ンッのコンテンツ識別子が同じものでないとセーブデータの復号処理の可能な復 号化鏈を得ることができないこととなり、 セーブデータのセキュリティを高める ことが可能となる。
図 7 3、 図 7 4は、 コンテンツ識別子を用いてセーブデータの暗号化鍵、 復号 化鍵を生成するセーブデータ格納処理フロー (図 7 3 )、 セーブデータ再生処理 フロー (図 7 4 ) である。
図 7 3において、 ステップ S 7 2 1〜S 7 2 2は、 図 7 0のステップ S 7 0 1 ~ S 7 0 2と同様の処理であり、 説明を省略する。
図 7 3のセ"プデータ格納処理フローは、 ステップ S 7 2 2において 「プログ ラム使用制限する」 の設定を行なった場合、 ステップ S 7 2 3においてコンテン ッデータからコンテンツ識別子、 すなわちコンテンツ I Dを読み出してコンテン ッ I Dをセーブデータ暗号化鍵 K s a Vとするか、 あるいはコンテンツ I Dに基 づいてセーブデータ暗号化鍵 K s a vを生成する。 例えば、 記録再生器 3 0 0の 暗号処理部 3 0 7はコンテンツデータから読み出したコンテンツ I Dに、 記録再 生器 3 0 0の内部メモリに格納されたマスター鍵 MK xを適用して、 例えば D E S (MK x, コンテンツ I D ) によってセーブデータ暗号化鍵 K s a Vを得るこ とができる。 または、 別途、 記録再生器 3 0 0の内部メモリ 3 0 7内に保存して おいた、 他の鍵とは別の暗号鍵をセーブデータ暗号鍵 K s' a Vとして使用しても よい。
一方、 ステップ S 7 2 2において、 プログラム使用制限について 「しない」 の 設定とした場合は、 ステップ S 7 2 7において、 記録再生器 3 0 0内に格納され たシステム共通鍵、 例えばシステム署名鍵 K s y sを記録再生器 3 0 0の内部メ モリ 3 0 7から読み出して、 システム署名鍵 K s y sをセーブデータ暗号化鍵 K s a vとするか、 あるいはシステム署名鍵に基づいてセーブデータ暗号化鍵 K s a vを生成する。 または、 別途、 記録再生器 3 0 0の内部メモリ 3 0 7内に保存 しておいた、 他の鍵とは別の喑号鍵をセーブデータ暗号鍵 K s a Vとして使用し てもよい。
ステップ S 7 2 4以下の処理は、 前述の図 7 0の処理フローにおけるステップ S 7 0 4以下の処理と同様であり、 説明を省略する。
さらに、 図 7 4は、 図 7 3のセーブデータ格納処理フローで記録デバイスに格 納されたセーブデータを再生、 実行する処理フローであり、 ステップ S 7 3 1〜 S 7 3' 3は前述の図 7 2の対応処理と同様であり、 ステップ S 7 3 4のみが異な る。 ステップ S 7 3 4においては、 コンテンツデータからコンテンツ識別子、 す なわちコンテンツ I Dを読み出してコンテンツ I Dをセーブデータ復号化鍵 K s a Vとするか、 あるいはコンテンツ I Dに基づいてセーブデータ復号化鍵 K s a Vを生成する。 この複号化鍵生成処理は、 暗号化鍵生成処理に対応する処理アル ゴリズムが適用され、 あるコンテンツ識別子に基づいて暗号化されたデータは、 同一のコンテンツ識別子に基づいて生成された復号鍵によって復号可能なものと なる復号化鍵生成アルゴリズムが適用される。
以下の処理、 ステップ S 7 3 5、 S 7 3 6、 S 7 3 7は、 図 7 2の対応処理と 同様であるめで説明を省略する。 図 7 3、 図 7 4のセーブデータ格納おょぴ再生 処理に従えば、 プログラム使用制限するの設定を行なった場合、 コンテンツ I D を使用してセーブデータ暗号化鍵、 復号化鍵を生成する構成としたので、 先のコ ンテンッ固有鍵を使用したセーブデータ格納、 再生処理と同様、 対応するコンテ ンップログラムが整合する場合以外は、 セ一プデータを利用することができない 構成となり、 セーブデータセキュリティを高めた保存が可能となる。
図 7 5、 図 7 7は、 記録再生器固有鍵を用いてセーブデータの暗号化鍵、 復号 化鍵を生成するセーブデータ格納処理フロー (図 7 5 )、 セーブデータ再生処理 フロー (図 7 7 ) である。
図 7 5において、 ステップ S 7 4 1は、 図 7 0のステップ S 7 0 1と同様の処 理であり、 説明を省略する。 ステップ S 7 4 2は、 記録再生器の制限をするかし ないかを設定するステップである。 記録再生器制限は、 セーブデータを利用可能 な記録再生器を限定する場合、 すなわちセーブデータを生成し格納した記録再生 器にのみ利用可能とする場合を 「する」 と設定し、 他の記録再生器でも利用可能 とする場合を 「しない」 の設定とするものである。 ステップ S 7 4 2において Γ 記録再生器制限する」 の設定をすると、 ステップ S 7 4 3に進み、 「しない」 の 設定をするとステップ S 7 4 7に進む。
データ管理ファイルの例を図 7 6に示す。 データ管理ファイルは項目としてデ ータ番号、 コンテンツ識別子、 記録再生器識別子、 記録再生器制限を含むテープ ルとして生成される。 コンテンツ識別子は、 セーブデータを格納する対象となつ たコンテンツプログラムの識別データである。 記録再生器識別子は、 セーブデー タを格納した記録再生器の識別子、 例えば図 6 9に示す [ I D d e v ] である。 記録再生器制限は、 セーブデータを利用可能な記録再生器を限定する場合、 すな わちセーブデータを生成し格納した記録再生器にのみ利用可能とする場合を 「す る」 と設定し、 他の記録再生器でも利用可能とする場合を 「しない」 の設定とす るものである。 記録再生器制限情報は、 コンテンツプログラムを利用するユーザ が任意に設定できるようにしてもよいし、 コンテンツ製作者が設定して、 この情 報をコンテンツプログラム中に格納しておいてもよい。
図 7 5のセーブデータ格納処理フローにおいては、 ステップ S 7 4 2において 「記録再生器制限する」 の設定を行なった場合、 ステップ S 7 4 3において記録 再生器 3 0 0から記録再生器固有鍵、 例えば記録再生器署名鍵 K d e vを記録再 生器 3 0 0の内部メモリ 3 0 7から読み出して記録再生器署名鍵 K d e vをセー ブデータ暗号化鍵 K s a Vとするか、 あるいは記録再生器署名鍵 K d e vに基づ いてセーブデータ暗号化鍵 K s a Vを生成する。 または、 別途、 記録再生器 3 0 0の内部メモリ 3 0 7内に保存しておいた、 他の鍵とは別の喑号鏈をセーブデー タ喑号鍵 K s a Vとして使用してもよい。
—方、 ステップ S 7 4 2において、 記録再生器制限について 「しない」 の設定 とした場合は、 ステップ S 7 4 7において、 記録再生器 3 0 0内に ^納されたシ ステム共通鍵、 例えばシステム署名鍵 K s y sを記録再生器 3 0 0の内部メモリ 3 0 7から読み出して、 システム署名鍵 K s y sをセーブデータ暗号化鍵 K s a vとするか、 あるいはシステム署名鍵に基づいてセーブデータ暗号化鍵 K s a V を生成する。 または、 別途、 記録再生器 3 0 0の内部メモリ 3 0 7内に保存して おいた、 他の鍵とは別の喑号鍵をセーブデータ暗号鍵 K s a v.として使用しても よい。
ステップ S 7 4 4、 S 7 4 5の処理は、 前述の図 7 0の処理フローにおける対 応処理と同様であり、 説明を省略する。
ステップ S 7 4 6では、 データ管理ファイル (図 7 6参照) にコンテンツ識別 子、 記録再生器識別子、 そしてステップ 7 4 2でユーザが設定した記録再生器制 限情報 「する/しない」 を書き込む。
さらに、 図 7 7は、 図 7 5のセーブデータ格納処理フローで記録デバイスに格 納されたセーブデータを再生、 実行する処理フローであり、 ステップ S 7 5 1は 前述の図 7 2の対応処理と同様、 コンテンツ識別子を読み出す。 次に、 ステップ S 7 5 2においては、 記録再生器 3 0 0内のメモリに格納された記録再生器識別 子 (,I D d e V ) を読み出す。
ステップ S 7 5 3では、 データ管理ファイル (図 7 6参照) からコンテンツ識 別子、 記録再生器識別子、 設定済みの記録再生器制限情報 「する Zしない」 の各 情報を読み出す。 データ管理ファイル中のコンテンツ識別子が一致するェントリ において、 記録再生器制限情報が 「する」 に設定されている場合、 テーブルェン トリの記録再生器識別子がステップ S 7 5 2で読み取られた記録再生器識別子と 異なる場合は処理を終了する。
次に、 ステップ S 7 5 4でデータ管理ファイルの設定が 「記録再生器制限する 」 である場合は、 ステップ S 7 5 5に進み、 「しない」 である場合は、 ステップ S 7 5 8に進む。
ステップ S 7 5 5においては、 記録再生器 3 0 0から記録再生器固有鍵、 例え ば記録再生器署名鍵 K d e vを記録再生器 3 0 0の内部メモリ 3 0 7から読み出 して記録再生器署名鍵 K d e vをセーブデータ複号化鍵 K s a vとするカ ある いは記録再生器署名鍵 K d e vに基づいてセーブデータ復号化鍵 K s a vを生成 する。 この復号化鍵生成処理は、 暗号化鍵生成処理に対応する処理アルゴリズム が適用され、 ある記録再生器固有鍵に基づいて暗号化されたデータは、 同一の記 録再生器固有鍵に基づいて生成された復号鍵によって復号可能なものとなる復号 化鍵生成アルゴリズムが適用される。 または、 別途、 記録再生器 3 0 0の内部メ モリ 3 0 7内に保存しておいた、 他の鍵とは別の暗号鍵をセーブデータ暗号鍵 K s a Vとして使用してもよい。
一方ステップ S 7 5 8においては、 記録再生器 3 0 0内に格納されたシステム 共通鍵、 例えばシステム署名鍵 K s y sを記録再生器 3 0 0の内部メモリ 3 0 7 から読み出して、 システム署名鍵 K s y sをセーブデータ復号化鍵 K s a Vとす るか、 あるいはシステム署名鍵に基づいてセーブデータ復号化鍵 K s a Vを生成 する。 または、 別途、 記録再生器 3 0 0の内部メモリ 3 0 7內に保存しておいた 、 他の鍵とは別の暗号鍵をセーブデータ暗号鍵 K s a Vとして使用してもよい。 以下のステップ S 7 5 6 , S 7 5 7は、 前述のセーブデータ再生処理フローの対 応ステップと同様の処理である。
図 7 5、 図 7 7に示すセーブデータ格納、 再生処理フローによれば、 「記録再 生器制限する」 の選択がなされたセーブデータは、 記録再生器固有鍵によって暗 号化、 複号化処理が実行されるため、 同一の記録再生器個有鍵を持つ記録再生器 、 すなわち同一の記録再生器によってのみ復号して利用することが可能となる。 次に、 図 7 8、 図 7 9に記録再生器識別子を用いてセーブデータの暗号化、 復 号化鍵を生成して格納、 再生する処理フローを示す。 ' 図 7 8は、 記録再生器識別子を用いてセーブデータの暗号化を行い記録デバィ スに格納する。 ステップ S 7 6 1〜S 7 6 3は、 先の図 7 5と同様の処理である 。 ステップ S 7 6 4では、 記録再生器から読み出した記録再生器識別子 (I D d e v ) を用いてセーブデータの暗号化鍵 K s a vを生成する。 I D d e vをセー ブデータ暗号化鍵 K s a vとして適用するか、 あるいは記録再生器 300の内部 メモリに格納されたマスター鍵 MK Xを適用して、 DES (MK X , I D d e V ) によってセーブデータ暗号化鍵 K s a vを得る等、 I Dd e vに基づいてセー ブデータ暗号化鍵 k s a vを生成する。 または、 別途、 記録再生器 300の内部 メモリ 307内に保存しておいた、 他の鍵とは別の暗号鍵をセーブデータ暗号鍵 K s a Vとして使用してもよい。
以下の処理ステップ S 765〜S 768は、 前述の図 75の対応処理と同様で あり、 説明を省略する。
図 79は、 図 78の処理によって記録デバイスに格納されたセーブデータを再 生、 実行する処理フローである。 ステップ S 77 1〜S 774は、 前述の図 77 の対応処理と同様である。
ステップ S 775では、 記録再生器から読み出した記録再生器識別子 (I D d e V) を用いてセーブデータの復号化鍵 K s a vを生成する。 I Dd e vをセー プデータ複号化鍵 K s a Vとして適用するか、 あるいは記録再生器 300の内部 メモリに格納されたマスター鍵 MK Xを適用して、 DES (MKx, I D d e v ) によってセーブデータ復号化鍵 K s a vを得る等、 I Dd e vに基づいてセー ブデータ復号化鍵 K s a Vを生成する。 この複号化鍵生成処理は、 暗号化鍵生成 処理に対応する処理アルゴリズムが適用され、 ある記録再生器識別子に基づいて 暗号化されたデータは、 同一の記録再生器識別子に基づいて生成された復号鍵に よって復号可能なものとなる復号化鍵生成アルゴリズムが適用される。 または、 別途、 記録再生器 300の内部メモリ 307内に保存しておいた、 他の鍵とは別 の暗号鍵をセーブデータ暗号鍵 K s a Vとして使用してもよい。
以下の処理ステップ S 776〜S 778は前述の図 76の対応ステップの処理 と同様である。
この図 78、 図 7 9に示すセーブデータ格納、 再生処理フローによれば、 「記 録再生器制限する」 の選択がなされたセーブデータは、 記録再生器識別子によつ て暗号化、 復号化処理が実行されるため、 同一の記録再生器識別子を持つ記録再 生器、 すなわち同一の記録再生器によってのみ復号して利用することが可能とな る。
次に図 80〜82を用いて、 上述のプログラム使用制限、 および記録再生器使 用制限を併せて実行するセーブデータ格納、 再生処理について説明する。
図 80は、 セーブデータ格納処理フローである。 ステップ S 781において、 コンテンツ識別子をコンテンツデータから読み出し、 ステップ S 782において 、 プログラム使用制限判定を行ない、 ステップ S 783において記録再生器制限 判定を行なう。
「プログラム使用制限あり」、 かつ 「記録再生器制限あり」 の場合は、 ステツ プ S 785において、 コンテンツ固有鍵 (e x. Kc o n) と、 記録再生器固有 鍵 (Kd e V) の双方に基づいてセーブデータ暗号化鍵 K s a vが生成される。 これは、 例えば K s a v= (Kc o n XO R Kd e v)、 あるいは記録再生 器 300の内部メモリに格納されたマスタ鍵 MKxを適用して K s a v = DE S (MKx, Kc o n XOR K d e v) 等によって得ることができる。 または 、 別途、 記録再生器 300の内部メモリ 307内に保存しておいた、 他の鍵とは 別の喑号鍵をセーブデータ暗号鍵 K s a Vとして使用してもよい。
「プログラム使用制限あり」、 かつ 「記録再生器制限なし」 の場合は、 ステツ プ S 786において、 コンテンツ固有鍵 (e x. Kc o n) をセーブデータ暗号 化鍵 K s a vとする力、 あるいはコンテンツ固有鍵 (e X. Kc o n) に基づい てセーブデータ暗号化鍵 K s a Vを生成する。 '
「プログラム使用制限なし」、 かつ 「記録再生器制限あり」 の場合は、 ステツ プ S 787において、 記録再生器固有鍵 (Kd e V) をセーブデータ暗号化鍵 K s a Vとするカ あるいは記録再生器固有鍵 (Kd e V) に基づいてセーブデー タ暗号化鍵 K s a vが生成される。 または、 別途、 記録再生器 300の内部メモ リ 307内に保存しておいた、 他の鍵とは別の暗号鍵をセーブデータ暗号鍵 K s a Vとして使用してもよい。
さらに、 「プログラム使用制限なし」、 かつ 「記録再生器制限なし」 の場合は、 ステップ S 7 8 7において、 システム共通鍵、 例えばシステム署名鍵 K s y sを セーブデータ暗号化鍵 K s a vとするか、 あるいはシステム署名鍵 K s y sに基 づいてセーブデータ暗号化鍵 K s a Vを生成する。 または、 別途、 記録再生器 3 0 0の内部メモリ 3 0 7内に保存しておいた、 他の鍵とは別の暗号鍵をセーブデ ータ暗号鍵 K s a Vとして使用してもよい。
ステップ S 7 8 9では、 ステップ S 7 8 5〜S 7 8 8のいずれかで生成された セーブデータ暗号化鍵 K s a Vによってセーブデータが暗号化され、 記録デバィ スに格糸内される。
さらに、 ステップ S 7 9 0では、 ステップ S 7 8 2、 S 7 8 3において設定し た制限情報がデータ管理ファイルに格納される。 データ管理ファイルは、 例えば 図 8 1に示す構成となり、 項目としてデータ番号、 コンテンツ識別子、 記録再生 器識別子、 プログラム使用制限、 記録再生器制限を含む。
図 8 2は、 図 8 0の処理によって記録デバイスに格納されたセーブデータを再 生、 実行する処理フローである。 ステップ S 7 9 1では、 実行プログラムのコン テンッ識別子、 記録再生器識別子を読み出し、 ステップ S 7 9 2において、 図 8 1に示すデータ管理ファイルからコンテンツ識別子、 記録再生器識別子、 プログ ラム使用制限、 記録再生器制限情報を読み出す。 この場合、 プログラム使甩制限 が 「する」 でコンテンツ識別子が不一致である場合、 または記録再生器制限情報 が 「する」 で記録再生器識別子が不一致である場合は、 処理を終了する。
次に、 ステップ S 7 9 3、 S 7 9 4、 S 7 9 5では、 データ管理ファイルの記 録データにしたがって復号鍵生成処理をステップ S 7 9 6〜S 7 9 9の 4態様の いずれかに設定する。 ·'
「プログラム使用制限あり」、 かつ 「記録再生器制限あり」 の場合は、 ステツ プ S 7 9 6において、 コンテンツ固有鍵 (e x . K c o n ) と、 記録再生器固有 鍵 (K d e V ) の双方に基づいてセーブデータ複号化鍵 K s a vが生成される。 または、 別途、 記録再生器 3 0 0の内部メモリ 3 0 7内に保存しておいた、 他の 鍵とは別の喑号鐽をセーブデータ暗号鍵 K s a Vとして使用してもよい。 「プロ グラム使用制限あり」、 かつ 「記録再生器制限なし」 の場合は、 ステップ S 7 9 7において、 コンテンツ固有鍵 ( e x . K c o n ) をセーブデータ複号化键 K s a vとするカ あるいはコンテンツ固有鍵 (e x . K c o n ) に基づいてセーブ データ復号化鍵 K s a Vを生成する。 または、 別途、 記録再生器 3 0 0の内部メ モリ 3 0 7内に保存しておいた、 他の鍵とは別の暗号鍵をセーブデータ暗号鍵 K s a Vとして使用してもよい。
「プログラム使用制限なし」、 かつ 「記録再生器制限あり」 の場合は、 ステツ プ S 7 9 8において、 記録再生器固有鍵 (K d e V ) をセーブデータ復号化鍵 K s a Vとするカ あるいは記録再生器固有鍵 (K d e V ) に基づいてセーブデー タ復号化鍵 K s a Vが生成される。 または、 別途、 記録再生器 3 0 0の内部メモ リ 3 0 7内に保存しておいた、 他の鍵とは別の喑号鍵をセーブデータ暗号鍵 K s a Vとして使用してもよい。 さらに、 「プログラム使用制限なし」、 かつ 「記録再 生器制限なし」 の場合は、 ステップ S 7 9 9において、 システム共通鍵、 例えば システム署名鍵 K s y sをセーブデータ複号化鍵 K s a vとするカ あるいはシ ステム署名鍵 K s y sに基づいてセーブデータ復号化鍵 K s a vを生成する。 ま たは、 別途、 記録再生器 3 0 0の内部メモリ 3 0 7内に保存しておいた、 他の鍵 とは別の暗号鍵をセーブデータ暗号鍵 K s a Vとして使用してもよい。
これらの復号化鍵生成処理は、 暗号化鍵生成処理に対応する処理アルゴリズム が適用され、 同一のコンテンツ固有鍵、 記録再生器固有鍵に基づいて暗号化され たデータは、 同一のコンテンツ固有鍵、 記録再生器固有鍵に基づいて生成された 復号鍵によつて復号可能なものとなる複号化鍵生成アルゴリズムが適用される。 ステップ S 8 0 0では、 上述のステップ S 7 9 6〜S 7 9 9のいずれかにおい て生成されたセーブデータ複号化鍵を用いて復号処理が実行され、 復号セーブデ ータが記録再生器 3 0 0において再生、 実行される。
この図 8 0、 8 2において示したセーブデータ格納、 再生処理フローによれば 、 「プログラム使用制限する」 の選択がなされたセーブデータはコンテンツ固有 鍵によって暗号化、 復号化処理が実行されるため、 同一のコンテンツ固有鍵を持 つコンテンツデータを使用する場合のみ復号して利用することが可能となる。 ま た、 「記録再生器制限する」 の選択がなされたセーブデータは、 記録再生器識別 子によって暗号化、 複号化処理が実行されるため、 同一の記録再生器識別子を持 つ記録再生器、 すなわち同一の記録再生器によってのみ復号して利用することが 可能となる。 従って、 コンテンツ、 記録再生器両者によって利用制限を設定する ことが可能となり、 セーブデータのセキュリティをさらに高めることが可能とな る。
なお、 図 8 0、 8 2においては、 コンテンツ固有鍵、 記録再生器個有鍵を用い たセーブデータ暗号化鍵、 複号化鍵の生成構成を示したが、 コンテンツ個有鍵の 代わりにコンテンッ識別子、 また記録再生器固有鍵の代わりに記録再生器識別子 を用いて、 これら識別子に基づいてセーブデータ暗号化鍵、 復号化鍵の生成を実 行する構成としてもよい。
次に、 図 8 3〜8 5を用いてユーザの入力したパスワードに基づいてセーブデ ータの暗号化鍵、 復号化鍵を生成する構成について説明する。
図 8 3はユーザの入力したパスワードに基づいてセーブデータの暗号化鍵を生 成して記録デバイスに格納する処理フローである。
ステップ S 8 2 1は、 コンテンツデータからコンテンツ識別子を読み出す処理 であり、 前述の各処理と同様である。 ステップ S 8 2 2は、 ユーザによるプログ ラム使用制限の設定を行なうか否かを決定するステップである。 本構成において 設定されるデータ管理ファイルは、 例えば図 8 4に示す構成を持つ。
図 8 4に示すように、 データは、 データ番号、 コンテンツ識別子、 記録再生器 識別子、 さらにユーザによるプログラム使用制限情報が含まれる。 「ユーザによ るプログラム使用制限情報」 はプログラムを使用するユーザを制限するかしない かを設定する項目である。
図 8 3における処理フローにおけるステップ S 8 2 2において使用制限するの 設定がなされると、 ステップ S 8 2 3においてユーザパスヮードの入力がなされ る。 この入力は、 図 2に示す例えばキーボード等の入力手段から入力される。 入力されたパスワードは、 メイン C P U 1 0 6、 制御部 3 0 1の制御のもとに 喑号処理部 3 0 2に出力され、 ステップ S 8 2 4における処理、 すなわち入力ュ 一ザパスワードに基づくセーブデータ暗号化鍵 K s a Vが生成される。 セーブデ ータ暗号化鍵 K s a V生成処理としては、 例えばパスヮード自体を暗号化鍵 K s a Vとしてもよいし、 あるいは記録再生器のマスタ鍵 MK xを用いて、 セーブデ ータ暗号化鍵 K s a V = D E S (M K x , パスワード) によって生成してもよい 。 また、 パスワードを入力として一方向性関数を適用して、 その出力に基づいて 暗号化鍵を生成してもよい。
ステップ S 8 2 2におけるユーザ制限が N oとされている場合は、 ステップ S 8 2 8において、 記録再生器 3 0 0のシステム共通鍵に基づいてセーブデータ喑 号化鍵が生成される。
さらに、 ステップ S 8 2 5でステップ S 8 2 4、 またはステップ S 8 2 8で生 成したセーブデータ暗号化鍵 K s a Vを用いてセーブデータの暗号化処理がなさ れ、 ステップ S 8 2 6において暗号化処理のなされたセーブデータが記録デバィ スに格納される。
さらに、 ステップ S 8 2 7において、 図 8 4のデータ管理ファイルにステップ S 8 2 2で設定したユーザによるフログラム使用制限情報が、 コンテンツ識別子 と記録再生器識別子に対応付けられて書き込まれる。
図 8 5は、 図 8 3の処理によって格納されたセーブデータの再生処理フローを 示した図である。 ステップ S 8 3 1において、 コンテンツデータからコンテンツ 識別子を読み出し、 ステップ S 8 3 2において図 8 4に示したデータ管理フアイ ルからコンテンツ識別子、 ユーザによるプログラム使用制限情報を読み出す。 ステップ S 8 3 3において、 データ管理ファイル中のデータに基づく判定を実 行し、 「ユーザによるプログラム使用制限する」 が設定されている場合は、 ステ ップ S 8 3 4において、 パスヮード入力を求め、 ステップ S 8 3 5において、 入 力パスワードに基づく復号化鍵を生成する。 この復号化鍵生成処理は、 暗号化鍵 生成処理に対応する処理アルゴリズムが適用され、 あるパスヮードに基づいて暗 号化されたデータは、 同一のパスワードに基づいて生成された復号鍵によって復 号可能なものとなる複号化鍵生成アルゴリズムに設定される。
ステップ S 8 3 3の判定がユーザによるプログラム使用制限なしの場合は、 ス テツプ S 8 3 7において記録再生器 3 0 0の内部メモリに格納されたシステム共 通鍵、 例えばシステム署名鍵 K s y sを用いてセーブデータ復号鍵 K s a vが生 成される。 または、 別途、 記録再生器 3 0 0の内部メモリ 3 0 7内に保存してお いた、 他の鍵とは別の暗号鍵をセーブデータ暗号鍵 K s a Vとして使用してもよ い。
ステップ S 8 3 6では、 ステップ S 8 3 5、 ステップ S 8 3 7のいずれかにお いて生成された復号化鍵 K s a Vを用いて記録デバイスに格納されたセーブデー タの復号が実行され、 ステップ S 8 3 6において記録再生器においてセーブデー タの再生、 実行がなされる。
図 8 3、 図 8 5において示したセーブデータ格納、 再生処理フローによれば、 「ユーザによるプログラム使用制限する」 の選択がなされたセープデータはユー ザ入力パスワードに基づく鍵によって暗号化、 復号化処理が実行されるため、 同 一のパスヮードを入力した場合のみ復号して利用することが可能とり、 セーブデ ータのセキュリティを高めることが可能となる。
以上、 いくつかのセーブデータの格納処理、 再生処理態様について説明してき たが、 上述した処理を融合した処理、 例えばパスワードと、 記録再生器識別子、 コンテンッ'識別子等を任意に組み合わせて使用してセーブデータ暗号化鍵、 復号 化键を生成する態様も可能である。 .
( 1 7 ) 不正機器の排除 (リボケーシヨン) 構成
すでに説明してきたように、 本発明のデータ処理装置においては、 メディア 5 0 0 (図 3参照)、 通信手段 6 0 0から提供される様々なコンテンツデータを記 録再生器 3 0 0において、 認証、 暗号化処理等を実行し、 記録デバイスに格納す る構成によって提供コンテンツのセキュリティを高めるとともに、 また、 正当な 利用者のみが利用可能とする構成を持つ。' 上述の説明から理解されるように、 入力コンテンツは、 記録再生器 300の暗 号処理部 302に構成される内部メモリ 307に格納された様々な署名鍵、 マス ター鍵、 チェック値生成鍵 (図 1 8参照) を用いて、 認証処理、 暗号化処理、 復 号化処理がなされる。 この鍵情報を格納する内部メモリ 307は、 先に説明した ように、 基本的に外部からアクセスしにくい構造を持った半導体チップで構成さ れ、 多層構造を有し、 その内部のメモリはアルミ二ユウム層等のダミー層に挟ま れるか、 最下層に構成され、 また、 動作する電圧または Zかつ周波数の幅が狭い 等、 外部から不正にデータの読み出しが難しい特性とした構成とされるのが望ま しいが、 万が一内部メモリの不正な読み取りが実行され、 これらの鍵データ等が 流出し、 正規なライセンスのされていない記録再生器にコピーされた場合、 コピ 一された鍵情報によって不正なコンテンツ利用がなされる可能性がある。
ここでは、 これらの不正コピーによる鍵の複製によるコンテンツの不正利用を 防止する構成について説明する。
図 86に、 本構成 「(1 7) 不正機器の排除構成」 を説明するプロック図を示 す。 記録再生器 300は、 前述の図 2, 3に示す記録再生器と同様であり、 内部 メモリを有し、 先に説明した (図 1 8) 各種の鍵データ、 さらに、 記録再生器識 別子を有している。 なお、 ここでは、 第三者によって複製されている記録再生器 識別子、 鍵データ等は図 3に示す内部メモリ 30 7に格納されるとは限らず、 図 86に示す記録再生器 300の鍵データ等は、 暗号処理部 30 2 (図 2, 3参照 ) によってアクセス可能なメモリ部にまとめて、 あるいは分 して格納されてい る構成であるとする。
不正機器の排除構成を実現するため、 コンテンツデータのヘッダ部の不正な記 録再生器識別子リストを記憶した構成とした。 図 86に示すように、 コンテンツ データには、 不正な記録再生器識別子 (I Dd e v) リストとしてのリボケーシ ョン(R e v o c a t i o n)リストを保有している。 さらに、 リポケーションリ ストの改竄チェック用のリストチェック値 I CV r e vを設けている。 不正な記 録再生器識別子 (I Dd e v) リストは、 コンテンツ提供者、 または管理者が、 例えば不正コピーの流通状態等から判明した不正な記録再生器の識別子 I Dd e vをリス ト化したものである。 このリボケ一シヨンリス トは例えば配送鍵 Kd i sによって暗号化されて格納してもよい。 記録再生器による復号処理については 、 例えば先の図 22のコンテンツダウンロード処理の態様と同様である。
なお、 ここでは、 理解を容易にするため、 リボケーシヨンリス トを単独のデー タとして図 86のコンテンツデータ中に示してあるが、 例えば先に説明したコン テンッデータのヘッダ部の構成要素である取扱方針 (例えば図 3 2〜3 5参照) 中にリボケ一シヨンリス トを含ませてもよい。 この場合は、 先に説明したチエツ ク値 I CVaによってリボケ一ションリス トを含む取扱方針データの改竄チェッ クがなされる。 リボケ一シヨンリス トが取扱方針中に含まれる場合は、 チェック 値 A: I CV aのチヱックによって代替され、 記録再生器内のチヱック値 A生成 鍵 i c V aが利用され、 チェック値生成鍵 K i c V - r e vを格納する必要は ない。
リボケーションリストを単独のデータとしてコンテンツデータ中に含ませる場 合は、 リボケーションリストの改竄チェック用のリストチェック値 I C V r e v によるリボケーションリス トのチェックを実行するとともに、 リストチェック値 I C V r e Vとコンテンツデータ中の他の部分チェック値とから中間チェック値 を生成して中間チェック値の検証処理を行なう構成とする。
リボケーションリストの改竄チェック用のリストチェック値 I CV r e Vによ るリボケーシヨンリストのチェック手法は、 前述の図 23、 図 24等で説明した I CVa、 I CVb等のチ ック値生成処理と同様の方法で実行可能である。 す なわち、 記録再生器暗号処理部 30 2の内部メモリ 307に保存したチェック値 生成鍵 K i c V— r e Vを鍵とし、 コンテンツデータ中に含まれるリボケ一ショ ンリス トをメッセージとして図 23、 図 24等で説明した I CV計算方法に従つ て計算される。 計算したチェック値 I CV— r e v' とヘッダ (He a d e r) 内に格納されたチェック値: I CV— r e vを比較し、 一致していた場合には、 改竄が無いと判定する。 リストチェック値 I C V r e vを含む中間チェック値は、 例えば、 図 2 5に示 すように、 記録再生器暗号処理部 3 0 2の内部メモリ 3 0 7に保存されている総 チェック値生成鍵 K i c V tを鍵とし、 検証した H e a d e r内のチェック値 A 、 チェック値 B、 リストチェック値 I C V r e v、 さらにフォーマットに応じて コンテンツチェック値を加えたメッセージ列に図 7他で説明した I C V計算方法 を適用して生成する。
これらのリボケーシヨンリスト、 リストチェック値は、 D V D, C D等のメデ ィァ 5 0 0、 通信手段 6 0 0を介して、 あるいはメモリカード等の記録デバイス 4 0 0を介して記録再生器 3 0 0に提供される。 ここで記録再生器 3 0 0は、 正 当な鍵データを保有する記録再生器である場合と、 不正に複製された識別子 I D を有する場合とがある。
このような構成における不正な記録再生器の排除処理の処理フローを図 8 7お よび図 8 8に示す。 図 8 7は、 D V D, C D等のメディア 5 0 0、 あるいは通信 手段 6 0 0からコンテンツが提供される場合の不正記録再生器排除 (リボケーシ ヨン) 処理フローであり、 図 8 8は、 メモリカード等の記録デバイス 4 0 0から コンテンツが提供される場合の不正記録再生器排除 (リボケーシヨン) 処理フロ 一である。
まず、 図 8 7の処理フローについて説明する。 ステップ 9 0 1は、 メディアを 装着して、 コンテンッの提供、 すなわち再生処理あるいはダウンロードの要求を 行なうステップである。 この図 8 7に示す処理は、 例えば記録再生器に D V D等 のメディアを装着してダウンロード処理等を実行する前のステップとして実行さ れる。 ダウンロード処理については、 先に図 2 2を用いて説明している通りであ り、 図 2 2の処理フローの実行の前ステップとして、 あるいは図 2 2の処理フロ 一中に揷入される処理としてこの図 8 7の処理が実行される。
記録再生器 3 0 0がネットワーク等の通信手段を介してコンテンツ提供を受け る場合は、 ステップ S 9 1 1においてコンテンツ配信サービス側との通信セッシ ヨンを確立し、 その後、 ステップ S 9 0 2へ進む。 ステップ S 902では、 コンテンツデータのヘッダ部からリボケーションリス ト(図 86参照)を取得する。 このリスト取得処理は、 コンテンツがメディア内に ある場合は、 図 3に示す制御部 301が読取部 304を介してメディアから読み 出し、 コンテンツが通信手段からである場合は、 図 3に示す制御部 30 1が通信 部 305を介してコンテンツ配信側から受信する。
次にステップ S 903において、 制御部 30 1は、 喑号処理部 302にメディ ァ 500または通信手段 600から取得したリボケ一シヨンリストを喑号処理部 302に渡し、 チェック値生成処理を実行させる。 記録再生器 300は、 内部に リボケーションチェック値生成鍵 K i c V - r e vを有し、 受領したリボケ一シ ヨンリストをメッセージとしてリボケーションチェック値生成鍵 K i c V— r e vを適用して、 例えば図 23、 図 24等で説明した I CV計算方法に従ってチェ ック値 I CV— r e v, を計算し、 計算結果とコンテンツデータのヘッダ (He a d e r ) 内に格納されたチェック値: I C V— r e vを比較し、 一致していた 場合には改竄が無い (ステップ S 904で Y e s ) と判定する。 一致しない場合 は、 改竄されていると判定され、 ステップ S 90 9に進み処理エラーとして処理 を終了する。
次に、 ステップ S 90 5において、 記録再生器暗号処理部 30 2の制御部 30 6は、 記録再生器暗号処理部 302の暗号/復号化部 308に総チェック値 I C V t ' の計算をさせる。 総チェック値 I CV t, は、 図 25に示すように、 記録 再生器暗号処理部 302の内部メモリ 307に保存されているシステム署名鍵 K s y sを鍵とし、 中間チェック値を DE Sで暗号化して生成する。 なお、 各部分 チェック値、 例えば I C V a、 I CVb等の検証処理は、 この図 87に示す処理 フロー中では省略してあるが、 先に説明した図 3 9〜図 45の処理フローと同様 の各データフォーマツトに応じた部分チェック値の検証が行なわれる。
次に、 ステップ S 906において、 生成した総チェック値 I C V t, とヘッダ (He a d e r) 内の I C V tを比較し、 一致していた場合 (ステップ S 90 6 で Ye s ) には、 ステップ S 907へ進む。 一致しない場合は、 改竄されている と判定され、 ステップ S 909に進み処理エラーとして処理を終了する。
先に説明したように、 総チェック値 I CV tは、 I CVa、 I CVb、 さらに 、 データフォーマットに応じて各コンテンツブロックのチェック値等、 コンテン ッデータに含まれる部分チェック値全体をチェックするものであるが、 ここでは 、 これらの部分チェック値にさらに、 リボケ一シヨンリストの改竄チェック用の リストチェック値 I CV r e vを部分チェック値として加えて、 これら全ての改 竄を検証する。 上述の処理によって生成された総チェック値がヘッダ (
He a d e r) 内に格納されたチェック値: I C V tと一致した場合には、 I C V a、 I CVb、 各コンテンツブロックのチェック値、 およびリストチェック値 I CV r e v全ての改竄はないと判断される。
さらにステップ S 907では、 改竄無しと判定されたリボケーシヨンリストと 、 自己の記録再生器 300に格納された記録再生器識別子 ( I D d e V ) との比 較がなされる。
コンテンツデータかち読み出された不正な記録再生器識別子 I Dd e Vのリス トに自己の記録再生器の識別子 I D d e vが含まれている場合は、 その記録再生 器 300は、 不正に複製された鍵データを有していると判定され、 ステップ S 9 0 9に進み、 以後の手続きは中止される。 例えば図 22のコンテンツダウンロー ド処理の手続きの実行を不可能とする。
ステップ S 907において、 不正な記録再生器識別子 I Dd e vのリストに自 己の記録再生器の識別子 I D d e vが含まれていないと判定された場合には、 そ の記録再生器 300は、 正当な鍵データを有していると判定され、 ステップ S 9 08に進み、 以後の手続き、 例えば、 プログラム実行処理、 あるいは図 22等の コンテンツダウンロード処理等が実行可能となる。
図 88は、 メモリカード等の記録デバイス 400に格納したコンテンツデータ を再生する場合の処理を示す。 先に説明したように、 メモリカード等の記録デバ イス 400と記録再生器 300は、 図 20で説明した相互認証処理 (ステップ S 9 21) が実行される。 ステップ S 922おいて、 相互認証 OKである場合にの み、 ステップ S 923以降の処理に進み、 相互認証に失敗した場合は、 ステップ S 930のエラーとなり、 以降の処理は実行されない。
ステップ S 9 23では、 コンテンツデータのヘッダ部からリボケーションリス ト(図 86参照)を取得する。 以降のステップ S 924〜S 930の処理は、 先の 図 87における対応処理と同様の処理である。 すなわち、 リストチェック値によ るリストの検証 (S 924, S 9 2 5)、 総チェック値による検証 (S 9 26, S 9 27)、 リストのエントリと自己の記録再生器識別子 I D d e vとの比較 ( S 928) を実行し、 コンテンツデータから読み出された不正な記録再生器識別 子 I D d e vのリストに自己の記録再生器の識別子 I D d e vが含まれている場 合ば、 その記録再生器 300は、 不正に複製された鍵データを有していると判定 され、 ステップ S 9 30に進み、 以後の手続きは中止される。 例えば図 28に示 すコンテンツの再生処理を実行不可能とする。 一方、 不正な記録再生器識別子 I Dd e Vのリストに自己の記録再生器の識別子 I D d e vが含まれていないと判 定された場合には、 その記録再生器 300は、 正当な鍵データを有していると判 定され、 ステップ S 929に進み、 以後の手続きが実行可能となる。
このように、 本発明のデ、ータ処理装置においては、 コンテンツ提供者、 または 管理者が提供するコンテンツに併せて不正な記録再生器を識別するデータ、 すな わち不正な記録再生器識別子 I D d e Vをリスト化したリボケ一シヨンリストを コンテンツデータのヘッダ部の構成データとして含ませて記録再生器利用者に提 供し、 記録再生器利用者は、 記録再生器によるコンテンツの利用に先立って、 自 己の記録再生器のメモリに格納された記録再生器識別子 I Dd e vと、 リストの 識別子との照合を実行して一致するデータが存在した場合には、 以後の処理を実 行させない構成としたので鍵データを複製してメモリに格納した不正な記録再生 器によるコンテンッ利用を排除することが可能となる。
(1 8) セキュアチップ構成おょぴ製造方法
先に説明したように、 記録再生器暗号処理部 302の内部メモリ 307、 ある いは記録デバィス 400の内部メモリ 405は、 喑号鍵などの重要な情報を保持 しているため、 外部から不正に読み出しにくい構造にしておく必要がある。 従つ て、 記録再生器暗号処理部 3 0 2、 記録デバイス暗号処理部 4 0 1は、 例えば外 部からアクセスしにくい構造を持つた半導体チップで構成され、 多層構造を有し 、 その内部のメモリはアルミ二ユウム層等のダミー層に挟まれるか、 最下層に構 成され、 また、 動作する電圧または かつ周波数の幅が狭い等、 外部から不正に データの読み出しが難しい特性を有する耐タンパメモリとして構成される。
しかしながら、 上述の説明で理解されるように、 例えば記録再生器暗号処理部 3 0 2の内部メモリ 3 0 7には記録再生器署名鍵 K d e v等の記録再生器毎に異 なるデータを書き込むことが必要となる。 また、 チップ内の不揮発性の記憶領域 、 例えばフラッシュメモリ、 F e R AM等にチップ毎の個別情報、 例えば識別情 報 (I D) や暗号鍵情報を書き込んだ後、 例えば製品出荷後におけるデータの再 書き込み、 読み出しを困難とすることが必要となる。
従来の書き込みデータの読み出し、 再書き込み処理を困難とするための手法に は、 例えばデータ書き込みのコマンドプロトコルを秘密にする。 あるいは、 チッ プ上のデータ書き込みコマンドを受け付ける信号線と、 製品化した後に利用され る通信用の信号線を分離して構成し、 基板上のチップに直接信号を送らない限り データ書き込みコマンドが有効とならないようにする等の手法がある。
しかしながら、 このような従来手法を採用しても、 記憶素子の専門知識を有す るものにとっては、 回路を駆動させる設備と技術があれば、 チップのデータ書き 込み領域に対する信号出力が可能であり、 また、 たとえデータ書き込みのコマン ドプロトコルが秘密であったとしても、 プロトコルの解析可能性は常に存在する このような、 秘密データの改変可能性を保持した喑号処理データの格納素子を 流通させることは、 暗号処理システム全体を脅かす結果となる。 また、 データの 読み出しを防止するために、 データ読み出しコマンド自体を実装しない構成とす ることも可能であるが、 その場合、 正規のデータ書き込みを実行した場合であつ ても、 メモリに対するデータ書き込みが実際に行われたか否かを確認したり、 書 き込まれたデータが正確に書き込まれているか否かを判定することが不可能とな り、 不良なデータ書き込みの行われたチップが供給される可能性が発生する。 これらの従来技術に鑑み、 ここでは、、 例えばフラッシュメモリ、 F e R AM 等の不揮発性メモリに正確なデータ書き込みを可能とするとともに、 データの読 み出しを困難にするセキュアチップ構成おょぴセキュアチップ製造方法を提供す る。
図 8 9に、 例えば、 前述の記録再生器暗号処理部 3 0 2または記録デバイス 4 0 0の暗号処理部 4 0 1に適用可能なセキュリティチップ構成を示す。 図 8 9 ( A) はチップの製造過程、 すなわちデータの書き込み過程におけるセキュリティ チップ構成を示し、 図 8 9 ( B ) は、 データを書き込んだセキュリティチップを 搭載した製品の構成例、 例えば記録再生器 3 0 0、 記録デバイス 4 0 0の例を示 す。
製造過程にあるセキュリティチップは、 処理部 8 0 0 1にモード指定用信号線 8 0 0 3、 および各種コマンド信号線 8 0 0 4が接続され、 処理部 8 0 0 1は、 モード指定用信号線 8 0 0 3で設定されたモード、 例えばデータ書き込みモード またはデータ読み出しモードに応じて不揮発性メモリである記憶部 8 0 0 2への データ書き込み処理、 または記憶部 8 0 0 2からのデータ読み出し処理を実行す る。
一方、 図 8 9 ( B ) のセキュリティチップ搭載製品においては、 セキュリティ チップと外部接続インタフェース、 周辺機器、 他の素子等とが汎用信号線で接続 されるが、 モード信号線 8 0 0 3は、 非接続状態とされる。 具体的な処理は、 例 えばモード信号線 8 0 0 3をグランド接続する、 V c cに釣り上げる、 信号線を カットする、 あるいは絶縁体樹脂で封印する等である。 このような処理により、 製品出荷後は、 セキュリティチップのモード信号線に対するアクセスが困難にな り、 外部からチップのデータを読み出したり書き込みを行なったりすることの困 難性を高めることができる。
さらに、 本構成のセキュリティチップ 8 0 0 0は、 データの記憶部 8 0 0 2に 対する書き込み処理、 および記憶部 8 0 0 2に書き込まれたデータの読み出し処 理を困難にする構成を持ち、 たとえ第三者がモード信号線 8 0 0 3のアクセスに 成功した場合であっても不正なデータ書き込み、 読み出しを防止可能である。 図
9 0に本構成を有するセキュリティチップにおけるデータ書き込みまたは読み出 し処理フローを示す。
ステップ S 9 5 1は、 モード信号線 8 0 0 3をデータ書き込みモードまたはデ ータ読み出しモードに設定するステップである。
ステップ S 9 5 2は、 チップから認証用情報を取り出すステップである。 本構 成のセキュリティチップには、 例えばワイヤ (W i r e )、 マスク R O M構成に より、 予めパスワード、 暗号技術における認証処理用の鍵情報等、 認証処理に必 要な情報が格納される。 ステップ S 9 5 2は、 この認証情報を読み出して認証処 理を実行する。 例えば正規なデータ書き込み治具、 データ読み出し装置を汎用信 号線に接続して認証処理を実行した場合には、 認証 O K (ステップ S 9 5 3にお いて Y e s ) の結果が得られるが、 不正なデータ書き込み治具、 データ読み出し 装置を汎用信号線に接続して認証処理を実行した場合には、 認証に失敗 (ステツ プ S 9 5 3において N o ) し、 その時点で処理が中止される。 認証処理は、 例え ば先に説明した図 1 3の相互認証処理手続きに従って実行可能である。 図 8 9に 示す処理部 8 0 0 1は、 これらの認証処理を実行可能な構成を有する。 これは、 例えば先に説明した図 2 9に示す記録デバィス 4◦ 0の暗号処理部 4 0 1の制御 部 4 0 3に組み込まれたコマンドレジスタと同様の構成により実現可能である。 例えば図 8 9のチップの処理部は、 図 2 9に示す記録デパイス 4 0 0の喑号処理 部 4 0 1の制御部 4 0 3に組み込まれたコマンド 'レジスタと同様の構成を持ち、 各種コマンド信号線 8 0 0 4に接続された機器から所定のコマンド N oが入力さ れると、 対応する処理を実行し、 認証処理シーケンスを実行することが可能とな る。
処理部 8 0 0 1は認証処理において認証がなされた場合にのみ、 データの書き 込みコマンド、 またはデータの読み出しコマンドを受け付けてデータの書き込み 処理 (ステップ S 9 5 5 )、 またはデータの読み出し処理 (ステップ S 9 5 6 ) を実行する。
このように本構成のセキュリティチップにおいては、 データの書き込み時、 読 み出し時に認証処理を実行する構成としたので、 正当な権利を持たない第三者に よるセキュリティチップの記憶部からデータの読み出し、 または記憶部へのデー タ書き込みを防止することができる。
次に、 さらに、 セキュリティの高い素子構成とした実施例を図 9 1に示す。 こ の例では、 セキュリティチップの記憶部 8 2 0 0が 2つの領域に分離され、 一方 はデータの読み書きが可能な読み出し書き込み併用領域 (RW, : R e a d W r i t e領域) 8 2 0 1であり、 他方はデータの書き込みのみが可能な書き込み専用 領域 (WO: W r i t e O n 1 y領域) 8 2 0 2である。
この構成において、 書き込み専用領域 (WO: W r i t e O n 1 y領域) 8 2 0 2には、 暗号鍵データ、 識別子データ等のセキュリティ要請の高いデータを書 き込み、 一方セキュリティ度のさほど高くない、 例えばチェック用のデータ等を 読み出し書き込み併用領域 (RW: R e a d W r i t e領域) 8 2 0 1 書き込 む。
処理部 8 0 0 1は、 読み出し書き込み併用領域 (RW: R e a d W r i t e領 域) 8 2 0 1からのデータ読み出し処理は、 前述の図 9 0で説明した認証処理を 伴うデータ読み出し処理を実行する。 しかし、 データ書き込み処理は、 図 9 2の フローに従って実行する。 '
図 9 2のステップ S 9 6 1は、 モード信号線 8 0 0 3を書き込みモードに設定 するステップであり、 ステップ 9 6 2では、 先の図 9 0で説明したと同様の認証 処理を実行する。 認証処理で認証がなされると、 ステップ S 9 6 3に進み、 コマ ンド信号線 8 0 0 4を介して、 書き込み専用 (WO ) 領域 8 2 0 2にセキユリテ ィの高い鍵データ等の情報の書き込み、 読み出し書き込み併用領域 (RW : R e a d W r i t e領域) 8 2 0 1にセキュリティ度のさほど高くない、 例えばチェ ック用データ書き込むコマンドを処理部 8 0 0 1に対して出力する。 - ステップ S 9 6 4ではコマンドを受領した処理部 8 0 0 1力 コマンドに応じ たデータ書き込み処理をそれぞれ書き込み専用 (WO) 領域 8 2 0 2、 読み出し 書き込み併用領域 (RW: R e a d W r i t e領域) 8 2 0 1に対して実行する また、 書き込み専用 (WO ) 領域 8 2 0 2に書き込まれたデータの検証処理フ ローを図 9 3に示す。
図 9 3のステップ S 9 7 1は、 処理部 8 0 0 1において、 書き込み専用 (WO
) 領域 8 2 0 2に書き込まれたデータに基づく暗号処理を実行させる。 これらの 実行構成は、 先の認証処理実行構成と同様、 コマンドレジスタに格納された暗号 処理シーケンスを順次実行する構成によって実現される。 また、 処理部 8 0 0 1 において実行される暗号処理アルゴリズムは特に限定されるものではなく、 例え ば先に説明した D E Sアルゴリズムを実行する構成とすることができる。
次に、 ステップ S 9 7 2で、 セキュリティチップに接続された検証装置が処理 部 8 0 0 1から暗号処理結果を受信する。 次に、 ステップ S 9 7 3において、 先 に記憶部に書き込み処理を行なった正規な書き込みデータに対して処理部 8 0 0 1において実行されたアルゴリズムと同様の暗号化処理を適用して得た結果と、 処理部 8 0 0 1からの暗号化結果とを比較する。
比較した結果が同一であれば、 書き込み専用 (WO ) 領域 8 2 0 2に書き込ま れたデータは正しいことが検証される。
この構成では、 認証処理が破られて読み出しコマンドが万が一実行可能となつ ても、 データの読み出し可能領域は、 読み出し書き込み併用領域 (RW : R e a d W r i t e領域) 8 2 0 1に限定され、 書き込み専用 (WO ) 領域 8 2 0 2に 書き込まれたデータの読み出しは、 不可能であり、 さらにセキュリティの高い構 成となる。 また、 全く読み出しを不可能としたチップと異なり、 読み出し書き込 み併用領域 (RW: R e a d W r i t e領域) 8 2 0 1が構成されているのでメ モリアクセスの正否チェックが可能である。
以上、 特定の実施例を参照しながら、 本発明について詳解してきた。 しかしな がら、 本発明の要旨を逸脱しない範囲で当業者が該実施例の修正や代用.を成し得 ることは自明である。 すなわち、 例示という形態で本発明を開示してきたのであ り、 限定的に解釈されるべきではない。 また、 上記した実施例ではコンテンツの 記録、 再生を可能な記録再生器を例にして説明してきたが、 データ記録のみ、 デ 一タ再生のみ可能な装置においても本発明の構成は適用可能なものであり、 本発 明はパーソナルコンピュータ、 ゲーム機器、 その他の各種データ処理装置一般に おいて実施可能なものである。 本発明の要旨を判断するためには、 冒頭に記載し た特許請求の範囲の欄を参酌すべきである。 産業上の利用の可能性
本発明は、 D V D、 C D等の記憶媒体、 あるいは C A T V、 インターネット、 衛生通信等の有線、 無線各通信手段等の経路で入手可能な音声、 画像、 ゲーム、 プログラム等の各種コンテンツを、 ユーザの所有する記録再生器において再生し
、 専用の記録デバイス、 例えばメモリカード、 ハードディスク、 C D— R等に格 納するとともに、 記録デバイスに格納されたコンテンツを利用する際、 コンテン ッ配信側の希望する利用制限を付す構成を実現するとともに、 この配布されたコ ンテンッを、 正規ユーザ以外の第三者に不正利用されないようにセキュリティを 確保する装置及びシステムに利用できる。

Claims

請 求 の 範 囲 1 . 記憶媒体または通信媒体によって提供されるコ :'ータの処理を行な うデータ処理装置であり、
上記コンテンツデータに対する暗号処理を実行する暗号処理部と、
上記暗号処理部に対する制御を実行する制御部とを有し、
上記暗号処理部は、
コンテンツデータ構成部を複数部分に分割した部分データを 1以上含む部分デ ータ集合に対するチェック値として部分チェック値を生成し、 該生成した部分チ ェック値の照合処理により上記部分データの検証処理を実行するとともに、 少なくとも上記部分チエック値を 1以上含む部分チエック値集合データ列に基 づいて中間チェック値を生成し、 該生成した中間チェック値を用いて、 上記部分 チ ック値集合を構成する複数の部分チェック値に対応する複数の部分データ集 合全体に対する検証処理を実行する構成を有することを特徴とするデータ処理装
2 . 上記部分チェック値は、 チェック対象となる部分データをメッセージとし、 部分チェック値生成鍵を適用した暗号処理によって生成される値であり、 上記中間チ ック値は、 チェック対象となる部分チユック値集合データ列をメ ッセージとし、 総チェック値生成鍵を適用した喑号処理によって生成される値で あり、
上記暗号処理部は、 上記部分チェック値生成鍵おょぴ上記総チェック値生成鍵 を格納した構成を有することを特徴とする請求の範囲第 1項に記載のデータ処理
3 . 上記暗号処理部は、 生成する部分チェック値に対応する複数種類の部分チェ ック値生成鍵を有することを特徴とする請求の範囲第 2項に記載のデータ処理装
4. 上記喑号処理は DE S暗号処理であり、
上記暗号処理部は、 D E S暗号処理を実行可能な構成を有することを特徴とす る請求の範囲第 2項に記載のデータ処理装置。
5. 上記部分チェック値は、 チェック対象となる部分データをメッセージとして DES— CBCモードにおいて生成されるメッセージ認証符号 (MAC) であり 上記中間チェック値は、 チェック対象となる部分チェック値集合データ列をメ ッセージとして DE S— CB Cモードにおいて生成されるメッセージ認証符号 ( MAC) であり、
上記暗号処理部は、 DES— CBCモードによる暗号処理を実行する構成を有 することを特徴とする請求の範囲第 1項に記載のデータ処理装置。
6. 上記暗号処理部の有する DE S— CBCモードによる喑号処理構成は、 処理 対象となるメッセージ列の一部においてのみトリプル D E Sが適用される構成で あることを特徴とする請求の範囲第 5項に記載のデータ処理装置。
7.. 上記データ処理装置は、 署名鍵を有し、
上記暗号処理部は、
上記中間チェック値に対して上記署名鍵を適用した暗号処理により生成される 値をデータ検証のための照合値として適用する構成であることを特徴とする請求 の範囲第 1項に記載のデ タ処理装置。
8. 上記データ処理装置は、 署名鍵として異なる複数の署名鍵を有し、
上記暗号処理部は、 上記コンテンツデータの利用制限態様に応じて上記異なる複数の署名鍵から選 択された署名鍵を上記中間チェック値に対する暗号処理に適用してデータ検証の ための照合値とする構成を有することを特徴とする請求の範囲第 7項に記載のデ ータ処理装置。
9 . 上記データ処理装置は、 上記複数の署名鍵として、 データ検証処理を実行す るシステムの全エンティティに共通の共通署名鍵と、 データ検証処理を実行する 各々の装置固有の装置固有署名鍵とを有することを特徴とする請求の範囲第 8項 に記載のデータ処理装置。
1 0 . 上記部分チヱック値は、 データの一部を構成するヘッダ部内データについ て生成される 1以上のヘッダ部分チェック値と、 データの一部を構成するコンテ ンップロックデータについて生成される 1以上のコンテンツチェック値とを含み 上記暗号処理部は、 上記ヘッダ部内データの部分データ集合について 1以上の へッダ部分チエック値を生成して照合処理を実行し、 上記コンテンッ部内データ の部分データ集合について 1以上のコンテンツチェック値を生成して照合処理を 実行し、 さらに、 生成された上記へッダ部分チエック値および上記コンテンツチ エック値全てに基づいて総チェック値を生成して照合処理を実行することにより データ検証を実行する構成を有することを特徴とする請求の範囲第 1項に記載の データ処理装置。
1 1 . 上記部分チェック値は、 データの一部を構成するヘッダ部内データについ て生成される 1以上のヘッダ部分チェック値を含み、
上記暗号処理部は、 上記ヘッダ部内データの部分データ集合について 1以上の ヘッダ部分チェック値を生成して照合処理を実行し、 さらに、 生成された上記 1 以上のへッダ部分チエック値および上記データの一部を構成するコンテンツプロ ックデータからなるデータ列に基づいて総チェック値を生成して照合処理を実行 することによりデータ検証を実行する構成を有することを特徴とする請求の範囲 第 1項に記載のデータ処理装置。
1 2 . 上記データ処理装置は、 さらに、
上記暗号処理部において正当性検証の実行されたデ一タを格納する記録デバィ スを有することを特徴とする請求の範囲第 1項に記載のデータ処理装置。
1 3 . 上記暗号処理部における部分チ-ック値の照合処理において、 照合が成立 しなかった場合において、 .
上記制御部は、 上記記録デバイスへの格納処理を中止する構成を有することを 特徴とする請求の範囲第 1 2項に記載のデータ処理装置。
1 4 . 上記データ処理装置は、 さらに、
上記暗号処理部において正当性検証の実行されたデータを再生する再生処理部 を有することを特徴とする請求の範囲第 1項に記載のデータ処理装置。
1 5 . 上記データ処理装置は、
上記暗号処理部における部分チ ック値の照合処理において、 照合が成立しな かった場合において、.
上記制御部は、 上記再生処理部での再生処理を中止する構成を有することを特 徴とする請求の範囲第 1 4項に記載のデータ処理装置。
1 6 . 上記データ処理装置は、
上記暗号処理部における部分チェック値の照合処理において、 データのヘッダ 部分チ-ック値の照合処理のみを実行し、 へッダ部分チェック値の照合が成立し たデータを上記再生処理部に転送して再生可能とする制御手段を有することを特 徴とする請求の範囲第 1 4項に記載のデータ処理装置。
1 7 . 記憶媒体または通信媒体によって提供されるコンテンツデータの処理を行 なうデータ処理装置であり、
上記コンテンツデータに対する暗号処理を実行する喑号処理部と、
上記暗号処理部に対する制御を実行する制御部とを有し、
上記暗号処理部は、
検証対象データが暗号化データである場合、 該暗号化データの復号処理によつ て得られる復号データに対して演算処理を実行して得られる演算処理結果データ に対して署名鍵を適用した暗号処理を施すことにより、 該検証対象データのチェ ック値を生成する構成を有することを特徴とするデータ処理装置。
1 8 . 上記演算処理は、 上記暗号化データの復号処理によって得られる復号デ一 タを所定バイ ト単位で排他的論理和演算する処理であることを特徴とする請求の 範囲第 1 7項に記載のデータ処理装置。
1 9 . 記憶媒体または通信媒体によって提供されるコンテンツデータの処理を行 なうデータ処理方法において、
コンテンツデータ構成部を複数部分に分割した部分データを 1以上含む部分デ ータ集合に対するチェック値として部分チユック値を生成し、 該生成部分チェッ ク値を照合する処理により上記部分データの検証処理を実行し、
少なくとも上記部分チェック値を 1以上含む部分チェック値集合データ列に基 づいて中間チヱック値を生成し、 該生成中間チヱック値を用いて上記部分チェッ ク値集合を構成する複数の部分チ ック値に対応する複数の部分データ集合全体 に対する検証処理を実行することを特徴とするデータ処理方法。
2 0 . 上記部分チェック値は、 チェック対象となる部分データをメッセージとし 、 部分チェック値生成鍵を適用した暗号処理によつて生成される値であり、 上記中間チェック値は、 チェック対象となる部分チエック値集合データ列をメ ッセージとし、 総チェック値生成鍵を適用した喑号処理によって生成される値で あることを特徴とする請求の範囲第 1 9項に記載のデータ処理方法。
2 1 . 上記部分チェック値は、 生成する部分チェック値に対応する異なる種類の 部分チェック値生成鍵を適用して生成することを特徴とする請求の範囲第 2 0項 に記載のデータ処理方法。
2 2 . 上記暗号処理は D E S喑号処理であることを特徴とする請求の範囲第 2 0 項に記載のデータ処理方法。
2 3 . 上記部分チェック値は、 チェック対象となる部分デ タをメッセージとし て D E S— C B Cモードにおいて生成されるメッセージ認証符号 (MA C ) であ り、
上記中間チェック値は、 チェック対象となる部分チェック値集合データ列をメ ッセージとして D E S— C B Cモードにおいて生成されるメッセージ認証符号 ( MA C ) であることを特徴とする請求の範囲第 1 9項に記載のデータ処理方法。
2 4 . 上記データ処理方法において、 さらに、
上記中間チェック値に対して署名鍵を適用した暗号処理により生成される値を データ検証のための照合値として適用することを特徴とする請求の範囲第 1 9項 に記載のデータ処理方法。
2 5 . 上記データ処理方法において、
データの利用制限態様に応じて異なる署名鍵を上記中間チェック値に対する暗 号処理に適用してデータ検証のための照合値とすることを特徴とする請求の範囲 第 2 4項に記載のデータ処理方法。
2 6 . 上記データ処理方法において、
上記署名鍵として、 データ検証処理を実行するシステムの全エンティティに共 通の共通署名鍵と、 データ検証処理を実行する各々の装置固有の装置固有署名鍵 とをデータの利用制限態様に応じて選択して使用することを特徴とする請求の範 囲第 2 5項に記載のデータ処理方法。
2 7 . 上記データ処理方法において、
上記部分チ ック値は、 データの一部を構成するへッダ部内データについて生 成される 1以上のヘッダ部分チェック値と、 データの一部を構成するコンテンツ 部内データについて生成される 1以上のコンテンツチェック値とを含み、 データ検証処理は、
上記ヘッダ部内データの部分データ集合について 1以上のヘッダ部分チエック 値を生成して照合処理を実行し、
上記コンテンツ部内データの部分データ集合について 1以上のコンテンツチェ ック値を生成して照合処理を実行し、
さらに、 生成された上記ヘッダ部分チェック値および上記コンテンツチェック 値全てに基づいて総チヱック値を生成してデータ検証を実行するものであること を特徴とする請求の範囲第 1 9項に記載のデータ処理方法。
2 8 . 上記データ処理方法において、
上記部分チエック値は、 データの一部を構成するへッダ部内データについて生 成される 1以上のヘッダ部分チユック値を含み、
データ検証処理は、
上記ヘッダ部内データの部分データ集合について 1以上のヘッダ部分チヱック 値を生成して照合処理を実行し、 さらに、 生成された上記 1以上のヘッダ部分チェック値および上記データの一 部を構成するコンテンツプロックデータからなるデータ列に基づいて総チェック 値を生成して照合処理を実行することによりデータ検証を実行するものであるこ とを特徴とする請求の範囲第 1 9項に記載のデータ処理方法。
2 9 . 上記データ処理方法において、
データの検証後、 さらに、 検証済みデータを記録デバイスに格納する処理を含 むことを特徴とする請求の範囲第 1 9項に記載のデータ処理方法。
3 0 . 上記データ処理方法において、
上記部分チェック値の照合処理において、 照合が成立しなかった場合において 、 上記記録デバィスへの格納処理を中止する制御を実行することを特徴とする請 求の範囲第 2 9項に記載のデータ処理方法。
3 1 . 上記データ処理方法において、
データの検証後、 データを再生するデータ再生処理を含むことを特徴とする請 求の範囲第 1 9項に記載のデータ処理方法。
3 2 . 上記データ処理方法において、
上記部分チェック値の照合処理において、 照合が成立しなかった場合において 、 上記再生処理部での再生処理を中止する制御を実行することを特徴とする請求 の範囲第 3 1項に記載のデータ処理方法。
3 3 . 上記データ処理方法において、
上記部分チェック値の照合処理において、 データのヘッダ部分チェック値の照 合処理のみを実行し、 へッダ部分チ-ック値の照合が成立したデータを上記再生 処理部に転送して再生可能とする制御を実行することを特徴とする請求の範囲第 3 1項に記載のデータ処理方法。
3 4 . 記憶媒体または通信媒体によって提供されるコンテンツデータの処理を行 なうデータ処理方法であり、
検証対象データが暗号化データである場合、 該暗号化データの復号処理によつ て得られる復号データに対して演算処理を実行し、
上記演算処理によって得られる演算処理結果データに対して署名鍵を適用した 暗号処理を実行することにより上記検証対象データのチェック値を生成すること を特徴とするデータ処理方法。
3 5 . 上記演算処理は、 上記暗号化データの復号処理によって得られる復号デ一 タを所定バイ ト単位で排他的論理和演算する処理であることを特徴とする請求の 範囲第 3 4項に記載のデータ処理方法。
3 6 . データ検証処理のためのデータ検証値付与方法であり、
データを複数部分に分割した部分データを 1以上含む部分データ集合に対する チ ック値として部分チェック値を付与し、
少なくとも上記部分チェック値を 1以上含む部分チェック値集合データ列に対 する検証を行なう中間チェック値を検証対象データに付与することを特徴とする データ検証値付与方法。
3 7 . 上記部分チェック値は、 チェック対象となる部分データをメッセージとし 、 部分チヱック値生成鍵を適用した暗号処理によって生成される値であり、 上記中間チェック値は、 チェック対象となる部分チ ック値集合データ列をメ ッセージとし、 総チェック値生成鍵を適用した暗号処理によって生成される値で あることを特徴とする請求の範囲第 3 6項に記載のデータ検証値付与方法。
38. 上記部分チェック値は、 生成する部分チェック値に対応する異なる種類の 部分チュック値生成鍵を適用して生成することを特徴とする請求の範囲第 3 7項 に記載のデータ検証値付与方法。
3 9. 上記暗号処理は DES暗号処理であることを特徴とする請求の範囲第 3 7 項に記載のデータ処理方法。
40. 上記部分チェック値は、 チェック対象となる部分データをメッセージとし て DES—CBCモードにおいて生成されるメッセージ認証符号 (MAC) であ り、
上記中間チェック値は、 チェック対象となる部分チェック値集合データ列をメ ッセージとして DE S— CBCモードにおいて生成されるメッセージ認証符号 ( MAC) であることを特徴とする請求の範囲第 3 6項に記載のデータ検証値付与 方法。
4 1. 上記データ検証値付与方法において、 さらに、
上記中間チェック値に対して署名鍵を適用した暗号処理により生成される値を データ検証のための照合値として適用することを特徴とする請求の範囲第 36項 に記載のデータ検証値付与方法。
42. 上記データ検証値付与方法において、
データの利用制限態様に応じて異なる署名鍵を上記中間チェック値に対する暗 号処理に適用してデータ検証のための照合値とすることを特徴とする請求の範囲 第 41項に記載のデータ検証値付与方法。
43. 上記データ検証値付与方法において、
上記署名鍵とじて、 データ検証処理を実行するシステムの全エンティティに共 通の共通署名鍵と、 データ検証処理を実行する各々の装置固有の装置固有署名鍵 とをデータの利用制限態様に応じて選択して使用するように設定することを特徴 とする請求の範囲第 4 2項に記載のデータ検証値付与方法。
4 4 . 上記部分チェック値は、 データの一部を構成するヘッダ部内データについ て生成される 1以上のヘッダ部分チェック値と、 データの一部を構成するコンテ ンッ部内データについて生成される 1以上のコンテンツチェック値とを含み、 上記へッダ部分チエック値および上記コンテンツチェック値全てに対する総チ エック値を生成してデータ検証を実行するように設定することを特徴とする請求 の範囲第 3 6項に記載のデータ検証値付与方法。
4 5 . 上記部分チェック値は、 データの一部を構成するヘッダ部内データについ て生成される 1以上のヘッダ部分チェック値を含み、
上記 1以上のへッダ部分チェック値および上記データの一部を構成するコンテ ンッブロックデータからなるデータ列全てに対する総チ ック値を生成してデー タ検証を実行するように設定することを特徴とする請求の範囲第 3 6項に記載の データ検証値付与方法。
4 6 . データ正当性の検証を実行するデータ検証処理をコンピュータ · システム 上で実行せしめるコンピュータ ·プログラムを提供するプログラム提供媒体であ つて、 上記コンピュータ ·プログラムは、
データを複数部分に分割した部分データを 1以上含む部分データ集合に対する チェック値として生成される部分チェック値の照合処理により上記部分データの 検証処理を実行するステップと、
上記部分チェック値を複数個組み合わせた部分チェック値集合に基づいて生成 される中間チェック値を用いて、 上記部分チェック値集合を構成する複数の部分 チェック値に対応する複数の部分データ集合全体に対する検証処理を実行するス テツプと、
を含むことを特徴とするプロダラム提供媒体。
4 7 . データ処理装置において、
データ暗号化、 データ復号化、 データ検証、 認証処理、 署名処理の少なくとも いずれかの喑号処理を実行する暗号処理部と、
上記暗号処理に適用する鍵を生成するためのマスター鍵を格納した記憶部とを 有し、
上記暗号処理部は、 上記暗号処理を実行するに必要な個別鍵を、 上記マスター 鍵と、 暗号処理対象の装置またはデータの識別デ一タに基づいて生成する構成を 有することを特徴とするデータ処理装置。
4 8 . 上記データ処理装置は、 記憶媒体または通信媒体を介する転送データに関 する暗号処理を行なうデータ処理装置であり、
上記記憶部は、 上記転送データの暗号処理に適用する配送鍵 K d i sを生成す る配送鍵生成用マスター鍵 MK d i sを格納し、
上記暗号処理部は、 '
上記記憶部に格納された配送鍵生成用マスター鍵 MK d i sと、 上記転送デー タの識別データであるデータ識別子とに基づいて暗号処理を実行して、 上記転送 データの配送鍵 K d i sを生成する構成を有することを特徴とする請求の範囲第 4 7項に記載のデータ処理装置。
4 9 . 上記データ処理装置は、 転送データの転送先あるいは転送元となる外部接 続装置の認証処理を行なうデータ処理装置であり、
上記記憶部は、 上記外部接続装置の認証鍵 K a k eを生成する認証鍵生成用マ スター鍵 MK a k eを格納し、
上記喑号処理部は、 上記記憶部に格納された認証鍵生成用マスター鍵 MK a k eと、 上記外部接続 装置の識別データである外部接続装置識別子とに基づいて暗号処理を実行して、 上記外部接続装置の認証鍵 K a k eを生成する構成を有することを特徴とする請 求の範囲第 4 7項に記載のデータ処理装置。
5 0 . 上記データ処理装置は、 データに対する署名処理を実行するデータ処理装 置であり、
上記記憶部は、 上記データ処理装置のデータ処理装置署名鍵 K d e vを生成す る署名鍵生成用マスター鍵 MK d e vを格納し、
上記暗号処理部は、
上記記憶部に格納された署名鍵生成用マスター鍵 MK d e Vと、 上記データ処 理装置の識別データであるデータ処理装置識別子とに基づいて暗号処理を実行し て、 上記データ処理装置のデータ処理装置署名鍵 K d e .vを生成する構成を有す ることを特徴とする請求の範囲第 4 7項に記載のデータ処理装置。
5 1 . 暗号処理を実行するに必要な個別鍵を、 上記マスター鍵と、 暗号処理対象 の装置またはデータの識別データに基づいて生成する個別鍵生成処理は、 暗号処理対象の装置またはデータの識別データの少なくとも一部をメッセージ とし、 上記マスター鍵を暗号鍵として適用した暗号処理であることを特徴とする 請求の範囲第 4 7項に記載のデータ処理装置。
5 2 . 上記暗号処理は D E Sアルゴリズムを適用した暗号処理であることを特徴 とする請求の範囲第 5 1項に記載のデータ処理装置。
5 3 . 複数のデータ処理装置から構成されるデータ処理システムにおいて、 上記複数のデータ処理装置の各々が、 データ暗号化、 データ複号化、 データ検 証、 認証処理、 署名処理の少なくともいずれかの暗号処理に適用する鍵を生成す るための共通のマスター鍵を有し、
上記複数のデータ処理装置の各々が、 上記マスター鍵と、 暗号処理対象の装置 またはデータの識別データに基づいて上記喑号処理を実行するに必要な共通の個 別鍵を生成する構成を有することを特徴とするデータ処理システム。
5 4 . 上記複数のデータ処理装置は、
コンテンツデータを提供するコンテンツデータ提供装置と、 コンテンツデータ の利用を行なうコンテンツデータ利用装置によって構成され、
コンテンツデータ提供装置おょぴコンテンツデータ利用装置の双方が、 上記コ ンテンッデータ提供装置およびコンテンツデータ利用装置間における流通コンテ ンッデータの暗号処理に適用するコンテンツデータ配送鍵を生成するための配送 鍵生成用マスター鍵を有し、
上記コンテンツデータ提供装置は、 上記配送鍵生成用マスター鍵と、 提供コン テンッデータの識別子であるコンテンッ識別子とに基づいてコンテンツデータ配 送鍵を生成して、 該コンテンッデータの暗号化処理を実行し、
上記コンテンツデータ利用装置は、 上記配送鍵生成用マスター鍵と、 提供コン テンッデータの識別子であるコンテンツ識別子とに基づいてコンテンツデータ配 送鍵を生成して、 該コンテンツデータの復号化処理を実行する構成を有すること を特徴とする請求の範囲第 5 3項に記載のデータ処理
5 5 . 上記コンテンツデータ提供装置は、 複数の異なるコンテンツデータ配送鍵 を生成するための複数の異なる配送鍵生成用マスター鍵を有し、 該複数の配送鍵 生成用マスター鍵と上記コンテンツ識別子に基づいて複数の異なるコンテンツデ ータ配送鍵を生成し、 該生成した複数の配送鍵による暗号化処理を実行して複数 種類の暗号化コンテンツデータを生成し、
上記コンテンツデータ利用装置は、 上記コンテンツデータ提供装置の有する複 数の異なる配送鍵生成用マスター鍵の少なくとも 1つの配送鍵生成用マスター鍵 を有し、 自己の所有する配送鍵生成用マスター鍵と同じ配送鍵生成用マスター鍵 を使用して生成された配送鍵による暗号化コンテンツデータのみを復号可能とし た構成を有することを特徴とする請求の範囲第 5 4項に記載のデータ処理システ ム。
5 6 . 上記複数のデータ処理装置の各々に、 コンテンツデータの喑号処理に適用 するコンテンツ鍵を生成するための同一のコンテンツ鍵生成用マスター鍵を格納 し、
上記複数のデータ処理装置の 1つのデータ処理装置 Aにおいて、 上記コンテン ッ鍵生成用マスター鍵と、 該データ処理装置 Aの装置識別子とに基づいて生成さ れたコンテンツ鍵により暗号化され記憶媒体に格納されたコンテンツデータを、 異なるデータ処理装置 Bにおいて、 上記同一のコンテンツ鍵生成用マスター鍵 と、 上記データ処理装置 Aの装置識別子とに基づいてコンテンツ鍵を生成し、 該 生成したコンテンツ鍵に基づいて、 上記データ処理装置 Aにおいて上記記憶媒体 に格納した暗号化コンテンツデータの復号処理を実行する構成としたことを特徴 とする請求の範囲第 5 3項に記載のデータ処理
5 7 . 上記複数のデータ処理装置は、
ホストデバイスと、 該ホストデバイスの認証処理の対象となるスレーブデバイ スとによって構成され、
上記ホストデバイスおよびスレーブデバイスの双方が、 ホストデバイスとスレ 一プデバイス間の認証処理に適用する認証鍵生成用マスターを有し、
上記スレーブデバイスは、 上記認証鍵生成用マスター鍵と、 該スレーブデバイ スの識別子であるスレープデバイス識別子とに基づいて認証鍵を生成してスレー プデバイス内メモリに格納し、
上記ホストデバイスは、 上記認証鍵生成用マスター鍵と、 上記スレーブデバイ スの識別子であるスレーブデバイス識別子とに基づいて認証鍵を生成して認証処 理を実行する構成を有することを特徴とする請求の範囲第 5 3項に記載のデータ 処理システム。
5 8 . データ暗号化、 データ復号化、 デ一タ検証、 認証処理、 署名処理の少なく ともいずれかの喑号処理を実行する暗号処理を実行するデータ処理方法において 暗号処理を実行するに必要な個別鍵を、 上記暗号処理に適用する鍵を生成する ためのマスター鍵と、 暗号処理対象の装置またはデータの識別データに基づいて 生成する鍵生成ステップと、
上記鍵生成ステップによって生成した鍵に基づいて暗号処理を実行する暗号処 理ステップと、
を有することを特徴とするデータ処理方法。
5 9 . 上記データ処理方法において実行するデータ処理は、 記憶媒体または通信 媒体を介する転送データに関する暗号処理であり、
上記鍵生成ステップは、 '
転送データの暗号処理に適用する配送鍵 K d i sを生成する配送鍵生成用マス ター鍵 MK d i sと、 上記転送データの識別データであるデータ識別子とに基づ いて暗号処理を実行し、 上記転送データの配送鍵 K d i sを生成する配送鍵生成 ステップであり、
上記暗号処理ステップは、
上記配送鍵生成ステップにおいて生成した配送鍵 K d I sに基づいて転送デー タの暗号処理を実行するステップであることを特徴とする請求の範囲第 5 8項に 記載のデータ処理方法。
6 0 . 上記データ処理方法において実行するデータ処理は、 転送データの転送先 あるいは転送元となる外部接続装置の認証処理であり、 上記鍵生成ステップは、
上記外部接続装置の認証鍵 K a k eを生成する認証鍵生成用マスター鍵 MK a k eと、 上記外部接続装置の識別データである外部接続装置識別子とに基づいて 暗号処理を実行して、 上記外部接続装置の認証鍵 K a k eを生成する認証鍵生成 ステップであり、
上記暗号処理ステップは、
上記認証鍵生成ステップにおいて生成した認証鍵 K a k eに基づいて外部接続 装置の認証処理を実行するステップであることを特徴とする請求の範囲第 5 8項 に記載のデータ処理方法。
6 1 . 上記データ処理装置において実行するデータ処理は、 データに対する署名 処理であり、
上記鍵生成ステップは、
上記データ処理装置のデータ処理装置署名鍵 K d e vを生成する署名鍵生成用 マスター鍵 M K d e Vと、 上記データ処理装置の識別デー であるデータ処理装 置識別子とに基づいて暗号処理を実行して、 上記データ処理装置のデータ処理装 置署名鍵 K d e vを生成する署名鍵生成ステップであり、
上記暗号処理ステップは、
上記署名鍵生成ステップにおいて生成した署名鍵 K d e vに基づいてデータに 対する署名処理を実行するステップであることを特徴とする請求の範囲第 5 8項 に記載のデータ処理;^法。
6 2 . 上記鍵生成ステップは、
暗号処理対象の装置またはデータの識別データの少なくとも一部をメッセージ とし、 上記マスター鍵を暗号鍵として適用した暗号処理であることを特徴とする 請求の範囲第 5 8項に記載のデータ処理方法。
6 3 . 上記暗号処理は D E Sアルゴリズムを適用した暗号処理であることを特徴 とする請求の範囲第 6 2項に記載のデータ処理方法。
6 4 . コンテンツデータを提供するコンテンツデータ提供装置と、 コンテンツデ ータの利用を なうコンテンツデータ利用装置とからなるデータ処理システムに おけるデータ処理方法であり、
上記コンテンツデータ提供装置は、 コンテンツデータの暗号処理に適用するコ ンテンッデータ配送鏈を生成するための配送鍵生成用マスター鍵と、 提供コンテ ンッデータの識別子であるコンテンツ識別子とに基づいてコンテンツデータ配送 鍵を生成して、 該コンテンツデータの暗号化処理を実行し、
上記コンテンツデータ利用装置は、 上記配送鍵生成用マスター鍵と、 提供コン テンッデータの識別子であるコンテンッ識別子とに基づいてコンテンツデータ配 送鍵を生成して、 該コンテンツデータの復号化処理を実行することを特徴とする データ処理方法。
6 5 . 上記コンテンツデータ提供装置は、 複数の異なるコンテンツデータ配送鍵 を生成するための複数の異なる配送鍵生成用マスター鍵を有し、 該複数の配送鍵 生成用マスター鍵と上記コンテンツ識別子に基づいて複数の異なるコンテンツデ ータ配送鍵を生成し、 該生成した複数の配送鍵による暗号化処理を実行して複数 種類の暗号化コンテンツデータを生成し、
上記コンテンツデータ利用装置は、 上記コンテンツデータ提供装置の有する複 数の異なる配送鍵生成用マスター鍵の少なくとも 1つの配送鍵生成用マスター鍵 を有し、 自己の所有する配送鍵生成用マスター鍵と同じ配送鍵生成用マスター鍵 を使用して生成された配送鍵による暗号化コンテンッデータのみを復号すること を特徴とする請求の範囲第 6 4項に記載のデータ処理方法。
6 6 . 複数のデータ処理装置によって構成されるデータ処理システムにおけるデ ータ処理方法であり、
上記複数のデータ処理装置中の 1つのデータ処理装置 Aにおいて、 コンテンツ データの暗号処理に適用するコンテンツ鍵を生成するためのコンテンツ鍵生成用 マスター鍵と、 該データ処理装置 Aの装置識別子とに基づいて生成されたコンテ ンッ鍵により暗号化されたコンテンツデータを記憶媒体に格納するステップと、 異なるデータ処理装置 Bにおいて、 上記データ処理装置 Aと同一の上記コンテ ンッ鍵生成用マスター鍵と上記データ処理装置 Aの装置識別子とに基づいて上記 コンテンツ鍵と同一のコンテンツ鍵を生成するステップと、
上記データ処理装置 Bにおいて生成したコンテンツ鍵により上記記憶媒体に格 納したコンテンツデータの復号を行なうステップと、
を有することを特徴とするデータ処理方法。
6 7 . ホストデバイスと、 該ホストデバイスの認証処理の対象となるスレーブデ バイスとからなるデータ処理システムにおけるデータ処理方法であり、
上記スレープデ";バイスは、 ホス トデバイスとスレーブデバイス間の認証処理に 適用する認証鍵を生成するための認証鍵生成用マスター鍵と、 該スレーブデバィ スの識別子であるスレープデバイス識別子とに基づいて認証鍵を生成し、 生成し た認証鍵を該スレーブデバイス内のメモリに格納し、
上記ホストデバイスは、 上記認証鍵生成用マスター鍵と、 上記スレーブデバイ スの識別子であるスレープデバイス識別子とに基づいて認証鍵を生成して認証処 理を実行することを特徴とするデータ処理方法。
6 8 . データ暗号化、 データ復号化、 データ検証、 認証処理、 署名処理の少なく ともいずれかの暗号処理を実行する暗号処理をコンピュータ ·システム上で実行 せしめるコンピュータ 'プログラムを提供するプログラム提供媒体であって、 上 記コンピュータ 'プログラムは、
暗号処理を実行するに必要な個別鍵を、 上記暗号処理に適用する鍵を生成する ためのマスタ一鍵と、 暗号処理対象の装置またはデータの識別データに基づいて 生成する鍵生成ステップと、
上記鍵生成ステツプによって生成した鍵に基づいて暗号処理を実行する暗号処 理ステップと、
を含むことを特徴とするプログラム提供媒体。
6 9 . 記憶媒体または通信媒体によって提供されるコ s—タの処理を行 なうデータ処理装置であり、
データ処理装置識別子を格納した記憶部と、
コンテンツデータ中に含まれる不正機器リストを抽出し、 該リスト内のェント リと上記記憶部に格納された上記データ処理装置識別子との照合処理を実行する リス ト検証部と、
上記照合処理部における照合処理の結果、 上記不正機器リスト中に上記データ 処理識別子と一致する情報が含まれる場合において、 上記コンテンツデータの再 生または記録デバイスに対する格納処理少なくともいずれかの処理の実行を中止 する制御部と、
を有することを特徴とするデータ処理装置。
7 0 . 上記リスト検証部は、 上記コンテンツデータに対する暗号処理を実行する 暗号処理部を有し、
上記暗号処理部は、
上記コンテンツデータ中に含まれる不正機器リストのチェック値に基づいて上 記不正機器リストの改竄の有無を検証し、 該検証により、 改竄なしと判定した場 合にのみ上記照合処理を実行する構成であることを特徴とする請求の範囲第 6 9 項に記載のデータ処理装置。
7 1 . 上記データ処理装置は、 不正機器リス トチェック値生成鍵を有し、 上記喑号処理部は、
検証対象の不正機器リスト構成データに対して上記不正機器リストチェック値 生成鍵を適用した暗号処理を実行して不正機器リストチェック値を生成し、 該生 成した不正機器リストチ ック値と、 上記コンテンツデータ中に含まれる不正機 器リス トのチェック値との照合を実行して上記不正機器リストの改竄の有無を検 証する構成であることを特徴とする請求の範囲第 7 0項に記載のデータ処理装置
7 2 . 上記リス ト検証部は、 上記コンテンツデータに対する暗号処理を実行する 暗号処理部を有し、
上記暗号処理部は、
上記コンテンッデータ中に含まれる暗号化された不正機器リス トの復号処理を 実行し、 該復号処理の結果として得られた不正機器リストについて上記照合処理 を実行する構成であることを特徴とする請求の範囲第 6 9項に記載のデータ処理
7 3 . 上記リスト検証部は、
コンテンッデータ,の転送先または転送元となる記録デバィスとの相互認証処理 を実行する暗号処理部を有し、
上記リスト検証部は、
上記暗号処理部によって実行される上記記録デバィスとの相互認証処理による 認証が成立したことを条件として、 上記コンテンツデータ中に含まれる不正機器 リストを抽出し上記記憶部に格納された上記データ処理装置識別子との照合処理 を実行する構成であることを特徴とする請求の範囲第 6 9項に記載のデータ処理
7 4 . 記憶媒体または通信媒体によって提供されるコンテンツデータの処理を行 なうデータ処理方.法であり、
コンテンツデータ中に含まれる不正機器リストを抽出するリスト抽出ステップ と、
上記リスト抽出ステップによって抽出されたリストに含まれるェントリと、 デ 一タ処理装置内の記憶部に格納された上記データ処理装置識別子との照合処理を 実行する照合処理ステツプと、
上記照合処理ステップにおける照合処理の結果、 上記不正機器リスト中に上記 データ処理識別子と一致する情報が含まれる場合、 上記コンテンツデータの再生 または記録デバイスに対する格納処理少なくともいずれかの処理の実行を中止す るステップと、
を有することを特徴とするデータ処理方法。
7 5 . 上記データ処理方法は、 さらに、
上記コンテンツデータ中に含まれる不正機器リストのチェック値に基づいて上 記不正機器リストの改竄の有無を検証する検証ステップを含み、
上記照合処理ステツプは、
上記検証ステップにより、 改竄なしと判定した場合にのみ実行することを特徴 とする請求の範囲第 7 4項に記載のデータ処理方法。
7 6 . 上記検証ステップは、
検証対象の不正機器リスト構成データに対して不正機器リストチェック値生成 鍵を適用した暗号処理を実行して不正機器リストチェック値を生成するステツプ と、
生成した不正機器リストチェック値と、 上記コンテンツデータ中に含まれる不 正機器リストのチヱック値との照合を実行して上記不正機器リストの改竄の有無 を検証するステップと、
を含むことを特徴とする請求の範囲第 7 5項に記載のデータ処理方法。
7 7 . 上記データ処理方法は、 さらに、
上記コンテンツデータ中に含まれ.る暗号化された不正機器リス トの復号処理を 実行する復号ステップを含み、
上記照合処理ステップは、
上記復号ステップの結果として得られた不正機器リストについて上記照合処理 を実行することを特徴とする請求の範囲第 7 4項に記載のデータ処理方法。
7 8 . 上記データ処理方法は、 さらに、
コンテンッデータの転送先または転送元となる記録デバィスとの相互認証処理 ステップを含み、
上記照合処理ステップは、
上記相互認証処理ステップによって実行される上記記録デバィスとの相互認証 処理による認証が成立したことを条件として上記照合処理を実行することを特徴 とする請求の範囲第 7 4項に記載のデータ処理方法。
7 9 . 記憶媒体または通信媒体によって複数の記録再生器に対して提供されるコ ンテンッデータの生成を行なうコンテンツデータ生成方法であり、
コンテンツデータのへッダ情報として該コンテンツデータの利用の排除対象と なる記録再生器の記録再生器識別子を構成データとした不正機器リストを格納し てコンテンツデータとすることを特徴とするコンテンツデータ生成方法。
8 0 . 上記コンテンツデータ生成方法において、 さらに、
コンテンツデータのへッダ情報として、 上記不正機器リス トの改竄チエック用 の不正機器リストチユック値を格納することを特徴とする請求の範囲第 7 9項に 記載のコンテンツデータ生成方法。
8 1 . 上記コンテンツデータ生成方法において、 さらに、
上記不正機器リストを暗号化してコンテンツデータのへッダ情報中に格納する ことを特徴とする請求の範囲第 7 9項に記載のコンテンツデータ生成方法。
,
8 2 . 記憶媒体または通信媒体によって提供されるコンテンツデータの処理をコ ンピュータ ·システム上で実行せしめるコンピュータ ·プログラムを提供するプ ログラム提供媒体であって、 上記コンピュータ 'プログラムは、
コンテンツデータ中に含まれる不正機器リストを抽出するリスト抽出ステップ と、
上記リスト抽出ステップによって抽出されたリストに含まれるェントリと、 デ 一タ処理装置内の記憶部に格納された上記データ処理装置識別子との照合処理を 実行する照合処理ステツプと、
上記照合処理ステップにおける照合処理の結果、 上記不正機器リスト中に上記 データ処理識別子と一致する情報が含まれる場合、 上記コンテンツデータの再生 または記録デバイスに対する格納処理少なくともいずれかの処理の実行を中止す るステップと、
を有することを特徴とするプログラム提供媒体。
8 3 . 記憶媒体または通信媒体によって提供されるコンテンツデータの処理を行 なうデータ処理装置であり、
上記コンテンツデータに対する暗号処理を実行する暗号処理部と、
上記暗号処理部に対する制御を実行する制御部と、
上記暗号処理部における暗号処理に使用され、 上記コンテンツデータを利用す る他のデータ処理装置に共通のシステム共通鍵と、
上記暗号処理部における暗号処理に使用されるデータ処理装置固有の装置固有 鍵または該装置個有鍵を生成するための装置固有識別子の少なくともいずれかを 有し、 上記暗号処理部は、
上記コンテンツデータの利用態様に応じて上記システム共通鍵、 または上記装 置固有鍵のいずれかを上記コンテンツデータに適用して暗号処理を実行する構成 を有することを特徴とするデータ処理装置。
8 4 . 上記暗号処理部は、
上記コンテンツデータに含まれる利用制限情報に応じて上記システム共通鍵、 または上記装置固有鍵のいずれかを上記コンテンツデータに適用して暗号処理を 実行する構成を有することを特徴とする請求の範囲第 8 3項に記載のデータ処理
8 5 . 上記データ処理装置は、 さらに、
コンテンツデータを記録する記録デバイスを有し、
上記暗号処理部は、
上記コンテンツデータを自己のデータ処理装置のみにおいて使用する利用制限 を付する場合、 上記コンテンツデータに対して上記装置固有鍵を用いた暗号処理 を実行して上記記録デパイスへの格納データを生成し、
上記コンテンツデータを自己のデータ処理装置以外の装置においても使用可能 とする場合、 上記コンテンツデータに対して上記システム共通鍵を用いた暗号処 理を実行して上記記録デバイスへの格納データを生成する構成を有することを特 徴とする請求の範囲第 8 3項に記載のデータ処理装置。
8 6 . 上記データ処理装置は、
データ処理装置固有の署名鍵 K d e v、 および複数のデータ処理装置に共通の システム署名鍵 K s y sを有し、
上記暗号処理部は、
上記コンテンツデータを自己のデータ処理装置のみにおいて使用する利用制限 を付して上記記録デバイスに格納する場合、 上記コンテンツデータに対して上記 装置固有の署名鍵 K d e vを適用した暗号処理により装置固有チェック値を生成 し、
上記コンテンツデータを自己のデータ処理装置以外の装置においても使用可能 として上記記録デバイスに格納する場合、 上記コンテンツデータに対して上記シ ステム署名鍵 K s y sを適用した暗号処理により総チェック値を生成し、 上記制御部は、
上記喑号処理部の生成した上記装置固有チェック値または上記総チェック値の V、ずれかを上記コンテンッデータと共に上記記録デバィスに格納する制御を実行 することを特徴とする請求の範囲第 8 3項に記載のデータ処理装置。
8 7 . 上記データ処理装置は、
データ処理装置固有の署名鍵 K d e v、 および複数のデータ処理装置に共通の システム署名鍵 K s y sを有し、
上記暗号処理部は、 ' 自己のデータ処理装置のみにおいて使用する利用制限の付されたコンテンツデ ータを再生する場合、 上記コンテンツデータに対して上記装置固有の署名鍵 K d e vを適用した暗号処理により装置固有チェック値を生成し、 該生成した装置固 有チェック値の照合処理を実行し、
自己のデータ処理装置以外の装置においても使用可能とされた利用制限の付さ れたコンテンツデータを再生する場合、 上記コンテンツデータに対して上記シス テム署名鍵 K s y sを適用した暗号処理により総チェック値を生成し、 該生成し た総チェック値の照合処理を実行し、
上記制御部は、
上記装置固有チェック値の照合が成立した場合、 あるいは上記総チェック値の 照合が成立した場合にのみコンテンツデータの暗号処理部での処理を続行させて 再生可能復号データを生成する構成を有することを特徴とする請求の範囲第 8 3 項に記載のデータ処理装置。
8 8 . 上記データ処理装置は、
記録データ処理装置署名鍵用マスター鍵 MK d e v、 およびデータ処理装置識 別子 I D d e Vを有し、
上記暗号処理部は、
上記データ処理装置署名鍵用マスター鍵 MK d e vと上記データ処理装置識別 子 I D d e vとに基づく暗号処理によりデータ処理装置固有鍵としての署名鍵 K d e vを生成する構成を有することを特徴とする請求の範囲第 8 3項に記載のデ ータ処理装置。
8 9 . 上記暗号処理部は、
上記データ処理装置識別子 I D d e Vに対して上記データ処理装置署名鍵用マ スター鍵 MK d e vを適用した D E S '喑号処理により上記署名鍵 K d e vを生成 する構成であることを特徴とする請求の範囲第 8 8項に記載のデータ処理装置。
9 0 . 上記暗号処理部は、
上記コンテンツデータに対する暗号処理を実行して中間チェック値を生成し、 該中間チェック値に上記データ処理装置固有鍵またはシステム共有鍵を適用した 暗号処理を実行することを特徴とする請求の範囲第 8 3項に記載のデータ処理装
9 1 . 上記暗号処理部は、
上記コンテンツデータを複数部分に分割した部分データを 1以上含む部分デー タ集合に対する暗号処理により部分チェック値を生成し、
該生成した部分チエック値を含む部分チユック値集合データ列に対する暗号処 理により中間チェック値を生成する構成であることを特徴とする請求の範囲第 9 0項に記載のデータ処理装置。
9 2 . 記憶媒体または通信媒体によって提供されるコンテンツデータの処理を行 なうデータ処理方法であり、
上記コンテンツデータの利用態様に応じて、
上記コンテンツデータを利用する他のデータ処理装置に共通の暗号処理用シス テム共通鍵、 または、 データ処理装置固有の装置固有鍵のいずれかの暗号処理鍵 を選択し、
選択した暗号処理鍵を上記コンテンツデータに適用して暗号処理を実行するこ とを特徴とするデータ処理方法。
9 3 . 上記データ処理方法において、
上記暗号処理鍵を選択するステップは、 上記コンテンツデータに含まれる利用 制限情報に応じて選択するステップであることを特徴とする請求の範囲第 9 2項 に記載のデータ処理方法。
9 4 . 上記データ処理方法におけるコンテンツデータの記録デバイスに対する記 録処理において、
上記コンテンツデータを自己のデータ処理装置のみにおいて使用する利用制限 を付する場合、 上記コンテンツデータに対して上記装置固有鍵を用いた暗号処理 を実行して上記記録デバィスへの格納データを生成し、
上記コンテンツデータを自己のデータ処理装置以外の装置においても使用可能 とする場合、 上記コンテンツデータに対して上記システム共通鍵を用いた暗号処 理を実行して上記記録デバィスへの格納データを生成することを特徴とする請求 の範囲第 9 2項に記載のデータ処理方法。
9 5 . 上記データ処理方法におけるコンテンツデータの記録デバイスに対する記 録処理において、 '
上記コンテンツデータを自己のデータ処理装置のみにおいて使用する利用制限 を付して上記記録デバイスに格納する場合、 上記コンテンツデータに対して上記 装置固有の署名鍵 K d e vを適用した暗号処理により装置固有チェック値を生成 し、
上記コンテンツデータを自己のデータ処理装置以外の装置においても使用可能 として上記記録デバイスに格納する場合、 上記コンテンツデータに対して上記シ ステム署名鍵 K s y sを適用した暗号処理により総チェック値を生成し、 . 上記生成した上記装置固有チェック値または上記総チエック値の!/、ずれかを上 記コンテンツデータと共に上記記録デバイスに格納することを特徴とする請求の 範囲第 9 2項に記載のデータ処理方法。
9 6 . 上記データ処理方法におけるコンテンツデータの再生処理において、 自己のデータ処理装置のみにおいて使用する利用制限の付されたコンテンツデ ータを再生する場合、 上記コンテンツデータに対して上記装置固有の署名鍵 K d e vを適用した喑号処理により装置固有チェック値を生成し、 該生成した装置固 有チヱック値の照合処理を実行し、
自己のデータ処理装置以外の装置においても使用可能とされた利用制限の付さ れたコンテンツデータを再生する場合、 上記コンテンツデータに対して上記シス テム署名鍵 K s y sを適用した暗号処理により総チェック値を生成し、 該生成し た総チェック値の照合処理を実行し、
上記装置固有チェック値の照合が成立した場合、 あるいは上記総チヱック値の 照合が成立した場合にのみコンテンツデータの再生を実行することを特徴とする 請求の範囲第 9 2項に記載のデータ処理方法。
9 7 . 上記データ処理方法において、 さらに、
データ処理装置署名鍵用マスター鍵 M K d e vとデータ処理装置識別子 I D d e vとに基づく暗号処理によりデータ処理装置固有鍵としての署名鍵 K d e Vを 生成するステップを含むことを特徴とする請求の範囲第 9 2項に記載のデータ処 理方法。
9 8 . 上記署名鍵 K d e V生成ステップは、
上記データ処理装置識別子 I D d e vに対して上記データ処理装置署名鍵用マ スター鍵 MK d e vを適用した D E S暗号処理により上記署名鍵 K d e vを生成 するステップであることを特徴とする請求の範囲第 9 7項に記載のデータ処理方 法。
9 9 . 上記データ処理方法は、 さらに、
上記コンテンツデータに対する暗号処理を実行して中間チェック値を生成する ステップを含み、
上記中間チェック値に上記データ処理装置固有鍵またはシステム共有鍵を適用 した暗号処理を実行することを特徴とする請求の範囲第 9 2項に記載のデータ処 理方法。
1 0 0 . 上記データ処理方法は、 さらに、
上記コンテンツデータを複数部分に分割した部分データを 1以上含む部分デー タ集合に対する喑号処理により部分チヱック値を生成し、
該生成した部分チエック値を含む部分チ ック値集合データ列に対する喑号処 理により中間チェック値を生成することを特徴とする請求の範囲第 9 9項に記載 のデータ処理方法。
1 0 1 . 記憶媒体または通信媒体によって提供されるコンテンツデータの処理を 行なうデータ処理をユンピュータ ·システム上で実行せしめるコンピュータ ·プ ログラムを提供するプログラム提供媒体であって、 上記コンピュータ 'プロダラ ムは、
上記コンテンツデータの利用態様に応じて、
上記コンテンツデータを利用する他のデータ処理装置に共通の喑号処理用シス テム共通鍵、 または、 データ処理装置固有の装置固有鍵のいずれかの暗号処理鍵 を選択するステップと、
選択した暗号処理鍵を上記コンテンツデータに適用して暗号処理を実行するス テツプと、
を含むことを特徴とするプロダラム提供媒体。
1 0 2 . 記憶媒体または通信媒体によって提供されるコンテンツデータの処理を 行なうデータ処理装置であり、
上記コンテンツデータに対する暗号処理を実行する暗号処理部と、
上記暗号処理部に対する制御を実行する制御部とを有し、
上記暗号処理部は、
データに含まれる検証対象のコンテンツブロックデータ単位にコンテンツチェ ック値を生成し、 生成したコンテンツチェック値の照合処理を実行することによ り、 上記データ中のコンテンツプロックデータ単位の正当性検証処理を実行する 構成を有することを特徴とするデータ処理装置。
1 0 3 . 上記データ処理装置は、 コンテンツチェック値生成鍵を有し、
上記暗号処理部は、
検証対象のコンテンツブロックデータに基づいてコンテンツ中間値を生成し、 該コンテンツ中間値に対する上記コンテンツチェック値生成鍵を適用した喑号処 理を実行してコンテンツチェック.値を生成する構成であることを特徴とする請求 の範囲第 1 0 2項に記載のデータ処理装置。
1 0 4 . 上記暗号処理部は、 検証対象のコンテンツプロックデータが暗号化されている場合、 該コンテンツ プロックデータの復号処理によって得られる復号文全体を所定バイト単位で所定 の演算処理を行いコンテンツ中間値を生成し、
検証対象のコンテンツプロックデータが暗号化されていない場合、 コンテンツ プロックデータ全体を所定バイト単位で所定の演算処理を行いコンテンツ中間値 を生成する構成であることを特徴とする請求の範囲第 1 0 3項に記載のデータ処
1 0 5 . 上記喑号処理部における上記中間チェック値の生成処理において適用す る上記所定の演算処理は排他的論理和演算であることを特徴とする請求の範囲第 1 0 4項に記載のデータ処理装置。
1 0 6 . 上記喑号処理部は、
C B Cモードによる暗号処理構成を有し、
検証対象のコンテンツプロックデータが暗号化されている場合のコンテンツ中 間値生成処理に適用する上記復号処理は、 C B Cモードによる復号処理であるこ とを特徴とする請求の範囲第 1 0 4項に記載のデータ処理装置。
1 0 7 . 上記喑号処理部の有する C B Cモードによる喑号処理構成は、 処理対象 となるメッセ一ジ列の一部においてのみ複回数共通鍵喑号処理が適用される構成 であることを特徴とする請求の範囲第 1 0 6項に記載のデータ処理装置。
1 0 8 . 上記喑号処理部は、
コンテンツプロックデータに複数のパーツが含まれ、 該コンテンツプロックデ ータに含まれる一部のパーツが検証対象である場合において、 検証対象パ一ッに 基づいてコンテンツチェック値を生成し、 生成したコンテンツチェック値の照合 処理を実行することにより、 上記データ中のコンテンツプロックデータ単位毎の 正当性検証処理を実行する構成を有することを特徴とする請求の範囲第 1 0 2項 に記載のデータ処理装置。 .
1 0 9 . 上記暗号処理部は、
上記コンテンツブロックデータに複数のパーツが含まれ、 検証対象である要検 証パーツが 1つである場合において、
上記要検証パーツが暗号化されている場合、 要検証パーツの復号処理によって 得られる復号文全体を所定バイト単位で排他論理和した値に、 コンテンツチエツ ク値生成鍵を適用した暗号処理を実行してコンテンツチェック値を生成し、 上記要検証パーツが暗号化されていない場合、 該要検証パーツ全体を所定バイ ト単位で排他論理和した値を、 上記コンテンツチェック値生成鍵を適用して暗号 処理を実行してコンテンツチヱック値を生成する構成であることを特徴とする請 求の範囲第 1 0 8項に記載のデータ処理装置。
1 1 0 . 上記暗号処理部は、
上記コンテンツプロックデータに複数のパーツが含まれ、 検証対象である要検 証パーツが複数である場合において、 '
各パーツ毎にコンテンツチェック値生成鍵を適用して暗号処理を実行して得ら れたパーツチェック値の連結データに対して、 さらに上記コンテンツチェック値 生成鍵を適用した暗号処理を実行して得られる結果をコンテンツチェック値とす る構成であることを特徴とする請求の範囲第 1 0 8項に記載のデータ処理装置。
1 1 1 . 上記データ処理装置は、 さらに、
上記暗号処理部において正当性検証の実行されたコンテンツブロックデータを 含むコンテンツデータを格納する記録デバイスを有することを特徴とする請求の 範囲第 1 0 2項に記載のデータ処理装置。
1 1 2 . 上記暗号処理部におけるコンテンツチェック値の照合処理において、 照 合が成立しなかった場合において、
上記制御部は、 上記記録デバイスへの格納処理を中止する構成を有することを 特徴とする請求の範囲第 1 1 1項に記載のデータ処理装置。
1 1 3 . 上記データ処理装置は、 さらに、
上記暗号処理部において正当性検証の実行されたデ一タを再生する再生処理部 を有することを特徴とする請求の範囲第 1 0 2項に記載のデータ処理装置。
1 1 4 . 上記データ処理装置は、
上記暗号処理部におけるコンテンツチェック値の照合処理において、 照合が成 立しなかった場合において、
上記制御部は、 上記再生処理部での再生処理を中止する構成を有することを特 徴とする請求の範囲第 1 1 3項に記載のデータ処理装置。
1 1 5 . 記憶媒体または通信媒体によって提供されるコンテンツデータの処理を 行なうデータ処理方法であり、
データに含まれる検証対象のコンテンツプロックデータ単位にコンテンツチェ ック値を生成し、 生成したコンテンツチェック値の照合処理を実行することによ り、 上記データ中のコンテンツプロックデータ単位の正当性検証処理を実行する ことを特徴とするデータ処理方法。
1 1 6 . 上記データ処理方法は、
検証対象のコンテンツプロックデータに基づいてコンテンツ中間値を生成し、 生成したコンテンッ中間値に対するコンテンッチヱック値生成鍵を適用した喑 号処理を実行してコンテンツチヱック値を生成することを特徴とする請求の範囲 第 1 1 5項に記載のデータ処理方法。
1 1 7 . 上記データ処理方法において、
検証対象のコンテンツプロックデータが暗号化されている場合、 該コ ブロックデータの復号処理によつて得られる復号文全体を所定バイト単位で所定 の演算処理を行いコンテンツ中間値を生成し、
検証対象のコンテンツプロックデータが暗号化されていない場合、 コンテンツ プロックデータ全体を所定バイト単位で所定の演算処理を行いコンテンツ中間値 を生成することを特徴とする請求の範囲第 1 1 5項に記載のデータ処理方法。
1 1 8 . 上記データ処理方法において、 '
上記中間チェック値の生成処理において適用する上記所定の演算処理は排他的 論理和演算であることを特徴とする請求の範囲第 1 1 7項に記載のデータ処理方 法。
1 1 9 . 上記コンテンツ中間値の生成処理において、
検証対象のコンテンツプロックデータが暗号化されている場合のコンテンツ中 間値生成処理に適用する上記復号処理は、 C B Cモードによる復号処理であるこ とを特徴とする請求の範囲第 1 1 7項に記載のデータ処理方法。
1 2 0 . '上記 C B Cモードによる復号処理構成は、 処理対象となるメッセージ列 の一部においてのみ複回数共通鍵暗号処理が適用することを特徴とする請求の範 囲第 1 1. 9項に記載のデータ処理方法。
1 2 1 . 上記データ処理方法において、
コンテンツプロックデータに複数のパーツが含まれ、 該コンテンツプロックデ ータに含まれる一部のパーツが検証対象である場合、 検証対象パーッに基づいて コンテンツチェック値を生成し、 生成したコンテンツチェック値の照合処理を実行することにより、 上記データ 中のコンテンツブロックデータ単位毎の正当性検証処理を実行することを特徴と する請求の範囲第 1 1 5項に記載のデータ処理方法。
1 2 2 . 上記データ処理方法において、
コンテンツプロックデータに複数のパーツが含まれ、 検証対象である要検証パ ーッが 1つである場合、
上記要検証パーツが暗号化されている場合、 要検証パーツの復号処理によって 得られる復号文全体を所定バイト単位で排他論理和した値に、 コンテンツチェッ ク値生成鍵を適用した暗号処理を実行してコンテンツチェック値を生成し、 上記要検証パーツが暗号化されていな!/、場合、 該要検証パーツ全体を所定バイ ト単位で排他論理和した値を、 上記コンテンツチェック値生成鍵を適用して暗号 処理を実行してコンテンツチェック値を生成することを特徴とする請求の範囲第 1 2 1項に記載のデータ処理方法。
1 2 3 . 上記データ処理方法において、 ,
上記コンテンツブロックデータに複数のパーツが含まれ、 検証対象である要検 証パーツが複数である場合、
各パーツ毎にコンテンツチェック値生成鍵を適用して暗号処理を実行して得ら れたパーツチェック値の連結データに対して、 さらに上記コンテンツチェック値 生成鍵を適用した暗号処理を実行して得られる結果をコンテンツチェック値とす ることを特徴とする請求の範囲第 1 2 1項に記載のデータ処理方法。
1 2 4 . 上記データ処理方法は、 さらに、
正当性検証の実行されたコンテンツブロックデータを含むコンテンツデータを 格納するステップを含むことを特徴とする請求の範囲第 1 1 5項に記載のデータ 処理方法。
1 2 5 . 上記データ処理方法は、 さらに、 '
コンテンツチェック値の照合処理において、 照合が成立しなかつた場合におい て、
上記制御部は、 上記記録デバィスへの格納処理を中止することを特徴とする請 求の範囲第 1 2 4項に記載のデータ処理方法。
1 2 6 . 上記データ処理方法は、 さらに、
正当性検証の実行されたデータを再生する再生処理を実行するステップを含む ことを特徴とする請求の範囲第 1 1 5項に記載のデータ処理方法。
1 2 7 . 上記データ処理方法は、
コンテンツチェック値の照合処理において、 照合が成立しなかつた場合におい て、 再生処理を中止することを特徴とする請求の範囲第 1 2 6項に記載のデータ 処理方法。
1 2 8 . コンテンツデータ検証処理のためのコンテンツデータ検証値付与方法で あり、
データに含まれる検証対象のコンテンツブロックデータ単位にコンテンツチェ ック値を生成し、 生成したコンテンツチェック値を検証対象コンテンツプロック データを含むコンテンツデータに付与することを特徴とするコンテンツデータ検 証値付与方法。 ;
1 2 9 . 上記コンテンツチェック値は、 チェック対象となるコンテンツプロック データをメッセージとし、 コンテンツチヱック値生成鍵を適用した暗号処理によ つて生成される値であることを特徴とする請求の範囲第 1 2 8項に記載のコンテ ンッデータ検証値付与方法。
1 3 0 . 上記コンテンツチェック値は、 検証対象のコンテンツブロックデータに 基づいてコンテンツ中間値を生成し、 該コンテンツ中間値に対する上記コンテン ッチェック値生成鍵を適用した暗号処理を実行して生成される値であることを特 徴とする請求の範囲第 1 2 8項に記載のコンテンツデータ検証値付与方法。
1 3 1 . 上記コンテンツチェック値は、 検証対象のコンテンツブロックデータに 対する C B Cモードによる暗号処理を実行することによって生成される値である ことを特徴とする請求の範囲第 1 2 8項に記載のコンテンツデータ検証値付与方 法。
1 3 2 . 上記 C B Cモードによる暗号処理構成は、 処理対象となるメッセージ列 の一部においてのみ複回数共通鍵暗号処理が適用される構成であることを特徴と する請求の範囲第 1 3 1項に記載のコンテンツデータ検証値付与方法。
1 3 3 . 上記コンテンツデータ検証値付与方法において、
コンテンツプロックデータに複数のパーツが含まれ、 該コンテンツプロックデ ータに含まれる一部のパーツを検証対象とする場合において、 検証対象パーツに 基づいてコンテンツチェック値を生成し、 生成したコンテンツチェック値を検証 対象コンテンツプロックデータを含むコンテンツデータに付与することを特徴と する請求の範囲第 1 2 8項に記載のコンテンツデータ 証値付与方法。
1 3 4 . 上記コンテンツデータ検証値付与方法において、
上記コンテンツプロックデータに複数のパーツが含まれ、 検証対象である要検 証パーツが 1つである場合において、
上記要検証パーツが暗号化されている場合、 要検証パーツの復号処理によって 得られる復号文全体を所定バイ ト単位で排他論理和した値に、 コンテンツチエツ ク値生成鍵を適用した暗号処理を実行してコンテンツチユック値を生成し、 上記要検証パーツが暗号化されていない場合、 該要検証パーツ全体を所定バイ ト単位で排他論理和した値を、 上記コンテンツチェック値生成鍵を適用して暗号 処理を実行してコンテンッチェック値を生成し、 生成したコンテンツチェック値 を検証対象コンテンツプロックデータを含むコンテンツデータに付与することを 特徴とする請求の範囲第 1 3 3項に記載のコンテンツデータ検証値付与方法。
1 3 5 . 上記コンテンツデータ検証値付与方法において、
上記コンテンツプロックデータに複数のパーツが含まれ、 検証対象である要検 証パーツが複数である場合において、
各パーツ毎にコンテンツチェック値生成鍵を適用して暗号処理を実行して得ら れたパーツチェック値の連結データに対して、 さらに上記コンテンツチェック値 生成鍵を適用した暗号処理を実行して得られる結果をコンテンツチェック値とし 、 生成したコンテンツチェック値を検証対象コンテンツプロックデータを含むコ ンテンッデータに付与することを特徴とする請求の範囲第 1 3 3項に記載のコン テンッデータ検証値付与方法。 ■
1 3 6 . 記憶媒体または通信媒体によって提供されるコンテンツデータの処理を 行なうデータ処理をコンピュータ ·システム上で実行せしめるコンピュータ ·プ ログラムを提供するプログラム提供媒体であって、 上記コンピュータ 'プログラ ムは、 : ,
データに含まれる検証対象のコンテンツプロックデータ単位にコンテンツチェ ック値を生成するステップと、 生成したコンテンツチェック値の照合処理を実行 することにより、 上記データ中のコンテンツプロックデータ単位の正当性検証処 理を実行するステップと、
を含むことを特徴とするプログラム提供媒体。
1 37. 少なくとも一部のプロックが暗号化された複数のコンテンツブロックと 、 該コンテンツブロックに関する情報を格納したへッダ部を有するコンテンッデ 一タの記録デバィスに対する格納データを生成する処理を実行するデータ処理装 置であり、
上記データ処理装置は、
上記記録デバィスに対する格納対象となるコンテンツデータが、 上記コンテン ッブロックの暗号鍵 K c o nを暗号鍵 K d i sによつて暗号処理した暗号鍵デー タ Kd i s [K c o n] を上記ヘッダ部に格納したデータによって構成されてい る場合において、
上記暗号鍵データ Kd i s [K c o n] を上記ヘッダ部から取り出して復号処 理を実行して復号データ K c o nを生成し、 該生成した復号データ Kc o nに対 して異なる暗号鍵 K s t rを適用して暗号処理を実行することにより、 暗号鍵 K s t rによって喑号処理された新たな喑号鍵データ K s t r [K c o n] を生成 して上記コンテンツデータのヘッダ部に格納する処理を実行する構成を有するこ とを特徴とするデータ処理装置。
1 38. 少なくとも一部のブロックが喑号化された複数のコンテンツプロックと 、 該コンテンツプロックに関する情報を格納したヘッダ部を有するコンテンツデ ータの記録デバイスに対する格納データを生成する処理を実行するデータ処理装 置であり、
上記データ処理装置は、
上記記録デバィスに対する格納対象となるコンテンッデータに含まれる上記コ ンテンップロックが、 暗号鍵 Kb 1 cによって暗号化されたコンテンツと、 暗号 鍵 K c o nによって暗号化された暗号鍵データ K c o n [Kb 1 c] によって構 成され、 さらに、 喑号鍵 Kc o nを暗号鍵 Kd i sによって暗号処理した暗号鍵 データ Kd i s [Kc o n] を上記ヘッダ部に格納した構成を有する場合におい て、 上記喑号鏈データ Kd i s [K c o n] を上記ヘッダ部から取り出して復号処 理を実行して復号データ Kc o nを生成し、 該生成した復号データ Kc o nに対 して異なる暗号鍵 K s t rを適用して喑号処理を実行することにより、 暗号鍵 K s t rによって暗号処理された暗号鍵データ K s t r [Kc o n] を生成して上 記コンテンツデータのへッダ部に格納する処理を実行する構成を有することを特 徴とするデータ処理装置。
1 39. 少なくとも一部のブロックが暗号化された複数のコンテンツブロックと 、 該コンテンツブロックに関する情報を格納したヘッダ部を有するコンテンツデ 一タの記録デバィスに対する格納データを生成する処理を実行するデータ処理装 置であり、
上記データ処理装置は、
上記記録デバィスに対する格納対象となるコンテンツデータに含まれる上記コ ンテンッブロックが、 喑号鍵 Kb 1 cによって暗号化されたコンテンツと、 喑号 鍵 Kd i sによって暗号化された喑号鍵データ Kd i s [Kb 1 c] によって構 成されている場合において、
上記暗号鍵データ Kd i s [Kb 1 c] を上記コンテンツブロック部から取り 出して、 該喑号鍵 Kb 1 cの復号処理を実行して復号データ Kb 1 cを生成し、 該生成した復号データ Kb 1 cに対して異なる暗号鍵 K s t rを適用して暗号処 理を実行することにより、 暗号鍵 K s t rによって喑号処理された喑号鏈 K s t r [Kb 1 c] を生成してコンテンツプロック部に格納する処理を実行する構成 を有することを特徴とするデータ処理装置。
140. コンテンツデータを生成するコンテンツデータ生成方法であり、 音声情報、 画像情報、 プログラムデータの少なくともいずれかを含むデータに よって構成されるコンテンツプロックを複数プロック連結し、
複数のコンテンツプロックに含まれる少なくとも一部のコンテンツプロックを 暗号鍵 K c o nによって暗号処理し、
上記暗号鍵 K c o nを暗号鍵 K d i sによって喑号処理した暗号鍵データ K d i s [ K c o n ] を生成して上記コンテンツデータのヘッダ部に格納し、 複数のコンテンツプロックとへッダ部を含むコンテンッデータを生成するコン テンッデータ生成方法。
1 4 1 . 上記コンテンッデータ生成方法は、 さらに、
コンテンッデータの識別情報、
コンテンツデータのデータ長、 コンテンツデータのデータ種類を含む取扱方針 情報、
上記コンテンツプロックのデータ長、 暗号処理の有無を含む情報を格納したプ ロック情報を生成して、 上記へッダ部に格納する処理を含むことを特徴とする請 求の範囲第 1 4 0項に記載のコンテンツデータ生成方法。
1 4 2 . 上記コンテンツデータ生成方法は、 さらに、
上記ヘッダ部を構成する一部の情報に基づく部分チェック値を生成して、 該部 分チェック値を上記へッダ部に格納し、
さらに、 上記部分チェック値に基づく総チェック値を生成して、 該総チェック 値を上記ヘッダ部に格納する処理を含むことを特徴とする請求の範囲第 1 4◦項 に記載のコンテンツデータ生成方法。
1 4 3 . 上記部分チェック値の生成処理および総チェック値の生成処理は、 チェック対象.となるデータをメッセージとし、 チェック値生成鍵を喑号鍵とす る D E S暗号処理アルゴリズムを適用して実行することを特徴とする請求の範囲 第 1 4 2項に記載のコンテンツデータ生成方法。
1 4 4 . 上記コンテンツデータ生成方法は、 さらに、 上記プロック情報を暗号鍵 Kb i tにより暗号化処理し、 該暗号鍵 Kb i tを 暗号鍵 Kd i sによって生成した喑号鍵データ Kd i s [Kb i t] を上記へッ ダ部に格納することを特徴とする請求の範囲第.1 41項に記載のコンテンツデー タ生成方法。 '
145. 上記コンテンツブロック中の複数プロックの各々のブロックは共通する 一定のデータ長として生成することを特徴とする請求の範囲第 1 40項に記載の コンテンツデータ生成方法。
146. 上記コンテンツブロック中の複数プロックの各々のプロックは暗号デ一 タ部と非暗号データ部とを規則的に配列した構成として生成することを特徴とす る請求の範囲第 140項に記載のコンテンツデータ生成方法。
147. コンテンツデータを生成するコンテンツデータ生成方法であり、 音声情報、 画像情報、 プログラムデータの少なくともいずれかを含むコンテン ッブロックを複数プロック連結するとともに、
複数のコンテンップロックの少なくとも一部のプロックを、 音声情報、 画像情 報、 プログラムデータの少なくともいずれかを含むデータを暗号鍵 Kb 1 cで喑 号化した暗号データ部と、 該暗号データ部の暗号鍵 Kb 1 cを暗号鍵 K c o nに よって喑号処理した喑号鍵データ K c o n [Kb .1 c] の組によって構成し、 上記喑号鍵 Kc o nを暗号鍵 Kd i sによって暗号処理した暗号鍵データ K d i s [K c o n] を生成して上記コンテンツデータのヘッダ部に格納し、 複数のコンテンツプロックとヘッダ部を含むコンテンツデータを生成するコン ータ生成方法。
148. コンテンツデータを生成するコンテンツデータ生成方法であり、 音声情報、 画像情報、 プログラムデータの少なくともいずれかを含むコンテン ップロックを複数プロック連結するとともに、
複数のコンテンツブロックの少なくとも一部のブロックを、 音声情報、 画像情 報、 プログラムデータの少なくともいずれかを含むデータを暗号鍵 Kb 1 cで暗 号化した暗号データ部と、 該暗每データ部の暗号鍵 Kb 1 cを暗号鍵 Kd i sに よって暗号処理した暗号鍵データ K d i s [Kb 1 c] の組によって構成し、 複数のコンテンツプロックとヘッダ部を含むコンテンツデータを生成するコン ータ生成方法。
149. 少なくとも一部のブロックが暗号化された複数のコンテンツブロックと 、 該コンテンツブロックに関する情報を格納したへッダ部を有するコンテンツデ ータの記録デバイスに対する格納処理を実行するデータ処理方法であり、 上記記録デバィスに対する格納対象となるコンテンツデータが、 上記コンテン ップロックの暗号鍵 K c o nを暗号鍵 K d i sによつて暗号処理した暗号鍵デー タ Kd i s [K c o n] を上記ヘッダ部に格納したデータによって構成されてい る場合において、
上記暗号鍵データ Kd i s [Kc o n] を上記ヘッダ部から取り出して復号処 理を実行して復号データ K c o nを生成し、
該生成した復号データ Kc o nに対して異なる暗号鍵 K s t rを適用して喑号 処理を実行することにより、 暗号鍵 K s t rによって喑号処理された新たな暗号 鍵データ K s t r [K c o n] を生成し、 _ 上記生成した喑号鏈データ K s t r [Kc o n] を上記コンテンツデータのへ ッダ部に格納し、 上記複数のコンテンツプロックと共に上記記録デバィスに格納 することを特徴とするデータ処理方法。
1 50. 少なくとも一部のブロックが暗号化された複数のコンテンツブロックと 、 該コンテンツプロックに関する情報を格納したヘッダ部を有するコ
ータの記録デバイスに対する格納処理を実行するデータ処理方法であり、 上記記録デバィスに対する格納対象となるコンテンッデータに含まれる上記コ ンテンップロックが、 暗号鍵 Kb 1 cによって暗号化されたコンテンツと、 暗号 鍵 K c o nによって喑号化された暗号鍵データ K c o n [Kb 1 c] によって構 成され、 さらに、 暗号鍵 K c o nを暗号鍵 Kd i sによって喑号処理した暗号鍵 データ Kd i s [K c o n] を上記ヘッダ部に格納した構成を有する場合におい て、
上記暗号鍵データ Kd i s [K c o n] を上記ヘッダ部から取り出して復号処 理を実行して復号データ Kc o nを生成し、
該生成した復号データ K c o nに対して異なる暗号鍵 K s t rを適用して暗号 処理を実行することにより、 暗号鍵 K s t rによって暗号処理された喑号鍵デー タ K s t r [K c o n] を生成し、
上記生成した暗号鍵データ K s t r [K c o n] を上記コンテンツデータのへ ッダ部に格納し、 上記複数のコンテンツプロックと共に上記記録デバイスに格納 することを特徴とするデータ処理方法。
1 5 1. 少なくとも一部のプロックが喑号化された複数のコンテンツプロックと 、 該コンテンツブロックに関する情報を格納したへッダ部を有するコンテンツデ ータの記録デバイスに対する格納処理を実行するデータ処理方法であり、 上記記録デバィスに対する格納対象となるコンテンツデ一タに含まれる上記コ ンテンップロックが、 喑号鍵 Kb 1 cによって暗号化されたコンテンツと、 暗号 鍵 Kd i sによって暗号化された暗号鍵データ Kd i s [Kb 1 c] によって構 成されている場合において、
上記喑号鍵データ Kd i s [Kb 1 c] を上記コンテンツブロック部から取り 出して、 該暗号鍵 Kb 1 cの復号処理を実行して復号データ Kb 1 cを生成し、 該生成した復号データ Kb 1 cに対して異なる暗号鍵 K s t rを適用して暗号 処理を実行することにより、 暗号鍵 K s t rによって暗号処理された暗号鍵 K s t r [Kb 1 c] を生成し、 該生成した暗号鍵 K s t r [Kb 1 c] をコンテンツブロック部に格納し、 複 数のコンテンツプロックと共に上記記録デバイスに格納することを特徴とするデ ータ処理方法。
152. 少なくとも一部のプロックが喑号化された複数のコンテンツブロックと 、 該コンテンツブロックに関する情報を格納したへッダ部を有するコンテンツデ ータの記録デバイスに対する格納データの生成処理をコンピュータ 'システム上 で実行せしめるコンピュータ ·プログラムを提供するプログラム提供媒体であつ て、 上記コンピュータ ·プログラムは、
上記記録デバィスに対する格納対象となるコンテンツデータが、 上記コンテン ップロックの喑号鍵 Kc o nを暗号鍵 Kd i sによって暗号処理した暗号鍵デー タ Kd i s [K c o n] を上記ヘッダ部に格納したデータによって構成されてい る場合において、
上記暗号鍵データ Kd i s [K c o n] を上記ヘッダ部から取り出して復号処 理を実行して復号データ K c o nを生成するステップと、
該生成した復号データ Kc o nに対して異なる喑号鍵 K s t rを適用して喑号 処理を実行することにより、 暗号鍵 K s t rによって暗号処理された新たな喑号 鍵データ K s t r [Kc o n] を生成するステップと、
上記生成した喑号鍵データ K s t r [Kc o n] を上記コンテンツデータのへ ッダ部に格納するステップと、
を含むことを特徴とするプログラム提供媒体。
153. 記憶媒体または通信媒体によって提供されるコンテンツデータの再生処 理を行なうデータ処理装置であり、
圧縮されたコンテンツと該圧縮コンテンツの伸長処理プログラムとを含むコン テンッデータのコンテンツデータ解析を実行し、 該コンテンツデータから圧縮コ 、 伸長処理プログラムの抽出処理を実行するコンテンツデータ解析部 と、
上記コンテンツデータ解析部の解析結果として得られたコンテンツデータに含 まれる伸長処理プログラムを用いて該コンテンツデータに含まれる圧縮コンテン ッの伸長処理を実行する伸長処理部と、
を有することを特徴とするデータ処理装置。
1 5 4 . 上記データ処理装置は、 さらに、
上記コンテンッデータ解析部によって抽出きれた圧縮コンテンツを格納するデ ータ記憶部と、
上記コンテンツデータ解析部によって抽出された伸長処理プログラムを格納す るプログラム記憶部とを有し、
上記伸長処理部は、
上記データ記憶部に記憶された圧縮コンテンツに対して、 上記プログラム記憶 部に記憶された伸長処理プログラムを適用して伸長処理を実行する構成を有する ことを特徴とする請求の範囲第 1 5 3項に記載のデータ処理装置。
1 5 5 . 上記コンテンツデータ解析部は、
上記コンテンツデータに含まれるへッダ情報に基づいてコンテンツデータの構 成情報を取得してコンテンツデータの解析を行なう構成であることを特徴とする 請求の範囲第 1 5 3項に記載のデータ処理装置。
1 5 6 . 上記ヘッダ情報には、 , 圧縮コンテンツの再生優先順位情報が含まれ、
上記伸長処理部において伸長処理対象となる圧縮コンテンツが複数ある場合、 上記伸長処理部は、
上記コンテンツデータ解析部において取得されたへッダ情報中の優先順位情報 に基づいて、 該優先順位に従って順次コンテンツ伸長処理を実行する構成である ことを特徴とする請求の範囲第 1 5 5項に記載のデータ処理装置。
1 5 7 . 上記データ処理装置は、 さらに、
伸長処理対象となる圧縮コンテンツの情報を表示する表示手段と、
上記表示手段に表示されたコンテンッ情報から選択された再生コンテンツ識別 データを入力する入力手段を有し、
上記伸長処理部は、
上記入力手段から入力された再生コンテンツ識別データに基づいて、 該識別デ ータに対応する圧縮コンテンツの伸長処理を実行する構成であることを特徴とす る請求の範囲第 1 5 3項に記載のデータ処理装置。
1 5 8 . 記憶媒体または通信媒体によって提供されるコンテンツデータの再生処 理を行なうデータ処理装置であり、
圧縮コンテンツ、 または伸長処理プログラムのいずれかを含むコンテンツデー タを受領し、 受領コンテンツデータに含まれるへッダ情報から該コンテンツデー タが圧縮コンテンツであるか伸長処理プログラムであるかを判別するとともに、 該コンテンッデータが圧縮コンテンツである場合、 該コンテンツデータのへッ ダ情報から、 該圧縮コンテンツに適用された圧縮処理プロダラム種類を取得し、 該コンテンッデ一タが伸長処理プログラムである場合、 該コンテンツデータの へッダ情報から伸長処理プログラム種類を取得するコンテンツデータ解析部と、 圧縮コンテンツの伸長処理を実行する伸長処理部とを有し、
上記伸長処理部は、
上記コンテンツデータ解析部が解析した圧縮コンテンツの圧縮処理プログラム 種類に対して適用可能な伸長処理プログラムを、 上記コンテンツデータ解析部に よって解析された伸長処理プログラム種類に基づいて選択し、 該選択した伸長処 理プログラムによる伸長処理を実行する構成を有することを特徴とするデータ処
1 5 9 . 上記データ処理装置は、 さらに、
上記コンテンツデータ解析部によって抽出された圧縮コンテンツを格納するデ ータ記憶部と、
上記コンテンツデータ解析部によつて抽出された伸長処理プログラムを格納す るプログラム記憶部とを有し、
上記伸長処理部は、
• 上記データ記憶部に記憶された圧縮コンテンツに対して、 上記プログラム記憶 部に記憶された伸長処理プログラムを適用して伸長処理を実行する構成を有する ことを特徴とする請求の範囲第 1 5 8項に記載のデータ処理装置。
1 6 0 . 上記ヘッダ情報には、
圧縮コンテンツの再生優先順位情報が含まれ、 伸長処理対象となる圧縮コンテ ンッが複数ある場合、
上記伸長処理部におけるコンテンツ伸長処理は、
上記コンテンツデータ解析部において取得されたヘッダ情報中の優先順位情報 に基づいて、 該優先順位に従って順次実行する構成であることを特徴とする請求 の範囲第 1 5 8項に記載のデータ処理装置。
1 6 1 . 上記データ処理装置は、
伸長処理プログラムを検索する検索手段を有し、
上記検索手段は、
上記コンテンツデータ解析部が解析した圧縮コンテンッの圧縮処理プロダラム 種類に対して適用可能な伸長処理プログラムを、 上記データ処理装置がアクセス 可能なプログラム格納手段を検索対象として検索する構成であることを特徴とす る請求の範囲第 1 5 8項に記載のデータ処理装置。
1 6 2 . 上記データ処理装置は、 さらに、
伸長処理対象となる圧縮コンテンツの情報を表示する表示手段と、
上記表示手段に表示されたコンテンツ情報から選択された再生コンテンツ識別 データを入力する入力手段を有し、
上記伸長処理部は、
上記入力手段から入力された再生コンテンツ識別データに基づいて、 該識別デ ータに対応する圧縮コンテンツの伸長処理を実行する構成であることを特徴とす る請求の範囲第 1 5 8項に記載のデータ処理装置。
1 6 3 . 記憶媒体または通信媒体によって提供されるコンテンツデータの再生処 理を行なうデータ処理方法であり、
圧縮されたコンテンツと該圧縮コンテンッの伸長処理プログラムとを含むコン テンッデータのコンテンツデータ解析を実行し、 該コンテンツデータから圧縮コ ンテンッと、 伸長処理プログラムの抽出処理を実行するコンテンッデータ解析ス 上記コンテンツデータ解析ステップの解析結果として得られたコンテンツデー タに含まれる伸長処理プログラムを用いて該コンテンツデータに含まれる圧縮コ ンテンッの伸長処理を実行する伸長処理ステップと、
を有することを特徴とするデータ処理方法。
1 6 4 . 上記データ処理方法は、 さらに、
上記コンテンツデータ解析ステップによって抽出された圧縮コンテンツを格納 するデータ記憶ステップと、
上記コンテンツデータ解析部によって抽出された伸長処理プログラムを格納す るプロダラム記憶ステツプとを有し、
上記伸長処理ステップは、
上記データ記憶ステップにおいて記憶された圧縮コンテンツに対して、 上記プ ログラム記憶ステップにおいて記憶された伸長処理プログラムを適用して伸長処 理を実行する構成を有することを特徴とする請求の範囲第 1 6 3項に記載のデー タ処理方法。
1 6 5 . 上記コンテンツデータ解析ステップは、
上記コンテンッデ タに含まれるへッダ情報に基づいてコンテンツデータの構 成情報を取得してコンテンツデータの解析を行なうことを特徴とする請求の範囲 第 1 6 3項に記載のデータ処理方法。
1 6 6 . 上記ヘッダ情報には、 ' 圧縮コンテンツの再生優先順位情報が含まれ、
上記伸長処理部において伸長処理対象となる圧縮コンテンツが複数ある場合、 上記伸長処理ステップは、
上記コンテンツデータ解析ステップにおいて取得されたへッダ情報中の優先順 位情報に基づいて、 該優先順位に従って順次コンテンツ伸長処理を実行すること を特徴とする請求の範囲第 1 6 5項に記載のデータ処理方法。 '
1 6 7 . 上記データ処理方法は、 さらに、
伸長処理対象となる圧縮コンテンッの情報を表示手段に表示する表示ステップ と、
上記表示手段に表示されたコンテンッ情報から選択された再生コンテンツ識別 データを入力する入力する入力ステップとを有し、
上記伸長処理ステップは、
上記入力ステップにおいて入力された再生コンテンツ識別データに基づいて、 該識別データに対応する圧縮コンテンツの伸長処理を実行することを特徴とする 請求の範囲第 1 6 3項に記載のデータ処理方法。
1 6 8 . 記憶媒体または通信媒体によって提供されるコンテンツデータの再生処 理を行なうデータ処理方法であり、
圧縮コンテンツ、 または伸長処理プログラムのいずれかを含むコンテンツデー タを受領し、 受領コンテンツデータに含まれるへッダ情報から該コンテンツデ一 タが圧縮コンテンツであるか伸長処理プログラムであるかを判別するとともに、 該コンテンツデータが圧縮コンテンツである場合、 該コンテンツデータのへッ ダ情報から、 該圧縮コンテンツに適用された圧縮処理プロダラム種類を取得し、 該コンテンツデータが伸長処理プログラムである場合、 該コンテンツデータの ヘッダ情報から伸長処理プログラム種類を取得するコンテンッデータ解析ステツ プと、
上記コンテンッデータ解析ステップにおレ、て解析した圧縮コンテンツの圧縮処 理プロダラム種類に対して適用可能な伸長処理プログラムを、 上記コンテンツデ ータ解析ステツプによつて解析された伸長処理プログラム種類に基づいて選択す る選択ステップと、
上記選択ステップにおいて選択した伸長処理プログラムによる伸長処理を実行 する伸長処理ステップと、
を有することを特徴とするデータ処理方法。
1 6 9 . 上記データ処理方法は、 さらに、
上記コンテンツデータ解析部によって抽出された圧縮コンテンツを格納するデ ータ記憶ステップと、
上記コンテンツデータ解析部によって抽出された伸長処理プロダラムを格納す るプロダラム記憶ステツプとを有し、
上記伸長処理ステップは、
上記データ記憶ステップにおいて記憶された圧縮コンテンツに対して、 上記プ ログラム記憶ステップにおいて記憶された伸長処理プログラムを適用して伸長処 理を実行することを特徴とする請求の範囲第 1 6 8項に記載のデータ処理方法。
1 7 0 . 上記ヘッダ情報には、
圧縮コンテンツの再生優先順位情報が含まれ、 伸長処理対象となる圧縮コンテ ンッが複数ある場合、
上記伸長処理ステップは、
上記コンテンツデータ解析ステップにおいて取得されたヘッダ情報中の優先順 位情報に基づいて、 該優先順位に従って順次実行することを特徴とする請求の範 . 6 8項に記載のデータ処理方法。
1 7 1 . 上記データ処理方法は、 さらに、
伸長処理プログラムを検索する検索ステップを有し、
上記検索ステップは、
上記コンテンツデータ解析ステツプにお!/、て解析した圧縮コンテンツの圧縮処 理プログラム種類に対して適用可能な伸長処理プログラムを、 アクセス可能なプ 口グラム格納手段を検索対象として検索することを特徴とする請求の範囲第 1 6 8項に記載のデータ処理方法。
1 7 2 . 上記データ処理方法は、 さらに、
伸長処理対象となる圧縮コンテンツの情報を表示手段に表示する表示ステップ と、
上記表示手段に表示されたコンテンッ情報から選択された再生コンテンッ識別 データを入力する入力する入力ステップとを有し、
上記伸長処理ステップは、
上記入力手段から入力された再生コンテンツ識別データに基づいて、 該識別デ ータに対応する圧縮コンテンツの伸長処理を実行することを特徴とする請求の範 囲第 1 6 8項に記載のデータ処理方法。
1 7 3 . 記憶媒体または通信媒体によって提供するコンテンツデータの生成処理 を行なうコンテンツデータ生成方法であり、
圧縮されたコンテンツと該圧縮 ンテンッの伸長処理プログラムとを組み合わ せたコンテンッデータを生成することを特徴とするコンテンッデータ生成方法。
1 7 4 . 上記コンテンツデータ生成方法において、 さらに、
上記コンテンツデータのへッダ情報として該コンテンツデータの構成情報を付 加することを特徴とする請求の範囲第 1 7 3項に記載のコンテンツデータ生成方 法。
1 7 5 . 上記コンテンツデータ生成方法において、 さらに、
上記コンテンツデータのヘッダ情報として、 該コンテンツデータに含まれるコ ンテンッの再生優先順位情報を付加することを特徴とする請求の範囲第 1 7 3項 に記載のコンテンツデータ生成方法。
1 7 6 . 記憶媒体または通信媒体によって提供されるコンテンツデータの生成処 理を行なうコンテンツデータ生成方法であり、
コンテンッデータが圧縮コンテンツであるか伸長処理プログラムであるかを識 別するコンテンツデータ種類をへッダ情報として付加し、
該コンテンツデータが圧縮コンテンツである場合は、 該圧縮コンテンツに適用 された圧縮処理プログラム種類をへッダ情報として付加し、
該コンテンツデータが伸長処理プログラムである場合は、 伸長処理プログラム 種類をへッダ情報として付加したコンテンッデータを生成することを特徴とする コンテンッデータ生成方法。
1 7 7 . 上記コンテンツデータ生成方法において、 さらに、
上記コンテンツデータのヘッダ情報として、 該コンテンツデータに含まれるコ ンテンッの再生優先順位情報を付加することを特徴とする請求の範囲第 1 7 6項 に記載のコンテンツデータ生成方法。
1 7 8 . 記憶媒体または通信媒体によって提供されるコンテンツデータの再生処 理をコンピュータ ■システム上で実行せしめるコンピュータ ·プログラムを提供 するプログラム提供媒体であって、 上記コンピュータ 'プログラムは、
圧縮されたコンテンツと該圧縮コンテンッの伸長処理プログラムとを含むコン テンッデータのコンテンツデータ解析を実行し、 該コンテンツデータから圧縮コ ンテンッと、 伸長処理プログラムの抽出処理を実行するコンテンツデータ解析ス テツプと、
上記コンテンツデータ解析ステップの解析結果として得られたコンテンツデー タに含まれる伸長処理プログラムを用いて該コンテンツデータに含まれる圧縮コ ンテンッの伸長処理を実行する伸長処理ステップと、
を有することを特徴とするプログラム提供媒体。
PCT/JP2001/000346 2000-01-21 2001-01-19 Systeme d'authentification de donnees WO2001054099A1 (fr)

Priority Applications (21)

Application Number Priority Date Filing Date Title
DK01901463T DK1195734T3 (da) 2000-01-21 2001-01-19 Anlæg til dataautentificering
ES01901463T ES2301525T3 (es) 2000-01-21 2001-01-19 Sistema de autentificacion de datos.
CA002365236A CA2365236A1 (en) 2000-01-21 2001-01-19 Data authentication system
KR1020047007535A KR100653807B1 (ko) 2000-01-21 2001-01-19 데이터 인증 처리 시스템
US09/937,120 US7373506B2 (en) 2000-01-21 2001-01-19 Data authentication system
EP01901463A EP1195734B1 (en) 2000-01-21 2001-01-19 Data authentication system
KR1020047007529A KR100653804B1 (ko) 2000-01-21 2001-01-19 데이터 처리 장치 및 방법
KR10-2001-7012032A KR100456496B1 (ko) 2000-01-21 2001-01-19 데이터 인증 처리 시스템
KR1020047007532A KR100653801B1 (ko) 2000-01-21 2001-01-19 데이터 처리 장치 및 데이터 처리 방법
KR1020047007531A KR100653802B1 (ko) 2000-01-21 2001-01-19 데이터 처리 장치, 데이터 처리 방법, 및 콘텐츠 데이터 생성 방법
DE60132962T DE60132962T2 (de) 2000-01-21 2001-01-19 Datenverarbeitungsvorrichtung und datenverarbeitungsverfahren
AU27074/01A AU785421B2 (en) 2000-01-21 2001-01-19 Data authentication system
BR0104356-0A BR0104356A (pt) 2000-01-21 2001-01-19 Aparelho, método e sistema de processamento de dados, métodos de comunicação de valor de verificação de dados, de geração de dados de conteúdo e de atribuição de valor de verificação de dados de conteúdo e meios de provisão e de suprimento de programa
KR1020047007534A KR100653806B1 (ko) 2000-01-21 2001-01-19 데이터 인증 처리 시스템
KR1020047007530A KR100653803B1 (ko) 2000-01-21 2001-01-19 데이터 처리 시스템 및 데이터 처리 시스템에서의 데이터 처리 방법
KR1020047007533A KR100653805B1 (ko) 2000-01-21 2001-01-19 데이터 인증 처리 시스템
HK02109413.8A HK1047815A1 (zh) 2000-01-21 2002-12-30 數據處理設備和數據處理方法
US11/637,505 US20070088961A1 (en) 2000-01-21 2006-12-12 Data processing apparatus and data processing method
US11/642,506 US20070136612A1 (en) 2000-01-21 2006-12-19 Data processing apparatus and data processing method
US11/642,704 US7669052B2 (en) 2000-01-21 2006-12-20 Authentication and encryption utilizing command identifiers
US12/709,918 US8375206B2 (en) 2000-01-21 2010-02-22 Authentication and encryption utilizing command identifiers

Applications Claiming Priority (14)

Application Number Priority Date Filing Date Title
JP2000013322A JP2001203686A (ja) 2000-01-21 2000-01-21 データ処理装置、データ処理方法およびデータ検証値付与方法、並びにプログラム提供媒体
JP2000-013322 2000-01-21
JP2000-016292 2000-01-25
JP2000015551A JP2001211148A (ja) 2000-01-25 2000-01-25 データ処理装置、データ処理システム、およびデータ処理方法、並びにプログラム提供媒体
JP2000015858A JP2001209310A (ja) 2000-01-25 2000-01-25 データ処理装置、データ処理方法およびコンテンツデータ生成方法、並びにプログラム提供媒体
JP2000-016029 2000-01-25
JP2000016292A JP2001211080A (ja) 2000-01-25 2000-01-25 データ処理装置、データ処理方法およびコンテンツデータ生成方法、並びにプログラム提供媒体
JP2000016251A JP2001211152A (ja) 2000-01-25 2000-01-25 データ処理装置、コンテンツデータ生成方法、およびデータ処理方法、並びにプログラム提供媒体
JP2000016029A JP2001211149A (ja) 2000-01-25 2000-01-25 データ処理装置およびデータ処理方法、並びにプログラム提供媒体
JP2000016213A JP2001211151A (ja) 2000-01-25 2000-01-25 データ処理装置、データ処理方法およびコンテンツデータ検証値付与方法、並びにプログラム提供媒体
JP2000-015858 2000-01-25
JP2000-016213 2000-01-25
JP2000-015551 2000-01-25
JP2000-016251 2000-01-25

Related Child Applications (3)

Application Number Title Priority Date Filing Date
US09/937,120 Continuation US7373506B2 (en) 2000-01-21 2001-01-19 Data authentication system
US09/937,120 A-371-Of-International US7373506B2 (en) 2000-01-21 2001-01-19 Data authentication system
US10/412,771 Division US20030233559A1 (en) 2000-01-21 2003-04-11 Data processing apparatus and data processing method

Publications (1)

Publication Number Publication Date
WO2001054099A1 true WO2001054099A1 (fr) 2001-07-26

Family

ID=27566947

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2001/000346 WO2001054099A1 (fr) 2000-01-21 2001-01-19 Systeme d'authentification de donnees

Country Status (14)

Country Link
US (6) US7373506B2 (ja)
EP (4) EP1624609B1 (ja)
KR (9) KR100652098B1 (ja)
CN (4) CN1818990A (ja)
AT (2) ATE522039T1 (ja)
AU (1) AU785421B2 (ja)
BR (1) BR0104356A (ja)
CA (2) CA2365236A1 (ja)
DE (1) DE60132962T2 (ja)
DK (1) DK1195734T3 (ja)
ES (1) ES2301525T3 (ja)
HK (2) HK1057122A1 (ja)
NZ (1) NZ513862A (ja)
WO (1) WO2001054099A1 (ja)

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003337632A (ja) * 2002-03-19 2003-11-28 Microsoft Corp ポリシーを実行された安全なデジタルデータフォーマットおよびコード
JP2009081549A (ja) * 2007-09-25 2009-04-16 Kyocera Corp 署名検証方法、ストリーム生成方法、受信装置、およびストリーム送信装置
JP2009081556A (ja) * 2007-09-25 2009-04-16 Kyocera Corp 署名検証方法、ストリーム生成方法、受信装置、およびストリーム送信装置
US10666436B2 (en) 2013-02-12 2020-05-26 Amazon Technologies, Inc. Federated key management
US10721075B2 (en) 2014-05-21 2020-07-21 Amazon Technologies, Inc. Web of trust management in a distributed system
US10834139B2 (en) 2012-06-07 2020-11-10 Amazon Technologies, Inc. Flexibly configurable data modification services
US11036869B2 (en) 2013-02-12 2021-06-15 Amazon Technologies, Inc. Data security with a security module
US11323479B2 (en) 2013-07-01 2022-05-03 Amazon Technologies, Inc. Data loss prevention techniques
US11368300B2 (en) 2014-06-27 2022-06-21 Amazon Technologies, Inc. Supporting a fixed transaction rate with a variably-backed logical cryptographic key
US11372993B2 (en) 2013-02-12 2022-06-28 Amazon Technologies, Inc. Automatic key rotation
US11470054B2 (en) 2013-06-13 2022-10-11 Amazon Technologies, Inc. Key rotation techniques
US11626996B2 (en) 2014-09-15 2023-04-11 Amazon Technologies, Inc. Distributed system web of trust provisioning
US11734443B2 (en) * 2017-01-19 2023-08-22 Creator's Head Inc. Information control program, information control system, and information control method

Families Citing this family (362)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7328350B2 (en) * 2001-03-29 2008-02-05 Arcot Systems, Inc. Method and apparatus for secure cryptographic key generation, certification and use
AU1431301A (en) * 1999-11-22 2001-06-04 Intel Corporation Integrity check values (icv) based on pseudorandom binary matrices
US7445550B2 (en) 2000-02-22 2008-11-04 Creative Kingdoms, Llc Magical wand and interactive play experience
US7878905B2 (en) 2000-02-22 2011-02-01 Creative Kingdoms, Llc Multi-layered interactive play experience
US8140859B1 (en) 2000-07-21 2012-03-20 The Directv Group, Inc. Secure storage and replay of media programs using a hard-paired receiver and storage device
JP4300705B2 (ja) * 2000-12-05 2009-07-22 ソニー株式会社 データ転送システム、データ転送装置、データ転送方法、記録媒体
US7526795B2 (en) * 2001-03-27 2009-04-28 Micron Technology, Inc. Data security for digital data storage
US7409562B2 (en) 2001-09-21 2008-08-05 The Directv Group, Inc. Method and apparatus for encrypting media programs for later purchase and viewing
KR20040041684A (ko) * 2001-10-12 2004-05-17 코닌클리케 필립스 일렉트로닉스 엔.브이. 블록식으로 저장된 사용자 데이터를 판독 또는 기록하는장치 및 방법
JP4292736B2 (ja) * 2001-11-15 2009-07-08 ソニー株式会社 伝送システム、伝送方法
US20030145183A1 (en) * 2002-01-31 2003-07-31 Muehring Phillip T. Applications for removable storage
JP2003228915A (ja) * 2002-02-01 2003-08-15 Sony Corp 再生制御方法、プログラム、記録媒体
EP1398704A4 (en) * 2002-02-27 2007-04-04 Matsushita Electric Ind Co Ltd HOST DEVICE
CN100547961C (zh) * 2002-03-29 2009-10-07 松下电器产业株式会社 内容处理装置
US6967566B2 (en) 2002-04-05 2005-11-22 Creative Kingdoms, Llc Live-action interactive adventure game
US20070066396A1 (en) * 2002-04-05 2007-03-22 Denise Chapman Weston Retail methods for providing an interactive product to a consumer
AU2003246823A1 (en) * 2002-04-12 2003-10-27 Thomson Licensing S.A. Method for the anonymous authentication of a data transmitter
US8438392B2 (en) * 2002-06-20 2013-05-07 Krimmeni Technologies, Inc. Method and system for control of code execution on a general purpose computing device and control of code execution in a recursive security protocol
US7203844B1 (en) 2002-06-20 2007-04-10 Oxford William V Method and system for a recursive security protocol for digital copyright control
US20060041760A1 (en) * 2002-06-26 2006-02-23 Zezhen Huang Trusted computer activity monitoring and recording system and method
EP1387238B1 (en) * 2002-07-30 2011-06-15 Fujitsu Limited Method and apparatus for reproducing information using a security module
KR20040017445A (ko) * 2002-08-21 2004-02-27 엘지전자 주식회사 멀티미디어 데이터 인증방법
US7401221B2 (en) * 2002-09-04 2008-07-15 Microsoft Corporation Advanced stream format (ASF) data stream header object protection
US8171567B1 (en) 2002-09-04 2012-05-01 Tracer Detection Technology Corp. Authentication method and system
JP2004104602A (ja) * 2002-09-11 2004-04-02 Pioneer Electronic Corp 情報記録媒体、情報記録装置、情報再生装置、情報配信装置、それらの方法、それらのプログラムおよびそのプログラムを記録した記録媒体
JP3945644B2 (ja) * 2002-11-05 2007-07-18 ソニー株式会社 コピー回数制御方法、サーバ装置、記録制御方法および記録制御装置
US7353543B2 (en) * 2003-01-10 2008-04-01 Matsushita Electric Industrial Co., Ltd. Contents distribution system
EP1609042A2 (en) * 2003-03-24 2005-12-28 Matsushita Electric Industrial Co., Ltd. Data protection management apparatus and data protection management method
US9446319B2 (en) 2003-03-25 2016-09-20 Mq Gaming, Llc Interactive gaming toy
JP2004295373A (ja) * 2003-03-26 2004-10-21 Sony Corp 情報記録媒体、情報処理装置、情報記録媒体製造装置、および方法、並びにコンピュータ・プログラム
CN1698307A (zh) * 2003-04-11 2005-11-16 索尼株式会社 信息记录介质驱动装置
US7243237B2 (en) * 2003-05-02 2007-07-10 Microsoft Corporation Secure communication with a keyboard or related device
US7426637B2 (en) * 2003-05-21 2008-09-16 Music Public Broadcasting, Inc. Method and system for controlled media sharing in a network
DE10330089B4 (de) * 2003-07-03 2014-02-27 Bt Ignite Gmbh & Co. Verfahren und Vorrichtung zum Übermitteln von Entschlüsselungscodes für frei übertragene, verschlüsselte Programminhalte an eindeutig identifizierbare Empfänger
JP4676724B2 (ja) 2003-08-12 2011-04-27 株式会社リコー 情報処理装置、情報処理方法、情報処理プログラム、及び記録媒体
JP4728611B2 (ja) 2003-08-12 2011-07-20 株式会社リコー 記憶媒体、記憶装置、情報処理装置、情報処理方法、情報処理プログラム及び記録媒体
US7562230B2 (en) * 2003-10-14 2009-07-14 Intel Corporation Data security
EP1532984A1 (en) * 2003-11-19 2005-05-25 Institut National De La Sante Et De La Recherche Medicale (Inserm) Use of anti CD44 antibodies for eradicating stem cells in acute myeloid leukemia
US8165297B2 (en) * 2003-11-21 2012-04-24 Finisar Corporation Transceiver with controller for authentication
KR20050050976A (ko) * 2003-11-26 2005-06-01 엘지전자 주식회사 이동 통신 단말기의 비밀번호 해킹 검출 방법
JP4250510B2 (ja) * 2003-11-26 2009-04-08 株式会社東芝 コンテンツ配信サービス提供システムとそのコンテンツ配信装置及びユーザ端末装置
JP4338508B2 (ja) * 2003-12-05 2009-10-07 シャープ株式会社 データ処理装置
US7519274B2 (en) 2003-12-08 2009-04-14 Divx, Inc. File format for multiple track digital data
US8472792B2 (en) 2003-12-08 2013-06-25 Divx, Llc Multimedia distribution system
US20050132226A1 (en) * 2003-12-11 2005-06-16 David Wheeler Trusted mobile platform architecture
US20060165233A1 (en) * 2003-12-17 2006-07-27 Masao Nonaka Methods and apparatuses for distributing system secret parameter group and encrypted intermediate key group for generating content encryption and decryption deys
JP2005190350A (ja) * 2003-12-26 2005-07-14 Toshiba Corp コンテンツ送信装置及びコンテンツ送信方法
US8140675B2 (en) 2004-01-15 2012-03-20 Panasonic Corporation Content reproduction apparatus
JP2005204250A (ja) * 2004-01-19 2005-07-28 Ricoh Co Ltd 証明書確認方法、証明書確認プログラム及び証明書
WO2005081891A2 (en) * 2004-02-23 2005-09-09 Lexar Media, Inc. Secure compact flash
SG184722A1 (en) 2004-03-12 2012-10-30 Ingenia Holdings Ltd Authenticity verification methods, products and apparatuses
WO2005088517A1 (en) * 2004-03-12 2005-09-22 Ingenia Technology Limited Methods and apparatuses for creating authenticatable printed articles and subsequently verifying them
EP1580644A3 (en) * 2004-03-15 2005-11-09 Yamaha Corporation Electronic musical apparatus for recording and reproducing music content
US8539608B1 (en) * 2004-03-25 2013-09-17 Verizon Corporate Services Group Inc. Integrity checking at high data rates
JP4561146B2 (ja) * 2004-03-29 2010-10-13 ソニー株式会社 コンテンツ流通システム、暗号化装置、暗号化方法、情報処理プログラム、及び記憶媒体
EP1603138A1 (fr) * 2004-04-15 2005-12-07 STMicroelectronics SA Mémoire non volatile comprenant des moyens de brouillage de la lecture de cellules mémoire
US8769671B2 (en) 2004-05-02 2014-07-01 Markmonitor Inc. Online fraud solution
US7870608B2 (en) 2004-05-02 2011-01-11 Markmonitor, Inc. Early detection and monitoring of online fraud
US9203648B2 (en) 2004-05-02 2015-12-01 Thomson Reuters Global Resources Online fraud solution
US7457823B2 (en) 2004-05-02 2008-11-25 Markmonitor Inc. Methods and systems for analyzing data related to possible online fraud
US7913302B2 (en) 2004-05-02 2011-03-22 Markmonitor, Inc. Advanced responses to online fraud
US8041769B2 (en) 2004-05-02 2011-10-18 Markmonitor Inc. Generating phish messages
JP4749680B2 (ja) * 2004-05-10 2011-08-17 株式会社ソニー・コンピュータエンタテインメント データ構造、データ処理装置、データ処理方法、認証装置、認証方法、コンピュータプログラム、及び記録媒体
JP4686138B2 (ja) * 2004-05-26 2011-05-18 株式会社東芝 記憶媒体変換方法、プログラム及び機器
US7390071B2 (en) * 2004-05-27 2008-06-24 Silverbrook Research Pty Ltd Printer controller for supplying data to a printhead module having a dropped row
US7266661B2 (en) * 2004-05-27 2007-09-04 Silverbrook Research Pty Ltd Method of storing bit-pattern in plural devices
US7735944B2 (en) * 2004-05-27 2010-06-15 Silverbrook Research Pty Ltd Printer comprising two printhead modules and at least two printer controllers
US20070083491A1 (en) * 2004-05-27 2007-04-12 Silverbrook Research Pty Ltd Storage of key in non-volatile memory
US7281777B2 (en) * 2004-05-27 2007-10-16 Silverbrook Research Pty Ltd Printhead module having a communication input for data and control
US7448707B2 (en) * 2004-05-27 2008-11-11 Silverbrook Research Pty Ltd Method of expelling ink from nozzels in groups, starting at outside nozzels of each group
US7243193B2 (en) * 2004-05-27 2007-07-10 Silverbrook Research Pty Ltd Storage of program code in arbitrary locations in memory
US7374266B2 (en) 2004-05-27 2008-05-20 Silverbrook Research Pty Ltd Method for at least partially compensating for errors in ink dot placement due to erroneous rotational displacement
US7328956B2 (en) * 2004-05-27 2008-02-12 Silverbrook Research Pty Ltd Printer comprising a printhead and at least two printer controllers connected to a common input of the printhead
US7290852B2 (en) * 2004-05-27 2007-11-06 Silverbrook Research Pty Ltd Printhead module having a dropped row
US7607757B2 (en) * 2004-05-27 2009-10-27 Silverbrook Research Pty Ltd Printer controller for supplying dot data to at least one printhead module having faulty nozzle
US7549718B2 (en) 2004-05-27 2009-06-23 Silverbrook Research Pty Ltd Printhead module having operation controllable on basis of thermal sensors
US20060294312A1 (en) * 2004-05-27 2006-12-28 Silverbrook Research Pty Ltd Generation sequences
US7188928B2 (en) * 2004-05-27 2007-03-13 Silverbrook Research Pty Ltd Printer comprising two uneven printhead modules and at least two printer controllers, one of which sends print data to both of the printhead modules
US7377609B2 (en) * 2004-05-27 2008-05-27 Silverbrook Research Pty Ltd Printer controller for at least partially compensating for erroneous rotational displacement
US7314261B2 (en) * 2004-05-27 2008-01-01 Silverbrook Research Pty Ltd Printhead module for expelling ink from nozzles in groups, alternately, starting at outside nozzles of each group
US7427117B2 (en) 2004-05-27 2008-09-23 Silverbrook Research Pty Ltd Method of expelling ink from nozzles in groups, alternately, starting at outside nozzles of each group
US7600843B2 (en) * 2004-05-27 2009-10-13 Silverbrook Research Pty Ltd Printer controller for controlling a printhead module based on thermal sensing
US8011747B2 (en) * 2004-05-27 2011-09-06 Silverbrook Research Pty Ltd Printer controller for controlling a printhead with horizontally grouped firing order
US7517036B2 (en) * 2004-05-27 2009-04-14 Silverbrook Research Pty Ltd Printhead module capable of printing a maximum of n channels of print data
US7557941B2 (en) * 2004-05-27 2009-07-07 Silverbrook Research Pty Ltd Use of variant and base keys with three or more entities
US7631190B2 (en) * 2004-05-27 2009-12-08 Silverbrook Research Pty Ltd Use of variant and base keys with two entities
US7484831B2 (en) * 2004-05-27 2009-02-03 Silverbrook Research Pty Ltd Printhead module having horizontally grouped firing order
JP2005354217A (ja) * 2004-06-08 2005-12-22 Sony Corp 情報出力処理装置、情報入力処理装置、情報処理システム及び情報処理方法
US20080072072A1 (en) * 2004-06-09 2008-03-20 Kenji Muraki Recording Device and Recording Method
JP4144573B2 (ja) * 2004-07-15 2008-09-03 ソニー株式会社 情報処理装置、および情報処理方法、並びにコンピュータ・プログラム
US7623660B1 (en) * 2004-07-20 2009-11-24 Xilinx, Inc. Method and system for pipelined decryption
US8266429B2 (en) 2004-07-20 2012-09-11 Time Warner Cable, Inc. Technique for securely communicating and storing programming material in a trusted domain
US8312267B2 (en) 2004-07-20 2012-11-13 Time Warner Cable Inc. Technique for securely communicating programming content
GB2417592B (en) 2004-08-13 2006-07-26 Ingenia Technology Ltd Authenticity verification of articles
US7941786B2 (en) * 2004-09-08 2011-05-10 Universal Electronics Inc. Configurable controlling device and associated configuration distribution system and method
US9632665B2 (en) 2004-09-08 2017-04-25 Universal Electronics Inc. System and method for flexible configuration of a controlling device
US11687217B2 (en) 2004-09-08 2023-06-27 Universal Electronics Inc. System and method for flexible configuration of a controlling device
US8260259B2 (en) * 2004-09-08 2012-09-04 Qualcomm Incorporated Mutual authentication with modified message authentication code
US20060064394A1 (en) * 2004-09-17 2006-03-23 International Business Machines Corporation Method for handling changing and disappearing online references to research information
US7711965B2 (en) * 2004-10-20 2010-05-04 Intel Corporation Data security
KR100664306B1 (ko) * 2004-10-29 2007-01-04 삼성전자주식회사 데이터 유효성 검증을 위한 예방 통제 데이터 생성 및검증 장치 및 방법
CN100565575C (zh) * 2004-11-08 2009-12-02 索尼株式会社 信息处理系统和信息处理设备
JP3810425B2 (ja) * 2004-12-16 2006-08-16 松下電器産業株式会社 改竄検出用データ生成方法、および改竄検出方法及び装置
US8601283B2 (en) * 2004-12-21 2013-12-03 Sandisk Technologies Inc. Method for versatile content control with partitioning
US8504849B2 (en) * 2004-12-21 2013-08-06 Sandisk Technologies Inc. Method for versatile content control
US8051052B2 (en) * 2004-12-21 2011-11-01 Sandisk Technologies Inc. Method for creating control structure for versatile content control
US20070168292A1 (en) * 2004-12-21 2007-07-19 Fabrice Jogand-Coulomb Memory system with versatile content control
JP4897701B2 (ja) * 2004-12-22 2012-03-14 サーティコム コーポレーション 部分リボケーション・リスト
US10064540B2 (en) * 2005-02-02 2018-09-04 Intuitive Surgical Operations, Inc. Visualization apparatus for transseptal access
JP4692003B2 (ja) * 2005-02-10 2011-06-01 ソニー株式会社 情報処理装置、および情報処理方法、並びにコンピュータ・プログラム
JP4833568B2 (ja) * 2005-03-15 2011-12-07 株式会社リコー 情報処理装置、画像形成装置、起動プログラムおよび記憶媒体
US7610273B2 (en) * 2005-03-22 2009-10-27 Microsoft Corporation Application identity and rating service
JPWO2006115212A1 (ja) * 2005-04-21 2008-12-18 松下電器産業株式会社 アルゴリズム更新システム
TW200729890A (en) * 2005-06-29 2007-08-01 Koninkl Philips Electronics Nv Device and method for key block based authentication
KR20080031751A (ko) * 2005-06-29 2008-04-10 코닌클리케 필립스 일렉트로닉스 엔.브이. 키 블록 기반의 인증 시스템 및 방법
KR100728928B1 (ko) * 2005-07-01 2007-06-15 삼성전자주식회사 기록매체를 통해 오프라인된 영상기기에 컨텐츠 재생권한부여방법
DE602006004797D1 (de) * 2005-07-05 2009-03-05 St Microelectronics Sa Prüfung einer in einer Speicherzone abgelegten digitalen Nachricht
US7743409B2 (en) * 2005-07-08 2010-06-22 Sandisk Corporation Methods used in a mass storage device with automated credentials loading
JP4788212B2 (ja) * 2005-07-13 2011-10-05 富士ゼロックス株式会社 デジタル署名プログラム及びデジタル署名システム
JP4818651B2 (ja) * 2005-07-13 2011-11-16 ルネサスエレクトロニクス株式会社 暗号化・復号化回路
JP4827468B2 (ja) 2005-07-25 2011-11-30 キヤノン株式会社 情報処理装置及び情報処理装置の制御方法、並びにコンピュータプログラム及びコンピュータ可読記憶媒体
GB2428948B (en) * 2005-07-27 2007-09-05 Ingenia Technology Ltd Keys
RU2008107316A (ru) * 2005-07-27 2009-09-10 Инджениа Текнолоджи Лимитед (Gb) Проверка сигнатуры изделия, созданной на основании сигналов, полученных благодаря рассеянию когерентного оптического излучения от поверхности изделия
WO2007012816A1 (en) 2005-07-27 2007-02-01 Ingenia Technology Limited Verification of authenticity
US7702107B1 (en) * 2005-07-27 2010-04-20 Messing John H Server-based encrypted messaging method and apparatus
WO2007012820A1 (en) * 2005-07-27 2007-02-01 Ingenia Technology Limited Prescription authentication using speckle patterns
US9325944B2 (en) 2005-08-11 2016-04-26 The Directv Group, Inc. Secure delivery of program content via a removable storage medium
GB2429950B (en) * 2005-09-08 2007-08-22 Ingenia Holdings Copying
JP5013694B2 (ja) * 2005-09-09 2012-08-29 キヤノン株式会社 画像処理方法、画像処理装置、プログラムコード及び記憶媒体
DE102005045733A1 (de) * 2005-09-23 2007-04-05 Nec Europe Ltd. Verfahren zum Übermitteln von Nachrichten
US20070074038A1 (en) * 2005-09-29 2007-03-29 International Business Machines Corporation Method, apparatus and program storage device for providing a secure password manager
US20070083467A1 (en) * 2005-10-10 2007-04-12 Apple Computer, Inc. Partial encryption techniques for media data
WO2007041824A1 (en) * 2005-10-14 2007-04-19 Research In Motion Limited System and method for protecting master encryption keys
TWI281825B (en) * 2005-10-18 2007-05-21 Univ Nat Taiwan Right management system and method for digital broadcasting
US8483616B1 (en) 2005-11-01 2013-07-09 At&T Intellectual Property Ii, L.P. Non-interference technique for spatially aware mobile ad hoc networking
KR100656402B1 (ko) * 2005-11-26 2006-12-11 한국전자통신연구원 디지털 콘텐츠를 안전하게 배포하는 방법 및 그 장치
US8355410B2 (en) 2007-08-17 2013-01-15 At&T Intellectual Property I, L.P. Location-based mobile gaming application and method for implementing the same using a scalable tiered geocast protocol
KR20080080175A (ko) * 2005-12-14 2008-09-02 엔디에스 리미티드 블록 사이퍼 암호화의 사용을 위한 방법 및 시스템
US7812935B2 (en) 2005-12-23 2010-10-12 Ingenia Holdings Limited Optical authentication
KR100703811B1 (ko) * 2006-02-28 2007-04-09 삼성전자주식회사 휴대용 저장장치 및 휴대용 저장장치의 데이터 관리 방법
WO2007106844A2 (en) 2006-03-14 2007-09-20 Divx, Inc. Federated digital rights management scheme including trusted systems
US8209729B2 (en) * 2006-04-20 2012-06-26 At&T Intellectual Property I, Lp Rules-based content management
US8285988B2 (en) * 2006-05-09 2012-10-09 Broadcom Corporation Method and system for command authentication to achieve a secure interface
US8560829B2 (en) 2006-05-09 2013-10-15 Broadcom Corporation Method and system for command interface protection to achieve a secure interface
US8775319B2 (en) 2006-05-15 2014-07-08 The Directv Group, Inc. Secure content transfer systems and methods to operate the same
US8495380B2 (en) 2006-06-06 2013-07-23 Red Hat, Inc. Methods and systems for server-side key generation
JP2008009631A (ja) * 2006-06-28 2008-01-17 Hitachi Ltd 記憶装置及び記憶方法
US8140843B2 (en) * 2006-07-07 2012-03-20 Sandisk Technologies Inc. Content control method using certificate chains
US8266711B2 (en) * 2006-07-07 2012-09-11 Sandisk Technologies Inc. Method for controlling information supplied from memory device
US8613103B2 (en) * 2006-07-07 2013-12-17 Sandisk Technologies Inc. Content control method using versatile control structure
US20100138652A1 (en) * 2006-07-07 2010-06-03 Rotem Sela Content control method using certificate revocation lists
US8639939B2 (en) 2006-07-07 2014-01-28 Sandisk Technologies Inc. Control method using identity objects
US8245031B2 (en) * 2006-07-07 2012-08-14 Sandisk Technologies Inc. Content control method using certificate revocation lists
US20080063206A1 (en) * 2006-09-07 2008-03-13 Karp James M Method for altering the access characteristics of encrypted data
JP4957148B2 (ja) * 2006-09-26 2012-06-20 富士通株式会社 鍵管理機能を持つセキュア素子および情報処理装置
EP1912148A1 (en) * 2006-10-09 2008-04-16 Axalto S.A. Protection against side channel attacks with an integrity check
US20080091554A1 (en) * 2006-10-12 2008-04-17 Ing-Kai Huang Method of selling software via network
US8520850B2 (en) 2006-10-20 2013-08-27 Time Warner Cable Enterprises Llc Downloadable security and protection methods and apparatus
JP5026049B2 (ja) * 2006-10-25 2012-09-12 ソニー株式会社 メディアドライブ装置、メディアドライブ装置の動作方法、プログラム、プログラム記録媒体
US8949600B2 (en) * 2006-10-27 2015-02-03 Qualcomm Incorporated Composed message authentication code
US8732854B2 (en) 2006-11-01 2014-05-20 Time Warner Cable Enterprises Llc Methods and apparatus for premises content distribution
JP2008117459A (ja) * 2006-11-02 2008-05-22 Hitachi Ltd 記録再生装置
WO2008086313A1 (en) 2007-01-05 2008-07-17 Divx, Inc. Video distribution system including progressive playback
EP2122900A4 (en) 2007-01-22 2014-07-23 Spyrus Inc PORTABLE DATA ENCRYPTION DEVICE WITH CONFIGURABLE SAFETY FUNCTIONS AND METHOD FOR FILING ENCRYPTION
US8621540B2 (en) 2007-01-24 2013-12-31 Time Warner Cable Enterprises Llc Apparatus and methods for provisioning in a download-enabled system
US20080184041A1 (en) * 2007-01-31 2008-07-31 Microsoft Corporation Graph-Based Tamper Resistance Modeling For Software Protection
CN100440241C (zh) * 2007-02-15 2008-12-03 北京中星微电子有限公司 数字版权管理方法和内容服务器以及媒体播放器
US8160245B2 (en) 2007-03-07 2012-04-17 Research In Motion Limited Methods and apparatus for performing an elliptic curve scalar multiplication operation using splitting
US8050403B2 (en) * 2007-03-06 2011-11-01 Research In Motion Limited Method and apparatus for generating a public key in a manner that counters power analysis attacks
US8762714B2 (en) * 2007-04-24 2014-06-24 Finisar Corporation Protecting against counterfeit electronics devices
KR20090001605A (ko) * 2007-05-03 2009-01-09 삼성전자주식회사 재생 설정 정보를 포함하는 이동식 기록매체, 이동식기록매체에 기록된 재생 설정 정보를 이용하여 콘텐츠를재생하는 장치 및 방법
KR101370829B1 (ko) * 2007-05-08 2014-03-10 삼성전자주식회사 데이터의 암호화/복호화 방법 및 이를 적용한 버스 시스템
US8423789B1 (en) 2007-05-22 2013-04-16 Marvell International Ltd. Key generation techniques
GB2450131B (en) * 2007-06-13 2009-05-06 Ingenia Holdings Fuzzy Keys
CN101329658B (zh) 2007-06-21 2012-12-05 西门子(中国)有限公司 加密、解密方法,及应用所述方法的plc系统
KR101495535B1 (ko) * 2007-06-22 2015-02-25 삼성전자주식회사 컨텐츠 디바이스의 폐기 여부를 확인하여 데이터를전송하는 전송 방법과 시스템, 데이터 서버
WO2009004716A1 (ja) * 2007-07-03 2009-01-08 Pioneer Corporation 情報記録媒体、再生装置及びコンピュータプログラム
JP4396737B2 (ja) * 2007-07-17 2010-01-13 ソニー株式会社 情報処理装置、コンテンツ提供システム、および情報処理方法、並びにコンピュータ・プログラム
EP2168299A4 (en) * 2007-07-17 2011-10-05 Certicom Corp METHOD OF COMPRESSING CRYPTOGRAPHIC VALUE
FR2920067B1 (fr) * 2007-08-13 2014-11-28 Actimagine Procede et dispositif de chiffrement partiel d'un contenu numerique
WO2009027126A1 (en) * 2007-08-24 2009-03-05 International Business Machines Corporation System and method for protection of content stored in a storage device
WO2009027125A1 (en) 2007-08-24 2009-03-05 International Business Machines Corporation System and method for content protection
CN101836213B (zh) * 2007-08-29 2015-06-24 僖迪网络科技株式会社 对数字媒体内容未经许可的复制的保护
US8059820B2 (en) * 2007-10-11 2011-11-15 Microsoft Corporation Multi-factor content protection
US9148286B2 (en) * 2007-10-15 2015-09-29 Finisar Corporation Protecting against counterfeit electronic devices
WO2009059331A2 (en) * 2007-11-02 2009-05-07 Finisar Corporation Anticounterfeiting means for optical communication components
KR20100106327A (ko) 2007-11-16 2010-10-01 디브이엑스, 인크. 멀티미디어 파일을 위한 계층적 및 감소된 인덱스 구조
US8181034B2 (en) * 2008-01-20 2012-05-15 Nds Limited Secure data utilization
US10552701B2 (en) * 2008-02-01 2020-02-04 Oath Inc. System and method for detecting the source of media content with application to business rules
JP4998314B2 (ja) * 2008-02-19 2012-08-15 コニカミノルタホールディングス株式会社 通信制御方法および通信制御プログラム
JP5248153B2 (ja) * 2008-03-14 2013-07-31 株式会社東芝 情報処理装置、方法及びプログラム
US7940543B2 (en) * 2008-03-19 2011-05-10 Nanya Technology Corp. Low power synchronous memory command address scheme
US7676501B2 (en) * 2008-03-22 2010-03-09 Wilson Kelce S Document integrity verification
JP5164029B2 (ja) * 2008-04-10 2013-03-13 日本電気株式会社 情報漏洩防止装置、その方法及びそのプログラム
US7904450B2 (en) 2008-04-25 2011-03-08 Wilson Kelce S Public electronic document dating list
GB2460625B (en) * 2008-05-14 2010-05-26 Ingenia Holdings Two tier authentication
US20090290714A1 (en) * 2008-05-20 2009-11-26 Microsoft Corporation Protocol for Verifying Integrity of Remote Data
US8259949B2 (en) 2008-05-27 2012-09-04 Intel Corporation Methods and apparatus for protecting digital content
CN102077204B (zh) * 2008-06-24 2013-06-12 纳格拉影像股份有限公司 安全内存管理系统和方法
US8954696B2 (en) 2008-06-24 2015-02-10 Nagravision S.A. Secure memory management system and method
JP4737243B2 (ja) * 2008-07-11 2011-07-27 ソニー株式会社 集積回路装置及びデータ伝送システム
KR100897790B1 (ko) * 2008-08-07 2009-05-15 (주)씨디네트웍스 하드웨어 아이디 정보를 이용한 디지털 콘텐츠의 보호 방법및 장치
US8510560B1 (en) 2008-08-20 2013-08-13 Marvell International Ltd. Efficient key establishment for wireless networks
EP2166696B1 (fr) 2008-08-27 2016-10-05 STMicroelectronics (Rousset) SAS Protection de l'intégrité de données chiffrées en utilisant un état intermédiare de chiffrement pour générer une signature
US8044565B2 (en) * 2008-08-29 2011-10-25 Federal-Mogul Ingnition Company Composite ceramic electrode and ignition device therewith
US9240883B2 (en) 2008-09-04 2016-01-19 Intel Corporation Multi-key cryptography for encrypting file system acceleration
US8880879B2 (en) 2008-09-04 2014-11-04 Intel Corporation Accelerated cryptography with an encryption attribute
US9544922B2 (en) 2008-09-16 2017-01-10 At&T Intellectual Property I, L.P. Quality of service scheme for collision-based wireless networks
KR101595043B1 (ko) 2008-09-18 2016-02-17 마벨 월드 트레이드 리미티드 적어도 부분적으로 부팅 동안에 어플리케이션들을 메모리에 프리로딩하는 방법
EP2330533B1 (en) * 2008-09-24 2021-02-17 Panasonic Intellectual Property Management Co., Ltd. Recording/reproducing system, recording medium device, and recording/reproducing device
US20100088520A1 (en) * 2008-10-02 2010-04-08 Microsoft Corporation Protocol for determining availability of peers in a peer-to-peer storage system
US8046337B2 (en) 2008-10-15 2011-10-25 International Business Machines Corporation Preservation aware fixity in digital preservation
US8219803B2 (en) * 2008-10-20 2012-07-10 Disney Enterprises, Inc. System and method for unlocking content associated with media
US8171306B2 (en) * 2008-11-05 2012-05-01 Microsoft Corporation Universal secure token for obfuscation and tamper resistance
FR2938355B1 (fr) * 2008-11-10 2010-11-26 Active Circle Procede et systeme de stockage virtualise d'un ensemble de donnees numeriques
WO2010055924A1 (ja) * 2008-11-14 2010-05-20 Okiセミコンダクタ株式会社 秘密情報伝送方法、秘密情報伝送システム及び秘密情報送信装置
US20100124329A1 (en) * 2008-11-18 2010-05-20 Lyman Dan C Encrypted communication between printing system components
US9104618B2 (en) 2008-12-18 2015-08-11 Sandisk Technologies Inc. Managing access to an address range in a storage device
GB2466465B (en) * 2008-12-19 2011-02-16 Ingenia Holdings Authentication
GB2466311B (en) * 2008-12-19 2010-11-03 Ingenia Holdings Self-calibration of a matching algorithm for determining authenticity
US8139765B2 (en) * 2008-12-29 2012-03-20 King Fahd University Of Petroleum & Minerals Elliptical polynomial-based message authentication code
US20100250502A1 (en) * 2009-03-27 2010-09-30 Kiyokazu Saigo Method and apparatus for contents de-duplication
JP2010267240A (ja) * 2009-04-16 2010-11-25 Toshiba Corp 記録装置
ES2365887B1 (es) * 2009-05-05 2012-09-03 Scytl Secure Electronic Voting S.A. Metodo de verificacion de procesos de descifrado
US9602864B2 (en) 2009-06-08 2017-03-21 Time Warner Cable Enterprises Llc Media bridge apparatus and methods
US9866609B2 (en) 2009-06-08 2018-01-09 Time Warner Cable Enterprises Llc Methods and apparatus for premises content distribution
US9075958B2 (en) * 2009-06-24 2015-07-07 Uniloc Luxembourg S.A. Use of fingerprint with an on-line or networked auction
US9118428B2 (en) 2009-11-04 2015-08-25 At&T Intellectual Property I, L.P. Geographic advertising using a scalable wireless geocast protocol
GB2476226B (en) 2009-11-10 2012-03-28 Ingenia Holdings Ltd Optimisation
EP2507995A4 (en) 2009-12-04 2014-07-09 Sonic Ip Inc SYSTEMS AND METHODS FOR TRANSPORTING ELEMENTARY BIT TRAIN CRYPTOGRAPHIC MATERIAL
CN102725737B (zh) 2009-12-04 2016-04-20 密码研究公司 可验证防泄漏的加密和解密
WO2011074844A2 (en) * 2009-12-14 2011-06-23 Lg Electronics Inc. Method of processing non-real time service and broadcast receiver
EP2532116A4 (en) 2010-02-04 2015-11-18 Gentex Corp SYSTEM AND METHOD FOR WIRELESS MEMORY PROGRAMMING IN A COMMUNICATION SYSTEM
US9906838B2 (en) 2010-07-12 2018-02-27 Time Warner Cable Enterprises Llc Apparatus and methods for content delivery and message exchange across multiple content delivery networks
US8751795B2 (en) * 2010-09-14 2014-06-10 Mo-Dv, Inc. Secure transfer and tracking of data using removable non-volatile memory devices
US8645716B1 (en) 2010-10-08 2014-02-04 Marvell International Ltd. Method and apparatus for overwriting an encryption key of a media drive
US9563751B1 (en) 2010-10-13 2017-02-07 The Boeing Company License utilization management system service suite
US10016684B2 (en) * 2010-10-28 2018-07-10 At&T Intellectual Property I, L.P. Secure geographic based gaming
US10162553B2 (en) 2010-11-24 2018-12-25 Western Digital Technologies, Inc. Methods and systems for object level de-duplication for solid state devices
US8914534B2 (en) 2011-01-05 2014-12-16 Sonic Ip, Inc. Systems and methods for adaptive bitrate streaming of media stored in matroska container files using hypertext transfer protocol
JP5159916B2 (ja) * 2011-04-28 2013-03-13 株式会社東芝 ホスト
FR2976147B1 (fr) * 2011-05-30 2013-11-22 Maxim Integrated Products Schema d'entrelacement de donnees pour une memoire externe d'un microcontroleur securise
US9400714B2 (en) * 2011-06-06 2016-07-26 International Business Machines Corporation Wirelessly communicating a data file
US20120331303A1 (en) * 2011-06-23 2012-12-27 Andersson Jonathan E Method and system for preventing execution of malware
US9319842B2 (en) 2011-06-27 2016-04-19 At&T Intellectual Property I, L.P. Mobile device configured point and shoot type weapon
US9161158B2 (en) 2011-06-27 2015-10-13 At&T Intellectual Property I, L.P. Information acquisition using a scalable wireless geocast protocol
US8812662B2 (en) 2011-06-29 2014-08-19 Sonic Ip, Inc. Systems and methods for estimating available bandwidth and performing initial stream selection when streaming content
KR101290809B1 (ko) * 2011-07-08 2013-08-23 삼성중공업 주식회사 콘텐츠 제공 서버, 콘텐츠 암호화 방법, 콘텐츠 복호화 방법, 및 이들 방법이 저장된 기록매체
CN102279813B (zh) * 2011-08-12 2014-03-12 无锡城市云计算中心有限公司 一种加密卡内系统的保护方法
US9467708B2 (en) 2011-08-30 2016-10-11 Sonic Ip, Inc. Selection of resolutions for seamless resolution switching of multimedia content
WO2013033458A2 (en) 2011-08-30 2013-03-07 Divx, Llc Systems and methods for encoding and streaming video encoded using a plurality of maximum bitrate levels
US8799647B2 (en) 2011-08-31 2014-08-05 Sonic Ip, Inc. Systems and methods for application identification
US8787570B2 (en) 2011-08-31 2014-07-22 Sonic Ip, Inc. Systems and methods for automatically genenrating top level index files
US8909922B2 (en) 2011-09-01 2014-12-09 Sonic Ip, Inc. Systems and methods for playing back alternative streams of protected content protected using common cryptographic information
US8964977B2 (en) 2011-09-01 2015-02-24 Sonic Ip, Inc. Systems and methods for saving encoded media streamed using adaptive bitrate streaming
WO2013035267A1 (ja) * 2011-09-06 2013-03-14 パナソニック株式会社 記録媒体装置、端末装置、配信装置、制御方法、プログラム、及びプログラムの記録媒体
JP5899751B2 (ja) * 2011-09-28 2016-04-06 ソニー株式会社 情報処理装置、および情報処理方法、並びにプログラム
KR101913424B1 (ko) * 2011-09-30 2018-11-01 한국전력공사 이종 기기간 암복호화 장치 및 방법
US9495870B2 (en) 2011-10-20 2016-11-15 At&T Intellectual Property I, L.P. Vehicular communications using a scalable ad hoc geographic routing protocol
US9436629B2 (en) 2011-11-15 2016-09-06 Marvell World Trade Ltd. Dynamic boot image streaming
US9195463B2 (en) * 2011-11-30 2015-11-24 International Business Machines Corporation Processing core with speculative register preprocessing in unused execution unit cycles
US8744419B2 (en) 2011-12-15 2014-06-03 At&T Intellectual Property, I, L.P. Media distribution via a scalable ad hoc geographic protocol
US8918908B2 (en) 2012-01-06 2014-12-23 Sonic Ip, Inc. Systems and methods for accessing digital content using electronic tickets and ticket tokens
US8868910B2 (en) * 2012-02-09 2014-10-21 Hewlett-Packard Development Company, L.P. Elliptic curve cryptographic signature
WO2013142517A1 (en) 2012-03-20 2013-09-26 Krimmeni Technologies, Inc. Method and system for process working set isolation
CN103377347B (zh) * 2012-04-24 2016-01-06 腾讯科技(深圳)有限公司 文件加密、解密方法及装置
US9049022B2 (en) 2012-04-27 2015-06-02 Certicom Corp. Hashing prefix-free values in a certificate scheme
US8995656B2 (en) 2012-04-27 2015-03-31 Certicom Corp. Multiple hashing in a cryptographic scheme
US8850199B2 (en) 2012-04-27 2014-09-30 Certicom Corp. Hashing prefix-free values in a signature scheme
US9124432B2 (en) * 2012-05-25 2015-09-01 Kabushiki Kaisha Toshiba Host device and authentication method for host device
JP5973808B2 (ja) * 2012-07-03 2016-08-23 フェリカネットワークス株式会社 情報処理装置、端末装置、情報処理システム、情報処理方法およびコンピュータプログラム
US9071451B2 (en) 2012-07-31 2015-06-30 At&T Intellectual Property I, L.P. Geocast-based situation awareness
US9571275B1 (en) 2012-08-14 2017-02-14 Google Inc. Single use identifier values for network accessible devices
US9936267B2 (en) 2012-08-31 2018-04-03 Divx Cf Holdings Llc System and method for decreasing an initial buffering period of an adaptive streaming system
CN102930223B (zh) * 2012-09-21 2015-07-22 北京深思洛克软件技术股份有限公司 一种磁盘数据保护方法和系统
US9210589B2 (en) 2012-10-09 2015-12-08 At&T Intellectual Property I, L.P. Geocast protocol for wireless sensor network
US9565472B2 (en) 2012-12-10 2017-02-07 Time Warner Cable Enterprises Llc Apparatus and methods for content transfer protection
US9660745B2 (en) 2012-12-12 2017-05-23 At&T Intellectual Property I, L.P. Geocast-based file transfer
EP2744145A1 (en) * 2012-12-14 2014-06-18 Gemalto SA Non alterable structure including cryptographic material
CN103092688B (zh) * 2012-12-28 2015-11-18 飞天诚信科技股份有限公司 一种在嵌入式系统中生成坐标点的方法
US9390291B2 (en) * 2012-12-29 2016-07-12 Intel Corporation Secure key derivation and cryptography logic for integrated circuits
US9313510B2 (en) 2012-12-31 2016-04-12 Sonic Ip, Inc. Use of objective quality measures of streamed content to reduce streaming bandwidth
US9191457B2 (en) 2012-12-31 2015-11-17 Sonic Ip, Inc. Systems, methods, and media for controlling delivery of content
US9575768B1 (en) 2013-01-08 2017-02-21 Marvell International Ltd. Loading boot code from multiple memories
US9288118B1 (en) 2013-02-05 2016-03-15 Google Inc. Setting cookies across applications
US9298947B2 (en) * 2013-02-07 2016-03-29 Qualcomm Incorporated Method for protecting the integrity of a fixed-length data structure
US20140282786A1 (en) 2013-03-12 2014-09-18 Time Warner Cable Enterprises Llc Methods and apparatus for providing and uploading content to personalized network storage
US9906785B2 (en) 2013-03-15 2018-02-27 Sonic Ip, Inc. Systems, methods, and media for transcoding video data according to encoding parameters indicated by received metadata
US9066153B2 (en) 2013-03-15 2015-06-23 Time Warner Cable Enterprises Llc Apparatus and methods for multicast delivery of content in a content delivery network
US10368255B2 (en) 2017-07-25 2019-07-30 Time Warner Cable Enterprises Llc Methods and apparatus for client-based dynamic control of connections to co-existing radio access networks
US10397292B2 (en) 2013-03-15 2019-08-27 Divx, Llc Systems, methods, and media for delivery of content
US9736801B1 (en) 2013-05-20 2017-08-15 Marvell International Ltd. Methods and apparatus for synchronizing devices in a wireless data communication system
US9521635B1 (en) 2013-05-21 2016-12-13 Marvell International Ltd. Methods and apparatus for selecting a device to perform shared functionality in a deterministic and fair manner in a wireless data communication system
US9094737B2 (en) 2013-05-30 2015-07-28 Sonic Ip, Inc. Network video streaming with trick play based on separate trick play files
US9100687B2 (en) 2013-05-31 2015-08-04 Sonic Ip, Inc. Playback synchronization across playback devices
US9380099B2 (en) 2013-05-31 2016-06-28 Sonic Ip, Inc. Synchronizing multiple over the top streaming clients
US9313568B2 (en) 2013-07-23 2016-04-12 Chicago Custom Acoustics, Inc. Custom earphone with dome in the canal
EP3028145A1 (en) 2013-07-31 2016-06-08 Marvell World Trade Ltd. Parallelizing boot operations
FR3010598B1 (fr) 2013-09-06 2017-01-13 Sagem Defense Securite Procede de gestion de coherence de caches
US9087192B2 (en) * 2013-09-10 2015-07-21 Infineon Technologies Ag Electronic circuit and method for monitoring a data processing
US9455962B2 (en) 2013-09-22 2016-09-27 Winbond Electronics Corporation Protecting memory interface
US9343162B2 (en) 2013-10-11 2016-05-17 Winbond Electronics Corporation Protection against side-channel attacks on non-volatile memory
JP2015103890A (ja) * 2013-11-22 2015-06-04 ソニー株式会社 コンテンツ受信装置及びコンテンツ受信方法、並びにコンテンツ送信装置及びコンテンツ送信方法
US9386067B2 (en) 2013-12-30 2016-07-05 Sonic Ip, Inc. Systems and methods for playing adaptive bitrate streaming content by multicast
WO2015163967A2 (en) * 2014-02-04 2015-10-29 Exponential Horizons Cryptographic method and system of protecting digital content and recovery of same through unique user identification
FR3019416A1 (fr) * 2014-03-28 2015-10-02 Orange Procede de traitement de donnees
US9318221B2 (en) 2014-04-03 2016-04-19 Winbound Electronics Corporation Memory device with secure test mode
US9866878B2 (en) 2014-04-05 2018-01-09 Sonic Ip, Inc. Systems and methods for encoding and playing back video at different frame rates using enhancement layers
US9621940B2 (en) 2014-05-29 2017-04-11 Time Warner Cable Enterprises Llc Apparatus and methods for recording, accessing, and delivering packetized content
US11540148B2 (en) 2014-06-11 2022-12-27 Time Warner Cable Enterprises Llc Methods and apparatus for access point location
US11100234B2 (en) * 2014-06-13 2021-08-24 Hitachi Systems, Ltd. Work recording apparatus, system, program, and method preventing confidential information leaks
SG11201609457UA (en) 2014-08-07 2016-12-29 Sonic Ip Inc Systems and methods for protecting elementary bitstreams incorporating independently encoded tiles
EP2990978B1 (en) * 2014-08-28 2020-11-18 Vodafone GmbH Operating a device for forwarding protected content to a client unit
IL234956A (en) 2014-10-02 2017-10-31 Kaluzhny Uri Data bus protection with enhanced key entropy
US9935833B2 (en) 2014-11-05 2018-04-03 Time Warner Cable Enterprises Llc Methods and apparatus for determining an optimized wireless interface installation configuration
ES2874748T3 (es) 2015-01-06 2021-11-05 Divx Llc Sistemas y métodos para codificar y compartir contenido entre dispositivos
KR102249826B1 (ko) * 2015-01-06 2021-05-11 삼성전자주식회사 데이터 관리 방법 및 이를 수행하는 전자 장치
JP6613568B2 (ja) * 2015-01-19 2019-12-04 富士通株式会社 処理プログラム、処理装置および処理方法
WO2016116999A1 (ja) * 2015-01-19 2016-07-28 三菱電機株式会社 パケット送信装置、パケット受信装置、パケット送信プログラムおよびパケット受信プログラム
US10110572B2 (en) * 2015-01-21 2018-10-23 Oracle International Corporation Tape drive encryption in the data path
US10715574B2 (en) 2015-02-27 2020-07-14 Divx, Llc Systems and methods for frame duplication and frame extension in live video encoding and streaming
US10911225B2 (en) * 2015-06-05 2021-02-02 Nutanix, Inc. Optimizable full-path encryption in a virtualization environment
JP2017069617A (ja) * 2015-09-28 2017-04-06 ルネサスエレクトロニクス株式会社 半導体装置および画像符号化方法
US9986578B2 (en) 2015-12-04 2018-05-29 Time Warner Cable Enterprises Llc Apparatus and methods for selective data network access
US10310774B2 (en) * 2015-12-24 2019-06-04 Intel Corporation Techniques for data storage protection and integrity checking
US9918345B2 (en) 2016-01-20 2018-03-13 Time Warner Cable Enterprises Llc Apparatus and method for wireless network services in moving vehicles
US10492034B2 (en) 2016-03-07 2019-11-26 Time Warner Cable Enterprises Llc Apparatus and methods for dynamic open-access networks
CN109075968A (zh) 2016-03-08 2018-12-21 马维尔国际贸易有限公司 用于安全设备认证的方法和装置
US10019571B2 (en) 2016-03-13 2018-07-10 Winbond Electronics Corporation Protection from side-channel attacks by varying clock delays
US10095635B2 (en) 2016-03-29 2018-10-09 Seagate Technology Llc Securing information relating to data compression and encryption in a storage device
US10075292B2 (en) 2016-03-30 2018-09-11 Divx, Llc Systems and methods for quick start-up of playback
US10231001B2 (en) 2016-05-24 2019-03-12 Divx, Llc Systems and methods for providing audio content during trick-play playback
US10129574B2 (en) 2016-05-24 2018-11-13 Divx, Llc Systems and methods for providing variable speeds in a trick-play mode
US10148989B2 (en) 2016-06-15 2018-12-04 Divx, Llc Systems and methods for encoding video content
US10164858B2 (en) 2016-06-15 2018-12-25 Time Warner Cable Enterprises Llc Apparatus and methods for monitoring and diagnosing a wireless network
US20180013566A1 (en) * 2016-07-05 2018-01-11 Dark Matter L.L.C. Apparatus, computer program, and method for securely broadcasting messages
CN106897348B (zh) * 2016-08-19 2020-10-27 创新先进技术有限公司 一种数据存储、数据校验、数据溯源方法和设备
US10389693B2 (en) * 2016-08-23 2019-08-20 Hewlett Packard Enterprise Development Lp Keys for encrypted disk partitions
US10498795B2 (en) 2017-02-17 2019-12-03 Divx, Llc Systems and methods for adaptive switching between multiple content delivery networks during adaptive bitrate streaming
CN108737353B (zh) * 2017-04-25 2021-08-20 北京国双科技有限公司 一种基于数据分析系统的数据加密方法及装置
JP6757697B2 (ja) * 2017-04-28 2020-09-23 株式会社日立製作所 制御コントローラおよび制御方法
KR101987025B1 (ko) * 2017-05-31 2019-06-10 삼성에스디에스 주식회사 암호화 처리 방법 및 그 장치
US10645547B2 (en) 2017-06-02 2020-05-05 Charter Communications Operating, Llc Apparatus and methods for providing wireless service in a venue
US10638361B2 (en) 2017-06-06 2020-04-28 Charter Communications Operating, Llc Methods and apparatus for dynamic control of connections to co-existing radio access networks
CN107241356B (zh) * 2017-07-24 2020-08-14 无锡江南计算技术研究所 一种网络设备合法性验证方法
US11030221B2 (en) * 2017-12-22 2021-06-08 Permutive Limited System for fast and secure content provision
CN108599922B (zh) * 2018-04-26 2021-03-30 成都盛拓源科技有限公司 新型含密钥消息完整性认证码的生成方法
CN108566270B (zh) * 2018-04-26 2021-10-01 成都盛拓源科技有限公司 使用双分组密码的新型加密方法
WO2019222516A1 (en) * 2018-05-16 2019-11-21 Lg Electronics, Inc. Systems and methods for efficient key management in a vehicular intranet
US10904292B1 (en) * 2018-09-25 2021-01-26 Amazon Technologies, Inc. Secure data transfer device
JP2020072348A (ja) * 2018-10-30 2020-05-07 キヤノン株式会社 認証方法、認証装置、被認証装置及び画像形成装置
US11469903B2 (en) * 2019-02-28 2022-10-11 Microsoft Technology Licensing, Llc Autonomous signing management operations for a key distribution service
US11825142B2 (en) 2019-03-21 2023-11-21 Divx, Llc Systems and methods for multimedia swarms
FR3094520B1 (fr) * 2019-03-25 2021-10-22 St Microelectronics Rousset Clé de chiffrement et/ou de déchiffrement
US11444776B2 (en) * 2019-05-01 2022-09-13 Kelce S. Wilson Blockchain with daisy chained records, document corral, quarantine, message timestamping, and self-addressing
TWI772648B (zh) * 2019-06-03 2022-08-01 銓鴻資訊有限公司 基於集體驗證的部分資料驗證方法
US10803969B1 (en) 2019-08-28 2020-10-13 Micron Technology, Inc. Memory authentication
RU2759259C1 (ru) * 2020-08-19 2021-11-11 Акционерное общество "ЦентрИнформ" Система маркировки и проверки подлинности объекта
US11863679B2 (en) 2020-08-26 2024-01-02 Tenet 3, LLC Blockchain records with third party digital signatures as a trust element for high-risk digital content
US20220069981A1 (en) * 2020-09-03 2022-03-03 Google Llc Distribute Encryption Keys Securely and Efficiently
US12120225B2 (en) * 2020-09-25 2024-10-15 Renesas Electronics Corporation Secure key generation and management in open and secure processor environments
US12120518B2 (en) * 2021-12-22 2024-10-15 T-Mobile Innovations Llc Cryptographic identification of false base stations

Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH03151738A (ja) * 1989-11-08 1991-06-27 Hitachi Ltd 検証用データ生成装置
JPH06162289A (ja) * 1992-11-18 1994-06-10 Nippon Telegr & Teleph Corp <Ntt> Icクレジットカード及びicカード端末
JPH06289782A (ja) * 1993-04-07 1994-10-18 Matsushita Electric Ind Co Ltd 相互認証方法
JPH08248879A (ja) * 1995-02-06 1996-09-27 Internatl Business Mach Corp <Ibm> 2つの鍵を使用して暗号化する方法および装置
JPH09106429A (ja) * 1995-10-12 1997-04-22 Hitachi Ltd 電子伝票処理方法
JPH09121340A (ja) * 1995-07-07 1997-05-06 Thomson Consumer Electron Inc 双方向情報システムにおいて伝送されたアプリケーションを認証する装置及び方法
JPH103257A (ja) * 1996-06-18 1998-01-06 Toshiba Corp 電子署名付加方法及び電子署名装置並びに電子署名検証方法
JPH10126406A (ja) * 1996-10-23 1998-05-15 Toyo Commun Equip Co Ltd ネットワークにおけるデータの暗号方式
JPH10164508A (ja) * 1996-12-02 1998-06-19 Nec Corp オーディオ・ビデオ同期再生装置
JPH10187826A (ja) * 1996-12-19 1998-07-21 Nec Corp 偽造カード使用防止方法およびカード読取書込装置ならびに偽造カード使用防止システム
JPH10283280A (ja) * 1997-04-07 1998-10-23 M V P Kk マルチメディア電子メール送信方法およびそれに用いる記録媒体

Family Cites Families (58)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5065429A (en) 1989-04-03 1991-11-12 Lang Gerald S Method and apparatus for protecting material on storage media
EP0483424A1 (en) * 1990-10-30 1992-05-06 International Business Machines Corporation Key hashing in data processors
JPH05327394A (ja) 1992-05-27 1993-12-10 Japan Radio Co Ltd 弾性表面波素子のフェースダウン実装用パッケージ
US5396558A (en) * 1992-09-18 1995-03-07 Nippon Telegraph And Telephone Corporation Method and apparatus for settlement of accounts by IC cards
FR2696854A1 (fr) * 1992-10-09 1994-04-15 Kudelski Sa Fabrique Enreg Nag Système de traitement d'information utilisant un ensemble de cartes à mémoire.
US5546461A (en) 1993-04-09 1996-08-13 Matsushita Electric Industrial Co., Ltd. Scramble system for use in digital video signal recording and reproducing system or transmission and receiving system, comprising scramble apparatus and descramble apparatus
US5450489A (en) * 1993-10-29 1995-09-12 Time Warner Entertainment Co., L.P. System and method for authenticating software carriers
US5715403A (en) 1994-11-23 1998-02-03 Xerox Corporation System for controlling the distribution and use of digital works having attached usage rights where the usage rights are defined by a usage rights grammar
CA2212574C (en) * 1995-02-13 2010-02-02 Electronic Publishing Resources, Inc. Systems and methods for secure transaction management and electronic rights protection
US5680587A (en) * 1995-05-01 1997-10-21 Computer Performance Inc. Enhanced-performance floppy diskette subsystem
EP0842471A4 (en) * 1995-07-31 2006-11-08 Hewlett Packard Co METHOD AND APPARATUS FOR MANAGING RESOURCES UNDER THE CONTROL OF A PROTECTED MODULE OR OTHER PROTECTED PROCESSOR
US6289102B1 (en) * 1995-10-09 2001-09-11 Matsushita Electric Industrial Co., Ltd. Apparatus and method for preventing unauthorized use of information recorded on an information recording medium
US5917910A (en) * 1995-10-16 1999-06-29 Sony Corporation Encrypting method and apparatus, recording method, decrypting method and apparatus, and recording medium
JP3151738B2 (ja) 1995-11-21 2001-04-03 株式会社小糸製作所 車両用灯具
JPH09179951A (ja) 1995-12-22 1997-07-11 Dainippon Printing Co Ltd 携帯可能情報記憶媒体及びそのシステム
TW346571B (en) * 1996-02-06 1998-12-01 Matsushita Electric Ind Co Ltd Data reception apparatus, data transmission apparatus, information processing system, data reception method
US5673316A (en) 1996-03-29 1997-09-30 International Business Machines Corporation Creation and distribution of cryptographic envelope
JPH1065662A (ja) 1996-04-01 1998-03-06 Sony Corp データ復号方法および装置、認証方法、記録媒体、ディスク製造方法、記録方法、並びに記録装置
US5883958A (en) * 1996-04-01 1999-03-16 Sony Corporation Method and device for data decryption, a method and device for device identification, a recording medium, a method of disk production, and a method and apparatus for disk recording
ES2286833T3 (es) * 1996-05-15 2007-12-01 Intertrust Technologies Corp Metodo y aparato para acceder al contenido almacenado en un dvd.
TW412734B (en) 1996-12-26 2000-11-21 Toshiba Corp Storage medium for recording data, regeneration device for regenerating data recorded in the storage medium, and regeneration system for regenerating data recorded in the storage medium via network
JP3746146B2 (ja) 1997-02-07 2006-02-15 株式会社東芝 暗号情報の生成及び復号方法及び伝送及び受信装置
JP4268690B2 (ja) * 1997-03-26 2009-05-27 ソニー株式会社 認証システムおよび方法、並びに認証方法
JPH10303880A (ja) 1997-05-01 1998-11-13 Digital Vision Lab:Kk サービス提供システム
JP3575951B2 (ja) * 1997-06-17 2004-10-13 株式会社東芝 機器認証方法及び装置並びに認証システム
US6298401B1 (en) * 1997-08-11 2001-10-02 Seagate Technology Llc Object oriented storage device having a disc drive controller providing an interface exposing methods which are invoked to access objects stored in a storage media
US6011849A (en) * 1997-08-28 2000-01-04 Syndata Technologies, Inc. Encryption-based selection system for steganography
US5991878A (en) * 1997-09-08 1999-11-23 Fmr Corp. Controlling access to information
US6021419A (en) * 1997-09-16 2000-02-01 International Business Machines Corporation System for filtering broadcast digital information in accordance with channel identifiers stored in preference list which can be dynamically updated via command through network
FR2772532B1 (fr) 1997-12-16 2000-01-07 Schlumberger Ind Sa Procede de securisation de la transmission d'un message d'un dispositif emetteur a un dispositif recepteur
JPH11185006A (ja) 1997-12-25 1999-07-09 Dainippon Printing Co Ltd Icカード
JPH11213552A (ja) 1998-01-26 1999-08-06 Matsushita Electric Ind Co Ltd データ記録再生方法およびデータ記録再生システム
EP0989557A4 (en) 1998-01-26 2009-12-23 Panasonic Corp APPARATUS, METHOD AND SYSTEM FOR RECORDING / REPRODUCING DATA, AND PROGRAM RECORDING MEDIA
AU2583099A (en) * 1998-02-04 1999-08-23 Sun Microsystems, Inc. Method and apparatus for efficient authentication and integrity checking using hierarchical hashing
US6055236A (en) * 1998-03-05 2000-04-25 3Com Corporation Method and system for locating network services with distributed network address translation
EP0994599A4 (en) 1998-04-01 2009-06-03 Panasonic Corp DATA TRANSMITTING / RECEIVING METHOD, DATA TRANSMITTER, DATA RECEIVER, DATA TRANSMITTING / RECEIVING SYSTEM, AUDIOVISUAL CONTENT TRANSMITTING METHOD, AUDIOVISUAL CONTENT RECEIVING METHOD, AUDIOVISUAL CONTENT TRANSMITTER, AUDIOVISUAL CONTENT RECEIVER , AND RECORD SUPPORT
WO1999055055A1 (en) 1998-04-17 1999-10-28 Iomega Corporation System for keying protected electronic data to particular media to prevent unauthorized copying
US6356753B1 (en) * 1998-04-24 2002-03-12 Ericsson Inc Management of authentication and encryption user information in digital user terminals
JPH11306088A (ja) 1998-04-27 1999-11-05 Toppan Printing Co Ltd Icカードおよびicカードシステム
JPH11338982A (ja) * 1998-05-25 1999-12-10 Mitsubishi Electric Corp Icメモリカードシステム装置及びそのicメモリカード
JP4208998B2 (ja) * 1998-07-03 2009-01-14 パイオニア株式会社 複製制限機能を備えた記録再生システム、記録装置および再生装置
US6304973B1 (en) * 1998-08-06 2001-10-16 Cryptek Secure Communications, Llc Multi-level security network system
CA2285872C (en) * 1998-10-16 2009-10-06 Matsushita Electric Industrial Co., Ltd. Digital content protection system
KR100286572B1 (ko) * 1998-11-19 2001-04-16 남창우 금속박막을 이용한 연료전지 자동차용 소형연료개질기 및 그시스템
JP2000181803A (ja) 1998-12-18 2000-06-30 Fujitsu Ltd 鍵管理機能付電子データ保管装置および電子データ保管方法
JP2000196582A (ja) 1998-12-25 2000-07-14 Nippon Telegr & Teleph Corp <Ntt> 記憶メディア識別子を利用した不正利用防止のための情報記録、利用および配送方法
AU2998100A (en) * 1999-02-18 2000-09-04 Sun Microsystems, Inc. Data authentication system employing encrypted integrity blocks
US6366297B1 (en) * 1999-03-01 2002-04-02 3Com Corporation System and method for displaying modem information on a graphical user interface display
MY123388A (en) * 1999-03-15 2006-05-31 Sony Corp Processing method and apparatus for encrypted data transfer
JP3992396B2 (ja) 1999-03-31 2007-10-17 株式会社リコー 電子文書管理装置、電子文書管理方法およびその方法をコンピュータに実行させるプログラムを記録したコンピュータ読み取り可能な記録媒体
US6468160B2 (en) 1999-04-08 2002-10-22 Nintendo Of America, Inc. Security system for video game system with hard disk drive and internet access capability
JP4177517B2 (ja) 1999-05-21 2008-11-05 株式会社東芝 コンテンツ処理システムおよびコンテンツ保護方法
JP2000341265A (ja) 1999-05-28 2000-12-08 Matsushita Electric Ind Co Ltd データ記録および読み出し方法および記録装置および読み取り装置および書き込み装置
US6898709B1 (en) * 1999-07-02 2005-05-24 Time Certain Llc Personal computer system and methods for proving dates in digital data files
US6598161B1 (en) * 1999-08-09 2003-07-22 International Business Machines Corporation Methods, systems and computer program products for multi-level encryption
JP3748352B2 (ja) * 1999-12-16 2006-02-22 富士通株式会社 データ運用方法、画像生成方法のプログラムを記録する記録媒体、画像復元方法のプログラムを記録する記録媒体
FR2804023B1 (fr) * 2000-01-26 2002-09-20 Johnson & Johnson Consumer Fr Complement nutritionnel a base d'huile de pepins de cassis
EP1512147A2 (en) * 2000-12-07 2005-03-09 SanDisk Corporation System, method, and device for playing back recorded audio, video or other content from non-volatile memory cards, compact disks or other media

Patent Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH03151738A (ja) * 1989-11-08 1991-06-27 Hitachi Ltd 検証用データ生成装置
JPH06162289A (ja) * 1992-11-18 1994-06-10 Nippon Telegr & Teleph Corp <Ntt> Icクレジットカード及びicカード端末
JPH06289782A (ja) * 1993-04-07 1994-10-18 Matsushita Electric Ind Co Ltd 相互認証方法
JPH08248879A (ja) * 1995-02-06 1996-09-27 Internatl Business Mach Corp <Ibm> 2つの鍵を使用して暗号化する方法および装置
JPH09121340A (ja) * 1995-07-07 1997-05-06 Thomson Consumer Electron Inc 双方向情報システムにおいて伝送されたアプリケーションを認証する装置及び方法
JPH09106429A (ja) * 1995-10-12 1997-04-22 Hitachi Ltd 電子伝票処理方法
JPH103257A (ja) * 1996-06-18 1998-01-06 Toshiba Corp 電子署名付加方法及び電子署名装置並びに電子署名検証方法
JPH10126406A (ja) * 1996-10-23 1998-05-15 Toyo Commun Equip Co Ltd ネットワークにおけるデータの暗号方式
JPH10164508A (ja) * 1996-12-02 1998-06-19 Nec Corp オーディオ・ビデオ同期再生装置
JPH10187826A (ja) * 1996-12-19 1998-07-21 Nec Corp 偽造カード使用防止方法およびカード読取書込装置ならびに偽造カード使用防止システム
JPH10283280A (ja) * 1997-04-07 1998-10-23 M V P Kk マルチメディア電子メール送信方法およびそれに用いる記録媒体

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
EIJI OKAMOTO: "Angou riron numon", 25 February 1993, KYOURITSU SHUPPAN K.K., XP002945021 *
SHINICHI IKENO ET AL.: "Gendai angou riron", 20 May 1989, ZAIDAN HOUJIN, DENSHI JOUHOU TSUSHIN GAKKAI, XP002945020 *

Cited By (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003337632A (ja) * 2002-03-19 2003-11-28 Microsoft Corp ポリシーを実行された安全なデジタルデータフォーマットおよびコード
JP2009081549A (ja) * 2007-09-25 2009-04-16 Kyocera Corp 署名検証方法、ストリーム生成方法、受信装置、およびストリーム送信装置
JP2009081556A (ja) * 2007-09-25 2009-04-16 Kyocera Corp 署名検証方法、ストリーム生成方法、受信装置、およびストリーム送信装置
US10834139B2 (en) 2012-06-07 2020-11-10 Amazon Technologies, Inc. Flexibly configurable data modification services
US11036869B2 (en) 2013-02-12 2021-06-15 Amazon Technologies, Inc. Data security with a security module
US10666436B2 (en) 2013-02-12 2020-05-26 Amazon Technologies, Inc. Federated key management
US11372993B2 (en) 2013-02-12 2022-06-28 Amazon Technologies, Inc. Automatic key rotation
US11695555B2 (en) 2013-02-12 2023-07-04 Amazon Technologies, Inc. Federated key management
US11470054B2 (en) 2013-06-13 2022-10-11 Amazon Technologies, Inc. Key rotation techniques
US11323479B2 (en) 2013-07-01 2022-05-03 Amazon Technologies, Inc. Data loss prevention techniques
US10721075B2 (en) 2014-05-21 2020-07-21 Amazon Technologies, Inc. Web of trust management in a distributed system
US11368300B2 (en) 2014-06-27 2022-06-21 Amazon Technologies, Inc. Supporting a fixed transaction rate with a variably-backed logical cryptographic key
US11626996B2 (en) 2014-09-15 2023-04-11 Amazon Technologies, Inc. Distributed system web of trust provisioning
US11734443B2 (en) * 2017-01-19 2023-08-22 Creator's Head Inc. Information control program, information control system, and information control method

Also Published As

Publication number Publication date
EP1267515A2 (en) 2002-12-18
EP1622302A2 (en) 2006-02-01
EP1624609B1 (en) 2011-08-24
KR20040097120A (ko) 2004-11-17
CN1363077A (zh) 2002-08-07
HK1057122A1 (en) 2004-03-12
KR20010108366A (ko) 2001-12-07
CN100511329C (zh) 2009-07-08
EP1195734B1 (en) 2008-02-27
US20100235633A1 (en) 2010-09-16
KR20020084904A (ko) 2002-11-13
KR20040053330A (ko) 2004-06-23
US20070136612A1 (en) 2007-06-14
DE60132962T2 (de) 2009-02-26
US20100005301A1 (en) 2010-01-07
DK1195734T3 (da) 2008-05-13
KR20040096492A (ko) 2004-11-16
KR100653801B1 (ko) 2006-12-05
NZ513862A (en) 2001-09-28
CN1420480A (zh) 2003-05-28
CN1779689A (zh) 2006-05-31
CA2400786C (en) 2007-04-10
EP1624609A3 (en) 2006-08-30
KR20040058296A (ko) 2004-07-03
US7669052B2 (en) 2010-02-23
DE60132962D1 (de) 2008-04-10
AU2707401A (en) 2001-07-31
ATE522039T1 (de) 2011-09-15
CN100423041C (zh) 2008-10-01
KR100653802B1 (ko) 2006-12-05
HK1047815A1 (zh) 2003-03-07
KR100653804B1 (ko) 2006-12-05
ATE387775T1 (de) 2008-03-15
BR0104356A (pt) 2002-02-19
KR100456496B1 (ko) 2004-11-10
KR20040096493A (ko) 2004-11-16
KR100653805B1 (ko) 2006-12-05
US8375206B2 (en) 2013-02-12
US20020169971A1 (en) 2002-11-14
ES2301525T3 (es) 2008-07-01
US20070088961A1 (en) 2007-04-19
CN1818990A (zh) 2006-08-16
US20030233559A1 (en) 2003-12-18
EP1267515A3 (en) 2004-04-07
KR100652098B1 (ko) 2006-12-01
CA2365236A1 (en) 2001-07-26
KR20040053328A (ko) 2004-06-23
CA2400786A1 (en) 2001-07-26
KR100653807B1 (ko) 2006-12-05
US7373506B2 (en) 2008-05-13
KR100653803B1 (ko) 2006-12-05
EP1195734A1 (en) 2002-04-10
KR100653806B1 (ko) 2006-12-05
EP1624609A2 (en) 2006-02-08
EP1622302A3 (en) 2006-08-23
AU785421B2 (en) 2007-05-03
KR20040053329A (ko) 2004-06-23
EP1195734A4 (en) 2004-03-03

Similar Documents

Publication Publication Date Title
WO2001054099A1 (fr) Systeme d&#39;authentification de donnees
WO2001056224A1 (fr) Systeme d&#39;authentification de dispositif de stockage
KR20010109323A (ko) 데이터 기록 재생기 및 세이브 데이터 처리 방법, 및프로그램 제공 매체
JP4524829B2 (ja) データ処理システム、記録デバイス、およびデータ処理方法、並びにプログラム提供媒体
JP2001203686A (ja) データ処理装置、データ処理方法およびデータ検証値付与方法、並びにプログラム提供媒体
JP2003099332A (ja) データ処理システム、データ記録再生器、記録デバイス、および方法、並びにプログラム提供媒体
JP2001211152A (ja) データ処理装置、コンテンツデータ生成方法、およびデータ処理方法、並びにプログラム提供媒体
JP2001211162A (ja) データ処理システム、記録デバイス、およびデータ処理方法、並びにプログラム提供媒体
JP4686805B2 (ja) データ記憶素子製造方法およびデータ記憶素子、並びにデータ処理装置
JP2001209310A (ja) データ処理装置、データ処理方法およびコンテンツデータ生成方法、並びにプログラム提供媒体
JP2001211148A (ja) データ処理装置、データ処理システム、およびデータ処理方法、並びにプログラム提供媒体
JP2001209309A (ja) データ処理装置、コンテンツデータ生成方法、およびデータ処理方法、並びにプログラム提供媒体
JP2001209312A (ja) データ処理システム、記録デバイス、およびデータ処理方法、並びにプログラム提供媒体
JP2001211151A (ja) データ処理装置、データ処理方法およびコンテンツデータ検証値付与方法、並びにプログラム提供媒体
JP2001211149A (ja) データ処理装置およびデータ処理方法、並びにプログラム提供媒体
AU2005200290B2 (en) Data processing apparatus and data processing method
AU2002301287B8 (en) Data Processing Apparatus and Data Processing Method
AU2005200289B2 (en) Data processing apparatus and data processing method
JP2001211080A (ja) データ処理装置、データ処理方法およびコンテンツデータ生成方法、並びにプログラム提供媒体

Legal Events

Date Code Title Description
WWE Wipo information: entry into national phase

Ref document number: 01800100.9

Country of ref document: CN

AK Designated states

Kind code of ref document: A1

Designated state(s): AU BR CA CN KR MX NZ RU SG US

AL Designated countries for regional patents

Kind code of ref document: A1

Designated state(s): AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE TR

WWE Wipo information: entry into national phase

Ref document number: 2001901463

Country of ref document: EP

WWE Wipo information: entry into national phase

Ref document number: 27074/01

Country of ref document: AU

WWE Wipo information: entry into national phase

Ref document number: 513862

Country of ref document: NZ

WWE Wipo information: entry into national phase

Ref document number: PA/a/2001/009138

Country of ref document: MX

ENP Entry into the national phase

Ref document number: 2365236

Country of ref document: CA

Ref document number: 2365236

Country of ref document: CA

Kind code of ref document: A

121 Ep: the epo has been informed by wipo that ep was designated in this application
WWE Wipo information: entry into national phase

Ref document number: 1020017012032

Country of ref document: KR

WWE Wipo information: entry into national phase

Ref document number: 09937120

Country of ref document: US

WWP Wipo information: published in national office

Ref document number: 2001901463

Country of ref document: EP

WWE Wipo information: entry into national phase

Ref document number: 1020027009870

Country of ref document: KR

WWE Wipo information: entry into national phase

Ref document number: 1020047007529

Country of ref document: KR

Ref document number: 1020047007533

Country of ref document: KR

Ref document number: 1020047007535

Country of ref document: KR

Ref document number: 1020047007534

Country of ref document: KR

Ref document number: 1020047007532

Country of ref document: KR

Ref document number: 1020047007531

Country of ref document: KR

Ref document number: 1020047007530

Country of ref document: KR

WWG Wipo information: grant in national office

Ref document number: 27074/01

Country of ref document: AU

WWG Wipo information: grant in national office

Ref document number: 2001901463

Country of ref document: EP