(57)【特許請求の範囲】
【請求項１】
ｎ（ｎは２以上の整数）個の情報処理装置PC(i)（i=1,...,n）が情報記録媒体を共用し、当該情報記録媒体へ暗号文を格納し、当該情報記録媒体に格納された暗号文から平文を復号する、情報記録媒体のセキュリティ方法であって、
情報処理装置PC(i)に対応する公開鍵暗号方式の秘密鍵SK(i)の分散情報SSK(i,1)を上記情報処理装置PC(i)の記憶部に格納する過程と、当該秘密鍵SK(i)の分散情報SSK(i,2)を上記情報記録媒体に格納する過程と、情報処理装置PC(i)に対応する公開鍵暗号方式の公開鍵PK(i)を用いて共通鍵暗号方式の共通鍵KAを暗号化した暗号文PE(PK(i), KA)を上記情報記録媒体に格納する過程と、を具備する登録過程と、
上記情報記録媒体に暗号文PE(PK(p), KA)と分散情報SSK(p,2)とが格納され、自らの記憶部に分散情報SSK(p,1)が格納された何れかの情報処理装置PC(p)（p∈{1,...,n}）の外部読み込み部が、上記情報記録媒体から暗号文PE(PK(p), KA)を読み込む過程と、上記情報処理装置PC(p)の内部読み込み部が、上記情報処理装置PC(p)の記憶部から分散情報SSK(p,1)を読み込む過程と、上記情報処理装置PC(p)の外部読み込み部が、上記情報記録媒体から分散情報SSK(p,2)を読み込む過程と、上記情報処理装置PC(p)の秘密鍵復元部が、少なくとも当該分散情報SSK(p,1)と分散情報SSK(p,2)とを用いて上記情報処理装置PC(p)の秘密鍵SK(p)を復元する過程と、上記情報処理装置PC(p)の共通鍵復元部が、復元された秘密鍵SK(p)を用いて暗号文PE(PK(p), KA)を復号して共通鍵KAを抽出する過程と、上記情報処理装置PC(p)の暗号化部が、共通鍵KAを用いて平文M(p)を暗号化した暗号文SE(KA, M(p))を生成する過程と、上記情報処理装置PC(p)の外部書き込み部が、当該暗号文SE(KA, M(p))を上記情報記録媒体に格納する過程と、を具備する書き込み過程と、
上記情報記録媒体に暗号文PE(PK(q), KA)と分散情報SSK(q,2)とが格納され、自らの記憶部に分散情報SSK(q,1)が格納された何れかの情報処理装置PC(q)（q∈{1,...,n}）の外部読み込み部が、上記情報記録媒体から暗号文PE(PK(q), KA)を読み込む過程と、上記情報処理装置PC(q)の外部読み込み部が、上記情報記録媒体から暗号文SE(KA, M(p))を読み込む過程と、上記情報処理装置PC(q)の内部読み込み部が、上記情報処理装置PC(q)の記憶部から分散情報SSK(q,1)を読み込む過程と、上記情報処理装置PC(q)の外部読み込み部が、上記情報記録媒体から分散情報SSK(q,2)を読み込む過程と、上記情報処理装置PC(q)の秘密鍵復元部が、少なくとも当該分散情報SSK(q,1)と分散情報SSK(q,2)とを用いて上記情報処理装置PC(q)の秘密鍵SK(q)を復元する過程と、上記情報処理装置PC(q)の共通鍵復元部が、復元された秘密鍵SK(q)を用いて暗号文PE(PK(q), KA)を復号して共通鍵KAを抽出する過程と、上記情報処理装置PC(q)の復号化部が、共通鍵KAを用いて暗号文SE(KA, M(p))を復号して平文M(p)を抽出する過程と、を具備する読み込み過程と、
上記情報記録媒体に暗号文PE(PK(r), KA)と分散情報SSK(r,2)とが格納され、自らの記憶部に分散情報SSK(r,1)が格納された何れかの情報処理装置PC(r)（r∈{1,...,n}）の外部読み込み部が、上記情報記録媒体から暗号文PE(PK(r), KA)を読み込む過程と、上記情報処理装置PC(r)の内部読み込み部が、上記情報処理装置PC(r)の記憶部から分散情報SSK(r,1)を読み込む過程と、上記情報処理装置PC(r)の外部読み込み部が、上記情報記録媒体から分散情報SSK(r,2)を読み込む過程と、上記情報処理装置PC(r)の秘密鍵復元部が、少なくとも当該分散情報SSK(r,1)と分散情報SSK(r,2)とを用いて上記情報処理装置PC(r)の秘密鍵SK(r)を復元する過程と、上記情報処理装置PC(r)の共通鍵復元部が、復元された秘密鍵SK(r)を用いて暗号文PE(PK(r), KA)を復号して共通鍵KAを抽出する過程と、上記情報処理装置PC(r)の共通鍵生成部が、新たな共通鍵KAnewを生成する過程と、上記情報処理装置PC(r)の外部読み込み部が、上記情報記録媒体から何れかの情報処理装置PC(s)（s=1,...,n）に対応する暗号文SE(KA, M(s))を読み込む過程と、上記情報処理装置PC(r)の復号化部が、共通鍵KAを用いて暗号文SE(KA, M(s))を復号して平文M(s)を抽出する過程と、上記情報処理装置PC(r)の暗号化部が、新たな共通鍵KAnewを用いて平文M(s)を暗号化した暗号文SE(KAnew, M(s))を生成する過程と、上記情報処理装置PC(r)の外部書き込み部が、当該暗号文SE(KAnew, M(s))を上記情報記録媒体に格納する過程と、を具備する再暗号化過程と、
上記情報処理装置PC(r)の外部読み込み部が、上記情報記録媒体から上記情報処理装置PC(s)に対応する公開鍵PK(s)(s=1,...,n)を読み込む過程と、上記情報処理装置PC(r)の鍵秘匿化部が、公開鍵PK(s)を用いて新たな共通鍵KAnewを暗号化した暗号文PE(PK(s), KAnew)を生成する過程と、上記情報処理装置PC(r)の外部書き込み部が、暗号文PE(PK(s), KAnew)を上記情報記録媒体に格納する過程と、具備する再登録過程と、
上記情報処理装置PC(r)の削除部が、上記情報記録媒体に格納された暗号文SE(KA, M(w))を上記情報記録媒体から削除する削除過程と、
を有することを特徴とする情報記録媒体のセキュリティ方法。
【請求項２】
請求項１に記載の情報記録媒体のセキュリティ方法であって、
上記再登録過程は、上記情報処理装置PC(r)の外部読み込み部が、上記情報記録媒体から登録削除対象の情報処理装置PC(w)（w=1,...,n）以外の情報処理装置PC(s)に対応する公開鍵PK(s)を読み込む過程と、上記情報処理装置PC(r)の鍵秘匿化部が、上記公開鍵PK(s)を用いて新たな共通鍵KAnewを暗号化した暗号文PE(PK(s), KAnew)を生成する過程と、上記情報処理装置PC(r)の外部書き込み部が、暗号文PE(PK(s), KAnew)を上記情報記録媒体に格納する過程と、を具備する過程であり、
当該情報記録媒体のセキュリティ方法は、
上記情報処理装置PC(w)の登録削除を行う場合には、上記再暗号化過程と上記再登録過程と上記削除過程とが順に実行される
ことを特徴とする情報記録媒体のセキュリティ方法。
【請求項３】
ｎ（ｎは２以上の整数）個の情報処理装置PC(i)（i∈{1,...,n}）が情報記録媒体を共用し、当該情報記録媒体へ暗号文を格納し、当該情報記録媒体に格納された暗号文から平文を復号する、情報記録媒体のセキュリティ方法であって、
各情報処理装置PC(i)に対して共通のマスター秘密鍵をMSKとし、マスター秘密鍵MSKを用いて生成された各情報処理装置PC(i)に対して共通のマスター公開鍵をMPKとし、各情報処理装置PC(i)をそれぞれ識別する識別情報ID(i)とマスター秘密鍵MSKとを用いて生成されたID-BASE暗号方式の秘密鍵をSK(i)とした場合における、秘密鍵SK(i)の分散情報SSK(i,1)を上記情報処理装置PC(i)の記憶部にそれぞれ格納する過程と、当該秘密鍵SK(i)の分散情報SSK(i,2)を上記情報記録媒体に格納する過程と、マスター公開鍵MPKと識別情報ID(i)とを用い、ID-BASE暗号方式によって共通鍵暗号方式の共通鍵KAを暗号化した各暗号文IBE(MPK, ID(i), KA)を、上記情報記録媒体に格納する過程と、を具備する登録過程と、
上記情報記録媒体に暗号文IBE(MPK, ID(p), KA)と分散情報SSK(p,2)とが格納され、自らの記憶部に分散情報SSK(p,1)が格納された何れかの情報処理装置PC(p)（p∈{1,...,n}）の外部読み込み部が、上記情報記録媒体から暗号文IBE(MPK, ID(p), KA)を読み込む過程と、上記情報処理装置PC(p)の内部読み込み部が、上記情報処理装置PC(p)の記憶部から分散情報SSK(p,1)を読み込む過程と、上記情報処理装置PC(p)の外部読み込み部が、上記情報記録媒体から分散情報SSK(p,2)を読み込む過程と、上記情報処理装置PC(p)の秘密鍵復元部が、少なくとも当該分散情報SSK(p,1)と分散情報SSK(p,2)とを用いて上記情報処理装置PC(p)の秘密鍵SK(p)を復元する過程と、上記情報処理装置PC(p)の共通鍵復元部が、復元された秘密鍵SK(p)を用いて暗号文IBE(MPK, ID(p), KA)を復号して共通鍵KAを抽出する過程と、上記情報処理装置PC(p)の暗号化部が、共通鍵KAを用いて平文M(p)を暗号化した暗号文SE(KA, M(p))を生成する過程と、上記情報処理装置PC(p)の外部書き込み部が、当該暗号文SE(KA, M(p))を上記情報記録媒体に格納する過程と、を具備する書き込み過程と、
上記情報記録媒体に暗号文PE(PK(q), KA)と分散情報SSK(q,2)とが格納され、自らの記憶部に分散情報SSK(q,1)が格納された何れかの情報処理装置PC(q)（ｑ∈{1,...,n}）の外部読み込み部が、上記情報記録媒体から暗号文IBE(MPK, ID(q), KA)を読み込む過程と、上記情報処理装置PC(q)の外部読み込み部が、上記情報記録媒体から暗号文SE(KA, M(p))を読み込む過程と、上記情報処理装置PC(q)の内部読み込み部が、上記情報処理装置PC(q)の記憶部から分散情報SSK(q,1)を読み込む過程と、上記情報処理装置PC(q)の外部読み込み部が、上記情報記録媒体から分散情報SSK(q,2)を読み込む過程と、上記情報処理装置PC(q)の秘密鍵復元部が、少なくとも当該分散情報SSK(q,1)と分散情報SSK(q,2)とを用いて上記情報処理装置PC(q)の秘密鍵SK(q)を復元する過程と、上記情報処理装置PC(q)の共通鍵復元部が、復元された秘密鍵SK(q)を用いて暗号文IBE(MPK, ID(q), KA)を復号して共通鍵KAを抽出する過程と、上記情報処理装置PC(q)の復号化部が、共通鍵KAを用いて暗号文SE(KA, M(p))を復号して平文M(p)を抽出する過程と、を具備する読み込み過程と、
上記情報記録媒体に暗号文IBE(MPK, ID(r), KA)と分散情報SSK(r,2) とが格納され、自らの記憶部に分散情報SSK(r,1)が格納された何れかの情報処理装置PC(r)（r∈{1,...,n}）の外部読み込み部が、上記情報記録媒体から暗号文IBE(MPK, ID(r), KA)を読み込む過程と、上記情報処理装置PC(r)の内部読み込み部が、上記情報処理装置PC(r)の記憶部から分散情報SSK(r,1)を読み込む過程と、上記情報処理装置PC(r)の外部読み込み部が、上記情報記録媒体から分散情報SSK(r,2)を読み込む過程と、上記情報処理装置PC(r)の秘密鍵復元部が、少なくとも当該分散情報SSK(r,1)と分散情報SSK(r,2)とを用いて上記情報処理装置PC(r)の秘密鍵SK(r)を復元する過程と、上記情報処理装置PC(r)の共通鍵復元部が、復元された秘密鍵SK(r)を用いて暗号文IBE(MPK, ID(r), KA)を復号して共通鍵KAを抽出する過程と、上記情報処理装置PC(r)の共通鍵生成部が、新たな共通鍵KAnewを生成する過程と、上記情報処理装置PC(r)の外部読み込み部が、上記情報記録媒体から情報処理装置PC(p)（p∈{1,...,n}）に対応する暗号文SE(KA, M(p))を読み込む過程と、上記情報処理装置PC(r)の復号化部が、共通鍵KAを用いて暗号文SE(KA, M(p))を復号して平文M(p)を抽出する過程と、上記情報処理装置PC(r)の暗号化部が、新たな共通鍵KAnewを用いて各平文M(p)を暗号化した暗号文SE(KAnew, M(p))を生成する過程と、上記情報処理装置PC(r)の外部書き込み部が、当該暗号文SE(KAnew, M(p))を上記情報記録媒体に格納する過程と、を具備する再暗号化過程と、
上記情報処理装置PC(r)の鍵秘匿化部が、マスター公開鍵MPKと識別情報ID(p)とを用い、ID-BASE暗号方式によって新たな共通鍵KAnewを暗号化した暗号文IBE(MPK, ID(p), KAnew)を生成する過程と、上記情報処理装置PC(r)の外部書き込み部が、暗号文IBE(MPK, ID(p), KAnew)を上記情報記録媒体に格納する過程と、具備する再登録過程と、
上記情報処理装置PC(r)の削除部が、上記情報記録媒体に格納された暗号文SE(KA, M(w))を上記情報記録媒体から削除する削除過程と、
を有することを特徴とする情報記録媒体のセキュリティ方法。
【請求項４】
請求項３に記載の情報記録媒体のセキュリティ方法であって、
上記再登録過程は、上記情報処理装置PC(r)の鍵秘匿化部が、マスター公開鍵MPKと登録削除対象の情報処理装置PC(w)の識別情報ID（w）以外の識別情報ID(p)とを用い、ID-BASE暗号方式によって新たな共通鍵KAnewを暗号化した暗号文IBE(MPK, ID(p), KAnew)を生成する過程と、上記情報処理装置PC(r)の外部書き込み部が、暗号文IBE(MPK, ID(p), KAnew)を上記情報記録媒体に格納する過程と、を具備する過程であり、
当該情報記録媒体のセキュリティ方法は、
上記情報処理装置PC(w)の登録削除を行う場合には、上記再暗号化過程と上記再登録過程と上記削除過程とが順に実行される
ことを特徴とする情報記録媒体のセキュリティ方法。
【請求項５】
請求項１から４の何れかに記載された情報記録媒体のセキュリティ方法の各過程をコンピュータに実行させるためのプログラム。
【請求項６】
請求項５に記載のプログラムを格納したコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報を秘匿化する技術に関し、特に、複数の情報処理装置で共用される情報記録媒体に情報を秘匿化して格納する技術に関する。
【背景技術】
【０００２】
USB(universal serial bus)メモリなどの複数の情報処理装置で共用される可搬型の情報記録媒体に格納されたデータの漏えいを防止することは重要である。その対策として、従来は、共通鍵暗号方式によってデータを暗号化して情報記録媒体に格納する方法が使用されてきた（例えば、非特許文献１参照）。この場合、情報記録媒体に格納するデータMを共通鍵暗号方式の共通鍵Kで暗号化し、その暗号文Cのみを情報記録媒体に格納する方法が一般的であった。また、共通鍵Kは、情報処理装置に格納されるか、パスワードのような形で使用者に記憶されるのが一般的であった。
【０００３】
また、特許文献１には、暗号化されたファイルを暗号解読するための第１の暗号解読鍵を着脱可能メモリに格納しておく方式が開示されている。
【０００４】
しかし、共通鍵Kを情報処理装置に格納しておく方式の場合、情報記録媒体を共用する複数の情報処理装置で共通鍵Kを共有しておく必要がある。しかし、秘密情報である共通鍵Kを事前に複数の情報処理装置で共有しておく処理は煩雑である。また、パスワードを用いて共通鍵Kを作成する方法の場合、使用者がパスワードを記憶し、情報処理装置毎にパスワードを入力しなければならない。このような処理も煩雑である。さらに、一般に、使用者の利便性を考慮したパスワードの長さは暗号学的には十分な長さではない。よって、このような共通鍵Kを用いて生成された暗号文Cは解読され易く、安全上の問題がある。
【０００５】
また、特許文献１のように、暗号化されたファイルを暗号解読するための第１の暗号解読鍵を着脱可能メモリのような可搬型の情報記録媒体に格納しておく方式の場合、当該情報記録媒体を取得したり、当該情報記録媒体からデータを読み取ったりした者は、誰でも暗号化されたファイルの暗号解読が出来てしまう。
【０００６】
これらの問題は、複数の情報処理装置が可搬型の情報記録媒体を共用する場合だけではなく、複数の情報処理装置が非可搬型の情報記録媒体を共用する場合にも当てはまる。
【０００７】
これに対し、本出願人はこのような問題を解決する方式を考案し、その特許出願を行った〔特願2007-113708（未公開）〕。
【０００８】
特願2007-113708（未公開）の方式では、まず、登録過程において、情報記録媒体を共用する各情報処理装置PC(i)（i∈{1,...,n}、nは２以上の整数）にそれぞれ対応する公開鍵暗号方式の秘密鍵SK(i)を、当該秘密鍵SK(i)に対応する情報処理装置PC(i)の記憶部にそれぞれ格納し、各情報処理装置PC(i)にそれぞれ対応する公開鍵暗号方式の公開鍵PK(i)を用いて共通鍵暗号方式の共通鍵KAを暗号化した各暗号文PE(PK(i), KA)を情報記録媒体に格納する。
【０００９】
平文の暗号化を行う情報処理装置PC(p)（p∈{1,...,n}）は、情報記録媒体から暗号文PE(PK(p), KA)を読み込み、記憶部に格納された秘密鍵SK(p)を用いて暗号文PE(PK(p), KA)を復号して共通鍵KAを抽出し、共通鍵KAを用いて平文M(p)を暗号化した暗号文SE(KA, M(p))を生成して、当該暗号文SE(KA, M(p))を情報記録媒体に格納する。
【００１０】
そして、暗号文SE(KA, M(p))を復号する情報処理装置PC(q)（q∈{1,...,n}）は、情報記録媒体から暗号文PE(PK(q), KA)と暗号文SE(KA, M(p))を読み込み、記憶部に格納された秘密鍵SK(q)を用いて暗号文PE(PK(q), KA)を復号して共通鍵KAを抽出し、共通鍵KAを用いて暗号文SE(KA, M(p))を復号して平文M(p)を抽出する。
【００１１】
この処理において、情報処理装置PC(p)と情報処理装置PC(q)との間で事前に共通鍵KAを共有するための煩雑な処理は不要である。また、この処理の場合、共通鍵KAのデータ長を暗号学的に安全な長さとしても利用者の利便性は低下しない。さらに、この処理では、平文の暗号文を復号するための共通鍵KAを情報記録媒体に格納するのではなく、共通鍵KAを公開鍵によって暗号化した暗号文を情報記録媒体に格納しておく。そのため、弟三者が当該情報記録媒体を取得したり、当該情報記録媒体からデータを読み取ったりした場合でも、当該第三者は、平文の暗号文を復号することができない。
【非特許文献１】「BUFFALO」ホームページ、［平成19年7月30日検索］、インターネット〈URL http://buffalo.jp/products/slw/keitai.html〉
【特許文献１】特開２００６−６７３１３号公報
【発明の開示】
【発明が解決しようとする課題】
【００１２】
しかし、特願2007-113708（未公開）の方式の場合、情報処理装置PCの紛失・盗難・不正アクセス等によって情報処理装置PC(i)の記憶部に格納された情報が第三者に盗聴された場合には安全性を確保できない。情報処理装置PC(i)の記憶部には、秘密鍵SK(i)が格納されており、秘密鍵SK(i)と暗号文PE(PK(i), KA)とを入手した第三者は、共通鍵KAを不正に復元できてしまうからである。
【００１３】
本発明はこのような点に鑑みてなされたものであり、煩雑な処理を必要とせず、情報処理装置の記憶部に格納された情報が第三者に盗聴された場合であっても、安全に複数の情報処理装置が情報記録媒体を共用できる技術を提供することを目的とする。
【課題を解決するための手段】
【００１４】
第１の本発明では、まず、情報処理装置PC(i)に対応する公開鍵暗号方式の秘密鍵SK(i)の分散情報SSK(i,1)を情報処理装置PC(i)の記憶部に格納する過程と、当該秘密鍵SK(i)の分散情報SSK(i,2)を情報記録媒体に格納する過程と、情報処理装置PC(i)に対応する公開鍵暗号方式の公開鍵PK(i)を用いて共通鍵暗号方式の共通鍵KAを暗号化した暗号文PE(PK(i), KA)を情報記録媒体に格納する過程と、を具備する登録過程を実行する。そして、情報記録媒体に暗号文PE(PK(p), KA)と分散情報SSK(p,2)とが格納され、自らの記憶部に分散情報SSK(p,1)が格納された何れかの情報処理装置PC(p)（p∈{1,...,n}）の外部読み込み部が、情報記録媒体から暗号文PE(PK(p), KA)を読み込む過程と、情報処理装置PC(p)の内部読み込み部が、情報処理装置PC(p)の記憶部から分散情報SSK(p,1)を読み込む過程と、情報処理装置PC(p)の外部読み込み部が、情報記録媒体から分散情報SSK(p,2)を読み込む過程と、情報処理装置PC(p)の秘密鍵復元部が、少なくとも当該分散情報SSK(p,1)と分散情報SSK(p,2)とを用いて情報処理装置PC(p)の秘密鍵SK(p)を復元する過程と、情報処理装置PC(p)の共通鍵復元部が、復元された秘密鍵SK(p)を用いて暗号文PE(PK(p), KA)を復号して共通鍵KAを抽出する過程と、情報処理装置PC(p)の暗号化部が、共通鍵KAを用いて平文M(p)を暗号化した暗号文SE(KA, M(p))を生成する過程と、情報処理装置PC(p)の外部書き込み部が、当該暗号文SE(KA, M(p))を情報記録媒体に格納する過程と、を具備する書き込み過程を実行する。そして、情報記録媒体に暗号文PE(PK(q), KA)と分散情報SSK(q,2)とが格納され、自らの記憶部に分散情報SSK(q,1)が格納された何れかの情報処理装置PC(q)（q∈{1,...,n}）の外部読み込み部が、情報記録媒体から暗号文PE(PK(q), KA)を読み込む過程と、情報処理装置PC(q)の外部読み込み部が、情報記録媒体から暗号文SE(KA, M(p))を読み込む過程と、情報処理装置PC(q)の内部読み込み部が、情報処理装置PC(q)の記憶部から分散情報SSK(q,1)を読み込む過程と、情報処理装置PC(q)の外部読み込み部が、情報記録媒体から分散情報SSK(q,2)を読み込む過程と、情報処理装置PC(q)の秘密鍵復元部が、少なくとも当該分散情報SSK(q,1)と分散情報SSK(q,2)とを用いて情報処理装置PC(q)の秘密鍵SK(q)を復元する過程と、情報処理装置PC(q)の共通鍵復元部が、復元された秘密鍵SK(q)を用いて暗号文PE(PK(q), KA)を復号して共通鍵KAを抽出する過程と、情報処理装置PC(q)の復号化部が、共通鍵KAを用いて暗号文SE(KA, M(p))を復号して平文M(p)を抽出する過程と、を具備する読み込み過程と、を実行する。
【００１５】
ここで、情報処理装置PC(i)の記憶部には、秘密鍵SK(i)の分散情報SSK(i,1)が格納される。また、情報記録媒体には秘密鍵SK(i)の分散情報SSK(i,2)が格納される。この場合、情報処理装置PC(i)の記憶部に格納された情報が第三者に盗聴された場合であっても、直ちに秘密鍵SK(i)が第三者に知られることはない。これにより安全性を向上させることができる。
【００１６】
また、第１の本発明では、登録過程において、各公開鍵PK(i)を用いて共通鍵暗号方式の共通鍵KAをそれぞれ暗号化した各暗号文PE(PK(i), KA)を情報記録媒体に格納しておく。これにより、情報処理装置PC(p)（p=1,...,n）は、少なくとも分散情報SSK(p,1)と分散情報SSK(p,2)とを用いて復元した自らの秘密鍵SK(p)を用い、情報記録媒体に格納された暗号文PE(PK(p), KA)から共通鍵KAを復号できる。同様に、情報処理装置PC(q)（q=1,...,n）は、少なくとも分散情報SSK(q,1)と分散情報SSK(q,2)とを用いて復元した自らの秘密鍵SK(q)を用い、情報記録媒体に格納された暗号文PE(PK(q), KA)から共通鍵KAを復号できる。これにより、情報処理装置PC(p)と情報処理装置PC(q)との間で共通鍵KAを用いた共通鍵暗号方式による暗号化及び復号化が可能となる。
【００１７】
この処理において、情報処理装置PC(p)と情報処理装置PC(q)との間で事前に共通鍵KAを共有するための煩雑な処理は不要である。また、この処理の場合、共通鍵KAのデータ長を暗号学的に安全な長さとしても利用者の利便性は低下しない。さらに、本発明では、平文の暗号文を復号するための共通鍵KAを情報記録媒体に格納するのではなく、共通鍵KAを公開鍵によって暗号化した暗号文を情報記録媒体に格納しておく。そのため、弟三者が当該情報記録媒体を取得したり、当該情報記録媒体からデータを読み取ったりした場合でも、当該第三者は、平文の暗号文を復号することができない。
【００１８】
また、第１の本発明において好ましくは、登録過程において、まず、何れかの情報処理装置PC(r)（r=1,...,n）の共通鍵生成部が共通鍵KAを生成する過程と、情報処理装置PC(r)の鍵ペア生成部が、公開鍵暗号方式の秘密鍵SK(r)と公開鍵PK(r)とを生成する過程と、情報処理装置PC(r)の内部書き込み部が、秘密鍵SK(r)の分散情報SSK(r,1)を情報処理装置PC(r)の記憶部に格納する過程と、情報処理装置PC(r)の外部書き込み部が、当該秘密鍵SK(r)の分散情報SSK(r,2)を情報記録媒体に格納する過程と、情報処理装置PC(r)の鍵秘匿化部が、公開鍵PK(r)を用いて共通鍵KAを暗号化した暗号文PE(PK(r), KA)を生成する過程と、情報処理装置PC(r)の外部書き込み部が、暗号文PE(PK(r), KA)を情報記録媒体に格納する過程とを実行する。
【００１９】
次に、情報処理装置PC(r)以外の情報処理装置PC(s)（s=1,...,n、s≠r)の鍵ペア生成部が、公開鍵暗号方式の秘密鍵SK(s)と公開鍵PK(s)とを生成する過程と、秘密鍵SK(s)の分散情報SSK(s,1)を情報処理装置PC(s)の記憶部に格納する過程と、情報処理装置PC(s)の外部書き込み部が、当該秘密鍵SK(s)の分散情報SSK(s,2)を情報記録媒体に格納する過程と、情報処理装置PC(s)の外部書き込み部が、公開鍵PK(s)を情報記録媒体に格納する過程とを事項する。
【００２０】
そして、情報記録媒体に暗号文PE(PK(t), KA)と分散情報SSK(t,2) とが格納され、自らの記憶部に分散情報SSK(t,1)が格納された何れかの情報処理装置PC(t)（t∈{1,...,n}）の外部読み込み部が、情報記録媒体から暗号文PE(PK(t), KA)を読み込む過程と、情報処理装置PC(t)の内部読み込み部が、情報処理装置PC(t)の記憶部から分散情報SSK(t,1)を読み込む過程と、情報処理装置PC(t)の外部読み込み部が、情報記録媒体から分散情報SSK(t,2)を読み込む過程と、情報処理装置PC(t)の秘密鍵復元部が、少なくとも当該分散情報SSK(t,1)と分散情報SSK(t,2)とを用いて情報処理装置PC(t)の秘密鍵SK(t)を復元する過程と、情報処理装置PC(t)の共通鍵復元部が、復元された秘密鍵SK(t)を用いて暗号文PE(PK(t), KA)を復号して共通鍵KAを抽出する過程と、情報処理装置PC(t)の外部読み込み部が、情報記録媒体から公開鍵PK(s)を読み込む過程と、情報処理装置PC(t)の鍵秘匿化部が、公開鍵PK(s)を用いて共通鍵KAを暗号化した暗号文PE(PK(s), KA)を生成する過程と、情報処理装置PC(t)の外部書き込み部が、暗号文PE(PK(s), KA)を情報記録媒体に格納する過程とを実行する。
【００２１】
当該好ましい登録過程の場合、情報処理装置PC(s)がその公開鍵PK(s)を情報記録媒体に格納おくことにより、既に情報記録媒体に暗号文PE(PK(t), KA)が格納され、自らの記憶部に分散情報SSK(t,1)が格納された情報処理装置PC(t)が、共通鍵KAを暗号化した暗号文PE(PK(s), KA)を生成し、情報記録媒体に格納することができる。すなわち、当該好ましい登録過程では、特別な登録用の装置を用いることなく、情報処理装置間で情報処理装置の登録処理を実行できる。これにより、高い利便性を実現できる。
【００２２】
また、第１の本発明において好ましくは、情報記録媒体に暗号文PE(PK(r), KA)と分散情報SSK(r,2) とが格納され、自らの記憶部に分散情報SSK(r,1)が格納された何れかの情報処理装置PC(r)（r∈{1,...,n}）の外部読み込み部が、情報記録媒体から暗号文PE(PK(r), KA)を読み込む過程と、情報処理装置PC(r)の内部読み込み部が、情報処理装置PC(r)の記憶部から分散情報SSK(r,1)を読み込む過程と、情報処理装置PC(r)の外部読み込み部が、情報記録媒体から分散情報SSK(r,2)を読み込む過程と、情報処理装置PC(r)の秘密鍵復元部が、少なくとも当該分散情報SSK(r,1)と分散情報SSK(r,2)とを用いて情報処理装置PC(r)の秘密鍵SK(r)を復元する過程と、情報処理装置PC(r)の共通鍵復元部が、復元された秘密鍵SK(r)を用いて暗号文PE(PK(r), KA)を復号して共通鍵KAを抽出する過程と、情報処理装置PC(r)の共通鍵生成部が、新たな共通鍵KAnewを生成する過程と、情報処理装置PC(r)の外部読み込み部が、情報記録媒体から何れかの情報処理装置PC(s)（s=1,...,n）に対応する暗号文SE(KA, M(s))を読み込む過程と、情報処理装置PC(r)の復号化部が、共通鍵KAを用いて暗号文SE(KA, M(s))を復号して平文M(s)を抽出する過程と、情報処理装置PC(r)の暗号化部が、新たな共通鍵KAnewを用いて平文M(s)を暗号化した暗号文SE(KAnew, M(s))を生成する過程と、情報処理装置PC(r)の外部書き込み部が、当該暗号文SE(KAnew, M(s))を情報記録媒体に格納する過程と、を具備する再暗号化過程と、情報処理装置PC(r)の外部読み込み部が、情報記録媒体から情報処理装置PC(s)に対応する公開鍵PK(s)(s=1,...,n)を読み込む過程と、情報処理装置PC(r)の鍵秘匿化部が、公開鍵PK(s)を用いて新たな共通鍵KAnewを暗号化した暗号文PE(PK(s), KAnew)を生成する過程と、情報処理装置PC(r)の外部書き込み部が、暗号文PE(PK(s), KAnew)を情報記録媒体に格納する過程と、具備する再登録過程とをさらに実行する。
【００２３】
これにより、共通鍵を更新することができる。この共通鍵の更新は、例えば登録削除処理に利用することができる。その場合、上記再登録過程を、登録削除対象の情報処理装置PC(w)（w=1,...,n）以外の情報処理装置PC(s)について実行し、上記情報記録媒体に格納された暗号文SE(KA, M(p))（p=1,...,n）を上記情報記録媒体から削除する。この場合、たとえ登録が削除された情報処理装置PC(w)に古い共通鍵KAが残存していたとしても、上記情報処理装置PC(w)は、上記情報記録媒体に格納された情報から平文M(p)を復号することはできない。その結果、安全性が向上する。
【００２４】
また、第２の本発明では、まず、各情報処理装置PC(i)に対して共通のマスター秘密鍵をMSKとし、マスター秘密鍵MSKを用いて生成された各情報処理装置PC(i)に対して共通のマスター公開鍵をMPKとし、各情報処理装置PC(i)をそれぞれ識別する識別情報ID(i)とマスター秘密鍵MSKとを用いて生成されたID-BASE暗号方式の秘密鍵をSK(i)とした場合における、秘密鍵SK(i)の分散情報SSK(i,1)を情報処理装置PC(i)の記憶部にそれぞれ格納する過程と、当該秘密鍵SK(i)の分散情報SSK(i,2)を情報記録媒体に格納する過程と、マスター公開鍵MPKと識別情報ID(i)とを用い、ID-BASE暗号方式によって共通鍵暗号方式の共通鍵KAを暗号化した各暗号文IBE(MPK, ID(i), KA)を、情報記録媒体に格納する過程と、を具備する登録過程を実行する。そして、情報記録媒体に暗号文IBE(MPK, ID(p), KA)と分散情報SSK(p,2)とが格納され、自らの記憶部に分散情報SSK(p,1)が格納された何れかの情報処理装置PC(p)（p∈{1,...,n}）の外部読み込み部が、情報記録媒体から暗号文IBE(MPK, ID(p), KA)を読み込む過程と、情報処理装置PC(p)の内部読み込み部が、情報処理装置PC(p)の記憶部から分散情報SSK(p,1)を読み込む過程と、情報処理装置PC(p)の外部読み込み部が、情報記録媒体から分散情報SSK(p,2)を読み込む過程と、情報処理装置PC(p)の秘密鍵復元部が、少なくとも当該分散情報SSK(p,1)と分散情報SSK(p,2)とを用いて情報処理装置PC(p)の秘密鍵SK(p)を復元する過程と、情報処理装置PC(p)の共通鍵復元部が、復元された秘密鍵SK(p)を用いて暗号文IBE(MPK, ID(p), KA)を復号して共通鍵KAを抽出する過程と、情報処理装置PC(p)の暗号化部が、共通鍵KAを用いて平文M(p)を暗号化した暗号文SE(KA, M(p))を生成する過程と、情報処理装置PC(p)の外部書き込み部が、当該暗号文SE(KA, M(p))を情報記録媒体に格納する過程と、を具備する書き込み過程とを実行する。そして、情報記録媒体に暗号文PE(PK(q), KA)と分散情報SSK(q,2)とが格納され、自らの記憶部に分散情報SSK(q,1)が格納された何れかの情報処理装置PC(q)（ｑ∈{1,...,n}）の外部読み込み部が、情報記録媒体から暗号文IBE(MPK, ID(q), KA)を読み込む過程と、情報処理装置PC(q)の外部読み込み部が、情報記録媒体から暗号文SE(KA, M(p))を読み込む過程と、情報処理装置PC(q)の内部読み込み部が、情報処理装置PC(q)の記憶部から分散情報SSK(q,1)を読み込む過程と、情報処理装置PC(q)の外部読み込み部が、情報記録媒体から分散情報SSK(q,2)を読み込む過程と、情報処理装置PC(q)の秘密鍵復元部が、少なくとも当該分散情報SSK(q,1)と分散情報SSK(q,2)とを用いて情報処理装置PC(q)の秘密鍵SK(q)を復元する過程と、情報処理装置PC(q)の共通鍵復元部が、復元された秘密鍵SK(q)を用いて暗号文IBE(MPK, ID(q), KA)を復号して共通鍵KAを抽出する過程と、情報処理装置PC(q)の復号化部が、共通鍵KAを用いて暗号文SE(KA, M(p))を復号して平文M(p)を抽出する過程と、を具備する読み込み過程とを実行する。
【００２５】
ここで、情報処理装置PC(i)の記憶部には、秘密鍵SK(i)の分散情報SSK(i,1)を格納しておく。また、情報記録媒体には秘密鍵SK(i)の分散情報SSK(i,2)を格納しておく。この場合、情報処理装置PC(i)の記憶部に格納された情報が第三者に盗聴された場合であっても、直ちに秘密鍵SK(i)が第三者に知られることはない。これにより安全性を向上させることができる。
【００２６】
また、第２の本発明の登録過程では、登録対象の情報処理装置PC(i)を識別する識別情報ID(i)と、すべての情報処理装置に対して共通のマスター公開鍵MPKとを用い、ID-BASE暗号方式によって暗号文IBE(MPK, ID(i), KA)を生成し、情報記録媒体に格納する。この処理では、特願2007-113708（未公開）の方式のような、登録対象の情報処理装置が自らの公開鍵を情報記録媒体に格納する登録申請処理が不要となる。例えば、最初に登録を行う情報処理装置PC(r)（r∈{1,...,n}）は、共通鍵KAを生成し、マスター公開鍵MPKと何れかの情報処理装置PC(u)（u∈{1,...,n}）を識別する識別情報ID(u)とを用い、ID-BASE暗号方式によって共通鍵暗号方式の共通鍵KAを暗号化した各暗号文IBE(MPK, ID(u), KA)を生成し、暗号文IBE(MPK, ID(u), KA)を情報記録媒体に格納するだけで登録処理を行うことができる。また、情報記録媒体に暗号文IBE(MPK, ID(t), KA)が格納され、自らの記憶部に秘密鍵SK(t)が格納された何れかの情報処理装置PC(t)（t∈{1,...,n}）は、情報記録媒体から暗号文IBE(MPK, ID(t), KA)を読み込み、秘密鍵SK(t)を用いて暗号文IBE(MPK, ID(t), KA)を復号して共通鍵KAを抽出し、マスター公開鍵MPKと何れかの情報処理装置PC(g)（g∈{1,...,n}）を識別する識別情報ID(g)とを用い、ID-BASE暗号方式によって共通鍵KAを暗号化した各暗号文IBE(MPK, ID(g), KA)を生成し、暗号文IBE(MPK, ID(g), KA)を情報記録媒体に格納するだけで登録処理を行うことができる。
【００２７】
また、第２の本発明の処理において、情報処理装置PC(p)と情報処理装置PC(q)との間で事前に共通鍵KAを共有するための煩雑な処理は不要である。また、この処理の場合、共通鍵KAのデータ長を暗号学的に安全な長さとしても利用者の利便性は低下しない。
【００２８】
また、第２の本発明の登録過程は、例えば、情報記録媒体に暗号文IBE(MPK, ID(t), KA)と分散情報SSK(t,2) とが格納され、自らの記憶部に分散情報SSK(t,1)が格納された何れかの情報処理装置PC(t)（t∈{1,...,n}）の外部読み込み部が、情報記録媒体から暗号文IBE(MPK, ID(t), KA)を読み込む過程と、情報処理装置PC(t)の内部読み込み部が、情報処理装置PC(t)の記憶部から分散情報SSK(t,1)を読み込む過程と、情報処理装置PC(t)の外部読み込み部が、情報記録媒体から分散情報SSK(t,2)を読み込む過程と、情報処理装置PC(t)の秘密鍵復元部が、少なくとも当該分散情報SSK(t,1)と分散情報SSK(t,2)とを用いて情報処理装置PC(t)の秘密鍵SK(t)を復元する過程と、情報処理装置PC(t)の共通鍵復元部が、復元された秘密鍵SK(t)を用いて暗号文IBE(MPK, ID(t), KA)を復号して共通鍵KAを抽出する過程と、情報処理装置PC(t)の鍵秘匿化部が、マスター公開鍵MPKと何れかの情報処理装置PC(g)（g∈{1,...,n}）を識別する識別情報ID(g)とを用い、ID-BASE暗号方式によって共通鍵KAを暗号化した各暗号文IBE(MPK, ID(g), KA)を生成する過程と、情報処理装置PC(t)の外部書き込み部が、暗号文IBE(MPK, ID(g), KA)を情報記録媒体に格納する過程とを、さらに有する。
【００２９】
また、第２の本発明において好ましくは、情報記録媒体に暗号文IBE(MPK, ID(r), KA)と分散情報SSK(r,2) とが格納され、自らの記憶部に分散情報SSK(r,1)が格納された何れかの情報処理装置PC(r)（r∈{1,...,n}）の外部読み込み部が、情報記録媒体から暗号文IBE(MPK, ID(r), KA)を読み込む過程と、情報処理装置PC(r)の内部読み込み部が、情報処理装置PC(r)の記憶部から分散情報SSK(r,1)を読み込む過程と、情報処理装置PC(r)の外部読み込み部が、情報記録媒体から分散情報SSK(r,2)を読み込む過程と、情報処理装置PC(r)の秘密鍵復元部が、少なくとも当該分散情報SSK(r,1)と分散情報SSK(r,2)とを用いて情報処理装置PC(r)の秘密鍵SK(r)を復元する過程と、情報処理装置PC(r)の共通鍵復元部が、復元された秘密鍵SK(r)を用いて暗号文IBE(MPK, ID(r), KA)を復号して共通鍵KAを抽出する過程と、情報処理装置PC(r)の共通鍵生成部が、新たな共通鍵KAnewを生成する過程と、情報処理装置PC(r)の外部読み込み部が、情報記録媒体から情報処理装置PC(p)（p∈{1,...,n}）に対応する暗号文SE(KA, M(p))を読み込む過程と、情報処理装置PC(r)の復号化部が、共通鍵KAを用いて暗号文SE(KA, M(p))を復号して平文M(p)を抽出する過程と、情報処理装置PC(r)の暗号化部が、新たな共通鍵KAnewを用いて各平文M(p)を暗号化した暗号文SE(KAnew, M(p))を生成する過程と、情報処理装置PC(r)の外部書き込み部が、当該暗号文SE(KAnew, M(p))を情報記録媒体に格納する過程と、を具備する再暗号化過程を実行する。また、情報処理装置PC(r)の鍵秘匿化部が、マスター公開鍵MPKと識別情報ID(p)とを用い、ID-BASE暗号方式によって新たな共通鍵KAnewを暗号化した暗号文IBE(MPK, ID(p), KAnew)を生成する過程と、情報処理装置PC(r)の外部書き込み部が、暗号文IBE(MPK, ID(p), KAnew)を情報記録媒体に格納する過程と、具備する再登録過程とを実行する。
【００３０】
これにより、共通鍵を更新することができる。この共通鍵の更新は、例えば登録削除処理に利用することができる。その場合、上記再登録過程を、登録削除対象の情報処理装置PC(w)（w=1,...,n）以外の情報処理装置PC(s)について実行し、上記情報記録媒体に格納された暗号文SE(KA, M(p))（p=1,...,n）を上記情報記録媒体から削除する。この場合、たとえ登録が削除された情報処理装置PC(w)に古い共通鍵KAが残存していたとしても、上記情報処理装置PC(w)は、上記情報記録媒体に格納された情報から平文M(p)を復号することはできない。その結果、安全性が向上する。
【００３１】
また、第１，２の本発明において好ましくは、登録過程は、秘密鍵SK(i)の分散情報SSK(i,3)を情報記録媒体とは異なる第２情報記録媒体に格納する過程をさらに具備し、書き込み過程は、情報処理装置PC(p)の外部読み込み部が、第２情報記録媒体から分散情報SSK(p,3)を読み込む過程をさらに有し、情報処理装置PC(p)の秘密鍵復元部が、少なくとも当該分散情報SSK(p,1)と分散情報SSK(p,2)とを用いて情報処理装置PC(p)の秘密鍵SK(p)を復元する過程は、少なくとも分散情報SSK(p,1)と分散情報SSK(p,2)と分散情報SSK(p,3)とを用いて情報処理装置PC(p)の秘密鍵SK(p)を復元する過程であり、読み込み過程は、情報処理装置PC(q)の外部読み込み部が、第２情報記録媒体から分散情報SSK(q,3)を読み込む過程をさらに有し、情報処理装置PC(q)の秘密鍵復元部が、少なくとも当該分散情報SSK(q,1)と分散情報SSK(q,2)とを用いて情報処理装置PC(q)の秘密鍵SK(q)を復元する過程は、少なくとも当該分散情報SSK(q,1)と分散情報SSK(q,2)と分散情報SSK(q,3)とを用いて情報処理装置PC(q)の秘密鍵SK(q)を復元する過程である。
【００３２】
また、第１，２の本発明において好ましくは、再暗号化過程は、情報処理装置PC(r)の外部読み込み部が、第２情報記録媒体から分散情報SSK(r,3)を読み込む過程をさらに有し、情報処理装置PC(r)の秘密鍵復元部が、少なくとも当該分散情報SSK(r,1)と分散情報SSK(r,2)とを用いて情報処理装置PC(r)の秘密鍵SK(r)を復元する過程は、少なくとも当該分散情報SSK(r,1)と分散情報SSK(r,2)と分散情報SSK(r,3)とを用いて情報処理装置PC(r)の秘密鍵SK(r)を復元する過程である。
【００３３】
このように、分散情報を情報記録媒体とは異なる第２情報記録媒体に格納しておき、少なくとも情報処理装置の記憶部に格納された分散情報と、情報記録媒体に格納された分散情報と、第２情報記録媒体に格納された分散情報とを用いて秘密鍵を復元可能な構成としておくことにより、情報処理装置の記憶部の情報と情報記録媒体に格納された情報の両方が第三者に盗聴され、それらの対応関係が第三者に知られた場合であっても、第三者によって直ちに秘密鍵が知られることはない。これにより、よりいっそう安全性が向上する。
【発明の効果】
【００３４】
以上のように、本発明では、煩雑な処理を必要とせず、情報処理装置の記憶部に格納された情報が第三者に盗聴された場合であっても、安全に複数の情報処理装置が情報記録媒体を共用できる。
【発明を実施するための最良の形態】
【００３５】
以下、本発明を実施するための最良の形態を図面を参照して説明する。
【００３６】
〔第１の実施形態〕
まず、本発明の第１の実施形態について説明する。
【００３７】
＜構成＞
図１は、本形態の情報記録媒体共用システム１の全体構成を例示した概念図である。
図１に例示するように、情報記録媒体共用システム１は、ｎ（ｎは２以上の整数）個のパーソナルコンピュータ（以下「ＰＣ」と表記する）１０−１〜ｎ（「情報処理装置PC(i)（i=1,...,n）」に相当）と、これらのＰＣ１０−１〜ｎ間で共用されるＵＳＢメモリ２０（「情報記録媒体」に相当）とを具備する。ＰＣ１０−１〜ｎは、ＵＳＢメモリ２０へ暗号文を格納し、また、ＵＳＢメモリ２０に格納された暗号文から平文を復号することにより相互に情報を共有する。なお、本形態では、情報処理装置の一例としてパーソナルコンピュータを例示し、情報記録媒体の一例としてＵＳＢメモリを例示するが、本発明はこれに限定されるものではない。
【００３８】
図２（ａ）は、本形態のＰＣ１０−ｉ（i=1,...,n）の機能構成を例示したブロック図であり、図２（ｂ）は、本形態のＵＳＢメモリ２０の機能構成を例示したブロック図である。
【００３９】
図２（ａ）に示すように、ＰＣ１０−ｉは、外部書き込み部１１ａと、外部読み込み部１１ｂと、内部書き込み部１２ａと、内部読み込み部１２ｂと、記憶部１３と、共通鍵生成部１４ａと、鍵ペア生成部１４ｂ、鍵秘匿化部１４ｃと、共通鍵復元部１４ｄと、暗号化部１４ｅと、復号化部１４ｆと、削除部１４ｇと、アプリケーション実行部１４ｈと、制御部１４ｉと、一時メモリ１４ｊと、秘密鍵分散部１４ｋと、秘密鍵復元部１４ｍと、入力部１５と、出力部１６とを有している。また、図２（ｂ）に示すように、ＵＳＢメモリ２０は、インタフェース部２１と、記憶部２２と、制御部２３とを有しており、記憶部２２は領域２２ａ〜２２ｃを有している。
【００４０】
本形態のＰＣ１０−ｉはＣＰＵ（Central Processing Unit）、ＲＡＭ（Random Access Memory）、ＲＯＭ（Read Only Memory）等からなるノイマン型のコンピュータであり、所定のプログラムが読み込まれることにより、図２（ａ）に示す機能構成が実現される。
【００４１】
具体的には、この例のＰＣ１０−ｉには、ＯＳ（Operating System）やアプリケーションソフトウェアがインストールされている。そして、ＰＣ１０−ｉのＵＳＢポートにＵＳＢメモリ２０が装着・マウントされ、ＵＳＢメモリ２０がＰＣ１０−ｉにマウントされると、ＵＳＢメモリ２０の記憶部２２の領域２２ａからセキュリティプログラムがＰＣ１０−ｉに読み込まれる。そして、ＰＣ１０−ｉのＣＰＵがＯＳ上でセキュリティプログラムやアプリケーションソフトウェアを実行することにより、図２（ａ）の機能構成が実現される。なお、ＰＣ１０−ｉがＵＳＢメモリ２０からセキュリティプログラムを読み込むのではなく、各ＰＣ１０−ｉが他の記録媒体からセキュリティプログラムを読み込む構成であってもよいし、インターネット等を通じてセキュリティプログラムをダウンロードして読み込む構成であってもよい。このような場合には、ＵＳＢメモリ２０にセキュリティプログラムを格納しておかなくてもよい。
【００４２】
＜処理＞
次に本形態の処理を説明する。
本形態の処理は、(1)ＵＳＢメモリ２０を共用するｎ個のＰＣ１０−ｉをＵＳＢメモリ２０に登録する過程（登録過程）、(2)ＰＣ１０−ｉがＵＳＢメモリ２０に暗号文を書き込む過程（書き込み過程）、(3)ＰＣ１０−ｉがＵＳＢメモリ２０から暗号文を読み込んで復号する過程（読み込み過程）、(4) ＵＳＢメモリ２０から登録を削除する過程（削除過程）に大別できる。以下、各過程を説明する。
【００４３】
［登録過程］
まず、登録過程を説明する。なお、前提としてＰＣ１０−ｉには、ＯＳやセキュリティプログラムやアプリケーションソフトウェアがインストールされているものとする。また、以下では記載を省略するが、各処理は制御部１４ｉ，２３の制御のもと実行され、ＰＣ１０−ｉ内での各演算で得られる各データは逐一一時メモリ１４ｊに書き込まれ、必要に応じて他の演算のために読み出される。
【００４４】
図３〜５は、本形態の登録過程に関連する各機能ブロックとデータの流れとを示した図であり、図１１及び図１２は、本形態の登録過程を説明するためのシーケンス図である。なお、以下では、一例としてＰＣ１０−１が最初に登録を行い、次にＰＣ１０−２が登録申請を行い、ＰＣ１０−１がそれを承認することによってＰＣ１０−２が登録される処理を例示する。
【００４５】
まず、前処理としてＰＣ１０−１にインストールされたアプリケーションソフトウェアが、ホスト名とユーザ名〔ワークグループ名を含む（以下同様）〕とを取得し、それらを示すID(1)を生成してＰＣ１０−１の記憶部１３（図３（ａ））に格納する。なお、既にID(1)が既に記憶部１３に格納されていた場合には登録過程を実行しない。
【００４６】
その後、ＰＣ１０−１にＵＳＢメモリ２０が装着・マウントされると、ＰＣ１０−１の共通鍵生成部１４ａ（図３（ａ））が共通鍵KAを生成（例えばランダムに生成）して出力する（ステップＳ１）。また、ＰＣ１０−１の鍵ペア生成部１４ｂが、公開鍵暗号方式の秘密鍵SK(1)と公開鍵PK(1)とを生成して出力する（ステップＳ２）。なお、公開鍵暗号方式としては、例えば、PSEC-KEMやRSA等を例示できる。
【００４７】
生成された秘密鍵SK(1)は、ＰＣ１０−１の秘密鍵分散部１４ｋに入力され、秘密鍵分散部１４ｋは、秘密鍵SK(1)から分散情報SSK(1,1)と分散情報SSK(1,2)を生成して出力する（ステップＳ３）。分散情報SSK(1,1), SSK(1,2)は、それらから秘密鍵SK(1)を復元可能な値である。以下、このような分散情報を例示する。
【００４８】
《分散情報の例１》
分散情報の例１では、秘密鍵SK(1)=SSK(1,1)（+）SSK(1,2)を満たすSSK(1,1)，SSK(1,2)を分散情報SSK(1,1)，SSK(1,2)とする。なお、α（+）βは、αとβとの排他的論理和演算を意味する。また、このような分散情報SSK(1,1)，SSK(1,2)の生成手順としては、例えば、ランダムにSSK(1,1)の値を生成し、SSK(1,2)= SK(1)（+）SSK(1,1)としてSSK(1,2)を求め、SSK(1,1)，SSK(1,2)を分散情報SSK(1,1)，SSK(1,2)とするか、ランダムにSSK(1,2)の値を生成し、SSK(1,1)= SK(1)（+）SSK(1,2)としてSSK(1,1)を求め、SSK(1,1)，SSK(1,2)を分散情報SSK(1,1)，SSK(1,2)とする手順を例示できる。
【００４９】
このような分散情報SSK(1,1)，SSK(1,2)からの秘密鍵SK(1)の復元は、SK(1)= SSK(1,1)（+）SSK(1,2)によって可能である。
【００５０】
《分散情報の例２》
分散情報の例２では、SSK(1,1)を共通鍵とし、共通鍵暗号方式(CamelliaやAES等)によって秘密鍵SK(1)を暗号化した暗号文をSSK(1,2)とする（方式１）か、SSK(1,2)を共通鍵とし、共通鍵暗号方式によって秘密鍵SK(1)を暗号化した暗号文をSSK(1,1)とする（方式２）。
【００５１】
なお、方式１の場合、ランダムにSSK(1,1)の値を生成し、SSK(1,1)を共通鍵としてSK(1)を暗号化して暗号文SSK(1,2)を生成し、分散情報SSK(1,1)，SSK(1,2)を生成することができる。また、このような分散情報SSK(1,1)，SSK(1,2)からの秘密鍵SK(1)の復元は、SSK(1,1)を共通鍵としてSSK(1,2)を復号することによって可能である。
【００５２】
一方、方式２の場合、ランダムにSSK(1,2)の値を生成し、SSK(1,2)を共通鍵としてSK(1)を暗号化して暗号文SSK(1,1)を生成し、分散情報SSK(1,1)，SSK(1,2)を生成することができる。また、このような分散情報SSK(1,1)，SSK(1,2)からの秘密鍵SK(1)の復元は、SSK(1,2)を共通鍵としてSSK(1,1)を復号することによって可能である。
【００５３】
《分散情報の例３》
分散情報の例３では、公知の秘密分散方法（岡本龍明、山本博資、「現代暗号」、pp.209-219、産業図書、ISBN 4-7828-5353-X（参考文献１）等参照）を用いて、秘密鍵SK(1)を秘密分散した値を分散情報SSK(1,1)，SSK(1,2)とする。単純な例としては、秘密鍵SK(1)の上位数ビットを係数aとし、秘密鍵SK(1)の残りの下位ビットを係数bとし、多項式y=a・x+b上の１つの点(x,y)=(x1,y1)を分散情報SSK(1,1)とし、他の点(x,y)=(x2,y2)を分散情報SSK(1,2)とする方法を例示できる。このような分散情報SSK(1,1)，SSK(1,2)からの秘密鍵SK(1)の復元は、分散情報SSK(1,1)である点(x1,y1)と分散情報SSK(1,2)である点(x2,y2)とを通る多項式y=a・x+bの係数a,bを求め、それらa,bをビット結合して行うことができる（分散情報の例の説明終わり）。
【００５４】
ＰＣ１０−１の秘密鍵分散部１４ｋから出力された分散情報SSK(1,1)は、内部書き込み部１２ａに送られ、そこからＰＣ１０−１の記憶部１３に格納される（ステップＳ４）。秘密鍵分散部１４ｋから出力された分散情報SSK(1,2)は、ＰＣ１０−１の外部書き込み部１１ａによってＵＳＢメモリ２０のインタフェース部２１（図３（ｂ））に送られ、そこから記憶部２２の領域２２ｂに格納される（ステップＳ５）。
【００５５】
また、共通鍵生成部１４ａから出力された共通鍵KAと、鍵ペア生成部１４ｂから出力された公開鍵PK(1)とはＰＣ１０−１の鍵秘匿化部１４ｃに送られ、当該鍵秘匿化部１４ｃは、公開鍵PK(1)を用いて共通鍵KAを暗号化した暗号文PE(PK(1), KA)を生成し、出力する（ステップＳ６）。なお、PE(α, β)は、所定の公開鍵暗号方式により、公開鍵αを用いてβを暗号化した暗号文を意味する。
【００５６】
上記の公開鍵PK(1)と暗号文PE(PK(1), KA)と内部読み込み部１２ｂから読み込まれたID(1)とは、ＰＣ１０−１の外部書き込み部１１ａによってＵＳＢメモリ２０のインタフェース部２１（図３（ｂ））に送られ、そこから記憶部２２の領域２２ｂに分散情報SSK(1,2)とともに相互に関連付けられて格納される（ステップＳ７／ＰＣ１０−１の登録完了）。
【００５７】
次に、当該ＵＳＢメモリ２０がＰＣ１０−２に装着・マウントされると、ＰＣ１０−２にインストールされたアプリケーションソフトウェアが、ホスト名とユーザ名とを取得し、それらを示すID(2)を生成してＰＣ１０−２の記憶部１３（図４（ａ））に格納する。
【００５８】
次に、ＰＣ１０−２の鍵ペア生成部１４ｂ（図４（ａ））が、公開鍵暗号方式の秘密鍵SK(2)と公開鍵PK(2)とを生成し、出力する（ステップＳ８）。
【００５９】
生成された秘密鍵SK(2)は、ＰＣ１０−２の秘密鍵分散部１４ｋに入力され、秘密鍵分散部１４ｋは、秘密鍵SK(2)から分散情報SSK(2,1)と分散情報SSK(2,2)を生成して出力する（ステップＳ９）。分散情報SSK(2,1), SSK(2,2)は、それらから秘密鍵SK(2)を復元可能な値である。その具体例は、上述の分散情報SSK(1,1), SSK(1,2)と同様であるため省略する。
【００６０】
ＰＣ１０−２の秘密鍵分散部１４ｋから出力された分散情報SSK(2,1)は、内部書き込み部１２ａに送られ、そこからＰＣ１０−２の記憶部１３に格納される（ステップＳ１０）。一方、ＰＣ１０−２の秘密鍵分散部１４ｋから出力された分散情報SSK(2,2)は、ＰＣ１０−２の鍵ペア生成部１４ｂで生成された公開鍵PK(2)と、ＰＣ１０−２の内部読み込み部１２ｂによって記憶部１３から読み込まれた識別子ID(2)とともに、その外部書き込み部１１ａからＵＳＢメモリ２０のインタフェース部２１（図４（ｂ））に送られ、そこから記憶部２２の領域２２ｂに相互に関連付けられて格納される（ステップＳ１１／ＰＣ１０−２の登録申請）。
【００６１】
次に、当該ＵＳＢメモリ２０がＰＣ１０−１に装着・マウントされると、ＰＣ１０−１の外部読み込み部１１ｂが、ＵＳＢメモリ２０の記憶部２２の領域２２ｂから、識別子ID(1)に関連付けられている暗号文PE(PK(1), KA)を読み込み、それをＰＣ１０−１の共通鍵復元部１４ｄ（図５（ａ））に送る（ステップＳ１２）。また、ＰＣ１０−１の内部読み込み部１２ｂが、記憶部１３から分散情報SSK(1,1)を読み込み、分散情報SSK(1,1)をＰＣ１０−１の秘密鍵復元部１４ｍに送る（ステップＳ１３）。さらに、ＰＣ１０−１の外部読み込み部１１ｂが、ＵＳＢメモリ２０の記憶部２２の領域２２ｂから、識別子ID(1)に関連付けられている分散情報SSK(1,2)を読み込み、それをＰＣ１０−１の秘密鍵復元部１４ｍに送る（ステップＳ１４）。ＰＣ１０−１の秘密鍵復元部１４ｍは、当該分散情報SSK(1,1)と分散情報SSK(1,2)とを用いてＰＣ１０−１の秘密鍵SK(1)を復元する（ステップＳ１５）。
【００６２】
復元された秘密鍵SK(1)は、ＰＣ１０−１の共通鍵復元部１４ｄに読み込まれる。ＰＣ１０−１の共通鍵復元部１４ｄは、秘密鍵SK(1)を用いて暗号文PE(PK(1), KA)を復号し〔KA=PD(SK(1), PE(PK(1), KA))〕、共通鍵KAを抽出する（ステップＳ１６）。なお、PD(α, β)は、所定の公開鍵暗号方式により、秘密鍵αを用いてβを復号化した結果値を意味する。
【００６３】
さらに、ＰＣ１０−１の外部読み込み部１１ｂが、ＵＳＢメモリ２０の記憶部２２の領域２２ａ（図５（ｂ））から公開鍵PK(2)を読み込む（ステップＳ１７）。共通鍵KA及び公開鍵PK(2)は、ＰＣ１０−１の鍵秘匿化部１４ｃに送られ、当該鍵秘匿化部１４ｃは、公開鍵PK(2)を用い、公開鍵暗号方式によって共通鍵KAを暗号化した暗号文PE(PK(2), KA)を生成し、出力する（ステップＳ１８）。暗号文PE(PK(2), KA)は、外部書き込み部１１ａによってＵＳＢメモリ２０のインタフェース部２１に送られ、そこから記憶部２２の領域２２ｂ（図５（ｂ））に識別子ID(2)と関連付けて格納される（ステップＳ１９／ＰＣ１０−１による承認完了）。これにより、ＰＣ１０−２の登録が終了する。
【００６４】
その後、ＰＣ１０−２と同様にその他のＰＣ１０−ｉが登録申請を行い（ステップＳ８〜Ｓ１１参照）、ＰＣ１０−１等の登録済のＰＣ１０−ｔ（t=1,...,n）（ＵＳＢメモリ２０に暗号文PE(PK(t), KA)が格納され、自らの記憶部１３に秘密鍵SK(t)が格納された何れかのＰＣ１０−ｔ）が上述のように承認を行い（ステップＳ１２〜Ｓ１９参照）、全てのＰＣ１０−ｉ（i=1,...,n）の登録がなされる。
【００６５】
［書き込み過程・読み込み過程］
次に、本形態の書き込み過程及び読み込み過程を説明する。なお、前提としてＰＣ１０−ｉには、ＯＳやセキュリティプログラムやアプリケーションソフトウェアがインストールされているものとする。
【００６６】
図６は、本形態の書き込み過程に関連する各機能ブロックとデータの流れとを示した図であり、図７は、本形態の読み込み過程に関連する各機能ブロックとデータの流れとを示した図である。また、図１３は、本形態の書き込み過程及び読み込み過程を説明するためのシーケンス図である。なお、ここでは、ＰＣ１０−１がＵＳＢメモリ２０に暗号文を書き込み（書き込み過程）、ＰＣ１０−２がＵＳＢメモリ２０から暗号文を読み込んで復号する（読み込み過程）例を示す。
【００６７】
まず、ＰＣ１０−１にＵＳＢメモリ２０が装着・マウントされているものとする。この状態で、WordやExcel（登録商標）等のアプリケーションソフトウェアを実行するＰＣ１０−１のアプリケーション実行部１４ｈ（図６（ａ））が、平文M(1)の暗号文のＵＳＢメモリ２０への書き込み要求を制御部１４ｉに行う。これをトリガとして、ＰＣ１０−１の内部読み込み部１２ｂが記憶部１３から識別子ID(1)を読み込み、これをＰＣ１０−１の外部読み込み部１１ｂに送る。当該外部読み込み部１１ｂは、ＵＳＢメモリ２０の記憶部２２の領域２２ｂ（図６（ｂ））から識別子ID(1)に関連付けられている暗号文PE(PK(1), KA)を読み込む（ステップＳ２１）。当該暗号文PE(PK(1), KA)は、ＰＣ１０−１の共通鍵復元部１４ｄ（図６（ａ））に送られる。
【００６８】
また、これをトリガとして、ＰＣ１０−１の内部読み込み部１２ｂが、記憶部１３から分散情報SSK(1,1)を読み込み、分散情報SSK(1,1)をＰＣ１０−１の秘密鍵復元部１４ｍに送る（ステップＳ２２）。さらに、ＰＣ１０−１の外部読み込み部１１ｂが、ＵＳＢメモリ２０の記憶部２２の領域２２ｂから、識別子ID(1)に関連付けられている分散情報SSK(1,2)を読み込み、それをＰＣ１０−１の秘密鍵復元部１４ｍに送る（ステップＳ２３）。ＰＣ１０−１の秘密鍵復元部１４ｍは、当該分散情報SSK(1,1)と分散情報SSK(1,2)とを用いてＰＣ１０−１の秘密鍵SK(1)を復元する（ステップＳ２４）。
【００６９】
復元された秘密鍵SK(1)は、ＰＣ１０−１の共通鍵復元部１４ｄに送られる。共通鍵復元部１４ｄは、秘密鍵SK(1)を用いて暗号文PE(PK(1), KA)を復号して共通鍵KA〔KA=PD(SK(1), PE(PK(1), KA))〕を抽出し、共通鍵KAを暗号化部１４ｅに送る（ステップＳ２５）。また、ＰＣ１０−１のアプリケーション実行部１４ｈは、平文M(1)をその暗号化部１４ｅに送り、当該暗号化部１４ｅは、共通鍵暗号方式により、共通鍵KAを用いて平文M(1)を暗号化した暗号文SE(KA, M(1))を生成する（ステップＳ２６）。なお、SE(α, β)は、所定の共通鍵暗号方式により、共通鍵αを用いてβを暗号化した暗号文を意味する。また、共通鍵暗号方式としては、例えばCamelliaやAES等を例示できる。
【００７０】
生成された暗号文SE(KA, M(1))は、外部書き込み部１１ａによって、ＵＳＢメモリ２０のインタフェース部２１に送られ、そこから記憶部２２の領域２２ｃ（図６（ｂ））に格納される（ステップＳ２７／書き込み過程終了）。
【００７１】
次に、ＰＣ１０−２にＵＳＢメモリ２０が装着・マウントされる。この状態で、ＰＣ１０−２のアプリケーション実行部１４ｈが、ＵＳＢメモリ２０からの暗号文SE(KA, M(1))の読み込み要求を制御部１４ｉに行うと、まず、ＰＣ１０−２の外部読み込み部１１ｂ（図７（ａ））が、ＵＳＢメモリ２０の記憶部２２の領域２２ｃ（図７（ｂ））から暗号文SE(KA, M(1))を読み込み（ステップＳ２８）、さらに、領域２２ｂから暗号文PE(PK(2), KA)を読み込む（ステップＳ２９）。
【００７２】
次に、ＰＣ１０−２の内部読み込み部１２ｂが、記憶部１３から分散情報SSK(2,1)を読み込み、分散情報SSK(2,1)をＰＣ１０−２の秘密鍵復元部１４ｍに送る（ステップＳ３０）。さらに、ＰＣ１０−２の外部読み込み部１１ｂが、ＵＳＢメモリ２０の記憶部２２の領域２２ｂから、識別子ID(2)に関連付けられている分散情報SSK(2,2)を読み込み、それをＰＣ１０−２の秘密鍵復元部１４ｍに送る（ステップＳ３１）。ＰＣ１０−２の秘密鍵復元部１４ｍは、当該分散情報SSK(2,1)と分散情報SSK(2,2)とを用いてＰＣ１０−２の秘密鍵SK(2)を復元する（ステップＳ３２）。
【００７３】
復元された秘密鍵SK(2)は、ＰＣ１０−２の共通鍵復元部１４ｄに送られる。そして、ＰＣ１０−２の共通鍵復元部１４ｄが、当該秘密鍵SK(2)を用いて暗号文PE(PK(2), KA)を復号して共通鍵KA〔KA=PD(SK(2), PE(PK(2), KA))〕を抽出する（ステップＳ３３）。その後、ＰＣ１０−２の復号化部１４ｆが、当該共通鍵KAを用いて暗号文SE(KA, M(1))を復号して平文M(1)〔M(1)=SD(KA, SE(KA, M(1))〕を抽出する（ステップＳ３４）。なお、SD(α，β)は、共通鍵暗号方式により、共通鍵αによってβを復号化した結果値を意味する。
【００７４】
抽出された平文M(1)は、ＰＣ１０−２のアプリケーション実行部１４ｈに送られる（読み込み過程終了）。
【００７５】
［削除過程］
次に、本形態の削除過程について説明する。なお、前提としてＰＣ１０−ｉには、ＯＳやセキュリティプログラムやアプリケーションソフトウェアがインストールされているものとする。
【００７６】
図８〜１０は、本形態の削除過程に関連する各機能ブロックとデータの流れとを示した図である。また、図１４は、本形態の削除過程を説明するためのシーケンス図である。
【００７７】
本形態の削除過程は、単に登録削除対象のＰＣ１０−ｗのデータをＵＳＢメモリ２０から削除するだけではなく、これに併せて平文の暗号化に用いる共通鍵KAを再設定し、ＵＳＢメモリ２０に格納されている暗号文も生成し直す。これにより、登録が削除されたＰＣ１０−ｗが、過去に取得した共通鍵KAを用い、ＵＳＢメモリ２０に格納された暗号文を復号できてしまうという事態を防止できる。以下では、ＰＣ１０−１がＵＳＢメモリ２０からＰＣ１０−２の登録を削除する例を示す。
【００７８】
まず、ＰＣ１０−１にＵＳＢメモリ２０が装着・マウントされているものとする。この状態で、利用者が登録削除対象を例えば以下のように指定する。まず、外部読み込み部１１ｂがＵＳＢメモリ２０の記憶部２２の領域２２ｂから全ての識別子ID(i)を読み込み、それらが示すホスト名及びユーザ名を出力部１６から出力する（例えば、画面上に表示する）。利用者は、出力されたホスト名及びユーザ名を参照しながら、削除対象のホスト名及びユーザ名を入力部１５から入力する。この例では識別子ID(2)に対応するホスト名及びユーザ名が入力されたものにする。制御部１４ｉは、この入力結果に基づき以下のように削除過程を実行させる。
【００７９】
まず、ＰＣ１０−１の内部読み込み部１２ｂが記憶部１３から識別子ID(1)を読み込み、外部読み込み部１１ｂ（図８（ａ））に送る。当該外部読み込み部１１ｂ（図８（ａ））は、ＵＳＢメモリ２０の記憶部２２の領域２２ｂ（図８（ｂ））から識別子ID(1)に関連付けられた暗号文PE(PK(1), KA)を読み込む（ステップＳ４１）。
【００８０】
また、ＰＣ１０−１の内部読み込み部１２ｂが、記憶部１３から分散情報SSK(1,1)を読み込み、分散情報SSK(1,1)をＰＣ１０−１の秘密鍵復元部１４ｍに送る（ステップＳ４２）。さらに、ＰＣ１０−１の外部読み込み部１１ｂが、ＵＳＢメモリ２０の記憶部２２の領域２２ｂから、識別子ID(1)に関連付けられている分散情報SSK(1,2)を読み込み、それをＰＣ１０−１の秘密鍵復元部１４ｍに送る（ステップＳ４３）。ＰＣ１０−１の秘密鍵復元部１４ｍは、当該分散情報SSK(1,1)と分散情報SSK(1,2)とを用いてＰＣ１０−１の秘密鍵SK(1)を復元する（ステップＳ４４）。
【００８１】
復元された秘密鍵SK(1)は、ＰＣ１０−１の共通鍵復元部１４ｄに送られる。共通鍵復元部１４ｄは、当該秘密鍵SK(1)を用い、ＵＳＢメモリ２０から読み込まれた暗号文PE(PK(1), KA)を復号して共通鍵KA〔KA=PD(SK(1), PE(PK(1), KA))〕を抽出する（ステップＳ４５）。また、ＰＣ１０−１の共通鍵生成部１４ａが、新たな共通鍵KAnewを生成する（ステップＳ４６）。
【００８２】
また、ＰＣ１０−１の外部読み込み部１１ｂが、ＵＳＢメモリ２０からＰＣ１０−ｉに対応する暗号文SE(KA, M(i))(i=1,...,n)を読み込む（ステップＳ４７）。ＰＣ１０−１の復号化部１４ｆは、共通鍵復元部１４ｄで得られた共通鍵KAを用い、当該暗号文SE(KA, M(i))を復号して平文M(i)〔M(i)=SD(KA, SE(KA, M(i))〕を抽出する（ステップＳ４８）。
【００８３】
次に、ＰＣ１０−１の暗号化部１４ｅに、抽出された各平文M(i)と新たな共通鍵KAnewとが入力され、当該暗号化部１４ｅは、新たな共通鍵KAnewを用いて各平文M(i)を暗号化した暗号文SE(KAnew, M(i))を生成する（ステップＳ４９）。各暗号文SE(KAnew, M(i))は、ＰＣ１０−１の外部書き込み部１１ａに送られる。当該外部書き込み部１１ａは、当該暗号文SE(KAnew, M(i))をＵＳＢメモリ２０のインタフェース部２１に送り、インタフェース部２１は、これらを記憶部２２の領域２２ｃ（図８（ｂ））に格納する（ステップＳ５０）。
【００８４】
また、ＰＣ１０−１の外部読み込み部１１ｂ（図９（ａ））が、ＵＳＢメモリ２０から各ＰＣ１０−ｓ（s=1,...,n、s≠2）に対応する公開鍵PK(s)を読み込み（ステップＳ５１）、それらをＰＣ１０−１の鍵秘匿化部１４に送る。そして、当該鍵秘匿化部１４ｃは、読み込まれた各公開鍵PK(s)を用い、共通鍵生成部１４ａで新たに生成された（ステップＳ４６）共通鍵KAnewを公開鍵暗号方式によって暗号化し、暗号文PE(PK(s), KAnew)を生成する（ステップＳ５２）。各暗号文PE(PK(s), KAnew)は、ＰＣ１０−１の外部書き込み部１１ａによってＵＳＢメモリ２０のインタフェース部２１に送られる。当該インタフェース部２１は、各暗号文PE(PK(s), KAnew)を、ＵＳＢメモリ２０の記憶部２２の領域２２ｂに、それぞれ識別子ID(s)と対応付けて格納（図９（ｂ））する（ステップＳ５３）。
【００８５】
次に、ＰＣ１０−１の削除部１４ｇ（図１０（ａ））が削除命令を出し、これを受けた外部書き込み部１１ａは、USBメモリ２０の記憶部２２の領域２２ｃ（図９（ｂ））から暗号文SE(KA, M(i))を削除し、領域２２ｂからPE(PK(i), KA)、識別子ID(2)、公開鍵PK(2)、分散情報SSK(2,2)を削除（図１０（ｂ））する（ステップＳ５４）。
【００８６】
＜本形態の特徴＞
以上のように、本形態では、秘密鍵の分散情報をPCとUSBメモリとに分散して格納することとしたため、PCに格納された情報が第三者に盗聴された場合であっても、直ちに秘密鍵が第三者に知られることはない。これにより安全性を向上させることができる。また、本形態では、PC間で事前に共通鍵を共有するための煩雑な処理は不要である。また、本形態の処理の場合、共通鍵のデータ長を暗号学的に安全な長さとしても利用者の利便性は低下しない。さらに、本発明では、平文の暗号文を復号するための共通鍵をUSBメモリに格納するのではなく、共通鍵を公開鍵によって暗号化した暗号文をUSBメモリに格納しておく。そのため、弟三者が当該USBメモリを取得したり、当該USBメモリからデータを読み取ったりした場合でも、当該第三者は、平文の暗号文を復号することができない。
【００８７】
なお、第１の実施形態では、鍵ペアSK(1),PK(1)を生成（ステップＳ２）した後に、秘密鍵SK(1)の分散情報SSK(1,1)及びSSK(1,2)を生成（ステップＳ３）することとした。しかし、鍵ペアSK(i),PK(i)を生成する過程で分散情報SSK(i,1)及びSSK(i,2)を生成してもよい。具体的には、例えば、ランダムに分散情報SSK(i,1)及びSSK(i,2)生成し、それらを用いて秘密鍵SK(i)を生成し、生成した秘密鍵SK(i)を用いて公開鍵PK(i)を生成してもよい。なお、分散情報SSK(i,1)及びSSK(i,2)からの秘密鍵SK(i)の生成方式としては、例えば、SK(i)= SSK(i,1)（+）SSK(i,2)とする方式、SSK(i,1)を共通鍵としてSSK(i,2)を暗号化した暗号文をSK(i)とする方式、その逆にSSK(i,2)を共通鍵としてSSK(i,1)を暗号化した暗号文をSK(i)とする方式、SSK(i,1)及びSSK(i,2)のビット結合値SSK(i,1)|SSK(i,2)のハッシュ値H(SSK(i,1)|SSK(i,2))を秘密鍵SK(i)とする方式等を例示できる。
【００８８】
また、分散情報SSK(i,1)及びSSK(i,2)のみによって秘密鍵SK(i)を復元するのではなく、分散情報SSK(i,1)及びSSK(i,2)とその他の情報（PCの固有値等）とによって秘密鍵SK(i)を復元する構成であってもよい。例えば、その他の情報Aを用い、SK(i)= SSK(i,1)（+）SSK(i,2)（+）Aとする方式、SSK(i,1)を共通鍵としてSSK(i,2)｜Aを暗号化した暗号文をSK(i)とする方式、その逆にSSK(i,2)｜Aを共通鍵としてSSK(i,1)を暗号化した暗号文をSK(i)とする方式、SSK(i,1)、SSK(i,2)及びAのビット結合値SSK(i,1)|SSK(i,2)|Aのハッシュ値H(SSK(i,1)|SSK(i,2)|A)を秘密鍵SK(i)とする方式等を例示できる。
【００８９】
また、本形態では、USBメモリに格納にする分散情報SSK(i,2)をPC-i毎に設定することとしたが、複数のPC-iに共通の分散情報SSK(i,2)を用いる構成としてもよく、全てのPC-iに共通の分散情報SSK(i,2)を用いる構成としてもよい。
【００９０】
また、各情報処理装置は必ずしも１つの筐体内に構成される必要はない。例えば、公開鍵と秘密鍵との鍵ペアを生成する鍵ペア生成部とその他の構成部とを別の筐体に構成してもよく、複数の情報処理装置の鍵ペア生成部を１つの筐体にまとめて構成してもよい。この場合、複数の情報処理装置が１つの鍵ペア生成部を相互に共用する構成であってもよい。同様に、秘密鍵分散部とその他の構成部とを別の筐体に構成してもよく、複数の情報処理装置の秘密鍵分散部を１つの筐体にまとめて構成してもよい。この場合、複数の情報処理装置が１つの秘密鍵分散部を相互に共用する構成であってもよい。
【００９１】
〔第２の実施形態〕
次に、本発明の第２の実施形態について説明する。本形態は第１の実施形態の変形例であり、PC-i（「情報処理装置」に相当）の記憶部に格納された分散情報SSK(i,1)と、USBメモリ（「情報記録媒体」に相当）に格納された分散情報SSK(i,2)と、サーバ装置１２０の１２０のハードディスク１２２（「第２情報記録媒体」に相当）に格納された分散情報SSK(i,3)とから秘密鍵SK(i)を復元する形態である。以下では、第１の実施形態との相違点を中心に説明を行い、第１の実施形態と共通する事項については説明を省略する。
【００９２】
＜構成＞
図１５は、本形態の情報記録媒体共用システム１００の全体構成を例示した概念図である。なお、以下、第１の実施形態との共通部分については第１の実施形態と同じ符号を付す。
【００９３】
図１５に例示するように、情報記録媒体共用システム１は、ｎ（ｎは２以上の整数）個のＰＣ１１０−１〜ｎ（「情報処理装置PC(i)（i=1,...,n）」に相当）と、これらのＰＣ１１０−１〜ｎ間で共用されるＵＳＢメモリ２０（「情報記録媒体」に相当）と、ハードディスク１２２（「第２情報記録媒体」に相当）を具備するサーバ装置１２０とを具備する。ＰＣ１１０−１〜ｎは、ＵＳＢメモリ２０へ暗号文を格納し、また、ＵＳＢメモリ２０に格納された暗号文から平文を復号することにより相互に情報を共有する。また、サーバ装置１２０は、ネットワークを通じてＰＣ１１０−１〜ｎと通信可能に構成され、各ＰＣ１１０−１〜ｎの外部書き込み部１１ａは、サーバ装置１２０のハードディスク１２２にデータの書き込みが可能なように構成され、外部読み込み部１１ｂは、サーバ装置１２０のハードディスク１２２からデータの読み込みが可能なように構成される。
【００９４】
なお、本形態では、情報処理装置の一例としてパーソナルコンピュータを例示し、情報記録媒体の一例としてＵＳＢメモリを例示し、第２情報記録媒体の一例としてハードディスクを例示するが、本発明はこれに限定されるものではない。
【００９５】
図１６（ａ）は、本形態のＰＣ１１０−ｉ（i=1,...,n）の機能構成を例示したブロック図であり、図１６（ｂ）は、本形態のＵＳＢメモリ２０の機能構成を例示したブロック図である。
【００９６】
図１６（ａ）に示すように、本形態のＰＣ１１０−ｉは、第１の実施形態のＰＣ１０−ｉの秘密鍵分散部１４ｋが秘密鍵分散部１１４ｋに置換され、秘密鍵復元部１４ｍが秘密鍵復元部１１４ｍに置換された構成である。また、図１６（ｂ）に示すように、本形態のＵＳＢメモリ２０の機能構成は第１の実施形態と同様であるが、記憶部２２に格納されるデータが相違する。
【００９７】
図１７は、本形態のサーバ装置１２０の機能構成を例示したブロック図である。
図１７に例示するように、本形態のサーバ装置１２０は、インタフェース部１２１と、ハードディスク１２２と制御部１２３とを有している。本形態のサーバ装置１２０は、ＣＰＵ、ＲＡＭ、ＲＯＭ、ＬＡＮカード等からなる、通信機能を備えたノイマン型のコンピュータであり、所定のプログラムが読み込まれることにより、図１７に示す機能構成が構築される。
【００９８】
＜処理＞
次に本形態の処理を説明する。
本形態の処理も、(1)登録過程、(2)書き込み過程、(3)読み込み過程、(4)削除過程に大別できる。以下、各過程を説明する。
【００９９】
［登録過程］
まず、登録過程を説明する。図１８〜２０は、本形態の登録過程に関連する各機能ブロックとデータの流れとを示した図であり、図２４及び図２５は、本形態の登録過程を説明するためのシーケンス図である。なお、以下では、一例としてＰＣ１１０−１が最初に登録を行い、次にＰＣ１１０−２が登録申請を行い、ＰＣ１１０−１がそれを承認することによってＰＣ１１０−２が登録される処理を例示する。
【０１００】
まず、ＰＣ１１０−１が第１の実施形態のステップＳ１，Ｓ２と同じ処理を実行する。次に、ステップＳ２で生成された秘密鍵SK(1)は、ＰＣ１１０−１の秘密鍵分散部１１４ｋに入力され、秘密鍵分散部１１４ｋは、秘密鍵SK(1)から分散情報SSK(1,1)と分散情報SSK(1,2)と分散情報SSK(1,3)を生成して出力する（ステップＳ１０１）。分散情報SSK(1,1), SSK(1,2), SSK(1,3)は、それらから秘密鍵SK(1)を復元可能な値である。以下に、このような分散情報SSK(1,1), SSK(1,2), SSK(1,3)の具体例を示す。
【０１０１】
《分散情報の例４》
分散情報の例４では、秘密鍵SK(1)= SSK(1,1)（+）SSK(1,2)（+）SSK(1,3)を満たすSSK(1,1)，SSK(1,2)，SSK(1,3)を分散情報SSK(1,1)，SSK(1,2)，SSK(1,3)とする。
【０１０２】
このような分散情報SSK(1,1)，SSK(1,2), SSK(1,3)の生成手順としては、例えば、ランダムにSSK(1,1)とSSK(1,2)の値を生成し、SSK(1,3)= SK(1)（+）SSK(1,1)（+）SSK(1,3)としてSSK(1,3)を求め、SSK(1,1)，SSK(1,2)，SSK(1,3)を分散情報SSK(1,1)，SSK(1,2)，SSK(1,3)とする手順を例示できる。
【０１０３】
このような分散情報SSK(1,1)，SSK(1,2)からの秘密鍵SK(1)の復元は、SK(1)= SSK(1,1)（+）SSK(1,2)（+）SSK(1,3)によって可能である。
【０１０４】
《分散情報の例５》
分散情報の例５では、SSK(1,1)とSSK(1,2)とのビット結合値SSK(1,1)|SSK(1,2)を共通鍵とし、共通鍵暗号方式によって秘密鍵SK(1)を暗号化した暗号文をSSK(1,3)とする。この場合、ランダムにSSK(1,1),SSK(1,2)の値を生成し、ビット結合値SSK(1,1)|SSK(1,2)を共通鍵としてSK(1)を暗号化して暗号文SSK(1,3)を生成し、分散情報SSK(1,1)，SSK(1,2)，SSK(1,3)を生成することができる。また、このような分散情報SSK(1,1)，SSK(1,2)，SSK(1,3)からの秘密鍵SK(1)の復元は、ビット結合値SSK(1,1)|SSK(1,2)を共通鍵としてSSK(1,3)を復号することによって可能である。
【０１０５】
《分散情報の例６》
分散情報の例６では、公知の秘密分散方法（参考文献１）を用いて、秘密鍵SK(1)を秘密分散した値を分散情報SSK(1,1)，SSK(1,2)，SSK(1,3)とする（分散情報の例の説明終わり）。
【０１０６】
ＰＣ１１０−１の秘密鍵分散部１１４ｋから出力された分散情報SSK(1,1)は、内部書き込み部１２ａに送られ、そこからＰＣ１１０−１の記憶部１３に格納される（ステップＳ１０２）。秘密鍵分散部１１４ｋから出力された分散情報SSK(1,2)は、ＰＣ１１０−１の外部書き込み部１１ａによってＵＳＢメモリ２０のインタフェース部２１（図１８（ｂ））に送られ、そこから記憶部２２の領域２２ｂに格納される（ステップＳ１０３）。また、秘密鍵分散部１１４ｋから出力された分散情報SSK(1,3)は、ＰＣ１１０−１の外部書き込み部１１ａによってサーバ装置１２０のインタフェース部１２１（図１８（ｃ））に送られ、そこからハードディスク１２２に格納される（ステップＳ１０４）。
【０１０７】
その後、ＰＣ１１０−１とＵＳＢメモリ２０とＰＣ１１０−２が、第１の実施形態のステップＳ６〜Ｓ８と同じ処理が実行される。
【０１０８】
次に、ステップＳ８で生成された秘密鍵SK(2)が、ＰＣ１１０−１の秘密鍵分散部１１４ｋに入力され、秘密鍵分散部１１４ｋは、秘密鍵SK(2)から分散情報SSK(2,1)と分散情報SSK(2,2)と分散情報SSK(2,3)とを生成して出力する（ステップＳ１０５）。分散情報SSK(2,1), SSK(2,2), SSK(2,3)は、それらから秘密鍵SK(2)を復元可能な値である。その具体例は、上述の分散情報SSK(1,1), SSK(1,2), SSK(1,3)と同様であるため省略する。
【０１０９】
ＰＣ１１０−２の秘密鍵分散部１１４ｋから出力された分散情報SSK(2,1)は、内部書き込み部１２ａに送られ、そこからＰＣ１１０−２の記憶部１３に格納される（ステップＳ１０６）。また、ＰＣ１１０−２の秘密鍵分散部１１４ｋから出力された分散情報SSK(2,2)は、ＰＣ１１０−２の鍵ペア生成部１４ｂで生成された公開鍵PK(2)と、ＰＣ１１０−２の内部読み込み部１２ｂによって記憶部１３から読み込まれた識別子ID(2)とともに、その外部書き込み部１１ａからＵＳＢメモリ２０のインタフェース部２１（図１９（ｂ））に送られ、そこから記憶部２２の領域２２ｂに相互に関連付けられて格納される（ステップＳ１０７）。一方、ＰＣ１１０−２の秘密鍵分散部１１４ｋから出力された分散情報SSK(2,3)は、ＰＣ１１０−２の外部書き込み部１１ａによってサーバ装置１２０のインタフェース部１２１（図１９（ｃ））に送られ、そこからハードディスク１２２に格納される（ステップＳ１０８／ＰＣ１１０−２の登録申請）。
【０１１０】
次に、ＰＣ１１０−１とＵＳＢメモリ２０とによって第１の実施形態のステップＳ１２と同じ処理が実行された後、ＰＣ１１０−１（図２０（ａ））の内部読み込み部１２ｂが、記憶部１３から分散情報SSK(1,1)を読み込み、分散情報SSK(1,1)をＰＣ１１０−１の秘密鍵復元部１１４ｍに送る（ステップＳ１０９）。さらに、ＰＣ１１０−１の外部読み込み部１１ｂが、ＵＳＢメモリ２０（図２０（ｂ））の記憶部２２の領域２２ｂから、識別子ID(1)に関連付けられている分散情報SSK(1,2)を読み込み、それをＰＣ１１０−１の秘密鍵復元部１１４ｍに送る（ステップＳ１１０）。また、ＰＣ１１０−１の外部読み込み部１１ｂが、サーバ装置１２０（図２０（ｃ））のハードディスク１２２から、識別子ID(1)に関連付けられている分散情報SSK(1,3)を読み込み、それをＰＣ１１０−１の秘密鍵復元部１１４ｍに送る（ステップＳ１１１）。
【０１１１】
ＰＣ１１０−１の秘密鍵復元部１１４ｍは、当該分散情報SSK(1,1)と分散情報SSK(1,2)と分散情報SSK(1,3)とを用いてＰＣ１１０−１の秘密鍵SK(1)を復元する（ステップＳ１１２）。
【０１１２】
復元された秘密鍵SK(1)は、ＰＣ１１０−１の共通鍵復元部１４ｄに読み込まれ、その後、ＰＣ１１０−１とＵＳＢメモリ２０とによって第１の実施形態のステップＳ１６〜Ｓ１９と同じ処理が実行される。
【０１１３】
［書き込み過程・読み込み過程］
次に、本形態の書き込み過程及び読み込み過程を説明する。
図２１は、本形態の書き込み過程に関連する各機能ブロックとデータの流れとを示した図であり、図２２は、本形態の読み込み過程に関連する各機能ブロックとデータの流れとを示した図である。また、図２６は、本形態の書き込み過程及び読み込み過程を説明するためのシーケンス図である。なお、ここでは、ＰＣ１１０−１がＵＳＢメモリ２０に暗号文を書き込み（書き込み過程）、ＰＣ１１０−２がＵＳＢメモリ２０から暗号文を読み込んで復号する（読み込み過程）例を示す。
【０１１４】
ＰＣ１１０−１とＵＳＢメモリ２０とによって第１の実施形態のステップＳ２１と同じ処理が実行された後、ＰＣ１１０−１（図２１（ａ））の内部読み込み部１２ｂが、記憶部１３から分散情報SSK(1,1)を読み込み、分散情報SSK(1,1)をＰＣ１１０−１の秘密鍵復元部１１４ｍに送る（ステップＳ１２１）。さらに、ＰＣ１１０−１の外部読み込み部１１ｂが、ＵＳＢメモリ２０（図２１（ｂ））の記憶部２２の領域２２ｂから、識別子ID(1)に関連付けられている分散情報SSK(1,2)を読み込み、それをＰＣ１１０−１の秘密鍵復元部１１４ｍに送る（ステップＳ１２２）。また、ＰＣ１１０−１の外部読み込み部１１ｂが、サーバ装置１２０（図２１（ｃ））のハードディスク１２２から、識別子ID(1)に関連付けられている分散情報SSK(1,3)を読み込み、それをＰＣ１１０−１の秘密鍵復元部１１４ｍに送る（ステップＳ１２３）。ＰＣ１１０−１の秘密鍵復元部１１４ｍは、当該分散情報SSK(1,1)と分散情報SSK(1,2)と分散情報SSK(1,3)とを用いてＰＣ１１０−１の秘密鍵SK(1)を復元する（ステップＳ１２４）。
【０１１５】
その後、ＰＣ１１０−１とＵＳＢメモリ２０とＰＣ１１０−２とによって、第１の実施形態のステップＳ２５〜Ｓ２９と同じ処理を実行する。
【０１１６】
次に、ＰＣ１１０−２（図２２（ａ））の内部読み込み部１２ｂが、記憶部１３から分散情報SSK(2,1)を読み込み、分散情報SSK(2,1)をＰＣ１１０−２の秘密鍵復元部１１４ｍに送る（ステップＳ１２５）。さらに、ＰＣ１１０−２の外部読み込み部１１ｂが、ＵＳＢメモリ２０（図２２（ｂ））の記憶部２２の領域２２ｂから、識別子ID(2)に関連付けられている分散情報SSK(2,2)を読み込み、それをＰＣ１１０−２の秘密鍵復元部１１４ｍに送る（ステップＳ１２６）。また、ＰＣ１１０−２の外部読み込み部１１ｂが、サーバ装置１２０（図２２（ｃ））のハードディスク１２２から、識別子ID(2)に関連付けられている分散情報SSK(2,3)を読み込み、それをＰＣ１１０−２の秘密鍵復元部１１４ｍに送る（ステップＳ１２７）。ＰＣ１１０−２の秘密鍵復元部１１４ｍは、当該分散情報SSK(2,1)と分散情報SSK(2,2)と分散情報SSK(2,3)とを用いてＰＣ１１０−２の秘密鍵SK(2)を復元する（ステップＳ１２８）。
【０１１７】
その後、ＰＣ１１０−２によって、第１の実施形態のステップＳ３３〜Ｓ３４と同じ処理が実行される。
【０１１８】
［削除過程］
次に、本形態の削除過程について説明する。
図２３は、本形態の削除過程に関連する各機能ブロックとデータの流れとを示した図である。また、図２７は、本形態の削除過程を説明するためのシーケンス図である。
【０１１９】
ＰＣ１１０−１とＵＳＢメモリ２０とによって第１の実施形態のステップＳ４１と同じ処理が実行された後、ＰＣ１１０−１（図２３（ａ））の内部読み込み部１２ｂが、記憶部１３から分散情報SSK(1,1)を読み込み、分散情報SSK(1,1)をＰＣ１１０−１の秘密鍵復元部１１４ｍに送る（ステップＳ１３１）。さらに、ＰＣ１１０−１の外部読み込み部１１ｂが、ＵＳＢメモリ２０（図２３（ｂ））の記憶部２２の領域２２ｂから、識別子ID(1)に関連付けられている分散情報SSK(1,2)を読み込み、それをＰＣ１１０−１の秘密鍵復元部１１４ｍに送る（ステップＳ１３２）。また、ＰＣ１１０−１の外部読み込み部１１ｂが、サーバ装置１２０（図２３（ｃ））のハードディスク１２２から、識別子ID(1)に関連付けられている分散情報SSK(1,3)を読み込み、それをＰＣ１１０−１の秘密鍵復元部１１４ｍに送る（ステップＳ１３３）。ＰＣ１１０−１の秘密鍵復元部１１４ｍは、当該分散情報SSK(1,1)と分散情報SSK(1,2)と分散情報SSK(1,3)とを用いてＰＣ１１０−１の秘密鍵SK(1)を復元する（ステップＳ１３４）。
【０１２０】
その後、ＰＣ１１０−１とＵＳＢメモリ２０とによって、第１の実施形態のステップＳ４５〜Ｓ５４と同じ処理が実行される。
【０１２１】
＜本形態の特徴＞
以上のように、本形態では、秘密鍵の分散情報をPCとUSBメモリとサーバ装置のハードディスクとに分散して格納することとしたため、より安全性を向上させることができる。
【０１２２】
なお、第２の実施形態では、秘密鍵の分散情報をPCとUSBメモリとサーバ装置のハードディスクとに分散して格納することとしたが、秘密鍵の分散情報をPCと複数のUSBメモリとに分散して格納することとしてもよいし、複数のサーバ装置のハードディスクに分散して格納することとしてもよい。さらには、秘密鍵の分散情報をPCと複数のUSBメモリと複数のサーバ装置のハードディスクとに分散して格納することとしてもよい。
【０１２３】
また、第２の実施形態では、鍵ペアSK(1),PK(1)を生成（ステップＳ２）した後に、秘密鍵SK(1)の分散情報SSK(1,1),SSK(1,2)及びSSK(1,3)を生成（ステップＳ１０１）することとした。しかし、鍵ペアSK(i),PK(i)を生成する過程で分散情報SSK(1,1),SSK(1,2)及びSSK(1,3)を生成してもよい。具体的には、例えば、ランダムに分散情報SSK(1,1),SSK(1,2)及びSSK(1,3)生成し、それらを用いて秘密鍵SK(i)を生成し、生成した秘密鍵SK(i)を用いて公開鍵PK(i)を生成してもよい。なお、SSK(1,1),SSK(1,2)及びSSK(1,3)からの秘密鍵SK(i)の生成方式としては、例えば、SK(i)= SSK(i,1)（+）SSK(i,2)（+）SSK(i,3)とする方式、ビット結合値SSK(i,1)|SSK(i,2)を共通鍵としてSSK(i,3)を暗号化した暗号文をSK(i)とする方式、SSK(i,1)を共通鍵としてビット結合値SSK(i,2)|SSK(i,3)を暗号化した暗号文をSK(i)とする方式、SSK(1,1),SSK(1,2)及びSSK(1,3)のビット結合値SSK(i,1)|SSK(i,2)|SSK(i,3)のハッシュ値H(SSK(i,1)|SSK(i,2)|SSK(i,3))を秘密鍵SK(i)とする方式等を例示できる。
【０１２４】
また、散情報SSK(1,1),SSK(1,2)及びSSK(1,3)のみによって秘密鍵SK(i)を復元するのではなく、散情報SSK(1,1),SSK(1,2)及びSSK(1,3)とその他の情報（PCの固有値等）とによって秘密鍵SK(i)を復元する構成であってもよい。例えば、その他の情報Aを用い、SK(i)= SSK(i,1)（+）SSK(i,2)（+）SSK(i,3)（+）Aとする方式、SSK(i,1)を共通鍵としてSSK(i,2)｜SSK(i,3)｜Aを暗号化した暗号文をSK(i)とする方式、SSK(i,2)｜SSK(i,3)｜Aを共通鍵としてSSK(i,1)を暗号化した暗号文をSK(i)とする方式、SSK(i,1)、SSK(i,2)、SSK(i,3)及びAのビット結合値SSK(i,1)|SSK(i,2)|SSK(i,3)|Aのハッシュ値H(SSK(i,1)|SSK(i,2)|SSK(i,3)|A)を秘密鍵SK(i)とする方式等を例示できる。
【０１２５】
また、本形態では、USBメモリに格納にする分散情報SSK(i,2)をPC-i毎に設定することとしたが、複数のPC-iに共通の分散情報SSK(i,2)を用いる構成としてもよく、全てのPC-iに共通の分散情報SSK(i,2)を用いる構成としてもよい。同様に、本形態では、サーバ装置のハードディスクに格納にする分散情報SSK(i,3)をPC-i毎に設定することとしたが、複数のPC-iに共通の分散情報SSK(i,3)を用いる構成としてもよく、全てのPC-iに共通の分散情報SSK(i,3)を用いる構成としてもよい。
【０１２６】
また、各情報処理装置は必ずしも１つの筐体内に構成される必要はない。例えば、公開鍵と秘密鍵との鍵ペアを生成する鍵ペア生成部とその他の構成部とを別の筐体に構成してもよく、複数の情報処理装置の鍵ペア生成部を１つの筐体にまとめて構成してもよい。この場合、複数の情報処理装置が１つの鍵ペア生成部を相互に共用する構成であってもよい。同様に、秘密鍵分散部とその他の構成部とを別の筐体に構成してもよく、複数の情報処理装置の秘密鍵分散部を１つの筐体にまとめて構成してもよい。この場合、複数の情報処理装置が１つの秘密鍵分散部を相互に共用する構成であってもよい。
【０１２７】
〔第３の実施形態〕
次に、本発明の第３の実施形態について説明する。本形態は第１の実施形態の変形例であり、公開鍵暗号方式としてID-BASE暗号（IBE: Identity Based Encryption）を用いることにより、登録過程の処理を簡略化可能な形態である。以下、第１の実施形態との相違点を中心に説明を行う。なお、ID-BASE暗号とは、ユーザの固有情報である識別情報（例えば、メールアドレス、ＵＲＬ、利用者名称等）を公開鍵として用いる暗号化方式をいう。ID-BASE暗号については、例えば、「D.Boneh, M. Franklin,“Identity based encryption from the Weil pairing”,Crypto 2001, Lecture Notes in Computer Science, Vol. 2139, Springer-Verlag, pp.213-229, 2001（参考文献２）」等参照。
【０１２８】
＜構成＞
図２８は、本形態の情報記録媒体共用システム２００の全体構成を例示した概念図である。
【０１２９】
図２８に例示するように、情報記録媒体共用システム２００は、ｎ（ｎは２以上の整数）個のＰＣ２１０−１〜ｎ（「情報処理装置PC(i)（i∈{1,...,n}」に相当）と、これらのＰＣ２１０−１〜ｎ間で共用されるＵＳＢメモリ２０（「情報記録媒体」に相当）と、ID-BASE暗号用の鍵を生成するＩＤ−ＢＡＳＥ鍵生成装置２３０とを具備する。
【０１３０】
ＰＣ２１０−１〜ｎは、ＵＳＢメモリ２０へ暗号文を格納し、また、ＵＳＢメモリ２０に格納された暗号文から平文を復号することにより相互に情報を共有する。また、本形態のＰＣ２１０−１〜ｎとＩＤ−ＢＡＳＥ鍵生成装置２３０とは、専用回線又は通信情報の暗号化によって安全性が確保された通信経路によって接続されている。
【０１３１】
図２９（ａ）は、本形態のＰＣ２１０−ｉ（i∈{1,...,n}）の機能構成を例示したブロック図であり、図２９（ｂ）は、本形態のＵＳＢメモリ２０の機能構成を例示したブロック図である。
【０１３２】
図２９（ａ）に示すように、ＰＣ２１０−ｉと第１の実施形態のＰＣ１０−ｉとの相違点は、ＰＣ２１０−ｉが鍵ペア生成部１４ｂ及び秘密鍵分散部１４ｋを具備せず、通信部１７を具備し、鍵秘匿化部１４ｃが鍵秘匿化部１１４ｃに置換され、共通鍵復元部１４ｄが共通鍵復元部２１４ｄに置換された点である。また、図２９（ｂ）に示すように、本形態のＵＳＢメモリ２０の機能構成は第１の実施形態と同様であるが、記憶部２２に格納されるデータが相違する。
【０１３３】
図３０は、本形態のＩＤ−ＢＡＳＥ鍵生成装置２３０の機能構成を例示したブロック図である。
【０１３４】
図３０に示すように、ＩＤ−ＢＡＳＥ鍵生成装置２３０は、乱数生成部２３１ａと、パラメータ設定部２３１ｂと、スカラー倍算部２３１ｃと、制御部２３１ｄと、一時メモリ２３１ｅと、秘密鍵分散部２３１ｋと、内部書き込み部２３２ａと、内部読み込み部２３２ｂと、記憶部２３３と、通信部２３４とを有している。本形態のＩＤ−ＢＡＳＥ鍵生成装置２３０はＣＰＵ、ＲＡＭ、ＲＯＭ、ＬＡＮカード等からなる、通信機能を備えたノイマン型のコンピュータであり、所定のプログラムが読み込まれることにより、図３０に示す機能構成が構築される。
【０１３５】
＜処理＞
次に本形態の処理を説明する。
本形態の処理は、(1)マスター公開鍵MPSや秘密鍵SK(i)を各ＰＣ２１０−ｉに配送する過程（鍵配送過程）、(2)ＵＳＢメモリ２０を共用するｎ個のＰＣ２１０−ｉを、ＵＳＢメモリ２０に登録する過程（登録過程）、(3)ＰＣ２１０−ｉがＵＳＢメモリ２０に暗号文を書き込む過程（書き込み過程）、(4)ＰＣ２１０−ｉがＵＳＢメモリ２０から暗号文を読み込んで復号する過程（読み込み過程）、(5)ＵＳＢメモリ２０から登録を削除する過程（削除過程）に大別できる。以下、各過程を説明する。
【０１３６】
［鍵配送過程］
まず、鍵配送過程を説明する。
鍵配送過程では、ID-BASE鍵生成装置２３０が、公知のID-BASE暗号アルゴリズム（例えば、参考文献２参照）に従い、すべてのＰＣ２１０−ｉに対して共通のマスター公開鍵MPKと、各ＰＣ２１０−ｉ固有の秘密鍵SK(i)とを生成する。そして、各秘密鍵SK(i)の分散情報SSK(i,1)及びSSK(i,2)を生成し、マスター公開鍵MPKと分散情報SSK(i,1)及びSSK(i,2)との配送を行う。以下にこの処理の一例を説明する。
【０１３７】
《鍵生成処理の一例》
まず、ＩＤ−ＢＡＳＥ鍵生成装置２３０（図３０）の乱数生成部２３１ａが楕円曲線E上の点(sx,sy)をランダムに定める。内部書き込み部２３２ａは、当該点(sx,sy)の情報を、マスター秘密鍵MSKとして、ＩＤ−ＢＡＳＥ鍵生成装置２３０の記憶部２３３に安全に格納する。また、ＩＤ−ＢＡＳＥ鍵生成装置２３０のパラメータ設定部２３１ｂが整数パラメータPを定める。そして、スカラー倍算部２３１ｃがマスター秘密鍵MSKを楕円曲線E上でP倍したスカラー倍算値P・MSK（楕円曲線E上の点）を算出する。なお、楕円曲線上でのスカラー倍算には、例えは、二進展開法や窓NAF法等の公知の楕円スカラー倍算方法を用いる。そして、ＩＤ−ＢＡＳＥ鍵生成装置２３０の内部書き込み部２３２ａは、MPK=(P, P・MSK)をマスター公開鍵として記憶部２３３に格納する。
【０１３８】
また、ＩＤ−ＢＡＳＥ鍵生成装置３０の内部読み込み部２３２ｂが、記憶部２３３から、マスター公開鍵MPKと予め格納しておいた各ＰＣ２１０−ｉ固有の情報である識別情報ID(i)とを読み込み、スカラー倍算部２３１ｃに送る。スカラー倍算部２３１ｃは、各識別情報ID(i)とマスター秘密鍵MSKとを用い、楕円曲線E上でマスター秘密鍵MSKをID(i)倍したスカラー倍算値ID(i)・MSK（楕円曲線E上の点）を求める。ＩＤ−ＢＡＳＥ鍵生成装置２３０の内部書き込み部２３２ａは、その演算結果を各ＰＣ２１０−ｉ固有の秘密鍵SK(i)として記憶部２３３に格納する。
【０１３９】
また、ＩＤ−ＢＡＳＥ鍵生成装置３０の内部読み込み部２３２ｂが、記憶部２３３から各ＰＣ２１０−ｉ固有の秘密鍵SK(i)を読み込み、秘密鍵分散部２３１ｋに送る。秘密鍵分散部２３１ｋは、秘密鍵SK(i)から分散情報SSK(i,1)，SSK(i,2)を生成する。
【０１４０】
そして、ＩＤ−ＢＡＳＥ鍵生成装置２３０の通信部２３４は、上述の例のように生成したマスター公開鍵MPKと分散情報SSK(i,1)とを、各SSK(i,1)に対応する各ＰＣ２１０−ｉに送信する。各ＰＣ２１０−ｉは、マスター公開鍵MPKと分散情報SSK(i,1)とを受信し、自らの記憶部１３に格納する。さらに、ＩＤ−ＢＡＳＥ鍵生成装置２３０の通信部２３４は、上述の例のように生成した全ての分散情報SSK(i,2)を、登録処理を行うＰＣ２１０−１に送信する。ＰＣ２１０−１は、全ての分散情報SSK(i,2)を受信し、自らの記憶部１３に格納する（《鍵生成処理の一例》の説明終わり）。
【０１４１】
［登録過程］
次に、登録過程を説明する。
図３１は、本形態の登録過程に関連する各機能ブロックとデータの流れとを示した図であり、図３７は、本形態の登録過程を説明するためのシーケンス図である。なお、以下では、ＰＣ２１０−１がＰＣ２１０−１とＰＣ２１０−２との登録処理を行う例を示す。また、各処理の前提としてＰＣ２１０−ｉには、ＯＳやセキュリティプログラムやアプリケーションソフトウェアがインストールされているものとする。
【０１４２】
まず、ＰＣ２１０−１にＵＳＢメモリ２０が装着・マウントされると、ＰＣ２１０−１の出力部１６は、登録を行うＰＣ２１０−ｉの識別情報ID(i)の入力指示表示を行う。利用者は、この入力指示に従い、入力部１５（図３１（ａ））に対し、登録を行うＰＣ２１０−ｉの識別情報ID(i)を入力する。本形態の例では、ＰＣ２１０−１，２の識別情報ID(1), ID(2)が入力部１５に入力され、これらが記憶部１３に格納される（ステップＳ２０１）。
【０１４３】
次に、ＰＣ２１０−１の共通鍵生成部１４ａが共通鍵KAを生成（例えばランダムに生成）して出力する（ステップＳ２０２）。また、内部読み込み部１２ｂが、記憶部１３からマスター公開鍵MPKと識別情報ID(1), ID(2)とを読み込む。共通鍵KAとマスター公開鍵MPKと識別情報ID(1), ID(2)とは、鍵秘匿化部２１４ｃに入力される。鍵秘匿化部２１４ｃは、マスター公開鍵MPKと識別情報ID(1), ID(2)とを用い、ID-BASE暗号方式によって共通鍵暗号方式の共通鍵KAを暗号化した各暗号文IBE(MPK, ID(1), KA)，IBE(MPK, ID(2), KA)を生成する（ステップＳ２０３）。以下に、前述の《鍵生成処理の一例》で生成されたマスター公開鍵MPKを用いた場合のステップＳ２０３の処理を例示する。なお、この例の識別情報ID(i)は整数であり、例えば、メールアドレスの文字列を数値表現した情報である。
【０１４４】
《ステップＳ２０３の処理の一例》
まず、鍵秘匿化部２１４ｃの乱数生成部２１４ｃａ（図３１（ａ））が前述の楕円曲線E上の点r=(rx,ry)をランダムに定め、鍵秘匿化部２１４ｃのスカラー倍算部２１４ｃｂが楕円曲線E上の点rを楕円曲線E上でID(i)倍したスカラー倍算値ID(i)・r（楕円曲線E上の点）を算出する。さらに、鍵秘匿化部２１４ｃのスカラー倍算部２１４ｃｂは、楕円曲線E上の点rを楕円曲線E上でP（Pはマスター公開鍵MPKの一部）倍したスカラー倍算値P・r（楕円曲線E上の点）を算出する。
【０１４５】
次に、鍵秘匿化部２１４ｃのペアリング演算部２１４ｃｃが、公知のペアリング関数Pairに、ID(i)・rとP・MSK（マスター公開鍵MPKの一部）とを代入した関数値CK(i)=Pair(ID(i)・r, P・MSK)を算出する。なお、ペアリング関数Pairは、例えば、Weil PairingやTate Pairingであり、Pair(ID(i)・r, P・MSK)= Pair(P・r, ID(i)・MSK)の関係を満たす（参考文献２や「Alfred. J. Menezes，ELLIPTIC CURVE PUBLIC KEY CRYPTOSYSTEMS， KLUWER ACADEMIC PUBLISHERS， ISBN0-7923-9368-6，pp. 61-81（参考文献３）」等参照）。次に、鍵秘匿化部２１４ｃの共通鍵暗号部１４ｃｄが、関数値CK(i)を鍵とし、共通鍵暗号方式（CamelliaやAES等）によって共通鍵KAを暗号化し、その暗号文CE(CK(i),KA)とスカラー倍算値P・rとの組を暗号文IBE(MPK, ID(i), KA)=(CE(CK(i),KA), P・r)として出力する（《ステップＳ２０３の処理の一例》の説明終わり）。
【０１４６】
また、ＰＣ２１０−１の内部読み込み部１２ｂは記憶部１３からさらに分散情報SSK(1,2), SSK(2,2)を読み込み、分散情報SSK(1,2), SSK(2,2)と識別情報ID(1),ID(2)と暗号文IBE(MPK, ID(1), KA) ,IBE(MPK, ID(2), KA)とは、外部書き込み部１１ａに送られる。外部書き込み部１１ａは、これらをＵＳＢメモリ２０のインタフェース部２１（図３１（ｂ））に送り、インタフェース部２１は、識別情報ID(1)と暗号文IBE(MPK, ID(1), KA)と分散情報SSK(1,2)とを関連付け、識別情報ID(2)と暗号文IBE(MPK, ID(2), KA)と分散情報SSK(2,2)とを関連付け、それらを記憶部２２の領域２２ｂに格納する（ステップＳ２０４）。これらの情報がＵＳＢメモリ２０に格納されると、ＰＣ２１０−１の内部書き込み部１２ａは、記憶部１３から分散情報SSK(1,2), SSK(2,2)を削除する。
【０１４７】
以上により、ＰＣ２１０−１，２の登録が終了する。なお、説明の簡略化のため、ここではＰＣ２１０−１，２の登録のみを行う場合を例示した。しかし、同様な方法によりＰＣ２１０−１がその他のＰＣ２１０−ｉの登録を行うことも可能である。以下では、全てのＰＣ２１０−ｉ（i∈{1,...,n}）が登録され、各識別情報ID(i)と暗号文IBE(MPK, ID(i), KA)と分散情報SSK(i,2)がＵＳＢメモリ２０の記憶部２２の領域２２ｂに格納されたものとする。
【０１４８】
［書き込み過程・読み込み過程］
次に、本形態の書き込み過程及び読み込み過程を説明する。
図３２は、本形態の書き込み過程に関連する各機能ブロックとデータの流れとを示した図であり、図３３は、本形態の読み込み過程に関連する各機能ブロックとデータの流れとを示した図である。また、図３８は、本形態の書き込み過程及び読み込み過程を説明するためのシーケンス図である。なお、ここでは、ＰＣ２１０−１がＵＳＢメモリ２０に暗号文を書き込み（書き込み過程）、ＰＣ２１０−２がＵＳＢメモリ２０から暗号文を読み込んで復号する（読み込み過程）例を示す。
【０１４９】
まず、ＰＣ２１０−１にＵＳＢメモリ２０が装着・マウントされているものとする。この状態で、WordやExcel（登録商標）等のアプリケーションソフトウェアを実行するＰＣ２１０−１のアプリケーション実行部１４ｈ（図３２（ａ））が、制御部１４ｉに対し、平文M(1)の暗号文のＵＳＢメモリ２０への書き込み要求を行う。これをトリガとして、ＰＣ２１０−１の内部読み込み部１２ｂが記憶部１３から識別情報ID(1)を読み込み、これをＰＣ２１０−１の外部読み込み部１１ｂに送る。当該外部読み込み部１１ｂは、ＵＳＢメモリ２０の記憶部２２の領域２２ｂ（図３２（ｂ））から、識別情報ID(1)に関連付けられている暗号文IBE(MPK, ID(1), KA)を読み込む（ステップＳ２１１）。
【０１５０】
当該暗号文IBE(MPK, ID(1), KA)は、ＰＣ２１０−１の共通鍵復元部２１４ｄ（図３２（ａ））に送られる。また、これをトリガとして、ＰＣ２１０−１の内部読み込み部１２ｂが、記憶部１３から分散情報SSK(1,1)を読み込み、分散情報SSK(1,1)をＰＣ２１０−１の秘密鍵復元部１４ｍに送る（ステップＳ２１２）。さらに、ＰＣ２１０−１の外部読み込み部１１ｂが、ＵＳＢメモリ２０の記憶部２２の領域２２ｂから、識別子ID(1)に関連付けられている分散情報SSK(1,2)を読み込み、それをＰＣ２１０−１の秘密鍵復元部１４ｍに送る（ステップＳ２１３）。ＰＣ２１０−１の秘密鍵復元部１４ｍは、当該分散情報SSK(1,1)と分散情報SSK(1,2)とを用いてＰＣ２１０−１の秘密鍵SK(1)を復元する（ステップＳ２１４）。
【０１５１】
復元された秘密鍵SK(1)は共通鍵復元部２１４ｄに送られる。共通鍵復元部２１４ｄは、秘密鍵SK(1)を用いて暗号文IBE(MPK, ID(1), KA)を復号して共通鍵KA〔KA=PD(SK(1), IBE(MPK, ID(1), KA))〕を抽出し、共通鍵KAを暗号化部１４ｅに送る（ステップＳ２１５）。以下に《ステップＳ２０３の処理の一例》で暗号化された暗号文IBE(MPK, ID(1), KA)の復号処理を例示する。
【０１５２】
《ステップＳ２１５の処理の一例》
この例では、まず、共通鍵復元部２１４ｄのペアリング演算部２１４ｄａ（図３２（ａ））が、前述のペアリング関数Pairに、暗号文IBE(MPK, ID(i), KA)=(CE(CK(i),KA), P・r)の一部であるP・rと、秘密鍵SK(1)=ID(1)・MSKとを代入したPair(P・r, ID(1)・MSK)を算出する。ここで、前述したペアリング関数Pairの性質〔Pair(ID(i)・r, P・MSK)= Pair(P・r, ID(i)・MSK)〕より、Pair(P・r, ID(1)・MSK)= Pair(ID(1)・r, P・MSK)= CK(i)を満たす。次に、共通鍵復元部２１４ｄの共通鍵復号部２１４ｄｂが、このPair(P・r, ID(1)・MSK)= CK(i)を用い、暗号文IBE(MPK, ID(i), KA)=(CE(CK(i),KA), P・r) の一部であるCE(CK(i),KA)を復号してKAを抽出する（《ステップＳ２１５の処理の一例》の説明終わり）。
【０１５３】
また、ＰＣ２１０−１のアプリケーション実行部１４ｈは、平文M(1)をその暗号化部１４ｅに送り、当該暗号化部１４ｅは、共通鍵暗号方式により、共通鍵KAを用いて平文M(1)を暗号化した暗号文SE(KA, M(1))を生成する（ステップＳ２１６）。
【０１５４】
生成された暗号文SE(KA, M(1))は、外部書き込み部１１ａによって、ＵＳＢメモリ２０のインタフェース部２１に送られ、そこから記憶部２２の領域２２ｃ（図３２（ｂ））に格納される（ステップＳ２１７／書き込み過程終了）。
【０１５５】
次に、ＰＣ２１０−２にＵＳＢメモリ２０が装着・マウントされる。この状態で、ＰＣ２１０−２のアプリケーション実行部１４ｈは、制御部１４ｉに対し、暗号文SE(KA, M(1))のＵＳＢメモリ２０からの読み込み要求を行う。これをトリガとして、制御部１４ｉはＰＣ２１０−２の外部読み込み部１１ｂ（図３３（ａ））に指示を与え、ＰＣ２１０−２の外部読み込み部１１ｂは、ＵＳＢメモリ２０の記憶部２２の領域２２ｃ（図３３（ｂ））から暗号文SE(KA, M(1))を読み込み（ステップＳ２１８）、さらに、領域２２ｂから暗号文IBE(MPK, ID(2), KA)を読み込む（ステップＳ２１９）。
【０１５６】
次に、ＰＣ２１０−２の内部読み込み部１２ｂが、記憶部１３から分散情報SSK(2,1)を読み込み、分散情報SSK(2,1)をＰＣ２１０−２の秘密鍵復元部１４ｍに送る（ステップＳ２２０）。さらに、ＰＣ２１０−２の外部読み込み部１１ｂが、ＵＳＢメモリ２０の記憶部２２の領域２２ｂから、識別子ID(2)に関連付けられている分散情報SSK(2,2)を読み込み、それをＰＣ２１０−２の秘密鍵復元部１４ｍに送る（ステップＳ２２１）。ＰＣ２１０−２の秘密鍵復元部１４ｍは、当該分散情報SSK(2,1)と分散情報SSK(2,2)とを用いてＰＣ２１０−２の秘密鍵SK(2)を復元する（ステップＳ２２２）。
【０１５７】
次に、ＰＣ２１０−２の共通鍵復元部２１４ｄが、復元された秘密鍵SK(2)を用いて暗号文IBE(MPK, ID(2), KA)を復号して共通鍵KA〔KA=PD(SK(2), IBE(MPK, ID(2), KA))〕を抽出する（ステップＳ２２３）。その後、ＰＣ２１０−２の復号化部１４ｆが、当該共通鍵KAを用いて暗号文SE(KA, M(1))を復号して平文M(1)〔M(1)=SD(KA, SE(KA, M(1))〕を抽出する（ステップＳ２２４）。
【０１５８】
抽出された平文M(1)は、ＰＣ２１０−２のアプリケーション実行部１４ｈに送られる（読み込み過程終了）。
【０１５９】
［削除過程］
次に、本形態の削除過程について説明する。
図３４〜３６は、本形態の削除過程に関連する各機能ブロックとデータの流れとを示した図である。また、図３９は、本形態の削除過程を説明するためのシーケンス図である。
【０１６０】
本形態の削除過程は、単に登録削除対象のＰＣ２１０−ｗのデータをＵＳＢメモリ２０から削除するだけではなく、これと併せて平文の暗号化に用いる共通鍵KAを再設定し、ＵＳＢメモリ２０に格納されている暗号文も生成し直す。これにより、登録が削除されたＰＣ２１０−ｗが、過去に取得した共通鍵KAを用い、ＵＳＢメモリ２０に格納された暗号文を復号できてしまうという事態を防止できる。以下では、ＰＣ２１０−１がＵＳＢメモリ２０からＰＣ２１０−２の登録を削除する例を示す。
【０１６１】
まず、ＰＣ２１０−１にＵＳＢメモリ２０が装着・マウントされているものとする。この状態で、利用者が登録削除対象を例えば以下のように指定する。まず、外部読み込み部１１ｂがＵＳＢメモリ２０の記憶部２２の領域２２ｂから全ての識別情報ID(i)を読み込む。各識別情報ID(i)は、出力部１６から出力される（例えば、画面上に表示される）。利用者は、出力された識別情報ID(i)を参照しながら、削除対象の識別情報ID(w)を入力部１５に入力する。この例では識別情報ID(2)が入力部１５に入力されたものにする。制御部１４ｉは、この入力結果に基づき以下のように削除過程を実行させる。
【０１６２】
まず、ＰＣ２１０−１の内部読み込み部１２ｂが、記憶部１３から識別情報ID(1)を読み込み、識別情報ID(1)を外部読み込み部１１ｂ（図３４（ａ））に送る。当該外部読み込み部１１ｂ（図３４（ａ））は、ＵＳＢメモリ２０の記憶部２２の領域２２ｂ（図３４（ｂ））から、識別情報ID(1)に関連付けられた暗号文IBE(MPK, ID(1), KA)を読み込む（ステップＳ２３１）。
【０１６３】
次に、ＰＣ２１０−１の内部読み込み部１２ｂが、記憶部１３から分散情報SSK(1,1)を読み込み、分散情報SSK(1,1)をＰＣ２１０−１の秘密鍵復元部１４ｍに送る（ステップＳ２３２）。さらに、ＰＣ２１０−１の外部読み込み部１１ｂが、ＵＳＢメモリ２０の記憶部２２の領域２２ｂから、識別子ID(1)に関連付けられている分散情報SSK(1,2)を読み込み、それをＰＣ２１０−１の秘密鍵復元部１４ｍに送る（ステップＳ２３３）。ＰＣ２１０−１の秘密鍵復元部１４ｍは、当該分散情報SSK(1,1)と分散情報SSK(1,2)とを用いてＰＣ２１０−１の秘密鍵SK(1)を復元する（ステップＳ２３４）。
【０１６４】
共通鍵復元部２１４ｄは、復元された秘密鍵SK(1)を用い、ＵＳＢメモリ２０から読み込まれた暗号文IBE(MPK, ID(1), KA)を復号して共通鍵KA〔KA=PD(SK(1), IBE(MPK, ID(1), KA))〕を抽出する（ステップＳ２３５）。また、ＰＣ２１０−１の共通鍵生成部１４ａが、新たな共通鍵KAnewを生成する（ステップＳ２３６）。
【０１６５】
また、ＰＣ２１０−１の外部読み込み部１１ｂが、ＵＳＢメモリ２０からＰＣ２１０−ｉに対応する暗号文SE(KA, M(i))(i∈{1,...,n})を読み込む（ステップＳ２３７）。ＰＣ２１０−１の復号化部１４ｆは、共通鍵復元部２１４ｄで得られた共通鍵KAを用い、当該暗号文SE(KA, M(i))を復号して平文M(i)〔M(i)=SD(KA, SE(KA, M(i))〕を抽出する（ステップＳ２３８）。
【０１６６】
次に、ＰＣ２１０−１の暗号化部１４ｅに、抽出された各平文M(i)と新たな共通鍵KAnewとが入力され、当該暗号化部１４ｅは、新たな共通鍵KAnewを用いて各平文M(i)を暗号化した暗号文SE(KAnew, M(i))を生成する（ステップＳ２３９）。各暗号文SE(KAnew, M(i))は、ＰＣ２１０−１の外部書き込み部１１ａに送られる。当該外部書き込み部１１ａは、当該暗号文SE(KAnew, M(i))をＵＳＢメモリ２０のインタフェース部２１に送り、インタフェース部２１は、これらを記憶部２２の領域２２ｃ（図３４（ｂ））に格納する（ステップＳ２４０）。
【０１６７】
次に、ＰＣ２１０−１の外部読み込み部１１ｂ（図３５（ａ））が、ＵＳＢメモリ２０の記憶部２２の領域２２ｂから、登録削除対象のＰＣ２１０−２以外のＰＣ２１０−ｓ（ｓ≠２）の識別情報ID(s)を読み込む（ステップＳ２４１）。
【０１６８】
ステップＳ２４１で読み込まれた識別情報ID(s)とステップＳ２３６で新たに生成された共通鍵KAnewとは鍵秘匿化部２１４ｃに入力される。また、内部読み込み部１２ｂが記憶部１３からマスター公開鍵MPKを読み込み、当該マスター公開鍵MPKが鍵秘匿化部２１４ｃに入力される。そして、鍵秘匿化部２１４ｃは、マスター公開鍵MPKと識別情報ID(s)とを用い、ID-BASE暗号方式によって新たな共通鍵KAnewを暗号化した暗号文IBE(MPK, ID(s), KAnew)を生成する（ステップＳ２４２）。各暗号文IBE(MPK, ID(s), KAnew)は、ＰＣ２１０−１の外部書き込み部１１ａによってＵＳＢメモリ２０のインタフェース部２１に送られる。当該インタフェース部２１は、各暗号文IBE(MPK, ID(s), KAnew)を、ＵＳＢメモリ２０の記憶部２２の領域２２ｂに、それぞれ識別情報ID(s)と対応付けて格納（図３５（ｂ））する（ステップＳ２４３）。
【０１６９】
次に、ＰＣ２１０−１の削除部１４ｇ（図３６（ａ））が削除命令を出し、これを受けた外部書き込み部１１ａは、USBメモリ２０の記憶部２２の領域２２ｃ（図３６（ｂ））から暗号文SE(KA, M(i))を削除し、領域２２ｂからIBE(MPK, ID(i), KA)、識別情報ID(2)を削除する（ステップＳ２４４）。
【０１７０】
＜本形態の特徴＞
以上のように、本形態では、秘密鍵の分散情報をPCとUSBメモリとに分散して格納することとしたため、PCに格納された情報が第三者に盗聴された場合であっても、直ちに秘密鍵が第三者に知られることはない。これにより安全性を向上させることができる。また、本形態では、公開鍵暗号方式としてID-BASE暗号を用いることとしたため、登録過程の処理を簡略化できる。
【０１７１】
〔第４の実施形態〕
次に本発明の第４の実施形態について説明する。
本形態は第３の実施形態の変形例であり、共通鍵KAを生成したＰＣ２１０−１以外のＰＣも登録処理を実行する例である。以下では、本形態の登録処理のみを説明する。
【０１７２】
［登録過程］
前提として、第１の実施形態のようにＰＣ２１０−１，２が登録され、ＵＳＢメモリ２０に暗号文IBE(MPK, ID(1), KA), IBE(MPK, ID(2), KA)と分散情報SSK(1,2), SSK(2,2)が格納され、各ＰＣ２１０−ｉの記憶部に分散情報SSK(i,1)が格納されているものとする。本形態では、共通鍵KAを生成したＰＣ２１０−１以外のＰＣ２１０−２が、ＰＣ２１０−３の登録処理を行う例を説明する。
【０１７３】
図４０は、本形態の登録過程を説明するためのシーケンス図である。
【０１７４】
まず、ＰＣ２１０−２にＵＳＢメモリ２０が装着・マウントされると、ＰＣ２１０−２の出力部１６（図２９）は、登録を行うＰＣ２１０−ｉの識別情報ID(i)の入力指示表示を行う。利用者は、この入力指示に従い、入力部１５に、登録を行うＰＣ２１０−ｉの識別情報ID(i)を入力する。本形態の例では、ＰＣ２１０−３の識別情報ID(3)が入力部１５に入力され、これらが記憶部１３に格納される（ステップＳ２５１）。
【０１７５】
次に、ＰＣ２１０−２の外部読み込み部１１ｂが、ＵＳＢメモリ２０の記憶部２２の領域２２ｂから識別情報ID(2)に対応する暗号文IBE(MPK, ID(2), KA)を読み込む（ステップＳ２５２）。また、ＰＣ２１０−２の内部読み込み部１２ｂが、記憶部１３から分散情報SSK(2,1)を読み込み、分散情報SSK(2,1)をＰＣ２１０−２の秘密鍵復元部１４ｍに送る（ステップＳ２５３）。さらに、ＰＣ２１０−２の外部読み込み部１１ｂが、ＵＳＢメモリ２０の記憶部２２の領域２２ｂから、識別子ID(2)に関連付けられている分散情報SSK(2,2)を読み込み、それをＰＣ２１０−２の秘密鍵復元部１４ｍに送る（ステップＳ２５４）。ＰＣ２１０−２の秘密鍵復元部１４ｍは、当該分散情報SSK(2,1)と分散情報SSK(2,2)とを用いてＰＣ２１０−２の秘密鍵SK(2)を復元する（ステップＳ２５５）。
【０１７６】
そして、ＰＣ２１０−２の共通鍵復元部２１４ｄが、復元された秘密鍵SK(2)を用いて暗号文IBE(MPK, ID(2), KA)を復号し、共通鍵KA〔KA=PD(SK(2), IBE(MPK, ID(2), KA))〕を抽出する（ステップＳ２５６）。
【０１７７】
次に、内部読み込み部１２ｂが、記憶部１３からマスター公開鍵MPKと識別情報ID(3)とを読み込む。共通鍵KAとマスター公開鍵MPKと識別情報ID(3)とは、鍵秘匿化部２１４ｃに入力される。鍵秘匿化部２１４ｃは、マスター公開鍵MPKと識別情報ID(3)とを用い、ID-BASE暗号方式によって共通鍵暗号方式の共通鍵KAを暗号化した各暗号文IBE(MPK, ID(3), KA)を生成する（ステップＳ２５７）。
【０１７８】
内部読み込み部１２ｂが記憶部１３から読み込んだ識別情報ID(3)と、鍵秘匿化部２１４ｃが生成した暗号文IBE(MPK, ID(3), KA)とは、外部書き込み部１１ａに送られる。外部書き込み部１１ａは、これらをＵＳＢメモリ２０のインタフェース部２１に送り、インタフェース部２１は、識別情報ID(3)と暗号文IBE(MPK, ID(3), KA)とを関連付け、それらを記憶部２２の領域２２ｂに格納する（ステップＳ２５８）。
【０１７９】
以上により、ＰＣ２１０−３の登録処理が完了する。なお、登録されたＰＣ２１０−３は、同様な処理によってその他のＰＣ２１０の登録処理を実行することができる。また、第４の実施形態の変形例として、共通鍵KAを生成するＰＣ２１０−１が、暗号文IBE(MPK, ID(1), KA)をＵＳＢメモリ２０に格納した後、暗号文IBE(MPK, ID(1), KA)を復号して共通鍵KAを取得し、他のＰＣ２１０−ｉに対応する暗号文IBE(MPK, ID(i), KA)を生成してもよい。
【０１８０】
〔第５の実施形態〕
次に、本発明の第５の実施形態について説明する。本形態は第３の実施形態の変形例であり、PC-i（「情報処理装置」に相当）の記憶部に格納された分散情報SSK(i,1)と、USBメモリ（「情報記録媒体」に相当）に格納された分散情報SSK(i,2)と、サーバ装置１２０の１２２（「第２情報記録媒体」に相当）に格納された分散情報SSK(i,3)とから秘密鍵SK(i)を復元する形態である。以下では、第２、３の実施形態との相違点を中心に説明を行い、第３の実施形態と共通する事項については説明を省略する。
【０１８１】
＜構成＞
図４１は、本形態の情報記録媒体共用システム３００の全体構成を例示した概念図である。
【０１８２】
図４１に例示するように、情報記録媒体共用システム３００は、ｎ（ｎは２以上の整数）個のＰＣ３１０−１〜ｎ（「情報処理装置PC(i)（i∈{1,...,n}」に相当）と、これらのＰＣ３１０−１〜ｎ間で共用されるＵＳＢメモリ２０（「情報記録媒体」に相当）と、ハードディスク１２２（「第２情報記録媒体」に相当）を具備するサーバ装置１２０と、ID-BASE暗号用の鍵を生成するＩＤ−ＢＡＳＥ鍵生成装置３３０とを具備する。
【０１８３】
図４２（ａ）は、本形態のＰＣ３１０−ｉ（i∈{1,...,n}）の機能構成を例示したブロック図であり、図４２（ｂ）は、本形態のＵＳＢメモリ２０の機能構成を例示したブロック図である。
【０１８４】
図４２（ａ）に示すように、ＰＣ３１０−ｉと第３の実施形態のＰＣ１０−ｉとの相違点は、秘密鍵復元部１４ｍが秘密鍵復元部１１４ｍに置換された点である。また、図４２（ｂ）に示すように、本形態のＵＳＢメモリ２０の機能構成は第１の実施形態と同様であるが、記憶部２２に格納されるデータが相違する。
【０１８５】
図４３は、本形態のＩＤ−ＢＡＳＥ鍵生成装置３３０の機能構成を例示したブロック図である。
【０１８６】
図４３に示すように、本形態のＩＤ−ＢＡＳＥ鍵生成装置３３０と第３の実施形態のＩＤ−ＢＡＳＥ鍵生成装置２３０との相違点は、秘密鍵分散部２３１ｋが秘密鍵分散部３３１ｋに置換された点である。
【０１８７】
＜処理＞
次に本形態の処理を説明する。
本形態の処理は、(1)鍵配送過程 、(2)登録過程、(3)書き込み過程、(4)読み込み過程、(5)削除過程に大別できる。以下、各過程を説明する。
【０１８８】
［鍵配送過程］
まず、鍵配送過程を説明する。
鍵配送過程では、ID-BASE鍵生成装置３３０が、公知のID-BASE暗号アルゴリズム（例えば、参考文献２参照）に従い、すべてのＰＣ３１０−ｉに対して共通のマスター公開鍵MPKと、各ＰＣ３１０−ｉ固有の秘密鍵SK(i)とを生成する。そして、各秘密鍵SK(i)の分散情報SSK(i,1),SSK(i,2)及びSSK(i,3)を生成し、マスター公開鍵MPKと分散情報SSK(i,1),SSK(i,2)及びSSK(i,3)との配送を行う。
【０１８９】
具体的には、まず、第３の実施形態と同様な手順により、マスター公開鍵MPKと、各ＰＣ３１０−ｉ固有の秘密鍵SK(i)とを生成する。そして、ＩＤ−ＢＡＳＥ鍵生成装置３３０の秘密鍵分散部３３１ｋは、秘密鍵SK(i)から分散情報SSK(i,1)，SSK(i,2), SSK(i,3)を生成する。
【０１９０】
そして、ＩＤ−ＢＡＳＥ鍵生成装置３３０の通信部２３４は、上述の例のように生成したマスター公開鍵MPKと分散情報SSK(i,1)とを、各SSK(i,1)に対応する各ＰＣ３１０−ｉに送信する。各ＰＣ３１０−ｉは、マスター公開鍵MPKと分散情報SSK(i,1)とを受信し、自らの記憶部１３に格納する。さらに、ＩＤ−ＢＡＳＥ鍵生成装置３３０の通信部２３４は、上述の例のように生成した全ての分散情報SSK(i,2)及びSSK(i,3)を、登録処理を行うＰＣ３１０−１に送信する。ＰＣ３１０−１は、全ての分散情報SSK(i,2)及びSSK(i,3)を受信し、自らの記憶部１３に格納する。
【０１９１】
［登録過程］
次に、登録過程を説明する。
図４４は、本形態の登録過程に関連する各機能ブロックとデータの流れとを示した図であり、図４８は、本形態の登録過程を説明するためのシーケンス図である。なお、以下では、ＰＣ３１０−１がＰＣ３１０−１とＰＣ３１０−２との登録処理を行う例を示す。
【０１９２】
まず、第３の実施形態と同様に、ＰＣ３１０−１，２の識別情報ID(1), ID(2)がＰＣ３１０−１（図４４（ａ））の入力部１５に入力され、これらが記憶部１３に格納される（ステップＳ２６１）。次に、ＰＣ３１０−１の共通鍵生成部１４ａが共通鍵KAを生成し（ステップＳ２６２）、鍵秘匿化部２１４ｃが、マスター公開鍵MPKと識別情報ID(1), ID(2)とを用い、ID-BASE暗号方式によって共通鍵暗号方式の共通鍵KAを暗号化した各暗号文IBE(MPK, ID(1), KA)，IBE(MPK, ID(2), KA)を生成する（ステップＳ２６３）。そして、第３の実施形態と同様に、分散情報SSK(1,2), SSK(2,2)と識別情報ID(1),ID(2)と暗号文IBE(MPK, ID(1), KA) ,IBE(MPK, ID(2), KA)とが、外部書き込み部１１ａに送られる。外部書き込み部１１ａは、これらをＵＳＢメモリ２０（図４４（ｂ））のインタフェース部２１に送り、インタフェース部２１は、識別情報ID(1)と暗号文IBE(MPK, ID(1), KA)と分散情報SSK(1,2)とを関連付け、識別情報ID(2)と暗号文IBE(MPK, ID(2), KA)と分散情報SSK(2,2)とを関連付け、それらを記憶部２２の領域２２ｂに格納する（ステップＳ２６４）。さらに、ＰＣ３１０−１の内部読み込み部１２ｂが、記憶部１３から分散情報SSK(1,3), SSK(2,3)と識別情報ID(1),ID(2)とを読み込み、これらの分散情報SSK(1,3), SSK(2,3)と識別情報ID(1),ID(2)とは外部書き込み部１１ａに送られる。外部書き込み部１１ａは、これらを相互に関連付けてサーバ装置１２０（図４４（ｃ））のハードディスク１２２に格納する（ステップＳ２６５）。その後、ＰＣ２１０−１の内部書き込み部１２ａは、記憶部１３から分散情報SSK(1,2), SSK(2,2), SSK(1,3), SSK(2,3)を削除する。
【０１９３】
以上により、ＰＣ３１０−１，２の登録が終了する。なお、説明の簡略化のため、ここではＰＣ３１０−１，２の登録のみを行う場合を例示した。しかし、同様な方法によりＰＣ３１０−１がその他のＰＣ３１０−iの登録を行うことも可能である。以下では、全てのＰＣ３１０−ｉ（i∈{1,...,n}）が登録され、各識別情報ID(i)と暗号文IBE(MPK, ID(i), KA)と分散情報SSK(i,2)がＵＳＢメモリ２０の記憶部２２の領域２２ｂに格納され、各識別情報ID(i)と分散情報SSK(i,3)がサーバ装置１２０のハードディスク１２２に格納されたものとする。
【０１９４】
［書き込み過程・読み込み過程］
次に、本形態の書き込み過程及び読み込み過程を説明する。
図４５は、本形態の書き込み過程に関連する各機能ブロックとデータの流れとを示した図であり、図４６は、本形態の読み込み過程に関連する各機能ブロックとデータの流れとを示した図である。また、図４９は、本形態の書き込み過程及び読み込み過程を説明するためのシーケンス図である。なお、ここでは、ＰＣ３１０−１がＵＳＢメモリ２０に暗号文を書き込み（書き込み過程）、ＰＣ３１０−２がＵＳＢメモリ２０から暗号文を読み込んで復号する（読み込み過程）例を示す。
【０１９５】
まず、ＰＣ３１０−１とＵＳＢメモリ２０によって、第３の実施形態のステップＳ２１１と同じ処理が実行される。その後、ＰＣ３１０−１（図４５（ａ））の内部読み込み部１２ｂが、記憶部１３から分散情報SSK(1,1)を読み込み、分散情報SSK(1,1)をＰＣ３１０−１の秘密鍵復元部１１４ｍに送る（ステップＳ２７１）。さらに、ＰＣ３１０−１の外部読み込み部１１ｂが、ＵＳＢメモリ２０（図４５（ｂ））の記憶部２２の領域２２ｂから、識別子ID(1)に関連付けられている分散情報SSK(1,2)を読み込み、それをＰＣ３１０−１の秘密鍵復元部１１４ｍに送る（ステップＳ２７２）。また、ＰＣ３１０−１の外部読み込み部１１ｂが、サーバ装置１２０（図４５（ｃ））のハードディスク１２２から、識別子ID(1)に関連付けられている分散情報SSK(1,3)を読み込み、それをＰＣ３１０−１の秘密鍵復元部１１４ｍに送る（ステップＳ２７３）。ＰＣ３１０−１の秘密鍵復元部１１４ｍは、当該分散情報SSK(1,1)と分散情報SSK(1,2)と分散情報SSK(1,3)とを用いてＰＣ３１０−１の秘密鍵SK(1)を復元する（ステップＳ２７４）。
【０１９６】
次に、ＰＣ３１０−１とＵＳＢメモリ２０とＰＣ３１０−２において、第３の実施形態のステップＳ２１５〜Ｓ２１９の処理を行う。その後、ＰＣ３１０−２（図４６（ａ））の内部読み込み部１２ｂが、記憶部１３から分散情報SSK(2,1)を読み込み、分散情報SSK(2,1)をＰＣ３１０−２の秘密鍵復元部１１４ｍに送る（ステップＳ２７５）。さらに、ＰＣ３１０−２の外部読み込み部１１ｂが、ＵＳＢメモリ２０（図４６（ｂ））の記憶部２２の領域２２ｂから、識別子ID(2)に関連付けられている分散情報SSK(2,2)を読み込み、それをＰＣ３１０−２の秘密鍵復元部１１４ｍに送る（ステップＳ２７６）。また、ＰＣ３１０−２の外部読み込み部１１ｂが、サーバ装置１２０（図４６（ｃ））のハードディスク１２２から、識別子ID(2)に関連付けられている分散情報SSK(2,3)を読み込み、それをＰＣ３１０−２の秘密鍵復元部１１４ｍに送る（ステップＳ２７７）。ＰＣ３１０−２の秘密鍵復元部１１４ｍは、当該分散情報SSK(2,1)と分散情報SSK(2,2)と分散情報SSK(2,3)とを用いてＰＣ３１０−２の秘密鍵SK(2)を復元する（ステップＳ２７８）。
【０１９７】
その後、第３の実施形態のステップＳ２２４〜Ｓ２２５と同じ処理を実行する。
【０１９８】
［削除過程］
次に、本形態の削除過程について説明する。
図４７は、本形態の削除過程に関連する各機能ブロックとデータの流れとを示した図である。また、図５０は、本形態の削除過程を説明するためのシーケンス図である。
【０１９９】
まず、ＰＣ３１０−１とＵＳＢメモリ２０とによって、第３の実施形態のステップＳ２３１と同じ処理が実行される。その後、ＰＣ３１０−１（図４７（ａ））の内部読み込み部１２ｂが、記憶部１３から分散情報SSK(1,1)を読み込み、分散情報SSK(1,1)をＰＣ３１０−１の秘密鍵復元部１１４ｍに送る（ステップＳ２８１）。さらに、ＰＣ３１０−１の外部読み込み部１１ｂが、ＵＳＢメモリ２０（図４７（ｂ））の記憶部２２の領域２２ｂから、識別子ID(1)に関連付けられている分散情報SSK(1,2)を読み込み、それをＰＣ３１０−１の秘密鍵復元部１１４ｍに送る（ステップＳ２８２）。また、ＰＣ３１０−１の外部読み込み部１１ｂが、サーバ装置１２０（図４７（ｃ））のハードディスク１２２から、識別子ID(1)に関連付けられている分散情報SSK(1,3)を読み込み、それをＰＣ３１０−１の秘密鍵復元部１１４ｍに送る（ステップＳ２８３）。ＰＣ３１０−１の秘密鍵復元部１１４ｍは、当該分散情報SSK(1,1)と分散情報SSK(1,2)と分散情報SSK(1,3)とを用いてＰＣ３１０−１の秘密鍵SK(1)を復元する（ステップＳ２８４）。
【０２００】
その後、ＰＣ３１０−１とＵＳＢメモリ２０とによって、第３の実施形態のステップＳ２３５〜Ｓ２４４と同じ処理が実行される。
【０２０１】
＜本形態の特徴＞
以上のように、本形態では、秘密鍵の分散情報をPCとUSBメモリとサーバ装置のハードディスクとに分散して格納することとしたため、より安全性を向上させることができる。
【０２０２】
なお、第５の実施形態では、秘密鍵の分散情報をPCとUSBメモリとサーバ装置のハードディスクとに分散して格納することとしたが、秘密鍵の分散情報をPCと複数のUSBメモリとに分散して格納することとしてもよいし、複数のサーバ装置のハードディスクに分散して格納することとしてもよい。さらには、秘密鍵の分散情報をPCと複数のUSBメモリと複数のサーバ装置のハードディスクとに分散して格納することとしてもよい。
【０２０３】
〔その他の変形例等〕
本発明は上述の実施の形態に限定されるものではない。例えば、上述の各実施形態では、特定のＰＣを登録から削除する削除過程において共通鍵を再生成し、ＵＳＢメモリの情報を書き換えることとしたが、特定のＰＣを登録から削除することなく共通鍵を再生成し、ＵＳＢメモリの情報を書き換える処理を行ってもよい。このような処理は、例えば、共通鍵が第三者に漏えいした場合等に有効である。
【０２０４】
また、上述の各実施形態では、情報処理装置の一例としてパーソナルコンピュータを例示し、情報記録媒体の一例としてＵＳＢメモリを例示し、第２情報記録媒体の一例としてハードディスクを例示した。しかし、本発明はこれらに限定されるものではない。例えば、情報処理装置として、携帯電話機、携帯情報端末（ＰＤＡ）等を用いてもよい。また、情報記録媒体として、ＤＶＤ−ＲＡＭ（Random Access Memory）、ＣＤ−Ｒ（Recordable）／ＲＷ（ReWritable）、ＭＯ（Magneto-Optical disc）等を用いてもよいし、ハードディスク等の非可搬型の記録媒体を用いてもよいし、携帯電話機、携帯情報端末（ＰＤＡ）、パーソナルコンピュータ等の計算装置を具備する装置のメモリを用いてもよい。また、第２情報記録媒体として、ＤＶＤ−ＲＡＭ、ＣＤ−Ｒ／ＲＷ、ＭＯ等を用いてもよいし、ＵＳＢメモリ等の可搬型記録媒体を用いてもよいし、携帯電話機、携帯情報端末（ＰＤＡ）、パーソナルコンピュータ等の計算装置を具備する装置のメモリを用いてもよい。
【０２０５】
また、複数の情報記録媒体を用い、情報記録媒体に格納される情報を分散して格納してもよい。例えば、ＵＳＢメモリ２０の記憶部２２の領域２２ｂに格納される情報と領域２２ｃに格納される情報とを、複数の情報記録媒体に分散して格納することとしてもよい。これにより安全性が向上する。
【０２０６】
また、上述の各種の処理は、記載に従って時系列に実行されるのみならず、処理を実行する装置の処理能力あるいは必要に応じて並列的にあるいは個別に実行されてもよい。その他、本発明の趣旨を逸脱しない範囲で適宜変更が可能であることはいうまでもない。
【０２０７】
また、上述のＰＣが実行する処理内容を記述したプログラムは、コンピュータで読み取り可能な記録媒体に記録しておくことができる。コンピュータで読み取り可能な記録媒体としては、上述したＵＳＢメモリの他、例えば、磁気記録装置、光ディスク、光磁気記録媒体、半導体メモリ等どのようなものでもよいが、具体的には、例えば、磁気記録装置として、ハードディスク装置、フレキシブルディスク、磁気テープ等を、光ディスクとして、ＤＶＤ（Digital Versatile Disc）、ＤＶＤ−ＲＡＭ（Random Access Memory）、ＣＤ−ＲＯＭ（Compact Disc Read Only Memory）、ＣＤ−Ｒ（Recordable）／ＲＷ（ReWritable）等を、光磁気記録媒体として、ＭＯ（Magneto-Optical disc）等を、半導体メモリとしてＥＥＰ−ＲＯＭ（Electronically Erasable and Programmable-Read Only Memory）等を用いることができる。
【０２０８】
また、このプログラムの流通は、例えば、そのプログラムを記録したＵＳＢメモリ、ＤＶＤ、ＣＤ−ＲＯＭ等の可搬型記録媒体を販売、譲渡、貸与等することによって行う。さらに、このプログラムをサーバコンピュータの記憶装置に格納しておき、ネットワークを介して、サーバコンピュータから他のコンピュータにそのプログラムを転送することにより、このプログラムを流通させる構成としてもよい。
【０２０９】
このようなプログラムを実行するコンピュータは、例えば、まず、可搬型記録媒体に記録されたプログラムもしくはサーバコンピュータから転送されたプログラムを、一旦、自己の記憶装置に格納する。そして、処理の実行時、このコンピュータは、自己の記録媒体に格納されたプログラムを読み取り、読み取ったプログラムに従った処理を実行する。また、このプログラムの別の実行形態として、コンピュータが可搬型記録媒体から直接プログラムを読み取り、そのプログラムに従った処理を実行することとしてもよい。
【０２１０】
なお、本形態におけるプログラムには、電子計算機による処理の用に供する情報であってプログラムに準ずるもの（コンピュータに対する直接の指令ではないがコンピュータの処理を規定する性質を有するデータ等）を含むものとする。
【０２１１】
また、この形態では、コンピュータ上で所定のプログラムを実行させることにより、本装置を構成することとしたが、これらの処理内容の少なくとも一部をハードウェア的に実現することとしてもよい。
【産業上の利用可能性】
【０２１２】
本発明の利用分野としては、例えば、ＵＳＢメモリに格納するデータの秘匿化等を例示できる。
【図面の簡単な説明】
【０２１３】
【図１】図１は、第１の実施形態の情報記録媒体共用システムの全体構成を例示した概念図である。
【図２】図２（ａ）は、第１の実施形態のＰＣの機能構成を例示したブロック図であり、図２（ｂ）は、本形態のＵＳＢメモリの機能構成を例示したブロック図である。
【図３】図３は、第１の実施形態の登録過程に関連する各機能ブロックとデータの流れとを示した図である。
【図４】図４は、第１の実施形態の登録過程に関連する各機能ブロックとデータの流れとを示した図である。
【図５】図５は、第１の実施形態の登録過程に関連する各機能ブロックとデータの流れとを示した図である。
【図６】図６は、第１の実施形態の書き込み過程に関連する各機能ブロックとデータの流れとを示した図である。
【図７】図７は、第１の実施形態の読み込み過程に関連する各機能ブロックとデータの流れとを示した図である。
【図８】図８は、第１の実施形態の削除過程に関連する各機能ブロックとデータの流れとを示した図である。
【図９】図９は、第１の実施形態の削除過程に関連する各機能ブロックとデータの流れとを示した図である。
【図１０】図１０は、第１の実施形態の削除過程に関連する各機能ブロックとデータの流れとを示した図である。
【図１１】図１１は、第１の実施形態の登録過程を説明するためのシーケンス図である。
【図１２】図１２は、第１の実施形態の登録過程を説明するためのシーケンス図である。
【図１３】図１３は、第１の実施形態の書き込み過程及び読み込み過程を説明するためのシーケンス図である。
【図１４】図１４は、第１の実施形態の削除過程を説明するためのシーケンス図である。
【図１５】図１５は、第２の実施形態の情報記録媒体共用システムの全体構成を例示した概念図である。
【図１６】図１６（ａ）は、第２の実施形態のＰＣの機能構成を例示したブロック図であり、図１６（ｂ）は、本形態のＵＳＢメモリの機能構成を例示したブロック図である。
【図１７】図１７は、第２の実施形態のサーバ装置の機能構成を例示したブロック図である。
【図１８】図１８は、第２の実施形態の登録過程に関連する各機能ブロックとデータの流れとを示した図である。
【図１９】図１９は、第２の実施形態の登録過程に関連する各機能ブロックとデータの流れとを示した図である。
【図２０】図２０は、第２の実施形態の登録過程に関連する各機能ブロックとデータの流れとを示した図である。
【図２１】図２１は、第２の実施形態の書き込み過程に関連する各機能ブロックとデータの流れとを示した図である。
【図２２】図２２は、第２の実施形態の読み込み過程に関連する各機能ブロックとデータの流れとを示した図である。
【図２３】図２３は、本形態の削除過程に関連する各機能ブロックとデータの流れとを示した図である。
【図２４】図２４は、第２の実施形態の登録過程を説明するためのシーケンス図である。
【図２５】図２５は、第２の実施形態の登録過程を説明するためのシーケンス図である。
【図２６】図２６は、第２の実施形態の書き込み過程及び読み込み過程を説明するためのシーケンス図である。
【図２７】図２７は、第２の実施形態の削除過程を説明するためのシーケンス図である。
【図２８】図２８は、第３の実施形態の情報記録媒体共用システムの全体構成を例示した概念図である。
【図２９】図２９（ａ）は、第３の実施形態のＰＣの機能構成を例示したブロック図であり、図２９（ｂ）は、本形態のＵＳＢメモリの機能構成を例示したブロック図である。
【図３０】図３０は、第３の実施形態のＩＤ−ＢＡＳＥ鍵生成装置の機能構成を例示したブロック図である。
【図３１】図３１は、第３の実施形態の登録過程に関連する各機能ブロックとデータの流れとを示した図である。
【図３２】図３２は、第３の実施形態の書き込み過程に関連する各機能ブロックとデータの流れとを示した図である。
【図３３】図３３は、第３の実施形態の読み込み過程に関連する各機能ブロックとデータの流れとを示した図である。
【図３４】図３４は、第３の実施形態の削除過程に関連する各機能ブロックとデータの流れとを示した図である。
【図３５】図３５は、第３の実施形態の削除過程に関連する各機能ブロックとデータの流れとを示した図である。
【図３６】図３６は、第３の実施形態の削除過程に関連する各機能ブロックとデータの流れとを示した図である。
【図３７】図３７は、第３の実施形態の登録過程を説明するためのシーケンス図である。
【図３８】図３８は、第３の実施形態の書き込み過程及び読み込み過程を説明するためのシーケンス図である。
【図３９】図３９は、第３の実施形態の削除過程を説明するためのシーケンス図である。
【図４０】図４０は、第４の実施形態の登録過程を説明するためのシーケンス図である。
【図４１】図４１は、第５の実施形態の情報記録媒体共用システムの全体構成を例示した概念図である。
【図４２】図４２（ａ）は、第５の実施形態のＰＣの機能構成を例示したブロック図であり、図４２（ｂ）は、本形態のＵＳＢメモリの機能構成を例示したブロック図である。
【図４３】図４３は、第５の実施形態のＩＤ−ＢＡＳＥ鍵生成装置の機能構成を例示したブロック図である。
【図４４】図４４は、第５の実施形態の登録過程に関連する各機能ブロックとデータの流れとを示した図である。
【図４５】図４５は、第５の実施形態の書き込み過程に関連する各機能ブロックとデータの流れとを示した図である。
【図４６】図４６は、第５の実施形態の読み込み過程に関連する各機能ブロックとデータの流れとを示した図である。
【図４７】図４７は、第５の実施形態の削除過程に関連する各機能ブロックとデータの流れとを示した図である。
【図４８】図４８は、第５の実施形態の登録過程を説明するためのシーケンス図である。
【図４９】図４９は、第５の実施形態の書き込み過程及び読み込み過程を説明するためのシーケンス図である。
【図５０】図５０は、第５の実施形態の削除過程を説明するためのシーケンス図である。
【符号の説明】
【０２１４】
１，１００，２００，３００  情報記録媒体共用システム
１０，１１０，２１０，３１０  ＰＣ（「情報処理装置」に相当）
２０  ＵＳＢメモリ（「情報記録媒体」に相当）
１２０  サーバ装置
１２２  ハードディスク（「第２の情報記録媒体」に相当）
【図１】
0004843588.tif 000002
【図２】
0004843588.tif 000003
【図３】
0004843588.tif 000004
【図４】
0004843588.tif 000005
【図５】
0004843588.tif 000006
【図６】
0004843588.tif 000007
【図７】
0004843588.tif 000008
【図８】
0004843588.tif 000009
【図９】
0004843588.tif 000010
【図１０】
0004843588.tif 000011
【図１１】
0004843588.tif 000012
【図１２】
0004843588.tif 000013
【図１３】
0004843588.tif 000014
【図１４】
0004843588.tif 000015
【図１５】
0004843588.tif 000016
【図１６】
0004843588.tif 000017
【図１７】
0004843588.tif 000018
【図１８】
0004843588.tif 000019
【図１９】
0004843588.tif 000020
【図２０】
0004843588.tif 000021
【図２１】
0004843588.tif 000022
【図２２】
0004843588.tif 000023
【図２３】
0004843588.tif 000024
【図２４】
0004843588.tif 000025
【図２５】
0004843588.tif 000026
【図２６】
0004843588.tif 000027
【図２７】
0004843588.tif 000028
【図２８】
0004843588.tif 000029
【図２９】
0004843588.tif 000030
【図３０】
0004843588.tif 000031
【図３１】
0004843588.tif 000032
【図３２】
0004843588.tif 000033
【図３３】
0004843588.tif 000034
【図３４】
0004843588.tif 000035
【図３５】
0004843588.tif 000036
【図３６】
0004843588.tif 000037
【図３７】
0004843588.tif 000038
【図３８】
0004843588.tif 000039
【図３９】
0004843588.tif 000040
【図４０】
0004843588.tif 000041
【図４１】
0004843588.tif 000042
【図４２】
0004843588.tif 000043
【図４３】
0004843588.tif 000044
【図４４】
0004843588.tif 000045
【図４５】
0004843588.tif 000046
【図４６】
0004843588.tif 000047
【図４７】
0004843588.tif 000048
【図４８】
0004843588.tif 000049
【図４９】
0004843588.tif 000050
【図５０】
0004843588.tif 000051