WO2006114907A1 - データ暗号化システム及び鍵生成サーバ - Google Patents

データ暗号化システム及び鍵生成サーバ Download PDF

Info

Publication number
WO2006114907A1
WO2006114907A1 PCT/JP2005/018341 JP2005018341W WO2006114907A1 WO 2006114907 A1 WO2006114907 A1 WO 2006114907A1 JP 2005018341 W JP2005018341 W JP 2005018341W WO 2006114907 A1 WO2006114907 A1 WO 2006114907A1
Authority
WO
WIPO (PCT)
Prior art keywords
data
key
server
encrypted
encryption
Prior art date
Application number
PCT/JP2005/018341
Other languages
English (en)
French (fr)
Inventor
Suchayono Ando
Original Assignee
Cna Inc.
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 Cna Inc. filed Critical Cna Inc.
Publication of WO2006114907A1 publication Critical patent/WO2006114907A1/ja

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0819Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
    • H04L9/0825Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) using asymmetric-key encryption or public key infrastructure [PKI], e.g. key signature or public key certificates
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0819Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
    • H04L9/083Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) involving central third party, e.g. key distribution center [KDC] or trusted third party [TTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords

Definitions

  • the present invention relates to a data encryption system and a key generation server, and more particularly to a data encryption system and a key generation server based on a server client model.
  • server security support often depends on the server administrator, and the server administrator can freely browse the data on the server and take out the data. This is often a problem when server management is outsourced to another company.
  • Patent Document 1 Japanese Patent Application Laid-Open No. 2004-254027 Disclosure of the invention
  • the conventional data encryption system is weak against attacks on servers!
  • the server administrator cannot protect the data.
  • the present invention has been made to solve these problems, and an object of the present invention is to provide a data encryption system that is less likely to leak data even if a server is attacked. .
  • the encryption system is an encryption system including a client terminal and a server terminal, and the client terminal is input by an input means for inputting data and the input means.
  • An encryption unit that encrypts data; and a transmission unit that transmits the encrypted data encrypted by the encryption unit to the server terminal.
  • the server terminal receives the encrypted data from the client terminal.
  • It is a cryptographic key system. With such a configuration, even if data is leaked from Sano, it is encrypted, so it is possible to avoid the danger of knowing the contents.
  • the server terminal further decrypts encrypted data encrypted with the public key, and public key generation means for generating a public key for performing encryption by the encryption key means.
  • the client terminal may be composed of a plurality of terminals.
  • the transmission unit and the reception unit transmit and receive data encrypted using SSL. May be a feature.
  • the key generation server in the present invention generates a public key for encrypting data and a secret key for decrypting the data encrypted by the public key, and generates the data at a connected client terminal. And a secret key for decrypting encrypted data encrypted by the public key, a key generation server for transmitting the generated key, wherein the client terminal generates a public key for encryption.
  • the key generation server is characterized by comprising erasure means for erasing the message in response to completion of transmission to the client terminal. By doing so, the secret key does not remain in the server, so it is possible to avoid the danger of knowing the contents.
  • the key transmitting means may transmit data encrypted using SSL.
  • FIG. 1 is a diagram showing an overall configuration of a computer and a server in the present invention.
  • FIG. 2 is a diagram showing a specific configuration of a computer and a server in the present invention.
  • FIG. 3 is a block diagram showing a functional configuration of a cryptographic key system according to the present invention.
  • FIG. 4 is a flowchart showing a flow of processing of encryption key in the present invention.
  • FIG. 5 is a flowchart showing a flow of processing of decoding key in the present invention.
  • FIG. 6 is a flowchart showing a flow of key generation processing in the present invention. Explanation of symbols
  • FIG. 1 is a schematic diagram showing an overall configuration of a data encryption system in an embodiment of the present invention.
  • the data encryption system according to the present invention comprises a PC (Personal Computer) 1 and a server 2.
  • PC1 and server 2 are connected by a network.
  • the network here can be connected to various fields such as the Internet, or it can be used only within a narrow range such as an intranet.
  • PC1 is a terminal for inputting and browsing data, and sends the input data to server 2. I believe. Data is received from the server 2 when browsing data.
  • PC1 can send and receive files with server 2 via the network, and a commercially available PC can be used as it is. Also, the number of PCs 1 is not limited to one, and there may be two or more.
  • Server 2 receives and stores data from PC1. The stored data is sent to PC1 as needed. Server 2 can send and receive files to and from PC 1 via the network in the same way as PC 1. Server 2 can also use a commercially available PC as it is.
  • FIG. 2 shows an example of the hardware configuration of the PC 1 in the present invention.
  • the server 2 can also have the same configuration.
  • the PC 1 includes a central processing unit (CPU) 201 and a memory 204.
  • the CPU 201 and the memory 204 are connected to a hard disk device 213 as an auxiliary storage device via a bus.
  • Storage medium drive devices such as a flexible disk device 220, a hard disk device 213, and a CD-ROM drive 226 are connected to a bus via various controllers such as a flexible disk controller 219 and an IDE controller 225.
  • a portable storage medium such as a flexible disk is inserted into a storage medium drive device such as the flexible disk device 220.
  • the storage medium can store a computer program for executing the present embodiment by giving instructions to the CPU 201 in cooperation with the operating system. All the various means in this embodiment are one of computer programs. In addition, data generated by the program according to the present embodiment is stored in the memory 204, and is also stored in the hard disk device 213 as necessary. The computer 'program is executed by being loaded into the memory 204. Computer 'The program can be compressed or divided into multiple pieces and stored on a storage medium.
  • the hardware configuration typically includes user interface hardware.
  • User 'interface' nodeware includes, for example, a pointing 'device for input (mouse 207, joystick, etc.) and a keyboard 206, or a liquid crystal display for presenting visual data to the user.
  • a device 211 There is a device 211.
  • the image data is stored in the VRAM 209 and sent from the VGA controller 208 to the display device 211 via the DAC / LCD controller (LCDC) 210.
  • LCDC DAC / LCD controller
  • User in this example All input of force is performed through the mouse 207, the keyboard 206, and the like.
  • a modem can be connected via the serial port 215, and it can be connected to a network via the serial port 215 or the communication adapter 218 to communicate with other computer systems such as the server 2. The above configuration can be omitted as necessary.
  • FIG. 3 is a block diagram showing a functional configuration of the encryption system in the present invention.
  • the encryption system in this invention is composed of PC1 and server2.
  • the PC 1 is a client terminal that encrypts input data and transmits it to the server 2, and includes an input unit 10, an encryption unit 11, a transmission unit 12, a reception unit 13, and a decryption unit 14.
  • the input unit 10 is an input means for inputting data.
  • the input may be performed manually by the user using a keyboard 206, a mouse 2007, or the like, or data recorded externally from a CD-ROM drive 226 using a CD-ROM may be input.
  • the input data is stored in the hard disk device 213.
  • the encryption unit 11 is an encryption unit that performs encryption of data input by the input unit 10.
  • the encryption key reads the input data stored in the hard disk device 213 into the memory 204 and executes it by the CPU 201. Encryption is performed using a public key. Since the public key will be described later, its description is omitted here.
  • the transmission unit 12 is a transmission unit that transmits the data encrypted by the encryption unit 10 to the server 2. Transmission is performed by a modem or a communication adapter 218 connected to the serial port 215.
  • the receiving unit 13 is a receiving unit that receives the encrypted data received from the server 2. Reception is performed by a modem or a communication adapter 218 connected to the serial port 215.
  • the decoding unit 14 is a decoding unit that performs decoding of the data received by the receiving unit 13.
  • the decoding key reads the received data into the memory 204 and performs it by the CPU 201. Decryption is performed using a secret key. Since the secret key will be described later, its description is omitted here.
  • the server 2 is a server terminal that stores data received from the PC 1 and transmits the stored data to the PC 1.
  • the server 2 includes a reception unit 20, a storage unit 21, a transmission unit 22, and a key generation unit 23.
  • the receiving unit 20 is a receiving means for receiving the encrypted data received from the PCI.
  • the storage unit 21 is a storage unit that stores data received by the reception unit 20. Data storage is performed by the hard disk device 213.
  • the transmission unit 22 is a transmission unit that transmits the data stored in the storage unit 21 to the PC 1. Transmission is performed by a modem or a communication adapter 218 connected to the serial port 215.
  • the key generation unit 23 generates key data used for encryption.
  • the key data is generated by the CPU 201.
  • the encryption key program is installed in the hard disk device 213 in advance, and is read into the memory 204 and operates.
  • the operation of the CPU 201 here is all performed according to the instructions of the encryption key program.
  • the encryption means is not particularly limited as long as it uses a public key and a private key.
  • the RSA method is used for the encryption key.
  • the user inputs data to be stored in the server to the PC 1 (S101). Input is performed by the input unit 10.
  • the data to be input corresponds to the application for input, and can be numeric data, character data, or image data!
  • the entered data is stored as a file in memory 204 or hard disk unit 213 in PC1.
  • the encryption unit 11 performs encryption of the input data (S102). Encryption is performed using a public key that has already been acquired. The data encrypted with the public key obtained here cannot be restored without using the private key.
  • the encryption method is not particularly limited, but encryption such as public key encryption or the like in which encryption and decryption are performed is performed.
  • the key data used at this time is a binary bit string. The longer the bit length, the more key data combinations that can be considered, and the more difficult the Brute 'force' attack, so the safety increases. . In this embodiment, 512-bit key data is used.
  • the encryption unit 11 uses the input cell data as hash data. (S103). This hash data is necessary for confirming whether decryption is performed correctly.
  • the encrypted cell data and hash data are stored in the memory 204.
  • the cell data and hash data are recorded in the hard disk device 213 as files in accordance with the user's save operation.
  • noh and shush data will be briefly described.
  • the data is mainly used for data authentication, and the reliability of the data can be improved by using the data.
  • hash data is used to confirm whether the key data used for encryption is correct.
  • 8-bit data is generated by applying the original data to a specific function expression.
  • the formula used here is not particularly limited, but a more complex formula is preferable because it cannot be overlooked. For example, if hash data is generated using a hash function called SHA-1, the generated 20-byte hash data becomes data that is different in all bytes just by converting the original data by 1 bit.
  • the transmitting unit 12 transmits the generated encrypted data to the server 2 (S104). This transmission can be made more secure by using SSL (Secure Sockets Layer) technology.
  • the server 2 When the server 2 receives the encrypted data transmitted from the PC 1 by the receiving unit 20, the server 2 stores the encrypted data as it is in the storage unit 21 of the Sano 2 without performing decryption. Server 2 does not have a private key, so it is impossible to restore the stored data even if the server administrator is malicious. In this way, even if server 2 is attacked and the stored data is stolen, the data remains encrypted because there is no secret key, and the correct data is obtained by decryption. You can't do that.
  • the decryption key program is also installed in the hard disk device 213 in advance, and is read into the memory 204 and operates.
  • All operations of the CPU 201 are also performed by instructions of the decryption program.
  • the CPU 201 of the PC 1 transmits a request for data transmission request to the server 2 (S201). Transmission at this time can also be improved by using SSL technology.
  • server 2 When server 2 receives the request for data transmission from PC 1, server 2 transmits the encrypted data stored in storage unit 21 to PC 1 as it is using transmission unit 22 (S202).
  • the PCI receiving unit 14 When receiving the encrypted data from the transmitting unit 22, the PCI receiving unit 14 outputs the received encrypted data to the decrypting unit 15.
  • the decryption key unit 15 decrypts the encrypted data using the secret key (S203). Since the private key is provided only in PCI, even if the encrypted data is obtained from a terminal other than PC1 by an unauthorized method, it cannot be decrypted unless the private key is obtained.
  • the decryption key unit 15 generates hash data from the decryption key data when the decryption key is performed (S204), and checks whether the hash data is correct (S205). Try to check if the key data is correct! / Or key data. If the hash data is correct, then decryption is complete.
  • the key generation tool is stored in Server 2.
  • the user who uses the data accesses Sarn 2 from PC 1 and obtains the secret key in advance.
  • the public key corresponding to this secret key is stored in the server 2, and the public key can be obtained from any terminal connected to the server 2.
  • the private key is not stored in server 2 and cannot be obtained from a terminal other than PC1.
  • the server 2 activates the key generation tool by access from the PC 1.
  • the key generation tool generates a public key and a secret key (S302).
  • the secret key generated here is key data for decrypting the encrypted data encrypted with the public key generated here.
  • the generated public key and private key are temporarily stored in the memory of PC1.
  • Key data can be generated mainly by generating random numbers and using the random numbers as key data. Random key data is more difficult to predict than key data generated by other methods. It is desirable to use a dedicated algorithm that is more unpredictable than the random number generation algorithm. Can be increased.
  • the secret key is not stored in the storage means, but is transmitted to the PC 1 as it is (S303).
  • the private key is also deleted (S304).
  • the public key is stored as a file in the storage means (S305). This is because even if the public key is illegally acquired by a malicious third party, encryption can be performed but decryption cannot be performed, so there is no risk of leaking information when data leaks. .
  • the server 2 is attacked and stored by leaving only the public key in the server 2, deleting the secret key from the server, and transmitting only to the PC 1 that is browsing the data. Even if the data is stolen, there is no secret key, so the data remains as encrypted data, and the correct data cannot be obtained by decryption.
  • the power used to send and receive data on the same PC may be divided into a receiving PC and a sending PC.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Storage Device Security (AREA)

Abstract

 サーバを攻撃されてもデータを漏洩される危険の少ないデータ暗号化システムを提供する。  本発明における暗号化システムは、クライアント端末とサーバ端末とを備えた暗号化システムであって、クライアント端末は、データを入力する入力手段と、入力手段により入力されたデータを暗号化する暗号化手段と、サーバ端末に対して前記暗号化手段により暗号化された暗号データを送信する送信手段を有し、サーバ端末は、クライアント端末から暗号データを受信する受信手段と、受信手段により受信した暗号データを暗号化された状態で格納する記憶手段と、クライアント端末に対して記憶手段に格納された暗号データを送信する送信手段を有する暗号化システムである。このような構成により、サーバからデータが漏洩しても暗号化されているため、内容を知られる危険を回避することが可能となる。

Description

明 細 書
データ暗号化システム及び鍵生成サーバ
技術分野
[0001] 本発明は、データ暗号ィヒシステム及び鍵生成サーバに関するものであり、より詳細 には、サーバ'クライアントモデルによるデータ暗号ィ匕システム及び鍵生成サーバに 関する。
背景技術
[0002] インターネット等のネットワーク網を介してサーバとクライアント間でデータの送受信 を行う場合、データの漏洩や改竄防止の措置が必要となる。そのため、サーバへの アクセスをサーバ管理者とデータ作成者、利用者のみに限定してアクセス制限をか けると 、う方法が取られることも多 、。
[0003] し力し、 1台のサーバで複数の会社のデータを共有するホスティング共有サーバの 場合、会社毎にアクセス制限をかけていても、同一のサーバ内に複数の会社のデー タが存在するため、不正アクセスを行いやすい。特にこのような場合は、アクセス制限 を行うソフトウェアにセキュリティホールが存在する可能性が高ぐセキュリティの面で は問題点が多い。
[0004] その対策として、データを暗号ィヒして送受信することにより、送受信時のデータを盗 聴されたとしても、解読できないようにする方法が提案され、利用されるようになった( 例えば、特許文献 1など)。
[0005] し力しながら、送受信時にデータの暗号ィ匕を行っても、サーバにデータを保存する ときのデータは暗号ィ匕されてない場合が多ぐこのような場合、データ送受信時の盗 聴でなくサーバを攻撃された場合のデータ漏洩の危険性はかなり高いものであった。
[0006] 更に、サーバのセキュリティ対応はサーバ管理者に依存する場合が多ぐサーバ管 理者はサーバ上のデータを自由に閲覧したりデータを持ち出したりすることが可能で あった。サーバ管理を別会社に委託している場合はこのようなことが問題になる場合 も多い。
特許文献 1:特開 2004— 254027号公報 発明の開示
発明が解決しょうとする課題
[0007] このように、従来のデータ暗号化システムは、サーバへの攻撃に対して弱!、もので あった。また、サーバ管理者力もデータを守ることができないという問題点があった。
[0008] 本発明は、これらの問題点を解決するためになされたものであり、サーバを攻撃さ れてもデータを漏洩される危険の少ないデータ暗号ィ匕システムを提供することを目的 とする。
課題を解決するための手段
[0009] 本発明における暗号ィ匕システムは、クライアント端末とサーバ端末とを備えた暗号 ィ匕システムであって、前記クライアント端末は、データを入力する入力手段と、前記入 力手段により入力されたデータを暗号化する暗号化手段と、前記サーバ端末に対し て前記暗号化手段により暗号化された暗号データを送信する送信手段を有し、前記 サーバ端末は、前記クライアント端末から暗号データを受信する受信手段と、前記受 信手段により受信した暗号データを暗号化された状態で格納する記憶手段と、前記 クライアント端末に対して前記記憶手段に格納された前記暗号データを送信する送 信手段を有する暗号ィ匕システムである。このような構成により、サーノからデータが漏 洩しても暗号化されているため、内容を知られる危険を回避することが可能となる。
[0010] 前記サーバ端末は、更に、前記暗号ィ匕手段により暗号ィ匕を行うための公開鍵を生 成する公開鍵生成手段と、前記公開鍵により暗号化された暗号データを復号ィ匕する ための秘密鍵を生成する秘密鍵生成手段と、前記公開鍵生成手段の生成した公開 鍵及び前記秘密鍵生成手段の生成した秘密鍵を前記クライアント端末に対して送信 する鍵送信手段と、前記秘密鍵生成手段の生成した秘密鍵を前記クライアント端末 に対する送信が完了したことに応じて消去する消去手段を備え、前記クライアント端 末の暗号化手段は、前記サーバ端末より送信された公開鍵を用いて暗号ィ匕すること を特徴としてもよい。このようにすることにより、サーバ内に秘密鍵が残らないため、内 容を知られる危険を回避することが可能となる。
[0011] 前記クライアント端末は、複数の端末より構成されることを特徴としてもよい。
[0012] 前記送信手段及び受信手段は、 SSLを用いて暗号化したデータを送受信すること を特徴としてもよい。
[0013] 本発明における鍵生成サーバは、データを暗号ィ匕する公開鍵と前記公開鍵により 暗号化されたデータを復号ィ匕するための秘密鍵を生成し、接続されたクライアント端 末に生成した鍵を送信する鍵生成サーバであって、前記クライアント端末により暗号 化するための公開鍵を生成する公開鍵生成手段と、前記公開鍵により暗号化された 暗号データを復号化するための秘密鍵生成手段と、前記公開鍵生成手段の生成し た公開鍵及び前記秘密鍵生成手段の生成した秘密鍵を前記クライアント端末に対し て送信する鍵送信手段と、前記秘密鍵生成手段の生成した秘密鍵を前記クライアン ト端末に対する送信が完了したことに応じて消去する消去手段を備えることを特徴と する鍵生成サーバである。このようにすることにより、サーバ内に秘密鍵が残らないた め、内容を知られる危険を回避することが可能となる。
[0014] 前記鍵送信手段は、 SSLを用いて暗号ィ匕したデータを送信することを特徴としても よい。
発明の効果
[0015] 本発明によれば、サーバを攻撃されてもデータを漏洩される危険の少な!/ヽデータ 暗号ィ匕システムを提供することが可能となる。
図面の簡単な説明
[0016] [図 1]図 1は、本発明におけるコンピュータ及びサーバの全体構成を示す図である。
[図 2]図 2は、本発明におけるコンピュータ及びサーバの具体的構成を示す図である
[図 3]図 3は、本発明における暗号ィ匕システムの機能構成を示すブロック図である。
[図 4]図 4は、本発明における暗号ィ匕の処理の流れを示すフローチャートである。
[図 5]図 5は、本発明における復号ィ匕の処理の流れを示すフローチャートである。
[図 6]図 6は、本発明における鍵生成の処理の流れを示すフローチャートである。 符号の説明
[0017] 1 PC
2 サーバ
10 入力部 11 暗号化部
12 送信部
13 受信部
14 複合化部
20 受信部
21 L 部
22 送信部
23 鍵生成部
201 CPU
204 メモリ
206 キーボード
207 マウス
208 VGAコントローラ
211 表示装置
213 ハードディスク装置
215 シリアノレポート
218 通信アダプタ
219 フレキシブルディスク コントローラ
220 フレキシブルディスク '装置
225 IDEコントローラ
226 CD— ROMドライブ
発明を実施するための最良の形態
[0018] 図 1は、本発明の実施の形態におけるデータ暗号ィ匕システムの全体構成を示す模 式図である。本発明におけるデータ暗号ィ匕システムは、 PC (Personal Computer) 1と サーバ 2より構成される。 PC1とサーバ 2はネットワークにより接続されている。ここで のネットワークはインターネット等の多方面力 接続可能なものでも、イントラネット等 の狭レ、範囲内でしか利用できな 、ものでもよ 、。
[0019] PC1は、データの入力及び閲覧を行う端末であり、入力したデータをサーバ 2に送 信する。またデータ閲覧時は、サーバ 2からデータを受信する。 PC1は、ネットワーク を介してサーバ 2とファイルの送受信が可能であり、市販されている PCをそのまま利 用することができる。また、 PC1は 1台とは限らず、 2台以上あってもよい。
[0020] サーバ 2は、 PC1からデータを受信し格納する。格納したデータは、必要に応じて P C1に送信される。サーバ 2も、 PC1と同様にネットワークを介して PC1とファイルの送 受信が可能である。サーバ 2も市販されている PCをそのまま利用することが可能であ る。
[0021] 図 2は、本発明における、 PC1のハードウェア構成の一例を示している。尚、サーバ 2も同様の構成を備えることができる。 PC1は、中央処理装置 (CPU) 201とメモリ 20 4とを含んでいる。 CPU201とメモリ 204とは、バスを介して補助記憶装置としてのハ ードディスク装置 213に接続される。フレキシブルディスク装置 220、ハードディスク 装置 213、 CD—ROMドライブ 226等の記憶媒体駆動装置は、フレキシブルディスク 'コントローラ 219、 IDEコントローラ 225などの各種コントローラを介してバスに接続さ れる。フレキシブルディスク装置 220等の記憶媒体駆動装置には、フレキシブルディ スク等の可搬型記憶媒体が挿入される。
[0022] 記憶媒体にはオペレーティングシステムと協同して CPU201に命令を与え、本実 施形態を実施するためのコンピュータ 'プログラムを記憶することができる。本実施形 態における各種手段は全てコンピュータ 'プログラムの一つである。また、本実施形 態におけるプログラムが生成するデータは、メモリ 204に記憶され、必要に応じて、ハ ードディスク装置 213にも記憶される。コンピュータ 'プログラムは、メモリ 204にロード されることによって実行される。コンピュータ 'プログラムは圧縮し、又、複数に分割し て記憶媒体に記憶することができる。ハードウェア構成は、典型的には、ユーザー'ィ ンターフェース ·ハードウェアを備える。
[0023] ユーザ'インターフェース'ノヽードウエアとしては、例えば、入力をするためのポイン ティング 'デバイス(マウス 207、ジョイスティック等)やキーボード 206、あるいは、視覚 データをユーザーに提示するための液晶ディスプレイなどの表示装置 211がある。 画像データは VRAM209に記憶され、 VGAコントローラ 208から DAC/LCDコント ローラ (LCDC) 210を介して表示装置 211に送られる。本実施例におけるユーザー 力もの入力は、全てマウス 207やキーボード 206などを介して行われる。また、シリア ルポート 215を介してモデムを接続することが可能であり、シリアルポート 215や通信 アダプタ 218を介してネットワークに接続し、サーバ 2等の他のコンピュータシステムと 通信を行うことができる。上記構成は必要に応じて省略することができる。
[0024] 図 3は、本発明における暗号ィ匕システムの機能構成を示すブロック図である。本発 明における暗号ィ匕システムは、 PC1とサーバ 2より構成される。
[0025] PC1は、入力したデータを暗号ィ匕しサーバ 2に送信するクライアント端末であり、入 力部 10、暗号化部 11、送信部 12、受信部 13、復号化部 14を備える。
[0026] 入力部 10は、データを入力する入力手段である。入力はキーボード 206、マウス 2 07などによりユーザーが手動で行ってもよいし、 CD—ROMドライブ 226から CD— ROMにより外部で記録されたデータを入力するようにしてもよい。入力したデータは ハードディスク装置 213に格納される。
[0027] 暗号化部 11は、入力部 10により入力されたデータの暗号ィ匕を行う暗号ィ匕手段であ る。暗号ィ匕はハードディスク装置 213に格納された入力データをメモリ 204に読み出 し、 CPU201により行う。暗号ィ匕は公開鍵を利用して行う。公開鍵については後に説 明するのでここでは説明を省略する。
[0028] 送信部 12は、暗号ィ匕部 10により暗号ィ匕したデータをサーバ 2に対して送信する送 信手段である。送信はシリアルポート 215に接続されたモデムや通信アダプタ 218に より行われる。
[0029] 受信部 13は、サーバ 2から受信した暗号化データを受信する受信手段である。受 信は、シリアルポート 215に接続されたモデムや通信アダプタ 218により行われる。
[0030] 復号ィ匕部 14は、受信部 13により受信したデータの復号ィ匕を行う復号ィ匕手段である 。復号ィ匕は受信したデータをメモリ 204に読み出し、 CPU201により行う。復号化は 秘密鍵を利用して行う。秘密鍵については後に説明するのでここでは説明を省略す る。
[0031] サーバ 2は、 PC1から受信したデータを格納し、 PC 1に対して格納したデータの送 信を行うサーバ端末である。サーバ 2は、受信部 20、記憶部 21、送信部 22、鍵生成 部 23を備える。 [0032] 受信部 20は、 PCIから受信した暗号ィ匕データを受信する受信手段である。受信は
、シリアルポート 215に接続されたモデムや通信アダプタ 218により行われる。
[0033] 記憶部 21は、受信部 20により受信したデータの格納を行う記憶手段である。デー タの格納はハードディスク装置 213により行われる。
[0034] 送信部 22は、記憶部 21に格納したデータを PC1に対して送信する送信手段であ る。送信は、シリアルポート 215に接続されたモデムや通信アダプタ 218により行われ る。
[0035] 鍵生成部 23は、暗号ィ匕に利用する鍵データの生成を行う。鍵データの生成は、 CP U201により行う。
[0036] 続いて、図 4に示すフローチャートを用いて、本発明におけるデータ暗号化の処理 の流れについて説明する。暗号ィ匕プログラムは予めハードディスク装置 213にインス トールされてあり、メモリ 204に読み込まれ動作する。ここでの CPU201の動作は、全 て暗号ィ匕プログラムの命令により行われる。暗号化の手段は、公開鍵と秘密鍵を用い た方式であれば特に限定されな 、。ここでの暗号ィ匕は RSA方式を用いることとする。
[0037] まず、ユーザーはサーバに格納したいデータを PC1に対して入力する(S101)。入 力は入力部 10により行われる。入力するデータは入力のためのアプリケーションに対 応するデータであり数値データでも文字データでも画像データでもよ!ヽ。入力したデ ータはファイルとして PC1内のメモリ 204またはハードディスク装置 213に格納される
[0038] データの入力が完了すると、暗号化部 11は、入力されたデータの暗号ィ匕を行う(S 102)。暗号ィ匕は、すでに取得している公開鍵を利用して行う。ここで取得した公開鍵 により暗号ィ匕されたデータは、秘密鍵を利用しな 、と復元ができな 、。
[0039] 暗号ィ匕の方法は特に限定されないが、公開鍵暗号等のキーによる暗号化及び復 号ィ匕が行われる方式の暗号ィ匕を行う。この時利用されるキーデータは、 2進数のビッ ト列であり、ビット長が長いほど考えられるキーデータの組み合わせが多くなり、ブル ート'フォース'アタックが困難になるため、安全性が増す。本実施例では 512ビットの ビット長のキーデータを利用する。
[0040] データの暗号化と共に、暗号化部 11は、入力したセルのデータからハッシュデータ の生成も行うようにしてもょ 、 (S103)。このハッシュデータは復号ィ匕が正しく行われ ているかを確認するときに必要となるデータである。暗号化されたセルのデータ、ハツ シュデータはメモリ 204に格納される。また、セルのデータ及びハッシュデータはユー ザ一の保存操作に応じてファイルとしてハードディスク装置 213に記録される。
[0041] ここで、ノ、ッシュデータについて簡単に説明する。ノ、ッシュデータは、主にデータの 認証に使われるデータであり、ノ、ッシュデータを用いることにより、データの信頼性を 高めることが可能となる。本発明の実施の形態では、暗号化に利用したキーデータが 正し 、ものであるかを確認するためにハッシュデータを利用して 、る。
[0042] ノ、ッシュデータの生成には元データを特定の関数式にかけて 8ビットのデータを生 成する。ここで利用する式は特に限定されないが、複雑な式である方が式を見破られ ることがないため望ましい。例えば、 SHA—1というハッシュ関数を利用してハッシュ データを生成すると、元データを 1ビット変換しただけで、生成する 20バイトのハツシ ュデータが全バイト異なるデータになる。
[0043] このようにして生成したハッシュデータを記憶しておくことにより、復号化したデータ が正しい場合は、復号化したデータに基づき、生成したハッシュデータも同じ値にな るはずなので、正しいデータであるかどうかを確認することが可能となる。
[0044] 暗号化が完了すると、送信部 12は、サーバ 2に生成した暗号データを送信する(S 104)。このときの送信は、 SSL (Secure Sockets Layer)の技術を利用すると、より安 全性を高めることができる。
[0045] サーバ 2は、受信部 20により PC1から送信された暗号データを受信すると、復号は 行わずに暗号データのまま、サーノ 2の備える記憶部 21に格納する。サーバ 2は、 秘密鍵を持っていないため、サーバ管理者に悪意があつたとしても格納されたデー タを復元することは不可能である。また、このようにすることにより、サーバ 2が攻撃さ れて、格納したデータが盗まれたとしても、秘密鍵がないためデータは暗号データの ままであり、復号ィ匕して正しいデータを取得することはできなくなる。
[0046] 続いて、図 5に示すフローチャートを用いて、本発明における復号化の処理の流れ について説明する。復号ィ匕のプログラムも暗号ィ匕のプログラムと同様に予めハードデ イスク装置 213にインストールされてあり、メモリ 204に読み込まれ動作する。ここでの CPU201の動作も、全て復号ィ匕プログラムの命令により行われる。
[0047] まず、 PC1の有する CPU201が、サーバ 2に対してデータ送信要求のリクエストを 送信する(S201)。このときの送信も、 SSLの技術を利用することにより安全性を高め ることがでさる。
[0048] サーバ 2は、 PC1からデータ送信要求のリクエストを受信すると、記憶部 21に格納 した暗号データを送信部 22により、そのまま PC1に対して送信する(S202)。 PCIの 受信部 14は、送信部 22から暗号データを受信すると、受信した暗号化データを復号 化部 15に対して出力する。復号ィ匕部 15は、秘密鍵を用いて暗号データの復号ィ匕を 行う(S203)。秘密鍵は PCIにのみ備えられているため、 PC1以外の端末から暗号 データを不正な方法で取得したとしても、秘密鍵を取得しな 、限り復号化は不可能 である。
[0049] このとき、復号ィ匕部 15は、復号ィ匕を行ったときに復号ィ匕データからハッシュデータ を生成し(S204)、ハッシュデータが正し 、かどうか確認する(S205)ことによりキー データが正し!/、キーデータであるかどうかを確認するようにしてもょ 、。ハッシュデー タが正しい場合は、そこで復号ィ匕は完了となる。
[0050] 続いて、鍵生成部 23による鍵生成の方法について説明する。鍵生成ツールは、サ ーバ 2の中に格納されている。データを利用するユーザーは、事前に PC1からサー ノ 2にアクセスし、秘密鍵を取得する。この秘密鍵に対応する公開鍵はサーバ 2内に 格納され、公開鍵はサーバ 2に接続されたどの端末からも取得可能である。ただし、 秘密鍵についてはサーバ 2には格納されず、 PC1以外の端末から取得することは不 可能である。
[0051] 図 5に示すフローチャートを用いて、本発明における鍵生成時の処理の流れにつ いて説明する。まず、 PC 1からネットワークを介してサーバ 2の備える鍵生成ツールに アクセスする(S301)。
[0052] サーバ 2は、 PC1からのアクセスにより鍵生成ツールを起動する。鍵生成ツールは、 公開鍵と秘密鍵を生成する(S302)。ここで生成される秘密鍵は、ここで生成される 公開鍵により暗号ィ匕された暗号データを復号ィ匕するためのキーデータである。生成 した公開鍵及び秘密鍵は一時的に PC1の備えるメモリに格納される。 [0053] キーデータの生成は、主に乱数を生成し、その乱数をキーデータとして利用するこ とができる。乱数によるキーデータが他の方法により生成されたキーデータよりも予測 が難しい。乱数生成のアルゴリズムは、より予測不可能な専用のアルゴリズムを利用 することが望ましいが、既存のライブラリが備える乱数発生の関数を利用しても、乱数 を利用しない場合に比べて予測不可能性を高めることができる。
[0054] サーバ 2が秘密鍵及び公開鍵を生成すると、秘密鍵は記憶手段に格納せずに、そ のまま PC1に対して送信する(S303)。秘密鍵を記憶手段に格納しないことで、サー バ 2からデータが漏洩したときに、データ内の情報まで漏洩されることを防止すること ができる。メモリ内に残っている秘密鍵のデータも削除される(S304)。
[0055] 一方、公開鍵に関しては、記憶手段にファイルとして格納する(S305)。これは、公 開鍵は悪意ある第三者により不正に取得されても、暗号ィ匕はできるが復号ィ匕はでき な 、ため、データ漏洩時に情報まで漏洩される危険がな 、からである。
[0056] このようにして、公開鍵のみサーバ 2に残し、秘密鍵はサーバから消去し、データの 閲覧を行う PC1にのみ送信するようにすることにより、サーバ 2が攻撃されて、格納し たデータが盗まれたとしても、秘密鍵がな 、ためデータは暗号データのままであり、 復号ィ匕して正しいデータを取得することはできなくなる。
[0057] その他の発明の実施の形態.
上述の例では、データの送信及び受信を同一の PCで行っていた力 これを受信用 の PCと送信用の PCに分けて行うようにしてもょ 、。
産業上の利用可能性
[0058] 既存のサーバ、クライアントモデルのシステムに、プログラムの追加をすることにより 利用可能となる。

Claims

請求の範囲
[1] クライアント端末とサーバ端末とを備えた暗号ィ匕システムであって、
前記クライアント端末は、データを入力する入力手段と、前記入力手段により入力さ れたデータを暗号化する暗号化手段と、前記サーバ端末に対して前記暗号化手段 により暗号化された暗号データを送信する送信手段を有し、
前記サーバ端末は、前記クライアント端末から暗号データを受信する受信手段と、 前記受信手段により受信した暗号データを暗号化された状態で格納する記憶手段と 、前記クライアント端末に対して前記記憶手段に格納された前記暗号データを送信 する送信手段を有する暗号化システム。
[2] 前記サーバ端末は、更に、
前記暗号化手段により暗号化を行うための公開鍵を生成する公開鍵生成手段と、 前記公開鍵により暗号化された暗号データを復号化するための秘密鍵を生成する秘 密鍵生成手段と、前記公開鍵生成手段の生成した公開鍵及び前記秘密鍵生成手 段の生成した秘密鍵を前記クライアント端末に対して送信する鍵送信手段と、前記秘 密鍵生成手段の生成した秘密鍵を前記クライアント端末に対する送信が完了したこと に応じて消去する消去手段を備え、
前記クライアント端末の暗号化手段は、前記サーバ端末より送信された公開鍵を用 いて暗号ィ匕することを特徴とする請求項 1記載の暗号ィ匕システム。
[3] 前記クライアント端末は、複数の端末より構成されることを特徴とする請求項 1または
2記載の暗号ィ匕システム。
[4] 前記送信手段及び受信手段は、 SSL (Secure Sockets Layer)を用いて暗号化した データを送受信することを特徴とする請求項 1、 2または 3記載の暗号ィ匕システム。
[5] データを暗号ィ匕する公開鍵と前記公開鍵により暗号ィ匕されたデータを復号ィ匕する ための秘密鍵を生成し、接続されたクライアント端末に生成した鍵を送信する鍵生成 サーバであって、
前記クライアント端末により暗号ィヒするための公開鍵を生成する公開鍵生成手段と 、前記公開鍵により暗号化された暗号データを復号化するための秘密鍵生成手段と 、前記公開鍵生成手段の生成した公開鍵及び前記秘密鍵生成手段の生成した秘密 鍵を前記クライアント端末に対して送信する鍵送信手段と、前記秘密鍵生成手段の 生成した秘密鍵を前記クライアント端末に対する送信が完了したことに応じて消去す る消去手段を備えることを特徴とする鍵生成サーバ。
前記鍵送信手段は、 SSLを用いて暗号ィ匕したデータを送信することを特徴とする 請求項 5記載の鍵生成サーバ。
PCT/JP2005/018341 2005-04-25 2005-10-04 データ暗号化システム及び鍵生成サーバ WO2006114907A1 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2005-126835 2005-04-25
JP2005126835A JP2006304215A (ja) 2005-04-25 2005-04-25 データ暗号化システム及び鍵生成サーバ

Publications (1)

Publication Number Publication Date
WO2006114907A1 true WO2006114907A1 (ja) 2006-11-02

Family

ID=37214541

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2005/018341 WO2006114907A1 (ja) 2005-04-25 2005-10-04 データ暗号化システム及び鍵生成サーバ

Country Status (2)

Country Link
JP (1) JP2006304215A (ja)
WO (1) WO2006114907A1 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7899186B2 (en) * 2007-09-20 2011-03-01 Seagate Technology Llc Key recovery in encrypting storage devices
JP5133850B2 (ja) * 2008-11-06 2013-01-30 独立行政法人科学技術振興機構 ストレージノード用再暗号化システム及びネットワークストレージ

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09130375A (ja) * 1995-11-02 1997-05-16 Nippon Telegr & Teleph Corp <Ntt> 情報金庫保管システム及びその方法

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09130375A (ja) * 1995-11-02 1997-05-16 Nippon Telegr & Teleph Corp <Ntt> 情報金庫保管システム及びその方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
SUGIYAMA H. ET AL.: "Internet o Mochiita File Backup System no Kaihatsu", THE INSTITUTE OF ELECTRONICS, INFORMATION AND COMMUNICATION ENGINEERS, KENKYU HOKOKU, OFS96-41, 22 November 1996 (1996-11-22), pages 1 - 6, XP003004092 *

Also Published As

Publication number Publication date
JP2006304215A (ja) 2006-11-02

Similar Documents

Publication Publication Date Title
KR100334720B1 (ko) 보안기능을 갖는 어댑터 및 이를 이용한 컴퓨터 보안시스템
CN100487715C (zh) 一种数据安全存储***和装置及方法
CN102271037B (zh) 基于在线密钥的密钥保护装置
JP4459703B2 (ja) キーボードまたは関連デバイスとの機密保護機能のある通信
CN103563278B (zh) 保护加密的虚拟硬盘
JP4673890B2 (ja) オンラインサービスを用いてデバイスに直接証明秘密鍵を転送する方法
TWI441022B (zh) 用於安全記憶體中之策略式加密應用程式規劃介面
JP4616345B2 (ja) 配布cdを用いて直接証明秘密鍵を装置に配布する方法
CN101051904B (zh) 一种保护网络应用程序使用账号密码进行登录的方法
CN110519309B (zh) 数据传输方法、装置、终端、服务器及存储介质
EP2267628A2 (en) Token passing technique for media playback devices
US8156331B2 (en) Information transfer
EP1917618A2 (en) Administration of data encryption in enterprise computer systems
CN104618096A (zh) 保护密钥授权数据的方法、设备和tpm密钥管理中心
CN114244508A (zh) 数据加密方法、装置、设备及存储介质
CN116244750A (zh) 一种涉密信息维护方法、装置、设备及存储介质
Young Cryptoviral extortion using Microsoft's Crypto API
US8085932B2 (en) Secure distribution of data or content using keyless transformation
CN104392153A (zh) 一种软件保护方法及***
WO2006114907A1 (ja) データ暗号化システム及び鍵生成サーバ
CN114553557A (zh) 密钥调用方法、装置、计算机设备和存储介质
CN108985079B (zh) 数据验证方法和验证***
JP2002247021A (ja) アクセス制限付コンテンツ表示方法およびその装置
CN114124366A (zh) 一种可信芯片的密钥生成方法及相关设备
WO2006025346A1 (ja) 暗号化、復号化プログラム及び暗号システム

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application
NENP Non-entry into the national phase

Ref country code: DE

WWW Wipo information: withdrawn in national office

Country of ref document: DE

NENP Non-entry into the national phase

Ref country code: RU

WWW Wipo information: withdrawn in national office

Country of ref document: RU

122 Ep: pct application non-entry in european phase

Ref document number: 05790523

Country of ref document: EP

Kind code of ref document: A1