WO2000057290A1 - Processeur d'informations - Google Patents

Processeur d'informations Download PDF

Info

Publication number
WO2000057290A1
WO2000057290A1 PCT/JP1999/001402 JP9901402W WO0057290A1 WO 2000057290 A1 WO2000057290 A1 WO 2000057290A1 JP 9901402 W JP9901402 W JP 9901402W WO 0057290 A1 WO0057290 A1 WO 0057290A1
Authority
WO
WIPO (PCT)
Prior art keywords
information
information processing
encrypted
encryption
bus
Prior art date
Application number
PCT/JP1999/001402
Other languages
English (en)
French (fr)
Inventor
Jun Kitahara
Takeshi Asahi
Original Assignee
Hitachi, 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 Hitachi, Ltd. filed Critical Hitachi, Ltd.
Priority to PCT/JP1999/001402 priority Critical patent/WO2000057290A1/ja
Priority to US09/889,410 priority patent/US7082539B1/en
Priority to PCT/JP2000/001333 priority patent/WO2000057278A1/ja
Priority to JP2000607086A priority patent/JP3975677B2/ja
Publication of WO2000057290A1 publication Critical patent/WO2000057290A1/ja

Links

Classifications

    • 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/71Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information
    • G06F21/72Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information in cryptographic circuits
    • 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/71Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information
    • 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/82Protecting input, output or interconnection devices
    • G06F21/85Protecting input, output or interconnection devices interconnection devices, e.g. bus-connected or in-line devices
    • 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
    • G06F12/1408Protection against unauthorised use of memory or access to memory by using cryptography
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2207/00Indexing scheme relating to methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F2207/72Indexing scheme relating to groups G06F7/72 - G06F7/729
    • G06F2207/7219Countermeasures against side channel or fault attacks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2211/00Indexing scheme relating to details of data-processing equipment not covered by groups G06F3/00 - G06F13/00
    • G06F2211/007Encryption, En-/decode, En-/decipher, En-/decypher, Scramble, (De-)compress
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/00086Circuits for prevention of unauthorised reproduction or copying, e.g. piracy
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/00086Circuits for prevention of unauthorised reproduction or copying, e.g. piracy
    • G11B20/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

Definitions

  • the present invention relates to an information processing device that uses encryption to maintain confidentiality during storage and transfer of information. In particular, it concerns the construction of highly confidential information processing. Background art
  • Japanese Patent Application Laid-Open No. H10-275151 discloses an apparatus for encrypting and storing information in an external storage device such as a hard disk drive.
  • an encryption / decryption key is used in a process of transferring encrypted data Ya and Yb once written in an external storage device 12 to an information terminal device 11. While using the decryption key Kb stored in the storage unit 35, the encrypted data Ya and Yb are sequentially decrypted.
  • Japanese Patent Application Laid-Open No. H10-214243 discloses an information processing device provided with a dedicated cryptographic processing device.
  • a portable PC is provided with an encryption device for encrypting data to generate a body part of an encrypted file.
  • encryption processing such as encryption and decryption generally processes data in the main memory
  • the information In order to encrypt information, the information must be processed according to the encryption algorithm, but the encryption algorithm and key information used for the encryption and the secret information to be encrypted are used. All reports need to be processed safely.
  • the present invention has the following configuration.
  • An encryption process is performed inside a semiconductor constituting the information processing apparatus. Also, it does not output encryption-related information on signal lines in the information processing device. Information that can be observed by others is output on the signal line of the information processing device. This information includes encrypted information and information that does not need to be encrypted. The information about encryption includes information that is not encrypted and information for decrypting encrypted information.
  • a RAM, a cryptographic processing algorithm, and cryptographic processing hardware are integrated on the same semiconductor chip as a processing device (CPU) that executes processing in an information processing device.
  • CPU processing device
  • era is read for convenience, but the name is not limited to this and may be a semiconductor chip included in an information processing device.
  • a processing device that performs control of an information processing device and arithmetic processing is particularly preferable.
  • the present invention provides a semiconductor device constituting an information processing apparatus. The encryption process is closed in the body chip. Further, in the present invention,
  • the RAM built in the CPU may be used as the main memory, and the execution of the application program may be processed in the built-in RAM.
  • the application program itself is also encrypted, and the external storage device is configured to have an encrypted file.
  • an external bus control unit for controlling data output to the external bus may be provided.
  • the external bus control unit may control not to output data to the external bus when the internal RAM is being accessed. Furthermore, it may be determined whether or not the data is information that can be output to an external bus, and if the information can be output, control may be performed so that the data is output to the external bus.
  • encryption Z decryption of communication data is processed inside the CPU. Furthermore, it may be determined whether or not to encrypt any of these configurations according to information. If the information does not need to be encrypted, the information may be output on the signal line of the information processing device without being encrypted.
  • the present invention includes a device in which file arrangement information on a magnetic disk is encrypted by enabling encryption processing inside a processor in a disk system controller.
  • FIG. 1 is a diagram showing a configuration of an information processing apparatus of the present invention.
  • FIG. 2 is a diagram for explaining file generation in the information processing apparatus of the present invention.
  • FIG. 3 is a diagram showing a configuration of an information processing apparatus having a CPU having a built-in main memory according to one embodiment of the present invention.
  • FIG. 4 shows a configuration of an information processing apparatus for encrypting an application program stored in an external storage device by a CPU according to an embodiment of the present invention. It is not shown.
  • FIG. 5 is a diagram showing a configuration of an external bus control unit.
  • FIG. 6 is a diagram illustrating an embodiment in which the external bus control unit does not output data to the external bus.
  • FIG. 7 is a diagram showing a configuration when the present invention is applied to a processor bus and a system information processing device.
  • FIG. 8 is a diagram showing a configuration when the present invention is applied to communication.
  • FIG. 9 is a diagram for explaining a case where the present invention is applied to an external storage device.
  • FIG. 10 is a diagram for explaining writing of the encrypted file arrangement information in the configuration of FIG.
  • FIG. 11 is a diagram showing a configuration of a disk controller.
  • FIG. 12 is a diagram showing an information processing apparatus having a plurality of CPUs according to one embodiment of the present invention.
  • FIG. 13 is a diagram showing a modified example of FIG.
  • FIG. 14 is a modification of the configuration shown in FIG.
  • FIG. 15 is a modification of the configuration shown in FIG.
  • FIG. 16 is a diagram showing an entire system in which the information processing device shown in FIG. 8 is connected to a network.
  • FIG. 1 is a diagram schematically showing a configuration of an information processing device (101) including at least a CPU (102), a main storage device (103), and an external storage device (104).
  • the CPU (102), the main storage controller (117), and the external storage controller (115) are connected by a theoretical system bus (114), and are connected to the main storage (103) and the external storage (104), respectively. ) Is connected.
  • the actual connection of signal lines is as shown in Fig. 7, but from a theoretical point of view of data flow, it can be schematically represented as in Fig. 1.
  • the CPI 102) includes a microprocessor (105), a cryptographic processing algorithm ROM (106), a cryptographic processing hardware (107), a RAM (108), a key storage area (112), an external bus control unit (109 ). Furthermore, on the same semiconductor chip Collect.
  • an encryption algorithm ROM (106), an encryption processor (107), a RAM (108), and an external bus control unit (109) are connected to the microprocessor bus (110).
  • data is encrypted in the CPU.
  • the file (111) is encrypted according to the encryption algorithm ROM (106) and, if necessary, using the encryption hardware (107).
  • the key data used for the encryption at this time may be generated within the CPI 102), or data given in advance may be used. However, this key data must be stored in the key storage area (112) in the CPI 102). In the encryption process, when data that is in progress is generated, the data that is in progress is also stored in the RAM (108). Thus, the encrypted file (113) is generated from the file (111).
  • the encrypted file (113) is stored in the external storage device (104) via the external storage device control unit (115) through the system bus (114).
  • the encrypted file (116) is read from the external storage device (104) into the RAM (108) via the external storage device control unit (115).
  • decryption is performed using the encryption hardware (107) if necessary.
  • the encryption algorithm ROM (106) also stores the decryption procedure.
  • the cryptographic processing hardware (107) can also be used for decryption. It is possible.
  • FIG. 2 shows the process until the file (111) of FIG. 1 is generated.
  • the application program (201) is stored in the external storage device except during operation. When this application program is started, it is expanded in main memory and becomes operable.
  • the enabled application program (202) requests the information processing device management program for the operating system or the like to allocate a work area. At this time, the information processing device management program for the operating system or the like allocates a space in the RAM (108) as the work area (203).
  • the application program (202) is processed by the microprocessor (105), and the generated information is stored in the work area (203). From the generated information, data to be stored in an external storage device is generated as a file (111).
  • the application program (202) itself exists in the main memory.
  • an information processing device management program for the operating system or the like is required. It is possible to convert the logical address indicating the work area of the application program into the physical address in the RAM (108) by using the memory management function of the microphone processor managed by the program.
  • the key holding unit (112) may be provided in the area of the RAM (108), but must be non-volatile. It may be composed of a nonvolatile ROM such as EEPR0M or FlashROM, or may be composed of a battery-backed SRAM. In the case of an SRAM that has been backed up by a battery, if the information processing device is attacked in order to extract the key used for encryption, it is detected and the backup power supply is turned off. It is also possible to lose key information and protect secret information Oo
  • FIG. 3 shows a configuration in which the RAM (108) in the CPU (dish) is used as the main memory of the information processing device (101).
  • the application program (301) stored in the external storage device is developed in the RAM (108) at the time of startup and becomes operable.
  • the activated application program (302) requests the information processing device management program for the operating system or the like to allocate a work area.
  • the information processing device management program for the operating system or the like allocates a space in the RAM (108) as the work area (303).
  • the application program (302) is processed by the microprocessor (105), and the generated information is stored in the work area (303).
  • Data to be stored in the external storage device is generated as a file (111) from the generated information.
  • the generated file (111) is encrypted by using the encryption processing hardware (107) according to the encryption processing algorithm ROM (106), if necessary.
  • the encrypted file (113) is stored as an encrypted file (116) in the external storage device.
  • the application program that generates secret information is distinguished from the other application programs, and the execution of the application program that generates secret information is performed by RAM ( 108), and the other application programs may be processed in the main storage device outside the CPU as before.
  • the encrypted application program (401) is stored in the external storage device (104).
  • This application program is decrypted in the CPU of the information processing device. For this reason, the decrypted application program is not output on the bus (114), and the decrypted application program is closed inside the CPU. For this reason, it is possible to prevent others from observing the application program.
  • the encryption application program (401) in the external storage device is transferred to the RAM (108) in the information processing device via the bus (114) at the time of startup.
  • the transferred encrypted application program (402) is expanded in the RAM (108).
  • the expanded encrypted application program (402) is decrypted in the RAM (108) to become an application program (403).
  • the application program (403) operates to generate information using the work area (404) in the RAM (108).
  • the necessary information is selected from the generated information and compiled as a file (111).
  • the encrypted file (113) is stored in the external storage device (104) as a symbol file (116).
  • encryption is performed using the application program itself as a file (111).
  • the external bus control unit (109) used in each of the first to third embodiments controls input / output of data between the inside and the outside of the CPU.
  • the microprocessor (105) does not allow the cryptographic processing algorithm ROM (106) or cryptographic processing hardware (107) or RAM (108) to access the cryptographic processing algorithm ROM (106) outside the CPIK 102). Control.
  • the access power of the microprocessor (105) can be output to the outside of the PU, the output may be controlled to be output to the outside.
  • data that may be output to the outside of the CPU include data that is transferred to another information processing device without performing encryption processing.
  • the external bus control unit (501) includes a control bus (503), an address bus (504), and a data bus (505) of the microprocessor (502), an external control bus (506) that goes outside the CPU, and an external address bus. (507), between the external data bus (508), an external control bus generator (509), an address comparator (510), an address direction controller (512), and a data direction controller (513). And a mask signal generation unit (511) and signal mask units (514) and (519).
  • the control bus (503) and the external control bus (506) pass a bus cycle start signal, a bus direction instruction signal, a bus cycle end signal, a bus arbitration signal, and the like from the microprocessor.
  • the bus cycle is controlled by these signals.
  • the external control bus generator (509) monitors a bus cycle start signal, a bus direction instruction signal, a bus cycle end signal, a bus arbitration signal, and the like from the microprocessor.
  • the external control bus generator (509) determines whether or not the microprocessor has the bus access right, and transmits the information to the address direction controller (512). The same information is also transmitted to the address comparator (510).
  • the address comparator (510) keeps track of the addresses to which the encryption processing algorithm ROM (106), encryption processing hardware (107), and RAM (108) in the CPU (102) are assigned. Address input from the bus (504) or external address bus (507) Compare with Les.
  • the end address comparator (510) monitors the address from the microphone port processor, When the access to the address of the RAM (108) is detected, the signal is transmitted to the external control bus generation unit (509), but the external bus control signal is not driven. It also transmits the signal to the mask signal generation unit (511), outputs a mask signal to the signal mask units (514) and (519), and controls not to drive the external address bus (507) and external data bus (508). Or, the address value and data value are forcibly fixed.
  • the address comparator (510) monitors the external address bus and When the access to the address is detected, it is transmitted to the external control bus generator (509). The external control bus generator (509) does not transmit this bus cycle to the control path (503). Alternatively, a mask signal is output to the signal mask units (514) and (519) to control so as not to drive the address bus (504) and the data bus (505). Or, the address value and data value are forcibly fixed.
  • the gates (602) of the signal mask unit (601) and the gates (604) of the signal mask unit (603) are used. It can be realized by changing the logic.
  • the address signal mask circuit can convert the address into an area other than the RAM (108) area where there is no problem in reading and writing.
  • FIG. 7 is a diagram schematically illustrating a configuration of a general information processing apparatus.
  • the information processing device (701) is composed of a plurality of semiconductor components.
  • CPIK 702 is a processor bus (704) and is connected to the cache memory and main memory control unit (705).
  • the main memory control unit (705) includes a system bus control unit, and is connected to the memory bus (713) and the system bus (707).
  • a main storage device (706) is connected to the memory bus (713), and an external storage device (708), a display control unit (710), a communication control unit (711), In addition, an I / O control unit (712) is connected.
  • the display system controller (710) may be connected to the main memory controller & system bus controller (705) via a dedicated bus.
  • the external storage device (709) is connected to the external storage device control unit (708).
  • the main memory (706) and the address area of each part connected to the system bus (707) are different, the area to be accessed by the address is determined, and the main memory controller & system bus control is performed.
  • the unit (705) is switching.
  • the main processor in this system is the CPI 702).
  • the encryption process is closed inside this CPU.
  • the CPI 702 is replaced with a microprocessor (105), a cryptographic algorithm ROM (106), a symbol processing hardware (107), a RAM (108), and a key storage area ( 112) and an external bus control unit (109), and further integrated on the same semiconductor chip.
  • the present invention may be an information processing device having a plurality of CPUs as shown in FIGS. 12 and 13.
  • FIG. 8 is a diagram showing a configuration in which an information processing device is connected to another information processing device and can communicate with the information processing device.
  • the communication system control unit may be connected outside the information processing device.
  • the information processing device (801) includes a CPIK 802) and a communication system control unit (803), and is connected by a system bus (814).
  • the CPI 802) consists of a microprocessor (805), a code processing algorithm ROM (806), a cryptographic processing hardware (807), a RAM (808), an external bus control unit (809), and a key storage area (812). Connected by microprocessor bus (810).
  • the information processing device includes a CPU and communication system control, but may additionally include a main storage, an external storage device, and the like.
  • a device having the same function as the external storage device may be connected to the end of the communication line (804) via the communication system control unit (803), or an information processing device may be connected.
  • the encryption method differs depending on whether the device connected to the end of the communication line (804) is a storage device or an information processing device.
  • the data is encrypted, stored in the storage device, and the encrypted data is read from the storage device and decrypted.
  • the key used for the encryption need only be held by the CPU of the information processing device that has performed the encryption.
  • the information processing device A and the information processing device B exist across the communication line.
  • a situation occurs in which the information processing device A encrypts the information and the information processing device B decrypts the information.
  • a secret key cryptosystem is suitable.
  • the information processing devices A and B must have the same key. This same key may be set in advance in the information processing devices A and B, or before the encrypted data is sent, the information processing devices A and B perform mutual exchange and share the key used for encryption. You may take the method of doing. Since encryption processing is also used for mutual authentication, these processings are processed inside the CPU.
  • the encrypted data is re-edited in communication units and transferred to the communication system control unit (803) according to the communication protocol, thereby enabling secure communication.
  • the data encrypted in the RAM (808) is transferred to the communication control unit (803), and the communication control unit (803) re-edits the encrypted data for each communication unit and follows the communication protocol according to the communication protocol. Data may be sent to (804).
  • FIG. 9 shows a configuration in which a group of external storage devices such as a magnetic disk (901) is controlled by a disk system controller (902).
  • the disk system controller (902) is a host system (903) as an upper information processing device.
  • the magnetic disk (901) there are data stored as a file and file arrangement information indicating where the file is stored on the magnetic disk.
  • a file system program that manages files and file arrangement information may be processed by the CPU of the small information processing device, but a disk system controller that achieves high-speed operation and high reliability is used. In some cases, the disk system controller itself manages file and file location information.
  • the host system (903) manages the file by using a file (904) and a file identifier (905). Whether or not the file (904) is encrypted depends on the host system and need not be known by the disk system controller.
  • the disk system controller (902) encrypts and manages the file arrangement information (906) on the magnetic disk (901).
  • the host system sends a file identifier (905) corresponding to the required encrypted file to the disk system controller (902), and issues a read request for the encrypted file.
  • the disk system controller (902) reads the encrypted file arrangement information (906) from the magnetic disk (901), decrypts it in the disk system controller (902), and arranges the file. Extract information (908).
  • the file identifier (905) is searched from the file arrangement information (908) to obtain the actual file arrangement information.
  • the requested encrypted file (907) is read from the magnetic disk (901) and transferred to the host system (903).
  • the case of writing a file on a magnetic disk will be described with reference to FIG. Until the file arrangement information (908) is obtained, the operation is the same as the above-described operation of reading the encrypted file.
  • the free space of the magnetic disk (901) is confirmed from the file arrangement information (908), and the encrypted file (904) is written in the free space of the magnetic disk (901).
  • the file arrangement information (908) is updated, encrypted, and then written to the magnetic disk (901) as encrypted file arrangement information (1001).
  • FIG. 11 illustrates the configuration of the disk system controller.
  • the disk system controller (1101) of the present invention has a disk system CPIK 1102), a magnetic disk interface (1113), and a host system interface (1104) inside. , Microprocessor (1105), cryptographic processing algorithm ROM (1106), cryptographic processing hardware
  • RAM (1107), RAM (1108), key storage area (1111), and external bus control unit (1109).
  • a plurality of magnetic disk devices may be connected to one information processing device.
  • the cryptographic processing hardware of the present invention is a dedicated hardware in common key cryptography that uses a common key for encryption and decryption, and includes a rotor, an adder, a logical operation unit, and the like.
  • the common key cryptosystem it is possible to use a multi-system cryptosystem, an M6 cryptosystem, or the like, which is an encryption means that mainly performs bit rotation, addition, and logical operation in units of a certain data length.
  • encryption processing can be performed without outputting secret information to a system bus and a processor bus in the information processing device.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Storage Device Security (AREA)

Description

明 細 書 情報処理装置 技術分野
本発明は、 情報の保管、 転送時の秘密性を保っために暗号を使用する情 報処理装置に関する。 その中でも特に、 秘密性保持の高い情報処理を構築 することに関する。 背景技術
暗号を使用する情報処理装置の従来技術としては、 以下のものがある。 ハードディスク ドライブのような外部記憶装置に、 情報を暗号化して記 憶するものとして、 特開平 1 0— 2 7 5 1 1 5号公報がある。 特開平 1 0 - 2 7 5 1 1 5号公報では、 外部記憶装置 1 2に一旦書き込まれた暗号化 データ Y a, Y bを情報端末装置 1 1へ転送する過程で、 暗号化 ·復号鍵 蓄積部 3 5に蓄積された復号鍵 K bを用 、ながら当該暗号化デー夕 Y a, Y bに逐次的に復号処理を施すものである。
また、 情報処理装置内に専用の暗号処理装置を設けたものとして、 特開 平 1 0 - 2 1 4 2 3 3号公報がある。 特開平 1 0 - 2 1 4 2 3 3号公報で は、 携帯型 P Cの中にデータを暗号化して暗号化ファイルのボディ部を生 成する暗号化装置を備えて 、る。
ここで、 暗号化や複号化といった暗号処理は、 一般に主記憶上のデータ を対象に処理するため、 主記憶上に秘密にすべきデータが存在する。 情報 を暗号化するためには、 暗号アルゴリズムに従い情報を処理しなければな らないが、 暗号アルゴリズムと暗号に用いる鍵情報と暗号をかける秘密情 報全てを、 安全に処理する必要が生じる。
しかし、 これらの従来技術では以下の問題が存在する。
従来技術においては、 秘密情報や暗号処理の途中経過が主記憶上に存在 するため、 幾つかの手法で情報を取り出す事が可能になる問題がある。 こ の問題は、 CPUや主記憶などが、 複数の半導体で構成されている情報処理 装置において、 CPUを用いて暗号処理を行うと喑号アルゴリズムや暗号を かける秘密情報や暗号処理の途中経過が主記憶上に存在するためである。 また、 情報処理装置内には、 情報処理装置を構成する各半導体部品を接 続する信号線 (例えばバス) が存在するため、 この信号線を観察し、 情報 を解析する事により、 暗号化する前のデータゃ復号化したデータを簡単に 取り出せるという問題がある。 発明の開示
上記の問題を解決するために、 本発明では、 以下の構成とした。
情報処理装置を構成する半導体内部で暗号化処理を施す。 また、 情報処 理装置内の信号線上に暗号に関する情報を出力しない。 情報処理装置の信 号線上には、 他者に観察されてもかまわない情報が出力される。 この情報 としては、 暗号化された情報や暗号化する必要のない情報などである。 な お、 暗号に関する情報としては、 暗号化されていない情報や暗号化された 情報を復号するための情報を含む。
より具体的には、 本発明の構成は、 情報処理装置での処理を実行する処 理装置 (CPU) と同一半導体チップに、 RAMと暗号処理アルゴリズムと暗号 処理ハードウエアを集積したものである。 なお、 本明細書では便宜上 eraと 読んでいるが、 名称はこれに限られず、 情報処理装置を構成する半導体 チップであればよい。 その中でも特に、 情報処理装置の制御や演算処理を 行う処理装置がよい。 つまり、 本発明は、 情報処理装置を構成する 1半導 体チップ内で暗号化処理が閉じているものである。 さらに、 本発明では、
CPUが複数個あり、 それぞれにおいて、 暗号化処理が行う構成としてもよい。 また、 この暗号処理が内蔵する RAM内で処理されてもよい。
また、 CPUに内蔵される RAMを主記憶として用い、 アプリケーションプロ グラムの実行も内蔵する RAM内で処理されるものでもよい。
また、 アプリケーションプログラム自体も暗号化され、 外部記憶装置に は、 暗号化フアイルが存在する構成にしたものでもある。
また、 外部バスへのデータ出力を制御する外部バス制御部を設けてもよ い。 この外部バス制御部では、 内部 RAMがアクセスされているときのデータ を外部バスへ出力しないよう制御してもよい。 さらに、 このデータ外部バ スに出力してもよい情報か否かを判断して、 出力してもよい場合にデータ を外部バスに出力するように制御してもよい。
また、 通信デ一タの暗号化 Z復号化を CPU内部で処理するものである。 さらに、 これらのいずれかの構成に、 情報に応じて暗号化するか否かを 決定してもよい。 情報が、 暗号化しなくともよい情報であれば暗号化せず に情報処理装置の信号線上に出力する構成としてもよい。
さらに、 本発明は、 ディスクシステムコントローラ内のプロセッサ内部 で暗号処理を可能にすることで、 磁気ディスク上のファイル配置情報を喑 号化したものも含まれる。 図面の簡単な説明
第 1図は、 本発明の情報処理装置の構成を示す図である。 第 2図は、 本 発明の情報処理装置におけるファイル生成を説明する図である。 第 3図は、 本発明の 1形態である主記憶を内蔵する CPUを有する情報処理装置の構成を 示す図である。 第 4図は、 本発明の 1形態である外部記憶装置に格納して. いるアプリケーションプログラムを CPUで暗号化する情報処理装置の構成を 示すずである。 第 5図は、 外部バス制御部の構成を示す図である。 第 6図 は、 外部バス制御部で外部バスへのデータを出力させない 1実施例を説明 する図である。 第 7図は、 本発明をプロセッサバスおよびシステム情報処 理装置に適用した場合の構成を示す図である。 第 8図は、 本発明を通信に 適用した場合の構成を示す図である。 第 9図は、 外部記憶装置に本発明を 適用した場合を説明する図である。 第 1 0図は、 第 9図の構成で暗号化 ファイル配置情報の書込みを説明する図である。 第 1 1図は、 ディスクコ ントローラの構成を示す図である。 第 1 2図は、 本発明の 1形態である複 数の CPUを有する情報処理装置を示す図である。 第 1 3図は、 第 1 2図の変 形例を示す図である。 第 1 4図は、 第 9図に示した構成の変形例である。 第 1 5図は、 第 9図に示した構成の変形例である。 第 1 6図は、 第 8図に 示す情報処理装置がネッ トワークに接続されている全体システムを表わす 図である。 発明を実施するための最良の形態
以下、 図面を用いて本発明の実施例を説明する。
まず、 本発明の第一の実施例を第 1図および第 2図を用いて説明する。 第 1図は、 少なくとも、 CPU(102)、 主記憶装置(103)、 外部記憶装置(104) を備える情報処理装置(101)の構成を模式的に表した図である。 CPU(102)、 主記憶装置制御部(117)、 外部記憶装置制御部(115)は、 理論上のシステム バス(114)で接続され、 各々に主記憶装置(103)、 外部記憶装置(104)が接続 される。 実際の信号線の接続は、 第 7図のようになるが、 データの流れを 理論的に考えると、 模式的に第 1図のように表す事が出来る。
CPI 102)は、 マイクロプロセッサ(105)と、 暗号処理アルゴリズム ROM(106)と、 暗号処理ハードウェア(107)と、 RAM(108)と、 鍵保管領域 (112)と、 外部バス制御部(109)からなる。 さらに、 同一半導体チップ上に 集積する。
CPI 102)内部では、 マイクロプロセッサバス(110)に、 暗号処理アルゴリ ズム ROM(106)と、 暗号処理ハードゥヱァ(107)と、 RAM(108)と、 外部バス 制御部(109)が接続される。 本実施例においては、 CPU 内部でデータに対す る暗号化処理が行われる。
ファイル(111)を暗号化するには、 暗号処理アルゴリズム ROM(106)に従 い、 必要であれば暗号処理ハードウェア(107)を用いて暗号化する。 この時 の暗号化に用いる鍵データは、 CPI 102)内で生成しても良いし、 あらかじ め与えられるデータを用いても良い。 但し、 この鍵データは CPI 102)内の 鍵保管領域(112)、 保持されていなければならない。 暗号化処理おいて、 途 中経過のデータが生成される場合は、 その途中経過のデータも RAM(108)内 に格納する。 このようにして、 ファイル(111)から暗号化ファイル(113)を 生成する。
暗号化ファイル(113)は、 システムバス(114)を通して外部記憶装置制御 部(115)を経由して外部記憶装置(104)に格納する。
外部記憶装置(104)に格納されている暗号化ファイル(116)を復号化する 場合は、 逆の順序で処理を行う。
まず、 外部記憶装置(104)から暗号化ファイル(116)を外部記憶装置制御 部(115)を経由して RAM(108)に読み込む。 次に、 暗号処理アルゴリズム ROM(106)に従い、 必要であれば暗号処理ハードウエア(107)を用いて復号化 する。
大量のデータを高速に暗号化 Z復号化するためには、 暗号鍵と復号鍵が 共通である共通鍵暗号系を用いる。 共通鍵暗号系では、 暗号と復号は処理 の順序が逆になつているだけで、 最小単位の処理自体は暗号化も復号化も 同じである。 暗号処理アルゴリズム ROM(106)には、 復号化処理の手順も格 納しておく。 また、 暗号処理ハードウェア(107)は復号化でも使用する事が 可能である。
第 2図は、 第 1図のファイル (111)を生成するまでの過程を示したもので ある。
アプリケーションプログラム(201)は、 稼動時以外は外部記憶装置内に格 納されている。 このアプリケーションプログラムに起動がかかると主記憶 に展開され動作可能な状態になる。 動作可能になつたアプリケーションプ ログラム(202)は、 ォペレ一ティングシステム等にの情報処理装置管理プロ グラムに対して、 作業領域の割り当てを要求する。 このとき、 ォペレ一 ティングシステム等にの情報処理装置管理プログラムは、 作業領域 (203)と して RAM(108)内の空間を割り当てる。
この状態で、 アプリケーションプログラム(202)は、 マイクロプロセッサ (105)で処理され、 生成された情報は作業領域(203)に格納される。 この生 成された情報の中から外部記憶装置に格納すべきデータをファイル(111)と して生成する。
アプリケーションプログラム(202)自体は主記憶上に存在し、 そのアプリ ケーシヨンプログラムの作業領域(203)を RAM(108)上に取るためには、 ォ ペレ一ティングシステム等にの情報処理装置管理プログラ厶が管理するマ イク口プロセッサが持つメモリ管理機能を用い、 アプリケーションプログ ラムの作業領域を示す論理ァドレスを RAM(108)内の物理ァドレスに変換す る事で可能になる。
鍵保持部(112)は、 RAM(108)の領域内に設けられていても良いが、 不揮発 性でなけれならない。 EEPR0Mや FlashROMのような不揮発性の ROMで構成 しても良いし、 ノくッテリバックアップされた SRAMで構成しても良い。 ノくッ テリバックアツプされた SRAMで構成した場合、 暗号に使用した鍵を取り出 そうと、 情報処理装置に攻撃が加えられた場合にそれを検知し、 バック ァップ電源を切断する事で、 鍵情報を消失させ秘密情報を守ることも可能 に,よ O o
このように、 情報の生成、 暗号処理を同一半導体チップ内で行う事によ り、 半導体チップの端子等の信号を観察するような解析方法でも、 暗号の 力、からない秘密情報を入手する事は困難になる。
次に、 本発明の第二の実施例を第 3図を用いて説明する。
第 3図は、 CPU (皿)内の RAM(108)を、 情報処理装置(101 )の主記憶とし て構成したものである。
この場合、 外部記憶装置に格納されているアプリケーションプログラム (301)は、 起動時に RAM(108)に展開され動作可能になる。 動作可能になつ たアプリケーションプログラム(302)は、 オペレーティングシステム等にの 情報処理装置管理プログラムに対して、 作業領域の割り当てを要求する。 このとき、 オペレーティングシステム等にの情報処理装置管理プログラム は、 作業領域(303)として RAM(108)内の空間を割り当てる。 この状態で、 アプリケ一ションプログラム(302)は、 マイクロプロセッサ(105)で処理さ れ、 生成された情報は作業領域 (303)に格納される。 この生成された情報の 中から外部記憶装置に格納すべきデータをファイル(111)として生成する。 生成されたファイル(111)は、 暗号処理アルゴリズム ROM(106)に従い、 必要であれば暗号処理ハードウエア(107)を用いて暗号化される。 暗号化さ れたファイル(113)は、 外部記憶装置に暗号化ファイル(116)として格納さ れる。
第 3図では、 CPU外部の主記憶装置を図示していないが、 秘密情報を生 成するアプリケーションプログラムとそれ以外のアプリケーションプログ ラムを区別し、 秘密情報を生成するアプリケーションプログラムの実行は、 RAM(108)で行い、 それ以外のアプリケーションプログラムは、 従来通り CPU外部の主記憶装置で処理する構成を取つても良い。
このように、 RAM(108)を主記憶にする事により、 CPI 102)外部にはアブ リケ一ションプログラム(301)を RAM(108)に展開する時のデータ転送しか 発生せず、 アプリケーションプログラム自体の処理も安全に行える。
本発明の第三の実施例を第 4図を用いて説明する。
本実施例では、 暗号化されたアプリケーションプログラム (401)を外部記 憶装置(104)に格納している。 このアプリケーションプログラムは、 情報処 理装置の CPU内で復号化される。 このため、 バス(114)上には、 復号化され たアプリケ一ションプログラムは出力されず、 復号化されたアプリケー シヨンプログラムは CPU 内部で閉じている。 このため、 他者がこのアプリ ケ一シヨンプログラムを観察することを防止できる。
以下、 第三の実施例の詳細を説明する。 外部記憶装置内の暗号化アプリ ケ一シヨンプログラム(401)は、 起動時にバス(114)を通して情報処理装置 内の RAM(108)に転送される。 転送された暗号化アプリケーションプログラ ム(402)は、 RAM( 108)に展開される。 展開された暗号化アプリケーションプ ログラム(402)は、 RAM(108)内で復号化され、 アプリケーションプログラム (403)になる。 この状態でアプリケーションプログラム(403)が動作し、 RAM( 108)内の作業領域 (404)を用いながら情報を生成する。 生成された情報 は必要な部分が選択され、 ファイル(111)としてまとめられる。 ファイル (111)を暗号化し、 喑号ファイル(113)を生成する。 暗号ファイル(113)を喑 号ファイル (116)として外部記憶装置(104)に格納する。
このように、 アプリケーションプログラム自体も暗号化ファイルの一つ として外部記憶装置に格納する事により、 さらに安全性を高める事も出来 o
なお、 この暗号化アプリケーションプログラム(401)を生成するためには、 アプリケーションプログラム自体をファイル(111)として、 暗号化を行うも のである。
次に、 第 5図および第 6図を用いて、 本発明の外部バス制御部の説明を 57
する。
第一から第三の各実施例に用いられる外部バス制御部(109)は、 CPU内部 と外部とのデータの入出力を制御するものである。 例えば、 マイクロプロ セッサ(105)が行う、 暗号処理のために暗号処理アルゴリズム ROM(106)又 は、 暗号処理ハードゥヱァ(107)又は、 RAM(108)へのアクセスを CPIK102) 外部に出ないように制御する。 但し、 マイクロプロセッサ(105)のアクセス 力 PU外部に出力されても構わないものであれば、 外部に出力されるよう 制御してもよい。 この場合、 CPU外部に出力されても構わないデータとし ては、 暗号処理を行わず他の情報処理装置に転送するデ一タなどがある。 外部バス制御部 (501)は、 マイクロプロセッサ(502)の制御バス(503)、 ァ ドレスバス(504)、 データバス(505)と、 CPUの外部へ出る外部制御バス (506)、 外部アドレスバス(507)、 外部データバス(508)の間にあり、 外部制 御バス生成部(509)と、 アドレス比較部 (510)と、 アドレス方向制御部 (512) と、 データ方向制御部 (513)と、 マスク信号生成部 (511)と、 信号マスク部 (514)(519)から構成される。
制御バス(503)と外部制御バス(506)は、 マイクロプロセッサからのバス サイクル開始信号、 バス方向指示信号、 バスサイクル終了信号、 バス調停 信号等が通される。 これらの信号によりバスサイクルが制御される。
外部制御バス生成部 (509)は、 マイクロプロセッサからのバスサイクル開 始信号、 バス方向指示信号、 バスサイクル終了信号、 バス調停信号等を監 視しする。 外部制御バス生成部 (509)は、 マイクロプロセッサがバスァクセ ス権を所有しているか否かを判断し、 その情報をァドレス方向制御部 (512) に伝える。 また、 同じ情報をアドレス比較器 (510)にも伝える。 アドレス比 較器(510)は、 CPU(102)内部の暗号処理アルゴリズム ROM(106)、 暗号処理 ハ一ドウヱァ(107)、 RAM(108)が割り当てられているァドレスを把握してお り、 アドレスバス(504)又は、 外部アドレスバス(507)から入力されるアド レスと比較する。
外部制御バス生成部 (509)が制御バス(503)からマイクロプロセッサがパ' スアクセス権を所有していると判断すると、 了ドレス比較器 (510)はマイク 口プロセッサからのァドレスを監視し、 RAM(108)のァドレスへのアクセス と検出すると、 外部制御バス生成部 (509)に伝えるえ、 外部バス制御信号を 駆動させない。 また、 マスク信号生成部 (511)にも伝え、 信号マスク部 (514)(519)にマスク信号を出力し、 外部アドレスバス(507)、 外部データバ ス(508)を駆動しないように制御する。 もしくは、 強制的にアドレスの値や データの値を固定してしまう。
外部制御バス生成部 (509)が制御バス(503)からマイクロプロセッサ力パ' スアクセス権を所有していないと判断すると、 ァドレス比較器(510)は外部 ァドレスバスを監視し、 RAM(108)のァドレスへのアクセスと検出すると、 外部制御バス生成部 (509)に伝える。 外部制御バス生成部 (509)は、 制御パ' ス(503)へこのバスサイクルを伝達しない。 もしくは、 信号マスク部 (514)(519)にマスク信号を出力し、 アドレスバス(504)、 データバス(505) を駆動しないように制御する。 または、 強制的にアドレスの値やデータの 値を固定してしまう。
アドレスの値やデータの値を固定する方法として、 第 6図のように、 信 号マスク部(601)のゲート(602)と信号マスク部(603)のゲート(604)のよう に、 ゲートの論理を変える事により実現できる。
このように、 アドレス信号マスク回路で、 RAM(108)領域以外の読み書き されても問題ない領域にァドレスを変換する事も可能である。
これにより、 CPIK102)内部の処理を CPU(102)のバスであるシステムバス (114)を観察する事で推測する事が不可能になる。 よって、 CPI 102)内部で 行う暗号処理の安全性が高まる。
次に、 本発明の第四の実施例を第 7図を用いて説明する。 第 7図は、 一般的な情報処理装置の構成を模式的に表した図である。
情報処理装置 (701)は、 複数の半導体部品から構成されいる。 CPIK702)は プロセッサバス(704)で、 キャッシュメモリと主記憶制御部 (705)に接続さ れる。 主記憶制御部(705)は、 システムバス制御部を含み、 メモリバス (713)とシステムバス(707)が接続される。 メモリバス(713)には、 主記憶装 置(706)が接続され、 システムバス(707)には、 外部記憶装置(708)、 表示系 制御部 (710)、 通信系制御部 (711)、 その他 I/O制御部(712)が接続される。 表示系制御部 (710)は、 専用バスで主記憶装置制御部&システムバス制御部 (705)に接続されていても良い。 外部記憶装置制御部 (708)には、 外部記憶 装置(709)が接続される。
主記憶装置(706)のァドレス領域と、 システムバス(707)に接続される各 部分のァドレス領域は異なっているため、 ァドレスでアクセスすべき領域 を判断し、 主記憶装置制御部&システムバス制御部(705)が切り替えている。 このような、 情報処理装置(701)では、 情報処理装置を一つのシステムと 捉えると、 このシステム内の主となるプロセッサは、 CPI 702)である。 こ の CPU内部で暗号化処理を閉じさせる。 例えば、 CPI 702)を図 1のように、 マイクロプロセッサ(105)と、 暗号処理アルゴリズム ROM(106)と、 喑号処 理ハ一ドウヱァ(107)と、 RAM(108)と、 鍵保管領域(112)と、 外部バス制御 部(109)で構成し、 さらに、 同一半導体チップ上に集積する。 また、 本発明 は、 第 1 2図および第 1 3図に示すとおり、 複数の C P Uを有する情報処 理装置であってもよい。
本発明の第五の実施例を第 8図を用 、て説明する。
第 8図は、 情報処理装置が他の情報処理装置と接続され、 通信可能であ る構成を示す図である。 ここでは、 第 1図の外部記憶装置の代わりに、 通 信系制御部を設けた構成をとる。 なお、 通信系制御部は、 情報処理装置の 外に接続されていてもよい。 情報処理装置 (801)は、 CPIK802)と、 通信系制御部 (803)とを備え、 シス テムバス(814)で接続される。 CPI 802)は、 マイクロプロセッサ(805)、 喑 号処理アルゴリズム ROM(806)、 暗号処理ハードゥヱァ(807)、 RAM(808)、 外部バス制御部 (809)、 鍵保管領域 (812)から構成され、 マイクロプロセッ サバス(810)で接続される。
第 8図では、 情報処理装置は、 CPUと通信系制御で構成されているが、 他に主記憶や外部記憶装置等が備わつていても良い。 通信系制御部 (803)を 経由した通信回線 (804)の先に、 外部記憶装置と同じ機能を持つ装置が接続 されていても良いし、 情報処理装置が接続されていても良い。
但し、 通信回線 (804)の先に接続される装置が、 記憶装置か情報処理装置 かで、 暗号の掛け方が異なる。
通信回線の先に接続される装置が、 外部記憶装置の場合、 データを暗号 化し、 それを記憶装置に格納し、 暗号化されたデータを記憶装置から読み 出して復号化するものである。 このため、 暗号化に用いた鍵は、 暗号化を 行った情報処理装置の CPUだけが保持していれば良い。
通信回線の先に接続される装置が、 情報処理装置の場合、 通信回線を挟 んで情報処理装置 Aと情報処理装置 Bが存在する。 この場合、 情報処理装 置 Aで情報を暗号化し、 情報処理装置 Bで情報を復号化する状況が生ずる。 大量のデータを高速に暗号化/復号化するためには、 共通鍵暗号系が適す る。 しかし、 暗号化と復号化で同じ鍵を用いるため、 情報処理装置 Aと B で、 同じ鍵を所有していなければならない。 この同じ鍵を、 情報処理装置 Aと Bであらかじめ設定しておいても良いし、 暗号化したデータを送る前 に、 情報処理装置 Aと Bで相互を行い、 暗号化に用いた鍵を共有する方法 を取っても良い。 相互認証にも暗号処理が用いられるため、 これらの処理 は、 CPU内部で処理される。
この情報処理装置 Aと Bがネッ トワークを介して接続されている様子を 第 1 6図に示す。
RAM(808)内で、 暗号化したデータを通信単位に再編集し、 通信プロトコ ルに従い、 通信系制御部 (803)に転送する事により、 安全な通信が可能にな る。 RAM(808)内で暗号化したデータを通信系制御部 (803)に転送し、 通信系 制御部 (803)において、 暗号化したデータを通信単位に再編集し、 通信プロ トコルに従い、 通信路 (804)にデータを送出しても良い。
本発明の第六の実施例を第 9図、 第 1 0図、 第 1 1図、 第 1 4図および 第 1 5図を用いて説明する。
第 9図は、 磁気ディスク(901)等の外部記憶装置群を、 ディスクシステム コントローラ(902)が制御する構成を取り、 ディスクシステムコントローラ (902)は、 上位の情報処理装置であるホストシステム(903)に接続されてい o
磁気ディスク(901)内には、 ファイルとして記憶されているデータと、 そ のフアイルが磁気デイスク上の何処に格納されているかを示すフアイル配 置情報がある。 PC等の小型情報処理装置では、 ファイルとファイル配置情 報を管理するファイルシステムプログラムを、 小型情報処理装置の CPUが 処理する場合もあるが、 高速動作や高信頼性を実現するディスクシステム コントロ一ラでは、 ディスクシステムコントローラ自体がファイルとファ ィル配置情報を管理する場合もある。
本実施例は後者に適用したものである。 ホストシステム(903)では、 ファ ィル (904)とフアイル識別子(905)で管理する。 フアイル (904)が暗号化され てるか否かは、 ホストシステムに依存し、 ディスクシステムコントローラ では関知しなくて良い。 ディスクシステムコントローラ(902)では、 磁気 ディスク(901)上のフアイル配置情報 (906)を暗号化して管理する。
本実施例での、 ホストシステムが暗号化した暗号化ファイル (907)を読み 出すまでの動作を説明する。 まず、 ホストシステムは、 必要とする暗号化ファイルに対応するフアイ ル識別子 (905)をディスクシステムコントローラ(902)に送り、 暗号化ファ ィルの読み出し要求を行う。 読み出し要求を受けたディスクシステムコン トロ一ラ(902)は、 磁気ディスク(901)から、 暗号化されたファイル配置情 報(906)を読み出し、 ディスクシステムコントローラ(902)内で復号化し、 フアイル配置情報(908)を取り出す。 このフアイル配置情報(908)内から ファイル識別子 (905)を検索し、 実際のファイルの配置情報を得る。 選られ たフアイル配置情報を用いて、 要求された暗号化フアイル (907)を磁気ディ スク(901)から読み出し、 ホストシステム(903)へ転送する。
磁気ディスクにファイルを書き込む場合を第 1 0図で説明する。 フアイ ル配置情報 (908)を得るまでは、 前記暗号化ファイルの読み出し動作と同じ である。 ファイル配置情報(908)から、 磁気ディスク(901 )の空き状態を確 認し、 磁気ディスク(901)空き領域に暗号化ファイル (904)を書き込む。 書 込み終了後、 ファイル配置情報 (908)を更新し、 暗号化した後、 磁気ディス ク(901)に暗号化ファイル配置情報(1001 )として書き込む。
第 1 1図で、 ディスクシステムコントローラの構成を説明する。
本発明のディスクシステムコントロ一ラ(1101)は、 内部にディスクシス テムの CPIK1102)と、 磁気ディスクインタフヱ一ス(1113)と、 ホストシス テムインタフヱース(1104)を持ち、 CPI 1102)は、 マイクロプロセッサ (1105)と、 暗号処理アルゴリズム ROM(1106)と、 暗号処理ハードゥヱァ
(1107)と、 RAM( 1108)と、 鍵保管領域(1111)と、 外部バス制御部(1109)で構 成される。
なお、 第 1 4図および第 1 5図に示す通り、 1台の情報処理装置に複数 の磁気ディスク装置が接続される構成としてもよい。
このような、 ディスクシステムコントローラを用いる事により、 磁気 ディスク内の情報を全て暗号化する事が可能になり、 情報保管時の安全性 力、'高まる。
本発明の暗号処理ハードウエアは、 暗号化と復号化において共通の鍵を 用いる共通鍵暗号では、 専用のハ一ドウヱァであり、 ローテ一夕、 加算器、 論理演算器等で構成される。 共通鍵暗号としては、 あるデータ長を単位に、 ビッ トのローテートと加算と論理演算を主演算とした暗号化手段である Multi系の暗号、 M6暗号等を用いる事も出来る。
公開鍵暗号を用いる場合は、 演算量の大きい剰余演算器を専用のハ一ド ウェアとして設ける。 産業上の利用可能性
本発明によれば、 情報処理装置内のシステムバスやプロセッサバスにも 秘密情報を出さずに、 暗号処理が可能になる。
暗号処理とその処理に関する秘密情報、 喑号アルゴリズム、 途中経過、 鍵 情報等が、 同一半導体内で処理されるため、 秘密保持効果が高い情報処理 装置を構築できる。

Claims

請 求 の 範 囲
1 . 情報に対して所定の処理を施す制御装置と、
前記制御装置と当該情報処理装置を構成する他の装置を接続するバスを 有する情報処理装置において、
前記制御装置は、 暗号化すべき情報の暗号化を当該制御装置を含む半導 体チップ内で実行することを特徴とする情報処理装置。
2 . 請求項 1に記載の情報処理装置において、
前記制御装置は、 暗号化されていない情報を前記バスへの出力されない よう制御する外部バス制御装置を有することを特徴とする情報処理装置。
3 . 請求項 2に記載の情報処理装置において、
前記外部バス制御装置は、 暗号化しなくともよい情報は、 前記バスへ出 力することを特徴とする情報処理装置。
4 . 請求項 1に記載の情報処理装置において、
前記制御装置で暗号化された情報を格納する記憶装置を有することを特 徴とする情報処理装置。
5 . 請求項 1に記載の情報処理装置にお 、て、
前記制御装置は、 暗号化された情報を復号化する手段を有することを特 徴とする手段を有することを特徴とする情報処理装置。
6 . 請求項 5に記載の情報処理装置において、
ネッ トワークを介して他の情報処理装置と接続され、 他の情報処理装置 で暗号化されて送信された情報を前記制御装置で復号化することを特徴と する情報処理装置。
7 . 請求項 1に記載の情報処理装置において、
前記処理装置を複数個有し、 夫々の処理装置にて暗号化を行うことを特 徴とする情報処理装置。
8 . 請求項 1に記載の情報処理装置において、
前記処理装置は、 暗号化されたプログラムを受信し、 複号化を施す手段 を有することを特徴とする情報処理装置。
9 . 請求項 1に記載の情報処理装置において、
前記処理装置は、 前記所定の処理を実行するマイクロプロセッサと、 前記情報の暗号化処理のアルゴリズムが格納された暗号処理アルゴリズ ム格納装置と、
前記アルゴリズムに従って暗号化処理を実行する暗号化装置と、 前記マイクロプロセッサ、 暗号処理アルゴリズム格納装置および前記喑 号化装置それぞれを接続するマイクロプロセッサバスと
を有することを特徴とする情報処理装置。
10. 情報を処理する処理装置を有し、 暗号化された暗号化情報を格納する 磁気ディスクを制御するディスクシステムコントロ一ラにおいて、
前記暗号化情報の読み出し要求を受け取った場合、 前記磁気ディスクに 格納された情報の配置を示す暗号化されている暗号化フアイル配置情報を、 前記磁気ディスクから読み出し、 読み出した暗号化ファイル配置情報を前 記処理装置を含む半導体チップ内で復号化をし、 復号化されたファィル配 置情報に基づいて、 前記暗号化情報を読み出すことを特徴とするディスク システムコントローラ。
11. 請求項 1 0に記載ディスクシステムコントロ一ラにおいて、
当該デ複数の磁気ディスクに接続されていることを特徴とするディスク システムコントローラ。
12. 請求項 1 0に記載ディスクシステムコントローラにおいて、
当該ディスクシステムコントローラは、 情報処理装置に接続されており、 前記情報処理装置からの要求により、 前記暗号化情報を読み出すことを特 徴とするディスクコシステムントロ一ラ。
PCT/JP1999/001402 1999-03-19 1999-03-19 Processeur d'informations WO2000057290A1 (fr)

Priority Applications (4)

Application Number Priority Date Filing Date Title
PCT/JP1999/001402 WO2000057290A1 (fr) 1999-03-19 1999-03-19 Processeur d'informations
US09/889,410 US7082539B1 (en) 1999-03-19 2000-03-06 Information processing apparatus
PCT/JP2000/001333 WO2000057278A1 (en) 1999-03-19 2000-03-06 Information processing device
JP2000607086A JP3975677B2 (ja) 1999-03-19 2000-03-06 情報処理装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP1999/001402 WO2000057290A1 (fr) 1999-03-19 1999-03-19 Processeur d'informations

Publications (1)

Publication Number Publication Date
WO2000057290A1 true WO2000057290A1 (fr) 2000-09-28

Family

ID=14235251

Family Applications (2)

Application Number Title Priority Date Filing Date
PCT/JP1999/001402 WO2000057290A1 (fr) 1999-03-19 1999-03-19 Processeur d'informations
PCT/JP2000/001333 WO2000057278A1 (en) 1999-03-19 2000-03-06 Information processing device

Family Applications After (1)

Application Number Title Priority Date Filing Date
PCT/JP2000/001333 WO2000057278A1 (en) 1999-03-19 2000-03-06 Information processing device

Country Status (3)

Country Link
US (1) US7082539B1 (ja)
JP (1) JP3975677B2 (ja)
WO (2) WO2000057290A1 (ja)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003248627A (ja) * 2002-02-25 2003-09-05 Nippon Telegr & Teleph Corp <Ntt> ファイルアクセス制御方法、プログラム及び記憶媒体
WO2006084375A1 (en) * 2005-02-11 2006-08-17 Universal Data Protection Corporation Method and system for microprocessor data security
JP2006279243A (ja) * 2005-03-28 2006-10-12 Hewlett-Packard Development Co Lp 記憶システム、情報を記憶装置に記憶させるための方法及び関連する方法並びにコンピュータ・プログラム・プロダクト
JP2007251783A (ja) * 2006-03-17 2007-09-27 Nec Electronics Corp 半導体装置の被処理データのスクランブル/デスクランブル方法、そのプログラム、スクランブル/デスクランブル回路、及びそれらを備える半導体装置
JP2007272923A (ja) * 2007-06-04 2007-10-18 Matsushita Electric Ind Co Ltd サーバ
JP2009169986A (ja) * 2009-05-07 2009-07-30 Panasonic Corp コンテンツ再生方法および情報処理装置
JP2009301571A (ja) * 2009-08-21 2009-12-24 Panasonic Corp 半導体装置およびそのブート方法
JP2010044792A (ja) * 2009-11-18 2010-02-25 Panasonic Corp セキュアデバイス、集積回路および暗号化方法
US7685435B2 (en) 2002-07-24 2010-03-23 Panasonic Corporation Program development method, program development supporting system, and program installation method

Families Citing this family (35)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002108717A (ja) * 2000-07-27 2002-04-12 Nec Corp コンテンツ再生制限機構付きディスクシステムおよび媒体
US20020114453A1 (en) * 2001-02-21 2002-08-22 Bartholet Thomas G. System and method for secure cryptographic data transport and storage
JP3881942B2 (ja) 2002-09-04 2007-02-14 松下電器産業株式会社 暗号化部を有する半導体装置
JP4349788B2 (ja) * 2002-10-31 2009-10-21 パナソニック株式会社 半導体集積回路装置
JP2004165855A (ja) * 2002-11-11 2004-06-10 Sony Corp オーサリング装置および方法、オーサリングプログラム、ならびに、オーサリングプログラムが記録された記録媒体
JP4099039B2 (ja) 2002-11-15 2008-06-11 松下電器産業株式会社 プログラム更新方法
DE10306844A1 (de) * 2003-02-18 2004-09-02 Micronas Gmbh Prozessor mit einem externen Speicher
JP4792196B2 (ja) * 2003-03-27 2011-10-12 三洋電機株式会社 データ入出力方法、およびその方法を利用可能な記憶装置およびホスト装置
GB2403562A (en) * 2003-07-04 2005-01-05 Hewlett Packard Development Co Secure processing environment in which executable code for services is only received by a secure loading process through the service request interface
WO2005060218A1 (en) * 2003-12-18 2005-06-30 Telefonaktiebolaget Lm Ericsson (Publ) Exchangeable module for additional functionality
JP4592337B2 (ja) * 2004-06-14 2010-12-01 シャープ株式会社 データ記憶装置
US20060112267A1 (en) * 2004-11-23 2006-05-25 Zimmer Vincent J Trusted platform storage controller
EP1869575A4 (en) * 2005-03-28 2012-06-20 Datallegro Inc NON-INVASIVE ENCRYPTION FOR RELATIONAL DATA BASE MANAGEMENT SYSTEMS
JP4667108B2 (ja) * 2005-04-11 2011-04-06 パナソニック株式会社 データ処理装置
JP4643427B2 (ja) * 2005-12-08 2011-03-02 株式会社日立製作所 暗号化機能内蔵ストレージシステム
JP4829639B2 (ja) * 2006-02-24 2011-12-07 キヤノン株式会社 データ処理装置およびデータ処理方法
KR20080004165A (ko) * 2006-07-05 2008-01-09 삼성전자주식회사 브로드캐스트 암호화를 이용한 디바이스 인증 방법
JP2010033603A (ja) * 2009-11-09 2010-02-12 Panasonic Corp 情報処理装置
JP2010033613A (ja) * 2009-11-12 2010-02-12 Panasonic Corp 情報処理装置
JP5017439B2 (ja) * 2010-09-22 2012-09-05 株式会社東芝 暗号演算装置及びメモリシステム
US9703945B2 (en) 2012-09-19 2017-07-11 Winbond Electronics Corporation Secured computing system with asynchronous authentication
US8874898B2 (en) * 2012-12-14 2014-10-28 Intel Corporation Power line based theft protection of electronic devices
US20140197865A1 (en) 2013-01-11 2014-07-17 International Business Machines Corporation On-chip randomness generation
US8995658B2 (en) 2013-02-13 2015-03-31 Honeywell International Inc. Physics-based key generation
US9455962B2 (en) 2013-09-22 2016-09-27 Winbond Electronics Corporation Protecting memory interface
US9465960B2 (en) 2013-12-04 2016-10-11 Honeywell International Inc. Physics-based authentication
US9318221B2 (en) 2014-04-03 2016-04-19 Winbound Electronics Corporation Memory device with secure test mode
IL234956A (en) * 2014-10-02 2017-10-31 Kaluzhny Uri Data bus protection with enhanced key entropy
CN105790927B (zh) * 2016-02-26 2019-02-01 华为技术有限公司 一种总线分级加密系统
US10019571B2 (en) 2016-03-13 2018-07-10 Winbond Electronics Corporation Protection from side-channel attacks by varying clock delays
US10142304B2 (en) * 2016-08-23 2018-11-27 Seagate Technology Llc Encryption key shredding to protect non-persistent data
KR101997254B1 (ko) * 2017-05-10 2019-07-08 김덕우 고립된 사용자컴퓨팅부를 갖는 컴퓨터
US11216592B2 (en) * 2018-08-02 2022-01-04 Qualcomm Incorporated Dynamic cryptographic key expansion
CA3108866A1 (en) * 2018-08-07 2020-02-13 Haventec Pty Ltd A method and system for securing data
WO2024101156A1 (ja) * 2022-11-11 2024-05-16 Necソリューションイノベータ株式会社 プログラム管理装置、プログラム管理方法、及びコンピュータ読み取り可能な記録媒体

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS644194A (en) * 1987-06-26 1989-01-09 Toshiba Corp Key telephone system
JPH02297626A (ja) * 1989-05-12 1990-12-10 Nec Corp プログラム及びデータの内容隠蔽方式
JPH04149652A (ja) * 1990-10-09 1992-05-22 Mitsubishi Electric Corp マイクロコンピュータ
JPH05314014A (ja) * 1992-05-07 1993-11-26 Toshiba Corp ディスクコントローラ
JPH0944407A (ja) * 1995-08-02 1997-02-14 Nec Eng Ltd データファイルの保護方法及びセキュリティ方式

Family Cites Families (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6441947A (en) * 1987-08-07 1989-02-14 Hitachi Ltd Semiconductor integrated circuit
US5909700A (en) * 1996-12-23 1999-06-01 Emc Corporation Back-up data storage facility incorporating filtering to select data items to be backed up
JPH0666048B2 (ja) * 1989-10-06 1994-08-24 富士ゼロックス株式会社 操作手順一括登録装置
US5111504A (en) * 1990-08-17 1992-05-05 General Instrument Corporation Information processing apparatus with replaceable security element
JPH04163768A (ja) 1990-10-29 1992-06-09 Hitachi Ltd ディスク機密保護方式および装置
JPH0553921A (ja) * 1991-08-23 1993-03-05 Nippon Steel Corp 集積回路
US5224166A (en) * 1992-08-11 1993-06-29 International Business Machines Corporation System for seamless processing of encrypted and non-encrypted data and instructions
EP0673154B1 (en) * 1992-10-21 2000-05-10 Pumpkin House Incorporated Copying machine with encoding function
US5539828A (en) * 1994-05-31 1996-07-23 Intel Corporation Apparatus and method for providing secured communications
TW357913U (en) * 1994-10-12 1999-05-01 Sega Enterprises Kk Peripheral machinery
US5535168A (en) * 1994-12-01 1996-07-09 Motorola, Inc. Method and apparatus for selectively erasing memory to extend battery life
WO1996027155A2 (en) * 1995-02-13 1996-09-06 Electronic Publishing Resources, Inc. Systems and methods for secure transaction management and electronic rights protection
US5592549A (en) * 1995-06-15 1997-01-07 Infosafe Systems, Inc. Method and apparatus for retrieving selected information from a secure information source
US5999629A (en) * 1995-10-31 1999-12-07 Lucent Technologies Inc. Data encryption security module
JPH10214233A (ja) 1996-04-15 1998-08-11 Toshiba Corp 情報処理装置、情報処理システム、情報処理方法、プログラム記憶装置、及び鍵の判定方法及び判定装置
US5933500A (en) * 1996-05-31 1999-08-03 Thomson Consumer Electronics, Inc. Adaptive decoding system for processing encrypted and non-encrypted broadcast, cable or satellite video data
US5748744A (en) * 1996-06-03 1998-05-05 Vlsi Technology, Inc. Secure mass storage system for computers
JPH10275115A (ja) 1997-03-31 1998-10-13 Nippon Telegr & Teleph Corp <Ntt> データ暗号化保存方法及びシステム装置
JP2000066592A (ja) * 1998-08-19 2000-03-03 Syst Kogaku Kk 乱数生成装置
US6292899B1 (en) * 1998-09-23 2001-09-18 Mcbride Randall C. Volatile key apparatus for safeguarding confidential data stored in a computer system memory
US6473861B1 (en) * 1998-12-03 2002-10-29 Joseph Forte Magnetic optical encryption/decryption disk drive arrangement
US20030158754A1 (en) * 1999-11-19 2003-08-21 Arthur Navarro Web-based method and system for maintaining and accessing medical records

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS644194A (en) * 1987-06-26 1989-01-09 Toshiba Corp Key telephone system
JPH02297626A (ja) * 1989-05-12 1990-12-10 Nec Corp プログラム及びデータの内容隠蔽方式
JPH04149652A (ja) * 1990-10-09 1992-05-22 Mitsubishi Electric Corp マイクロコンピュータ
JPH05314014A (ja) * 1992-05-07 1993-11-26 Toshiba Corp ディスクコントローラ
JPH0944407A (ja) * 1995-08-02 1997-02-14 Nec Eng Ltd データファイルの保護方法及びセキュリティ方式

Cited By (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003248627A (ja) * 2002-02-25 2003-09-05 Nippon Telegr & Teleph Corp <Ntt> ファイルアクセス制御方法、プログラム及び記憶媒体
US7685435B2 (en) 2002-07-24 2010-03-23 Panasonic Corporation Program development method, program development supporting system, and program installation method
US8190912B2 (en) 2002-07-24 2012-05-29 Panasonic Corporation Program development method, program development supporting system, and program installation method
WO2006084375A1 (en) * 2005-02-11 2006-08-17 Universal Data Protection Corporation Method and system for microprocessor data security
JP2006279243A (ja) * 2005-03-28 2006-10-12 Hewlett-Packard Development Co Lp 記憶システム、情報を記憶装置に記憶させるための方法及び関連する方法並びにコンピュータ・プログラム・プロダクト
JP4658657B2 (ja) * 2005-03-28 2011-03-23 ヒューレット−パッカード デベロップメント カンパニー エル.ピー. 記憶システム、情報を記憶装置に記憶させるための方法及び関連する方法並びにコンピュータ・プログラム・プロダクト
JP2007251783A (ja) * 2006-03-17 2007-09-27 Nec Electronics Corp 半導体装置の被処理データのスクランブル/デスクランブル方法、そのプログラム、スクランブル/デスクランブル回路、及びそれらを備える半導体装置
JP2007272923A (ja) * 2007-06-04 2007-10-18 Matsushita Electric Ind Co Ltd サーバ
JP4580024B2 (ja) * 2009-05-07 2010-11-10 パナソニック株式会社 コンテンツ再生方法
JP2009169986A (ja) * 2009-05-07 2009-07-30 Panasonic Corp コンテンツ再生方法および情報処理装置
JP2009301571A (ja) * 2009-08-21 2009-12-24 Panasonic Corp 半導体装置およびそのブート方法
JP4676547B2 (ja) * 2009-08-21 2011-04-27 パナソニック株式会社 半導体装置およびそのブート方法
JP2010044792A (ja) * 2009-11-18 2010-02-25 Panasonic Corp セキュアデバイス、集積回路および暗号化方法
JP4580030B2 (ja) * 2009-11-18 2010-11-10 パナソニック株式会社 セキュアデバイス

Also Published As

Publication number Publication date
JP3975677B2 (ja) 2007-09-12
US7082539B1 (en) 2006-07-25
WO2000057278A1 (en) 2000-09-28

Similar Documents

Publication Publication Date Title
WO2000057290A1 (fr) Processeur d&#39;informations
TWI406150B (zh) 安全系統晶片
US9251380B1 (en) Method and storage device for isolating and preventing access to processor and memory used in decryption of text
JP7225220B2 (ja) 記憶データ暗号化/復号化装置及び方法
US7657754B2 (en) Methods and apparatus for the secure handling of data in a microcontroller
CN108345806B (zh) 一种硬件加密卡和加密方法
US20040172538A1 (en) Information processing with data storage
JP2003198534A (ja) データ暗号化装置及びその方法
JPH113284A (ja) 情報記憶媒体およびそのセキュリティ方法
CN103154963A (zh) 对地址的加扰和对需存储于存储设备中的写入数据的加密
JP2001513929A (ja) 電子的なデータ処理装置およびシステム
WO2006054380A1 (ja) メモリ情報保護システム、半導体メモリおよびメモリ情報の保護方法
CN111881490A (zh) 与外置加密芯片融合应用nvme存储设备的共享数据保护方法
US11019098B2 (en) Replay protection for memory based on key refresh
WO2006033347A1 (ja) 機密情報処理方法、機密情報処理装置、およびコンテンツデータ再生装置
US20040117639A1 (en) Secure driver
US7657034B2 (en) Data encryption in a symmetric multiprocessor electronic apparatus
JP2008524969A (ja) イン−ストリームデータ暗号化/復号の機能を有するメモリシステム
WO2021190218A1 (zh) 对数据进行加密处理的方法及控制设备
JP2009071838A (ja) 電子デバイスにおけるセキュリティ・フィーチャー
KR100895570B1 (ko) 암호 변환 장치, 암호 변환 방법 및 기록매체
US20080263368A1 (en) Computer system, management terminal, storage system and encryption management method
CN112468300B (zh) 具有旁通通道的金钥管理装置及处理器芯片
JP2007193800A (ja) カード認証システムのセキュリティレベルを向上させる装置及び方法
CN113343215A (zh) 嵌入式软件的授权和认证方法及电子设备

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A1

Designated state(s): CN JP KR SG US

AL Designated countries for regional patents

Kind code of ref document: A1

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

DFPE Request for preliminary examination filed prior to expiration of 19th month from priority date (pct application filed before 20040101)
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: 09889410

Country of ref document: US

122 Ep: pct application non-entry in european phase
NENP Non-entry into the national phase

Ref country code: JP