JP2006333164A - Information processor - Google Patents

Information processor Download PDF

Info

Publication number
JP2006333164A
JP2006333164A JP2005154996A JP2005154996A JP2006333164A JP 2006333164 A JP2006333164 A JP 2006333164A JP 2005154996 A JP2005154996 A JP 2005154996A JP 2005154996 A JP2005154996 A JP 2005154996A JP 2006333164 A JP2006333164 A JP 2006333164A
Authority
JP
Japan
Prior art keywords
key
encryption
external
encrypted
terminal
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2005154996A
Other languages
Japanese (ja)
Inventor
Tadashi Ono
廉 大野
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Systems and Services Ltd
Original Assignee
Hitachi Systems and Services 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 Systems and Services Ltd filed Critical Hitachi Systems and Services Ltd
Priority to JP2005154996A priority Critical patent/JP2006333164A/en
Publication of JP2006333164A publication Critical patent/JP2006333164A/en
Pending legal-status Critical Current

Links

Images

Abstract

<P>PROBLEM TO BE SOLVED: To rationally manage an encryption key for encrypting/decrypting data in a terminal. <P>SOLUTION: An encryption key obtained by being encrypted by an external key A of a user input and an encryption key obtained by being encrypted in accordance with user identification information by a public key of an external key B managed by a key management server 11 are respectively stored in a portable terminal 14 as encryption keys of data automatically generated in the terminal 14. As a method for extracting the encryption keys, a method for decrypting the encryption key by the external key A of the user input is used during offline or when there is no change in the external key A, and the key management server is requested to decrypt the encryption key encrypted by the public key of the external key B to receive the encryption key during online and when there is a change in the external key A. <P>COPYRIGHT: (C)2007,JPO&INPIT

Description

本発明は、ネットワークを介してサーバに接続したオンライン状態またはネットワークから切り離したオフライン状態で使用可能な端末を備えた情報処理装置に関する。   The present invention relates to an information processing apparatus including a terminal that can be used in an online state connected to a server via a network or in an offline state disconnected from the network.

ネットワークが発達し、組織内ではほとんどのPC(パーソナルコンピュータ)端末がネットワークに接続されているが、組織外に持ち出すノート型PCなどの携帯型端末では、定常的にネットワーク接続を確保することが難しいことから、オフラインで使用するために端末内にデータを保存する必要がある。しかし、ノートPCなどの持ち運び可能な携帯型端末は盗難の危険があることから、外部へのデータ流出を防ぐために、携帯型端末内のデータ(特に機密情報)を暗号化する必要がある。   The network has developed and most PC (personal computer) terminals are connected to the network in the organization. However, it is difficult to constantly maintain the network connection with a portable terminal such as a notebook PC taken out of the organization. Therefore, it is necessary to store data in the terminal for offline use. However, since portable portable terminals such as notebook PCs have a risk of theft, it is necessary to encrypt data (particularly confidential information) in the portable terminal in order to prevent data leakage to the outside.

このような持ち運び可能な携帯型端末のデータの暗号化に関して、特開平11−272561号公報に記載された情報処理装置は、パスワードによって暗号鍵を暗号化し、データのブロック毎に暗号鍵を変更することによって、媒体内のデータの秘匿化を確保するように構成している。   Regarding encryption of data of such portable terminals that can be carried, an information processing apparatus described in Japanese Patent Application Laid-Open No. 11-272561 encrypts an encryption key with a password and changes the encryption key for each block of data. Thus, the data in the medium is secured.

また、特開平10−105470号公報に記載された情報処理装置においては、サーバからクライアントに送られるデータに対して認証情報を加えた暗号化を施し、クライアントでの復号化には認証を必須とする構成とすることによって秘匿化を図るようにしている。   In the information processing apparatus described in Japanese Patent Laid-Open No. 10-105470, encryption is performed by adding authentication information to data sent from the server to the client, and authentication is essential for decryption at the client. Concealment is achieved by adopting such a configuration.

特開平11−272561号公報JP-A-11-272561 特開平10−105470号公報JP-A-10-105470

しかし、特許文献1に記載された方法では、端末・媒体毎に個別にパスワードを設定する必要があり、パスワードをユーザ単位で管理することが困難であり、パスワードの変更やパスワード忘れに対処することができないという問題がある。また、特許文献2に記載された方法では、クライアントではデータを暗号化することができないことから、オフライン使用では実現することができないという問題があった。   However, in the method described in Patent Document 1, it is necessary to set passwords individually for each terminal and medium, and it is difficult to manage passwords on a per-user basis. There is a problem that can not be. Further, the method described in Patent Document 2 has a problem that data cannot be encrypted by the client and cannot be realized by offline use.

本発明の目的は、オンラインおよびオフラインの何れの状態での使用においても端末においてデータを暗号化して保持し、復号化して使用することができる便利な情報処理装置を提供することにある。
具体的には、端末においてユーザから与えられるパスワードなどを鍵としてデータを暗号化することができ、更に、異なる端末を使用する場合においても同一のパスワードを使用することが可能であり、更に、パスワードが他の端末によって変更された場合やユーザがパスワードを紛失(失念)した場合においてもデータの復号化が可能な情報処理装置を提供することにある。
SUMMARY OF THE INVENTION An object of the present invention is to provide a convenient information processing apparatus capable of encrypting and holding data in a terminal and decrypting and using the data in both online and offline states.
Specifically, data can be encrypted using a password or the like given by the user at the terminal as a key, and the same password can be used even when different terminals are used. It is an object of the present invention to provide an information processing apparatus capable of decrypting data even when the password is changed by another terminal or when the user loses (forgets) the password.

本発明は、端末内で自動生成したデータの暗号鍵を、パスワードなどのユーザによって与えられる外部鍵Aによって暗号化した外部鍵A暗号済鍵と、鍵管理サーバが管理する外部鍵Bによってユーザ識別情報とあわせて暗号化した外部鍵B暗号済鍵を、共に端末内に保存する方式であり、暗号鍵を取り出す手段として、外部鍵Aによって外部鍵A暗号済鍵を復号化する手段Aと、管理サーバに外部鍵B暗号済鍵の復号化を依頼して暗号鍵を受け取る手段Bを備える。オフラインもしくは外部鍵Aに変更のない場合には手段Aを使用し、オンラインかつ外部鍵Aに変更のあった場合には手段Bを使用することによって、外部鍵Aについて変更・再発行などの柔軟な運用を可能にするものである。   The present invention identifies a user by using an external key A encrypted key obtained by encrypting an encryption key of data automatically generated in a terminal with an external key A given by a user such as a password, and an external key B managed by a key management server. The external key B encrypted key encrypted together with the information is stored in the terminal, and means for extracting the encryption key is a means A for decrypting the external key A encrypted key by the external key A; Means B is provided for requesting the management server to decrypt the external key B encrypted key and receiving the encryption key. By using means A when offline or there is no change in the external key A, and using means B when the external key A is changed online, the external key A can be changed and reissued flexibly. This makes it possible to operate smoothly.

具体的な特徴は次のとおりである。
第1には、ネットワーク接続される端末とサーバを備え、前記端末は、暗号鍵を使用してデータを暗号化して保存する情報処理装置において、
前記端末は、ユーザから与えられたパスワードなどのユーザしか知りえない情報(外部鍵A)を使用して暗号鍵を暗号化した外部鍵A暗号済鍵を保存する第1の手段Aと、サーバによって与えられる外部鍵Bを使用してユーザ識別情報と暗号鍵を暗号化した外部鍵B暗号済鍵を保存する第2の手段Bと、ユーザが外部鍵Aを失った場合には、端末から外部鍵B暗号済鍵の復号化をサーバに依頼し、サーバから返される暗号鍵を取得する第3の手段を備え、
前記サーバは、端末から外部鍵B暗号済鍵に基づいて復号化したユーザ識別情報によってユーザの正当性を確認したうえで端末に暗号鍵を返す手段を備えたことを特徴とする。
第2には、ネットワークを介してサーバに接続可能な情報処理端末において、
データの暗号化に使用する鍵(暗号鍵)を保存するために、ユーザから与えられたパスワードなどのユーザしか知りえない情報(外部鍵A)を使用して暗号鍵を暗号化して外部鍵A暗号済鍵として保存する第1の手段Aと、ネットワーク接続状態においてサーバから与えられる外部鍵Bを使用してユーザ識別情報と暗号鍵を暗号化した外部鍵B暗号済鍵を保存する第2の手段Bと、ユーザが外部鍵Aを失ったときに、端末内に保持している外部鍵B暗号済鍵の復号化をネットワークを介してサーバに依頼して前記サーバから復号化した暗号鍵を取得する第3の手段を備えたことを特徴とする。
第3には、前記第1の特徴において、外部鍵Bに非対称鍵を用いる場合には、外部鍵Bの公開鍵を事前にサーバから端末に配布することでユーザ識別情報と暗号鍵を暗号化する処理は端末内で行い、外部鍵Bの秘密鍵はサーバ内に保持して端末からの復号化の依頼はネットワーク上の秘匿化された通信経路を経由して行うことを特徴とする。
第4には、前記第1の特徴において、外部鍵Bに対称鍵を用いる場合には、サーバに外部鍵Bを保持し、ユーザ識別情報と暗号鍵を暗号化する処理および外部鍵B暗号済鍵の復号化は、ネットワーク上の秘匿化された通信経路を経由して、端末からサーバに依頼して行うことを特徴とする。
第5には、前記第1の特徴において、外部鍵Bにサーバに代えてシステム管理者によって示されたパスワードなどのシステム管理者しか知りえない情報を外部鍵Bとして用いてのデータの暗号化・復号化は、トステム管理者が端末に外部鍵Bを入力することによって行うようにしたことを特徴とする。
第6には、前記第1の特徴において、前記暗号鍵およびデータの暗号アルゴリズムは、複数の端末によって異なるものを使用可能な構成としたことを特徴とする。
第7には、前記第1または2の特徴において、前記第3の特徴における非対称鍵を使用する暗号化方式を使用する場合に、前記端末は、内部に外部鍵Bの公開鍵を保持し暗号鍵の暗号化処理を全て端末内で行うことによって、オフラインにおいても暗号鍵を変更可能にしたことを特徴とする。
第8には、前記第1の特徴において、外部鍵A暗号済鍵、外部鍵B暗号済鍵、暗号済データを媒体もしくはデータ単位で管理し、媒体もしくはデータによって異なる暗号鍵およびデータ暗号アルゴリズムを使用可能にしたことを特徴とする。
第9には、前記第1〜9のいずれかにおいて、媒体もしくはデータによって異なる暗号鍵およびデータ暗号アルゴリズムを使用した場合においても、暗号鍵の暗号化処理を共通にすることによって、ユーザによって与えられた一度の前記外部鍵で、異なる暗号鍵およびデータ暗号アルゴリズムによって暗号化された媒体もしくはデータの復号化を行えるようにしたことを特徴とする。
Specific features are as follows.
First, the information processing apparatus includes a terminal connected to a network and a server, wherein the terminal encrypts and stores data using an encryption key.
The terminal includes a first means A for storing an external key A encrypted key obtained by encrypting an encryption key using information (external key A) that only the user knows, such as a password given by the user, and a server The second means B for storing the user identification information and the external key B encrypted key using the external key B given by the user, and the terminal when the user loses the external key A A third means for requesting the server to decrypt the external key B encrypted key and obtaining an encryption key returned from the server;
The server includes means for returning the encryption key to the terminal after confirming the validity of the user based on the user identification information decrypted based on the external key B encrypted key from the terminal.
Second, in an information processing terminal that can be connected to a server via a network,
In order to store a key (encryption key) used for data encryption, an external key A is encrypted by encrypting the encryption key using information (external key A) that only the user knows, such as a password given by the user. A first means A for storing as an encrypted key, and a second means for storing an external key B encrypted key by encrypting the user identification information and the encryption key using the external key B given from the server in the network connection state. Means B and, when the user loses the external key A, asks the server to decrypt the external key B encrypted key held in the terminal and decrypts the encrypted key from the server. A third means for acquiring is provided.
Third, in the first feature, when an asymmetric key is used as the external key B, the public key of the external key B is distributed in advance from the server to the terminal to encrypt the user identification information and the encryption key. The processing is performed in the terminal, the private key of the external key B is held in the server, and the decryption request from the terminal is performed via a concealed communication path on the network.
Fourth, in the first feature, when a symmetric key is used as the external key B, the external key B is held in the server, the user identification information and the encryption key are encrypted, and the external key B is already encrypted. The key decryption is performed by requesting the server from the terminal via a concealed communication path on the network.
Fifth, in the first feature, data encryption using information that only the system administrator knows as the external key B, such as a password indicated by the system administrator instead of the server, as the external key B The decryption is performed by the Tostem administrator inputting the external key B to the terminal.
Sixth, in the first feature, the encryption key and the encryption algorithm of the data may be configured to be different depending on a plurality of terminals.
Seventhly, in the first or second feature, when the encryption method using the asymmetric key in the third feature is used, the terminal holds the public key of the external key B inside and encrypts it. By performing all key encryption processing within the terminal, the encryption key can be changed even offline.
Eighth, in the first feature, the external key A encrypted key, the external key B encrypted key, and the encrypted data are managed on a medium or data basis, and an encryption key and a data encryption algorithm that differ depending on the medium or data are provided. The feature is that it can be used.
Ninth, in any of the first to ninth aspects, even when different encryption keys and data encryption algorithms are used depending on the medium or data, the encryption key encryption process is made common by the user. The present invention is characterized in that a medium or data encrypted with a different encryption key and data encryption algorithm can be decrypted with the external key once.

以上述べたように、本発明によれば、端末ではパスワードなどのユーザから与えられる外部鍵Aを使用した暗号化・復号化を行うことができるために、オンラインおよびオフラインの何れの状態においてもデータの暗号化・復号化が可能である。
また、外部鍵Aに変更があった場合には外部鍵B暗号済鍵の復号化をサーバに依頼して行うことができるために、外部鍵Aが他の端末によって変更される場合やユーザがパスワードを紛失(失念)して管理者によって再発行される場合にもデータの復号化が可能である。
したがって、異なる端末を使用する場合においても外部鍵Aはユーザ毎に同一のものを使用することが可能であるので、暗号化の外部鍵Aにパスワードなどのユーザ認証情報の鍵を使用することが可能となる。
更に、外部鍵Bに非対称鍵を使用した場合には、端末側では暗号鍵の生成を行う際にサーバへの接続が不要であり、鍵管理サーバ側では外部鍵Bの秘密鍵を鍵管理サーバから外に出すことがない。
同様に、外部鍵Bに非対称鍵を使用した場合には、暗号鍵が外部に流失した可能性があると判断された場合に、オフラインでも暗号鍵を変更することが可能である。
また、暗号化処理が全て端末内で行われ、暗号鍵に依存する情報は一つのまとまりとして保存されるため、暗号鍵およびデータの暗号アルゴリズムを、端末、媒体、データによって異なるものを使用可能になり、その場合においても外部鍵は共通であるため、ユーザによる外部鍵の提示は一回で済む。
As described above, according to the present invention, since the terminal can perform encryption / decryption using the external key A given by the user, such as a password, data can be stored in both online and offline states. Can be encrypted and decrypted.
Further, when the external key A is changed, the server can request the server to decrypt the external key B encrypted key, so that the external key A is changed by another terminal or the user Even when the password is lost (forgotten) and reissued by the administrator, the data can be decrypted.
Therefore, even when different terminals are used, the same external key A can be used for each user. Therefore, a key of user authentication information such as a password can be used as the external key A for encryption. It becomes possible.
Further, when an asymmetric key is used as the external key B, the terminal side does not need to connect to the server when generating the encryption key, and the key management server side uses the private key of the external key B as the key management server. Never go out.
Similarly, when an asymmetric key is used as the external key B, it is possible to change the encryption key even when it is offline when it is determined that the encryption key may have been lost to the outside.
In addition, since all encryption processing is performed within the terminal and information dependent on the encryption key is stored as a single unit, the encryption algorithm for the encryption key and data can be different depending on the terminal, medium, and data. Even in this case, the external key is common, so the user only has to present the external key once.

本発明は、ネットワーク接続される端末とサーバを備え、前記端末は、暗号鍵を使用してデータを暗号化して保存する情報処理装置において、
前記端末は、ユーザから与えられたパスワードなどのユーザしか知りえない情報(外部鍵A)を使用して暗号鍵を暗号化した外部鍵A暗号済鍵を保存する第1の手段Aと、サーバによって与えられる外部鍵Bを使用してユーザ識別情報と暗号鍵を暗号化した外部鍵B暗号済鍵を保存する第2の手段Bと、ユーザが外部鍵Aを失った場合には、端末から外部鍵B暗号済鍵の復号化をサーバに依頼し、サーバから返される暗号鍵を取得する第3の手段を備え、
前記サーバは、端末から外部鍵B暗号済鍵に基づいて復号化したユーザ識別情報によってユーザの正当性を確認したうえで端末に暗号鍵を返す手段を備え、
外部鍵Bに非対称鍵を用いる場合には、外部鍵Bの公開鍵を事前にサーバから端末に配布することでユーザ識別情報と暗号鍵を暗号化する処理は端末内で行い、外部鍵Bの秘密鍵はサーバ内に保持して端末からの復号化の依頼はネットワーク上の秘匿化された通信経路を経由して行い、
外部鍵Bに対称鍵を用いる場合には、サーバに外部鍵Bを保持し、ユーザ識別情報と暗号鍵を暗号化する処理および外部鍵B暗号済鍵の復号化は、ネットワーク上の秘匿化された通信経路を経由して、端末からサーバに依頼して行うようにする。
また、外部鍵Bにサーバに代えてシステム管理者によって示されたパスワードなどのシステム管理者しか知りえない情報を外部鍵Bとして用いてのデータの暗号化・復号化は、システム管理者が端末に外部鍵Bを入力することによって行うことを可能とする。
また、非対称鍵を使用する暗号化方式を使用する場合に、前記端末は、内部に外部鍵Bの公開鍵を保持し暗号鍵の暗号化処理を全て端末内で行うことによって、オフラインにおいても暗号鍵を変更可能にする。
The present invention comprises a terminal connected to a network and a server, wherein the terminal encrypts data using an encryption key and stores the encrypted data.
The terminal includes a first means A for storing an external key A encrypted key obtained by encrypting an encryption key using information (external key A) that only the user knows, such as a password given by the user, and a server The second means B for storing the user identification information and the external key B encrypted key using the external key B given by the user, and the terminal when the user loses the external key A A third means for requesting the server to decrypt the external key B encrypted key and obtaining an encryption key returned from the server;
The server comprises means for returning the encryption key to the terminal after confirming the validity of the user by the user identification information decrypted based on the external key B encrypted key from the terminal,
When an asymmetric key is used as the external key B, the process of encrypting the user identification information and the encryption key by distributing the public key of the external key B from the server to the terminal in advance is performed within the terminal. The private key is held in the server, and the decryption request from the terminal is made via a concealed communication path on the network,
When a symmetric key is used as the external key B, the external key B is held in the server, the process of encrypting the user identification information and the encryption key, and the decryption of the external key B encrypted key are concealed on the network. This is done by requesting the server from the terminal via the communication path.
Further, data encryption / decryption using information that only the system administrator knows as the external key B, such as a password indicated by the system administrator in place of the server in the external key B, is performed by the system administrator Can be performed by inputting the external key B to
In addition, when using an encryption method using an asymmetric key, the terminal holds the public key of the external key B inside, and performs all encryption key encryption processing within the terminal, thereby enabling encryption even offline. Make the key changeable.

以下、図面を参照して本発明の実施例1を説明する。
図1は、本発明の実施例1の情報処理装置の構成を示すブロック図である。この実施例1の情報処理装置は、暗号鍵の復号化に係る処理を行う鍵管理サーバ11と、ユーザ識別情報と外部鍵Aによってユーザの認証を行う認証サーバ12と、LANなどの第1のネットワーク13を介してこれらのサーバに接続(オンライン状態)してアプリケーションを実行する携帯型端末14を備える。鍵管理サーバ11と認証サーバ12は、1つのサーバとして纏めて構成することができる。携帯型端末14は、更に、インターネットなどの第2のネットワーク15に接続(オンライン状態)して携帯型端末14Aとして使用し、また、ネットワーク13,15から切り離したオフライン状態で携帯型端末14Bとして使用される。ネットワーク通信はSSLを用いて秘匿化する。
Embodiment 1 of the present invention will be described below with reference to the drawings.
FIG. 1 is a block diagram illustrating the configuration of the information processing apparatus according to the first embodiment of this invention. The information processing apparatus according to the first embodiment includes a key management server 11 that performs processing related to decryption of an encryption key, an authentication server 12 that authenticates a user using user identification information and an external key A, and a first LAN or the like. A portable terminal 14 is connected to these servers via the network 13 (online state) and executes an application. The key management server 11 and the authentication server 12 can be configured as a single server. The portable terminal 14 is further connected to a second network 15 such as the Internet (online state) to be used as the portable terminal 14A, and is also used as the portable terminal 14B in an offline state disconnected from the networks 13 and 15. Is done. Network communication is concealed using SSL.

図2は、前記鍵管理サーバ11,認証サーバ12,携帯型端末14の内部構成と情報処理機能を示すブロック図である。   FIG. 2 is a block diagram showing internal configurations and information processing functions of the key management server 11, the authentication server 12, and the portable terminal 14.

鍵管理サーバ11は、外部鍵管理処理を実行するマイクロプロセッサ111と外部鍵Bの公開鍵112aと秘密鍵112bのペアを保持するディスクメモリ112と通信手段113を備える。この実施例1における外部鍵Bは、公開鍵112aと秘密鍵112bが異なる非対称鍵であって、公開鍵112aは暗号化に使用し、秘密鍵112bは復号化に使用する。マイクロプロセッサ111は、ネットワーク接続された携帯型端末14と通信し、外部鍵Bの公開鍵112aを前記携帯型端末14に配布し、また、携帯型端末14から渡された情報を外部鍵Bの秘密鍵112bを使用して復号化する鍵復号機能111aを実現し、秘密鍵112bは鍵管理サーバ11から外に出さないように管理する処理を実行する。鍵復号化の処理フローは、図5を参照して後述する。   The key management server 11 includes a microprocessor 111 that executes external key management processing, a disk memory 112 that holds a pair of the public key 112a and the private key 112b of the external key B, and a communication unit 113. The external key B in the first embodiment is an asymmetric key in which the public key 112a and the secret key 112b are different. The public key 112a is used for encryption, and the secret key 112b is used for decryption. The microprocessor 111 communicates with the portable terminal 14 connected to the network, distributes the public key 112a of the external key B to the portable terminal 14, and receives the information passed from the portable terminal 14 in the external key B. A key decryption function 111 a for decrypting using the secret key 112 b is realized, and a process for managing the secret key 112 b so as not to leave the key management server 11 is executed. The key decryption process flow will be described later with reference to FIG.

認証サーバ12は、認証処理を実行するマイクロプロセッサ121と、各ユーザのユーザ識別情報と外部鍵Aの情報を含む認証情報データベース122aを保持するディスクメモリ122と携帯型端末14と通信する通信手段123を備える。マイクロプロセッサ121は、携帯型端末14から渡される認証情報(ユーザ識別情報と外部鍵A)と認証情報データベース122aの内容を比較して認証結果を返す認証機能121aを実現する処理を実行する。認証情報データベース122aに登録されているユーザの外部鍵Aの情報は変更することが可能であり、ユーザが外部鍵Aを失った際には、管理者により認証情報データベース122aに登録されている外部鍵Aの情報を変更することによって、新しい外部鍵Aを再発行する。   The authentication server 12 includes a microprocessor 121 that executes an authentication process, a disk memory 122 that holds an authentication information database 122 a including user identification information of each user and information on the external key A, and a communication unit 123 that communicates with the portable terminal 14. Is provided. The microprocessor 121 executes processing for realizing an authentication function 121a that compares the authentication information (user identification information and external key A) passed from the portable terminal 14 with the contents of the authentication information database 122a and returns an authentication result. The information of the user's external key A registered in the authentication information database 122a can be changed. When the user loses the external key A, the administrator registers the external key A registered in the authentication information database 122a. A new external key A is reissued by changing the key A information.

携帯型端末14は、アプリケーションプログラム141aを実行するマイクロプロセッサ141とディスクメモリ142と半導体メモリ143と通信手段144を備える。オンライン状態の携帯型端末14は、初期状態のディスクメモリ142には鍵管理サーバ11から配布された外部鍵Bの公開鍵142a(=112a)とユーザによって入力された外部鍵Aのハッシュ値142bを保持する。暗号鍵の内容に依存するのは外部鍵B暗号済鍵142c,外部鍵A暗号済鍵142d,暗号済データ142eであり、これらは1つのデータのまとまりとして保存する。そのため、この1つのデータのまとまりを、携帯型端末14,媒体,データの各々に持たせることによって、携帯型端末14,媒体,データ毎に異なる暗号鍵もしくは暗号アルゴリズムを使用することができる。   The portable terminal 14 includes a microprocessor 141 that executes an application program 141a, a disk memory 142, a semiconductor memory 143, and a communication means 144. The mobile terminal 14 in the online state stores the public key 142a (= 112a) of the external key B distributed from the key management server 11 and the hash value 142b of the external key A input by the user in the disk memory 142 in the initial state. Hold. The contents of the encryption key depend on the external key B-encrypted key 142c, the external key A-encrypted key 142d, and the encrypted data 142e, and these are stored as a single piece of data. For this reason, the portable terminal 14, the medium, and the data are each provided with this one piece of data, so that different encryption keys or encryption algorithms can be used for the portable terminal 14, the medium, and the data.

図3は、データの編集・暗号化・復号化を行う際の携帯型端末14内の状態を示す機能ブロック図である。この携帯型端末14におけるマイクロプロセッサ141は、基本的には、アプリケーションプログラム141aを起動してデータ編集アルゴリズム141a1によって編集入力装置145からの指示入力に基づいてデータ編集(データ新規作成や既存データの変更)を実行し、編集したメモリ143上のデータ143aを暗号化してディスクメモリ142に暗号済データ142eとして保存する。   FIG. 3 is a functional block diagram showing a state in the portable terminal 14 when data is edited / encrypted / decrypted. The microprocessor 141 in the portable terminal 14 basically starts the application program 141a and edits data (creates new data or changes existing data) based on an instruction input from the editing input device 145 by the data editing algorithm 141a1. ), The edited data 143a on the memory 143 is encrypted and stored in the disk memory 142 as the encrypted data 142e.

図3を参照しながら、図4〜図7に示すフローチャートに基づいてデータの暗号化・復号化の処理を説明し、図8に示すフローチャートに基づいて暗号鍵変更の処理を説明する。データ編集アルゴリズム141a1により実行するデータ編集(データ新規作成や既存データの変更)については、従来と同様であるので、具体的な説明は省略する。   With reference to FIG. 3, data encryption / decryption processing will be described based on the flowcharts shown in FIGS. 4 to 7, and encryption key change processing will be described based on the flowchart shown in FIG. Since data editing (new data creation or modification of existing data) executed by the data editing algorithm 141a1 is the same as the conventional one, a detailed description thereof will be omitted.

図4は、携帯型端末14において暗号鍵を生成してデータの暗号化を行う際の処理のフローチャートである。この処理では、クライアント認証後に暗号鍵を生成し、更に、この暗号鍵を暗号化してディスクメモリ142に保存し、編集したデータを暗号鍵を使用して暗号化してディスクメモリ142に保存する。また、事前に鍵管理サーバ11からオンラインで外部鍵Bの公開鍵142a(112a)を取得してディスクメモリ142に保存しているものとする。   FIG. 4 is a flowchart of processing when the portable terminal 14 generates an encryption key and encrypts data. In this process, an encryption key is generated after client authentication, and the encryption key is encrypted and stored in the disk memory 142, and the edited data is encrypted using the encryption key and stored in the disk memory 142. Further, it is assumed that the public key 142a (112a) of the external key B is acquired online from the key management server 11 in advance and stored in the disk memory 142.

ステップS401
暗号鍵を生成する前に図6を参照して後述するクライアント(ユーザ)認証処理を行う。
Step S401
Before generating the encryption key, a client (user) authentication process described later with reference to FIG. 6 is performed.

ステップS402
認証結果をチェックして処理を分岐する。認証結果が失敗であった場合は、鍵生成とデータの暗号化を行わずにアプリケーションプログラムを終了する。
Step S402
Check the authentication result and branch the process. If the authentication result is a failure, the application program is terminated without generating a key and encrypting data.

ステップS403
認証結果が成功もしくは変更の場合は、暗号鍵生成アルゴリズム141a2を使用して、端末の内部状態をもとにしてランダムな暗号鍵を生成してメモリ143内に暗号鍵143bとして保持する。
Step S403
If the authentication result is successful or changed, the encryption key generation algorithm 141a2 is used to generate a random encryption key based on the internal state of the terminal and hold it in the memory 143 as the encryption key 143b.

ステップS404
メモリ143内に保持した暗号鍵143bは、第1の対称暗号アルゴリズム141a3によって、外部鍵入力装置146から入力される外部鍵Aによって暗号化して外部鍵A暗号済鍵142dとしてディスクメモリ142に保存する。このときの外部鍵Aのハッシュ値を一方向ハッシュ関数アルゴリズム141a6によってディスクメモリ142に外部鍵Aのハッシュ値142bとして保存する。この外部鍵Aのハッシュ値142bを保存する処理は、クライアント認証処理において後述する。
Step S404
The encryption key 143b held in the memory 143 is encrypted with the external key A input from the external key input device 146 by the first symmetric encryption algorithm 141a3 and stored in the disk memory 142 as the external key A encrypted key 142d. . The hash value of the external key A at this time is stored in the disk memory 142 as the hash value 142b of the external key A by the one-way hash function algorithm 141a6. The process of storing the hash value 142b of the external key A will be described later in the client authentication process.

ステップS405
非対称暗号アルゴリズム141a4は、外部鍵Bの公開鍵142aによって暗号鍵143bとユーザ識別情報入力装置147から入力されるユーザ識別情報を暗号化して外部鍵B暗号済鍵142cとしてディスクメモリ142に保存する。
Step S405
The asymmetric encryption algorithm 141a4 encrypts the encryption key 143b and the user identification information input from the user identification information input device 147 with the public key 142a of the external key B, and saves it in the disk memory 142 as the external key B encrypted key 142c.

ステップS406
以上の処理によって生成した暗号鍵143bを暗号化してディスクメモリ142に安全に保存した後に、第2の対称暗号アルゴリズム141a5によって、暗号鍵143bを使用してメモリ143内のデータ143aを暗号化してディスクメモリ142に暗号済データ142eとして保存する。
Step S406
After the encryption key 143b generated by the above processing is encrypted and securely stored in the disk memory 142, the data 143a in the memory 143 is encrypted by using the encryption key 143b by the second symmetric encryption algorithm 141a5, and the disk The encrypted data 142e is stored in the memory 142.

ステップS403における暗号鍵143bの生成からステップS406におけるデータの暗号化までの過程は、サーバに接続しないオフライン状態でも実行可能であるために、クライアント認証処理(ステップS401)がオフラインで実行された後であれば、オフライン状態でも暗号鍵143bの生成が可能であり、編集データ143aを暗号化して保存することができる。   Since the process from the generation of the encryption key 143b in step S403 to the data encryption in step S406 can be executed even in an offline state without connection to the server, the client authentication process (step S401) is executed offline. If so, the encryption key 143b can be generated even in an offline state, and the edit data 143a can be encrypted and stored.

図5は、携帯型端末14において暗号済データ142eを復号化する際の処理のフローチャートである。この処理では、外部鍵Aに変更がない場合は端末内部の暗号化された暗号鍵を復号化して使用し、変更があった場合には鍵管理サーバ11に問い合わせて暗号鍵を取得する。   FIG. 5 is a flowchart of processing when the portable data terminal 14 decrypts the encrypted data 142e. In this process, when there is no change in the external key A, the encrypted encryption key inside the terminal is decrypted and used, and when there is a change, the key management server 11 is inquired to obtain the encryption key.

ステップS501
復号化の前に図6に示したクライアント認証処理を行う。このクライアント認証処理の具体例は後述する。
Step S501
Before the decryption, the client authentication process shown in FIG. 6 is performed. A specific example of this client authentication process will be described later.

ステップS502
認証結果をチェックして処理を分岐する。認証に失敗した場合は、復号化・暗号化を行わずにアプリケーションプログラムを終了する。
Step S502
Check the authentication result and branch the process. If the authentication fails, the application program is terminated without performing decryption / encryption.

ステップS503
認証に成功した場合は、第1の対称暗号アルゴリズム141a3によって、外部鍵Aに基づいてディスクメモリ142に保存されている外部鍵A暗号済鍵142dを復号化してメモリ143上に暗号鍵143bとして取り出す。
Step S503
If the authentication is successful, the first symmetric encryption algorithm 141a3 decrypts the external key A encrypted key 142d stored in the disk memory 142 based on the external key A and takes it out as the encryption key 143b on the memory 143. .

ステップS504
ステップS502のチェックにおいて、認証情報が変更であった場合は、ユーザによって与えられた外部鍵Aではディスクメモリ142に保存されている外部鍵A暗号済鍵142dを復号化することができないため、図7に示した暗号鍵取得処理を行う。この暗号鍵取得処理の具体例は後述する。
Step S504
If the authentication information is changed in the check in step S502, the external key A encrypted key 142d stored in the disk memory 142 cannot be decrypted with the external key A given by the user. The encryption key acquisition process shown in FIG. A specific example of the encryption key acquisition process will be described later.

ステップS505
暗号鍵取得処理の結果をチェックして処理を分岐する。暗号鍵を取得することができなかった場合は処理を終了する。
Step S505
The process branches after checking the result of the encryption key acquisition process. If the encryption key cannot be acquired, the process ends.

ステップS506
対称暗号アルゴリズム321により、ステップS503で復号化して取り出した暗号鍵143bまたはステップS504によって取得した暗号鍵を使用して、ディスクメモリ142に保存してある暗号済データ142eを復号化してデータ143aとしてメモリ143に展開することによって編集可能な状態とする。
Step S506
Using the symmetric encryption algorithm 321, the encrypted data 142 e stored in the disk memory 142 is decrypted using the encryption key 143 b decrypted and extracted in step S 503 or the encryption key acquired in step S 504, and stored as data 143 a. By expanding to 143, an editable state is set.

復号化したデータ143aをデータ編集アルゴリズム141a1によって編集した後に再度暗号化してディスクメモリ142に保存する際には、ステップS503もしくはステップS504で取り出した暗号鍵を使用する。   When the decrypted data 143a is edited by the data editing algorithm 141a1 and then encrypted again and stored in the disk memory 142, the encryption key extracted in step S503 or step S504 is used.

図6は、携帯型端末14におけるクライアント認証処理(前述したステップS401,S501と後述するステップS901)のフローチャートである。このクライアント認証処理は、認証サーバ12と通信し、またはハッシュ値の比較によって行う。   FIG. 6 is a flowchart of client authentication processing (steps S401 and S501 described above and step S901 described later) in the portable terminal 14. This client authentication process is performed by communicating with the authentication server 12 or comparing hash values.

ステップS601
ユーザ識別情報入力装置147から入力されるユーザ識別情報または外部鍵入力装置146から入力される外部鍵Aを取得する。
Step S601
The user identification information input from the user identification information input device 147 or the external key A input from the external key input device 146 is acquired.

ステップS602
携帯型端末14がオンラインとオフラインの何れの状態かをチェックして処理を分岐する。
Step S602
The process branches after checking whether the portable terminal 14 is online or offline.

ステップS603
オンライン状態であるときには、認証サーバ12に認証情報(ユーザ識別情報と外部鍵A)を送信する。
Step S603
When online, authentication information (user identification information and external key A) is transmitted to the authentication server 12.

ステップS621
認証サーバ12は、携帯型端末14から送信された認証情報を受信し、受信した認証情報とディスクメモリ122に保持している認証情報データベース122aを照合して認証を行う。
Step S621
The authentication server 12 receives the authentication information transmitted from the portable terminal 14 and performs authentication by comparing the received authentication information with the authentication information database 122a held in the disk memory 122.

ステップS622
認証サーバ12は、認証結果を携帯型端末14に送信する。
Step S622
The authentication server 12 transmits the authentication result to the portable terminal 14.

ステップS604
携帯型端末14は、認証サーバ12から送信された認証結果を受信する。
Step S604
The portable terminal 14 receives the authentication result transmitted from the authentication server 12.

ステップS605
受信した認証結果をチェックして処理を分岐する。認証に失敗した場合はステップS614に移って認証失敗出力処理を実行する。
Step S605
Check the received authentication result and branch processing. If the authentication fails, the process moves to step S614 to execute an authentication failure output process.

ステップS606
認証に成功した場合は、外部鍵Aのハッシュ値142bの存在をチェックして処理を分岐する。
Step S606
If the authentication is successful, the presence of the hash value 142b of the external key A is checked and the process branches.

ステップS607
ディスクメモリ142に外部鍵Aのハッシュ値142bが存在した場合は、入力された外部鍵Aのハッシュ値とディスクメモリ142に保存されている外部鍵Aのハッシュ値142bを比較する。
Step S607
When the hash value 142 b of the external key A exists in the disk memory 142, the input hash value of the external key A is compared with the hash value 142 b of the external key A stored in the disk memory 142.

ステップS608
ハッシュ値の一致/不一致をチェックして処理を分岐する。一致した場合は、処理ステップS615に移って認証成功出力処理を実行する。
Step S608
The process branches after checking the hash value match / mismatch. If they match, the process proceeds to processing step S615 to execute an authentication success output process.

ステップS609
ステップS608においてハッシュ値が一致しなかった場合とステップS606において外部鍵Aのハッシュ値142bが存在しなかった場合は、認証情報の変更を反映するために入力された外部鍵Aのハッシュ値を外部鍵Aのハッシュ値142bとしてディスクメモリ142に保存する。
Step S609
If the hash values do not match in step S608 and if the hash value 142b of the external key A does not exist in step S606, the hash value of the external key A input to reflect the change of the authentication information is stored in the external The hash value 142b of the key A is stored in the disk memory 142.

ステップS610
認証結果を変更として出力する認証変更出力処理を実行して処理を終了する。
Step S610
An authentication change output process for outputting the authentication result as a change is executed and the process ends.

ステップS611
ステップS602の分岐においてオンライン状態でなければ(オフライン状態のときには)、ディスクメモリ142の外部鍵Aのハッシュ値142bの存在をチェックして処理を分岐する。外部鍵Aのハッシュ値142bが存在しない場合は、認証を行うことができないため、認証失敗としてステップS614に移って認証失敗出力処理を実行する。
Step S611
If it is not in the online state (in the offline state) in the branch of step S602, the presence of the hash value 142b of the external key A in the disk memory 142 is checked and the process branches. If the hash value 142b of the external key A does not exist, since authentication cannot be performed, the process proceeds to step S614 as an authentication failure, and an authentication failure output process is executed.

ステップS612
外部鍵Aのハッシュ値142aが存在した場合は、入力された外部鍵Aのハッシュ値と保存されている外部鍵Aのハッシュ値142aを比較する。
Step S612
When the hash value 142a of the external key A exists, the input hash value of the external key A is compared with the stored hash value 142a of the external key A.

ステップS613
比較結果をチェックして処理を分岐する。
Step S613
Check the comparison result and branch the process.

ステップS614
一致しなかった場合は、認証失敗出力処理を実行して処理を終了する。
Step S614
If they do not match, the authentication failure output process is executed and the process ends.

ステップS615
一致した場合は、認証成功出力処理を実行して処理を終了する。
Step S615
If they match, the authentication success output process is executed and the process ends.

図7は、携帯型端末14が鍵管理サーバ11から暗号鍵を取得する処理のフローチャートである。   FIG. 7 is a flowchart of processing in which the portable terminal 14 acquires an encryption key from the key management server 11.

ステップS701
携帯型端末14から鍵管理サーバ11に認証情報と外部鍵B暗号済鍵142cを送信する。
Step S701
The authentication information and the external key B encrypted key 142 c are transmitted from the portable terminal 14 to the key management server 11.

ステップS711
鍵管理サーバ11は、携帯型端末14から送信された認証情報と外部鍵B暗号済鍵142cを受信し、認証情報を認証サーバ12に送信する。
Step S711
The key management server 11 receives the authentication information and the external key B encrypted key 142 c transmitted from the portable terminal 14 and transmits the authentication information to the authentication server 12.

ステップS721
認証サーバ12は、鍵管理サーバ11から送信された認証情報を受信し、認証機能121によって認証情報と認証情報データベース122aと照合してサーバ認証処理を実行する。
Step S721
The authentication server 12 receives the authentication information transmitted from the key management server 11 and performs server authentication processing by comparing the authentication information with the authentication information database 122a by the authentication function 121.

ステップS722
認証結果を鍵管理サーバ11に送信する。
Step S722
The authentication result is transmitted to the key management server 11.

ステップS712
鍵管理サーバ11は、認証サーバ12から認証結果を受信する。
Step S712
The key management server 11 receives the authentication result from the authentication server 12.

ステップS713
認証結果に応じて処理を分岐する。
Step S713
The process branches according to the authentication result.

ステップS714
認証された場合には、鍵復号化機能111によって外部鍵Bの秘密鍵112Bを使用して復号化を行い、暗号鍵とユーザ識別情報を取り出す。
Step S714
If authenticated, the key decryption function 111 performs decryption using the private key 112B of the external key B, and extracts the encryption key and user identification information.

ステップS715
復号化して取り出したユーザ識別情報とステップS711で受信した認証情報内のユーザ識別情報を比較する。
Step S715
The user identification information extracted by decryption is compared with the user identification information in the authentication information received in step S711.

ステップS716
ステップS715における比較結果に応じて処理を分岐する。
Step S716
The process branches according to the comparison result in step S715.

ステップS717
比較結果が一致の場合には、暗号鍵を携帯型端末14に送信する。
Step S717
If the comparison results match, the encryption key is transmitted to the portable terminal 14.

ステップS718
認証されなかった場合と比較結果が不一致の場合には、暗号鍵の送信は不可である旨を携帯型端末14に送信する。
Step S718
If the comparison result and the comparison result do not match, it is transmitted to the portable terminal 14 that the encryption key cannot be transmitted.

ステップS702
携帯型端末14は、鍵管理サーバ11から暗号鍵を受信し、次回以降は暗号鍵を鍵管理サーバ11から取得しなくても良いように、暗号鍵を外部鍵Aで暗号化して外部鍵A暗号済鍵142dとしてディスクメモリ142に保存する。
Step S702
The portable terminal 14 receives the encryption key from the key management server 11 and encrypts the encryption key with the external key A so that the encryption key does not have to be acquired from the key management server 11 from the next time onward. It is stored in the disk memory 142 as the encrypted key 142d.

ステップS703
暗号鍵取得成功出力処理を実行して処理を終了する。
Step S703
The encryption key acquisition success output process is executed and the process ends.

ステップS704
鍵管理サーバ11から暗号鍵の送信は不可である旨を受信した場合には、暗号鍵取得失敗出力処理を実行して処理を終了する。
Step S704
When it is received from the key management server 11 that the encryption key cannot be transmitted, the encryption key acquisition failure output process is executed and the process is terminated.

このように携帯型端末14を操作するユーザのユーザ識別情報の確認を行うことによって、任意のユーザが他人の暗号鍵を復号化して不正にデータをアクセスすることができないようにすることができる。   Thus, by confirming the user identification information of the user who operates the portable terminal 14, it is possible to prevent an arbitrary user from illegally accessing the data by decrypting the encryption key of another person.

図8は、携帯型端末14内の暗号鍵を変更する処理のフローチャートである。この処理の前提として、図4および図5に示す処理によって外部鍵Aと古い暗号鍵の取得が行われているものとする。   FIG. 8 is a flowchart of processing for changing the encryption key in the portable terminal 14. As a premise of this processing, it is assumed that the external key A and the old encryption key have been acquired by the processing shown in FIGS.

ステップS801
古い暗号鍵によってディスクメモリ142に保持しているデータ142eの総てを復号化してデータ143aとしてメモリ143に展開する。
Step S801
All of the data 142e held in the disk memory 142 is decrypted with the old encryption key and is expanded in the memory 143 as data 143a.

ステップS802
新しい暗号鍵を生成する。
Step S802
Generate a new encryption key.

ステップS803
生成した新しい暗号鍵を外部鍵Aで暗号化して外部鍵A暗号済鍵142dとしてディスクメモリ142に保存する。
Step S803
The generated new encryption key is encrypted with the external key A and stored in the disk memory 142 as the external key A encrypted key 142d.

ステップS804
外部鍵Bの公開鍵142aによってステップS802で生成した暗号鍵とユーザ識別情報を暗号化して外部鍵B暗号済鍵142cとしてディスクメモリ142に保存する。これによって、携帯型端末14内のディスクメモリ142に保存されていた外部鍵A暗号済鍵142dと外部鍵B暗号済鍵142cはステップS802で生成した新しい暗号鍵の情報となる。
Step S804
The encryption key and user identification information generated in step S802 are encrypted with the public key 142a of the external key B, and stored in the disk memory 142 as the external key B encrypted key 142c. Accordingly, the external key A encrypted key 142d and the external key B encrypted key 142c stored in the disk memory 142 in the portable terminal 14 become information on the new encryption key generated in step S802.

ステップS805
メモリ143上に展開されているデータ143aを新しい暗号鍵で暗号化してディスクメモリ142に暗号済データ142eとして保存する。なお、ステップS801ないしステップS805は、媒体あるいはデータ毎に異なる暗号鍵であった場合、古い暗号鍵を使用していた媒体あるいはデータ毎に繰り返す。
Step S805
Data 143a expanded on the memory 143 is encrypted with a new encryption key and stored in the disk memory 142 as encrypted data 142e. Note that if the encryption key is different for each medium or data, steps S801 to S805 are repeated for each medium or data using the old encryption key.

ユーザが別の携帯型端末14Aから自身の外部鍵Aの情報を変更した場合やユーザが外部鍵Aを失って管理者によって外部鍵Aが再発行された場合には、認証サーバ12の認証情報データベース122aに登録されている外部鍵Aと携帯型端末14Aに外部鍵Aハッシュ値142bとして保存されている外部鍵Aの情報は異なるものになるが、図5に示した復号処理において、クライアント認証処理で認証結果が変更とされて暗号鍵取得処理が行われるために、データの復号化が可能である。   When the user changes the information of his / her external key A from another portable terminal 14A, or when the user loses the external key A and the administrator reissues the external key A, the authentication information of the authentication server 12 The information of the external key A registered in the database 122a and the information of the external key A stored as the external key A hash value 142b in the portable terminal 14A are different. In the decryption process shown in FIG. Since the authentication result is changed in the process and the encryption key acquisition process is performed, the data can be decrypted.

この実施例2は、外部鍵Bとして、鍵管理サーバ11が管理する対称鍵を用いる例である。対称鍵は、公開鍵と秘密鍵が同一である鍵のことである。この実施例2は、図3において、端末14では外部鍵Bの公開鍵142aを持たず、外部鍵Bは鍵管理サーバ11内で管理され、暗号化に使用する鍵と復号化に使用する鍵は共通になる。また、端末14では非対称暗号アルゴリズム141a3を持たず、それに代わって、鍵管理サーバ11内に鍵暗号化機能を設ける。更に、図4におけるステップS405および図8におけるステップS804に代わって、ネットワーク上の秘匿化された通信経路を経由して携帯型端末14から鍵管理サーバ11に依頼することによって、外部鍵Bによる暗号鍵143bとユーザ識別情報入力装置147から入力されるユーザ識別情報の暗号化を行う。
従って、この実施例2においては、携帯型端末14において暗号鍵を生成してデータの暗号化を行う際の処理のフローチャートは図4に代わって図9に示したものになる。
The second embodiment is an example in which a symmetric key managed by the key management server 11 is used as the external key B. A symmetric key is a key whose public key and private key are the same. In the second embodiment, in FIG. 3, the terminal 14 does not have the public key 142a of the external key B, and the external key B is managed in the key management server 11, and is used for encryption and decryption. Become common. Further, the terminal 14 does not have the asymmetric encryption algorithm 141a3, and instead, a key encryption function is provided in the key management server 11. Further, in place of step S405 in FIG. 4 and step S804 in FIG. 8, encryption by the external key B is requested by requesting the key management server 11 from the portable terminal 14 via a concealed communication path on the network. The user identification information input from the key 143b and the user identification information input device 147 is encrypted.
Therefore, in the second embodiment, the flowchart of the process when the portable terminal 14 generates the encryption key and encrypts the data is as shown in FIG. 9 instead of FIG.

ステップS901
暗号鍵を生成する前に図6を参照して説明したクライアント認証処理を行う。
Step S901
Before generating the encryption key, the client authentication process described with reference to FIG. 6 is performed.

ステップS902
認証結果をチェックして処理を分岐する。認証結果が失敗であった場合は、鍵生成とデータの暗号化を行わずにアプリケーションプログラムを終了する。
Step S902
Check the authentication result and branch the process. If the authentication result is a failure, the application program is terminated without generating a key and encrypting data.

ステップS903
認証結果が成功もしくは変更の場合は、暗号鍵生成アルゴリズム141a2を使用して、端末14の内部状態をもとにしてランダムな暗号鍵を生成してメモリ143内に暗号鍵143bとして保持する。
Step S903
If the authentication result is successful or changed, the encryption key generation algorithm 141a2 is used to generate a random encryption key based on the internal state of the terminal 14 and hold it as the encryption key 143b in the memory 143.

ステップS904
メモリ143内に保持した暗号鍵143bは、第1の対称暗号アルゴリズム141a3によって、外部鍵入力装置146から入力される外部鍵Aによって暗号化して外部鍵A暗号済鍵142dとしてディスクメモリ142に保存する。
Step S904
The encryption key 143b held in the memory 143 is encrypted with the external key A input from the external key input device 146 by the first symmetric encryption algorithm 141a3 and stored in the disk memory 142 as the external key A encrypted key 142d. .

ステップS905
携帯型端末14から鍵管理サーバ11に認証情報と暗号鍵143bとユーザ識別情報147を送信する。
Step S905
Authentication information, encryption key 143 b and user identification information 147 are transmitted from the portable terminal 14 to the key management server 11.

ステップS911
鍵管理サーバ11は、携帯型端末14から送信された認証情報と暗号鍵143bとユーザ識別情報147を受信し、認証情報を認証サーバ12に送信する。
Step S911
The key management server 11 receives the authentication information, the encryption key 143 b and the user identification information 147 transmitted from the portable terminal 14 and transmits the authentication information to the authentication server 12.

ステップS921
認証サーバ12は、鍵管理サーバ11から送信された認証情報を受信し、認証機能121によって認証情報と認証情報データベース122aと照合してサーバ認証処理を実行する。
Step S921
The authentication server 12 receives the authentication information transmitted from the key management server 11 and performs server authentication processing by comparing the authentication information with the authentication information database 122a by the authentication function 121.

ステップS922
認証結果を鍵管理サーバ11に送信する。
Step S922
The authentication result is transmitted to the key management server 11.

ステップS912
鍵管理サーバ11は、認証サーバ12から認証結果を受信する。
Step S912
The key management server 11 receives the authentication result from the authentication server 12.

ステップS913
認証結果に応じて処理を分岐する。
Step S913
The process branches according to the authentication result.

ステップS914
認証された場合には、鍵管理サーバ12内の鍵暗号化機能によって外部鍵Bを使用して暗号鍵143bとユーザ識別情報147の暗号化を行う。
Step S914
If authenticated, the encryption key 143b and the user identification information 147 are encrypted using the external key B by the key encryption function in the key management server 12.

ステップS915
前記ステップS914で暗号化した外部鍵B暗号済鍵を携帯型端末14に送信する。
Step S915
The external key B encrypted key encrypted in step S914 is transmitted to the portable terminal 14.

ステップS916
前記ステップS913で認証されなかった場合には、外部鍵B暗号済鍵の送信は不可である旨を携帯型端末14に送信する。
Step S916
If not authenticated in step S913, the mobile terminal 14 is transmitted to the effect that the external key B encrypted key cannot be transmitted.

ステップS906
携帯型端末14は、鍵管理サーバ11から外部鍵B暗号化済鍵を受信し、外部鍵B暗号済鍵142cとしてディスクメモリ142に保存する。
Step S906
The portable terminal 14 receives the external key B encrypted key from the key management server 11 and stores it in the disk memory 142 as the external key B encrypted key 142c.

ステップS907
以上の処理によって生成した暗号鍵143bを暗号化してディスクメモリ142に安全に保存した後に、第2の対称暗号アルゴリズム141a5によって、暗号鍵143bを使用してメモリ143内のデータ143aを暗号化してディスクメモリ142に暗号済データ142eとして保存する。
Step S907
After the encryption key 143b generated by the above processing is encrypted and securely stored in the disk memory 142, the data 143a in the memory 143 is encrypted by using the encryption key 143b by the second symmetric encryption algorithm 141a5, and the disk The encrypted data 142e is stored in the memory 142.

ステップS908
鍵管理サーバ11から暗号鍵の送信は不可である旨を受信した場合には、データの暗号化を行わずにアプリケーションプログラムを終了する。
Step S908
When receiving from the key management server 11 that the encryption key cannot be transmitted, the application program is terminated without performing data encryption.

この実施例3の情報処理装置は、鍵管理サーバ11に代わってシステム管理者が外部鍵Bを管理し、システム管理者によって示されたパスワードなどのシステム管理者しか知りえない情報を外部鍵Bとして用いる場合には、図4におけるステップS405および図8におけるステップS804の処理に代わって、携帯型端末14でシステム管理者に対して秘密鍵Bの入力を促す画面を表示し、システム管理者によって入力された秘密鍵Bによって暗号鍵143bとユーザ識別情報入力装置147から入力されるユーザ識別情報の暗号化を行うことができるようにしたものである。また、図7におけるS711ないしステップS715に代って、携帯型端末14でシステム管理者に対して秘密鍵Bの入力を促す画面を表示し、システム管理者によって入力された秘密鍵Bによって外部鍵B暗号済鍵142cの復号化を行うことができるようにするものである。   In the information processing apparatus according to the third embodiment, the system administrator manages the external key B in place of the key management server 11, and information that only the system administrator can know, such as a password indicated by the system administrator, is stored in the external key B. 4, instead of the processing of step S405 in FIG. 4 and step S804 in FIG. 8, a screen prompting the system administrator to input the secret key B is displayed on the portable terminal 14, and the system administrator The encryption key 143b and the user identification information input from the user identification information input device 147 can be encrypted with the input secret key B. Further, instead of S711 to S715 in FIG. 7, a screen prompting the system administrator to input the secret key B is displayed on the portable terminal 14, and the external key is input by the secret key B input by the system administrator. The B encrypted key 142c can be decrypted.

実施例1〜3は、携帯型端末14を例示して説明したがデスクトップ型端末のような他の形態の端末を使用して構成しても同様に実施することができる。   Although the first to third embodiments have been described by taking the portable terminal 14 as an example, the present invention can also be implemented in the same manner even if configured using other types of terminals such as desktop terminals.

外部鍵Aと外部鍵Bによる暗号化は、暗号鍵の内容およびデータ暗号アルゴリズムの種類とは独立している。そのために、携帯型端末,媒体,データ毎に異なる暗号鍵143bやデータ暗号アルゴリズム141a5を使用することが可能である。   Encryption with the external key A and the external key B is independent of the content of the encryption key and the type of the data encryption algorithm. Therefore, it is possible to use different encryption keys 143b and data encryption algorithms 141a5 for each portable terminal, medium, and data.

図10は、この実施例5における端末14の機能ブロック図である。データ1とデータ2に異なる暗号鍵を使用した場合の構成であり、データ1に対応する外部鍵B暗号済鍵142c1と外部鍵A暗号済鍵142d1、データ2に対応する外部鍵B暗号済鍵142c2と外部鍵A暗号済鍵142d2をそれぞれディスクメモリ142に保存するように構成する。   FIG. 10 is a functional block diagram of the terminal 14 in the fifth embodiment. This is a configuration in which different encryption keys are used for data 1 and data 2, and external key B encrypted key 142c1 and external key A encrypted key 142d1 corresponding to data 1 and external key B encrypted key corresponding to data 2 142c2 and external key A encrypted key 142d2 are stored in the disk memory 142, respectively.

更に、第2の対象暗号アルゴリズム141a5について、データ1に対応する暗号鍵とデータ2に対応する暗号鍵で異なるアルゴリズムを使用する構成も可能とする。
その際には、暗号鍵の暗号化に使用する外部鍵Aと外部鍵Bはデータ1とデータ2で共通のものを使用することによって、データ1とデータ2のどちらの場合においても、ユーザが提示する外部鍵Aは共通のものを使用することができる。
Further, the second target encryption algorithm 141a5 can be configured to use different algorithms for the encryption key corresponding to the data 1 and the encryption key corresponding to the data 2.
At that time, the external key A and the external key B used for encryption of the encryption key are the same for the data 1 and the data 2, so that the user can use either the data 1 or the data 2. A common external key A can be used.

本発明の実施例1の情報処理装置の構成を示すブロック図である。It is a block diagram which shows the structure of the information processing apparatus of Example 1 of this invention. 実施例1の情報処理装置における鍵管理サーバと認証サーバと携帯型端末の機能ブロック図である。3 is a functional block diagram of a key management server, an authentication server, and a portable terminal in the information processing apparatus of Embodiment 1. FIG. 実施例1の情報処理装置における携帯型端末内のデータ編集・暗号化・復号化処理のための機能ブロック図である。3 is a functional block diagram for data editing / encryption / decryption processing in a portable terminal in the information processing apparatus of Embodiment 1. FIG. 実施例1の情報処理装置における携帯型端末において暗号鍵を生成してデータの暗号化を行う際の処理のフローチャートである。4 is a flowchart of processing when generating an encryption key and encrypting data in a portable terminal in the information processing apparatus according to the first embodiment. 実施例1の情報処理装置における携帯型端末において暗号済データを復号化する際の処理のフローチャートである。6 is a flowchart of processing when decrypting encrypted data in the portable terminal in the information processing apparatus according to the first embodiment. 実施例1の情報処理装置におけるクライアント認証処理のフローチャートである。3 is a flowchart of client authentication processing in the information processing apparatus according to the first embodiment. 実施例1の情報処理装置における携帯型端末が鍵管理サーバから暗号鍵を取得する処理のフローチャートである。3 is a flowchart of processing in which a portable terminal in the information processing apparatus according to the first embodiment acquires an encryption key from a key management server. 実施例1の情報処理装置における携帯型端末が該携帯型端末内の暗号鍵を変更する処理のフローチャートである。6 is a flowchart of processing in which the portable terminal in the information processing apparatus according to the first embodiment changes an encryption key in the portable terminal. 実施例2の情報処理装置における携帯型端末において暗号鍵を生成してデータの暗号化を行う際の処理のフローチャートである。10 is a flowchart of processing when generating an encryption key and encrypting data in a portable terminal in the information processing apparatus according to the second embodiment. 実施例5の情報処理装置における端末の機能ブロック図である。FIG. 10 is a functional block diagram of a terminal in an information processing apparatus according to a fifth embodiment.

符号の説明Explanation of symbols

11…鍵管理サーバ、12…認証サーバ、14,14A,14B…携帯型端末、13,15…ネットワーク、111…マイクロプロセッサ、111a…鍵復号機能、112…ディスクメモリ、112a…外部鍵Bの公開鍵、112b…外部鍵Bの秘密鍵、113…通信手段、121…マイクロプロセッサ、121a…認証機能、122…ディスクメモリ、122a…認証情報データベース、141…マイクロプロセッサ、141a…アプリケーションプログラム、142…ディスクメモリ、142a…外部鍵Bの公開鍵、142b…外部鍵Aのハッシュ値、142c…外部鍵B暗号済鍵、142d…外部鍵A暗号済鍵、142e…暗号済データ、143…メモリ、143a…データ、143b…暗号鍵、144…通信手段。   DESCRIPTION OF SYMBOLS 11 ... Key management server, 12 ... Authentication server, 14, 14A, 14B ... Portable terminal, 13, 15 ... Network, 111 ... Microprocessor, 111a ... Key decryption function, 112 ... Disk memory, 112a ... Release of external key B Key 112b: Private key of external key B 113 Communication means 121 Microprocessor 121a Authentication function 122 Disk memory 122a Authentication information database 141 Microprocessor 141a Application program 142 Disk Memory 142a ... Public key of external key B 142b ... Hash value of external key A 142c ... External key B encrypted key 142d ... External key A encrypted key 142e ... Encrypted data 143 ... Memory 143a ... Data, 143b ... encryption key, 144 ... communication means.

Claims (9)

ネットワーク接続される端末とサーバを備え、前記端末は、暗号鍵を使用してデータを暗号化して保存する情報処理装置において、
前記端末は、ユーザから与えられたパスワードなどのユーザしか知りえない情報(外部鍵A)を使用して暗号鍵を暗号化した外部鍵A暗号済鍵を保存する第1の手段Aと、前記サーバによって与えられる外部鍵Bを使用してユーザ識別情報と暗号鍵を暗号化した外部鍵B暗号済鍵を保存する第2の手段Bと、ユーザが外部鍵Aを失った場合には、端末から外部鍵B暗号済鍵の復号化を前記サーバに依頼し、前記サーバから返される暗号鍵を取得する第3の手段を備え、
前記サーバは、端末から外部鍵B暗号済鍵に基づいて復号化したユーザ識別情報によってユーザの正当性を確認したうえで端末に暗号鍵を返す手段を備えたことを特徴とする情報処理装置。
In an information processing apparatus comprising a terminal connected to a network and a server, the terminal encrypting and storing data using an encryption key,
The terminal stores a first means A that stores an external key A encrypted key obtained by encrypting an encryption key using information (external key A) that is known only to the user, such as a password given by the user, A second means B for storing the user identification information and the external key B encrypted key using the external key B given by the server, and the terminal when the user loses the external key A A third means for requesting the server to decrypt the external key B encrypted key and obtaining an encryption key returned from the server;
The information processing apparatus comprising: means for returning an encryption key to the terminal after confirming the validity of the user based on the user identification information decrypted based on the external key B encrypted key from the terminal.
ネットワークを介してサーバに接続可能な情報処理端末において、
データの暗号化に使用する鍵(暗号鍵)を保存するために、ユーザから与えられたパスワードなどのユーザしか知りえない情報(外部鍵A)を使用して暗号鍵を暗号化して外部鍵A暗号済鍵として保存する第1の手段Aと、ネットワーク接続状態において前記サーバから与えられる外部鍵Bを使用してユーザ識別情報と暗号鍵を暗号化した外部鍵B暗号済鍵を保存する第2の手段Bと、ユーザが外部鍵Aを失ったときに、端末内に保持している外部鍵B暗号済鍵の復号化をネットワークを介して前記サーバに依頼して前記サーバから復号化した暗号鍵を取得する第3の手段を備えたことを特徴とする情報処理装置。
In an information processing terminal that can be connected to a server via a network,
In order to store a key (encryption key) used for data encryption, an external key A is encrypted by encrypting the encryption key using information (external key A) that only the user knows, such as a password given by the user. A first means A for storing the encrypted key; and a second means for storing the user identification information and the encrypted key using the external key B given from the server in the network connection state. Means B, and when the user loses the external key A, the encryption key decrypted from the server by requesting the server to decrypt the external key B encrypted key held in the terminal An information processing apparatus comprising a third means for acquiring a key.
請求項1において、外部鍵Bに非対称鍵を用いる場合には、外部鍵Bの公開鍵を事前にサーバから端末に配布することでユーザ識別情報と暗号鍵を暗号化する処理は端末内で行い、外部鍵Bの秘密鍵は前記サーバ内に保持して端末からの復号化の依頼はネットワーク上の秘匿化された通信経路を経由して行うことを特徴とする情報処理装置。   In claim 1, when an asymmetric key is used as the external key B, the process of encrypting the user identification information and the encryption key by distributing the public key of the external key B from the server to the terminal in advance is performed in the terminal. The information processing apparatus is characterized in that the private key of the external key B is held in the server, and the decryption request from the terminal is made via a concealed communication path on the network. 請求項1において、外部鍵Bに対称鍵を用いる場合には、サーバに外部鍵Bを保持し、ユーザ識別情報と暗号鍵を暗号化する処理および外部鍵B暗号済鍵の復号化は、ネットワーク上の秘匿化された通信経路を経由して、端末から前記サーバに依頼して行うことを特徴とする情報処理装置。   In claim 1, when a symmetric key is used for the external key B, the server holds the external key B, encrypts the user identification information and the encryption key, and decrypts the external key B encrypted key. An information processing apparatus, which performs the request from the terminal to the server via the upper concealed communication path. 請求項1において、外部鍵Bにサーバに代えてシステム管理者によって示されたパスワードなどのシステム管理者しか知りえない情報を外部鍵Bとして用いてのデータの暗号化・復号化は、システム管理者が端末に外部鍵Bを入力することによって行うようにしたことを特徴とする情報処理装置。   The encryption / decryption of data using information that only the system administrator knows as the external key B, such as a password indicated by the system administrator in place of the server in the external key B, is the system management. An information processing apparatus characterized in that a user inputs the external key B to the terminal. 請求項1において、前記暗号鍵およびデータの暗号アルゴリズムは、複数の端末によって異なるものを使用可能な構成としたことを特徴とする情報処理装置。   2. The information processing apparatus according to claim 1, wherein the encryption key and the data encryption algorithm can be used differently for a plurality of terminals. 請求項1または2において、請求項3に記載した非対称鍵を使用する暗号化方式を使用する場合に、前記端末は、内部に外部鍵Bの公開鍵を保持し暗号鍵の暗号化処理を全て端末内で行うことによって、オフラインにおいても暗号鍵を変更可能にしたことを特徴とする情報処理装置。   In claim 1 or 2, when using the encryption method using an asymmetric key according to claim 3, the terminal holds the public key of the external key B inside and performs all encryption processing of the encryption key. An information processing apparatus characterized in that an encryption key can be changed offline even when performed in a terminal. 請求項1において、外部鍵A暗号済鍵、外部鍵B暗号済鍵、暗号済データを媒体もしくはデータ単位で管理し、媒体もしくはデータによって異なる暗号鍵およびデータ暗号アルゴリズムを使用可能にしたことを特徴とする情報処理装置。   The external key A encrypted key, the external key B encrypted key, and the encrypted data are managed on a medium or data basis, and different encryption keys and data encryption algorithms can be used depending on the medium or data. Information processing apparatus. 請求項1〜8のいずれかの項において、媒体もしくはデータによって異なる暗号鍵およびデータ暗号アルゴリズムを使用した場合においても、暗号鍵の暗号化処理を共通にすることによって、ユーザによって与えられた一度の前記外部鍵で、異なる暗号鍵およびデータ暗号アルゴリズムによって暗号化された媒体もしくはデータの復号化を行えるようにしたことを特徴とする情報処理装置。   In any one of claims 1 to 8, even when different encryption keys and data encryption algorithms are used depending on the medium or data, the encryption key encryption process is made common so that the one time given by the user An information processing apparatus, wherein a medium or data encrypted with a different encryption key and data encryption algorithm can be decrypted with the external key.
JP2005154996A 2005-05-27 2005-05-27 Information processor Pending JP2006333164A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2005154996A JP2006333164A (en) 2005-05-27 2005-05-27 Information processor

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005154996A JP2006333164A (en) 2005-05-27 2005-05-27 Information processor

Publications (1)

Publication Number Publication Date
JP2006333164A true JP2006333164A (en) 2006-12-07

Family

ID=37554363

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005154996A Pending JP2006333164A (en) 2005-05-27 2005-05-27 Information processor

Country Status (1)

Country Link
JP (1) JP2006333164A (en)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009153099A (en) * 2007-09-20 2009-07-09 Seagate Technology Llc Key recovery in encrypting storage device
JP2011130425A (en) * 2009-11-17 2011-06-30 Maruju Shokai:Kk System and method for decrypting encrypted data utilizing mobile phone
JP2016072769A (en) * 2014-09-29 2016-05-09 株式会社日立ソリューションズ Data management system, data management method, and client terminal
JP2019135837A (en) * 2019-03-05 2019-08-15 株式会社東海理化電機製作所 User authentication device and user authentication method
JP2021052284A (en) * 2019-09-24 2021-04-01 東芝テック株式会社 Cryptographic decryption system

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05173972A (en) * 1991-12-24 1993-07-13 Matsushita Electric Ind Co Ltd Password restoring method
JPH1065663A (en) * 1996-08-19 1998-03-06 Nec Corp Ic card system and ic card
JP2001103045A (en) * 1999-09-29 2001-04-13 Advanced Mobile Telecommunications Security Technology Research Lab Co Ltd Storage device for backing up cryptographic key
JP2002033727A (en) * 2000-05-11 2002-01-31 Matsushita Electric Ind Co Ltd File management system
JP2002084269A (en) * 2000-09-07 2002-03-22 Hitachi Ltd Recovery method for private key and storage method
JP2003169045A (en) * 2001-11-29 2003-06-13 Canon Inc Document managing device

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05173972A (en) * 1991-12-24 1993-07-13 Matsushita Electric Ind Co Ltd Password restoring method
JPH1065663A (en) * 1996-08-19 1998-03-06 Nec Corp Ic card system and ic card
JP2001103045A (en) * 1999-09-29 2001-04-13 Advanced Mobile Telecommunications Security Technology Research Lab Co Ltd Storage device for backing up cryptographic key
JP2002033727A (en) * 2000-05-11 2002-01-31 Matsushita Electric Ind Co Ltd File management system
JP2002084269A (en) * 2000-09-07 2002-03-22 Hitachi Ltd Recovery method for private key and storage method
JP2003169045A (en) * 2001-11-29 2003-06-13 Canon Inc Document managing device

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009153099A (en) * 2007-09-20 2009-07-09 Seagate Technology Llc Key recovery in encrypting storage device
JP2011130425A (en) * 2009-11-17 2011-06-30 Maruju Shokai:Kk System and method for decrypting encrypted data utilizing mobile phone
JP2016072769A (en) * 2014-09-29 2016-05-09 株式会社日立ソリューションズ Data management system, data management method, and client terminal
JP2019135837A (en) * 2019-03-05 2019-08-15 株式会社東海理化電機製作所 User authentication device and user authentication method
JP2021052284A (en) * 2019-09-24 2021-04-01 東芝テック株式会社 Cryptographic decryption system

Similar Documents

Publication Publication Date Title
CN108292402B (en) Determination of a common secret and hierarchical deterministic keys for the secure exchange of information
KR101999188B1 (en) Secure personal devices using elliptic curve cryptography for secret sharing
CN106534092B (en) The privacy data encryption method of key is depended on based on message
JP5265744B2 (en) Secure messaging system using derived key
JP4866863B2 (en) Security code generation method and user device
JP4902207B2 (en) System and method for managing multiple keys for file encryption and decryption
US8806206B2 (en) Cooperation method and system of hardware secure units, and application device
US20040165728A1 (en) Limiting service provision to group members
CN108055131A (en) For the system and method for key chain synchronization
JP2012518329A (en) A framework for trusted cloud computing and services
JP2004304304A (en) Electronic signature generating method, electronic signature authenticating method, electronic signature generating request program and electronic signature authenticate request program
US11386429B2 (en) Cryptocurrency securing method and device thereof
US8732481B2 (en) Object with identity based encryption
TW201223225A (en) Method for personal identity authentication utilizing a personal cryptographic device
US20230206219A1 (en) Identification token, systems and methods for identification and identity verification.
JP2006333164A (en) Information processor
Yildiz et al. Towards Interoperable Self-sovereign Identities
CN115086037B (en) Data processing method and device, storage medium and electronic equipment
JP2004295761A (en) Terminal device and information processor
JP7351873B2 (en) Information processing device, information processing method, and information processing program
JP2008219787A (en) Key management system, key management program and ic card
Yasmin et al. Decentralized Entrance Power with Secret Endorsement of Data Stored in Clouds
KR102192594B1 (en) Apparatus and method for order-revealing encryption in multi-client environment without trusted authority
WO2009153974A1 (en) Data management system, data management method, and computer program
JP7000961B2 (en) File operation management system and file operation management method

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20080522

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20110210

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110228

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20110628