WO2003065225A1 - Dispositif de memoire, appareil terminal et systeme de reparation de donnees - Google Patents

Dispositif de memoire, appareil terminal et systeme de reparation de donnees Download PDF

Info

Publication number
WO2003065225A1
WO2003065225A1 PCT/JP2003/000500 JP0300500W WO03065225A1 WO 2003065225 A1 WO2003065225 A1 WO 2003065225A1 JP 0300500 W JP0300500 W JP 0300500W WO 03065225 A1 WO03065225 A1 WO 03065225A1
Authority
WO
WIPO (PCT)
Prior art keywords
data
inspection
memory device
information
inspection information
Prior art date
Application number
PCT/JP2003/000500
Other languages
English (en)
French (fr)
Inventor
Yoshiaki Nakanishi
Osamu Sasaki
Yoshihiko Takagi
Original Assignee
Matsushita Electric Industrial Co., Ltd.
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 Matsushita Electric Industrial Co., Ltd. filed Critical Matsushita Electric Industrial Co., Ltd.
Priority to KR10-2003-7013808A priority Critical patent/KR20040080936A/ko
Priority to US10/467,067 priority patent/US20040073846A1/en
Priority to EP03705008A priority patent/EP1471429A4/en
Priority to JP2003564748A priority patent/JPWO2003065225A1/ja
Publication of WO2003065225A1 publication Critical patent/WO2003065225A1/ja

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/16Protection against loss of memory contents
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/64Protecting data integrity, e.g. using checksums, certificates or signatures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1004Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's to protect a block of data words, e.g. CRC or checksum
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/14Protection against unauthorised use of memory or access to memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/78Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure storage of data

Definitions

  • the present invention relates to a repair system for repairing a damaged portion of downloaded data, and a memory device and a terminal device constituting the system, and more particularly to a system for efficiently repairing data recorded on a memory device. It is. Background art
  • Such data corruption can be found by checking the check information such as the checksum transmitted by the server together with the data and the checksum calculated from the data stored in the storage means.
  • Tamper resistance is achieved by providing a dummy circuit, restricting the processing time to a certain time, or adopting a structure that is not affected by heat or electromagnetic waves.
  • Japanese Patent Application Laid-Open No. 4-340150 discloses a method in which a terminal device issues a download request to a server when the data device detects an abnormality in the data. This document describes the method for receiving program data downloads again.
  • Japanese Patent Application Laid-Open No. 11-184705 discloses that a terminal device has first and second storage means and stores downloaded data in both of these storage means in an overlapping manner. However, a method is described in which, when data stored in the first storage means is damaged, data stored in the second storage means is overwritten on the first storage means.
  • a tamper-resistant storage device is expensive and cannot secure a large storage capacity. Therefore, it is impossible to store music data with a large amount of data.
  • the method of receiving data download again from the server when data corruption is found has the problem that much communication time is required for downloading.
  • the method of retaining data redundantly has a problem in that the terminal device must have storage means having a large storage capacity.
  • e-commerce such as the purchase of goods and entertainment content data using mobile terminals and online banking has begun to spread. It is also used for address book and schedule management. It is possible to manage this information on a server on the network, but this poses problems such as the time lag required to retrieve the information and the inability to access necessary information in the event of a network failure. Therefore, there is a great demand for a card device that can be accessed immediately and has a sufficient capacity as a storage medium for data handled by mobile terminals including this information. However, at the same time, if the information on the card device is damaged, and if the information cannot be repaired reliably and at low cost (including time), it will not only hinder the processing of the information, but will also disturb the user.
  • An object of the present invention is to provide a data repair system that can efficiently repair damaged data, and a memory device and a terminal device that realize the system. '
  • the purpose is to provide a tamper-resistant memory area and a non-tamper-resistant memory area in a memory device, store data in the non-tamper-resistant memory area, and store the data in a tamper-resistant memory area. This is achieved by storing the inspection information used for the inspection of the breakage.
  • FIG. 1 is a diagram showing an overall configuration of a data repair system according to Embodiment 1 of the present invention
  • FIG. 2 is a diagram showing a hardware configuration of a memory device according to the first embodiment of the present invention.
  • FIG. 3 is a diagram showing a first data configuration example of inspection information according to Embodiment 1 of the present invention.
  • FIG. 4 is a diagram showing a second data configuration example of test information according to the first embodiment of the present invention.
  • FIG. 5 is a diagram showing a data processing operation of the memory device according to the first embodiment of the present invention.
  • FIG. 6 is a flowchart showing a write procedure of the memory device according to the first embodiment of the present invention.
  • FIG. 7 is a schematic diagram showing a write procedure including a data corruption check of a memory device according to the first embodiment of the present invention.
  • FIG. 8 is a flowchart showing a data corruption inspection procedure of a memory device according to the first embodiment of the present invention.
  • FIG. 9 is a diagram showing a data repair processing operation of the memory device according to the first embodiment of the present invention.
  • FIG. 10 is a diagram showing a correction information acquiring operation in the data restoration system according to the first embodiment of the present invention.
  • FIG. 11 is a flowchart showing a procedure for writing correction data to a memory device according to the first embodiment of the present invention.
  • FIG. 12 is a flowchart showing a data read procedure of the memory device according to the first embodiment of the present invention.
  • FIG. 13 is a diagram showing a hardware configuration of a memory device according to the second embodiment of the present invention.
  • FIG. 14 is a diagram showing a processing operation 1 on the encrypted data of the memory device according to the second embodiment of the present invention.
  • FIG. 15 is a diagram showing a processing operation 2 on the encrypted data of the memory device according to the second embodiment of the present invention.
  • FIG. 16 is a diagram showing a write operation of the signed inspection information of the memory device in the third embodiment of the present invention.
  • FIG. 17 is a diagram illustrating an operation of writing the inspection information transmitted through the encryption communication path of the memory device according to the third embodiment of the present invention.
  • FIG. 18 is a diagram showing a write operation of the signed inspection information of the memory device according to the fourth embodiment of the present invention.
  • FIG. 19 is a diagram showing an operation of writing the unsigned inspection information of the memory device according to the fourth embodiment of the present invention.
  • FIG. 20 is a diagram showing a data processing operation of the memory device according to the fifth embodiment of the present invention.
  • FIG. 21 is a diagram illustrating a content distribution operation in the system according to the fifth embodiment of the present invention.
  • data corruption refers to data that has changed from the original data or that data has been lost.
  • the data restoration system receives a data to be downloaded by securing a transmission path between the server 10 that manages data to be downloaded and the server 10. It comprises a terminal 20 and a memory device 30 mounted on the terminal 20 for storing downloaded data.
  • the data to be downloaded is immutable data such as program data, music data, and map data that do not allow the user to change the data.
  • the server 10 divides the data into a plurality of blocks, generates inspection information (a hash value, a checksum, a CRC (Cyclic Redundancy Check), a signature, and the like) for each block, and generates the data. Maintain and manage the main unit and inspection information. Then, when there is a data request from the terminal 20, the data body of the data and the inspection information are downloaded to the terminal 20.
  • FIG. 3 shows an example of the inspection information.
  • This inspection information includes the file name of the data, the source information indicating the server name and URL (Uniform Resource Locator) of the data acquisition source, the name of the data issuing company, the file size, and the block size of each block. It contains the size and the hash value of each block.
  • URL Uniform Resource Locator
  • the memory device 30 is a storage medium called a memory card or the like, and includes a memory 31 composed of a flash memory or the like, and a memory controller 32 that controls writing / reading of data to / from the memory 31.
  • the memory controller 32 has tamper resistance, but the memory 31 is non-tamper resistant.
  • the data downloaded from the server 10 the data itself is stored in the memory 31 area of the memory device 30, and the inspection information is stored in the memory controller 32.
  • FIG. 2 shows a hardware configuration of the memory device 30.
  • the memory controller 32 has a CPU (Central Processing Unit) 323 for controlling the operation of the memory device 30 and a RAM (Random Access Unit) used as a work area by the CPU 323.
  • CPU Central Processing Unit
  • RAM Random Access Unit
  • ROM Read Only Memory
  • I / O input / output unit
  • FIG. 5 schematically shows data processing in the memory device 30.
  • the memory controller 32 includes a writing unit 327 that writes the data body to the memory 31 and writes the inspection information to the internal nonvolatile memory 324, a detection unit 328 that detects damage to the data body using the inspection information, A reading unit 329 for reading out the data body stored in 31 to the outside.
  • the functions of the writing unit 327, the inspection unit 328, and the reading unit 329 are realized by the CPU 323 performing the processing specified by the program.
  • the terminal 20 When writing the data downloaded from the server 10 to the memory device 30, the terminal 20 outputs the data itself and the detection information acquired from the server 10 to the memory device 30 together with the write request.
  • the writing unit 327 as shown in the flowchart of FIG.
  • Step ST 1 Write detection information including hash information of each block to the internal nonvolatile memory 324.
  • Step ST2 Write the file data itself to the memory 31.
  • the writing unit 327 When this writing process ends, the writing unit 327 outputs a write completion notification to the terminal 20.
  • the data to be read is checked for damage.
  • an inspection request for data corruption of the selected file is input from the terminal 20 to the memory device 30, and the inspection unit 328 performs the processing shown in the flow diagram of FIG.
  • Step ST10 The test information is read from the internal nonvolatile memory 324, and the range of each block is confirmed based on the "block size" information therein. The hash value for the data of the block of interest in the stored data body is calculated.
  • Step ST11 The calculated hash value is compared with the hash value of the corresponding block included in the inspection information, and if they do not match, the process proceeds to Step ST13.
  • Step ST13 An error report including the information specifying the block position, the block size, and the information of the issuer is created, and this error report is output to the terminal 20 as a check result.
  • Step ST12 The blocks are sequentially changed until the final block is reached, and the processing from step ST10 onward is repeated. When the final block is reached, the inspection processing is terminated and the inspection result indicating "normal" is sent to the terminal 20. Output to
  • the terminal 20 that has received the error inspection result obtains the block data including the damaged data from the server 10, and the memory device 30 uses this to restore the data in the memory 31.
  • FIG. 9 schematically shows the procedure of the data restoration processing.
  • the memory controller 32 of the memory device 30 includes, in addition to the internal nonvolatile memory 324 and the inspection unit 328, a correction unit 330 for restoring data stored in the memory 31.
  • the function of the correction unit 330 is realized by the CPU 323 performing the processing specified by the program.
  • the detection unit 328 of the memory device 30 uses the procedure of FIG. An error report including information is output to the terminal 20 as a check result (2).
  • the terminal 20 requests the data of the block in which the data corruption has occurred to the server 10 that has issued the data, with the error report as a trigger.
  • the server 10 reads out the data body of the corresponding block from the data to be managed and downloads the data to the terminal 20. (3).
  • FIG. 10 schematically shows this pattern.
  • the terminal 20 Based on the publisher (URL) received from the memory device 30, the location of the block containing the damaged data, and the block size, the terminal 20 sends the server 10 normal data on the block containing the damaged data (partial data) based on the block size.
  • the server 10 refers to the inspection information and returns the requested partial data to the terminal 20 (2).
  • acquiring information of a specific size from a specific position of a file on a server is a known technology, and is performed by an existing FTP (File Transfer Protocol) or HTTP (Hypertext Transfer Protocol) server. I have.
  • the terminal 20 which has acquired the data body of the block to be corrected creates partial correction information including this data body and information designating the block to be corrected, and outputs it to the memory device 30 together with the correction request (4) .
  • the modification unit 330 of the memory device 30 that has received the partial modification information performs data restoration according to the procedure shown in FIG.
  • Step ST20 The hash value of the data body of the block included in the partial correction information is calculated.
  • Step ST21 The calculated hash value is compared with the hash value of the corresponding block included in the inspection information stored in the internal nonvolatile memory 324. If they do not match, go to step ST24.
  • Step ST24 Perform "rewrite pre-processing" prompting the terminal 20 to re-acquire the data body of the block, and when the data body is acquired again, repeat the procedure from step ST20.
  • step ST21 If it is determined in step ST21 that the calculated hash value matches the hash value of the corresponding block included in the inspection information, the process proceeds to step ST22.
  • Step ST22 The data itself is overwritten in the memory 31.
  • Step ST23 If the partial modification information includes the data body of another block, repeat the procedure from step ST20 and write the partial modification information. When there is no more data to be included, the restoration process ends.
  • the correction unit 330 When the data restoration process is completed in this way, the correction unit 330 outputs a correction completion notification to the terminal 20 (5).
  • the reading unit 329 of the memory device 30 reads the corresponding data body from the memory 31 and outputs it to the terminal 20.
  • the reading unit 329 sends the data of each block to be read to the checking unit 328.
  • An inspection request for damage is issued, and the data of the blocks for which a "normal" inspection result is obtained are sequentially read.
  • the flow chart of FIG. 12 shows the operation of this read processing.
  • Step ST30 Upon receiving the file data read request, the read unit 329 transmits the requested file name to the check unit 328, and requests a check for file data corruption.
  • the inspection unit 328 Upon receiving the inspection request from the reading unit 329, the inspection unit 328 reads the inspection information of the corresponding file from the internal nonvolatile memory 324, confirms the range of each block from the block size, and checks the data stored in the memory 31. The hash value for the data of the block of interest in the main body is calculated.
  • Step ST31 The calculated hash value is compared with the hash value of the corresponding block included in the inspection information. If they do not match, go to step ST34.
  • Step ST34 Create an error report including the information specifying the block position, the block size, and the information of the issuer, and output the error report to the reading unit 329 as a check result.
  • the reading unit 329 that has received the error report outputs the error report to the terminal 20.
  • step ST31 the calculated hash value and the When the hash value of the corresponding block matches, the process proceeds to step ST32.
  • Step ST33 The process from step ST30 onward is repeated while sequentially changing the block until the last block of the specified file is reached. When the final block is reached, the reading process is terminated.
  • the terminal 20 receiving the error report from the reading unit 329 uses the error report as a trigger, acquires the data body of the block in which data corruption has occurred from the server 10 that issued the data, and the memory device 30 The data is restored using this. This processing is the same as that shown in FIG. 9 and FIG. Then, the inspection result of the repaired data becomes “normal”, and the reading unit 329 reads the repaired data body from the memory 31.
  • this inspection information is stored in the tamper-resistant storage area of the memory device and the data itself is stored in the non-tamper-resistant storage area of the memory device, all information is stored in the same manner as an IC card. Compared to storage in a tamper-resistant storage area, the configuration of the memory device can be simplified, and manufacturing at low cost becomes possible. You. Also, the inspection information stored in the tamper-resistant storage area can be protected from data destruction or tampering, so even if the data itself is damaged, it is possible to reliably detect data corruption using this inspection information. Normal data can be obtained externally and completely repaired.
  • FIG. 3 shows an example of the inspection information including the file name
  • the inspection information may not include the file name.
  • the URL of the file acquisition destination is represented as the issuer information
  • the URL differs for each file, and the file can be specified by the URL, so that the description of the file name in the inspection information becomes unnecessary.
  • the inspection information specifies the memory area of the memory device that stores the data body of each block, and as shown in Fig. 4, the block number representing the memory area and the hash value of the data body stored in the memory area If the inspection information is described in association with the inspection information, the inspection unit 328 of the memory device 30 can easily perform the processing when checking the data body stored in the memory 31 for damage.
  • FIG. 6 shows a write procedure when the data downloaded from the server 10 is written to the memory device 30 for the time being and the data corruption is detected at the time of reading. Can also be written.
  • the writing unit 327 and the inspection unit 328 of FIG. 5 perform the writing process shown in the flowchart of FIG. Step ST40:
  • the writing unit 327 of the memory device 30 writes the inspection information including the hash information of each block into the internal nonvolatile memory 324, and proceeds to Step ST41.
  • Step ST41 Write the data of one block to the memory 31.
  • Step ST42 The inspection unit 328 calculates a hash value of the data body of this block, and proceeds to step ST43.
  • Step ST43 The calculated hash value is compared with the hash value of the corresponding block included in the inspection information stored in the internal nonvolatile memory 324. They If they do not match, proceed to step ST45.
  • Step S T45 Prompt the terminal 20 to reacquire the data body of the block, and change the writing position of the reacquired data body from the position on the memory 31 where the original data body was written. If the data itself is reacquired, the procedure from step ST41 is repeated. Changing the write position of the data body is a measure to prevent the possibility that the memory area where the data has been damaged may be physically sparse.
  • Step ST44 It is determined whether or not the block is the last block. If the block is not the last block, the procedure from step ST41 is repeated. If the block is the last block, the write process is terminated.
  • the writing unit 327 When the writing process is completed, the writing unit 327 outputs a writing completion notification to the terminal 20.
  • writing of the data itself without data corruption is guaranteed, and the rate of occurrence of data corruption in inspection at the time of data reading can be reduced.
  • the terminal receives the error report from the memory device and re-acquires the block data including the data corruption. This is because the memory device informs the terminal of the data issuer. And a block position may be specified to issue a distribution request command to the publisher, and the terminal may reacquire data from the publisher according to the command.
  • this data restoration system uses inspection data generation units in blocks and limits the location of data corruption to a small area, collecting and analyzing information on data-corrupted blocks to obtain useful information. Can be obtained.
  • the server can perform the following angular analysis from the statistical information of the block requested for data recovery from each terminal.
  • the hardware of the memory device may be faulty. Based on the analysis results, information such as recommending repair or replacement of the memory device may be sent to the terminal. Service becomes possible.
  • the terminal will respond to a hard-air failure of the memory device or an external attack. Considering that there is a possibility, 1 stop receiving error report from memory device, 2 stop sending error report to server, 3 stop obtaining repair data from server , 4Replace the memory device, etc.
  • the terminal can also take steps to transfer data to a new memory device before the end of the life of the memory device if the usage count of the memory device exceeds the threshold.
  • the memory device itself may stop the autonomous function of data recovery depending on the frequency of data corruption. Stopping the autonomous function means stopping all or some of the functions in the memory device required for data acquisition and reading, such as the writing unit 327, the inspection unit 328, and the reading unit 329.
  • the conditions for stopping the autonomous function are when the number of data corruption detections exceeds the threshold, or when data corruption exceeding the threshold is detected within a certain period of time. (Period) Stop, 2 Stop until the next reset, 3 Complete stop (in this case, ask a specialist to recover the function).
  • the memory controller 32 includes a symbol coprocessor 331 for decrypting encrypted data.
  • Other configurations are the same as in the first embodiment (FIG. 2).
  • FIG. 14 schematically shows data processing in the memory device 30.
  • the memory controller 32 includes a decryption unit 332 for decrypting encrypted data, in addition to the write unit 327, the inspection unit 328, the read unit 329, and the internal nonvolatile memory 324.
  • the function of the decryption unit 332 is realized by the cryptographic coprocessor 331.
  • the server 10 of this system encrypts the file data, divides it into a plurality of blocks, generates inspection information (hash value, check sum, CRC, signature, etc.) for the data of each block, and encrypts the data. Holds and manages digitized data and inspection information. Then, when there is a data request from the terminal 20, the encrypted data and the inspection information are downloaded to the terminal 20.
  • the terminal 20 outputs the encrypted data and the inspection information acquired from the server 10 to the memory device 30 together with the write request.
  • the writing unit 327 of the memory controller 32 writes the detection information into the internal nonvolatile memory 324 and the encrypted data into the memory 31 according to the procedure shown in FIG. 6 or FIG.
  • the inspection unit 328 of the memory controller 32 calculates the hash value of the encrypted data of each block stored in the memory 31, and calculates the calculated hash value and the internal nonvolatile memory 324. Compare with the hash value of the corresponding block included in the inspection information stored in. If they match, a "normal" check result is output, and if they do not match, an error report is output.
  • the encrypted data of the block in which the inspection result of the inspection unit 328 is “normal” is decrypted by the decryption unit 332, and is read from the read unit 329.
  • Other operations are the same as those in the first embodiment.
  • FIG. 15 shows another embodiment in which data is encrypted.
  • the server 10 of this system divides the file data into a plurality of blocks, generates inspection information for each block of data, encrypts the data of each block, and retains the encrypted data and inspection information. I do. Then, when there is a data request from the terminal 20, the encrypted data and the inspection information are downloaded to the terminal 20.
  • the terminal 20 outputs the encrypted data and the inspection information obtained from the server 10 to the memory device 30 together with the write request.
  • the writing unit 327 of the memory controller 32 writes the inspection information to the internal nonvolatile memory 324 and the encrypted data to the memory 31 as in the case of FIG.
  • the inspection unit 328 of the memory controller 32 decrypts the encrypted data of each block stored in the memory 31 by the decryption unit 332 and calculates a hash value of the obtained data. Then, it compares with the hash value of the corresponding block included in the inspection information. If they match, it outputs a "normal" test result; if they do not match, it outputs an error report.
  • the reading unit 329 reads the data decoded by the decoding unit 332 to the outside only when the inspection result of the inspection unit 328 is “normal”.
  • data is encrypted and transmitted between the server and the terminal, and the data is encrypted and stored in the non-tamper-resistant memory area of the memory device.
  • a cryptographic coprocessor 331 is provided in the memory controller 32. Although the case has been described, the function of the cryptographic coprocessor 331 may be performed by the CPU 323 instead.
  • the server downloads the data divided into blocks and the signed test information to the terminal, and the memory device verifies the signature when storing the test information.
  • FIG. 16 schematically shows the data processing of the memory device 30.
  • the memory controller 32 includes a signature verification unit 333 that verifies the signature of the verification information, in addition to the writing unit 327 and the internal nonvolatile memory 324.
  • the function of the signature verification unit 333 is realized by the CPU 323 performing processing specified by the program.
  • the server 10 of this system stores and manages the data divided into a plurality of blocks and the inspection information, and when a data request is received from the terminal 20, the data itself, the inspection information with the signature, and the like. To terminal 20.
  • the terminal 20 outputs the data acquired from the server 10 and the signed inspection information to the memory device 30 together with the write request.
  • the writing unit 327 of the memory controller 32 passes the signed inspection information to the signature verification unit 333, and writes the data body to the memory 31.
  • the signature verification unit 333 verifies the signature attached to the inspection information, confirms that the inspection information has not been tampered with, and stores the inspection information in the internal nonvolatile memory 324. Other processing is the same as in the first embodiment.
  • the inspection information sent from the server is tampered with by a malicious third party before it is stored in the tamper-resistant memory area of the memory device. Can be prevented.
  • Fig. 17 shows that the inspection information is transmitted over an encrypted It shows a case of transmission.
  • the memory controller 32 includes a data writing unit 336 for writing data to the memory 31 and an inspection information writing unit 335 for writing inspection information to the internal nonvolatile memory 324.
  • the functions of the data writing unit 336 and the test information writing unit 335 are realized by the CPU 323 performing the processing specified by the program.
  • the inspection information is transmitted from the server 10 to the inspection information writing unit 335 of the memory device 30 via the encryption communication path.
  • This encrypted communication path is directly constructed by the server 10 and the test information writing unit 335, as in the case of secure messaging in an IC card.
  • the test information writing unit 335 writes the received test information into the tamper-resistant internal nonvolatile memory 324.
  • the data is transmitted from the server 10 to the memory device 30 via a normal transmission path, and the data writing unit 336 writes the received data to the memory 31.
  • the inspection information is written to the non-tamper-resistant memory area of the memory device, and the inspection information (inspection information for inspection information) for inspecting data corruption of the inspection information is stored in the memory device. Write to the memory area.
  • FIG. 18 schematically shows the data processing of the memory device 30.
  • the memory controller 32 includes a writing unit 327, a signature verification unit 333, and an internal nonvolatile memory 324, as in the case of FIG.
  • the main body and the signed inspection information are downloaded.
  • the writing unit 327 of the memory controller 32 passes the inspection information with the signature to the signature verification unit 333, and the signature verification unit 333 verifies the signature attached to the inspection information, and that the inspection information is not falsified. When confirming, the writing unit 327 writes the inspection information with the signature and the data body into the memory 31.
  • the signature verification unit 333 calculates a hash value for the inspection information and the signature (that is, the inspection information inspection information), and stores the inspection information inspection information in the internal nonvolatile memory 324.
  • the inspection unit 328 when inspecting the block for data corruption, the inspection unit 328 reads the signed inspection information from the memory 31 and confirms that the inspection information has not been corrupted by the inspection stored in the internal nonvolatile memory 324. Confirm using the information inspection information. Subsequent inspection processing is the same as in the first embodiment. If the inspection information is damaged, obtain the inspection information from the server again.
  • FIG. 19 schematically shows the data processing when the memory device 30 receives the data body and the unsigned inspection information from the server.
  • the memory controller 32 includes an inspection information inspection information generation unit 337 that generates inspection information inspection information, in addition to the writing unit 327 and the internal nonvolatile memory 324.
  • the function of the inspection information inspection information generating unit 337 is realized by the CPU 323 performing the processing specified by the program.
  • the server 10 of this system downloads the data itself and the unsigned inspection information to the terminal 20.
  • this inspection information may be transmitted using an encrypted communication channel as shown in FIG.
  • the writing unit 327 of the memory controller 32 Upon receiving the data body and the test information, the writing unit 327 of the memory controller 32 transmits the test information to the test information test information generation unit 337 and writes the test information and the data body into the memory 31.
  • the inspection information inspection information generation unit 337 calculates a hash value (ie, inspection information inspection information) for the inspection information data, and internally stores the inspection information inspection information. Stored in the origin memory 324.
  • the inspection unit 328 when inspecting the data stored in the memory 31 for data corruption, the inspection unit 328 reads the inspection information from the memory 31 and notifies the internal nonvolatile memory 324 that no damage has occurred in the inspection information. Confirm using the stored inspection information for inspection information. Subsequent inspection processing is the same as in the first embodiment. If the inspection information is damaged, obtain the inspection information from the server again.
  • the use of the tamper-resistant memory area can be reduced by placing the inspection information itself in the non-tamper-resistant memory 31.
  • the inspection information stored in the non-tamper-resistant memory 31 may be damaged during the period from writing to reading, but the inspection information for the inspection information should be held in a tamper-resistant memory area.
  • FIG. 20 schematically shows data processing of the memory device 30 in this system.
  • the memory controller 32 includes an inspection information updating unit 334 that performs an inspection information updating process, in addition to the inspection unit 328, the reading unit 329, the correcting unit 330, and the internal nonvolatile memory 324.
  • the function of the test information updating unit 334 is realized by the CPU 323 performing a process specified by the program.
  • the server 10 of this system divides, for example, newly created program data into a plurality of blocks, and holds and manages the data body of each block and its inspection information. Then, only the new inspection information is downloaded to the terminal 20 in response to a request from the terminal 20 or by a push-type service.
  • the terminal 20 outputs the new test information acquired from the server 10 to the memory device 30 together with a request for updating the test information.
  • the test information updating unit 334 of the memory controller 32 writes the new test information into the internal nonvolatile memory 324.
  • the program data corresponding to this new inspection information has not been stored in the memory 31 yet.
  • a data read request is output from the terminal 20 to the memory device 30 based on the user's operation (1).
  • the read unit 329 of the memory controller 32 that has received the read request outputs a test request to the test unit 320 according to the procedure shown in FIG.
  • the inspection unit 328 reads the new inspection information from the internal nonvolatile memory 324, reads the data body stored in the memory 31, and attempts to calculate the hash value of the data. However, since the corresponding data is not stored in the memory 31, an error report is output to the reading unit 329 as an inspection result.
  • the reading unit 329 receiving the error report outputs it to the terminal 20 (2).
  • the terminal 20 uses the error report as a trigger to request program data corresponding to the inspection information to the server 10 that has issued the information, and the server 10 downloads the program data to the terminal 20.
  • the terminal 20 that has obtained this data creates partial correction information including this data and outputs it to the memory device 30 together with the correction request (3).
  • the correction unit 330 of the memory device 30 receives the partial correction information, the correction unit 330 of the memory device 30 writes the program data into the memory 31 according to the procedure shown in FIG. 11 and outputs a correction completion notification to the terminal 20 (4).
  • the inspection unit 328 When the program data is written to the memory 31, the inspection unit 328 notifies the reading unit 329 of the inspection result indicating that the data is “normal”, and the reading unit 329 reads the program data from the memory 31 and reads the program data from the memory 31. Output to terminal 20 (5).
  • the inspection information held in the memory device is updated in advance, and the data body corresponding to the inspection information is updated until the time of use. Can be delayed.
  • Fig. 21 shows an application example of this system, in which the server 10, the inspection information and the catalog information are downloaded to the terminal 20 in advance, and when the user desires the content to be displayed in the power tag information, The procedure of the system for downloading content data to the terminal 20 is shown. First, the terminal 20 acquires the catalog information and the inspection information from the server 10.
  • the terminal 20 writes the obtained catalog information and inspection information to the memory device 30.
  • the catalog information and the inspection information are written in the tamper-resistant memory area of the memory device 30.
  • the terminal 20 refers to the catalog information stored in the memory device 30.
  • the terminal 20 reads the content data corresponding to the catalog information from the memory device 30.
  • the memory device 30 returns an error report to the terminal 20.
  • the terminal 20 requests the content data from the server 10, and the server 10 distributes the content to the terminal 20.
  • the terminal 20 writes the content data in the non-tamper-resistant memory area of the memory device 30.
  • the memory device 30 reads out the content data to the terminal 20 while checking the data for damage.
  • the catalog information and inspection information may be stored in the memory device in advance.
  • catalog information may be stored in a non-tamper-resistant memory area.
  • the distribution of the data body can be delayed until the data body is needed.
  • the terminal when the data of the delivered content is damaged, the terminal can automatically restore the content data based on the inspection information. Therefore, by selling this inspection information, automatic It will be possible to provide restorable content distribution services and services for data repair, and new businesses will be established.
  • the memory controller performs a check for data corruption in response to an external trigger (inspection request, read request) by an external trigger (inspection request, read request). It may be possible to inspect for damage and report the result of inspection to the outside if data is damaged.
  • the data and the inspection information stored in the memory device are downloaded from the server has been described.
  • the data and / or the inspection information may be written at the time of manufacturing or distributing the memory device.
  • the memory device in the present invention includes not only a card-type memory device but also other types of storage devices such as a hard disk.
  • the memory device of the present invention stores the inspection information in the tamper-resistant storage area and stores the data itself in the non-tamper-resistant storage area. Compared to storing in a tamper-resistant storage area, more data can be stored, and manufacturing at low cost becomes possible. In addition, even if the data itself is damaged, the data corruption can be reliably detected and completely repaired using the inspection information stored in the tamper-resistant storage area.
  • the storage efficiency of the memory device can be increased.
  • the unit of generation of inspection information is not the whole data but blocks, it is possible to limit data corruption to a small area, and to reduce the data communication time when acquiring normal data for repair from outside. It can be shortened.
  • a content distribution service that delays the distribution of the data body until the data body is needed, or a content distribution service that can automatically restore the content data when it is damaged is provided. Or provide services for data repair, enabling the development of new businesses.
  • the present invention is suitable for use in, for example, a system for downloading data such as a program that defines processing of a terminal device from a server to the terminal device via a network.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • Quality & Reliability (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Storage Device Security (AREA)

Description

明 細 書 メモリデバイス、 端末装置及ぴデータ修復システム 技術分野
本発明は、 ダウンロードしたデータの破損箇所を修復する修復システムと、 そのシステムを構成するメモリデバイス及び端末装置に関し、 特に、 メモリデ バイスに記録されたデ一タを効率的に修復できるようにするものである。 背景技術
従来から、 端末装置の処理を規定するプログラムなどのデータを、 サーバか らネットワークを通じて端末装置にダウンロードすることは広く行われてい る。端末装置の記憶手段に格納されたデータは、ダウンロード時の送信異常や、 ハード装置の故障、 ウィルスによるデータ消失、 外部からの攻撃による破壊な ど、 様々な原因で破損する場合がある。
こうしたデータの破損は、 サーバがデータとともに伝送したチェックサムな どの検査情報と、記憶手段に格納したデータから計算したチェックサムとの一 致を検査することにより発見できる。
蓄積したデータを外部からの破壊や改竄から守る必要がある場合は、 I C力 ードなどの耐タンパ性 (外部からの攻撃に対する耐性) を備えた記憶手段にデ ータを格納することが行われている。 耐タンパ性は、 ダミー回路を設けたり、 処理時間を一定時間内に制限したり、熱や電磁波の影響を受けない構造にした りして実現される。
また、 破損してしまったデータを修復する方法として、 特開平 4一 3 4 0 1 5 0号公報には、 データの異常を発見した場合に、 端末装置がサーバにダウン ロード要求を発し、 サーバから改めてプログラムデータのダウンロードを受け る方式が記載されている。 また、 特開平 1 1一 1 8 4 7 0 5号公報には、 端末装置が第 1及び第 2の記 憶手段を持ち、 ダウンロードされたデータをこれらの記憶手段の双方に重複し て格納し、 第 1の記憶手段で記憶するデータが破損した場合に、 第 2の記憶手 段で記憶するデータを第 1の記憶手段に上書きする方式が記载されている。 し力、し、 耐タンパ性の記憶装置は、 コストが高く、 また、 多くの記憶容量を 確保することができない。 そのため、 データ量の多い音楽データなどを蓄積す ることは不可能である。
また、 データの破損が発見された際にサーバから改めてデータのダウンロー ドを受ける方式では、 そのダウンロードのために多くの通信時間が必要になる と言う問題点がある。
また、 データを重複して保持する方式では、 端末装置が多くの記憶容量を備 えた記憶手段を持たなければならないと言う問題点がある。
また、 近年は携帯端末による、 物品やエンタテイメントコンテンツデータの 購入、ネットバンキングなどの E C (電子商取引)が浸透し始めている。また、 アドレス帳やスケジュール管理の用途としても用いられている。 これらの情報 をネットワーク上のサーバで管理することも可能であるが、 情報を取り出すま でにかかるタイムラグや、 ネットワーク障害時に必要な情報にアクセスできな い場合があるという問題をかかえることになる。 よって、 これらの情報を含め て、 携帯端末で取り扱うデータの記憶媒体として、 すぐにアクセス可能で、 十 分な容量を持つカードデバイスの需要は大きい。 しカゝし、 同時に、 カードデバ イスの情報が破損した際に、 確実にかつ少ないコスト (時間含む) で情報を修 復できないと、 それらの情報の処理にとって障害となるばかりではなく、 ユー ザに対して不利益を与え、新しいサービスの普及にとって大きな妨げとなって しまう。 また、新しいサービスが拡大して行かないことは、 I T (Information Technology) 技術そのものの発展にとっても妨げとなる。 発明の開示 本発明の目的は、 破損したデータの修復を効率的に行うことができるデータ 修復システムと、 そのシステムを実現するメモリデバイス及ぴ端末装置を提供 することである。 '
この目的は、 耐タンパ性のメモリ領域と非耐タンパ性のメモリ領域とをメモ リデバイスに設け、 非耐タンパ性のメモリ領域にデータを格納し、 耐タンパ性 のメ,モリ領域に前記データの破損の検査に用いる検査情報を格納することに より達成される。 図面の簡単な説明
図 1は、 本発明の実施の形態 1におけるデータ修復システムの全体構成を示 す図、
図 2は、 本発明の実施の形態 1におけるメモリデバイスのハードウエア構成 を示す図、 .
図 3は、 本発明の実施の形態 1における検査情報の第 1のデータ構成例を示 す図、
図 4は、 本発明の実施の形態 1における検査情報の第 2のデータ構成例を示 す図、
図 5は、本発明の実施の形態 1におけるメモリデバイスのデータ処理動作を 示す図、
図 6は、 本発明の実施の形態 1におけるメモリデバイスの書き込み手順を示 すフロー図、
図 7は、 本発明の実施の形態 1におけるメモリデバイスのデータ破損検査を 伴う書き込み手順を示すフ口一図、
図 8は、 本発明の実施の形態 1におけるメモリデバイスのデータ破損検査手 順を示すフロー図、
図 9は、本発明の実施の形態 1におけるメモリデバイスのデータ修復処理動 作を示す図、 図 1 0は、 本発明の実施の形態 1におけるデータ修復システムでの修正情報 取得動作を示す図、
図 1 1は、 本発明の実施の形態 1におけるメモリデバイスの修正データ書き 込み手順を示すフロー図、
図 1 2は、 本発明の実施の形態 1におけるメモリデバイスのデータ読み出し 手順を示すフロー図、
図 1 3は、 本発明の実施の形態 2におけるメモリデバイスのハードウェア構 成を示す図、
図 1 4は、 本発明の実施の形態 2におけるメモリデバイスの暗号化データに 対する処理動作 1を示す図、
図 1 5は、 本発明の実施の形態 2におけるメモリデバイスの暗号化データに 対する処理動作 2を示す図、
図 1 6は、本発明の実施の形態 3におけるメモリデバイスの署名付き検査情 報の書き込み動作を示す図、
図 1 7は、本発明の実施の形態 3におけるメモリデバイスの暗号通信路で伝 送された検査情報の書き込み動作を示す図、
図 1 8は、 本宪明の実施の形態 4におけるメモリデバイスの署名付き検査情 報の書き込み動作を示す図、
図 1 9は、 本発明の実施の形態 4におけるメモリデバイスの署名無し検査情 報の書き込み動作を示す図、
図 2 0は、 本発明の実施の形態 5におけるメモリデバイスのデータ処理動作 を示す図、 及び、
図 2 1は、 本発明の実施の形態 5におけるシステムでのコンテンツ配信動作 を示す図である。 発明を実施するための最良の形態
以下、 本発明の実施の形態について、 図面を用いて説明する。 なお、 本明細 書においてデータの破損とは、 データが本来のデータから変化したり、 データ が欠落したりしたものを言う。
(実施の形態 1 )
本発明の実施形態 1におけるデータ修復システムは、 図 1に示すように、 ダ ゥンロードの対象のデータを管理するサーバ 10と、サーバ 10との伝送路を確 保してダウンロードされるデータを受信する端末 20と、端末 20に装着されて ダウンロードしたデータを記憶するメモリデバイス 30とで構成される。
ダウンロード対象のデータは、 ユーザによるデータの変更を許さないプログ ラムデータや音楽データ、地図データなどの不変データである。サーバ 10は、 これらのデータを複数のブロックに分割して、 各ブロックに、 そのブロックの データに対する検査情報 (ハッシュ値、 チェックサム、 C R C ( Cyclic Redundancy Check) 、 署名など) を生成し、 そのデータ本体と検査情報とを 保持 '管理する。 そして、 端末 20からデータの要求があると、 そのデータの データ本体と検査情報とを端末 20にダウンロードする。
図 3は、 検査情報の一例を示している。 この検査情報には、 データのフアイ ノレ名と、 データ取得先のサーバ名や U R L (Uniform Resource Locator) 、 デ ータ発行会社名などを表す発行元の情報と、 フアイルサイズと、 各ブロックの ブロックサイズと、 各プロックのハッシュ値とが含まれている。
メモリデバイス 30は、 メモリカード等と称せられる記憶媒体であり、 フラ ッシュメモリ等から成るメモリ 31と、メモリ 31へのデータの書き込み/読み 出しを制御するメモリコントローラ 32 とを備えている。 メモリコントローラ 32は、耐タンパ性を備えているが、 メモリ 31は非耐タンパである。 サーバ 10 からダウンロードされたデータの内、 データ本体はメモリデバイス 30のメモ リ 31の領域に格納され、 検査情報はメモリコントローラ 32に格納される。 図 2は、 メモリデバイス 30のハード構成を示している。 メモリコントロー ラ 32 は、 メモリデバイス 30 の動作を制御する C P U (Central Processing Unit) 323と、 C P U323が作業領域として使用する R AM (Random Access Memory) 322 と、 C P U323の動作を規定するプログラムが格納された R O M (Read Only Memory) 321 と、 E E P R O M (Electrically Erasable Programmable Read Only Memory)等から成る耐タンパ性を有する内部不揮 発性メモリ 324と、 端末 20との間でデータを入出力する入出力部 ( I /O) 325と、 メモリ 31との間の 1 /〇326とを備えている。
図 5は、 メモリデバイス 30におけるデータ処理を模式的に示している。 メ モリコントローラ 32は、 メモリ 31にデータ本体を書き込み、 内部不揮発性メ モリ 324に検査情報を書き込む書込部 327と、検査情報を用いてデータ本体の 破損を検出する検查部 328と、 メモリ 31に格納されたデータ本体を外部に読 み出す読出部 329 とを備えている。 この書込部 327、 検査部 328及び読出部 329の各機能は、 C P U323がプログラムで規定された処理を行うことにより 実現される。
サーバ 10からダウンロードしたデータをメモリデバイス 30に書き込む場合、 端末 20は、サーバ 10から取得したデータ本体と検查情報とを書き込み要求と ともにメモリデバイス 30に出力する。
書込部 327は、 図 6のフロー図に示すように、
ステップ S T 1 :各プロックのハッシュ情報を含む検查情報を内部不揮発性 メモリ 324に書き込む。
ステップ S T 2 : ファイルのデータ本体をメモリ 31に書き込む。
この書き込み処理が終了すると、 書込部 327は、 端末 20に書き込み完了通 知を出力する。
また、 メモリデバイス 30からデータを読み出す場合は、 読み出すべきデー タの破損の有無が検査される。 この場合、 端末 20からメモリデバイス 30に、 選択したファイルのデータ破損の検査要求が入力し、検査部 328は、 図 8のフ ロー図に示す処理を行う。
ステップ S T 10 :内部不揮発性メモリ 324から検査情報を読み出し、その中 の "プロックサイズ" の情報を基に各ブロックの範囲を確認し、 メモリ 31に 格納されたデータ本体の着目するブロックのデータに対するハッシュ値を計 算する。
ステップ S T 11:算出したハッシュ値と、検査情報に含まれる該当するブロ ックのハッシュ値とを比較し、 それらが一致しないときは、 ステップ S T 13 に進む。
ステップ S T 13 :そのブロック位置を特定する情報とプロックサイズと発行 元の情報とを含むエラー報告を作成し、 このエラー報告を検査結果として端末 20に出力する。
また、ステップ S T 11において、算出したハッシュ値と検査情報に含まれる 該当するプロックのハッシュ値とが一致するときは、 ステップ S T 12に進む。 ステップ S T 12:最終ブロックに達するまで、順次プロックを変えてステツ プ S T 10以下の処理を繰り返し、最終プロックに達した場合は検査処理を終了 して、 "正常" を表す検查結果を端末 20に出力する。
エラーの検査結果を受けた端末 20は、 破損データを含むプロックのデータ をサーバ 10から取得し、 メモリデバイス 30は、 これを用いてメモリ 31のデ ータを修復する。 図 9は、 このデータ修復処理の手順を模式的に示している。 このメモリデバイス 30のメモリコントローラ 32は、内部不揮発性メモリ 324 及び検査部 328の他に、 メモリ 31に格納されたデータを修復する修正部 330 を備えている。 この修正部 330の機能は、 C P U323がプログラムで規定され た処理を行うことにより実現される。
端末 20から破損データの検查要求が入力すると (1 ) 、 メモリデバイス 30 の検查部 328は、 図 8の手順により、 データ破損が生じているブロック位置を 特定する情報、 プロックサイズ及び発行元情報を含むエラー報告を検査結果と して端末 20に出力する (2 ) 。
端末 20は、 このエラー報告をトリガーとして、 データ破損が生じているブ 口ックのデータを発行元のサーバ 10に要求する。 サーバ 10は、管理するデー タの中から、 該当するブロックのデータ本体を読み出して端末 20にダウン口 ードする (3 ) 。
図 1 0は、 この模様を模式的に示している。 端末 20は、 メモリデバイス 30 から受信した発行元 (U R L) 、 破損データを含むプロック位置、 ブロックサ ィズを基に、サーバ 10に対して、破損データを含むプロックの正常データ (部 分データ) を要求する (①) 。 サーバ 10は、 検査情報を参照し、 要求された 部分データを端末 20に返送する (②) 。 このように、 サーバ上のファイルの 特定位置から特定サイズ分の情報を取得することは既知の技術であり、 既存の F T P (File Transfer Protocol)や、 H T T P (Hypertext Transfer Protocol) サーバにおいても行われている。
修正すべきプロックのデータ本体を取得した端末 20は、 このデータ本体と 修正すべきプロックを指定する情報とを含む部分修正情報を作成して、 修正要 求とともにメモリデバイス 30に出力する ( 4 ) 。
部分修正情報を受信したメモリデバイス 30の修正部 330は、 図 1 1に示す 手順でデータの修復を実行する。
ステップ S T20:部分修正情報に含まれるブロックのデータ本体のハッシュ 値を計算する。
ステップ S T21 :算出したハッシュ値と、内部不揮発性メモリ 324に格納さ れた検査情報に含まれる該当するプロックのハッシュ値とを比較する。 それら が一致しないときは、 ステップ S T24に進む。
ステップ S T24:端末 20にそのプロックのデータ本体を再取得するように 促す "再書き込み用前処理" を行い、 データ本体が再取得された場合に、 ステ ップ S T 20からの手順を繰り返す。
また、ステップ S T21において、算出したハッシュ値と検査情報に含まれる 該当するブロックのハッシュ値とがー致するときは、 ステップ S T22に進む。 ステップ S T22:そのデータ本体をメモリ 31に上書きする。
ステップ S T 23:部分修正情報の中に他のブロックのデータ本体が含まれて いる場合は、ステップ S T20以降の手順を繰り返し、部分修正情報の中に書き 込むべきデータ本体が無くなれば修復処理を終了する。
こうしてデータの修復処理が終了すると、 修正部 330は、 端末 20に修正完 了通知を出力する (5 ) 。
データが修復された場合、 検查部 328の検査結果は "正常" になる。
端末 20がメモリデバイス 30から "正常" の検査結果を得たファイルデータ の読み出しを要求すると、メモリデバイス 30の読出部 329は、メモリ 31から 該当するデータ本体を読み出して端末 20に出力する。
また、 端末 20がメモリデバイス 30に、 データ破損の検査を経ずに、 フアイ ルデータの読み出しを要求した場合には、読出部 329から検査部 328に対して、 読み出そうとする各ブロックのデータ破損についての検査要求が出され、 "正 常" の検査結果が得られたブロックのデータが順次読み出される。 図 1 2のフ ロー図は、 この読み出し処理の動作を示している。
ステップ S T 30 :ファイルデータの読み出し要求を受けた読出部 329は、要 求されたファイル名を検査部 328に伝えて、ファイルデータの破損の検査を要 求する。
読出部 329から検査要求を受けた検査部 328は、 内部不揮発性メモリ 324か ら該当するファイルの検查情報を読み出し、 ブロックサイズから各プロックの 範囲を確認して、 メモリ 31に格納されたデータ本体の着目するブロックのデ ータに対するハッシュ値を計算する。
ステップ S T 31:算出したハッシュ値と、検査情報に含まれる該当するブロ ックのハッシュ値とを比較する。 それらが一致しないときは、 ステップ S T 34 に進む。
ステップ S T 34:そのブロック位置を特定する情報とブロックサイズと発行 元の情報とを含むエラー報告を作成し、 このエラー報告を検査結果として読出 部 329に出力する。 エラー報告を受けた読出部 329は、 エラー報告を端末 20 に出力する。
また、ステップ S T 31において、計算したハッシュ値と検査情報に含まれる 該当するプロックのハッシュ値とがー致するときは、 ステップ S T32に進む。 ステップ S T 32 :検査部 328は、 ブロック位置を特定する情報と、 そのプロ ックが "正常"であることを表す情報とを検査結果に含めて読出部 329に伝え、 読出部 329は、 そのブロックのデータ本体をメモリ 31から読み出す。
ステップ S T 33:指定されたファイルの最終ブロックに達するまで、順次ブ 口ックを変えてステップ S T 30以下の処理を繰り返し、最終プロックに達した 場合は読み出し処理を終了する。
また、 読出部 329からエラー報告を受けた端末 20は、 このエラー報告をト リガ一として、 データ破損が生じているブロックのデータ本体を発行元のサー バ 10から取得し、 メモリデバイス 30は、それを用いてデータの修復処理を行 う。 この処理は、 図 9及び図 1 1で示したものと同じである。 そして、 修復さ れたデータの検査結果は "正常" となり、 読出部 329は、 修復されたデータ本 体をメモリ 31から読み出す。
この読み出し処理では、 検査結果が "正常" と判定されたプロックのデータ 本体を直ぐに読み出しているため、 検査終了からデータ読み出しの間にデータ 破損が発生する可能性をゼロにすることができる。
このように、 このデータ修復システムでは、 メモリデバイスに蓄積したデー タが破損しているとき、 正常データを外部から取得して修復しているため、 バ ックァップ用のデータを重複して保持する場合に比べて、 メモリデバイスの蓄 積効率を高めることができる。 また、 検査情報の生成単位を、 データ全体では なく、 ブロック単位としているため、 データ破損個所を小さな範囲に限定する ことができ、修復用の正常データを外部から取得する際のデータ通信時間を短 縮することができる。
また、 この検査情報をメモリデバイスの耐タンパ性の蓄積領域に格納し、 デ ータ本体をメモリデバイスの非タンパ性の蓄積領域に格納しているため、 I C カードのように全ての情報を耐タンパ性の蓄積領域に格納する場合に比べて、 メモリデバイスの構成を簡素化することができ、 低コストでの製造が可能にな る。 また、 耐タンパ性の蓄積領域に格納した検査情報は、 データ破壊や改竄か ら守ることができるため、 データ本体が破損した場合でも、 この検査情報を用 いてデータ破損を確実に検出することができ、 正常データを外部から取得して 完全に修復することができる。
なお、 図 3では、 ファイル名を含む検査情報の例を示したが、 図 4に示すよ うに、 検査情報にファイル名を含めないことも可能である。 この場合、 発行元 の情報としてファイル取得先の U R Lを表すようにすれば、 ファイルごとに U R Lが異なり、 U R Lでファイルが特定できるので、 検査情報へのファイル名 の記述が不要になる。
また、 検査情報で各プロックのデータ本体を格納するメモリデバイスのメモ リ領域を指定し、 図 4に示すように、 そのメモリ領域を表すブロック番号と、 そのメモリ領域に格納するデータ本体のハッシュ値とを対応付けて検查情報 に記述するようにすれば、メモリデバイス 30の検査部 328がメモリ 31に格納 されたデ一タ本体の破損をチェックする場合に、 その処理が容易になる。
また、 図 6では、 サーバ 10からダウンロードしたデータをメモリデバイス 30に取り敢えず書き込み、読み出し時にデータ破損を検出する場合の書き込み 手順について示しているが、 データの書き込み時にデータ破損をチェックし、 正常なデータを書き込むようにすることも可能である。 この場合、 図 5の書込 部 327及び検査部 328により、図 7のフロー図に示す書き込み処理が行われる。 ステップ S T40:メモリデバイス 30の書込部 327は、 各ブロックのハツシ ュ情報を含む検査情報を内部不揮発性メモリ 324に書き込み、ステップ S T41 に進む。
ステップ S T41:—つのプロックのデータ本体をメモリ 31に書き込む。 ステップ S T 42:検査部 328は、 このブロックのデータ本体のハッシュ値を 計算し、 ステップ S T43に進む。
ステップ S T43 :算出したハッシュ値と、内部不揮発性メモリ 324に格納し た検査情報に含まれる該当するプロックのハッシュ値とを比較する。 それらが 一致しないときは、 ステップ S T45に進む。
ステップ S T45:端末 20にそのブロックのデータ本体を再取得するように 促し、 また、 再取得したデータ本体の書き込み位置を元のデータ本体が書き込 まれていたメモリ 31上の位置から変更する "再書き込み用前処理" を行い、 データ本体が再取得された場合に、ステップ S T41からの手順を繰り返す。な お、 データ本体の書き込み位置の変更は、 データ破損の生じたメモリ領域が、 物理的に壌れてレ、る可能性があり、 そのための措置である。
また、ステップ S T43において、算出したハッシュ値と検査情報に含まれる 該当するプロックのハッシュ値とがー致するときは、 ステップ S T 44に進む。 ステップ S T44 :そのプロックが最終プロックであるか否かを識別し、最終 ブロックでなければ、ステップ S T41以降の手順を繰り返し、最終ブロックで あれば、 書き込み処理を終了する。
書き込み処理が終了すると、 書込部 327は、 端末 20に書き込み完了通知を 出力する。 こうした処理により、 データ破損を含まないデータ本体の書き込み が保証され、 データ読み出し時の検査において、 データ破損が発生する割合を 低減することができる。
また、 ここでは、 端末が、 メモリデバイスからエラー報告を受けて、 データ 破損を含むブロックデータの再取得を実行しているが、 これは、 メモリデバイ スが、 端末に対して、 データの発行元とブロック位置とを指定して発行元への 配信要求命令を出し、 端末がその命令に従って発行元からデータを再取得する、 と言う形態であっても良い。
また、 このデータ修復システムでは、 検査情報の生成単位をブロック単位と し、 データ破損個所を小さな範囲に限定しているため、 データが破損したプロ ックの情報を収集、 解析して有益な情報を得ることができる。
サーバは、各端末からデータ復旧のために要求されたブロックの統計情報か ら次のような角军析が可能である。
固定データの同一個所の破損が多数のユーザで発生する場合は、①プログラ ムのバグによるデータ破壊の可能性がある。 ②データ (例えば、 音楽ファイル など) の不正利用方法が流布している可能性がある。
また、 プログラムの同一個所の破損が多数のユーザで発生する場合は、 ①ゥ ィルスによるプログラム改竄の可能性がある。 ②プロダラム不正改造方法が流 布している可能性がある。
また、 同一ユーザによる修正が頻発する場合は、 メモリデバイスのハードウ エアが故障している可能性があり、 この解析結果を基に、 メモリデバイスの修 理ゃ交換を勧める情報を端末に送るなどのサービスが可能になる。
また、端末は、メモリデバイスからのエラ一報告の回数が閾値を越えた場合、 あるいは、 一定時間内に閾値を越えるエラー報告を受けた場合に、 メモリデバ ィスのハードゥエア故障や外部からの攻撃の可能性があるものと見て、 ①メモ リデバイスからのエラ一報告の受付を停止する、 ②ェラ一報告のサーバへの送 出を停止する、 ③サーバからの修復データの取得を停止する、 ④メモリデバイ スを交換する、 等の措置を取ることができる。
また、 端末は、 メモリデバイスの利用回数が閾値を越えた場合、 メモリデバ イスの寿命が尽きる前に、 新しいメモリデバイスにデータを移し変える措置を 取ることもできる。
また、 データ破損の頻度により、 メモリデバイス自身がデータ修復の自律機 能を停止するようにしても良い。自律機能の停止とは、書込部 327、検査部 328、 読出部 329などの、データ取得や読み出しに必要なメモリデバイス内の全部ま たは一部の諸機能を停止させることである。 自律機能停止の条件は、 データ破 損の検出回数が閾値を越えた場合、 あるいは、 一定期間内に閾値を越えるデー タ破損を検出した場合などであり、 停止の形態は、 ①一定期間 (一定周期) 停 止する、 ②次回のリセットまで停止する、 ③完全停止する (この場合、 専門業 者に依頼して機能回復を図る) 、 などである。
(実施の形態 2 )
実施の形態 2では、 暗号化されたデータ本体をメモリデバイスに格納するデ ータ修復システムについて説明する。
このメモリデバイスは、 図 1 3に示すように、 メモリコントローラ 32が、 暗号化データを復号化する喑号コプロセッサ 331を備えている。その他の構成 は実施の形態 1 (図 2 ) と変わりがない。
図 1 4は、 このメモリデバイス 30におけるデータ処理を模式的に示してい る。 メモリコントローラ 32は、 書込部 327、 検査部 328、 読出部 329及び内 部不揮発性メモリ 324の他に、暗号化データを復号化する復号部 332を備えて いる。 この復号部 332の機能は、 暗号コプロセッサ 331により実現される。 このシステムのサーバ 10は、 ファイルデータを暗号化した後、 複数のブロ ックに分割し、 各ブロックのデータに対する検査情報 (ハッシュ値、 チヱック サム、 C R C、署名など) を生成して、その暗号化データと検査情報とを保持■ 管理する。 そして、 端末 20からデータの要求があると、 暗号化データと検査 情報とを端末 20にダウンロードする。
端末 20は、サーバ 10から取得した暗号ィヒデータと検査情報とを書き込み要 求とともにメモリデバイス 30に出力する。
メモリコントローラ 32の書込部 327は、 図 6または図 Ίに示す手順で、 検 查情報を内部不揮発性メモリ 324に、 また、 暗号化データをメモリ 31に書き 込む。
メモリコントローラ 32の検査部 328は、 暗号化データの破損を検査する場 合、メモリ 31に格納された各ブロックの暗号化データのハッシュ値を計算し、 算出したハッシュ値と、内部不揮発性メモリ 324に格納された検査情報に含ま れる該当するプロックのハッシュ値とを比較する。 そして、 それらが一致する ときは "正常" の検査結果を出力し、 不一致であるときはエラー報告を出力す る。
また、メモリデバイス 30に格納されたデータを読み出す場合は、検査部 328 の検査結果が "正常"であるプロックの暗号化データが復号部 332で復号化さ れ、 読出部 329から読み出される。 その他の動作は実施の形態 1と変わりがない。
また、 図 1 5は、 データを暗号ィヒする場合の他の形態を示している。
このシステムのサーバ 10は、 フアイルデータを複数のブロックに分割し、 各プロックのデータに対する検査情報を生成した後、 各プロックのデータを暗 号化し、 その暗号化データと検査情報とを保持 '管理する。 そして、 端末 20 からデータの要求があると、 暗号化データと検査情報とを端末 20にダウン口 ードする。
端末 20は、サーバ 10から取得した暗号化データと検査情報とを書き込み要 求とともにメモリデバイス 30に出力する。
メモリコントローラ 32の書込部 327は、 図 1 4の場合と同様に、 検査情報 を内部不揮発性メモリ 324に、 また、 暗号化データをメモリ 31に書き込む。 メモリコントローラ 32の検査部 328は、 暗号化データの破損を検査する場 合、 メモリ 31に格納された各プロックの暗号化データを復号部 332で復号化 し、 得られたデータのハッシュ値を計算して、 検査情報に含まれる該当するブ ロックのハッシュ値と比較する。 そして、 それらが一致するときは "正常" の 検査結果を出力し、 不一致であるときはエラー報告を出力する。
また、 読出部 329は、 検査部 328の検査結果が "正常" である場合にだけ、 復号部 332で復号化されたデータを外部に読み出す。
その他の動作は実施の形態 1と変わりがない。
このように、 図 1 4では、 暗号化したデータの検査情報を用いてデータ破損 を検査し、 図 1 5では、 復号化したデータの検査情報を用いてデータ破損を検 査しているが、 いずれの場合でも、 暗号化データを復号化して読み出すには、 必ず検査部の検査手順を通らなければならない。
このシステムでは、サーバと端末との間で、データが暗号化されて伝送され、 また、 メモリデバイスの非耐タンパのメモリ領域にデータが暗号化されて蓄積 されるため、 データのセキュリティを守ることができる。
なお、 ここでは、 メモリコントローラ 32に暗号コプロセッサ 331を設ける 場合について説明したが、暗号コプロセッサ 331の機能を C P U323が代わつ て行うようにしても良い。
(実施の形態 3 )
実施の形態 3では、 検査情報の改竄防止の措置を講じたデータ修復システム について説明する。
このシステムでは、 サーバが端末に対して、 ブロックに分割したデータと、 署名を付した検査情報とをダウンロードし、 メモリデバイスは、 検査情報を格 納する際に、 その署名を検証する。
図 1 6は、 このメモリデバイス 30のデータ処理を模式的に示している。 メ モリコントローラ 32は、 書込部 327及び内部不揮発性メモリ 324の他に、 検 査情報の署名を検証する署名検証部 333 を備えている。 この署名検証部 333 の機能は、 C P U323がプログラムで規定された処理を行うことにより実現さ れる。
このシステムのサーバ 10は、 複数のブロックに分割したデータと、 その検 査情報とを保持■管理し、 端末 20からデータの要求があつたときに、 データ 本体と、 署名を付した検査情報とを端末 20にダウンロードする。
端末 20は、サーバ 10から取得したデータと署名付きの検査情報とを書き込 み要求とともにメモリデバイス 30に出力する。
メモリコントローラ 32の書込部 327は、 署名付きの検査情報を署名検証部 333に渡し、 データ本体をメモリ 31に書き込む。
署名検証部 333は、検査情報に付された署名を検証し、検査情報が改竄され ていないことを確認した後、 検査情報を内部不揮発性メモリ 324に格納する。 その他の処理は実施の形態 1と変わりがない。
このシステムでは、 検查情報に付された署名を検証することで、 サーバから 送信された検査情報が、 メモリデバイスの耐タンパ性のメモリ領域に格納され る以前に悪意の第 3者によって改竄される事態を防止することができる。
また、 図 1 7は、 検査情報の改竄を防止するため、 検査情報を暗号通信路で 伝送する場合を示している。
このメモリコントローラ 32は、データをメモリ 31に書き込むデータ書込部 336と、検査情報を内部不揮焭性メモリ 324に書き込む検査情報書込部 335と を備えている。 このデータ書込部 336及び検査情報書込部 335の機能は、 C P U323がプログラムで規定された処理を行うことにより実現される。
このシステムでは、検査情報が、サーバ 10からメモリデバイス 30の検査情 報書込部 335に暗号通信路を通じて伝送される。 この暗号通信路は、 I Cカー ドにおけるセキュアメッセージングなどと同様に、 サーバ 10 と検査情報書込 部 335とが直接構築する。検査情報書込部 335は、受信した検査情報を耐タン パ性の内部不揮発性メモリ 324に書き込む。
また、データは、サーバ 10からメモリデバイス 30に通常の伝送路で伝送さ れ、 データ書込部 336は、 受信したデータをメモリ 31に書き込む。
このシステムでは、検査情報を暗号通信路で伝送しているため、検査情報が、 メモリデバイスの耐タンパ性のメモリ領域に格納される以前に悪意の第 3者 によつて改竄される事態を防ぐことができる。
(実施の形態 4 )
実施の形態 4では、耐タンパ性のメモリ領域の使用効率を高めたデータ修復 システムについて説明する。
メモリデバイスに格納するデータそのものが大き <なると、 それに対応して 検査情報のデータ量も増大し、 検査情報を耐タンパ性のメモリ領域に書き込む ことが困難になる。 そのため、 このシステムでは、 検查情報をメモリデバイス の非耐タンパのメモリ領域に書き込み、 その検査情報のデータ破損を検査する ための検査情報 (検査情報用検査情報) をメモリデバイスの耐タンパ性のメモ リ領域に書き込むようにしている。
図 1 8は、 このメモリデバイス 30のデータ処理を模式的に示している。 メ モリコントローラ 32は、図 1 6の場合と同様に、書込部 327、署名検証部 333 及ぴ内部不揮発性メモリ 324を備えており、 また、 サーバ 10からは、 データ 本体と署名を付した検査情報とがダウンロードされる。
このメモリコントローラ 32の書込部 327は、 署名付きの検査情報を署名検 証部 333に渡し、署名検証部 333が検査情報に付された署名を検証して、検査 情報が改竄されていないことを確認すると、書込部 327は、署名付きの検査情 報とデータ本体とをメモリ 31に書き込む。
一方、 署名検証部 333は、 検査情報及び署名に対するハッシュ値 (即ち、 検 査情報用検査情報) を算出し、 この検査情報用検査情報を内部不揮発性メモリ 324に格納する。
この場合、検査部 328は、 ブロックのデータ破損を検査するとき、 署名付き 検査情報をメモリ 31から読み出し、 その検査情報に破損が生じていないこと を、内部不揮発性メモリ 324に格納された検查情報用検査情報を用いて確認す る。 その後の検査処理は実施の形態 1と同じである。 また、 検査情報が破損し ているときは、 サーバから検査情報を取得し直す。
また、 図 1 9は、 'メモリデバイス 30がサーバからデータ本体と署名無しの 検査情報とを受信する場合のデータ処理を模式的に示している。 このメモリコ ントローラ 32は、 書込部 327及び内部不揮発性メモリ 324の他に検査情報用 検査情報を生成する検査情報用検査情報生成部 337を備えている。この検査情 報用検査情報生成部 337の機能は、 C P U323がプログラムで規定された処理 を行うことにより実現される。
このシステムのサーバ 10は、 データ本体と署名なしの検査情報とを端末 20 にダウンロードする。 なお、 この検査情報は、 図 1 7に示すように、 暗号通信 路を用いて伝送するようにしても良い。
このメモリコントローラ 32の書込部 327は、 データ本体と検査情報とを受 信すると、検査情報を検査情報用検査情報生成部 337に伝えるとともに、 この 検査情報とデータ本体とをメモリ 31に書き込む。
検査情報用検査情報生成部 337 は、 検査情報のデータに対するハッシュ値 (即ち、 検査情報用検査情報) を算出し、 この検査情報用検査情報を内部不揮 発性メモリ 324に格納する。
この場合、 検査部 328は、 メモリ 31に格納されたデータ本体のデータ破損 を検査するとき、 検査情報をメモリ 31から読み出し、 その検査情報に破損が 生じていないことを、内部不揮発性メモリ 324に格納された検査情報用検査情 報を用いて確認する。 その後の検査処理は実施の形態 1と同じである。 また、 検査情報が破損しているときは、 サーバから検查情報を取得し直す。
このシステムでは、 検査情報そのものを非耐タンパのメモリ 31に置くこと で、 耐タンパ性のメモリ領域の使用量を削減することができる。 この場合、 非 耐タンパのメモリ 31に格納した検査情報は、 書き込んでから読み出すまでの 間にデータ破損の生じる可能性があるが、 耐タンパ性のメモリ領域で検査情報 用検査情報を保持することにより、 検査情報が正常であるか否かを判定するこ とができ、 検査情報が正常でないときには、 サーバから検査情報を取り直すこ とにより、 常に誤りのない検査情報を用いてデータ本体の破損を検査すること ができる。
(実施の形態 5 )
実施の形態 5では、 データ修復の機能を利用するシステムであって、 検查情 報のみを先にダウンロードし、 データ本体は、 それを使用する時にダウンロー ドするシステムについて説明する。
図 2 0は、 このシステムでのメモリデバイス 30のデータ処理を模式的に示 している。 メモリコントローラ 32は、 検査部 328、 読出部 329、 修正部 330 及び内部不揮発性メモリ 324の他に、検査情報の更新処理を行う検査情報更新 部 334を備えている。 この検査情報更新部 334の機能は、 C P U323がプログ ラムで規定された処理を行うことにより実現される。
このシステムのサーバ 10は、 例えば、 新規作成したプログラムデータを複 数のプロックに分割し、 各プロックのデータ本体と、 その検査情報とを保持 - 管理する。 そして、 端末 20からの要求に応じて、 あるいは、 プッシュ型のサ 一ビスにより、 その新規な検査情報のみを端末 20にダウンロードする。 端末 20は、サーバ 10から取得した新検査情報を、検査情報の更新要求とと もにメモリデバイス 30に出力する。
メモリコントローラ 32の検査情報更新部 334は、 新検査情報を内部不揮発 性メモリ 324に書き込む。 この新検査情報に対応するプログラムデータは、未 だメモリ 31に格納されていない。
この新たなプログラムデータをユーザが使用するとき、 ユーザの操作に基づ いて端末 20からメモリデバイス 30にデータの読み出し要求が出力される(1 )。 読み出し要求を受けたメモリコントローラ 32の読出部 329は、 図 1 2に示 す手順で、検査部 320に検査要求を出力する。 検査部 328は、 内部不揮 性メ モリ 324から新検査情報を読み出し、 また、 メモリ 31に格納されたデータ本 体を読み出して、 そのデータのハッシュ値を計算しょうとする。 しかし、 メモ リ 31には該当するデータが格納されていないため、 検査結果としてエラー報 告を読出部 329に出力する。 エラー報告を受けた読出部 329は、 それを端末 20に出力する (2 ) 。
端末 20は、 このエラー報告を卜リガーとして、 .検査情報に対応するプログ ラムデータを発行元のサーバ 10に要求し、サーバ 10は、そのプログラムデー タを端末 20にダウンロードする。 このデータを取得した端末 20は、 このデー タを含む部分修正情報を作成し、 修正要求とともにメモリデバイス 30に出力 する (3 ) 。
部分修正情報を受信したメモリデバイス 30の修正部 330は、 図 1 1に示す 手順でプログラムデータをメモリ 31に書き込み、端末 20に修正完了通知を出 力する (4 ) 。
プログラムデータがメモリ 31に書き込まれたことによって、検査部 328は、 そのデータが "正常" である旨の検査結果を読出部 329 に伝え、 読出部 329 は、そのプログラムデータをメモリ 31から読み出して端末 20に出力する(5 )。 このように、 このシステムでは、 メモリデバイス内で保持する検查情報を先 行して更新し、 その検査情報に対応するデータ本体の更新を、 その使用時まで 遅らせることができる。
図 2 1は、 このシステムの応用例として、 サーバ 10 、 検査情報とカタ口 グ情報とを先行して端末 20にダウンロードし、 ユーザが力タ口グ情報で表示 するコンテンツを希望したとき、 そのコンテンツのデータを端末 20にダウン ロードするシステムの手順を示している。 まず、①端末 20は、 サーバ 10から カタ口グ情報と検査情報とを取得する。
②端末 20は、 メモリデバイス 30に、取得したカタ口グ情報と検査情報とを書 き込む。 カタ口グ情報及び検査情報は、 メモリデバイス 30の耐タンパ性のメ モリ領域に書き込まれる。
③端末 20は、 メモリデバイス 30に格納されたカタ口グ情報を参照する。
④端末 20は、メモリデバイス 30からカタ口グ情報に対応するコンテンッデー タの読み出しを行う。
⑤メモリデバイス 30は、 エラー報告を端末 20に返す。
⑥端末 20は、 コンテンツデータをサーバ 10に要求し、 サーバ 10は端末 20 にコンテンツを配信する。
⑦端末 20は、メモリデバイス 30の非耐タンパのメモリ領域にコンテンツデー タを書き込む。
⑧メモリデバイス 30は、 データの破損チェックを行いながら、 コンテンツデ ータを端末 20に読み出す。
なお、 ①において、 カタログ情報と検査情報とは、 あらかじめメモリデバイ ス内に格納されていても良い。 また、 ②において、 カタログ情報は非耐タンパ のメモリ領域に格納しても良い。
このように、 このシステムでは、 データ本体が必要になるまでデータ本体の 配信を遅らせることができる。
また、 このシステムでは、 配信したコンテンツのデータが破損したとき、 端 末は、 検査情報を基に、 コンテンツデータを自動復元することができる。 その ため、 この検査情報を販売することにより、 コンテンツデータの破損時に自動 復元可能なコンテンッ配信サービスを提供したり、 データ補修を目的とするサ 一ビスを提供したりすることが可能になり、 新たなビジネスが成立する。
なお、各実施形態では、メモリデバイスが、外部からのトリガー(検査要求、 読み出し要求) によって、 データ破損の検査を行う場合について説明した力 メモリコントローラが自発的に (例えば、 一定の周期で) データ破損の検査を 行い、 データが破損している場合に、 その検査結果を外部に報告するようにし ても良い。
また、 各実施形態では、 メモリデバイスに格納するデータ及び検査情報をサ ーバからダウンロードする場合について説明したが、 このデータ及び /または 検査情報は、 メモリデバイスの製造時や配付時に書き込んでも良い。
また、 各実施形態では、 データをブロック単位で検査する場合について説明 したが、 本発明はプロック単位に限定されるものではない。
また、 本発明におけるメモリデバイスには、 カード形態のものだけでなく、 ハードディスクなど、 その他の形態の記憶装置も含まれる。
以上の説明から明らかなように、 本発明のメモリデバイスは、 検査情報を耐 タンパ性の蓄積領域に格納し、 データ本体を非タンパ性の蓄積領域に格納して いるため、 全ての情報を耐タンパ性の蓄積領域に格納する場合に比べて、 多く のデータを格納することができ、また、低コストでの製造が可能になる。また、 データ本体が破損した場合でも、 耐タンパ性の蓄積領域に格納した検査情報を 用いてデータ破損を確実に検出し、 完全に修復することができる。
また、 本発明のシステムでは、 メモリデバイスに蓄積したデータが破損して いるとき、 正常データを外部から取得して修復するので、 メモリデバイス内で バックァップ用のデータを重複して保持する必要が無く、 メモリデバイスの蓄 積効率を高めることができる。 また、 検查情報の生成単位を、 データ全体では なく、 ブロック単位としているため、 データ破損個所を小さな範囲に限定する ことができ、 修復用の正常データを外部から取得する際のデータ通信時間を短 縮することができる。 また、 本発明のデータ修復システムの機能を利用して、 データ本体が必要に なるまでデータ本体の配信を遅らせるコンテンツ配信サービスを提供したり、 コンテンツデータの破損時に自動復元可能なコンテンツ配信サービスを提供 したり、 あるいは、 データ補修を目的とするサービスを提供したりすることが でき、 新たなビジネスの展開が可能になる。
本明細書は、 2002年 1月 31日出願の特願 2002— 023704に基 づくものである。 この内容をここに含めておく。 産業上の利用可能性
本発明は、 例えば、 端末装置の処理を規定するプログラムなどのデータを、 サーバからネットワークを通じて端末装置にダウンロードするシステムに用 いるに好適である。

Claims

請求の範囲
1 . 耐タンパ性のメモリ領域と非耐タンパ性のメモリ領域とを備え、 前記非耐 タンパ性のメモリ領域にデータを格納し、 前記耐タンパ性のメモリ領域に前記 データの破損の検査に用いる検查情報を格納したメモリデバイス。
2 . データを格納する非耐タンパ性の第 1のメモリ領域と、 データ破損の検査 に用いる検査情報を格納する耐タンパ性の第 2のメモリ領域と、 外部から取得 したデータを前記第 1のメモリ領域に書き込み、 前記検查情報を前記第 2のメ モリ領域に書き込む書き込み手段と、 前記検查情報を用いてデータ破損を検査 "る検査手段と、 前記検査手段が正常と判定したデータを読み出す読み出し手 段とを備え、 前記検査手段は、 外部から取得した前記データをプロック単位で 正常か否かを判定するメモリデバイス。
3 . 前記検查情報が、 外部から取得した前記データのプロック単位の検査情報 を含み、 前記書き込み手段は、 前記検査情報を前記第 2のメモリ領域に書き込 む請求の範囲 2記載のメモリデバイス。
4 . 前記書き込み手段は、 前記検査情報を暗号通信路を通じて取得し、 前記検 査情報を前記第 2のメモリ領域に書き込む請求の範囲 2記載のメモリデバイ ス。
5 . 前記書き込み手段は、 前記検査情報を暗号通信路を通じて取得し、 前記検 査情報を前記第 2のメモリ領域に書き込む請求の範囲 3記載のメモリデバイ ス。
6 . 前記書き込み手段は、 外部から取得した前記検査情報に付されている署名 を検証した後、 前記検査情報を前記第 2のメモリ領域に書き込む請求の範囲 3 記載のメモリデバイス。
7 . 前記書き込み手段は、 データ破損の検査に用いる検査情報を取得して前記 検査情報を検証する検証用検査情報を作成し、 前記検証用検査情報を前記第 2 のメモリ領域に書き込み、 データ破損の検査に用いる前記検査情報を前記第 1 のメモリ領域に書き込む請求の範囲 2記載のメモリデバイス。
8 . 前記書き込み手段は、 署名付きの前記検査情報を取得して、 前記署名付き の検査情報を検証する検証用検査情報を作成し、 前記検証用検査情報を前記第 2のメモリ領域に書き込み、 前記署名付きの検査情報を前記第 1のメモリ領域 に書き込む請求の範囲 7記載のメモリデバイス。
9 . 前記書き込み手段は、 前記検査情報を用いて前記第 1のメモリ領域に書き 込むデータの破損を検査し、 正常なデータを前記第 1のメモリ領域に書き込む 請求の範囲 2記載のメモリデバイス。
1 0 . 前記検査情報が、 検査対象のデータの取得先を示す発行元情報を含み、 前記検査手段は、 前記検査情報を用いてデータ破損が生じているプロック単位 を検出したとき、 前記発行元情報と前記ブロック単位を示す情報とを含むエラ 一報告を出力する請求の範囲 2記載のメモリデバイス。
1 1 . 前記検査情報が、 検査対象のデータの取得先を示す発行元情報を含み、 前記検査手段は、 前記検査情報を用いてデータ破損が生じているプロック単位 を検出したとき、 前記発行元情報と前記プロック単位を示す情報とを含むェラ 一報告を出力する請求の範囲 3記載のメモリデバイス。
1 2 . 前記検査情報が、 検査対象のデータの取得先を示す発行元情報を含み、 前記検査手段は、 前記検査情報を用いてデータ破損が生じているプロック単位 を検出したとき、 前記プロック単位のデータの前記発行元に対する配信要求を 出力する請求の範囲 2記載のメモリデバイス。
1 3 . 前記検査情報が、 検査対象のデータの取得先を示す発行元情報を含み、 前記検査手段は、 前記検査情報を用いてデータ破損が生じているプロック単位 を検出したとき、 前記プロック単位のデータの前記発行元に対する配信要求を 出力する請求の範囲 3記載のメモリデバイス。
1 4 . 前記検査手段は、 データ破損が生じているブロック単位の検査を自発的 に行う請求の範囲 1 0記載のメモリデバイス。
1 5 . 前記検査手段は、 データ破損が生じているブロック単位の検査を自発的 に行う請求の範囲 1 1記載のメモリデバイス。
1 6 . 前記検査手段は、 データ破損が生じているブロック単位の検査を自発的 に行う請求の範囲 1 2記載のメモリデバイス。
1 7 . 前記検査手段は、 データ破損が生じているブロック単位の検査を自発的 に行う請求の範囲 1 3記載のメモリデバイス。
1 8 . データ破損が生じているブロック単位を検出する前記検査手段の検出回 数が閾値を越えたとき、 動作を停止する請求の範囲 2記載のメモリデバイス。
1 9 . 前記読み出し手段は、 前記検査手段が正常と判定したプロック単位のデ ータを順次読み出す請求の範囲 2記載のメモリデバイス。
2 0 . 外部から取得した前記プロック単位のデータを前記検査情報を用いて検 查し、 前記データが正常であるとき、 当該データを、 前記第 1のメモリ領域に 書き込む修正手段を備える請求の範囲 2記載のメモリデバイス。
2 1 . 前記エラー報告に対応したブロック単位のデータを外部から取得し、 前 記データを前記検査情報を用いて検査し、 前記データが正常であるとき、 当該 データを、 前記第 1のメモリ領域に書き込む修正手段を備える請求の範囲 1 0 記載のメモリデバイス。
2 2 . 前記エラー報告に対応したブロック単位のデータを外部から取得し、 前 記データを前記検査情報を用いて検査し、 前記データが正常であるとき、 当該 データを、 前記第 1のメモリ領域に書き込む修正手段を備える請求の範囲 1 1 記載のメモリデバイス。
2 3 . 暗号化データを復号化する復号化手段を備え、 前記復号化手段は、 前記 検査手段が正常と判定した暗号化データのプロック単位のみを復号化し、 前記 読み出し手段は、 前記復号化手段が復号化したプロック単位のデータを順次読 み出す請求の範囲 2記載のメモリデバイス。
2 4 . 暗号化データを復号化する復号化手段を備え、 前記検査手段は、 前記検 查情報を用いて、 前記復号化手段が復号化したブロック単位のデータに含まれ るデータ破損を検査し、 前記読み出し手段は、 前記検査手段が正常と判定した プロック単位のデータを順次読み出す請求の範囲 2記載のメモリデバイス。
2 5 . 検査対象のデータに先行して前記検査情報を更新する検査情報更新手段 を備え、 前記データの前記第 1のメモリ領域への書き込みを前記修正手段が行 う請求の範囲 2 0記載のメモリデバイス。
2 6 . データをメモリデバイスの非耐タンパ性のメモリ領域に格納し、 前記デ ータの破損の検査に用いる検查情報を前記メモリデバイスの耐タンパ性のメ モリ領域に格納する端末装置。
2 7 . ブロック単位に分けたデータと、 各ブロックのデータ破損を検査するた めの検査情報とをサーバから取得し、 前記データをメモリデバイスにおける非 耐タンパ性の第 1のメモリ領域に格納し、 前記検査情報を前記メモリデバイス における耐タンパ性の第 2のメモリ領域に格納する端末装置。
2 8 . 前記メモリデバイスから、 データ破損が生じているブロックを示すエラ 一報告を得て、 当該ブロックのデータを前記サーバから取得し、 前記メモリデ バイスの第 1のメモリ領域に格納する請求の範囲 2 7記載の端末装置。
2 9 . 前記メモリデバイスから、 データ破損が生じているブロック単位のデー タの発行元に対する配信要求が出力されたとき、 当該ブロックのデータを前記 発行元のサーバから取得し、 前記メモリデバイスの第 1のメモリ領域に格納す る請求の範囲 2 7記載の端末装置。
3 0 . 前記メモリデバイスからの前記エラー報告の回数または前記配信要求の 回数が閾値を越えたとき、 前記サーバからのデータ取得を停止する請求の範囲 2 8記載の端末装置。
3 1 . 前記メモリデバイスからの前記エラー報告の回数または前記配信要求の 回数が閾値を越えたとき、 前記サーバからのデータ取得を停止する請求の範囲
2 9記載の端末装置。
3 2 . データと前記データの破損を検査する検査情報とを管理するサーバと、 前記サーバから前記データ及び検査情報を取得する端末装置と、 前記端末装置 が前記サーバから取得した前記データを非耐タンパ性のメモリ領域に格納し、 前記検査情報を耐タンパ性のメモリ領域に格納するメモリデバイスとを備え、 前記メモリデバイスは、 前記検査情報を用いて前記データの破損を検出し、 前 記端末装置は、 破損が検出されたデータを前記サーバから取得し、 前記メモリ デバイスは、 前記端末装置が取得したデータを用いてデータの破損を修復する データ修復システム。
3 3 . ブロック単位に分けたデータと各ブロックのデータ破損を検査するため の検査情報とを管理するサーバと、 前記サーバから前記データと前記検査情報 とを取得する端末装置と、前記端末装置が取得した前記データを非耐タンパ性 の第 1のメモリ領域に格納し、 前記検査情報を耐タンパ性の第 2のメモリ領域 に格納するメモリデバイスとを備え、 前記メモリデバイスは、 前記検查情報を 用いてデータ破損が生じているブロックを検出し、 前記端末装置は、 検出され た前記ブロックのデータを前記サーバから取得し、 前記メモリデバイスは、 前 記端末装置が取得したデータを用いてデータ破損を修復するデータ修復シス テム
3 4 . 前記端末装置は、 前記サーバから前記検査情報を前記データに先行して 取得し、 前記メモリデバイスは、 前記検查情報を格納し、 前記データの読み出 し要求があつたときに、未蓄積の前記データをデータ破損が生じているデータ として検出し、 これを受けた前記端末装置が、 前記データを前記サーバから取 得して、 前記メモリデバイスに格納する請求の範囲 3 3記載のデータ修復シス テム。
3 5 . データを格納する非耐タンパ性の第 1のメモリ領域と、 データ破損の検 査に用いる検査情報を格納する耐タンパ性の第 2のメモリ領域と、外部から取 得したデータを前記第 1のメモリ領域に書き込み、 前記検査情報を前記第 2の メモリ領域に書き込む書き込み手段と、 前記外部から取得したデータの破損を 前記検査情報を用いて検査する検査手段と、 前記検査手段が正常と判定したデ ータを読み出す読み出し手段とを備えるメモリデバイス。
3 6 . データとこのデータの破損を検査するための検査情報とをサーバから取 得し、 前記データをメモリデバイスにおける非耐タンパ性の第 1のメモリ領域 に格納し、 前記検査情報を前記メモリデバイスにおける耐タンパ性の第 2のメ モリ領域に格納する端末装置。
3 7 . データとこのデータの破損を検査するための検查情報とを管理するサー バと、 前記サーバから前記データと前記検査情報とを取得する端末装置と、 前 記端末装置が取得した前記データを非耐タンパ性の第 1のメモリ領域に格納 し、 前記検査情報を耐タンパ性の第 2のメモリ領域に格納するメモリデバイス とを備え、 前記メモリデバイスは、 前記検査情報を用いて前記データの破損の 有無を検出し、 前記端末装置は、 前記破損が検出されたデータを前記サーバか ら取得し、 前記メモリデバイスは、 前記端末装置が取得したデータを用いてデ 一タ破損を修復するデータ修復 V
PCT/JP2003/000500 2002-01-31 2003-01-22 Dispositif de memoire, appareil terminal et systeme de reparation de donnees WO2003065225A1 (fr)

Priority Applications (4)

Application Number Priority Date Filing Date Title
KR10-2003-7013808A KR20040080936A (ko) 2002-01-31 2003-01-22 메모리 디바이스, 단말장치 및 데이터 복원 시스템
US10/467,067 US20040073846A1 (en) 2002-01-31 2003-01-22 Memory device, terminal apparatus, and data repair system
EP03705008A EP1471429A4 (en) 2002-01-31 2003-01-22 STORAGE UNIT, END DEVICE AND DATA REPAIR SYSTEM
JP2003564748A JPWO2003065225A1 (ja) 2002-01-31 2003-01-22 メモリデバイス、端末装置及びデータ修復システム

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2002-23704 2002-01-31
JP2002023704 2002-01-31

Publications (1)

Publication Number Publication Date
WO2003065225A1 true WO2003065225A1 (fr) 2003-08-07

Family

ID=27654466

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2003/000500 WO2003065225A1 (fr) 2002-01-31 2003-01-22 Dispositif de memoire, appareil terminal et systeme de reparation de donnees

Country Status (7)

Country Link
US (1) US20040073846A1 (ja)
EP (1) EP1471429A4 (ja)
JP (1) JPWO2003065225A1 (ja)
KR (1) KR20040080936A (ja)
CN (1) CN1308849C (ja)
TW (1) TW200302419A (ja)
WO (1) WO2003065225A1 (ja)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010250700A (ja) * 2009-04-17 2010-11-04 Daikin Ind Ltd Eepromのデータエラーチェック方法、及び制御ユニット
JP2011165175A (ja) * 2010-01-12 2011-08-25 Nidec Sankyo Corp ソフトウェアのダウンロード方法
JP2012503826A (ja) * 2008-09-26 2012-02-09 マイクロソフト コーポレーション 選択的に軽減を使用してエラーを低減するメモリー管理技術の有効性の評価
JP2012248054A (ja) * 2011-05-30 2012-12-13 Mega Chips Corp 情報処理端末及び管理サーバ
JP2017215637A (ja) * 2016-05-30 2017-12-07 ローム株式会社 データ保持装置およびデータ保持システム
JP2018063646A (ja) * 2016-10-14 2018-04-19 Necプラットフォームズ株式会社 フラッシュメモリ装置
JP2019101807A (ja) * 2017-12-04 2019-06-24 大日本印刷株式会社 デバイス、セキュアエレメント、プログラム、情報処理システム及び情報処理方法
JP2021518705A (ja) * 2018-03-27 2021-08-02 インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation ブロックチェーン台帳のためのランタイム自己修正

Families Citing this family (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060015753A1 (en) * 2004-07-15 2006-01-19 International Business Machines Corporation Internal RAM for integrity check values
JP4315876B2 (ja) * 2004-08-17 2009-08-19 富士通株式会社 ファイル管理プログラム、ファイル管理方法、及びファイル管理装置
US7904706B2 (en) * 2004-12-01 2011-03-08 Innovation First, Inc. System and method for processing encrypted source code updates
KR100736047B1 (ko) * 2005-07-28 2007-07-06 삼성전자주식회사 무선 네트워크 장치 및 이를 이용한 인증 방법
WO2007124939A1 (de) * 2006-04-28 2007-11-08 Giesecke & Devrient Gmbh Verfahren und vorrichtung zur personalisierung tragbarer datenträger
US8127203B2 (en) * 2007-09-17 2012-02-28 Infineon Technologies Ag Method, data processing apparatus and wireless device
US8276024B2 (en) * 2008-03-25 2012-09-25 Sony Computer Entertainment America Llc Method and system for error correction of a storage media
EP2270758B1 (en) * 2009-06-30 2013-11-27 Kabushiki Kaisha Toshiba Portable electronic apparatus, processing apparatus for portable electronic apparatus, and data processing method in portable electronic apparatus
US8510615B2 (en) 2009-10-22 2013-08-13 Xerox Corporation Virtual repair of digital media
EP2495690B1 (en) * 2011-03-01 2015-05-13 Nxp B.V. Transponder and method for monitoring access to application data in the transponder
US10108537B2 (en) 2011-11-29 2018-10-23 Red Hat, Inc. Mechanisms for reproducing storage system metadata inconsistencies in a test environment
US9280301B2 (en) 2013-08-28 2016-03-08 Huawei Technologies Co., Ltd. Method and device for recovering erroneous data
CN103455386B (zh) * 2013-08-28 2016-11-23 华为技术有限公司 一种修复出错数据的方法和设备
KR102190340B1 (ko) 2014-05-07 2020-12-14 삼성전자주식회사 피커 어셈블리
CN104463796B (zh) * 2014-11-21 2018-04-10 深圳市华宝电子科技有限公司 一种车载视频修复方法及装置
JP6737189B2 (ja) * 2017-01-18 2020-08-05 トヨタ自動車株式会社 不正判定システム及び不正判定方法
US10768849B2 (en) * 2017-03-29 2020-09-08 Amazon Technologies, Inc. Migration of information via storage devices
CN109117081A (zh) * 2017-06-23 2019-01-01 中兴通讯股份有限公司 数据存储方法及装置、多功能卡、存储介质
JP7287026B2 (ja) * 2019-03-18 2023-06-06 富士フイルムビジネスイノベーション株式会社 情報処理装置、ファイル管理装置、ファイル管理システム及びプログラム
CN114726884B (zh) * 2022-06-06 2022-09-27 深圳市佑荣信息科技有限公司 一种金融级文件安全存储方法及系统

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11289526A (ja) * 1998-04-03 1999-10-19 Toshiba Corp 不正データ検出方法及び同方法を用いた有料放送受信装置
JP2001290648A (ja) * 2000-04-05 2001-10-19 Hitachi Ltd プログラム/データのローディングチェック方式

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3693721B2 (ja) * 1995-11-10 2005-09-07 Necエレクトロニクス株式会社 フラッシュメモリ内蔵マイクロコンピュータ及びそのテスト方法
EP0825530A3 (en) * 1996-06-20 2004-06-02 Sharp Kabushiki Kaisha Computer apparatus having electrically rewritable nonvolatile memory, and nonvolatile semiconductor memory
US5870759A (en) * 1996-10-09 1999-02-09 Oracle Corporation System for synchronizing data between computers using a before-image of data
US6092229A (en) * 1996-10-09 2000-07-18 Lsi Logic Corporation Single chip systems using general purpose processors
US6381741B1 (en) * 1998-05-18 2002-04-30 Liberate Technologies Secure data downloading, recovery and upgrading
US6820203B1 (en) * 1999-04-07 2004-11-16 Sony Corporation Security unit for use in memory card
US6351810B2 (en) * 1999-06-30 2002-02-26 Sun Microsystems, Inc. Self-contained and secured access to remote servers
AU6104800A (en) * 1999-07-16 2001-02-05 Intertrust Technologies Corp. Trusted storage systems and methods
US6606660B1 (en) * 1999-08-31 2003-08-12 Accenture Llp Stream-based communication in a communication services patterns environment
US6615253B1 (en) * 1999-08-31 2003-09-02 Accenture Llp Efficient server side data retrieval for execution of client side applications

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11289526A (ja) * 1998-04-03 1999-10-19 Toshiba Corp 不正データ検出方法及び同方法を用いた有料放送受信装置
JP2001290648A (ja) * 2000-04-05 2001-10-19 Hitachi Ltd プログラム/データのローディングチェック方式

Non-Patent Citations (1)

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

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012503826A (ja) * 2008-09-26 2012-02-09 マイクロソフト コーポレーション 選択的に軽減を使用してエラーを低減するメモリー管理技術の有効性の評価
JP2010250700A (ja) * 2009-04-17 2010-11-04 Daikin Ind Ltd Eepromのデータエラーチェック方法、及び制御ユニット
JP2011165175A (ja) * 2010-01-12 2011-08-25 Nidec Sankyo Corp ソフトウェアのダウンロード方法
JP2012248054A (ja) * 2011-05-30 2012-12-13 Mega Chips Corp 情報処理端末及び管理サーバ
JP2017215637A (ja) * 2016-05-30 2017-12-07 ローム株式会社 データ保持装置およびデータ保持システム
JP2018063646A (ja) * 2016-10-14 2018-04-19 Necプラットフォームズ株式会社 フラッシュメモリ装置
JP2019101807A (ja) * 2017-12-04 2019-06-24 大日本印刷株式会社 デバイス、セキュアエレメント、プログラム、情報処理システム及び情報処理方法
JP7052325B2 (ja) 2017-12-04 2022-04-12 大日本印刷株式会社 デバイス、セキュアエレメント、プログラム、情報処理システム及び情報処理方法
JP2021518705A (ja) * 2018-03-27 2021-08-02 インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation ブロックチェーン台帳のためのランタイム自己修正
JP7177576B2 (ja) 2018-03-27 2022-11-24 インターナショナル・ビジネス・マシーンズ・コーポレーション ブロックチェーン台帳のためのランタイム自己修正

Also Published As

Publication number Publication date
US20040073846A1 (en) 2004-04-15
TW200302419A (en) 2003-08-01
CN1308849C (zh) 2007-04-04
KR20040080936A (ko) 2004-09-20
CN1498371A (zh) 2004-05-19
JPWO2003065225A1 (ja) 2005-05-26
EP1471429A1 (en) 2004-10-27
EP1471429A4 (en) 2007-09-12

Similar Documents

Publication Publication Date Title
WO2003065225A1 (fr) Dispositif de memoire, appareil terminal et systeme de reparation de donnees
JP5749257B2 (ja) データ検証方法
US20220075873A1 (en) Firmware security verification method and device
JP4851182B2 (ja) マイクロコンピュータ、マイクロコンピュータに対するプログラム書込み方法、及び書込み処理システム
US20070235517A1 (en) Secure digital delivery seal for information handling system
US20160267273A1 (en) Software update apparatus and computer-readable storage medium storing software update program
US20060048222A1 (en) Secure electronic delivery seal for information handling system
US10853197B2 (en) Data recovery with authenticity
US8898807B2 (en) Data protecting method, mobile communication device, and memory storage device
CN111125725A (zh) 一种镜像校验的加解密方法、设备及介质
CN111158719A (zh) 应用软件升级方法及装置
US9245152B2 (en) Method for authenticating a storage device, machine-readable storage medium, and host device
TW202107277A (zh) 儲存裝置
CN112907375A (zh) 数据处理方法、装置、计算机设备和存储介质
JP2007206902A (ja) Icカードのプログラム修正システム、プログラム、及びicカード
EA003710B1 (ru) Способ и устройство для обеспечения сохранности и подлинности набора данных
US10275604B2 (en) Security record transfer in a computing system
JP2006523870A (ja) 制御装置内のソフトウェアのデータ整合性を検査する方法
JP4888862B2 (ja) メモリ管理方法
CN113721952A (zh) 一种应用于采集终端的嵌入式软件升级方法
WO2003107193A1 (ja) 半導体集積回路装置、データ記憶検証装置およびデータ記憶検証方法
JP6808094B1 (ja) データ処理装置、データ処理方法及びプログラム
US20230315865A1 (en) Storage data deletion management system and apparatus
JP4601968B2 (ja) データ整合性検査を省けるicカードおよびicカード用プログラム
CN106294020A (zh) 安卓系统应用分区文件保护方法及终端

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A1

Designated state(s): CN JP KR US

AL Designated countries for regional patents

Kind code of ref document: A1

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

WWE Wipo information: entry into national phase

Ref document number: 10467067

Country of ref document: US

WWE Wipo information: entry into national phase

Ref document number: 2003564748

Country of ref document: JP

WWE Wipo information: entry into national phase

Ref document number: 038001187

Country of ref document: CN

WWE Wipo information: entry into national phase

Ref document number: 2003705008

Country of ref document: EP

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

Ref document number: 1020037013808

Country of ref document: KR

WWP Wipo information: published in national office

Ref document number: 2003705008

Country of ref document: EP

WWW Wipo information: withdrawn in national office

Ref document number: 2003705008

Country of ref document: EP