WO2002037747A1 - Enciphering device and method, deciphering device and method, and storage medium - Google Patents

Enciphering device and method, deciphering device and method, and storage medium Download PDF

Info

Publication number
WO2002037747A1
WO2002037747A1 PCT/JP2001/009624 JP0109624W WO0237747A1 WO 2002037747 A1 WO2002037747 A1 WO 2002037747A1 JP 0109624 W JP0109624 W JP 0109624W WO 0237747 A1 WO0237747 A1 WO 0237747A1
Authority
WO
WIPO (PCT)
Prior art keywords
data
encrypted
initial value
block
encryption
Prior art date
Legal status (The legal status 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 status listed.)
Ceased
Application number
PCT/JP2001/009624
Other languages
English (en)
French (fr)
Inventor
Yoichiro Sako
Shunsuke Furukawa
Tatsuya Inokuchi
Takashi Kihara
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sony Corp
Original Assignee
Sony Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sony Corp filed Critical Sony Corp
Priority to EP01980961A priority Critical patent/EP1237320A4/en
Publication of WO2002037747A1 publication Critical patent/WO2002037747A1/ja
Anticipated expiration legal-status Critical
Ceased legal-status Critical Current

Links

Classifications

    • 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
    • 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/10Digital recording or reproducing
    • G11B20/12Formatting, e.g. arrangement of data block or words on the record carriers
    • G11B20/1217Formatting, e.g. arrangement of data block or words on the record carriers on discs
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/065Encryption by serially and continuously modifying data stream elements, e.g. stream cipher systems, RC4, SEAL or A5/3
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/12Transmitting and receiving encryption devices synchronised or initially set up in a particular manner
    • 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
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B2220/00Record carriers by type
    • G11B2220/20Disc-shaped record carriers
    • G11B2220/25Disc-shaped record carriers characterised in that the disc is based on a specific recording technology
    • G11B2220/2537Optical discs
    • G11B2220/2545CDs
    • 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 an encryption apparatus and method, a decryption apparatus and method, and a storage medium.
  • the present invention encrypts data in order to protect content data when recording / reproducing content data such as audio data on an optical disc such as a CD (Co-actuate Disc 2).
  • optical disks have been developed as large-capacity recording media.
  • a CD Compact Disc
  • CD Compact Disc
  • DVD Digital Versatile Disc or Digital Video Disc
  • optical disks mentioned here are read-only disks. Recently, optical disks capable of additional recording and rewriting of data, such as CD-R (CD-Recordable) disks and CD-RW (CD-Rewrite table) disks, have been put into practical use. Various optical discs are also being developed, such as double-density CDs that have the same shape as CDs and have an increased recording capacity, and CD2, which increases the affinity between both ordinary CD players and personal computers. ing.
  • DES Data Encryption Standard
  • tripple DES tripple DES
  • 64-bit (8-byte) data is subjected to initial transposition (scramble), and 32-bit data is generated from a single 56-bit encryption key.
  • Nonlinear processing is performed one after another with sixteen keys, and transposition is performed again for encryption.
  • block ciphers such as DES have relatively short block lengths, so similar blocks may appear frequently, and there is a problem with encryption strength.
  • the CBC method increases the encryption strength by chaining data encrypted in units of blocks.
  • the input block data this time and the data obtained by encrypting the immediately preceding block data are ORed and encrypted.
  • the encrypted block data is decrypted, the exclusive OR with the previous encrypted block data is taken, and the original block data is decrypted.
  • encryption is performed while being chained with the previous block data, so that the encryption strength can be increased.
  • the encryption strength is increased, and the copyright can be more strongly protected.
  • ECC Error Correcting Code
  • media information Since these data are not copyrighted data themselves, they need not be protected and are not normally included in encrypted blocks. Therefore, it is conceivable to make initial values from data in other areas, such as ECC and media information.
  • FIG. 25 shows an example in which an initial value for encryption by the CBC method is created from data in another area such as ECC or medium information.
  • the input block data Di is 256 block data from 0 to 255, and one block is 8 bytes (64 bits).
  • EX—OR of the input block data DO and the initial value in V is performed by the EX—OR gate 501, which is the block encryption.
  • the encrypted block data EDO is generated by being decrypted by the key information K.
  • the EX-OR gate 501 performs an EX-OR operation on the input block data Dl and the preceding encrypted block data EDO, and this is obtained by the key information K in the block encryption circuit 102. Encrypted to generate encrypted block data ED1.
  • the input block data Di and the preceding encrypted block data ED i-1 are EX-ORed, and this is encrypted by the key information K in the block encryption circuit 502 to generate the encrypted block data ED.
  • the initial value i nV is made from data other than the block data, for example, ECC or media information, the initial value will not be a fixed value, and the confidentiality will increase.
  • the initial value inV is made from data other than the block data, for example, ECC or media information
  • data other than the content data is necessarily required for encryption. For this reason, it is impossible to encrypt only the content data and transmit the data. When transmitting the content data, it is necessary to send the E.CC and media information together.
  • the block data DO containing the initial value is encrypted by the key information K in the block encryption circuit 512 to generate encrypted block data ED1.
  • an EX-OR gate 511 performs an EX-OR of the input block data D1 and the preceding encrypted block data EDO, and this is obtained by the key information K in the block encryption circuit 5112. Encrypted, encrypted block Data EDI is generated.
  • the input block data D i is EX-ORed with the preceding encrypted block data ED i ⁇ 1, and this is encrypted by the key information K in the block encryption circuit 5 12, and the encryption is performed.
  • the initial value is generated by random numbers
  • the initial value generated by the random numbers is entered in the block data DO
  • the block data DO is Content data cannot be entered.
  • content data can only be stored in 240 bytes out of 256 blocks (204 bytes) from 0 to 255 in one sector, and the data area is valid. The problem that it can not be used arises.
  • a random number generation circuit is required to generate the initial value using random numbers.
  • a device that can generate a random code as a random number is required. If such a random number generation circuit is provided, the circuit scale will increase.
  • an object of the present invention is to provide an encryption device and method, a decryption device, and a highly confidential encryption that do not require data or random numbers in a special area for an initial value when performing chained encryption.
  • the present invention provides a method and a storage medium.
  • Another object of the present invention is to provide an encryption device and method, a decryption device and method, and a storage medium that can effectively use a data area when performing chained encryption. Disclosure of the invention
  • the present invention provides a generating means for generating an initial value in accordance with data of a first part of content data, and encrypting data of a second part of content data in accordance with the generated initial value. And outputs the An encryption device including encryption means for chain-encrypting data of a part different from the data of the first and second parts of the content data in accordance with the output encrypted data.
  • the present invention generates an initial value according to data of a first part of content data, encrypts data of a second part of content data according to the generated initial value, and outputs encrypted data.
  • This is an encryption method in which data of a part different from the data of the first and second parts of the content data is successively encrypted according to the output encrypted data.
  • the present invention decrypts data of a second part of encrypted content data based on an initial value that is data of a first part of encrypted content data, and outputs decrypted data.
  • a decoding unit configured to generate data of a first part from data of a part.
  • the present invention decrypts data of a second part of encrypted content data based on an initial value which is data of a first part of encrypted content data, and outputs decrypted data.
  • the data of the different part from the data of the second part is decrypted in a chain based on the data of the second part of the encrypted content data, and the data of the first part of the encrypted content data is decrypted.
  • This is a decoding method that generates the data of the first part.
  • the present invention generates an initial value according to data of a first part of content data, encrypts data of a second part of content data according to the generated initial value, and outputs encrypted data.
  • the output darkness This is a storage medium in which data of a part different from the data of the first and second parts of the content data is chain-encrypted in accordance with the encoded data, and the data of the content is stored.
  • the present invention provides a generating means for generating an initial value in accordance with data of a predetermined portion of a stream of content data, encrypting content in accordance with the generated initial value, outputting encrypted data,
  • An encryption device including encryption means for chain-encrypting data of a portion different from the content data according to the output encrypted data.
  • the present invention generates an initial value according to data of a predetermined portion of a stream of content data, encrypts content data according to the generated initial value, outputs encrypted data, and outputs the encrypted data.
  • Encrypted data This is an encryption method in which data different from the content data is encrypted in a chain according to the type of data.
  • the present invention provides a generating means for generating an initial value according to data of a predetermined part of a stream of content data, and a data part of a first part of an encrypted content data based on the initial value. And outputs decrypted data, and outputs a second portion of the data, which is different from the first portion of the encrypted content data, to the first portion of the encrypted content data. And a decoding unit that performs chain decoding based on the data.
  • an initial value is generated according to data of a predetermined portion of a content data stream, and a first portion of the encrypted content data is decrypted and decrypted based on the initial value. And decrypts the data of the second part different from the data of the first part of the encrypted content data in a chain based on the data of the first part of the encrypted content data.
  • This is a decoding method adapted to be used.
  • the present invention generates an initial value according to data of a predetermined portion of a stream of content data, encrypts content data according to the generated initial value, outputs encrypted data, and outputs the encrypted data.
  • Encrypted data This is a storage medium that stores data of content by chain-encrypting data different from the content data according to the data.
  • Content data is blocked and chained and encrypted.
  • the initial value at this time is generated from the content data of the sector itself. For this reason, there is no need to generate an initial value using a random number or the like, and there is no loss in the data area. Also, since the content data is changing at random, the confidentiality is high. Further, there is no need to facilitate a random number generator, and the circuit scale does not increase.
  • the initial value itself generated from the content data is encrypted with other content data. Furthermore, content data to be used as initial values can be freely selected. Thereby, confidentiality is improved.
  • an initial value is generated using unique information included in the header.
  • the header information is unique, and time information such as SCR and PTS changes with time, so that the confidentiality is high.
  • the initial value of encryption is formed using the information of the header of the MPEG stream, it is possible to transmit the MPEG stream while keeping it. Furthermore, there is no need to simplify the random number generator and the like, and the circuit scale does not increase.
  • FIG. 1 is a schematic diagram of an example of an optical disk to which the present invention is applied
  • FIG. 2 is a block diagram of an example of a recording apparatus to which the present invention is applied
  • FIG. 3 is an example of a reproducing apparatus to which the present invention is applied.
  • Fig. 4 shows the structure of a sector.
  • FIG. 5 is a schematic diagram showing the configuration of a block
  • FIG. 6 is a block diagram used to explain an encryption process to which the present invention is applied
  • FIG. 7 is an encryption diagram to which the present invention is applied.
  • FIG. 8 is a block diagram used for explaining a decoding process to which the present invention is applied.
  • FIG. 9 is a block diagram used for explaining a decoding process to which the present invention is applied.
  • FIG. 12 is flowcharts used to describe the encryption processing to which the present invention is applied.
  • Fig. 17 is a schematic diagram used to describe the case of recording an MPEG stream
  • Fig. 18 is a schematic diagram used to describe a case of recording an MPEG stream
  • Fig. 19 is a record of an MPEG stream.
  • FIG. 20 is a schematic diagram showing the configuration of a block in the case where the present invention is applied.
  • FIG. 21A and FIG. 21B are block diagrams used to describe the encryption processing to which the present invention is applied
  • FIG. 22 is a block diagram used to describe the encryption processing to which the present invention is applied.
  • FIG. 23 is a block diagram for explaining an encryption process to which the present invention is applied, FIG.
  • FIG. 24 is a block diagram for explaining a decryption process to which the present invention is applied
  • FIG. FIG. 1 is a block diagram used for explaining conventional encryption processing
  • FIG. 26 is a block diagram used for explaining conventional encryption processing.
  • the present invention is suitable for use in encrypting content data in order to protect the data when recording / reproducing the content data on a CD (Compact Disc) 2, for example.
  • CD Compact Disc
  • FIG. 1 shows an external configuration of a CD 2 to which the present invention can be applied.
  • the CD 2 is, for example, an optical disk having a diameter of 120 mm, like a normal CD. However, it can be set to a diameter of 80 mm like a so-called single CD. No.
  • CD 2 has been developed in consideration of compatibility with both existing CD players and personal computers. As shown in FIG. 1, such a CD 2 is provided with a center hole at the center, a region AR 1 on the inner peripheral side, and a region AR 2 on the outer peripheral side. A mirror portion Ml is provided between the inner peripheral region AR1 and the outer peripheral region AR2, and the inner peripheral region AR1 and the outer peripheral region AR are provided by the mirror portion Ml. And 2 are separated. A lead-in area LIN1 is provided at the innermost circumference of the inner area AR1, and a lead-out area LOUT1 is provided at the outermost circumference. A lead-in area I N2 is provided at the innermost circumference of the outer area AR2, and a lead-out area LOUT2 is provided at the outermost circumference.
  • the inner area A R 1 is an area in which affinity with an existing CD player is achieved.
  • audio data is recorded in a format similar to that of a normal CD-DA (CD Digital Audio) so that it can be reproduced by a normal CD player.
  • the inner area AR 1 is not normally encrypted for content data so that it can be handled in the same manner as a normal CD-DA.
  • data recorded in the inner area A R1 may be encrypted.
  • data other than audio data such as video data and computer program data may be recorded in the inner area AR1.
  • the content data may be compressed and recorded in the inner area AR1.
  • the area AR 2 on the outer peripheral side is an area designed for affinity with a personal computer.
  • data can be recorded at double density.
  • audio data Recorded compressed.
  • the compression method for example, the MP3 (MPEG-1 Audio Layer-3) method is used, and the files are stored in a file so as to be compatible with a personal computer.
  • MP3 is one of the three-layer compression methods specified by MP EG1, and outputs the output of each band using MDCT (Modified Discrete Cosine).
  • MDCT Modified Discrete Cosine
  • the data of the content recorded in the outer area AR2 has an affinity with the personal computer and is easy to handle.
  • the content data recorded in the outer area AR2 is often taken outside, there is a high possibility that copyright protection will not be maintained.
  • the content data recorded in the outer area AR2 is subjected to an encryption process in order to restrict copying and reproduction, and the outer area AR2 is, for example, copied.
  • Copyright management information for managing prohibition / permission, copy generation management, copy number restriction, reproduction prohibition / permission, restriction on the number of times of reproduction, restriction on reproduction time, etc. is recorded.
  • the data recorded in the area AR2 is converted into a file in MP3.
  • the data of the content recorded in the area AR2 is M It is not limited to P3 files.
  • MPEG2—Advanced Audio Coding (AAC), Adaptive TRansform Acoustic Coding (ATAC) 3 and the like are known in addition to MP3.
  • AAC Advanced Audio Coding
  • ATC Adaptive TRansform Acoustic Coding
  • not only audio data but also various data such as video data, still image data, text data, and computer programs can be recorded in the area AR2.
  • the data of the content to be recorded in the area AR 2 is not required to be encrypted, it may be recorded without being encrypted.
  • CD 2 can be played on a CD player using the inner area AR 1 in the same way as a normal CD, and using the outer area AR 2 can be used for personal computers and portable computers. Data can be handled in cooperation with other players.
  • the present invention is suitable for use in encrypting and recording / reproducing the content of the content in such a CD 2, particularly in the area A R 2 on the outer peripheral side.
  • FIG. 2 is an example of a recording apparatus to which the present invention is applied.
  • content data is supplied to an input terminal 1.
  • the content data is, for example, audio data.
  • the audio data may be PCM data or a stream such as MP3.
  • various data such as video data, still image data, game program data, web page data, text, etc. may be recorded as content data.
  • the content data from the input terminal 1 is supplied to the encryption circuit 4.
  • the key information K is supplied to the input terminal 2.
  • the key information K from the input terminal 2 is supplied to the encryption circuit 4.
  • the encryption circuit 4 transmits the content data from the input terminal 1 to the input terminal 2 It is encrypted using key information K from.
  • a block cipher is used as the encryption method.
  • encryption is performed in units of 8 bytes, and the encryption circuit 4 includes a block circuit.
  • the encryption strength is increased by chaining the data encrypted in block units. In this way, data that is encrypted in blocks is chained by CBC.
  • the output of the encryption circuit 4 is supplied to the error correction encoding circuit 5.
  • the error correction encoding circuit 5 adds an error correction code to the content data encrypted by the encryption circuit 4.
  • the output of the error correction encoding circuit 5 is supplied to a modulation circuit 6.
  • the recording data is modulated by a predetermined modulation method.
  • the output of the modulation circuit 6 is supplied to the recording circuit 7.
  • the output of the recording circuit 7 is supplied to the optical pickup 8.
  • the recording circuit 7 is controlled by the system controller 13.
  • Data is recorded on the optical disk 10 by the optical pickup 8.
  • the optical disk 10 is, for example, a CD2 optical disk.
  • the optical pickup 8 is movable in the radial direction of the optical disc 10. Although not shown, a tracking support circuit for irradiating the laser light from the optical pickup 8 along the tracks of the optical disk 10 and a spot of the laser light from the optical pickup 8 are used for the optical disk 10.
  • Various servo circuits such as a focus servo circuit for focusing and a spindle servo circuit for controlling the rotation of the optical disk 10, are provided above.
  • the key information K from the input terminal 2 is supplied to the mix circuit 9.
  • the copyright management information R is supplied to the input terminal 3 and the copyright management information R is written.
  • the mix circuit 9 is supplied via the conversion circuit 11. 'The output of the mix circuit 9 is supplied to the optical pickup 8 via the recording circuit 12.
  • the key information K and the copyright management information R are recorded on the optical disk 10 by the recording circuit 12 by the optical pickup 8.
  • the copyright management information R is information for managing, for example, copy prohibition permission, copy generation management, copy number restriction, reproduction prohibition Z permission, reproduction frequency restriction, reproduction time restriction, and the like.
  • copy generation management limiting the number of copies, limiting the number of playbacks, or limiting the playback time
  • the rewriting of the copyright management information R is performed by the rewriting circuit 11.
  • the recording location of the key information K and the copyright management information R may be recorded in the lead-in / read-out area of the optical disc 10 or recorded as a record in the radial direction of the track.
  • FIG. 3 shows the configuration of the reproduction system.
  • the recording signal of the optical disc 20 is reproduced by the optical pickup 22.
  • the optical disk 20 corresponds to the optical disk 10 in FIG. 2.
  • a CD 2 is used as the optical disk 20, for example.
  • the output of the optical pickup 22 is supplied to the demodulation circuit 24 via the reproduction amplifier 23.
  • the movement of the optical pickup 22 is controlled by the access control circuit 30 under the control of the system controller 29.
  • the access control circuit 30 includes an optical pickup feeding mechanism, a tracking servo circuit for irradiating the laser beam from the optical pickup 22 along the track of the optical disk 20, and a laser from the optical pickup 22.
  • the output of the c demodulation circuit 24 including a servo circuit such as a focus support circuit for focusing a light spot on the optical disk 20 is supplied to an error correction circuit 25.
  • the error correction circuit 25 performs error correction processing.
  • the output of the error correction circuit 25 It is supplied to the decryption circuit 26 and to the key management information reading circuit 27.
  • the output of the key management information reading circuit 27 is supplied to the decryption circuit 26.
  • the decryption circuit 26 uses the key information K read by the key management information reading circuit 27 to perform decryption processing of the reproduced data. As described above, in this example, the CBC method is used as the encryption method. The decryption circuit 26 performs decryption processing of such a CBC-based encryption.
  • the output of the decryption circuit 26 is supplied to the reproduction circuit 28.
  • the output of the reproduction circuit 28 is output from the output terminal 31.
  • copy and reproduction are restricted by the copyright management information R read by the key management information reading circuit 27.
  • the CBC method is used as the encryption method. That is, in the recording system, the encryption circuit 4 performs an encryption process on the input content data by the CBC method. Then, in the reproduction system, the decryption circuit 26 performs decryption processing on the reproduced content data.
  • the strength of encryption can be increased by chaining data encrypted in block units.
  • 2048 bytes constitute one sector, and data recording / reproducing on the optical discs 10 and 20 is performed in units of this sector.
  • a subcode block consisting of 98 frames is regarded as one sector.
  • the size of this one sector area is 2352 bytes, of which 2048 bytes are the data area.
  • one block of 64 bits And a 56-bit key is used. Therefore, as shown in Fig. 5, one sector is divided into 256 blocks in units of 8 bytes (64 bits).
  • the encryption strength can be increased.
  • Each sector is encrypted by the CBC method. For this reason, even if data cannot be reproduced due to an error or the like, the effect is completed within that sector and does not reach other sectors.
  • data of a block in the same sector is used as an initial value.
  • loss of the data area is eliminated.
  • content data such as music data or image data
  • the value of itself changes randomly. For this reason, the use of content data has high initial value confidentiality.
  • FIG. 6 shows a process when generating an initial value
  • FIG. 7 shows a process when performing block encryption in a chain.
  • one of the block data Dj in one sector from DO to D255 is sent to the EX-OR gate 101. Also, the function f (Di) of the block data Di excluding the block data Dj in the same sector is sent to the EX- ⁇ R gate 101.
  • the EX-OR gate 101 calculates the EX-OR of the block data Dj and the function f (Di) of the block data Di other than the block data Dj.
  • the EX-OR of the block data Dj and the function f (Di) of all block data Di other than the block data Dj is the function f (Di) of the block data Dj and all the block data Di other than the block data Dj.
  • the output of the EX-OR gate 101 is sent to the block encryption circuit 102.
  • the output of the EX-OR gate 101 is encrypted with the key information K.
  • the initial value i n V is obtained. This value is also used as encrypted data EDj of block data D] '.
  • this block data is EX-ORed with the data obtained by encrypting the previous block data, and this is decoded.
  • the data ED j which is also used as the initial value is used as the encrypted block data.
  • the encryption is performed as follows. First, the EX-OR gate 1 1 1 performs an EX-OR operation on the input data DO and the initial value i nV obtained in FIG. 6, and the output of the EX-OR gate 1 1 1 is blocked. Supplied to the encryption circuit 1 1 2.
  • the encrypted block data EDO is obtained from the output of the EX-OR gate 111 and the key information K.
  • the EX-OR gate 1 1 1 performs an EX-OR operation on the input block data D1 and the encrypted block data EDO, and outputs the output of the EX-OR gate 1 1 1 to the block encryption circuit 1 1 1
  • the encrypted block data ED1 is obtained from the output of the EX-OR gate 111 and the key information K in the block encryption circuit 112.
  • encrypted block data ED2, ED3,... are obtained from input data D2, D3,.
  • the input block data D2, D3, ... are encrypted, and when the input block data becomes D] ', the initial value i n V obtained in FIG. 6 is output as the encrypted block data EDj.
  • the input block data Di and the encrypted block data E Di_l are again ORed by the EX-OR gate 1 1 1 and the output of the EX-OR gate 1 1 1 is output to the block encryption circuit 1.
  • the encrypted block data EDi is obtained from the output of the EX-OR gate 111 and the key information K. The same processing is repeated until the input data D255 is encrypted and the encrypted block data ED255 is output.
  • the initial value i nV obtained in FIG. 6 is output as encrypted block data ED 0.
  • an EX-OR gate of the input block data D1 and the encrypted block data EDO (equal to the initial value in V) is taken by the EX-OR gate 111 shown in FIG. —
  • the output of the OR gate 1 1 1 is supplied to the block encryption circuit 1 1 2, and the block encryption circuit 1 1 2 outputs the encrypted block data from the output of the EX— OR gate 1 1 1 and the key information K. Overnight ED1 is required.
  • the same processing is repeated until the input data D 255 is encrypted and the encrypted block data ED 255 is output, and the encrypted block data ED 2, ED 3,... Are converted from the input data D 2, D 3,. Desired.
  • encryption is performed as follows. First, the EX-OR gate 111 shown in FIG. 7 performs an EX-OR operation on the input block data DO and the initial value inV obtained in FIG. 6, and obtains the EX-OR gate. The output of 111 is supplied to the block encryption circuit 112.
  • the encrypted block data EDO ' is obtained from the output of the EX-OR gate 111 and the key information K.
  • the input block data D1 is EX-ORed with the encrypted block data EDO, and the output of the EX- ⁇ R gate 111 is a block cipher.
  • Block cipher supplied to the encryption circuit 1 1 2 The encryption circuit 112 obtains the encrypted block data ED1 from the output of the EX-OR gate 111 and the key information.
  • encrypted block data ED2, ED3,... are obtained from input data D2, D3,.
  • the same process is repeated until encrypted block data ED 254 of input data D 254 is obtained.
  • the initial value i n V obtained in FIG. 6 is output as the encrypted block data ED255.
  • FIG. 8 shows a process for performing block encryption in a chain
  • FIG. 9 shows a process for decrypting block data in which an initial value is encrypted.
  • decoding is performed as follows.
  • the encrypted block data EDO and the key information K are sent to the block No. decryption circuit 12 1, and the block decryption circuit 12 1 performs the decryption processing of the encryption. .
  • the output of the block cipher circuit 121 is sent to the EX-OR gate 122. Further, the initial value i nV is sent to the EX-OR gate 122. This initial value i n V is the encrypted block data EDj.
  • the EX-OR gate 122 performs an EX-OR operation on the output of the block decoder circuit 121 and the encrypted block data EDj to decrypt the block data DO.
  • the encrypted block data ED1 and the key information K are sent to the block cipher decoding circuit 121.
  • the encryption is decrypted by the block symbol decryption circuit 1 2 1.
  • the output of the block encryption / decryption circuit 121 is sent to the EX-OR gate 122. Also, the EX-OR gate 122 is sent the previous encrypted block data EDO.
  • the EX-OR gate 122 takes the EX-OR of the output of the block encryption / decryption circuit 122 and the preceding encrypted block data E DO to decrypt the block data D1.
  • the decrypted block data becomes the encrypted block data EDj corresponding to the initial value, as shown in FIG.
  • the block data EDj and the key information K are sent to the block encryption / decryption circuit 131, and the block number decryption circuit 1331 performs the decryption processing of the symbol.
  • the output of the block encryption / decryption circuit 13 1 is sent to the EX-OR gate 132.
  • a function f (Di) between the EX-OR gate 1 32 and data other than the block data Dj is sent.
  • EX—OR gate 132 takes EX— ⁇ R of the function f (Di) between the output of block signal decoding circuit 13 1 and data other than block data Dj to obtain the block data. Dj is decrypted.
  • the encrypted block data EDi and the key information K are sent to the block decoding circuit 1 2 1, and the encryption is decrypted by the block encryption decryption circuit 1 2 1 You.
  • the output of the block ⁇ ⁇ decoding circuit 1 2 1 is sent to the EX-OR gate 122.
  • the EX-QR gate 122 is sent the preceding encrypted block data ED i-1.
  • the EX-OR gate 122 performs an EX-OR operation on the output of the block decoding circuit 12 1 and the preceding encrypted block data ED i-1 to decrypt the block data Di.
  • the same processing is repeated until the encrypted block data ED255 is decrypted.
  • decoding is performed as follows.
  • the encrypted block data EDO and the key information K are sent to the block encryption / decryption circuit 131, and the block encryption / decryption circuit 1331 performs an encryption decryption process.
  • the output of the block No. decoding circuit 13 1 is sent to the EX-OR gate 13 2.
  • the function f (Di) between the block and the data other than DO is sent to the EX-OR gate 1 32.
  • EX—OR gate 132 performs an EX—OR operation on the output of block decoding circuit 13 1 and function f (Di) with data other than block data Dj to decode block data DO .
  • the encrypted block data ED1 and the key information K are sent to the block encryption decryption circuit 121 as shown in FIG. Is performed.
  • the output of the block encryption / decryption circuit 122 is sent to the EX-OR gate 122.
  • the initial value i n V is sent to the EX-OR gate 1 2 2.
  • the initial value i n V is the encrypted block data EDO.
  • the EX-OR gate 122 performs an EX-OR operation on the output of the block encryption / decryption circuit 122 and the encrypted block data EDO to decrypt the block data D1.
  • the encrypted block data ED2 and the key information K are sent to the block cipher decoding circuit 121.
  • the decryption processing is performed by the block ⁇ ⁇ decryption circuit 1 2 1.
  • Output of block cipher circuit 1 2 1 is sent to EX-OR gate 122 It is. Also, the EX-OR gate 122 receives the previous encrypted block data ED1.
  • the EX-OR gate 122 performs an EX-OR operation on the output of the block decoding circuit 121 and the preceding encrypted block data ED1 to decrypt the block data D2.
  • decoding is performed as follows.
  • the encrypted block data EDO and the key information K are sent to the block No. decryption circuit 121, and the block encryption and decryption circuit 121 performs decryption processing of No. Will be
  • the output of the block signal decoding circuit 121 is sent to the EX-OR gate 122. Further, the initial value i nV is sent to the EX-OR gate 122. This initial value inV is the encrypted block data ED255.
  • the output of the block encryption / decryption circuit 122 is EX-ORed with the encrypted block data ED255, and the block data DO is decrypted.
  • the encrypted block data ED1 and the key information K are sent to the block cipher decoding circuit 121.
  • the cipher is decrypted by the block cipher decryption circuit 1 2 1.
  • the output of the block encryption / decryption circuit 121 is sent to the EX-OR gate 122.
  • the preceding encrypted block data EDO is sent to the EX-OR gate 122.
  • EX—OR gate 1 2 2 takes EX— ⁇ R of the output of block cipher decryption circuit 1 2 1 and the previous encrypted block data EDO, Decode Dl is decoded.
  • the block data D 254 is decrypted from the encrypted block data ED 254, as shown in FIG. 9, the encrypted block data ED 255 and the key information K are sent to the block decoding circuit 121. Then, the block cipher decoding circuit 13 1 performs a cipher decoding process.
  • the output of the block encryption / decryption circuit 13 1 is sent to the EX- ⁇ R gate 1 32. Further, a function f (Di) between data other than the block data Dj is sent to the EX-OR gate 132.
  • EX OR gate 132—Ex-ORs the function f (Di) between the output of block cipher decryption circuit 131 and data other than block data Dj to obtain block data D255 Is decoded.
  • the chain, the initial value, and the key information are all processed in 64 bits, but may be 128 bits or 256 bits.
  • FIG. 10 to FIG. 12 are flow charts showing processing when data is encrypted and recorded as described above.
  • one sector of, for example, 2048 bytes is encrypted by CBC.
  • One sector is divided into 256 blocks every 8 bytes (64 bits).
  • step S1 block data DO ⁇ ! Corresponding to one sector (for example, 2048 bytes).
  • step S2 One block data Dj out of 255 is read out.
  • step S2 the EX-OR of the block data Di with the function f (Di) is encrypted with the key information K, and an initial value inV is generated (step S2).
  • step S3 This initial value inV is stored (step S3).
  • the block data Dj used to create the initial value is Is determined (step S4).
  • the obtained encrypted block data EDO is stored (step S7).
  • the initial value in V is read (equivalent to the encrypted block data DO (step S9), and the block data D1 is read (step S10).
  • EX—OR of the initial value in V and the block data D1) Is encrypted with the key information K, and the encrypted block data ED1 of the block data D1 is generated (step S11), and the encrypted block data EDi is stored (step S12).
  • the encrypted block data EDi_l is read (step S14), and the block data Di is read (step S15).
  • the EX-OR of the encrypted block data EDi-1 and the block data Di is encrypted with the key information K, and an encrypted block data EDi of the block data Di is generated (step S16).
  • This encrypted block data EDi is stored (step S17). Then, the block data number i is incremented (step S18).
  • step S19 It is determined whether or not the block number i has reached "256" (step S19). If the block number i has not reached "256”, the process returns to step S14. The same processing is repeated until the block number i reaches “256”, and the encrypted block data EDi is obtained. When the block number i reaches “256”, the block data is deleted. D255 When the request is made, the process is terminated.
  • the encrypted block data EDi-1 is read (step S27), and the block data Di is read (step S28).
  • the EX-OR of the encrypted block data ED i-1 and the block data Di is encrypted with the key information K, and the encrypted block data ED i of the block data Di is generated (step S29).
  • This encrypted block data EDi is stored (step S30). Then, the block data number i is incremented (step S31).
  • step S32 It is determined whether or not the block number i has reached “255” (step S32), and if the block number i has not reached “255”, the process returns to step S27. Then, the same processing is repeated until the block number i reaches “255”, and the encrypted block data EDi is obtained.
  • step S33 the initial value in V obtained in step S2 is read (step S33). Then, the initial value inV is set as the encrypted block data ED255 (step S34), saved (step S35), and the process is terminated.
  • the initial value inV obtained in step S2 is read (step S37), and the block data DO is read (step S38).
  • step S 48 It is determined whether the block number i has reached “2 5 6” (step S 48) If the block number i has not reached “2 5 6”, the process returns to step S42.
  • FIG. 13 to FIG. 16 are flowcharts showing a process for decoding a symbol.
  • the encrypted block data EDO is decrypted with the key information, and a block data DO is generated by EX-OR of the decrypted value with the function f (Di) (step S103).
  • This block data DO is stored (step S104).
  • the encrypted block data ED1 is read (step S106).
  • the encrypted block data EDO is read (step S107).
  • the encrypted block data EDO is set to the initial value i n V (step S108).
  • the encrypted block data EDi is read (step S112).
  • the encrypted block data EDi-1 is read (step S113).
  • the encrypted block data EDi is decrypted with the key information K, and the decrypted value is EX- ⁇ R with the encrypted block data EDi-1 to generate block data Di (step S114). .
  • This block data Di is saved (step S115). Then, the block number i is incremented (step S116).
  • step S1 17 It is determined whether or not the block number i has reached “2 5 6” (step S1 17), and if the block number i has not reached “2 5 6”, the process returns to step S 1 12 . The same process is repeated until the block number i reaches “2 5 6”. When the block number i reaches “256” and the block data D255 is decoded, the processing is terminated.
  • the encrypted block data EDO is read out (step S120).
  • the encrypted block data ED255 is read (step S122).
  • the encrypted block data ED 255 is set to the initial value i n V (step S122).
  • the encrypted block data EDO is decrypted with the key information K, and the decrypted value and the initial EX-OR is performed with the period value inV to generate block data DO (step S123).
  • the generated block data DO is stored (step S124).
  • the encrypted block data EDi is read (step S126).
  • the encrypted block data EDi-1 is read (step S127).
  • the encrypted block data EDi is decrypted with the key information K, and the decrypted value is EX-ORed with the encrypted block data EDi-1 to generate a block data Di (step S1). 28).
  • This block data Di is stored (step S129). Then, the block number i is incremented (step S130).
  • step S1 3 It is determined whether or not the block number i has reached “2 5 5” (step S1 3 1). If the block number i has not reached “2 5 5”, the process returns to step S 1 26 . The same process is repeated until the block number i reaches “2 5 5”.
  • the encrypted block data ED255 is read (step S1332).
  • the encrypted block data ED 255 is decrypted with the key information K, and the decrypted value is EX-ORed with the function f (Di) to generate a block data D 255 (step S 133).
  • the block data D 255 is stored (step S 134), and the process ends.
  • the encrypted block data EDj is read (Step S137). Dark The encrypted block data ED j is set to an initial value in V (step S138).
  • the encrypted block data EDO is decrypted with the key information K, and the decrypted value and the initial value inV are EX-ORed to generate block data DO (step S139).
  • the encrypted block data EDi is read out (step S143).
  • the encrypted block data EDi-1 is read (step S144).
  • the encrypted block data EDi is decrypted with the key information K, and the decrypted value and EX— ⁇ R of the encrypted block data EDi-1 are taken to generate a block data overnight Di (step S1). 45).
  • This block data Di is stored (step S146). Then, the block number i is incremented (step S147).
  • step S148 It is determined whether or not the block number i has reached “256” (step S148). If the block number i has not reached “256”, the process returns to step S142.
  • the encrypted block data EDj is decrypted with the key information K, and block data Dj is generated by the EX-OR of the decrypted value and the function f (D i) (step S150).
  • This block data Dj is stored (step S1.51). Then, the process proceeds to Step S147. Then, the same processing is repeated until the block number i reaches “2 56”. When the block number i reaches “2 5 6” and the decoding up to D 255 is completed, the process is terminated.
  • block data D] 'whose initial value has been encrypted may be always fixed or may be changed.
  • confidentiality can be improved.
  • the initial value in the case where block encryption is performed in a chain is generated from the content data itself. As a result, there is no loss in the overnight area, and the content data changes randomly, so confidentiality is high.
  • the content data is music data
  • the data is obtained by sampling, and thus it can be said that the data itself is randomized data. It is very difficult to know the level of the music data at a certain point in time. Therefore, if an initial value is created from the content data itself, the confidentiality is improved in the same way as using a random number as the initial value.
  • the optical disc of CD 2 has an inner area AR 1 and an outer area AR 2, and the area AR 2 is filed by the MP3 method. Audio data is recorded.
  • the MP3 scheme is one of three layers of audio and video used in MPEG1. Therefore, when recording the data of MP 3 in the outer area A R 2, the data is recorded according to the MPEG stream.
  • the MPEG stream consists of upper layers (program layer, pack layer).
  • the stream is composed of a lower layer and a lower layer. That is, in the MPEG stream, one program sequence is composed of a plurality of packs, and each pack is generally composed of a plurality of packets. At the beginning of each pack, a pack header is provided.
  • a bucket consists of a packet header and data.
  • a block consisting of 98 frames is defined as a sector, and data is recorded in units of this sector.
  • FIG. 17 shows a data structure when an MPEG stream is recorded on a CD.
  • one sector of the CD has a data area of 2,048 bytes. In this 2048-byte data area, in principle, the MPEG stream packs and packets are arranged in one sector.
  • a file header is provided at the beginning of the file. This file header contains the author's management information.
  • a pack header is provided at the beginning of one sector.
  • This pack header is composed of, for example, 14 bytes.
  • the pack header includes a pack start code and an SCR (System Clock).
  • a packet header is provided. This packet header consists of, for example, 18 bytes.
  • the packet header includes a packet start code, stream ID, and PES (Packetized
  • MPEG-compressed content data (eg, compressed audio data) is placed in the remaining 201 bytes of one sector.
  • an MPEG file such as MP3 is , Pack and bucket Embedded in the stream consisting of Then, as shown in FIG. 18, a file header is provided at the beginning of the file.
  • This file header includes the author's management information such as the file ID and ISRC (International Standard Recording Code).
  • IS RC International Standard Recording Code
  • IS RC International Standard Recording Code
  • pack and sector data are recorded in the data area of one sector of 2,048 bytes.
  • encryption is required for 210-byte data, and 14-byte pack headers and 18-byte bucket headers do not require encryption.
  • FIG. 19 shows the configuration of a block for encrypting the data of the content of the MPEG stream for one sector.
  • the MPEG stream of the data of one sector, it is necessary to encrypt the data of 210 bytes. Therefore, when encrypting the MPEG stream, as shown in FIG. 19, one sector of data is divided into 25 blocks in units of 8 bytes (64 bits).
  • encryption is performed by the CBC method, which uses the EX-OR of the current block data and the data obtained by encrypting the previous block data and performs encryption. Is done.
  • an initial value is required.
  • the initial value is generated from the content data of the block in the same sector.
  • the initial value may be created from the content data itself of the block in the same sector.
  • the initial value of CBC may be created from the header of the EG stream. That is, as shown in FIG. 17, the MPEG stream is provided with a pack header and a packet header. As shown in FIG. 18, a file header is provided at the beginning of the file. It is conceivable to generate initial values from these headers.
  • the file header records copyright management information such as ISRC.
  • This copyright management information is a unique value for each content.
  • a unique value for each disk such as the serial number of the disk, can be entered in the disk header.
  • Such information can, t also a unique information to each disc, pack header, the pack or static one Tokodo, S CR, contains bit rate.
  • the SCR is time information for calibrating the STC (System Time Clock), which is the reference of the system.
  • the packet header includes the packet start code, stream ID, PES header length, and PTS.
  • PTS is time information that serves as a reference for reproduction.
  • the SCR in the pack header and the PTS in the packet header change over time and are therefore unique.
  • an initial value for encryption by the CBC method can be generated.
  • the header information may be used as is, but using the header information as it is does not provide sufficient confidentiality .
  • the following method can be considered. First, a unique function of file header such as copyright information and time-varying information such as SCR of pack header and PTS in bucket header are combined by a predetermined function to generate an initial value. Conceivable.
  • FIG. 20 shows the initial value of the file header such as copyright information and the time-varying information such as the SCR of the pack header and the PTS in the bucket header.
  • the £ -0 shaking gate 201 is supplied with the unique information of the file header and the SCR of the packed header or the PTS in the packet header.
  • the EX-OR gate 201 requires EX-OR of the unique information of the file header and the SCR of the pack header or PTS in the bucket header. From the output of the EX-OR gate 201, an initial value inV is obtained.
  • Fig. 21A shows an example of a process for generating an initial value by encrypting unique information in a file header such as copyright information.
  • the unique information of the file header is supplied to the encryption circuit 2 11.
  • the unique information of this file header is encrypted by the encryption circuit 211, and the initial value inV is obtained from the output of the encryption circuit 211.
  • FIG. 21B is an example of a process for generating an initial value by encrypting time-varying information such as the SCR of a knock header and the PTS in a bucket header.
  • the encryption circuit 221 is supplied with the SCR of the pack header or the PTS in the packet header.
  • the SCR or PTS is encrypted by the encryption circuit 221, and the initial value in V is obtained from the output of the encryption circuit 221.
  • Fig. 22 shows the unique information in the file header such as copyright information and the time-varying information such as the SCR in the pack header and the PTS in the packet header. This is an example of a process for generating a value.
  • the EX-OR gate 231 is supplied with the unique information of the file header and the SCR of the pack header or the PTS in the bucket header.
  • the EX-OR gate 231 requires the EX-OR of the unique information in the file header and the SCR in the pack header or the PTS in the bucket header.
  • the output of the EX-OR gate 2 31 is supplied to the encryption circuit 2 32.
  • the output of the EX-OR gate 231 is encrypted, and the initial value inV is obtained from the output of the encryption circuit 232.
  • FIG. 23 shows an example of an encryption process when encrypting an MPEG stream.
  • the EX-0 R gate 30 1-0 takes the EX-OR of the input block data DO and the initial value in V obtained from the MPEG header, and obtains the EX-OR gate.
  • the output of 30 1-0 is supplied to the block encryption circuit 302-0.
  • the encrypted block data EDO is obtained from the output of the EX-OR gate 311 and the key information.
  • the EX—OR gate 3 0 1— 1 performs an EX—OR of the input block data D 1 and the encrypted block data EDO, and obtains the EX—OR
  • the output of the gate 3 0 1-1 is supplied to the block encryption circuit 3 0 2-1, and the block encryption circuit 302-1 receives the output of the EX-OR gate 3 0 1-1 and the key information K.
  • the encrypted block data ED1 is required.
  • encrypted block data ED2, ED3,..., ED251 are obtained from the input data D2, D3,.
  • FIG. 24 is an example of a decoding process when decoding an MPEG stream.
  • the encrypted block data EDO and the key information K are sent to the block No. decryption circuit 40 1-0, and the block No. decryption circuit 40 1-0 performs decryption processing of the No. Will be
  • the output of the block cipher circuit 40 1 -0 is sent to the EX-OR gate 40 2-0.
  • the initial value i nV is sent to the EX-OR gate 402-0.
  • This initial value i nV is the encrypted block data i nV.
  • the EX-OR gate 402_0 performs an EX-OR operation on the output of the block encryption / decryption circuit 40 1-0 and the initial value inV to decrypt the block data DO.
  • the encrypted block data ED1 and the key information K are sent to the block cipher decoding circuit 401-1.
  • the block cipher decryption circuit 40 1-1 decrypts the cipher.
  • the output of the block encryption / decryption circuit 401-1 is sent to the EX-OR gate 402-1.
  • the EX-OR gate 402-1 receives the previous encrypted block data EDO.
  • the output of the block encryption / decryption circuit 401-1 is EX-ORed with the previous encrypted block data E DO, and the block data D1 is decrypted.
  • the initial value is generated using the file header and the time information such as the SCR or PTS of the pack header or the packet header, but the information of the disk header is also generated. It may be used.
  • the content data is recorded on the optical disk of CD2, but the recording medium is not limited to the optical disk of CD2.
  • the present invention can be similarly applied to the case where content data is recorded on CD-: DA, CD-ROM, CD-R, or CD-RW. Further, the present invention can be similarly applied to a case where content data is recorded on various recording media such as a magnetic disk, a flash memory card and the like, in addition to the optical disk.
  • the present invention is also suitable for use in the case where content data is distributed over a network.
  • the content data is blocked and chained and encrypted.
  • the initial value at this time is generated from the content of the sector itself. Therefore, the initial value is It does not need to occur and there is no loss of data area. Also, since the content changes randomly, the confidentiality is high. Furthermore, there is no need to facilitate a random number generator, and the circuit scale does not increase.
  • the initial value itself generated from the content data is encrypted with other content data. Furthermore, the content data used as the initial value can be freely selected. Thereby, confidentiality is improved.
  • an initial value is generated using unique information included in a header.
  • Header information is unique, and time information such as SCR and PTS changes with time, so it is highly confidential.
  • the initial value of encryption is formed using the header information of the MPEG stream, it is possible to transmit while maintaining the MPEG stream. Furthermore, there is no need to simplify the random number generator, etc., and the circuit scale does not increase. Industrial applicability
  • the encryption device and method, the decryption device and method, and the storage medium according to the present invention record content data such as audio data on an optical disc such as a CD (Compact Disc) 2. It is suitable for encrypting and recording data in order to protect the contents during playback.
  • content data such as audio data on an optical disc such as a CD (Compact Disc) 2. It is suitable for encrypting and recording data in order to protect the contents during playback.

Landscapes

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

Description

暗号化装置及び方法、 復号装置及び方法、 並びに記憶媒体 技術分野
この発明は、 例えば CD (Co即 act Disc) 2のような光ディスクに、 オーディォデータ等のコンテンツのデータを記録/再生する際に、 コン テンッのデータの保護を図るた明めにデータを暗号化して記録するのに用 いて好適な暗号化装置及び方法、 復号装置及び方法、 並びに記憶媒体に 田
関する。
背景技術
近年、 大容量の記録媒体として光ディスクの開発が進められてきてい る。 例えば音楽情報が記録された CD (Compact Disc)、 コンピュータ用 のデータが記録される C D— R OM (Compact Disc Read Only Memory) 映像情報を取り扱う DVD (Digital Versatile Disc または Digital Video Disc) 等が知られている。
ここに挙げた光ディスクは、 読み出し専用のディスクである。 最近で は、 C D— R (CD-Recordable)ディスク 、 C D— R W (CD - Rewr i table) ディスク等のように、 データの追記や、 書き換えが可能な光ディスクが 実用化されている。 さらに、 CDと同様な形状で記録容量を高めた倍密 度 C Dや、 通常の C Dプレーヤとパーソナルコンピュー夕との双方との 親和性が高められる CD 2等、 様々な光ディスクの開発が進められてい る。
このような光ディスクの普及に伴って、 光ディスクに記録されたコン テンッのデータが不正に複製されて使用されたり、 複製されたものが不 正に販売されたりして、 著作権者に不利益を与えることが危惧されてい る。 そこで、 光ディスクにオーディオデータやビデオデータのようなコ ンテンッデータを記録する際に、 著作権者の権利を保護することを目的 として、 コンテンッデータに対して暗号化処理を施こすことが行われて いる。
このように、 光ディスクにコンテンツのデータを記録する際に用いる 暗号化方式としては、 DE S (Data Encryption Standard) や tripple D E S等のブロック暗号が使われてきている。 DE Sは代表的な共通鍵 暗号であり、 64ビット (8バイト) のデータを初期転置 (スクランプ ル) を行い、 32ビットずつ分けたデータを、 56ビットの 1個の暗号 鍵から生成された 1 6個の鍵で次々と非線形処理を行い、 再び転置を行 つて、 暗号化するものである。
ところが、 DE Sのようなブロック暗号は、 ブロックの長さが比較的 短いため、 類似のブロックが頻繁に現れる可能性があり、 暗号強度に問 題がある。
そこで、 喑号強度を上げるために、 CB C (Ciphering Block
Chaining ) 方式を用いることが考えられている。 CB C方式は、 プロ ック単位で暗号化したデータを連鎖させていくことで暗号強度を上げて いくものである。
すなわち、 CB C方式では、 暗号化を行う際には、 今回の入力ブロッ クデ一夕と、 その 1つ前のブロックデータを暗号化したデータとの EX 一 ORがとられ、 暗号化される。 復号を行う際には、 暗号化ブロックデ 一夕が復号され、 その前の暗号化ブロックデ一夕との EX— ORがとら れて、 元のブロックデータが復号される。 このように、 CB C方式では, 前のブロックデータと連鎖させながら暗号化されるため、 暗号強度を上 げることができる。 このように、 光ディスクにコンテンツのデータを記録する際に、 CB C方式で暗号化を行うと、 暗号強度が上げられ、 より、 強力に、 著作権 の保護を図ることができる。 ところが、 CB C方式では、 前のブロック データと連鎖させながら暗号化していくため、 暗号化を行う際の最初の ブロックでは、 直前の暗号化ブロックがないため、 初期値を用意する必 要がある。 このように CB C方式で暗号化を行う際の初期値としては、 固定値を使うことが最も簡単である。 ところが、 CB C方式の暗号化を 行う際の初期値として固定値を用いたのでは、 秘匿性に問題があり、 高 い暗号強度が維持できない。 また、 初期値として固定値を用意するため には、 この初期値となる固定値をどこかにストアしておく必要が生じる そこで、 暗号化のブロックには含まれていない他の領域のデータから 初期値を作ることが考えられる。 例えば、 エラー訂正のための E C C
(Error Correcting Code ) や媒体情報が含まれている。 これらのデー 夕は、 著作権を有するようなデータそのものではないので、 保護する必 要はなく、 通常、 暗号化のブロックには含められない。 そこで、 EC C や媒体情報のような、 他の領域のデータから初期値を作ることが考えら れる。
つまり、 第 2 5図は、 ECCや媒体情報のような他の領域のデータか ら、 C B C方式で暗号化を行う際の初期値を作るようにした例である。 第 2 5図に示すように、 入力ブロックデータ Di を 0〜2 5 5までの 2 5 6個のブロックデータとし、 1ブロックは 8バイト (64ビット) と する。
最初に、 初期値 i n Vとして、 他の領域からのデータが入力され、 E X— ORゲート 5 0 1で、 入力ブロックデータ DO と初期値 i n Vとの EX— ORがとられ、 これがブロック暗号化回路 5 0 2で鍵情報 Kによ り喑号化されて、 暗号化プロックデータ EDO が生成される。 次に、 EX— ORゲート 5 0 1で、 入力ブロックデータ Dl と、 その 前の暗号化ブロックデータ EDO との EX— ORがとられ、 これがプロ ック暗号化回路 1 0 2で鍵情報 Kにより暗号化されて、 暗号化ブロック データ ED1 が生成される。
以下、 入力ブロックデータ Di と、 その前の暗号化ブロックデータ E D i-1 との EX— ORがとられ、 これがブロック暗号化回路 5 02で鍵 情報 Kにより暗号化されて、 暗号化プロックデータ E D iが生成される このように、 初期値 i nVをブロックのデータ以外、 例えば、 ECC や媒体情報から作るようにすれば、 初期値が固定値とならないため、 秘 匿性が上がる。
ところが、 このように、 初期値 i nVをブロックのデータ以外、 例え ば、 EC Cや媒体情報から作るようにすると、 コンテンツデータ以外の データが暗号化のために必ず必要になる。 このため、 コンテンツデータ のみを暗号化してデータ伝送することができなくなり、 コンテンッのデ 一夕を伝送する際には、 必ず、 E.C Cや媒体情報を一緒に送る必要が生 じてくる。
また、 CB C方式で暗号化を行う際の初期値を発生するための他の方 法として、 初期値を乱数により発生させることが考えられる。
つまり、 第 26図に示すように、 最初に、 乱数により発生された値が 初期値としてブロックデータ DO に入れられる。
この初期値の入ったブロックデータ DO は、 ブロック暗号化回路 5 1 2で鍵情報 Kにより暗号化されて、 暗号化ブロックデータ ED1 が生成 される。
次に、 EX— ORゲート 5 1 1で、 入力ブロックデータ D1 と、 その 前の暗号化ブロックデータ EDO との EX— ORがとられ、 これがブロ ック暗号化回路 5 1 2で鍵情報 Kにより暗号化されて、 暗号化ブロック データ E D I が生成される。
以下、 入力ブロックデ一夕 D i と、 その前の暗号化ブロックデータ E D i -1 との E X— O Rがとられ、 これがブロック暗号化回路 5 1 2で鍵 情報 Kにより暗号化されて、 暗号化ブロックデータ E D iが生成される, しかしながら、 このように、 乱数により初期値を発生させると、 プロ ックデータ D O には乱数により発生された初期値が入ることになり、 ブ ロックデータ D Oには、 コンテンツデータが入れられなくなる。 したが つて、 1セクタの 0〜2 5 5までの 2 5 6ブロック (2 0 4 8バイト) のうちの 2 0 4 0バイトにしかコンテンツデータを入れることができな くなり、 データ領域が有効に利用できないという問題が生じてくる。
また、 初期値を乱数により発生させるようにするためには、 乱数発生 回路が必要になる。 秘匿性を高めるためには、 乱数としてランダムな符 号を発生できるものが必要であり、 このような乱数発生回路を設けると 回路規模が増大するという問題が生じてくる。
したがって、 この発明の目的は、 連鎖的な暗号化を行う場合に、 初期 値のための特別な領域のデータや乱数が不要であり、 しかも、 秘匿性が 高い暗号化装置及び方法、 復号装置及び方法、 並びに記憶媒体を提供す ることにある。
この発明の他の目的は、 連鎖的な暗号化を行う場合に、 データ領域が 有効に利用できる暗号化装置及び方法、 復号装置及び方法、 並びに記憶 媒体を提供することにある。 発明の開示
この発明は、 コンテンッデータの第 1の部分のデータに応じて初期値 を生成する生成手段と、 生成された初期値に応じてコンテンツデータの 第 2の部分のデータを暗号化し、 暗号化データを出力すると共に、 当該 出力される暗号化データに応じて、 コンテンツデータの第 1及び第 2の 部分のデータとは異なる部分のデータを連鎖的に暗号化する暗号手段と を備えるようにした暗号化装置である。
この発明は、 コンテンツデータの第 1の部分のデータに応じて初期値 を生成し、 生成された初期値に応じてコンテンツデータの第 2の部分の データを暗号化し、 暗号化データを出力すると共に、 当該出力される喑 号化データに応じて、 コンテンツデ一夕の第 1及び第 2の部分のデータ とは異なる部分のデータを連鎖的に暗号化するようにした暗号化方法で ある。
この発明は、 暗号化されたコンテンツデータの第 1の部分のデータで ある初期値に基づいて、 暗号化されたコンテンツデータの第 2の部分の データを復号し復号データを出力すると共に、 第 1及び第 2の部分のデ 一夕とは異なる部分のデータを、 暗号化されたコンテンツデータの第 2 の部分のデータに基づいて連鎖的に復号する手段と、 暗号化されたコン テンッデータの第 1の部分のデータから第 1の部分のデータを生成する 生成手段とを備えるようにした復号装置である。
この発明は、 暗号化されたコンテンツデータの第 1の部分のデータで ある初期値に基づいて、 暗号化されたコンテンツデータの第 2の部分の データを復号し復号データを出力し、 第 1及び第 2の部分のデータとは 異なる部分のデータを、 暗号化されたコンテンツデータの第 2の部分の データに基づいて連鎖的に復号し、 暗号化されたコンテンツデータの第 1の部分のデータから第 1の部分のデータを生成するようにした復号方 法である。
この発明は、 コンテンツデータの第 1の部分のデータに応じて初期値 を生成し、 生成された初期値に応じてコンテンツデータの第 2の部分の データを暗号化し、 暗号化データを出力すると共に、 当該出力される暗 号化データに応じて、 コンテンッデータの第 1及び第 2の部分のデータ とは異なる部分のデ一タを連鎖的に暗号化して、 コンテンツのデータを 記憶するようにした記憶媒体である。
この発明は、 コンテンツデータのストリームの所定の部分のデータに 応じて初期値を生成する生成手段と、 生成された初期値に応じてコンテ ンッデ—夕を暗号化し、 暗号化データを出力すると共に、 当該出力され る暗号化デ一夕に応じて、 コンテンツデー夕とは異なる部分のデータを 連鎖的に暗号化する暗号手段とを備えるようにした暗号化装置である。
この発明は、 コンテンッデータのストリームの所定の部分のデータに 応じて初期値を生成し、 生成された初期値に応じてコンテンツデータを 暗号化し、 暗号化データを出力すると共に、 当該出力される暗号化デー 夕に応じて、 コンテンツデータとは異なる部分のデータを連鎖的に暗号 化するようにした暗号化方法である。
この発明は、 コンテンッデータのストリ一ムの所定の部分のデータに 応じて初期値を生成する生成手段と、 初期値に基づいて、 暗号化された コンテンツデ一夕の第 1の部分のデータを復号し復号データを出力する と共に、 暗号化されたコンテンツデ一夕の第 1の部分のデータとは異な る第 2の部分のデ一夕を、 暗号化されたコンテンツデータの第 1の部分 のデータに基づいて連鎖的に復号する復号手段とを備える復号装置であ る。
この発明は、 コンテンッデータのストリームの所定の部分のデータに 応じて初期値を生成し、 初期値に基づいて、 暗号化されたコンテンツデ 一夕の第 1の部分を復号し復号デ一夕を出力し、 暗号化されたコンテン ッデータの第 1の部分のデータとは異なる第 2の部分のデータを、 暗号 化されたコンテンツデ一夕の第 1の部分のデータに基づいて連鎖的に復 号するようにした復号方法である。 この発明は、 コンテンッデータのストリームの所定の部分のデータに 応じて初期値を生成し、 生成された初期値に応じてコンテンツデータを 暗号化し、 暗号化データを出力すると共に、 当該出力される暗号化デー 夕に応じて、 コンテンツデータとは異なる部分のデータを連鎖的に暗号 化して、 コンテンツのデータを記憶するようにした記憶媒体である。 コンテンッのデータがブロック化され、 鎖状に連鎖して暗号化される そして、 このときの初期値を、 そのセクタのコンテンツデ一夕そのもの から生成している。 このため、 初期値を乱数等で発生する必要がなく、 データ領域のロスがない。 また、 コンテンツデータはランダ厶に変化し ているため、 秘匿性が高い。 更に、 乱数発生器等を容易する必要がなく 回路規模が増大しない。
また、 コンテンッデータから生成される初期値自体が他のコンテンツ データで暗号化される。 更に、 初期値として使うコンテンツデータを自 由に選ぶことができる。 これにより、 秘匿性が向上される。
さらに、 M P E Gストリームを記録する場合には、 ヘッダに含まれる ユニークな情報を使って、 初期値を生成している。 ヘッダの情報はュニ ークであり、 S C Rや P T Sのような時間情報は、 時間と共に変化する ため、 秘匿性が高い。 また、 M P E Gストリームのヘッダの情報を使つ て暗号化の初期値を形成しているので、 M P E Gストリームを保ったま ま、 伝送することができる。 さらに、 乱数発生器等を容易する必要がな く、 回路規模が増大しない。 図面の簡単な説明
第 1図はこの発明が適用された光ディスクの一例の略線図、 第 2図は この発明が適用された記録装置の一例のブロック図、 第 3図はこの発明 が適用された再生装置の一例のブロック図、 第 4図はセクタの構成を示 す略線図、 第 5図はプロックの構成を示す略線図、 第 6図はこの発明が 適用された暗号化処理の説明に用いるプロック図、 第 7図はこの発明が 適用された暗号化処理の説明に用いるブロック図、 第 8図はこの発明が 適用された復号処理の説明に用いるブロック図、 第 9図はこの発明が適 用された復号処理の説明に用いるブロック図、 第 1 0図、 第 1 1図、 第 1 2図、 第 1 3図、 第 1 4図、 第 1 5図、 及び第 1 6図はこの発明が適 用された暗号化処理の説明に用いるフローチャート、 第 1 7図は M P E Gストリ一ムを記録する場合の説明に用いる略線図、 第 1 8図は M P E Gストリ一ムを記録する場合の説明に用いる略線図、 第 1 9図は M P E Gストリームを記録する場合のブロックの構成を示す略線図、 第 2 0図 はこの発明が適用された暗号化処理の説明に用いるブロック図、 第 2 1 図 A及び第 2 1図 Bはこの発明が適用された暗号化処理の説明に用いる ブロック図、 第 2 2図はこの発明が適用された暗号化処理の説明に用い るブロック図、 第 2 3図はこの発明が適用された暗号化処理の説明に用 いるブロック図、 第 2 4図はこの発明が適用された復号処理の説明に用 いるブロック図、 第 2 5図は従来の暗号化処理の説明に用いるブロック 図、 第 2 6図は従来の暗号化処理の説明に用いるブロック図である。 発明を実施するための最良の形態
以下、 この発明の実施の形態について図面を参照して説明する。 この 発明は、 例えば、 C D (Compac t Di sc) 2にコンテンツデータを記録/ 再生する際に、 データの保護を図るために、 コンテンツのデータを暗号 化するのに用いて好適である。
第 1図は、 この発明が適用できる C D 2の外観の構成を示すものであ る。 C D 2は、 通常の C Dと同様に、 例えば直径 1 2 0 mmの光デイス クである。 ただし、 所謂シングル C Dのように、 直径 8 0脑としても良 い。
CD 2は、 既存の CDプレーヤと、 パーソナルコンピュータとの双方 との親和性を考慮して開発されている。 このような CD 2は、 第 1図に 示すように、 その中心にセンターホールが設けられ、 内周側に領域 AR 1が設けられ、 さらにその外周に、 領域 AR 2が設けられる。 内周側の 領域 AR 1と、 外周側の領域 AR 2との間には、 ミラー部 M lが設けら れ、 このミラー部 M lにより、 内周側の領域 A R 1と外周側の領域 A R 2とが区切られている。 内周側の領域 AR 1の最内周には、 リードイン 領域 L I N 1が設けられ、 その最外周には、 リードアウト領域 LOUT 1が設けられる。 外周側の領域 AR 2の最内周には、 リードイン領¾ I N 2が設けられ、 その最外周には、 リードアウト領域 LOUT 2が設 けられる。
内周側の領域 A R 1は、 既存の CDプレーヤとの親和性が図られた領 域である。 この領域 AR 1には、 通常の CDプレーヤでも再生できるよ うに、 例えば、 オーディオデータが通常の CD— D A (CD Digital Audio) と同様なフォーマットで記録されている。 また、 この内周側の 領域 AR 1は、 通常の CD— DAと同様に扱えるように、 通常、 コンテ ンッのデータに対する暗号化は行われない。 勿論、 著作権の保護を図る ために、 この内周側の領域 A R 1に記録するデータを暗号化する場合も 考えられる。 また、 この内周側の領域 AR 1に、 ビデオデ一夕や、 コン ピュー夕プログラムデータ等、 オーディォデ一夕以外のデータを記録す るようにしても良い。 また、 この内周側の領域 AR 1に、 コンテンツの データを圧縮して記録するようにしても良い
これに対して、 外周側の領域 AR 2は、 パーソナルコンピュータとの 親和性を図るようにした領域である。 この領域 AR 2には、 倍密度でデ 一夕が記録できる。 この領域 AR 2には、 例えば、 オーディオデータが 圧縮されて記録される。 圧縮方式としては、 例えば MP 3 (MPEG-1 Audio Layer-3 ) 方式が用いられており、 また、 パーソナルコンピュー 夕との親和性が図れるように、 ファイル化されている。
MP 3は、 MP EG 1で規定されている 3つのレイヤの圧縮方式の 1 つであり、 各帯域の出力を MDCT (Modified Discrete Cosine
Transform) で周波数軸に分割し、 量子化した後、 ハフマン符号化する ようにしたものである。 オーディオデータを MP 3方式で圧縮すること で、 記録容量を拡大できると共に、 パーソナルコンピュータと同様のフ アイルシステムでデータを极うことができる。 このため、 外周側の領域 AR 2に MP 3方式でファイル化されて記録されているコンテンツのデ 一夕を、 パーソナルコンピュータのハードディスクに移動させて、 パー ソナルコンピュータに音楽サーバを構築したり、 フラッシュメモリが装 着される携帯型の MP 3再生プレーヤに移動させて、 外で音楽再生を楽 しんだりすることが容易になる。
このように、 外周側の領域 AR 2に記録されているコンテンツのデー 夕は、 パーソナルコンピュータとの親和性が図られ、 取り扱いが容易で ある。 ところが、 この外周側の領域 A R 2に記録されているコンテンツ のデータは、 外部に持ち出されることが多くなるため、 著作権の保護が 守られなくなる可能性が高い。 このため、 外周側の領域 AR 2に記録さ れるコンテンツのデータには、 コピーや再生を制限するために、 暗号化 処理が施されるとともに、 この外周側の領域 A R 2には、 例えば、 コピ 一禁止/許可、 コピーの世代管理、 コピーの個数制限、 再生禁止/許可. 再生回数の制限、 再生時間の制限等を管理するための著作権管理情報が 記録される。
なお、 ここでは、 領域 AR 2に記録するデ一タを MP 3でファイル化 しているが、 勿論、 領域 AR 2に記録されるコンテンツのデータは、 M P 3のファイルに限られるものではない。 オーディォデータの圧縮方式 としては、 MP 3の他に、 MP EG 2—AAC (Advanced Audio Coding ) 、 AT AC (Adaptive TRansform Acoustic Coding) 3等 が知られている。 また、 オーディオデータに限らず、 ビデオデータゃ静 止画データ、 テキストデータ、 コンピュータプログラム等、 様々なデー 夕を領域 AR 2に記録することが可能である。 また、 領域 AR 2に記録 するコンテンツのデータであっても、 暗号化する必要がなければ、 暗号 化せずに記録しても良い、
このように、 CD 2は、 内周側の領域 A R 1を使って、 通常の CDと 同様に CDプレーヤで再生することができ、 外周側の領域 A R 2を使う ことで、 パーソナルコンピュータや携帯型のプレーヤと連携させながら データを扱うことができる。
この発明は、 このような C D 2において、 特に、 外周側の領域 A R 2 に、 コンテンッのデ一夕を暗号化して記録/再生するのに用いて好適で ある。
第 2図は、 この発明が適用された記録装置の一例である。 第 2図にお いて、 入力端子 1にコンテンツデータが供給される。 コンテンツデータ は、 例えば、 オーディオデータである。 オーディオデータとしては、 P CMデータでも良いし、 MP 3等のストリームであっても良い。 また、 オーディオデータの他、 動画データ、 静止画データ、 ゲームのプロダラ ムデ一夕、 ウェブページのデータ、 テキスト等、 種々のものをコンテン ッデータとして記録することが考えられる。 この入力端子 1からのコン テンッデータは、 暗号化回路 4に供給される。
また、 入力端子 2に鍵情報 Kが供給される。 入力端子 2からの鍵情報 Kが暗号化回路 4に供給される。
暗号化回路 4は、 入力端子 1からのコンテンツデータを、 入力端子 2 からの鍵情報 Kを用いて暗号化するものである。 暗号化方式としては、 ブロック暗号が用いられる。 ブロック暗号は、 例えば、 8バイ トずつを 単位として暗号化を行っており、 暗号化回路 4はブロック化回路を備え ている。 この例では、 ブロック単位で暗号化したデータを連鎖させてい くことで、 暗号化強度を上げるようにしている。 このように、 ブロック 単位で暗号化したデータを連鎖させていくようなものは、 C B C
(C ipher i ng B l ock Cha ining ) 方式として知られている。
暗号化回路 4の出力がエラー訂正符号化回路 5に供給される。 エラー 訂正符号化回路 5で、 暗号化回路 4で暗号化されたコンテンツデータに 対して、 エラー訂正符号が付加される。
エラ一訂正符号化回路 5の出力は、 変調回路 6に供給される。 変調回 路 6で、 記録データが所定の変調方式で変調される。 変調回路 6の出力 が記録回路 7に供給される。
記録回路 7の出力が光学ピックアップ 8に供給される。 記録回路 7は. システムコントローラ 1 3により制御される。 光学ピックァップ 8によ り、 光ディスク 1 0に、 データが記録される。 光ディスク 1 0は、 例え ば、 C D 2の光ディスクである。
光学ピックアップ 8は、 光ディスク 1 0の半径方向に移動可能とされ ている。 また、 図示していないが、 光学ピックアップ 8からのレーザー 光を光ディスク 1 0のトラックに沿って照射するためのトラッキングサ —ポ回路や、 光学ピックアップ 8からのレーザー光のスポットを光ディ スク 1 0上に合焦させるためのフォ一カスサーポ回路、 光ディスク 1 0 の回転を制御するスピンドルサ一ポ回路等、 各種のサーポ回路が設けら れている。
また、 入力端子 2からの鍵情報 Kがミックス回路 9に供給される。 入 力端子 3に著作権管理情報 Rが供給され、 この著作権管理情報 Rが書き 換え回路 1 1を介して、 ミックス回路 9供給される。'ミックス回路 9の 出力が記録回路 1 2を介して光学ピックアップ 8に供給される。 光学ピ ックアップ 8により、 記録回路 1 2により、 光ディスク 1 0に鍵情報 K や著作権管理情報 Rが記録される。
著作権管理情報 Rは、 例えば、 コピー禁止 許可、 コピーの世代管理、 コピーの個数制限、 再生禁止 Z許可、 再生回数の制限、 再生時間の制限 等を管理するための情報である。 コピーの世代管理やコピーの個数制限, 再生回数の制限や再生時間の制限を行う場合には、 コピーや再生が行わ れる毎に、 著作権管理情報 Rを書き換える必要がある。 この著作権管理 情報 Rの書き換えは、 書き換え回路 1 1により行われる。
また、 鍵情報 Kや著作権管理情報 Rの記録場所については、 光デイス ク 1 0のリードィンゃリードァゥト領域に記録したり、 トラックの半径 方向にゥォブルデ一夕として記録したりすることが考えられる。
第 3図は、 再生系の構成を示すものである。 第 3図において、 光ディ スク 2 0の記録信号は、 光学ピックアップ 2 2で再生される。 光デイス ク 2 0は、 第 2図における光ディスク 1 0と対応しており、 光ディスク 2 0としては、 例えば、 C D 2が用いられる。 光学ピックアップ 2 2の 出力が再生アンプ 2 3を介して、 復調回路 2 4に供給される。 光学ピッ クアップ 2 2の動きは、 システムコントローラ 2 9の制御の基に、 ァク セス制御回路 3 0により制御される。 アクセス制御回路 3 0は、 光学ピ ックアツプの送り機構、 光学ピックアップ 2 2からのレーザー光を光デ イスク 2 0のトラックに沿って照射するためのトラッキングサーポ回路 や、 光学ピックアップ 2 2からのレーザー光のスポットを光ディスク 2 0上に合焦させるためのフォーカスサ一ポ回路等のサーポ回路からなる c 復調回路 2 4の出力がエラ一訂正回路 2 5に供給される。 エラー訂正 回路 2 5で、 エラ一訂正処理がなされる。 エラー訂正回路 2 5の出力が 暗号解読回路 2 6に供給されると共に、 鍵管理情報読出回路 2 7に供給 される。 鍵管理情報読出回路 2 7の出力が暗号解読回路 2 6に供給され る。
暗号解読回路 26は、 鍵管理情報読出回路 2 7で読み出された鍵情報 Kを使って、 再生データの暗号解読の処理を行うものである。 前述した ように、 この例では、 暗号化方式として、 CB C方式が使われている。 暗号解読回路 26は、 このような CB C方式の暗号の解読処理を行うも のである。
暗号解読回路 2 6の出力が再生回路 2 8に供給される。 再生回路 2 8 の出力が出力端子 3 1から出力される。 また、 鍵管理情報読出回路 2 7 で読み出された著作権管理情報 Rにより、 コピーや再生が制限される。 上述のように、 この例では、 暗号化方式として、 C B C方式が使われ ている。 すなわち、 記録系においては、 暗号化回路 4で、 入力されたコ ンテンッデータに対して、 CBC方式により、 暗号化処理が行われる。 そして、 再生系においては、 暗号解読回路 26により、 再生されたコン テンッデータに対して、 暗号解読処理が行われる。
なお、 ブロック喑号は、 DE Sや AE S、 F EAL、 M I S TY等、 何を用いても良い。
C B C方式では、 ブロック単位で暗号化したデータを連鎖させること で、 暗号の強度が上げられる。 この例では、 第 4図に示すように、 20 48バイトが 1セクタとされ、 このセクタを単位として、 光ディスク 1 0、 2 0へのデータの記録/再生が行われる。
つまり、 CDでは、 98フレームからなるサブコードプロックが 1セ クタとされている。 この 1セクタの領域の大きさは 2 3 5 2バイ トであ り、 そのうち、 2 048バイ卜がデータ領域となっている。
例えば、 D E S方式で暗号化する場合には、 64ビットを 1ブロック として処理され、 5 6ビットの鍵が用いられる。 このため、 第 5図に示 すように、 1セクタは、 8バイト (6 4ビット) 単位で、 2 5 6のブロ ックに分割される。
そして、 各セクタ内において、 前ブロックと連鎖させながら、 C B C 方式により、 暗号化処理が行われる。
すなわち、 C B C方式では、 今回のブロックデータと、 その 1つ前の ブロックデー夕を暗号化したデータとの E X— O Rがとられ、 これが喑 号化される。 1つのセクタ内で C B C方式により暗号化処理が終了した ら、 次のセクタで、 また、 同様に、 C B C方式により暗号化処理が行わ れる。
このように、 この例では、 C B C方式を用いることにより、 暗号の強 度が上げられる。 そして、 各セクタで C B C方式で暗号化が行われてい る。 このため、 エラーの発生等によりデータの再生が不可能になったよ うな場合でも、 その影響がそのセクタ内で完結し、 他のセクタにおよぶ ことがなくなる。
そして、 この発明の実施の形態では、 初期値として、 同一セクタ内の ブロックのデータが利用される。 このように、 同一のセクタ内のブロッ クのデ一夕を初期値として使うことで、 データ領域のロスがなくなる。 また、 音楽デ一夕や画像データのようなコンテンツデータの場合には、 それ自体の値がランダムに変化している。 このため、 コンテンツのデー 夕を利用すると、 初期値の秘匿性も高い。
初期値として同一セクタ内のブロックのデータを利用する場合、 その データそのものでは、 秘匿性が十分でない。 そこで、 同一のセクタ内の プロックのデータを暗号化したものを初期値として利用することが考え られる。 更に、 この例では、 同一セクタ内の 1つのブロックデ一夕と、 そのセクタ内のそれ以外のブロックデ一夕との E X— O Rをとり、 これ を暗号化したものを初期値としている。
つまり、 第 6図及び第 7図を使って、 暗号化処理について説明する。 第 6図は、 初期値を生成するときのプロセスを示し、 第 7図は、 連鎖的 にプロック暗号を行うときのプロセスを示すものである。
暗号化処理を行う場合には、 先ず、 第 6図に示すようにして、 初期値 が生成される。
すなわち、 第 6図に示すように、 DO 〜D255 までの 1セクタ内のブ ロックデータのうちの 1つ Dj が EX— ORゲ一ト 1 0 1に送られる。 また、 同一のセクタ内のブロックデータ Dj を除くブロックデータ Di の関数 f (Di ) が EX—〇Rゲート 1 0 1に送られる。
EX— ORゲート 1 0 1で、 ブロックデ一夕 Dj と、 ブロックデータ D j 以外のブロックデータ Di の関数 f (Di ) との EX— ORが求め られる。
なお、 ブロックデータ Dj と、 ブロックデータ Dj 以外の全てのブロ ックデータ Di の関数 f (Di ) との EX— ORは、 ブロックデータ D j と、 ブロックデータ Dj 以外の全てのブロックデータ Di の関数 f
(Di ) との EX— ORでも良いし、 ブロックデータ Dj と、 ブロック データ Dj 以外の 1つのブロックデータ D i の関数 f (Di ) との EX — ORでも良いし、 ブロックデータ Di の数をいくつにしても良い。 ま た、 関数 (Di ) も、 何を用いても良い。
この EX— ORゲート 1 0 1の出力は、 ブロック暗号化回路 1 02に 送られる。 ブロック暗号化回路 1 02で、 EX— ORゲート 1 0 1の出 力が鍵情報 Kにより暗号化される。 これにより、 初期値 i n Vが求めら れる。 また、 この値は、 ブロックデータ D]' を暗号化したデータ EDj としても用いられる。
このようにして、 初期値が求められたら、 第 7図に示すように、 この 初期値を使って、 今回のブロックデータと、 その 1つ前のブロックデー 夕を暗号化したデータとの E X— O Rがとられ、 これが喑号化される。 そして、 ブロックデータ Djのときには、 初期値としても使われている データ E D j が暗号化したブロックデ一夕として使われる。
つまり、 初期値として使った入カブ口ックデータ Dj が ( j = 1〜 2 54) の何れかであるときには、 以下のようにして暗号化が行われる。 先ず、 EX— ORゲート 1 1 1で、 入カブ口ックデータ DO と、 第 6 図で求められた初期値 i nVとの EX— ORがとられ、 この EX— OR ゲート 1 1 1の出力がブロック暗号化回路 1 1 2に供給される。
ブロック暗号化回路 1 1 2で、 EX— ORゲート 1 1 1の出力と鍵情 報 Kとから、 暗号化ブロックデータ EDO が求められる。
次に、 EX— ORゲート 1 1 1で、 入力ブロックデータ D1 と、 暗号 化ブロックデータ EDO との EX— ORがとられ、 この EX— ORゲー ト 1 1 1の出力がブロック暗号化回路 1 1 2に供給され、 ブロック暗号 ィ匕回路 1 1 2で、 EX— ORゲート 1 1 1の出力と鍵情報 Kとから、 暗 号化ブロックデータ ED1 が求められる。
以下、 同様にして、 入力データ D2 、 D3 、 …から、 暗号化ブロック データ ED2 、 ED3 、 …が求められる。
入力ブロックデータ D2 、 D3 、 …を暗号化していき、 入力ブロック データが D]' になったら、 第 6図で求められた初期値 i n Vが暗号化ブ ロックデータ EDjとして出力される。
そして、 再び、 EX— ORゲート 1 1 1で、 入力ブロックデータ Di と、 暗号化ブロックデータ E Di_l との EX— ORがとられ、 この EX 一 ORゲート 1 1 1の出力がブロック暗号化回路 1 1 2に供給され、 ブ ロック暗号化回路 1 1 2で、 EX— ORゲ一ト 1 1 1の出力と鍵情報 K とから、 暗号化ブロックデータ EDi が求められる。 入力データ D255 が暗号化されて暗号化ブロックデータ ED255 が出 力されるまで、 同様の処理が繰り返される。
初期値として使った入力ブロックデータ D j が最初のブロックデータ ( j = 0) のときには、 以下のようにして暗号化が行われる。
先ず、 第 6図で求められた初期値 i nVが暗号化ブロックデータ ED 0 として出力される。
それから、 第 7図に示す EX— ORゲート 1 1 1で、 入力ブロックデ 一夕 D1 と、 暗号化ブロックデータ EDO (初期値 i n Vと等しい) と の E X— O Rゲー卜がとられ、 この EX— ORゲート 1 1 1の出力がブ ロック暗号化回路 1 1 2に供給され、 ブロック暗号化回路 1 1 2で、 E X— ORゲート 1 1 1の出力と鍵情報 Kとから、 暗号化ブロックデ一夕 ED1 が求められる。
以下、 入力データ D 255 が暗号化されて暗号化ブロックデータ ED 255 が出力されるまで、 同様の処理が繰り返され、 入力データ D2 、 D 3 、 …から、 暗号化ブロックデータ ED2 、 ED3 、 …が求められる。 初期値として使った入力ブロックデータ D ]' が最後のブロックデータ ( j = 2 5 5 ) のときには、 以下のようにして暗号化が行われる。 先ず、 第 7図に示す EX— ORゲート 1 1 1で、 入力ブロックデータ DO と、 第 6図で求められた初期値 i nVとの EX— ORがとられ、 こ の EX— ORゲ一ト 1 1 1の出力がブロック暗号化回路 1 1 2に供給さ れる。
ブロック暗号化回路 1 1 2で、 EX— ORゲート 1 1 1の出力と鍵情 報 Kとから、 暗号化ブロックデータ EDO'が求められる。
次に、 E X— ORゲ一ト 1 1 1で、 入力ブロックデータ D1 と、 暗号 化ブロックデータ EDO との EX— ORがとられ、 この EX—〇Rゲ一 ト 1 1 1の出力がブロック暗号化回路 1 1 2に供給され、 ブロック暗号 化回路 1 1 2で、 EX— ORゲート 1 1 1の出力と鍵情報 とから、 暗 号化ブロックデータ ED1 が求められる。
以下、 同様にして、 入力データ D2 、 D3 、 …から、 暗号化ブロック データ ED2 、 ED3 、 …が求められる。 入力データ D254 の暗号化ブ ロックデータ ED 254 が求められるまで、 同様の処理が繰り返される。 最後のブロックデータ D255 になったら、 第 6図で求められた初期値 i n Vが暗号化ブロックデータ ED 255 として出力される。
次に、 第 8図及び第 9図を使って、 復号処理について説明する。 第 8 図は、 連鎖的にプロック暗号を行うときのプロセスを示すものであり、 第 9図は、 初期値を暗号化したブロックデータを復号するときのプロセ スを示すものである。
初期値として使った入力ブロックデータ Dj が ( j = l〜 2 54) の 何れかであるときには、 以下のようにして復号が行われる。
先ず、 第 8図に示すように、 暗号化ブロックデータ EDO と、 鍵情報 Kとがブロック喑号復号回路 1 2 1に送られ、 ブロック暗号復号回路 1 2 1で、 暗号の復号処理が行われる。
ブロック暗号復号回路 1 2 1の出力が EX— ORゲート 1 22に送ら れる。 また、 EX— ORゲート 1 22には、 初期値 i nVが送られる。 この初期値 i n Vは、 暗号化ブロックデータ EDj である。
EX— ORゲート 1 2 2で、 ブロック喑号復号回路 1 2 1の出力と、 暗号化ブロックデータ EDj との EX— ORがとられて、 ブロックデー 夕 DO が復号される。
次に、 暗号化ブロックデータ ED1 と、 鍵情報 Kとがブロック暗号復 号回路 1 2 1に送られる。 ブロック喑号復号回路 1 2 1で暗号が復号さ れる。 ブロック暗号復号回路 1 2 1の出力が EX— ORゲート 1 22に 送られる。 また、 EX— ORゲート 1 22には、 その前の暗号化ブロックデータ EDO とが送られる。
EX— ORゲート 1 22で、 ブロック暗号復号回路 1 2 1の出力と、 その前の暗号化ブロックデータ E DO との EX— ORがとられて、 ブロ ックデ一夕 D1 が復号される。
以下、 同様にして、 暗号化ブロックデータ EDI 、 ED2 、 …力、ら、 ブロックデータ Dl 、 D2 、 …が復号されていく。
このように、 ブロックデータ D2 、 D3 、 …を復号していく間に、 復 号するブロックデータが初期値に相当する暗号化ブロックデータ E D j になったら、 第 9図に示すように、 暗号化ブロックデータ EDj と、 鍵 情報 Kとがブロック暗号復号回路 1 3 1に送られ、 ブロック喑号復号回 路 1 3 1で喑号の復号処理が行われる。
ブロック暗号復号回路 1 3 1の出力が EX— ORゲート 1 3 2に送ら れる。 また、 EX— ORゲート 1 3 2には、 ブロックデータ Dj 以外の データとの間の関数 f (Di ) が送られる。
EX— ORゲート 1 32で、 ブロック喑号復号回路 1 3 1の出力と、 ブロックデータ Dj 以外のデータとの間の関数 f (Di ) との EX—〇 Rがとられて、 ブロックデ一タ Dj が復号される。
ブロックデータ Dj が復号されたら、 第 8図に戻り、 暗号化ブロック データ EDi と、 鍵情報 Kとがブロック喑号復号回路 1 2 1に送られる, ブロック暗号復号回路 1 2 1で暗号が復号される。 ブロック喑号復号回 路 1 2 1の出力が EX— ORゲート 1 22に送られる。 また、 EX— Q Rゲ一ト 1 22には、 その前の暗号化ブロックデータ ED i- 1 が送られ る。 EX— ORゲート 1 22で、 ブロック喑号復号回路 1 2 1の出力と その前の暗号化ブロックデータ E D i- 1 との EX— ORがとられて、 ブ ロックデータ Di が復号される。 以下、 暗号化ブロックデータ ED 255 が復号されるまで、 同様な処理 が繰り返される。
初期値として使った入力ブロックデータ D j が最初のブロックデータ ( j = 0) のときには、 以下のようにして復号が行われる。
先ず、 第 9図に示すように、 暗号化ブロックデータ EDO と、 鍵情報 Kとがブロック暗号復号回路 1 3 1に送られ、 ブロック暗号復号回路 1 3 1で暗号の復号処理が行われる。
ブロック喑号復号回路 1 3 1の出力が EX— ORゲート 1 3 2に送ら れる。 また、 EX— ORゲート 1 3 2には、 ブロックデ一夕 DO 以外の データとの間の関数 f (Di ) が送られる。
EX— ORゲート 1 32で、 ブロック喑号復号回路 1 3 1の出力と、 ブロックデータ Dj 以外のデータとの関数 f (Di ) との EX— ORが とられて、 ブロックデータ DO が復号される。
ブロックデータ DO が復号されたら、 第 8図に示すように、 暗号化ブ ロックデータ ED1 と、 鍵情報 Kとがブロック暗号復号回路 1 2 1に送 られ、 ブロック暗号復号回路 1 2 1で、 暗号の復号処理が行われる。 ブロック暗号復号回路 1 2 1の出力が EX— ORゲート 1 2 2に送ら れる。 また、 EX— ORゲート 1 2 2には、 初期値 i n Vが送られる。 初期値 i n Vは、 暗号化ブロックデータ EDO である。
EX— ORゲート 1 22で、 ブロック暗号復号回路 1 2 1の出力と、 暗号化ブロックデータ EDO との EX— ORがとられて、 ブロックデ一 夕 D1 が復号される。
次に、 暗号化ブロックデータ ED2 と、 鍵情報 Kとがブロック暗号復 号回路 1 2 1に送られる。 ブロック喑号復号回路 1 2 1で暗号解読処理 が行われる。
ブロック暗号復号回路 1 2 1の出力が EX— ORゲート 1 22に送ら れる。 また、 EX— ORゲート 1 22には、 その前の暗号化ブロックデ 一夕 ED1 が送られる。
EX— ORゲート 1 2 2で、 ブロック喑号復号回路 1 2 1の出力と、 その前の暗号化ブロックデータ ED1 との EX— ORがとられて、 ブロ ックデータ D 2 が復号される。
以下、 暗号化ブロックデータ ED 255 が復号されるまで、 同様な処理 が繰り返される。
初期値として使った入力ブロックデータ D j が最後のブロックデータ ( j = 2 5 5 ) のときには、 以下のようにして復号が行われる。
先ず、 第 8図に示すように、 暗号化ブロックデータ EDO と、 鍵情報 Kとがブロック喑号復号回路 1 2 1に送られ、 プロック暗号復号回路 1 2 1で、 喑号の復号処理が行われる。
ブロック喑号復号回路 1 2 1の出力が EX— ORゲート 1 22に送ら れる。 また、 EX— ORゲート 1 22には、 初期値 i nVが送られる。 この初期値 i nVは、 暗号化ブロックデータ ED255 である。
EX— ORゲ一ト 1 22で、 ブロック暗号復号回路 1 2 1の出力と、 暗号化ブロックデ一夕 ED255 との EX— ORがとられて、 ブロックデ 一夕 DO が復号される。
次に、 暗号化ブロックデータ ED1 と、 鍵情報 Kとがブロック暗号復 号回路 1 2 1に送られる。 ブロック暗号復号回路 1 2 1で暗号が復号さ れる。 ブロック暗号復号回路 1 2 1の出力が EX— ORゲート 1 22に 送られる。
また、 EX— ORゲート 1 22には、 その前の暗号化ブロックデータ EDO が送られる。
EX— ORゲート 1 2 2で、 ブロック暗号復号回路 1 2 1の出力と、 その前の暗号化ブロックデータ EDO との EX—〇Rがとられて、 ブロ ックデ一夕 Dl が復号される。
以下、 同様にして、 暗号化ブロックデータ ED2 、 ED3 、 …から、 ブロックデータ D 2 、 D3 、 …が復号されていく。
暗号化ブロックデータ ED 254 から、 ブロックデータ D 254 が復号さ れたら、 第 9図に示すように、 暗号化ブロックデータ ED 255 と、 鍵情 報 Kとがブロック喑号復号回路 1 2 1に送られ、 ブロック暗号復号回路 1 3 1で暗号の復号処理が行われる。
ブロック暗号復号回路 1 3 1の出力が EX—〇Rゲート 1 3 2に送ら れる。 また、 EX— ORゲート 1 32には、 ブロックデータ Dj 以外の データとの間の関数 : f (Di ) が送られる。
EX— ORゲ一ト 1 3 2で、 ブロック暗号復号回路 1 3 1の出力と、 ブロックデータ Dj 以外のデータとの間の関数 f (Di ) との EX— O Rがとられて、 ブロックデータ D255 が復号される。
なお、 上述の例では、 連鎖も初期値も鍵情報も、 全て、 64ビットで 処理しているが、 1 2 8ビットでも、 2 5 6ビットでも良い。
第 1 0図〜第 1 2図は、 上述のように、 データを暗号化して記録する ときの処理を示すフロ一チャートである。 この処理では、 例えば 2 04 8バイ 卜からなる 1セクタが C B Cにより暗号化される。 1セクタは、 8バイ ト ( 64ビット) 毎の 2 5 6のブロックに分割される。
第 1 0図において、 先ず、 1セクタ (例えば 2 048バイ ト) に相当 するブロックデータ DO 〜!)255 のうちの 1つのブロックデータ Dj が 読み出される (ステップ S 1 ) 。 そして、 ブロックデータ Di の関数 f (Di ) との EX— ORが鍵情報 Kにより暗号化されて、 初期値 i nV が生成される (ステップ S 2) 。 この初期値 i nVが保存される (ステ ップ S 3 ) 。
そして、 初期値を作るのに用いたブロックデータ Dj が最初のブロッ クデータ ( j = 0) か否かが判断される (ステップ S 4) 。
( j = 0 ) なら、 初期値 i nVが読み出され (ステップ S 5 ) 、 この 初期値 i n Vがブロックデ一夕 DO の暗号化ブロックデータ EDO とさ れる (ステップ S 6) 。 求められた暗号化ブロックデータ EDO が保存 される (ステップ S 7 ) 。
ブロックデータの番号 iが ( i = l ) に初期化される (ステップ S 8) 。 初期値 i n Vが読み出され (暗号化ブロックデータ DO と等し レ (ステップ S 9) 、 ブロックデータ D1 が読み出される (ステップ S 1 0) 。 初期値 i n Vとブロックデータ D1 との EX— ORが鍵情報 Kで暗号化され、 ブロックデータ D1 の暗号化ブロックデータ ED1 が 生成される (ステップ S 1 1) 。 この暗号化ブロックデータ EDi が保 存される (ステップ S 1 2) 。 そして、 ブロックデータの番号 iが ( i = 2) にィンクリメントされる (ステツプ S 1 3) 。
ブロックデータの番号 iがィンクリメントされたら、 暗号化ブロック データ EDi_l が読み出され( ステップ S 1 4) 、 ブロックデータ Di が読み出される (ステップ S 1 5) 。 暗号化ブロックデータ EDi- 1 と ブロックデータ Di との EX— ORが鍵情報 Kで暗号化され、 ブロック データ Di の暗号化ブロックデータ EDi が生成される (ステップ S 1 6) 。 この暗号化プロックデ一タ EDi が保存される (ステップ S 1 7 ) 。 そして、 ブロックデータの番号 iがインクリメントされる (ステ ップ S 1 8 ) 。
ブロック番号 iが 「 2 5 6」 に達したか否かが判断され (ステップ S 1 9) 、 プロック番号 iが 「 2 5 6」 に達していなければ、 ステップ S 1 4にリターンされる。 そして、 ブロック番号 iが 「 2 5 6」 に達する まで、 同様の処理が繰り返され、 暗号化ブロックデータ EDi が求めら れていき、 ブロック番号 iが 「 2 5 6」 に達してブロックデ一夕 D255 まで求められたら処理が終了される。
ステップ S 4で、 初期値を作るのに用いたブロックデータ Dj が最初 のプロックデータ ( j = 0) でなければ、 第 1 1図に示すように、 初期 値を作るのに用いたブロックデータ Dj が最後のブロックデータ (j = 2 5 5 ) か否かが判断される (ステップ S 2 0) 。
( j = 2 5 5 ) なら、 ブロック番号 iが ( i = 0) に初期化される (ステップ S 2 1) 。 そして、 ステップ S 2で求められた初期値 i n V が読み出され (ステップ S 2 2) 、 ブロックデ一夕 DO が読み出される (ステップ S 2 3) 。 初期値 i nVとブロックデータ DO との EX—〇 Rが鍵情報 Kで暗号化され、 ブロックデータ DO の暗号化ブロックデ一 夕 EDO が生成される (ステップ S 24) 。 この暗号化ブロックデータ EDO が保存される (ステップ S 2 5) 。 そして、 ブロックデータの番 号 iが ( i = l) にインクリメントされる (ステップ S 2 6) 。
ブロックデータの番号 iがィンクリメントされたら、 暗号化ブロック データ EDi- 1 が読み出され( ステップ S 2 7 ) 、 ブロックデータ Di が読み出される (ステップ S 28) 。 暗号化ブロックデータ ED i-1 と ブロックデータ Di との EX— ORが鍵情報 Kで暗号化され、 ブロック データ Di の暗号化ブロックデータ ED i が生成される (ステップ S 2 9) 。 この暗号化ブロックデータ EDi が保存される (ステップ S 3 0 ) 。 そして、 ブロックデータの番号 iがインクリメントされる (ステ ップ S 3 1 ) 。
ブロック番号 iが 「 2 5 5」 に達したか否かが判断され (ステップ S 3 2) 、 ブロック番号 iが 「 2 5 5」 に達していなければ、 ステップ S 2 7にリターンされる。 そして、 ブロック番号 iが 「 2 5 5」 に達する まで、 同様の処理が繰り返され、 暗号化ブロックデータ EDi が求めら れていく。 ブロック番号が 「 2 5 5」 になったら、 ステップ S 2で求められた初 期値 i n Vが読み出される (ステップ S 33) 。 そして、 この初期値 i n Vが暗号化ブロックデータ ED255 とされて (ステップ S 34) 、 保 存され (ステップ S 3 5) 、 処理が終了される。
ステップ S 4で初期値を作るのに用いたブロックデータ Dj が最初の ブロックデータ (j = 0) ではないと判断され、 ステップ S 2 0で、 最 後のブロックデータ (j = 2 5 5 ) でもないと判断されたら、 第 1 2図 に示すように、 ブロックデータの番号 iが ( i = 0) に初期化される (ステップ S 3 6) 。 ステップ S 2で求められた初期値 i nVが読み出 され (ステップ S 3 7) 、 ブロックデータ DO が読み出される (ステツ プ S 3 8) 。 初期値 i nVとブロックデータ DO との EX— ORが鍵情 報 Kで暗号化され、 ブロックデータ DO の暗号化ブロックデータ EDO が生成される (ステップ S 3 9) 。 この暗号化ブロックデータ E DO が 保存される (ステップ S 40) 。 そして、 ブロックデータの番号 iが ( i = 1 ) にインクリメントされる (ステップ S 4 1 )
ブロックデータの番号 iがインクリメントされたら、 今回のブロック 番号 iは初期値を作るのに用いる所の番号 j ( j = i ) であるか否かが 判断される (ステップ S 42) (j i ) でなければ、 暗号化ブロッ クデータ EDi- 1 が読み出され( ステップ S 43) 、 ブロックデータ D i が読み出される (ステップ S 44) 。 暗号化ブロックデータ EDi - 1 とブロックデータ Di との EX— ORが鍵情報 Kで暗号化され、 ブロッ クデータ Di の暗号化ブロックデータ EDi が生成される (ステップ S 4 5) 。 この暗号化ブロックデ一夕 EDi が保存される (ステップ S 4 6) 。 そして、 ブロックデータの番号 iがインクリメントされる (ステ ップ S 47 )
ブロック番号 iが 「 2 5 6」 に達したか否かが判断され (ステップ S 48) 、 ブロック番号 iが 「 2 5 6」 に達していなければ、 ステップ S 42にリターンされる。
ステップ S 42で、 (j = i ) であると判断されたら、 ステップ S 2 で求められた初期値 i nVが読み出され (ステップ S 49) 、 この初期 値 i n Vがブロックデータ D j の暗号化ブロックデータ EDj とされる (ステップ S 5 0) 。 この暗号化ブロックデータ EDj が保存される (ステップ S 5 1) 。 そして、 ステップ S 47に進む。
そして、 ブロック番号 iが 「 2 5 6」 に達するまで、 同様の処理が繰 り返される。 ブロック番号 iが 「 2 5 6」 に達し、 ブロックデータ D 255 までの暗号化ブロックデータが求められたら、 処理が終了される。 次に、 喑号を復号するときの処理について説明する。 第 1 3図〜第 1 6図は、 喑号を復号する場合の処理を示すフローチャートである。
第 1 3図〜第 1 6図において、 初期値として用いたブロック番号 jが ( j = 0) か否かが判断される (ステップ S 1 0 1) 。
( j = 0 ) のときには、 暗号化ブロックデータ EDO が読み出される (ステップ S 1 0 2) 。 この暗号化ブロックデータ EDO が鍵情報 で 復号され、 この復号値と関数 f (Di ) との EX— ORにより、 ブロッ クデ一夕 DO が生成される (ステップ S 1 0 3) 。 このブロックデータ DO が保存される (ステップ S 1 04) 。
ブロック番号 iが ( i = 1 ) に初期化される (ステップ S 1 0 5 ) 。 暗号化ブロックデータ ED1 が読み出される (ステップ S 1 0 6) 。 そ して、 暗号化ブロックデータ EDO が読み出される (ステップ S 1 0 7 ) 。 暗号化ブロックデータ EDO が初期値 i n Vとされる (ステップ S 1 0 8 ) 。
暗号化ブロックデータ ED1 が鍵情報 Kで復号され、 この復号値と初 期値 i nV (暗号化ブロックデータ EDO と等しい) との EX— ORが とられて、 ブロックデータ Dl が生成される (ステップ S 1 0 9) 。 生 成されたブロックデータ D1 が保存される (ステップ S 1 1 0) 。 そし て、 ブロック番号 iが ( i = 2) にインクリメントされる (ステップ S 1 1 1 ) o
暗号化ブロックデータ EDi が読み出される (ステップ S 1 1 2) 。 暗号化ブロックデータ EDi-1 が読み出される (ステップ S 1 1 3) 。 暗号化ブロックデータ EDi が鍵情報 Kで復号され、 この復号値と暗号 化ブロックデータ EDi-1との EX—〇Rがとられて、 ブロックデー夕 D i が生成される (ステップ S 1 14) 。 このブロックデータ Di が保 存される (ステツプ S 1 1 5 ) 。 そして、 ブロック番号 iがィンクリメ ントされる (ステップ S 1 1 6) 。
ブロック番号 iが 「 2 5 6」 に達したか否かが判断され (ステップ S 1 1 7) , ブロック番号 iが 「 2 5 6」 に達していなければ、 ステップ S 1 1 2にリターンされる。 プロック番号 iが 「 2 5 6」 に達するまで. 同様の処理が繰り返される。 ブロック番号 iが 「 2 5 6」 に達し、 プロ ックデータ D255 まで復号されたら、 処理が終了される。
ステップ S 1 0 1で、 初期値として用いたブロック番号 jが ( j = 0) ではないと判断されたら、 第 14図に示すように、 初期値として用 いたブロック番号 jが (j = 2 5 5 ) か否かが判断される (ステップ S 1 1 8) 。
( j = 2 5 5 ) なら、 ブロック番号 iが ( i = 0) に初期化される (ステップ S 1 1 9) 。 暗号化ブロックデ一夕 EDO が読み出される (ステップ S 1 2 0) 。 暗号化ブロックデータ ED 255 が読み出される (ステップ S 1 2 1 ) 。 暗号化ブロックデータ ED 255 が初期値 i n V とされる (ステップ S 1 2 2 ) 。
暗号化ブロックデータ EDO が鍵情報 Kで復号され、 この復号値と初 期値 i nVとの EX— ORがとられて、 プロックデータ DO が生成され る (ステップ S 1 23) 。 生成されたブロックデータ DO が保存される (ステップ S 1 24 ) 。 そして、 ブロック番号 iが ( i = 1 ) にインク リメントされる (ステップ S 1 2 5) 。
暗号化ブロックデータ EDi が読み出される (ステップ S 1 2 6) 。 暗号化ブロックデータ EDi-1 が読み出される (ステップ S 1 2 7) 。 暗号化ブロックデータ EDi が鍵情報 Kで復号され、 この復号値と暗号 ィ匕ブロックデー夕 EDi-1との EX— ORがとられて、 ブロックデ一夕 D i が生成される (ステップ S 1 28) 。 このブロックデータ Di が保 存される (ステップ S 1 2 9) 。 そして、 ブロック番号 iがインクリメ ントされる (ステップ S 1 3 0 ) 。
ブロック番号 iが 「 2 5 5」 に達したか否かが判断され (ステップ S 1 3 1) , ブロック番号 iが 「 2 5 5」 に達していなければ、 ステップ S 1 2 6にリターンされる。 ブロック番号 iが 「 2 5 5」 に達するまで. 同様の処理が繰り返される。
ブロック番号 iが 「 2 5 5」 に達し、 ブロックデ一夕 D254 までの処 理が完了したら、 暗号化ブロックデータ ED 255 が読み出される (ステ ップ S 1 3 2) 。 この暗号化ブロックデータ ED 255 が鍵情報 Kで復号 され、 この復号値と関数 f (Di ) との EX— ORにより、 ブロックデ 一夕 D255 が生成される (ステップ S 1 3 3) 。 このブロックデータ D 255 が保存されて (ステップ S 1 34) 、 処理が終了される。
ステップ S 1 0 1で、 ( j = 0 ) ではないと判断され、 ステップ S 1 1 8で、 ( j = 2 5 5 ) ではないと判断されたら、 第 1 5図に示すよう に、 ブロック番号 iが ( i = 0) に初期化される (ステップ S 1 3 5) , 暗号化ブロックデータ EDO が読み出される (ステップ S 1 3 6) 。 暗号化ブロックデータ EDj が読み出される (ステップ S 1 3 7) 。 暗 号化ブロックデータ ED j が初期値 i n Vとされる (ステップ S 1 3 8) 。
暗号化ブロックデータ EDO が鍵情報 Kで復号され、 この復号値と初 期値 i nVとの EX— ORがとられて、 ブロックデータ DO が生成され る (ステップ S 1 3 9) 。 生成されたブロックデータ DO が保存される (ステップ S 140) 。 そして、 第 1 6図に示すように、 ブロック番号 iが ( i = 1 ) にィンクリメントされる (ステップ S 14 1) 。
ブロックデ一夕の番号 iがインクリメントされたら、 今回のブロック 番号 iは初期値を作るのに用いる所の番号 j ( j = i ) であるか否かが 判断される (ステップ S 142) 。
( j = i ) でなければ、 暗号化ブロックデ一夕 EDi が読み出される (ステップ S 143) 。 暗号化ブロックデータ EDi-1 が読み出される (ステップ S 144) 。 暗号化ブロックデ一夕 EDi が鍵情報 Kで復号 され、 この復号値と暗号化ブロックデータ EDi- 1 との EX—〇Rがと られて、 ブロックデ一夕 Di が生成される (ステップ S 1 45) 。 この ブロックデータ Di が保存される (ステップ S 146) 。 そして、 プロ ック番号 iがインクリメントされる (ステップ S 147) 。
ブロック番号 iが 「 2 5 6」 に達したか否かが判断され (ステップ S 148) 、 ブロック番号 iが 「 2 5 6」 に達していなければ、 ステップ S 1 42にリターンされる。
ステップ S 142で、 ( i = j ) であると判断されたら、 暗号化プロ ックデータ EDj が読み出される (ステップ S 149) 。 この暗号化ブ ロックデータ EDjが鍵情報 Kで復号され、 この復号値と関数 f (D i ) との EX— ORにより、 ブロックデータ Dj が生成される (ステツ プ S 1 5 0) 。 このブロックデ一タ Dj が保存される (ステップ S 1.5 1) 。 そして、 ステップ S 147に進められる。 そして、 ブロック番号 iが 「 2 5 6」 に達するまで、 同様の処理が繰 り返される。 ブロック番号 iが 「 2 5 6」 に達し、 ブロックデ一夕 D 255 までの復号が完了したら、 処理が終了される。
なお、 初期値を暗号化したプロックデータ D ]' については、 常に固定 の所にしておいても良いし、 変更できるようにしても良い。 初期値を暗 号化したブロックデータ D j を変更可能としておくことで、 秘匿性を上 げることができる。
以上のように、 この発明では、 ブロック暗号化を連鎖的に行う場合の 初期値を、 コンテンツデ一夕そのものから生成している。 このため、 デ 一夕領域のロスがないと共に、 コンテンツデータはランダムに変化して いるため、 秘匿性が高い。
つまり、 コンテンツデータが音楽データのような場合には、 サンプリ ングにより得られたデータであるため、 それ自身、 ランダマイズ化され たデータであると言える。 ある時点の音楽データの値がどのレベルであ るかを知ることは、 非常に困難なことである。 したがって、 コンテンツ データ自身から初期値を作ると、 乱数を初期値として用いたと同じよう に、 秘匿性が向上する。
次に、 コンテンツのデータとして、 M P E Gストリームを記録する場 合について説明する。
第 1図に示したように、 C D 2の光ディスクは、 内周側の領域 A R 1 と、 外周側の領域 A R 2とがあり、 領域 A R 2には、 M P 3方式でファ ィル化されたオーディオデータが記録される。 M P 3方式は、 M P E G 1で使用されるオーディォデ一夕の 3つのレイヤのうちの一つである。 したがって、 外周側の領域 A R 2に M P 3のデータを記録する場合には, M P E Gストリームに準拠して、 データの記録が行われる。
M P E Gのストリームは、 上位レイヤ (プログラムレイヤ、 パックレ ィャ) と、 下位レイヤ ひ°ケットレイヤ) でストリームが構成される。 すなわち、 MPEGストリームでは、 1つのプログラムのシーケンスは 複数のパックからなり、 各パックは、 一般的には、 複数のパケットから 構成される。 各パックの先頭には、 パックヘッダが設けられる。 バケツ トは、 パケットヘッダとデータとからなる。
CDでは、 9 8フレームからなるブロックがセクタとされ、 このセク 夕を単位として、 データが記録される。
第 1 7図は、 CDにMP EGストリームを記録したときのデータ構造 を示すものである。 第 1 7図に示すように、 CDの 1セクタには、 2 0 48バイ トのデータ領域が設けられる。 この 2 048バイ トのデータ領 域に、 原則として、 1セクタに、 MP EGストリームのパック及びパケ ットが配置される。 第 1 8図に示すように、 ファイルの先頭には、 ファ ィルヘッダが設けられる。 このファイルヘッダには、 著作者の管理情報 が配置される。
第 1 7図に示すように、 1セクタの先頭には、 パックヘッダが設けら れる。 このパックヘッダは、 例えば 14バイトからなる。 このパックへ ッダには、 パックスタートコードや、 S CR (System Clock
Reference) 、 ビットレートが含まれている。
パックヘッダに続いて、 パケットヘッダが設けられる。 このパケット ヘッダは、 例えば、 1 8バイトからなる。 このパケットヘッダには、 パ ケットスタートコード、 ストリーム I D、 PE S (Packetized
Elementary Stream) へッタ s、 PTS (Presentation Time Stamp)が 含まれている。
1セクタの残りの 2 0 1 6バイトに、 MP E G方式で圧縮されたコン テンッのデータ (例えば、 圧縮されたオーディオデータ) が配置される このように、 MP 3のような MP E Gのファイルは、 パックとバケツ トからなる構成のストリームに組み込まれる。 そして、 第 1 8図に示す ように、 ファイルの先頭には、 ファイルヘッダが設けられる。 このファ ィルヘッダには、 ファイル I Dや I S RC (International Standard Recording Code) のような著作者の管理情報が含められる。 I S RCは. その曲のマスターテープや作成時に付けられる曲、 会社、 録音年、 レコ ーデイング番号等からなる 1 2桁のコードである。 さらに、 ディスクを 自体を識別できるようなディスク I Dを設けるようにしても良い。
このように、 C Dに MP E Gのストリームを記録する場合には、 2 0 48バイ トの 1セクタのデータ領域に、 原則として、 パック及びセクタ のデータが記録される。 これら 1セクタのデータのうち暗号化が必要な のは 2 0 1 6バイトのデータであり、 14バイトのパックヘッダ及び 1 8バイ卜のバケツトヘッダは暗号化は不要である。
第 1 9図は、 1セクタ分の MP EGストリームのコンテンツのデータ を暗号化する塲合のブロックの構成を示すものである。 上述のように、 MP E Gストリームの場合には、 1セクタのデータのうち、 暗号化する 必要があるのは、 2 0 1 6バイトのデ一夕である。 したがって、 MP E Gストリームを暗号化する場合には、 第 1 9図に示すように、 1セクタ のデータは、 8バイト (64ビット) 単位で、 2 5 2のブロックに分割 される。 そして、 前述と同様に、 今回のブロックデ一夕と、 その 1つ前 のブロックデータを暗号化したデ一夕との EX— ORをとつて、 暗号化 するような CB C方式により、 暗号化される。
C B C方式で暗号化する場合には、 初期値が必要である。 前述の例で は、 初期値を、 同一セクタ内のブロックのコンテンツデータから生成す るようにしている。 MP E Gストリームの場合にも、 これと同様に、 同 一セクタ内のブロックのコンテンツデータそのものから初期値を作って も良いが、 MP EGストリームのヘッダのユニーク性を着目して、 MP E Gストリームのヘッダから CB Cの初期値を作るようにしても良い。 つまり、 第 1 7図に示したように、 MP EGストリームには、 パック ヘッダと、 パケットヘッダとが設けられている。 また、 第 1 8図に示す ように、 ファイルの先頭には、 ファイルヘッダが設けられる。 これらの ヘッダから初期値を生成することが考えられる。
例えば、 ファイルヘッダには、 I S RCのような著作権の管理情報等 が記録されている。 この著作権の管理情報は、 コンテンツ毎にユニーク な値である。 また、 ディスクヘッダがある場合のは、 ディスクのシリア ル番号のように、 ディスク毎にユニークな値をディスクヘッダに入れる ことができる。 このような情報は、 ディスク毎にユニークな情報である t また、 パックヘッダは、 パックスタ一トコードや、 S CR、 ビットレ ートが含まれている。 この中で、 S CRは、 システムの基準となる S T C (System Time Clock) を較正するための時間情報である。 また、 パ ケットヘッダには、 パケットスタートコード、 ストリーム I D、 PE S ヘッダ長、 PTSが含まれている。 この中で、 PTSは再生の基準とな る時間情報である。 パックヘッダの S CRや、 パケットヘッダの中の P TSは、 時間と共に変化するため、 ユニークな値となる。
このような、 MP EGストリームのヘッダに含まれているユニークな 情報を使つて、 C B C方式で暗号化する場合の初期値を生成することが できる。
MP EGストリームのヘッダの中でユニークな情報を使って、 CB C 方式の初期を生成する場合に、 ヘッダの情報をそのまま用いても良いが, ヘッダの情報をそのまま用いると、 秘匿性が十分でない。 · そこで、 いくつかの MP EGストリームのヘッダの情報から初期値を 生成したり、 ヘッダの情報を暗号化して、 初期値を生成することが考え られる。 具体的には、 以下の方法が考えられる。 まず、 著作権情報のようなファイルヘッダのユニークな情報と、 パッ クヘッダの S C Rやバケツトヘッダの中の P T Sのような時間と共に変 化する情報とを所定の関数により組み合わせて初期値を生成することが 考えられる。
第 2 0図は、 このように、 著作権情報のようなファイルヘッダのュニ —クな情報と、 パックヘッダの S CRやバケツトヘッダの中の P T Sの ような時間と共に変化する情報とから初期値を生成する場合のプロセス の一例である。 第 2 0図において、 £ ー0尺ゲート 2 0 1には、 ファ ィルへッダのユニークな情報が供給されると共に、 パックへッダの S C R又はパケットヘッダの中の P T Sが供給される。 EX— ORゲート 2 0 1で、 ファイルヘッダのユニークな情報と、 パックヘッダの S CR又 はバケツトヘッダの中の PTSとの EX— ORが求められる。 この E X 一 ORゲート 20 1の出力から、 初期値 i nVが求められる。
次に、 著作権情報のようなファイルヘッダのユニークな情報、 又は、 パックへッダの S C Rやバケツトへッダの中の P T Sのような時間と共 に変化する情報を暗号化して、 初期値を生成することが考えられる。 第 2 1図 Aは、 著作権情報のようなファイルヘッダのユニークな情報 を暗号化して初期値を生成する場合のプロセスの一例である。 第 2 1図 Aにおいて、 暗号化回路 2 1 1には、 ファイルヘッダのユニークな情報 が供給される。 暗号化回路 2 1 1で、 このファイルヘッダのユニークな 情報が暗号化され、 暗号化回路 2 1 1の出力から、 初期値 i nVが求め られる。
第 2 1図 Bは、 ノ\°ックヘッダの S C Rやバケツトヘッダの中の PTS のような時間と共に変化する情報を暗号化して初期値を生成する場合の プロセスの一例である。 第 2 1図 Bにおいて、 暗号化回路 221には、 パックヘッダの S C R又はパケットヘッダの中の PTSが供給される。 暗号化回路 2 2 1で、 S CR又は PTSが暗号化され、 暗号化回路 2 2 1の出力から、 初期値 i n Vが求められる。
さらに、 著作権情報のようなファイルヘッダのユニークな情報と、 パ ックヘッダの S CRやパケットヘッダの中の P T Sのような時間と共に 変化する情報とから求められる情報を暗号化して、 初期値を生成するこ とが考えられる。
第 2 2図は、 著作権情報のようなファイルヘッダのユニークな情報と パックヘッダの S CRやパケットヘッダの中の PTSのような時間と共 に変化する情報を、 更に、 暗号化して、 初期値を生成する場合のプロセ スの一例である。 第 22図において、 EX— ORゲート 2 3 1には、 フ アイルヘッダのユニークな情報が供給されると共に、 パックヘッダの S C R又はバケツトヘッダの中の P T Sが供給される。 EX— ORゲート 2 3 1で、 ファイルヘッダのユニークな情報と、 パックヘッダの S CR 又はバケツトヘッダの中の PTSとの EX— ORが求められる。 この E X— ORゲート 2 3 1の出力が暗号化回路 2 3 2に供給される。 暗号化 回路 2 3 2で、 EX— ORゲート 2 3 1の出力が暗号化され、 暗号化回 路 2 3 2の出力から、 初期値 i nVが求められる。
第 2 3図は、 MP E Gストリームを暗号化する場合の暗号化プロセス の一例である。 第 23図において、 E X— 0 Rゲート 30 1— 0で、 入 カブロックデ一夕 DO と、 MP E Gヘッダから求められた初期値 i n V との EX— ORがとられ、 この EX— ORゲ一ト 30 1— 0の出力がブ ロック暗号化回路 3 02 - 0に供給される。
ブロック暗号化回路 3 02— 0で、 EX— ORゲ一ト 3 1 1の出力と 鍵情報 とから、 暗号化ブロックデータ EDO が求められる。
次に、 EX— ORゲート 3 0 1— 1で、 入力ブロックデータ D1 と、 暗号化ブロックデータ EDO との EX— ORがとられ、 この EX— OR ゲ一ト 3 0 1— 1の出力がブロック暗号化回路 3 0 2 - 1に供給され、 ブロック暗号化回路 302— 1で、 EX— ORゲート 3 0 1— 1の出力 と鍵情報 Kとから、 暗号化ブロックデータ ED1 が求められる。
以下、 同様にして、 入力データ D2 、 D3 、 ·'·、 D251から、 暗号化 ブロックデータ ED2 、 ED3 、 ···、 ED251が求められる。
第 24図 は、 MP EGストリームを復号する場合の復号プロセスの 一例である。 第 24図において、 暗号化ブロックデ一夕 EDO と、 鍵情 報 Kとがブロック喑号復号回路 40 1 - 0に送られ、 ブロック暗号復号 回路 40 1— 0で、 喑号の復号処理が行われる。
ブロック暗号復号回路 40 1 - 0の出力が EX— ORゲート 40 2— 0に送られる。 また、 EX— ORゲート 40 2— 0には、 初期値 i nV が送られる。 この初期値 i n Vは、 暗号化ブロックデータ i nV であ る。
EX— ORゲート 402 _ 0で、 ブロック暗号復号回路 40 1— 0の 出力と、 初期値 i nV との EX— ORがとられて、 ブロックデータ DO が復号される。
次に、 暗号化ブロックデータ ED1 と、 鍵情報 Kとがブロック暗号復 号回路 40 1 - 1に送られる。 ブロック暗号復号回路 40 1一 1で暗号 が復号される。 ブロック暗号復号回路 40 1 - 1の出力が EX— ORゲ ート 40 2— 1に送られる。
また、 EX— ORゲート 40 2— 1には、 その前の暗号化ブロックデ 一夕 EDO とが送られる。
EX— ORゲ一ト 402— 1で、 ブロック暗号復号回路 40 1— 1の 出力と、 その前の暗号化ブロックデータ E DO との EX— ORがとられ て、 ブロックデ一夕 D1 が復号される。
以下、 同様にして、 暗号化ブロックデータ EDI 、 ED2 、 …から、 ブロックデータ Dl 、 D2 、 ···、 D251が復号されていく。
このように、 MP E Gストリームを記録する場合には、 MP EGのへ ッダのユニーク性を利用して、 MP E Gヘッダを使って C B C方式で喑 号化を行う場合の初期値を作ることができる。 なお、 上述の例では、 フ アイルヘッダと、 パックへッダ又はパケットヘッダの S CR又は PTS 等の時間情報とを使って初期値を生成しているが、 さらに、 ディスクへ ッダの情報を用いるようにしても良い。
なお、 上述の例では、 コンテンツのデータを CD 2の光ディスクに記 録しているが、 記録媒体としては、 CD 2の光ディスクに限定されるも のではない。 この発明は、 CD—: DAや CD— ROM、 CD— Rや CD 一 RWにコンテンツのデータを記録する場合にも、 同様に適用すること ができる。 また、 光ディスクに限らず、 磁気ディスク、 フラッシュメモ リカード等、 種々の記録媒体にコンテンツのデータを記録する場合に同 様に適用できる。
さらに、 この発明は、 コンテンツのデータをネットワークで配信する 場合に用いても好適である。
つまり、 近年、 音楽データのようなコンテンツのデータをネットヮー クを使って配信するようなサービスが普及している。 このようなサービ スでは、 コンテンツのデータの保護を図るために、 コンテンツのデータ を暗号化することが望まれる。 この発明では、 プロック暗号化を連鎖的 に行う場合の初期値を、 コンテンッデータそのもの又は MP E Gストリ ームのデータから生成しているため、 コンテンッのデータを配信する場 合の暗号化にも好都合である。
この発明によれば、 コンテンツのデ一夕がブロック化され、 鎖状に連 鎖して暗号化される。 そして、 このときの初期値を、 そのセクタのコン テンッデ一夕そのものから生成している。 このため、 初期値を乱数等で 発生する必要がなく、 データ領域のロスがない。 また、 コンテンツデ一 夕はランダムに変化しているため、 秘匿性が高い。 更に、 乱数発生器等 を容易する必要がなく、 回路規模が増大しない。
また、 この発明によれば、 コンテンツデータから生成される初期値自 体が他のコンテンツデータで暗号化される。 更に、 初期値として使うコ ンテンッデータを自由に選ぶことができる。 これにより、 秘匿性が向上 される。
さらに、 この発明によれば、 MP E Gストリームを記録する場合には、 ヘッダに含まれるユニークな情報を使って、 初期値を生成している。 へ ッダの情報はユニークであり、 S CRや PTSのような時間情報は、 時 間と共に変化するため、 秘匿性が高い。 また、 MP EGストリームのへ ッダの情報を使って暗号化の初期値を形成しているので、 MP E Gスト リームを保ったまま、 伝送することができる。 さらに、 乱数発生器等を 容易する必要がなく、 回路規模が増大しない。 産業上の利用可能性
以上のように、 この発明にかかる暗号化装置及び方法、 復号装置及び 方法、 並びに記憶媒体は、 例えば CD (Compact Disc) 2のような光デ イスクに、 オーディォデ一夕等のコンテンツのデータを記録/再生する 際に、 コンテンッのデ一夕の保護を図るためにデータを暗号化して記録 するのに用いて好適である。

Claims

請 求 の 範 囲
1 . コンテンツデータの第 1の部分のデータに応じて初期値を生成する 生成手段と、
上記生成された初期値に応じて上記コンテンツデータの第 2の部分の データを暗号化し、 暗号化データを出力すると共に、 当該出力される暗 号化データに応じて、 上記コンテンツデータの第 1及び第 2の部分のデ —夕とは異なる部分のデータを連鎖的に暗号化する暗号手段と
を備えるようにした暗号化装置。
2 . 更に、 上記コンテンツデータを複数ビットからなるブロック単位に 分割する分割手段を備え、
上記生成手段は、 上記分割されたブロック単位で、 当該ブロック内の 第 1の部分のデータに応じて初期値を生成する
ようにした請求の範囲第 1項記載の暗号化装置。
3 . 上記暗号手段は、 上記分割されたブロック単位で、 ブロック暗号化 方式により暗号化を行う
ようにした請求の範囲第 2項記載の暗号化装置。
4 . 上記初期値を暗号化するようにした請求の範囲第 1項記載の暗号化
5 . 上記コンテンツデータの第 1の部分のデータを変更可能とした請求 の範囲第 1項記載の暗号化装置。
6 . コンテンツデータの第 1の部分のデータに応じて初期値を生成し、 上記生成された初期値に応じて上記コンテンツデータの第 2の部分の データを暗号化し、 暗号化データを出力すると共に、 当該出力される喑 号化データに応じて、 上記コンテンツデ一夕の第 1及び第 2の部分のデ 一夕とは異なる部分のデータを連鎖的に暗号化する ようにした暗号化方法。
7 . 更に、 上記コンテンツデ一夕を複数ビットからなるブロック単位に 分割し、
上記分割されたブロック単位で、 当該ブロック内の第 1の部分のデ一 夕に応じて初期値を生成する
ようにした請求の範囲第 6項記載の暗号化方法。
8 . 上記分割されたブロック単位で、 ブロック暗号化方式により暗号化 を行う
ようにした請求の範囲第 7項記載の暗号化方法。
9 . 上記初期値を暗号化するようにした請求の範囲第 6項記載の暗号化 方法。
1 0 . 上記コンテンツデータの第 1の部分のデータを変更可能とした請 求の範囲第 6項記載の暗号化方法。
1 1 . 暗号化されたコンテンツデータの第 1の部分のデータである初期 値に基づいて、 上記喑号化されたコンテンツデータの第 2の部分のデー 夕を復号し復号デ一夕を出力すると共に、 上記第 1及び第 2の部分のデ 一夕とは異なる部分のデータを、 上記暗号化されたコンテンツデータの 第 2の部分のデータに基づいて連鎖的に復号する復号手段と、
上記暗号化されたコンテンツデータの第 1の部分のデータから上記第 1の部分のデータを生成する生成手段と
を備えるようにした復号装置。
1 2 . 更に、 上記コンテンツデータは、 複数ビットからなるブロック単 位で暗号化されており、
上記復号手段は、 上記暗号化されたコンテンツデータを上記ブロック 単位で復号する
ようにした請求の範囲第 1 1項記載の復号装置。
1 3 . 上記生成手段は、 上記ブロック単位で、 上記暗号化されたコンテ ンッデ一夕の第 1の部分のデータから上記第 1の部分のデータを生成す る
ようにした請求の範囲第 1 2項記載の復号装置。
1 4 . 上記初期値は暗号化されており、 上記第 1の部分のデータを上記 初期値を復号して生成するようにした請求の範囲第 1 1項記載の暗号化
1 5 . 暗号化されたコンテンツデータの第 1の部分のデータである初期 値に基づいて、 上記暗号化されたコンテンツデータの第 2の部分のデー 夕を復号し復号データを出力し、
上記第 1及び第 2の部分のデ一夕とは異なる部分のデータを、 上記喑 号化されたコンテンツデ一夕の第 2の部分のデータに基づいて連鎖的に 復号し、
上記暗号化されたコンテンツデータの第 1の部分のデー夕から上記第 1の部分のデータを生成する
ようにした復号方法。
1 6 . 更に、 上記コンテンツデータは、 複数ビットからなるブロック単 位で暗号化されており、
上記暗号化されたコンテンツデータを上記ブロック単位で復号する ようにした請求の範囲第 1 5項記載の復号方法。
1 7 . 上記ブロック単位で、 上記暗号化されたコンテンツデ一夕の第 1 の部分のデータから上記第 1の部分のデ一夕を生成する
ようにした請求の範囲第 1 6項記載の復号方法。
1 8 . 上記初期値は暗号化されており、 上記第 1の部分のデータを上記 初期値を復号して生成するようにした請求の範囲第 1 5項記載の復号方 法。
1 9 . コンテンツデータの第 1の部分のデータに応じて初期値を生成し. 上記生成された初期値に応じて上記コンテンツデータの第 2の部分の データを暗号化し、 暗号化データを出力すると共に、 当該出力される暗 号化データに応じて、 上記コンテンツデータの第 1及び第 2の部分のデ 一夕とは異なる部分のデータを連鎖的に暗号化して、 上記コンテンツの データを記憶する
ようにした記憶媒体。
2 0 . コンテンッデ一夕のストリームの所定の部分のデータに応じて初 期値を生成する生成手段と、
上記生成された初期値に応じて上記コンテンツデータを暗号化し、 暗 号化データを出力すると共に、 当該出力される暗号化データに応じて、 上記コンテンツデータとは異なる部分のデータを連鎖的に暗号化する暗 号手段と
を備えるようにした暗号化装置。
2 1 . 更に、 上記コンテンツデータを複数ビットからなるブロック単位 に分割する分割手段を備え、
上記暗号手段は、 上記分割されたブロック単位で、 ブロック暗号化方 式により暗号化を行うようにした請求の範囲第 2 0項記載の暗号化装置 t 2 2 . 上記ストリーム中のヘッダの部分に含まれるデータに応じて初期 値を生成するようにした請求の範囲第 2 0項記載の暗号化装置。
2 3 . 上記ストリーム中のヘッダの部分に含まれる時間情報に応じて初 期値を生成するようにした請求の範囲第 2 0項記載の暗号化装置。
2 4 . 上記ストリーム中のヘッダの部分に含まれるコンテンツ毎にュニ ークな情報に応じて初期値を生成するようにした請求の範囲第 2 0項記 載の暗号化装置。
2 5 . 上記ストリーム中のヘッダの部分に含まれる時間情報と、 上記ス トリーム中のヘッダの部分に含まれるコンテンツ毎にユニークな情報と に応じて初期値を生成するようにした請求の範囲第 2 0項記載の暗号化
2 6 . 上記初期値を暗号化するようにした請求の範囲第 2 0項記載の喑 号化装置。
2 7 . 上記ストリームは、 M P E Gストリームである請求の範囲第 2 0 項記載の暗号化装置。
2 8 . 上記ヘッダは、 パックヘッダ、 パケットヘッダ、 又はファイルへ ッダである請求の範囲第 2 7項記載の暗号化装置。
2 9 . コンテンツデータのストリームの所定の部分のデータに応じて初 期値を生成し、
上記生成された初期値に応じて上記コンテンツデータを暗号化し、 暗 号化データを出力すると共に、 当該出力される暗号化データに応じて、 上記コンテンッデータとは異なる部分のデータを連鎖的に暗号化する ようにした暗号化方法。
3 0 . 更に、 上記コンテンツデータを複数ビットからなるブロック単位 に分割し、
上記分割されたブロック単位で、 ブロック暗号化方式により暗号化を 行うようにした請求の範囲第 2 9項記載の暗号化方法。
3 1 . 上記ストリーム中のヘッダの部分に含まれるデータに応じて初期 値を生成するようにした請求の範囲第 2 9項記載の暗号化方法。
3 2 . 上記ストリーム中のヘッダの部分に含まれる時間情報に応じて初 期値を生成するようにした請求の範囲第 2 9項記載の暗号化方法。
3 3 . 上記ストリーム中のヘッダの部分に含まれるコンテンツ毎にュニ ークな情報に応じて初期値を生成するようにした請求の範囲第 2 9項記 載の暗号化方法。
3 4 . 上記ストリーム中のヘッダの部分に含まれる時間情報と、 上記ス トリーム中のヘッダの部分に含まれるコンテンツ毎にユニークな情報と に応じて初期値を生成するようにした請求の範囲第 2 9項記載の暗号化 方法。
3 5 . 上記初期値を暗号化するようにした請求の範囲第 2 9項記載の暗 号化方法。
3 6 . 上記ストリ一ムは、 M P E Gストリームである請求の範囲第 2 9 項記載の暗号化方法。
3 7 . 上記ヘッダは、 パックヘッダ、 パケットヘッダ、 又はファイルへ ッダである請求の範囲第 3 6項記載の暗号化方法。
3 8 . コンテンツデータのストリームの所定の部分のデータに応じて初 期値を生成する生成手段と、
上記初期値に基づいて、 暗号化されたコンテンツデータの第 1の部分 のデータを復号し復号データを出力すると共に、 上記暗号化されたコン テンッデータの第 1の部分のデ一夕とは異なる第 2の部分のデータを、 上記暗号化されたコンテンツデータの第 1の部分のデータに基づいて連 鎖的に復号する復号手段と
を備える復号装置。
3 9 . 更に、 上記コンテンツデータは、 複数ビットからなるブロック単 位で暗号化されており、
上記復号手段は、 上記暗号化されたコンテンツデ一夕を上記プロック 単位で復号する
ようにした請求の範囲第 3 8項記載の復号装置。
4 0 . 上記生成手段は、 上記ストリーム中のヘッダの部分に含まれるデ —夕に応じて初期値を生成するようにした請求の範囲第 3 8項記載の復
4 1 . 上記生成手段は、 上記ストリーム中のヘッダの部分に含まれる時 間情報に応じて初期値を生成するようにした請求の範囲第 3 8項記載の 復号装置。
4 2 . 上記生成手段は、 上記ストリーム中のヘッダの部分に含まれるコ ンテンッ毎にユニークな情報に応じて初期値を生成するようにした請求 の範囲第 3 8項記載の復号装置。
4 3 . 上記生成手段は、 上記ストリーム中のヘッダの部分に含まれる時 間情報と、 上記ストリーム中のヘッダの部分に含まれるコンテンツ毎に ユニークな情報とに応じて初期値を生成するようにした請求の範囲第 3 8項記載の復号装置。
4 4 . 上記生成手段は、 暗号化されている上記初期値を復号するように した請求の範囲第 3 8項記載の復号装置。
4 5 . 上記ストリームは、 M P E Gストリームである請求の範囲第 3 8 項記載の復号装置。
4 6 . 上記へッダは、 パックへッダ、 パケットヘッダ、 又はファイルへ ッダである請求の範囲第 4 5項記載の復号装置。
4 7 . コンテンッデータのストリームの所定の部分のデータに応じて初 期値を生成し、
上記初期値に基づいて、 暗号化されたコンテンツデータの第 1の部分 を復号し復号データを出力し、
上記喑号化されたコンテンツデータの第 1の部分のデータとは異なる 第 2の部分のデータを、 上記暗号化されたコンテンツデータの第 1の部 分のデータに基づいて連鎖的に復号する
ようにした復号方法。
4 8 . 更に、 上記コンテンツデータは、 複数ビットからなるブロック単 位で暗号化されており、 上記復号手段は、 上記暗号化されたコンテンツデータを上記ブロック 単位で復号する
ようにした請求の範囲第 4 7項記載の復号装置。
4 9 . 上記生成手段は、 上記ストリーム中のヘッダの部分に含まれるデ 一夕に応じて初期値を生成するようにした請求の範囲第 4 7項記載の復
5 0 . 上記生成手段は、 上記ストリーム中のヘッダの部分に含まれる時 間情報に応じて初期値を生成するようにした請求の範囲第 4 7項記載の 復号装置。
5 1 . 上記生成手段は、 上記ストリーム中のヘッダの部分に含まれるコ ンテンッ毎にユニークな情報に応じて初期値を生成するようにした請求 の範囲第 4 7項記載の復号装置。
5 2 . 上記生成手段は、 上記ストリーム中のヘッダの部分に含まれる時 間情報と、 上記ストリ一ム中のヘッダの部分に含まれるコンテンツ毎に ユニークな情報とに応じて初期値を生成するようにした請求の範囲第 4 7項記載の復号装置。
5 3 . 上記生成手段は、 暗号化されている上記初期値を復号するように した請求の範囲第 4 7項記載の復号装置。
5 4 . 上記ストリームは、 M P E Gストリームである請求の範囲第 4 7 項記載の復号装置。
5 5 . 上記へッダは、 パックへッダ、 パケットヘッダ、 又はファイルへ ッダである請求の範囲第 5 4項記載の復号装置。
5 6 . コンテンツデ一夕のストリームの所定の部分のデータに応じて初 期値を生成し、
上記生成された初期値に応じて上記コンテンツデ一夕を暗号化し、 暗 号化データを出力すると共に、 当該出力される暗号化データに応じて、 上記コンテンツデータとは異なる部分のデータを連鎖的に暗号化して、 上記コンテンッのデータを記憶する
ようにした記憶媒体。
PCT/JP2001/009624 2000-11-06 2001-11-02 Enciphering device and method, deciphering device and method, and storage medium Ceased WO2002037747A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
EP01980961A EP1237320A4 (en) 2000-11-06 2001-11-02 PROCESS AND DEVICE FOR ENCRYPTION, METHOD AND DEVICE FOR DECIMATION AND STORAGE MEDIUM

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
JP2000337307 2000-11-06
JP2000-337307 2000-11-06
JP2001066850A JP2002202719A (ja) 2000-11-06 2001-03-09 暗号化装置及び方法、復号装置及び方法、並びに記憶媒体
JP2001-66850 2001-03-09

Publications (1)

Publication Number Publication Date
WO2002037747A1 true WO2002037747A1 (en) 2002-05-10

Family

ID=26603432

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2001/009624 Ceased WO2002037747A1 (en) 2000-11-06 2001-11-02 Enciphering device and method, deciphering device and method, and storage medium

Country Status (6)

Country Link
US (1) US20030002665A1 (ja)
EP (1) EP1237320A4 (ja)
JP (1) JP2002202719A (ja)
KR (1) KR100846255B1 (ja)
CN (1) CN100508447C (ja)
WO (1) WO2002037747A1 (ja)

Families Citing this family (39)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030223581A1 (en) * 2002-05-30 2003-12-04 Bedros Hanounik Cipher block chaining unit for use with multiple encryption cores
KR100965874B1 (ko) * 2003-01-10 2010-06-24 삼성전자주식회사 Ckc 암호화/복호화 장치 및 방법
US7055039B2 (en) * 2003-04-14 2006-05-30 Sony Corporation Protection of digital content using block cipher crytography
JP4544156B2 (ja) * 2003-07-15 2010-09-15 ソニー株式会社 処理方法並びにコンピュータ・プログラム
JP4110530B2 (ja) 2003-10-22 2008-07-02 ソニー株式会社 情報記録処理装置、情報再生処理装置、情報記録媒体、および方法、並びにコンピュータ・プログラム
JP2005140823A (ja) 2003-11-04 2005-06-02 Sony Corp 情報処理装置、制御方法、プログラム、並びに記録媒体
JP4505717B2 (ja) * 2003-12-08 2010-07-21 ソニー株式会社 情報処理装置、制御方法、プログラム、並びに記録媒体
KR101244308B1 (ko) * 2003-12-08 2013-03-18 삼성전자주식회사 동영상 파일의 암호화 방법 및 그를 이용한 디지털 저작권관리방법
JPWO2006013924A1 (ja) * 2004-08-06 2008-05-01 パイオニア株式会社 記録再生装置、記録媒体処理装置、再生装置、記録媒体、コンテンツ記録再生システム、及びコンテンツ記録再生方法
US7636439B2 (en) 2004-09-10 2009-12-22 Hitachi Kokusai Electric, Inc. Encryption method, encryption apparatus, data storage distribution apparatus and data delivery system
JP2006229863A (ja) * 2005-02-21 2006-08-31 Seiko Epson Corp 暗号化/復号化装置、通信コントローラ及び電子機器
EP1864425A4 (en) * 2005-03-10 2011-03-16 Korea Electronics Telecomm ENCRYPTING AND DECOMPOSITION DEVICE IN A WIRELESS PORTABLE INTERNET SYSTEM AND METHOD THEREFOR
WO2006117775A2 (en) * 2005-05-02 2006-11-09 Nds Limited Native scrambling system
GB2431488A (en) * 2005-10-11 2007-04-25 Hewlett Packard Development Co Data transfer device
JP4482630B2 (ja) * 2005-11-21 2010-06-16 インターナショナル・ビジネス・マシーンズ・コーポレーション 通信装置および通信方法
AU2006324920B2 (en) * 2005-12-14 2010-08-12 Nds Limited Method and system for usage of block cipher encryption
US20090125726A1 (en) * 2007-11-14 2009-05-14 Mcm Portfolio Llc Method and Apparatus of Providing the Security and Error Correction Capability for Memory Storage Devices
JP4658150B2 (ja) * 2008-01-25 2011-03-23 Nttエレクトロニクス株式会社 暗号化方法および復号方法
JP4665974B2 (ja) * 2008-02-13 2011-04-06 ソニー株式会社 情報記録媒体
US8793228B2 (en) * 2009-01-14 2014-07-29 Stmicroelectronics Pvt. Ltd. File system including a file header area and a file data area
KR20100089228A (ko) 2009-02-03 2010-08-12 삼성전자주식회사 멀티미디어 컨텐트의 전송 스트림 암호화 방법 및 그 장치,복호화 방법 및 그 장치
US8819451B2 (en) * 2009-05-28 2014-08-26 Microsoft Corporation Techniques for representing keywords in an encrypted search index to prevent histogram-based attacks
US8364955B1 (en) * 2009-10-29 2013-01-29 Symantec Corporation Systems and methods for effectively removing access to individual files on magnetic tape media
US8959366B2 (en) * 2010-01-28 2015-02-17 Cleversafe, Inc. De-sequencing encoded data slices
US20190108366A1 (en) * 2010-01-28 2019-04-11 International Business Machines Corporation Secure data transmission utilizing distributed storage
US8625802B2 (en) * 2010-06-16 2014-01-07 Porticor Ltd. Methods, devices, and media for secure key management in a non-secured, distributed, virtualized environment with applications to cloud-computing security and management
CN102622541B (zh) * 2010-12-29 2016-02-24 奥多比公司 加密及解密的系统和方法
US8938619B2 (en) * 2010-12-29 2015-01-20 Adobe Systems Incorporated System and method for decrypting content samples including distinct encryption chains
US8527750B2 (en) * 2010-12-29 2013-09-03 Adobe Systems Incorporated System and method for generating multiple protected content formats without redundant encryption of content
US8725788B2 (en) 2011-05-27 2014-05-13 Adobe Systems Incorporated System and method for decryption of content including partial-block discard
US8687809B2 (en) * 2011-05-27 2014-04-01 Adobe Systems Incorporated System and method for decryption of content including disconnected encryption chains
CN102624708A (zh) * 2012-02-23 2012-08-01 浙江工商大学 一种面向云存储的高效数据加密、更新和访问控制方法
JP6167721B2 (ja) * 2013-07-23 2017-07-26 凸版印刷株式会社 暗号化装置、復号装置、暗号化方法、復号方法及びプログラム
KR102323805B1 (ko) 2014-12-24 2021-11-10 십일번가 주식회사 웹 기반 인증 결제 장치, 웹 기반 인증 결제 방법, 웹 기반 인증 결제 시스템 및 컴퓨터 프로그램이 기록된 기록매체
CN105205411A (zh) * 2015-09-21 2015-12-30 北京元心科技有限公司 一种实现对称加密文件随机存储的方法和系统
CN106228981B (zh) * 2016-08-03 2019-07-19 中山大学 一种基于压缩域的mp3自适应隐写方法
JP7032518B2 (ja) 2017-08-31 2022-03-08 ゼネラル・エレクトリック・カンパニイ 信頼できるトランザクション配送をサポートするための体積データの符号化
CN114051208B (zh) * 2021-11-17 2025-09-02 中车工业研究院(青岛)有限公司 一种车地安全通信的方法、装置及计算机可读存储介质
CN115297363B (zh) * 2022-10-09 2022-12-27 南通商翼信息科技有限公司 基于霍夫曼编码的视频数据加密传输方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH048029A (ja) * 1990-04-26 1992-01-13 Canon Inc 暗号化符号化装置
JPH1032567A (ja) * 1996-07-18 1998-02-03 Mitsubishi Electric Corp 秘匿化装置、秘匿解除装置およびこれらを用いたデータ伝送システム
US5838791A (en) 1994-08-10 1998-11-17 Fujitsu Limited Encoder and decoder
WO1999034548A2 (en) * 1997-12-26 1999-07-08 Sun Microsystems, Inc. System and method for deriving an appropriate initialization vector for secure communications

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE68922847T2 (de) * 1988-07-13 1996-02-08 Matsushita Electric Ind Co Ltd Übertragungsvorrichtung.
US5682425A (en) * 1990-04-23 1997-10-28 Canon Kabushiki Kaisha Information signal transmission system
KR0152270B1 (ko) * 1990-04-30 1998-10-15 구자홍 유료 티브이 시스템의 합성 영상신호 암호화 해독 처리 시스템
US5150401A (en) * 1990-12-04 1992-09-22 Chips International, Inc. Retrofittable encryption/decryption apparatus using modified frequency modulation
JPH07193804A (ja) * 1991-11-15 1995-07-28 Pioneer Electron Corp 映像スクランブル方式およびその装置
DE69521413T2 (de) * 1994-01-13 2002-05-29 Certco Inc., New York Verschlüsselungseinrichtung und verfahren mit möglichkeit zur gesicherten zentralen schlüsselablage
US5671283A (en) * 1995-06-08 1997-09-23 Wave Systems Corp. Secure communication system with cross linked cryptographic codes
US5664016A (en) * 1995-06-27 1997-09-02 Northern Telecom Limited Method of building fast MACS from hash functions
CA2179971C (en) * 1995-06-30 2001-10-30 Takahisa Yamamoto An adaptable communication apparatus and an adaptable communication system
WO1998010559A1 (de) * 1996-09-03 1998-03-12 Siemens Aktiengesellschaft Anordnung und verfahren zur kryptographischen bearbeitung eines digitalen datenstroms, der eine beliebige anzahl von daten aufweist
US6526144B2 (en) * 1997-06-02 2003-02-25 Texas Instruments Incorporated Data protection system
US6307940B1 (en) * 1997-06-25 2001-10-23 Canon Kabushiki Kaisha Communication network for encrypting/deciphering communication text while updating encryption key, a communication terminal thereof, and a communication method thereof
US6333983B1 (en) * 1997-12-16 2001-12-25 International Business Machines Corporation Method and apparatus for performing strong encryption or decryption data using special encryption functions
US6215876B1 (en) * 1997-12-31 2001-04-10 Transcrypt International, Inc. Apparatus for and method of detecting initialization vector errors and maintaining cryptographic synchronization without substantial increase in overhead
US6249582B1 (en) * 1997-12-31 2001-06-19 Transcrypt International, Inc. Apparatus for and method of overhead reduction in a block cipher
US6295604B1 (en) * 1998-05-26 2001-09-25 Intel Corporation Cryptographic packet processing unit
US6845159B1 (en) * 1998-10-07 2005-01-18 Protego Information Ab Processing method and apparatus for converting information from a first format into a second format
JP3824121B2 (ja) * 1999-04-01 2006-09-20 株式会社日立製作所 暗号データの復号化処理方法および装置
JP3864675B2 (ja) * 2000-03-09 2007-01-10 株式会社日立製作所 共通鍵暗号装置
US7237108B2 (en) * 2001-09-26 2007-06-26 General Instrument Corporation Encryption of streaming control protocols and their headers

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH048029A (ja) * 1990-04-26 1992-01-13 Canon Inc 暗号化符号化装置
US5838791A (en) 1994-08-10 1998-11-17 Fujitsu Limited Encoder and decoder
JPH1032567A (ja) * 1996-07-18 1998-02-03 Mitsubishi Electric Corp 秘匿化装置、秘匿解除装置およびこれらを用いたデータ伝送システム
WO1999034548A2 (en) * 1997-12-26 1999-07-08 Sun Microsystems, Inc. System and method for deriving an appropriate initialization vector for secure communications

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See also references of EP1237320A4

Also Published As

Publication number Publication date
JP2002202719A (ja) 2002-07-19
EP1237320A1 (en) 2002-09-04
KR100846255B1 (ko) 2008-07-16
US20030002665A1 (en) 2003-01-02
CN100508447C (zh) 2009-07-01
CN1394409A (zh) 2003-01-29
KR20020067599A (ko) 2002-08-22
EP1237320A4 (en) 2008-07-09

Similar Documents

Publication Publication Date Title
CN100508447C (zh) 加密设备和方法、解密设备和方法
US7448086B2 (en) Recording apparatus and method, reproducing apparatus and method, and memory medium
JP4734906B2 (ja) 情報処理装置、情報記録媒体、および情報処理方法、並びにコンピュータ・プログラム
US20090274297A1 (en) Digital content decrypting apparatus and operating method thereof
JP4710211B2 (ja) 情報記録装置、情報再生装置、情報記録再生装置、情報記録方法、情報再生方法、情報記録再生方法並びに記録媒体
KR100994772B1 (ko) 저장 매체의 데이터 복사 및 재생 방법
JP4114605B2 (ja) 情報処理装置、情報記録媒体、および情報処理方法、並びにコンピュータ・プログラム
TWI337738B (en) Information processing apparatus, information processing method, information recording medium, and computer program
WO2000079532A1 (en) Recording medium, method for initializing recording medium, encrypting method and device for recording medium, decrypting method, and acoustic/video/data device
JP3584913B2 (ja) データ出力方法、記録方法および装置、再生方法および装置、データ送信方法および受信方法
JPWO2001015163A1 (ja) 情報記録再生装置
JP2005512258A (ja) システムデータの完全性の検証方法及び装置
US7228568B2 (en) Data recording apparatus, data recording method, and data transfer system
US7295393B2 (en) Data converting apparatus, data converting method, and recording medium
JP2001216727A (ja) 情報記録媒体、記録装置、記録方法、再生装置、再生方法、記録再生方法および伝送方法
JP3516142B2 (ja) 記録媒体の記録装置及び記録方法、記録媒体の再生装置及び再生方法、データ出力方法並びにデータ復号方法、
JP4936652B2 (ja) 情報処理装置、情報記録媒体、および情報処理方法、並びにコンピュータ・プログラム
KR20050122209A (ko) 디지털 데이터 보존·재생방법 및 장치
JP4228863B2 (ja) 記録装置、信号処理システム、記録方法のプログラム並びにプログラムを格納した記録媒体
JP2000293945A (ja) 情報記録媒体、情報再生装置および逆スクランブル回路
JP3689624B2 (ja) 情報記録媒体、情報記録方法及び情報再生方法
KR100365916B1 (ko) 데이터 암호화 장치 및 방법
JP4774734B2 (ja) 情報処理装置、情報記録媒体、および情報処理方法、並びにコンピュータ・プログラム
JP4551700B2 (ja) 記録方法、記録装置、再生方法、再生装置および記録媒体

Legal Events

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

Ref document number: 2001980961

Country of ref document: EP

WWE Wipo information: entry into national phase

Ref document number: 10169696

Country of ref document: US

WWE Wipo information: entry into national phase

Ref document number: 018035108

Country of ref document: CN

Ref document number: 1020027008735

Country of ref document: KR

WWP Wipo information: published in national office

Ref document number: 1020027008735

Country of ref document: KR

WWP Wipo information: published in national office

Ref document number: 2001980961

Country of ref document: EP