JP2008226146A - 情報処理装置と情報処理装置のデータ転送方法 - Google Patents
情報処理装置と情報処理装置のデータ転送方法 Download PDFInfo
- Publication number
- JP2008226146A JP2008226146A JP2007067086A JP2007067086A JP2008226146A JP 2008226146 A JP2008226146 A JP 2008226146A JP 2007067086 A JP2007067086 A JP 2007067086A JP 2007067086 A JP2007067086 A JP 2007067086A JP 2008226146 A JP2008226146 A JP 2008226146A
- Authority
- JP
- Japan
- Prior art keywords
- information
- processing apparatus
- trust
- information processing
- data
- 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.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/57—Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/57—Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
- G06F21/575—Secure boot
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/06—Network architectures or network communication protocols for network security for supporting key management in a packet data network
- H04L63/061—Network architectures or network communication protocols for network security for supporting key management in a packet data network for key exchange, e.g. in peer-to-peer networks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/0869—Network architectures or network communication protocols for network security for authentication of entities for achieving mutual authentication
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0816—Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
- H04L9/085—Secret sharing or secret splitting, e.g. threshold schemes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0891—Revocation or update of secret information, e.g. encryption key update or rekeying
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0894—Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/21—Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/2103—Challenge-response
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/21—Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/2105—Dual mode as a secondary aspect
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/04—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
- H04L63/0428—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
- H04L63/0442—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload wherein the sending and receiving network entities apply asymmetric encryption, i.e. different keys for encryption and decryption
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Storage Device Security (AREA)
Abstract
【解決手段】自己の所有データを転送する相手である転送先装置の生成した信頼情報を分割した一部の第1分割信頼情報を予め取得して保存する記憶部と、転送先装置から転送要求を受信し、かつその受信時に転送先装置の信頼情報を分割した他の第2分割信頼情報と、転送先装置の固有の転送要求時の状態を示す情報を用いて生成した検証情報とを受信する通信部と、保存された第1分割信頼情報と受信された第2分割信頼情報とを用いて、信頼情報を復元する信頼情報復元部と、復元された信頼情報と受信された検証情報とを用いて、転送先装置の信頼性を検証する機器検証部とを備え、信頼性の検証が成功した場合に、通信部が転送要求されたデータを転送先装置へ送信することを特徴とする。
【選択図】図1
Description
たとえば、公開鍵暗号方式を用いてデータを秘匿化する。
この場合、それぞれの情報処理装置(以下、PCと呼ぶ)ごとに生成された一対の秘密鍵と公開鍵が利用される。秘密鍵は、特定のPCの所有者のみが知る鍵である。公開鍵は、名前のとおり他者に公開する鍵である。
また、公開鍵で暗号化された情報はペアとなる秘密鍵でのみ復号でき、逆に、秘密鍵で暗号化された情報はペアとなる公開鍵でのみ復号できる。
この暗号化されたデータ(KPB(D0))は、PC−Bの秘密鍵KSBでしか復号できないデータである。
また、PC−Aのみが所有する秘密鍵KSAで、共通鍵KCAを暗号化し、署名鍵KSA(KCA)を生成する。
さらに、この署名鍵KSA(KCA)を、PC−Bの公開鍵KPBで暗号化し、鍵情報KEY(=KPB(KSA(KCA))を生成する。
このようにして生成された暗号化データKCA(D0)と、鍵情報KEYとからなる情報が、PC−AからPC−Bへ転送される。
まず、PC−Bのみが所有する秘密鍵KSBを用いて、鍵情報KEYを復号し、署名鍵KSA(KCA)を復元する。そして、PC−Aの公開鍵KPAを用いて、復元された署名鍵KSA(KCA)を復号し、共通鍵KCAを取得する。
この復号化が正常に行われた場合は、予め信頼された相手であるPC−Aそのものから正当に転送されてきたことが証明されたことになる。すなわち、送信元の情報処理装置の正当性の検証が行われる。
この信頼情報TIBとは、PC−Bの中に存在する特別なプログラムや設定データを用いて生成される情報であり、送信先のPC−Bの動作状態を特定できる情報である。
送信先のPC−Bからサーバに対して、送信元のPC−Aに対するアクセス要求の許可を問合せる場合、PC−Bは、PC−Bの現在の動作状態を示す情報を収集し、信頼情報(TIB)に対応する情報(検証用情報VIB)を生成する。
そして、送信先のPC−Bは、サーバに対して、アクセス要求の問合せとともに検証用情報VIBを送信する。
両情報(TIBとVIB)が一致し、信頼できる装置であると判断した場合、サーバは、新たに1対の秘密鍵KB1と公開鍵KB2とを生成する。
また、サーバは、送信先のPC−Bに対して、アクセスを許可することを通知すると共に、新たに生成した秘密鍵KB1を送信する。この後、PC−BからPC−Aへのアクセスが行えるようになる。
たとえば、PC−BからPC−Aに対してデータD1の送信を要求した場合には、送信元のPC−Aで、公開鍵KB2を用いたデータD1の暗号化が行われた後PC−Bへ送信される。送信先のPC−Bでは、秘密鍵KB1を用いて暗号化されたデータを復号する。あるいは、単純に公開鍵での暗号化と秘密鍵での復号を行うのではなく、上記したように、共通鍵を用いて鍵情報と共に暗号データを送信するようにしてもよい。
また、送信先のPC−Bの信頼性を確認せずにデータ転送が行われてしまうので、PC−Bがコンピュータウイルスに犯されている状態でPC−AからPC−Bへデータの転送が行われる場合もある。このような場合、送信先のPC−Bを介してそのデータがさらに他のPCへ漏洩する危険性が高くなるという問題がある。さらに、秘密鍵KSBを不正に取得した第三者は、いつでも受信したデータを復元して利用することができるという問題点もある。
すなわち、この従来の方法では、信頼関係のない第三者にデータが転送され、そのデータの漏洩や不正利用が行われる可能性がある。
たとえば、特定の個人ユーザどおしがデータ転送をする場合には、このようなサーバを介したシステムを利用することを望まない場合もあり、サーバを利用しない環境下でも、お互いの信頼性を確認した上で、高いセキュリティを確保したデータ転送を可能とするしくみが望まれる。
また、信頼性の確認が成功した場合に、自己の所有データを転送先情報処理装置へ送信するようにしているので、信頼性を確認できない装置を利用した不正アクセスにより、自己の所有データが不当に外部へ流出するのを防止でき、セキュリティをより高めることができる。
上記装置は、送信すべきデータを所有し、転送要求を受信する転送元情報処理装置に相当する。
また、この発明は、前記復元された信頼情報と、前記受信された検証情報とが同一形式のデータである場合は、信頼情報と検証情報とが一致する場合に、前記機器検証部が、前記転送先情報処理装置の信頼性の検証が成功したと判断することを特徴とする。
さらに、前記記憶部に、転送先情報処理装置の公開鍵を予め記憶し、転送要求された自己の所有データを、前記公開鍵を用いて暗号化する暗号部をさらに備え、前記通信部は、前記暗号部で暗号化された前記所有データを、転送先情報処理装置へ送信することを特徴とする。
暗号化は、所有データの転送時のセキュリティを高め、不正流出を防止するためである。
また、共通鍵を生成する鍵生成部と、転送要求された自己の所有データを前記共通鍵で暗号化する暗号部をさらに備え、前記記憶部に転送先情報処理装置の公開鍵を予め記憶し、前記通信部は、暗号部で暗号化された前記所有データと、前記転送先情報処理装置の公開鍵で暗号化された共通鍵とを、転送先情報処理装置へ送信することを特徴とする。
上記装置も転送元情報処理装置であり、データ転送前の交換処理機能を有するものである。
上記装置は、転送先情報処理装置に相当する。
また、この発明は、前記機器状態収集部が収集する状態情報は、テキスト形式でもバイナリ形式でも構わない。例えば、データ量を減らすために、ハッシュ値を用いることも可能である。
これによれば、記憶部に保存されている分割信頼情報は、転送元情報処理装置の公開鍵で暗号化されているので、転送元情報処理装置のみが所有する秘密鍵でしか復号することができず、セキュリティを向上できる。
この場合も、送信される分割信頼情報は、転送元情報処理装置の公開鍵で暗号化されているので、転送元処理装置のみが所有する秘密鍵でしか復号することができず、セキュリティを向上できる。
<情報処理装置の構成>
図1に、この発明の情報処理装置(PC)の一実施例の構成ブロック図を示す。
この発明の情報処理装置PCは、パソコンやワークステーションのようなコンピュータであり、ネットワークを介して他のPCとデータ通信を行う機能を有する。あるいは、他のPCとケーブルを直接接続し、データ交換を行う機能を有してもよい。
いずれのケーブルの場合も、データの送信および受信という処理を伴うが、この発明では、単純に送信すべきデータをそのまま送信するのではなく、相互に通信する相手側が信頼できる機器であることを、以下に説明するような方法で確認した後、所定の暗号化処理をしたデータを送信する。
図1に示すように、この発明の情報処理装置は、主として、鍵生成部1,機器状態収集部2,信頼情報生成部3,信頼情報分割部4,信頼情報復元部5,通信部6,復号部7,暗号部8,機器検証部9,転送元選択部10,記憶部11を備える。
また、共通鍵利用方式では、自己と他のPCでも利用される1つの共通鍵が生成される。
鍵生成部1による鍵の生成は、情報処理装置PCの初期設定時,データ転送要求時,データ復号時などの際に、所定の生成プログラムによって行われる。
暗号および復号される情報の対象としては、送信されるデータ(DTS)の他、鍵そのものの場合もある。
たとえば、送信データDTSを、PC−Bの公開鍵KPBで暗号化したとき、暗号化後のデータを、KPB(DTS)と表記するものとする。
逆に、暗号化されたデータKPB(DTS)を、PC−Bの秘密鍵KSBで復号すると、もとのデータDTSが取得される。
記憶部11には、送信データや鍵の他に、この発明の情報処理装置の機能を実現する上で必要な情報が記憶される。
図1では、その一例として、PC−Bに記憶される情報の一部を示している。これに限られるわけではない。たとえば、PC−Bで生成された自己の秘密鍵KSB,自己の公開鍵KPB,他の情報処理装置PC−Aの公開鍵KPA,送信データDTS,受信データDTR,後述する信頼情報TIBの一部である分割信頼情報DIBB,検証情報VIBである。
状態情報とは、PCを構成するハードウェアや、インストールされているソフトウェアによって特定される情報である。
たとえば、インストールされているソフトウェアの種類,ソフトウェアの名称,ソフトウェアのバージョン番号,現在動作中のソフトウェアの名称や数,インストールされているウイルス定義パターンファイルのバージョン番号,インストールされたハードウェアデバイスの名称やバージョン番号,デバイスの起動情報,ウイルス対策の有効無効情報,生体認証状況情報,OSやソフトウェアのアップデート情報などが、状態情報に相当する。
信頼情報TIBは、PCの初期設定時,ハードウェアやソフトウェアの変更,追加時などの際に、状態情報から生成される情報であり、PCそのものを特定することが可能な状態を示すものとして利用される情報である。
検証情報VIBは、PCの起動中に、特定のイベントが発生するごとに、そのPCの状態情報を収集し、収集された状態情報からその都度生成される情報である。
同一の情報とする場合、収集された複数の状態情報をそのまま集合したデータ(テキスト形式、バイナリ形式)を用いることもできるが、複数の情報に対してハッシュ値を計算し、このハッシュ値を信頼情報および検証情報として利用してもよい。
さらに、信頼情報TIBは、たとえば、PC−Bの初期設定時に予め生成されて、そのPC−Bの記憶部11に保存されるべきものである。ただし、一旦保存された自己の信頼情報TIBは、その後分割されてデータ転送を行う相手のPCにも保存される。相手のPCに保存させる方法については、準備段階の交換処理として、後述する(図3,図4参照)。
たとえば、収集された状態情報の項目が10個(J1〜J10)あったとし、このうちの4つの項目(たとえば、J1,J2,J7,J9)を検証するものとすると、信頼情報TIBは、この4つの項目名(J1,J2,J7,J9)と、その項目のとるべき値のみを含むリストとして生成される。
この場合、検証情報VIBとして収集された10個の状態情報のうち、信頼情報TIBに含まれた4つの状態情報のみが機器検証部9によって検証される。
信頼情報TIBを複数に分割して別のPCに保存することにより、データ転送を行うPC相互の信頼性の確認をより確実に行うことができるようになり、また、第三者である管理装置(サーバ)を介することなく、データ転送を行うPC間で相互の信頼性を確認でき、信頼性を確認できないPCとのデータ通信を排除することができ、データ転送時の安全性をより高めることができる。
データ転送は、通常2つのPC間で行われるので、少なくとも2つに分割する。
分割する手法は、既存のデータ分割法を用いればよいが、たとえば、単純に半分に分割する方法、1バイトずつ交互に分割する方法、秘密分散法などの手法を用いることができる。
また、分割された信頼情報は、所定の処理によりもとの1つの信頼情報TIBに復元される。
信頼情報TIBを2つに分割した場合、分割後の信頼情報はそれぞれデータの転送元のPCと転送先のPCに、別々に保存される。
以下の実施例では主としてPC−AとPC−Bとの間のデータ転送を説明するが、この場合、信頼情報TIBは、2つの分割情報DIBAとDIBBに分割され、一方の分割情報DIBAはPC−Aに保存され、他方の分割情報DIBBはPC−Bに保存されるものとする。
また、たとえば2分割された分割情報(DIBA,DIBB)は、異なるPC−AとPC−Bにそれぞれに保存されているが、PC−AとPC−Bで実際にデータ転送を行う直前の検証処理のときに、どちらか一方のPCに、他方のPCに保存されていた分割情報を送信することにより集合され、もとの信頼情報TIBを復元する。
ここで、信頼情報TIBと検証情報VIBとが同じ形式のデータである場合は、両者が一致するか否かチェックされる。一致することが確認された場合は、データ転送の相手が信頼できるPCであると判断される。
確認に用いられる信頼情報TIBは、信頼情報復元部5が記憶部11に記憶された分割情報DIBAと、相手側から送信されてきた分割情報DIBBとを結合して復元したものである。
一方、確認に用いられる検証情報VIBは、相手側のPCから送られてきたそのPCの検証情報である。
たとえば、互いに信頼性を確認したパソコンが3台(PC−A,PC−B,PC−C)存在しているとする。データを入手しようとする転送先のPCがPC−Bであり、データを所有している転送元のPCがPC−A,PC−Cの2台であったとする。このとき、PC−Bにおいて、データを入手する相手のPCがPC−AであるかPC−Cであるかを選択する必要がある。たとえば、データ入手先である転送元のPCを選択するための画面を表示し、利用者による入力操作により転送元のPCを選択してもらう。
上記した3台のPCが存在する状態で、PC−Bにおいて、PC−Cが転送元として選択入力された場合、PC−Bに予め保存されていたPC−BとPC−Cとの間の信頼情報の分割情報DIBBが、データ転送前に、PC−BからPC−Cへ転送される。
また、同様に、PC−AとPC−Cと相互間では、PC−Aの信頼性を確認するための信頼情報TIA(A−C)と、PC−Cの信頼性を確認するための信頼情報TIC(A−C)である。
ここで、たとえばPC−Bの信頼性を確認するための信頼情報は、2つ存在するが、セキュリティを高めるため、信頼情報TIB(A−B)とTIB(B−C)とは異なるものを用いる方が好ましい。ただし、TIB(A−B)とTIB(B−C)とは同一であってもよい。
また、TIB(A−B)が、DIBA(A−B)とDIBB(A−B)に分割され、DIBA(A−B)がPC−Aに保存され、DIBB(A−B)がPC−Bに保存される。
また、各機能ブロック(1〜10)の機能は、ROMやRAM等に記憶された制御プログラムに基づいて、CPUが種々のハードウェアを動作させることにより実現される。
図2において、鍵KEYは、情報を暗号化または復号するための鍵である。公開鍵暗号方式を利用する場合は、図2に示すように、各PCごとに、異なる公開鍵と秘密鍵とが存在する。
共通鍵KCAは、転送データを暗号化および復号するための情報であり、一般に転送元のPCで生成されるものである。また、共通鍵KCAは、所定の鍵を用いて暗号化されて、暗号化された転送データとともに、転送先へ送信される。
たとえば、転送先PCで鍵情報KIBを作成する場合、転送元PCの公開鍵で暗号化されたものが、鍵情報KIBとなる。この鍵情報KIBは、転送元PCに送信される。
鍵情報KIBは転送元PCの公開鍵で暗号化されているので、鍵情報KIBは転送元PCの秘密鍵でしか復号することができない。
たとえば、後述するように、PC−Bの公開鍵KPB1を秘密鍵KSBで暗号化したもの(KSB(KPB1))を、異なるPC−Aの公開鍵KPAで暗号化したもの(KPA(KSB(KPB1)))を、鍵情報KIBとして利用する(図7参照)。
すなわち、信頼情報TIBは、第1の分割信頼情報DIBAと、第2の分割信頼情報DIBBに分割され、一方の分割信頼情報DIBAはPC−Aに保存され、他方の分割信頼情報DIBBはPC−Bに保存される。信頼情報TIBが、転送元PC−Aで更新される場合には、生成された信頼情報TIBが、転送元PC−Aで分割され、第2の分割信頼情報DIBBはPC−Bに送信される。
送受信されるもとのデータDTは、図1の送信データDTSに相当し、転送元のPC(たとえばPC−A)に保存されている。
また、公開鍵KPBで暗号化されたデータDTは、KPB(DT)と表記するが、この情報KPB(DT)は、もとのデータDTを所有している転送元のPC−Aで生成され、転送先のPC−Bへ送信される。
ここで、保存されるべき情報とは、実際にデータ転送が行われる前に保存されている情報をいい、後述する交換処理を実行した後に各PCに保存される情報である。
図2において、転送元PC−Aには、自己(PC−A)の秘密鍵KSA,相手(PC−B)の公開鍵KPBおよび分割信頼情報DIBAが保存されることを示している。
転送先PC−Bには、自己(PC−B)の秘密鍵KSB,相手(PC−A)の公開鍵KPAおよび分割信頼情報DIBBが保存される。
また、データ転送要求REQを受信した転送元PC−Aでは、所定の信頼性確認処理をした後、要求されたデータDTを、転送先PC−Bへ送信する。このとき、データDTは、生データのまま送信するのではなく、暗号化した後のデータを送信することが好ましい。
たとえば、PC−Bの公開鍵KPBで暗号化した後、KPB(DT)として送信される。あるいは、共通鍵KCAと共に、共通鍵KCAで暗号化したデータ(KCA(DT))を送信してもよい。
共通鍵KCAで暗号化する場合は、共通鍵KCAそのものをPC−Bへ送信するのではなく、共通鍵KCAを、PC−Bの公開鍵KPBで暗号化したものを送信してもよい。
この例では、鍵情報KIBは使用していない。鍵情報KIBには、PC−Bで作成された公開鍵KPB1が含まれており、PC−Aからのデータ暗号化、もしくは、共通鍵KCAの暗号化に用いられる。それらは秘密鍵KSB1によって復号される。
ここでは、データ転送の前に行われる処理である交換処理について説明する。
この交換処理は、データ転送を行う2つの情報処理装置相互間で予め実施される処理であり、データ転送をする前に必ず行う。ただし、データ転送の直前に毎回行う必要はなく、たとえば、データ転送を行いたい機器が追加されたとき、信頼情報が更新されたときなどに行うようにすればよい。
たとえば、2つの情報処理装置(PC−A,PC−B)間で、交換処理が行われたとすると、両PCは、図2に示したような情報(鍵,分割信頼情報)が保存された状態となる。
交換処理は、サーバを介して行うことも可能である。サーバが存在している場合には、自己の信頼情報をサーバに保存し、他の機器の分散情報や鍵などの情報を取得する。これは、サーバが存在している場合には、いつでも処理可能であり、定期的に行ってもよいし、電源投入時などに行ってもよい。
ここでは、転送先である情報処理装置PC−Bの信頼情報TIBを、転送元の情報処理装置PC−Aへ送信する交換処理について説明する。
図3の各ブロックは、図1の構成ブロックに示したものであり、説明に利用するブロックのみを示している。PC−AとPC−Bとは、専用ケーブルで直接接続してもよいが、LAN等のネットワークを介して接続する形態でもよい。
まず、情報処理装置PC−Bにおいて、鍵生成部1による鍵の生成処理,機器状態収集部2によるPC−Bの状態情報の収集処理,信頼情報生成部3による収集された情報を用いた信頼情報の生成処理,通信部6による生成した信頼情報等のPC−Aへの送信処理が、この順に行われる。
このとき、PC−Aへは、PC−Bの信頼情報TIBと、PC−Bの公開鍵KPBが送信される。
このとき、PC−Bへは、分割信頼情報DIBBと、PC−Aの公開鍵KPAが送信される。
なお、情報処理装置PC−Aにおいても、予め鍵生成部1が、自己の秘密鍵KSAと自己の公開鍵KPAを生成するものとする。
すでに交換処理が行われている場合、鍵の交換は行わなくてもよい。
まず、情報処理装置PC−AとPC−Bにおいて、それぞれ鍵生成部1が鍵の生成処理を行う(ステップS11,S21)。
ステップS11において、PC−Bで、自己の秘密鍵KSBと、自己の公開鍵KPBが生成される。
ステップS21において、PC−Aで、自己の秘密鍵KSAと、自己の公開鍵KPAが生成される。
ステップS14において、通信部6が、PC−Bの公開鍵KPBと、信頼情報TIBとをPC−Aに送信する。
ステップS15において、PC−Bの記憶部11に、自己の秘密鍵KSBを保存する。ここで自己の公開鍵KPBも保存してもよい。
ステップS23において、信頼情報分割部4が、受信した信頼情報TIBを分割する。たとえば、秘密分散法を用いて、信頼情報TIBを、分割信頼情報DIBAとDIBBに分割する。
ステップS24において、受信したPC−Bの公開鍵KPBと、分割によって生成した一方の分割信頼情報DIBAとを、記憶部11に保存する。もう一方の分割信頼情報DIBBは、PC−Aに保存しない。分割信頼情報DIBBは、PC−Aの公開鍵KPAで暗号化してもよい。
ステップS25において、通信部6が、もう一方の分割信頼情報DIBBと、PC−Aの公開鍵KPAとを、PC−Bへ送信する。
このように、PC−Bで生成された信頼情報TIBは、そのままの形式では保存されず、分割した信頼情報(DIBA,DIBB)の形式で、それぞれ物理的に異なる情報処理装置(PC−A,PC−B)に保存するようにしているので、一方の情報処理装置に記憶された情報(たとえばDIBA)が盗まれたとしても、他方の情報(DIBB)がなければ信頼情報TIBを復元することはできない。
すなわち、第三者のPC−EでPC−Aに対してデータを送信要求をしても、その要求時に送信すべき正当な検証情報VIBを作成できないので、PC−Aから不正にデータを取得することはできない。
図5のステップS31において、互いにデータを転送する装置(PC−A,PC−B)で、まず鍵を生成し、それぞれの公開鍵(KPA,KPB)をサーバに送信する。
サーバは、ステップS41において、受信した装置の公開鍵(KPA,KPB)を保存し、装置PC−AとPC−Bの登録を行う。
送信先PCがPC−Bであるとすると、ステップS32,S33において、図4に示したのと同様に、PC−Bにおいて、機器状態の収集と、信頼情報TIBの生成とを行う。そして、ステップS34において、PC−Bの信頼情報TIBを、サーバに送信する。
ステップS44において、分割された信頼情報DIBBを、公開鍵KPAを使用して暗号化する。分割信頼情報DIBAは、公開鍵KPAで暗号化してもよい。
そして、ステップS45において、DIBBを暗号化した情報(KPA(DIBB))と、PC−Aの公開鍵KPAとを、PC−Bへ送信する。
ステップS46において、DIBAと、PC−Bの公開鍵KPBとを、PC−Aへ送信する。
また、ステップS38において、PC−Aにおいても、サーバから送信されてきた公開鍵KPBと、分割信頼情報DIBAを記憶部11に保存する。
また、セキュリティのため、信頼情報TIBも、生成した分割信頼情報(DIBA,DIBB)もサーバには保存しない。すなわち、ステップS45,S46の後、サーバにおいて、情報(TIB,DIBA,DIBB)は消去する。同様に、PC−Bの信頼情報TIBも保存されていれば消去する。
したがって、秘密鍵KSAを所有していない第三者が、単に、暗号化された情報KPA(DIBB)を不正に取得したとしても、もとのDIBBを復元することはできず、セキュリティを確保することができる。
PC−AおよびPC−Bの利用者が自らUSBメモリのような半導体メモリ素子や、CD,DVDなどの記録媒体に必要な情報を記録して、変換処理をしてもよい。
たとえば、送信先のPC−Bの利用者が、図4に示したPC−Aへ送信される情報(KPB,TIB)をCDに記憶させ、かつ所定の暗号コードENをCDに付与して、その暗号コードENを入力しなければ、CDを読めないようにしてもよい。この場合、PC−Bの利用者が、直接または郵送などの別ルートで、暗号コードENをPC−Aの利用者に知らせる。そして、暗号コードENとCDとを受け取ったPC−Aの利用者は、暗号コードENを入力することにより、CDに記憶された情報を読むことができる。
以上が、データ転送よりも前に必要となる情報処理装置間で行うべき交換処理である。
ここでは、2つの情報処理装置(PC−A,PC−B)の間で、データを転送する場合の処理について説明する。この転送処理を行う前に、図4または図5で示したような変換処理が、PC−AとPC−Bで行われたものとする。
この発明のデータ転送処理は、要求されたデータを実際に転送する前に、転送元PCであるPC−A側で、転送先PCであるPC−Bの信頼性を検証する処理(図7のステップS61からS66)をすることを特徴とする。
図6では、図1の機能ブロックのうち利用する機能ブロックのみを示している。
ここでは、転送先PC−Bから転送元PC−Aに対してデータ送信要求が送信され、PC−Aにおいて、データ送信要求の送信時に同時に送信される情報を用いてPC−Bの信頼性を確認するものとする。そして、PC−Bが信頼できる相手であると確認できた場合に、PC−AからPC−Bへ、要求されたデータを送信する。
そして、通信部6によって、生成された情報群(KIB,VIB,IBB)をPC−Aへ送信する。ここで、情報IBBは、DIBBを、PC−Aの公開鍵KPAで暗号化した情報(KPA(DIBB))を意味する(図7参照)。
機器検証部9による検証処理によって検証が成功すると、送信先であるPC−Bが、データを送信してもよい信頼できる相手であると確認されたことになる。
この後、暗号部8で要求されたデータDTSの暗号化が行われ、PC−AからPC−Bへ、要求されたデータのデータ転送処理が実行される。たとえば、要求されたデータDTSは、PC−Bの公開鍵KPBで暗号化された形式(KPB(DTS))で送信される。
この発明は、2つの分割した信頼情報(DIBA,DIBB)と、鍵情報KIBと検証情報VIBとを用いて、送信要求をした転送先の情報処理装置(PC−B)の検証処理を行っているので、信頼性を確認できなかった転送先PCへデータを送信することがない。
すなわち、第三者が、他の情報処理装置を使って転送先PCになりすましたとしても、検証処理が成功せず、データの不正流出を、より高度に防止することができる。
ここでも、図6に示したように、PC−BからPC−Aへデータ送信要求を送信し、PC−Aで信頼性の検証が正当に行われた場合に、要求された送信データDTSをPC−AからPC−Bへ転送する場合について説明する。
前提として、PC−AとPC−Bですでに図3のような交換処理が行われ、図7に示すような所有情報をそれぞれ保存しているものとする。ここで、DIBBは、暗号化したKPA(DIBB)の形式で所有していてもよい。
ステップS52において、鍵情報KIBを生成する。
鍵情報KIBとは、図2に示した情報であるが、ここでは、PC−Aでデータの暗号処理を行うための鍵を含む情報を意味し、KPA(KSB(KPB1))である。
信頼性チェックを受ける転送先のPCであるPC−Bの公開鍵KPB1を、そのPC−Bの秘密鍵KSBで暗号化(署名とも呼ぶ)したもの(KSB(KPB1))を生成し、さらに、この情報(KSB(KPB1))を、信頼性をチェックする転送元のPCであるPC−Aの公開鍵KPAで暗号化したものが、鍵情報KIBである。
この情報IBBは、PC−Aのみに所有されている秘密鍵KSAによって復号可能な情報である。ただし、ステップS37で示したようにすでに暗号化された情報(KPA(DIBB))が、PC−Bに保存されている場合は、ステップS53は必要ない。
検証情報VIBは、信頼情報TIBと同一または対応するものであり、前記したように、機器状態収集部2によって収集された状態情報を用いて、信頼情報生成部3によって生成される。
その後、上記処理によって生成された情報群(KIB,IBB,VIB)を、データ送信要求REQに含ませ、データ送信要求REQを作成する。
なお、検証情報VIBも、PC−Aの公開鍵KPAで暗号化してもよい。この場合、この暗号化した情報(KPA(VIB))をデータ送信要求REQに含める。
ステップS62からS66において、転送先のPC−Bの信頼性の検証処理が行われ、その後、ステップS67とS68において、要求されたデータDTSの転送が行われる。
次に、ステップS63において、予め所有していたPC−Bの公開鍵KPBを用いて、KSB(KPB1)を復号する。これによりPC−Bの公開鍵KPB1が取得される。
もし、鍵情報KIBがPC−Aとは異なる信頼されていないPC(たとえばPC−C)に送信されたとすれば、PC−CはPC−Aの秘密鍵KSAを所有していないので、鍵情報KIBに含まれるPC−Bの公開鍵KPB1は正しく復元できない。
したがって、秘密鍵KSAを持たないPC−Cでは、鍵の復号処理が失敗する。
ただし、第三者が他のPC−Eで、PC−AとPC−B間のデータを盗聴したとすると、情報処理装置PC−Bになりすますことができ、図7に示したデータ送信要求REQに含まれる情報群(KIB,IBB,VIB)と同じ情報をPC−Aへ送信することができる場合がある。
この場合、第三者によりPC−Aのデータを不正に取得することができてしまうが、後述するように、検証情報VIBに毎回異なる乱数を含めることで、第三者による以後の不正なリプレイ攻撃を防止することができる。また、鍵情報KIB内の公開鍵KPB1に対応する秘密鍵KSB1は、PC−Bにしか存在しないため、PC−EがKPB1(DTS)を入手しても復号することができない。
ここで、ステップS64で取得した分割信頼情報DIBBと、予め所有していた分割信頼情報DIBAとを結合することにより、もとの信頼情報TIBを生成する。結合処理は、たとえば信頼情報TIBを分割したときの秘密分散処理と逆の処理をすることにより行えばよい。
たとえば、両情報とも同じ形式のデータである場合は、単純に一致するか否かをチェックする。一致すればPC−Bの信頼性の検証が成功したことになり、一致しなければ検証が失敗したことになる。検証が成功した場合は、ステップS67へ進みデータ送信処理を実行する。
また、検証情報VIBがハッシュ値であり、信頼情報TIBがデータの場合は、信頼情報TIBのハッシュ値を算出し、両ハッシュ値が一致するか否かチェックすればよい。逆に、検証情報VIBがデータであり、信頼情報TIBがハッシュ値の場合は、検証情報のハッシュ値を算出し、両ハッシュ値が一致するか否かをチェックすればよい。
ここで、たとえば、鍵情報KIBにより取得したPC−Bの公開鍵KPB1を用いて、送信データDTSを暗号化する。暗号化されたデータは、KPB1(DTS)と表記する。あるいは、図示しない共通鍵KCAを生成し、共通鍵KCAで、送信データDTSを暗号化してもよい。この場合、暗号化されたデータは、KCA(DTS)と表記する。
あるいは、共通鍵KCAで暗号化する場合は、共通鍵KCAと、暗号化されたデータKCA(DTS)とを、PC−Bへ送信する。この場合、共通鍵KCAも、PC−Bの公開鍵KPB1で暗号化することが好ましく、KPB1(KCA)を送信することが好ましい。
なお、この例では、共通鍵KCAは、転送元のPC−Aで生成されるが、PC−BでのDTSの復号を制限するために、受信した検証情報VIBを用いて生成することも可能である。これは、PC−A,PC−Bともに検証情報VIBから同じアルゴリズムを用いて鍵を生成することで実現する。共通鍵KCAは、PC−AからPC−Bに送信されず、PC−Bは、DTSを復号する際に、検証情報VIBを生成し、それを元に共通鍵KCAを生成し、復号を行う。復号したデータDTSは記憶部11に保存しない。
また、ステップS68で、PC−AからPC−Bへ送信される情報として、PC−Bの状態が更新され、信頼情報TIBへの更新が必要であれば、PC−Aにて新しい信頼情報TIBを作成し、暗号化されたデータ(KPB1(DTS))に加えて、更新された分割信頼情報DIBBを含めてもよい。
その後、ステップS56において、PC−Bにて、暗号化されたデータKPB1(DTS)を受信する。
ステップS57において、PC−Bのみが所有する自己の秘密鍵KSB1を用いて、KPB1(DTS)を復号する。これにより、PC−Bが要求したデータDTSが取得される。
ステップS58において、取得したデータを受信データDTRとして記憶部11に保存する。
以上により、PC−Bからのデータ送信要求REQに対応したデータ転送が完了する。
また、共通鍵KCAそのものがPC−Bの公開鍵KPB1で暗号化されている場合は、受信したKPB1(KCA)を、PC−Bの秘密鍵KSB1で復号した後、取得した共通鍵KCAを用いて受信したデータ(KCA(DTS))を復号する。
そして、たとえば定期的に2つの情報処理装置間で持つ分割信頼情報(DIBA,DIBB)を更新するようにすれば、単に固定された同一の検証情報(VIB)を用いてリプレイ攻撃する第三者の情報処理装置(PC−E)によってその後不正アクセスがされたとしてもさらなるデータの流出を、防止することができる。
たとえば、PC−Bにおいて、信頼情報TIBを生成し図3の交換処理を実行した後、収集対象となるソフトウェアのバージョンが変更されたり、収集対象となるハードウェアデバイスが変更されたりした場合、信頼情報TIBと一致しない検証情報VIBが生成される可能性がある。
一方、変更されることのある情報としては、OSのアップデート状況情報,ウイルス定義ファイルのバージョン情報など、ソフトウェアのアップデートにより変化する情報がある。
また、ステップS66の検証処理が失敗した場合、失敗したことを転送元PC−Aの利用者に通知してもよい。そして、PC−Aの利用者が失敗した原因を検討し、特に相手先のPC−Bが問題ないと判断した場合は、許可する旨の入力操作をしてもらい、データ転送を許可するようにしてもよい。
また、上記したように一度ステップS66の検証処理で失敗したが、PC−Aの利用者がデータ転送を許可した場合にも、保存された信頼情報を更新するようにすることが好ましい。この更新により、信頼性のあるPCから次回のデータ転送要求がされたときに、ステップS66の検証が成功するようにできる。
図8において、ステップS51〜S55,ステップS61からS66までの処理は、図7と同じである。ただし、ステップS66で、TIBとVIBが不一致であったとすることと、以後の処理(S71〜S74)が、図7と異なる。
ステップS66で、TIBとVIBが不一致であり、検証が失敗したとする。この場合、検証が失敗したことを画面表示等の方法で、PC−Aの利用者に通知する。その後、PC−Aの利用者が、信頼情報の更新要求を意図する入力をした場合に、ステップS71以後の処理を実行する。
このような場合に、PC−Aの利用者の自らの入力操作によってステップS71の更新処理へ進む。
ステップS72において、新信頼情報TIB−Sを分割する。たとえば、2つの新しい分割信頼情報DIBA−SとDIBB−Sに分割する。
ステップS73において、一方の新分割信頼情報DIBB−SはPC−Bへ送信し、他方の情報DIBA−SはPC−Aの記憶部11に保存する。すなわち、PC−Aに保存されていたDIBAは削除し、この後、新しい信頼情報の一部分DIBAとして、DIBA−Sを利用する。
PC−Bへ送信されるDIBB−Sは、PC−Aの公開鍵KPAで暗号化し、さらに、PC−Bの公開鍵KPBを用いて暗号化することが好ましい。
PC−Bでは、以前に保存されていたDIBBに代わり、今後信頼情報TIBの一部分DIBBとして、DIBB−Sを利用する。
このように、2つのPCに保存される分割信頼情報を更新することにより、1回は検証処理が失敗したが、信頼できる転送先PCについてのその後の検証処理を成功させることができるようになる。
情報処理装置に、TPM(Trusted Platform Module)を備えている場合は、秘密鍵の管理などに関して安全性をより向上させることができるので、データ転送時の不正アクセスをより効果的に防止できる。
TPMは、物理的な破壊をすることなしには、第三者がその内容を改変することができないデバイスであり、その内部で、TPMを備えたPCでしか使用できない秘密鍵を作成して保存することができるデバイスである。
また、TPMの内部には、TPMを備えたPCを構成するハードウェアデバイスの起動状態を示す情報を格納する領域(PCR:Platform Configuration Register)を備えている。
したがって、PCRに格納されたハッシュ値を読み出せば、情報処理装置PCを構成するハードウェアデバイスが、どのような順序で起動されたかがわかる。
そこで、このPCRに格納された情報(ハッシュ値)を、PCの検証情報VIBおよび信頼情報TIBとして利用する。
また、図7のステップS54においても、PCRの情報を読み出し、これをもとに検証情報VIBを生成する。
また、TPMでは、どのようにハッシュをとったかをログに残すことが可能であり、このログを検証情報および信頼情報に利用してもよい。この場合、PCRで、ログの改ざん検知をすることができる。
なお、PCR自体の改ざん検知も可能であり、AIKと呼ばれるTPM内部に保存された秘密鍵KSAIKBで、PCRの暗号化(署名)が可能であり、対応するAIKの公開鍵KPAIKBを用いて、復号をすることにより、PCRの値を取得でき、PCRによりログの改ざん検知をすることができる。AIKの秘密鍵はTPM内部にのみ存在し、暗号化もTPM内部で行われるため、TPM内部のPCR値であることが保証される。
公開鍵KPAIKBを情報処理装置PC−Aに保存するよりも、信頼情報TIBの中に含めた方が、公開鍵KPAIKBを不正に入れ替えられる危険が少なくなるので、検証情報VIBの信頼性も高めることができる。不正なAIKを作成し、公開鍵KPAIKBを入れ替えられると、不正な検証情報の作成が可能となってしまう。
また、PCRを利用して、TPM内に保存される秘密鍵の使用を制限することもできる。
図9に、PCRを利用して秘密鍵の使用を制限するTPMの動作の説明図を示す。
まず、装置PC−Aにおいて、DTSを暗号化するための秘密鍵、公開鍵を生成するときに、「PCRの条件」を設定する。
「PCRの条件」とは、どのPCRがどういった値であるかというものである。設定されたPCRの条件は、公開鍵KPA1、秘密鍵KSA1とともに鍵情報KIBとしてPC−AからPC−Bへ送信され、PC−Bの記憶部(ハードディスクHDD)に保存される。
PC−BのTPMでしか生成された秘密鍵KSA1が使用できないようにするために、PC−Aで秘密鍵KSA1を、PC−BのTPMの秘密鍵KSB1で復号できるように、PC−Bの公開鍵KPB1で暗号化しておく。そのため、鍵情報KIBの秘密鍵KSA1は、公開鍵KPB1で暗号化されて、PC−BのHDDに保存されている。
秘密鍵KSA1をTPMにロードするときに、「PCRの条件」がPC−Aでの検証時と一致すれば、秘密鍵KSA1がTPMにロードされ、KPA1(DTS)を復号することができ、DTSが使用可能となる。
PCRは、情報処理装置が起動するときに、BIOSから装置の状態を示すように計測された値を保持している。BIOSから次に実行されるソフトウェアを順に計測することで、PCRは装置の状態を正確に示している。
このように、PCRの条件を設定して、DTSの復号に使用する鍵の使用を制限しているので、秘密鍵KSA1の使用が制限されることになり、転送先PC−Bで送信データを一旦取得したとしても、その後のデータの利用を制限できる。
図6および図7に示した実施例では、転送先のPC(PC−B)の信頼性を、転送元のPC(PC−A)で検証した後、要求されたデータをPC−Bへ送信する場合を説明した。
ここでは、逆に、転送先のPC(PC−B)で、転送元のPC(PC−A)の信頼性を検証した後、転送元のPC(PC−A)から送信されてきたデータを保存等する実施例を説明する。
この場合、転送先PC−Bからデータ送信要求REQは送信されない。転送先PC−Aから自発的に、検証に必要な情報群とともにデータを転送先PC−Bへ送信する。
ここでは、転送元PC−Aから転送先PC−Bへ、データDTSを送信する場合を説明する。
まず、前提として、転送元PC−Aと転送先PC−Bの間で、図4のような交換処理が行われ、それぞれ図10に示すような所有情報を保存しているものとする。
転送先PC−Bで、転送元PC−Aの信頼性を確認するので、生成される信頼情報はPC−Aの信頼情報TIAであり、これを2分割した情報(DIAA,DIAB)が、PC−AとPC−Bにそれぞれ保存されているものとする。
ステップS102において、PC−Aの鍵生成部1が、共通鍵KAOを生成する。
ステップS103において、送信データDTSを、共通鍵KAOを用いて暗号化する。暗号化データKAO(DTS)が作成される。
ステップS104において、鍵情報KIAを生成する。鍵情報KIAは、共通鍵KAOを、PC−Bの公開鍵KPBで暗号化したものである。
ステップS105において、保存されていたPC−Aの分割信頼情報DIAAを、PC−Bの公開鍵KPBで暗号化し、IAA=KPB(DIAA)を生成する。
すなわち、通信部6が、暗号化されたデータKAO(DTS),鍵情報KIA=KPB(KAO),IAA=KPB(DIAA),検証情報VIAを送信する。
ここで、検証情報VIAも、PC−Bの公開鍵KPBで暗号化して、暗号化した検証情報(KPB(VIA))を送信してもよい。
ステップS112において、受信したKAO(DTS)と、鍵情報KIAを、記憶部11に保存する。
ステップS113において、PC−Bの秘密鍵KSBを用いてIAAを復号する。これにより、PC−Aの分散信頼情報DIAAを取得する。
ステップS114において、受信により取得したDIAAと、予め保存されていたDIABとを結合し、もとの信頼情報TIAを復元する。
ステップS116において、復元した信頼情報TIAと、受信した検証情報VIAとを比較する。この比較処理は、図7のステップS66と同様にして行う。
TIAとVIAとが一致した場合、転送元PC−Aの信頼性が確認されたことになり、PC−Bは送信されてきたデータDTSを保存してもよいと判断する。
逆に、不一致の場合、PC−Aの検証が失敗したことになるので、データは受信してはならないと判断し、保存していたKAO(DTS)とKIAを削除する(S120)。
一致していた場合、ステップS117において、鍵情報KIAを、PC−Bの秘密鍵KSBで復号する。これにより、KIAから、共通鍵KAOを取得する。
ステップS119において、取得したデータDTSを、受信データDTRとして保存する。
以上のように、転送先PC−Bでは、転送元PC−Aの信頼性の確認が正常にできた場合にのみ、送信されてきたデータを保存する。
また、信頼性の確認できなかったPCからの送信データを保存しないようにすることで、不当に送信されてきた悪意のあるデータ(たとえばウイルス)を削除することができる。
また、他の実施例として、図7および図10の処理を結合して、一連の転送処理中に、転送元PC−Aと転送先PC−Bの双方で、互いに相手側の信頼性を検証するようにしてもよい。
たとえば、図7のステップS68において、暗号化データのみをPC−Bへ送信するのではなく、このステップS68の前に、図10のステップS101〜S105を実行し、PC−Aの信頼性を検証してもらうための情報群(KIA,VIA,IAA)を作成し、暗号化データとともに、これらの情報群を送信する。そして、転送先のPC−Bでは、データDTSを復元する前に、ステップS111からS116を実行して、PC−Aの信頼性を確認する。PC−Aの信頼性が確認できた場合に、受信されたデータを復元して保存するようにする。
このように、転送元PC−Aと転送先PC−Bで相互に信頼性を検証すれば、セキュリティをより高めることができる。
2 機器状態収集部
3 信頼情報生成部
4 信頼情報分割部
5 信頼情報復元部
6 通信部
7 復号部
8 暗号部
9 機器検証部
10 転送先選択部
11 記憶部
Claims (17)
- 自己の所有するデータを転送する相手である転送先情報処理装置の生成した信頼情報を、所定の分割方法で分割した一部の第1分割信頼情報を予め取得して保存する記憶部と、
前記転送先情報処理装置から自己の所有データの転送要求を受信し、かつその受信時に前記転送先情報処理装置の信頼情報を分割した他の第2分割信頼情報と、前記転送先情報処理装置の固有の転送要求時の状態を示す情報を用いて生成した検証情報とを受信する通信部と、
前記記憶部に保存された第1分割信頼情報と前記受信された第2分割信頼情報とを用いて、前記信頼情報を復元する信頼情報復元部と、
前記復元された信頼情報と前記受信された検証情報とを用いて、前記転送先情報処理装置の信頼性を検証する機器検証部とを備え、
前記信頼性の検証が成功した場合に、前記通信部が、転送要求された自己の所有データを、前記転送先情報処理装置へ送信することを特徴とする情報処理装置。 - 前記信頼情報は、秘密分散法を用いて、第1分割信頼情報と第2分割信頼情報とに分割されることを特徴とする請求項1の情報処理装置。
- 前記復元された信頼情報と、前記受信された検証情報とが同一形式のデータである場合は、信頼情報と検証情報とが一致する場合に、前記機器検証部が、前記転送先情報処理装置の信頼性の検証が成功したと判断することを特徴とする請求項1の情報処理装置。
- 前記信頼情報を所定の分割方法で2つの分割信頼情報に分割する信頼情報分割部をさらに備え、
前記機器検証部が、信頼性の検証に失敗した場合、前記受信された検証情報を用いて、
前記信頼情報を更新した後、前記信頼情報分割部が、更新後の信頼情報を2つに分割し、一方の分割信頼情報を前記記憶部の第1分割信頼情報として記憶し、他方の分割信頼情報を、第2分割信頼情報として、前記転送先情報処理装置へ送信することを特徴とする請求項1の情報処理装置。 - 前記記憶部に転送先情報処理装置の公開鍵を予め記憶し、転送要求された自己の所有データを、前記公開鍵を用いて暗号化する暗号部をさらに備え、
前記通信部は、前記暗号部で暗号化された前記所有データを、転送先情報処理装置へ送信することを特徴とする請求項1の情報処理装置。 - 共通鍵を生成する鍵生成部と、転送要求された自己の所有データを前記共通鍵で暗号化する暗号部をさらに備え、
前記記憶部に転送先情報処理装置の公開鍵を予め記憶し、
前記通信部は、暗号部で暗号化された前記所有データと、前記転送先情報処理装置の公開鍵で暗号化された共通鍵とを、転送先情報処理装置へ送信することを特徴とする請求項1の情報処理装置。 - 自己の秘密鍵と公開鍵とを生成する鍵生成部と、
自己の所有するデータを転送する相手である転送先情報処理装置から、前記転送先情報処理装置の固有の状態を示す情報を用いて生成された信頼情報を受信する通信部と、
前記信頼情報を所定の分割方法で2つの分割信頼情報に分割する信頼情報分割部と、
分割された一方の第1分割信頼情報と前記自己の秘密鍵とを保存する記憶部とを備え、
前記通信部は、前記生成された自己の公開鍵と、分割された他方の第2分割信頼情報とを、前記転送先情報処理装置へ送信することを特徴とする情報処理装置。 - 自己の秘密鍵と、データの転送元情報処理装置の公開鍵と、自己の固有の状態情報を示す情報を用いて生成した信頼情報を分割した一部の分割信頼情報とを予め保存する記憶部と、自己の現在の状態情報を収集する機器状態収集部と、前記収集された現在の状態情報を用いて自己の検証情報を生成する信頼情報生成部と、前記転送元情報処理装置の所有するデータの転送要求をする際に、前記生成された検証情報と、前記予め保存されていた分割信頼情報とを、転送元情報処理装置に送信する通信部と、前記通信部が転送元情報処理装置から自己の公開鍵で暗号化された転送要求データを受信した場合、前記保存されていた自己の秘密鍵を用いて前記受信したデータを復号する復号部とを備えたことを特徴とする情報処理装置。
- 前記記憶部に予め保存される分割信頼情報は、前記転送元情報処理装置の公開鍵で暗号化された形式で保存されていることを特徴とする請求項8の情報処理装置。
- 前記転送要求をする際に、送信される分割信頼情報は、転送元情報処理装置の公開鍵で暗号化されていることを特徴とする請求項8の情報処理装置。
- 前記転送要求をする際に、前記通信部は鍵情報も送信し、前記鍵情報は、自己の公開鍵を自己の秘密鍵で暗号化したものを、転送元情報処理装置の公開鍵で暗号化した情報であることを特徴とする請求項8の情報処理装置。
- 前記機器状態収集部が収集する状態情報は、テキスト形式もしくはバイナリ形式のデータまたはハッシュ値であることを特徴とする請求項8の情報処理装置。
- 自己の秘密鍵と公開鍵とを生成する鍵生成部をさらに備え、前記信頼情報生成部が、前記機器状態収集部によって収集された状態情報を用いて自己の信頼情報を生成し、前記通信部が、前記自己の公開鍵と、前記生成された自己の信頼情報とを、転送元情報処理装置へ送信することを特徴とする請求項8の情報処理装置。
- 転送元情報処理装置が自己の所有するデータを転送先情報処理装置へ転送する前に、
前記転送先情報処理装置が、転送先情報処理装置の機器状態収集部によって収集された自己の現在の状態情報を用いて、信頼情報を生成し、その信頼情報を前記転送元情報処理装置へ送信した後、
前記転送元情報処理装置が受信した信頼情報を2つに分割して、第1分割信頼情報と第2分割信頼情報とを生成し、第1分割信頼情報は、記憶部へ保存し、第2分割信頼情報は前記転送先情報処理装置へ送信され、前記転送先情報処理装置の記憶部に保存されることを特徴とする情報処理装置のデータ転送方法。 - 前記転送先情報処理装置が、前記転送元情報処理装置に対して、転送元情報処理装置が所有するデータの転送を要求する際に、
前記機器状態収集部によって収集された自己の現在の状態情報を用いて検証情報を生成し、生成された検証情報と、前記転送先情報処理装置の記憶部に保存されていた第2分割信頼情報とを前記転送元情報処理装置へ送信した後、
前記転送元情報処理装置が、自己の記憶部に保存されていた第1分割信頼情報と、受信した検証情報とを用いて、前記信頼情報を復元し、復元した信頼情報と受信した検証情報とを用いて、前記転送先情報処理装置の信頼性を検証し、信頼性の検証が成功した場合に、転送要求された自己の所有するデータを、転送先情報処理装置へ送信することを特徴とする、請求項14の情報処理装置のデータ転送方法。 - 前記信頼性の検証に失敗した場合に、前記転送元情報処理装置が、前記受信した検証情報から新たな信頼情報を生成し、新たな信頼情報を分割して、2つの分割信頼情報を生成し、生成した一方の分割信頼情報を第1分割信頼情報として自己の記憶部に保存し、生成した他方の分割信頼情報を前記転送先情報処理装置へ送信し、
転送先情報処理装置が、受信した分割信頼情報を第2分割信頼情報として保存することを特徴とする請求項15の情報処理装置のデータ転送方法。 - 転送元情報処理装置の固有の状態を示す情報を用いて生成した信頼情報を、所定の分割方法で2つに分割した一方の第1分割信頼情報を転送元情報処理装置に保存し、かつ他方の第2分割信頼情報を転送先情報処理装置に保存した後、
転送元情報処理装置が転送先情報処理装置へ自己の所有するデータを転送する際に、前記転送元情報処理装置が、共通鍵を生成し、その共通鍵で、転送すべき自己の所有するデータを暗号化し、転送元情報処理装置の機器状態収集部によって収集された自己の現在の状態情報を用いて検証情報を生成し、
前記共通鍵と、保存された第1分割信頼情報と、前記生成された検証情報と、前記暗号化されたデータとを、前記転送先情報処理装置へ送信した後、
前記転送先情報処理装置が、前記受信した第1分割信頼情報と、保存された第2分割信頼情報とを用いて、前記転送元情報処理装置の信頼情報を復元し、復元した信頼情報と、受信した検証情報とを用いて、前記転送元情報処理装置の信頼性を検証し、信頼性の検証が成功した場合に、受信した暗号化されたデータを、受信した共通鍵を用いて復号することを特徴とする情報処理装置のデータ転送方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007067086A JP5141056B2 (ja) | 2007-03-15 | 2007-03-15 | 情報処理装置と情報処理装置のデータ転送方法 |
US12/075,417 US8667278B2 (en) | 2007-03-15 | 2008-03-10 | Information processing apparatus and data transmission method of information processing apparatus |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007067086A JP5141056B2 (ja) | 2007-03-15 | 2007-03-15 | 情報処理装置と情報処理装置のデータ転送方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2008226146A true JP2008226146A (ja) | 2008-09-25 |
JP5141056B2 JP5141056B2 (ja) | 2013-02-13 |
Family
ID=39763877
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2007067086A Expired - Fee Related JP5141056B2 (ja) | 2007-03-15 | 2007-03-15 | 情報処理装置と情報処理装置のデータ転送方法 |
Country Status (2)
Country | Link |
---|---|
US (1) | US8667278B2 (ja) |
JP (1) | JP5141056B2 (ja) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009253700A (ja) * | 2008-04-07 | 2009-10-29 | Nec Corp | ファイルデータ転送方法、ファイルデータ転送プログラム、ファイルデータ転送システム、及び通信端末 |
JP2014140102A (ja) * | 2013-01-21 | 2014-07-31 | Nippon Telegr & Teleph Corp <Ntt> | セキュア認証方法 |
JP2018007125A (ja) * | 2016-07-05 | 2018-01-11 | 株式会社プラットフィールド | 認証鍵複製システム |
WO2024100835A1 (ja) * | 2022-11-10 | 2024-05-16 | 三菱電機株式会社 | 発行システム、及び証明書発行サーバ |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9690941B2 (en) * | 2011-05-17 | 2017-06-27 | Microsoft Technology Licensing, Llc | Policy bound key creation and re-wrap service |
US9430655B1 (en) * | 2012-12-28 | 2016-08-30 | Emc Corporation | Split tokenization |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH10260939A (ja) * | 1997-03-19 | 1998-09-29 | Fujitsu Ltd | コンピュータネットワークのクライアントマシン認証方法,クライアントマシン,ホストマシン及びコンピュータシステム |
JP2002312317A (ja) * | 2001-04-11 | 2002-10-25 | Casio Comput Co Ltd | 認証システムおよび認証方法 |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5905799A (en) * | 1994-07-20 | 1999-05-18 | Bell Atlantic Network Services, Inc. | Programmed computer for identity verification, forming joint signatures and session key agreement in an RSA public cryptosystem |
US7249105B1 (en) * | 2000-03-14 | 2007-07-24 | Microsoft Corporation | BORE-resistant digital goods configuration and distribution methods and arrangements |
US6802001B1 (en) * | 2000-10-25 | 2004-10-05 | Ericsson Inc. | Method of incrementally establishing an encryption key |
US7017041B2 (en) * | 2000-12-19 | 2006-03-21 | Tricipher, Inc. | Secure communications network with user control of authenticated personal information provided to network entities |
US6970562B2 (en) * | 2000-12-19 | 2005-11-29 | Tricipher, Inc. | System and method for crypto-key generation and use in cryptosystem |
US7359883B2 (en) | 2001-04-19 | 2008-04-15 | Matsushita Electric Industrial Co., Ltd. | License management system, license management device, relay device and terminal device |
JP4043828B2 (ja) | 2001-04-19 | 2008-02-06 | 松下電器産業株式会社 | ライセンス管理システム、ライセンス管理装置及び中継装置 |
US7231521B2 (en) * | 2001-07-05 | 2007-06-12 | Lucent Technologies Inc. | Scheme for authentication and dynamic key exchange |
US7249373B2 (en) * | 2003-01-15 | 2007-07-24 | Microsoft Corporation | Uniformly representing and transferring security assertion and security response information |
JP4304477B2 (ja) | 2004-02-27 | 2009-07-29 | 日本電気株式会社 | コンピュータおよびプログラム |
US8214649B2 (en) * | 2004-06-30 | 2012-07-03 | Nokia Corporation | System and method for secure communications between at least one user device and a network entity |
WO2007078935A2 (en) * | 2005-12-29 | 2007-07-12 | Chemimage Corporation | Method and apparatus for counterfeiting protection |
-
2007
- 2007-03-15 JP JP2007067086A patent/JP5141056B2/ja not_active Expired - Fee Related
-
2008
- 2008-03-10 US US12/075,417 patent/US8667278B2/en not_active Expired - Fee Related
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH10260939A (ja) * | 1997-03-19 | 1998-09-29 | Fujitsu Ltd | コンピュータネットワークのクライアントマシン認証方法,クライアントマシン,ホストマシン及びコンピュータシステム |
JP2002312317A (ja) * | 2001-04-11 | 2002-10-25 | Casio Comput Co Ltd | 認証システムおよび認証方法 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009253700A (ja) * | 2008-04-07 | 2009-10-29 | Nec Corp | ファイルデータ転送方法、ファイルデータ転送プログラム、ファイルデータ転送システム、及び通信端末 |
JP2014140102A (ja) * | 2013-01-21 | 2014-07-31 | Nippon Telegr & Teleph Corp <Ntt> | セキュア認証方法 |
JP2018007125A (ja) * | 2016-07-05 | 2018-01-11 | 株式会社プラットフィールド | 認証鍵複製システム |
WO2024100835A1 (ja) * | 2022-11-10 | 2024-05-16 | 三菱電機株式会社 | 発行システム、及び証明書発行サーバ |
Also Published As
Publication number | Publication date |
---|---|
US20080229106A1 (en) | 2008-09-18 |
JP5141056B2 (ja) | 2013-02-13 |
US8667278B2 (en) | 2014-03-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110799941B (zh) | 防盗和防篡改的数据保护 | |
CN109075976B (zh) | 取决于密钥认证的证书发布 | |
JP6151402B2 (ja) | データセンタへのプラットフォームの内包検証 | |
US9281949B2 (en) | Device using secure processing zone to establish trust for digital rights management | |
JP5703391B2 (ja) | 耐タンパー性ブート処理のためのシステム及び方法 | |
JP4843246B2 (ja) | 冗長な信頼されるプラットフォーム・モジュールを有する信頼されるサーバをブートするための方法およびシステム | |
JP5116325B2 (ja) | 情報処理装置、ソフトウェア更新方法及び画像処理装置 | |
TWI567579B (zh) | 用於對硬體裝置提供金鑰的方法和設備 | |
JP4278327B2 (ja) | コンピュータ・プラットフォームおよびその運用方法 | |
KR101402509B1 (ko) | 사용자 인증에 기초하여 무결성을 수정하는 방법 및 컴퓨터시스템 | |
US8407481B2 (en) | Secure apparatus and method for protecting integrity of software system and system thereof | |
US8090946B2 (en) | Inter-system binding method and application based on hardware security unit | |
US20190332792A1 (en) | Access management system, access management method and program | |
CN101443774A (zh) | 优化的完整性验证过程 | |
JP7174237B2 (ja) | 鍵生成装置、鍵更新方法および鍵更新プログラム | |
JP2008507203A (ja) | ディストリビューションcdを使用した、署名されたグループにおけるダイレクトプルーフの秘密鍵を装置に伝達する方法 | |
US20040177260A1 (en) | System and method for remote code integrity in distributed systems | |
JP5141056B2 (ja) | 情報処理装置と情報処理装置のデータ転送方法 | |
JP2009080772A (ja) | ソフトウェア起動システム、ソフトウェア起動方法、及びソフトウェア起動プログラム | |
CN110674525A (zh) | 一种电子设备及其文件处理方法 | |
JP2006527446A (ja) | 取引を実行し、ディジタル・データへの正当なアクセスまたはその使用を検証するための方法およびシステム | |
JP5234217B2 (ja) | 情報処理装置、ソフトウェア更新方法及びプログラム | |
TW202347147A (zh) | 用於裝置身分識別佈建之反複製架構 | |
JP5310897B2 (ja) | 情報処理装置、ソフトウェア更新方法及び記録媒体 | |
CN113545006A (zh) | 远程授权访问锁定的数据存储设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20091106 |
|
RD02 | Notification of acceptance of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7422 Effective date: 20111107 |
|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20111117 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20120118 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20120124 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20120326 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20120508 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20120518 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20121023 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20121105 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20151130 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5141056 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
LAPS | Cancellation because of no payment of annual fees |