JP7060751B1 - データ共有装置、及び、データ共有方法 - Google Patents

データ共有装置、及び、データ共有方法 Download PDF

Info

Publication number
JP7060751B1
JP7060751B1 JP2021157890A JP2021157890A JP7060751B1 JP 7060751 B1 JP7060751 B1 JP 7060751B1 JP 2021157890 A JP2021157890 A JP 2021157890A JP 2021157890 A JP2021157890 A JP 2021157890A JP 7060751 B1 JP7060751 B1 JP 7060751B1
Authority
JP
Japan
Prior art keywords
user
decryption key
target data
encryption
key
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.)
Active
Application number
JP2021157890A
Other languages
English (en)
Other versions
JP2023048525A (ja
Inventor
良多 根岸
Original Assignee
良多 根岸
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 良多 根岸 filed Critical 良多 根岸
Priority to JP2021157890A priority Critical patent/JP7060751B1/ja
Application granted granted Critical
Publication of JP7060751B1 publication Critical patent/JP7060751B1/ja
Publication of JP2023048525A publication Critical patent/JP2023048525A/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Storage Device Security (AREA)

Abstract

【課題】複数のユーザが対象データを共有しながら、対象データが表す情報の漏洩を抑制することが可能なデータ共有装置を提供すること。【解決手段】データ共有装置10は、複数のユーザが対象データを共有する。真正情報取得部111,121は、ユーザが真正であることを示す情報である真正情報を取得する。対象データ暗号化部132は、暗号鍵及び復号鍵を生成し、当該暗号鍵に基づいて対象データを暗号化することにより暗号化済対象データを生成する。復号鍵暗号化部134は、複数のユーザのそれぞれに対して、当該ユーザに対する真正情報に基づいて復号可能に、復号鍵を暗号化することにより暗号化済復号鍵を生成する。対象データ復号部136は、ユーザに対する真正情報に基づいて暗号化済復号鍵を復号することにより復号鍵を取得し、復号鍵に基づいて暗号化済対象データを復号することにより対象データを取得する。【選択図】図4

Description

本発明は、データ共有装置、及び、データ共有方法に関する。
複数のユーザが対象データを共有するデータ共有装置が知られている。例えば、特許文献1に記載のデータ共有装置は、複数のユーザ間で締結される契約を表す対象データを、当該複数のユーザが共有する。
特開2013-114641号公報
ところで、複数のユーザ間で締結される契約を対象データが表す場合等のように、対象データが表す情報に対して比較的高い機密性が求められることがある。このため、上記データ共有装置において、対象データを暗号化することにより暗号化済対象データを生成し、対象データに代えて、当該暗号化済対象データを記憶することが好適であると考えられる。
しかしながら、この場合、暗号化済対象データの復号に用いられる復号鍵を、対象データを共有する複数のユーザに安全に通知することが困難である。
このように、上記データ共有装置においては、対象データが表す情報が漏洩する虞がある、という課題があった。なお、この種の課題は、複数のユーザ間で締結される契約以外の情報を対象データが表す場合も同様に生じ得る。
本発明の目的の一つは、複数のユーザが対象データを共有しながら、対象データが表す情報の漏洩を抑制することである。
一つの側面では、データ共有装置は、複数のユーザが対象データを共有する。
データ共有装置は、真正情報取得部と、対象データ暗号化部と、対象データ記憶部と、復号鍵暗号化部と、復号鍵記憶部と、対象データ復号部と、を備える。
真正情報取得部は、ユーザに対する、当該ユーザが真正であることを示す情報である真正情報を取得する。
対象データ暗号化部は、対象データを受け付けるとともに、当該対象データの暗号化及び復号にそれぞれ用いられる暗号鍵及び復号鍵を生成し、且つ、当該暗号鍵に基づいて当該対象データを暗号化することにより暗号化済対象データを生成する。
対象データ記憶部は、暗号化済対象データを記憶する。
復号鍵暗号化部は、複数のユーザのそれぞれに対して、当該ユーザに対する真正情報に基づいて復号可能に、復号鍵を暗号化することにより暗号化済復号鍵を生成する。
復号鍵記憶部は、複数のユーザのそれぞれに対して、当該ユーザに対して生成された暗号化済復号鍵を当該ユーザと対応付けて記憶する。
対象データ復号部は、ユーザに対して取得された真正情報に基づいて、当該ユーザと対応付けて記憶されている暗号化済復号鍵を復号することにより復号鍵を取得するとともに、当該復号鍵に基づいて、暗号化済対象データを復号することにより対象データを取得する。
他の一つの側面では、データ共有方法は、複数のユーザが対象データを共有する。
データ共有方法は、
ユーザに対する、当該ユーザが真正であることを示す情報である真正情報を取得し、
対象データを受け付けるとともに、当該対象データの暗号化及び復号にそれぞれ用いられる暗号鍵及び復号鍵を生成し、且つ、当該暗号鍵に基づいて当該対象データを暗号化することにより暗号化済対象データを生成し、
暗号化済対象データを記憶し、
複数のユーザのそれぞれに対して、当該ユーザに対する真正情報に基づいて復号可能に、復号鍵を暗号化することにより暗号化済復号鍵を生成し、
複数のユーザのそれぞれに対して、当該ユーザに対して生成された暗号化済復号鍵を当該ユーザと対応付けて記憶し、
ユーザに対して取得された真正情報に基づいて、当該ユーザと対応付けて記憶されている暗号化済復号鍵を復号することにより復号鍵を取得するとともに、当該復号鍵に基づいて、暗号化済対象データを復号することにより対象データを取得する、
ことを含む。
複数のユーザが対象データを共有しながら、対象データが表す情報の漏洩を抑制することができる。
第1実施形態のデータ共有システムの構成を表すブロック図である。 第1実施形態のデータ共有装置の構成を表すブロック図である。 第1実施形態の端末装置の構成を表すブロック図である。 第1実施形態のデータ共有システムの機能を表すブロック図である。 第1実施形態のデータ共有装置が実行する処理を表すフローチャートである。 第1実施形態のデータ共有装置が実行する処理を表すフローチャートである。 第1実施形態のデータ共有装置が実行する処理を表すフローチャートである。 第1実施形態のデータ共有装置が実行する処理を表すフローチャートである。 第1実施形態のデータ共有装置が実行する処理を表すフローチャートである。 第1実施形態のデータ共有装置が実行する処理を表すフローチャートである。 第1実施形態のデータ共有装置が実行する処理を表すフローチャートである。
以下、本発明の、データ共有装置、及び、データ共有方法に関する各実施形態について図1乃至図11を参照しながら説明する。
<第1実施形態>
(概要)
第1実施形態のデータ共有装置は、複数のユーザが対象データを共有する。
データ共有装置は、真正情報取得部と、対象データ暗号化部と、対象データ記憶部と、復号鍵暗号化部と、復号鍵記憶部と、対象データ復号部と、を備える。
真正情報取得部は、ユーザに対する、当該ユーザが真正であることを示す情報である真正情報を取得する。
対象データ暗号化部は、対象データを受け付けるとともに、当該対象データの暗号化及び復号にそれぞれ用いられる暗号鍵及び復号鍵を生成し、且つ、当該暗号鍵に基づいて当該対象データを暗号化することにより暗号化済対象データを生成する。
対象データ記憶部は、暗号化済対象データを記憶する。
復号鍵暗号化部は、複数のユーザのそれぞれに対して、当該ユーザに対する真正情報に基づいて復号可能に、復号鍵を暗号化することにより暗号化済復号鍵を生成する。
復号鍵記憶部は、複数のユーザのそれぞれに対して、当該ユーザに対して生成された暗号化済復号鍵を当該ユーザと対応付けて記憶する。
対象データ復号部は、ユーザに対して取得された真正情報に基づいて、当該ユーザと対応付けて記憶されている暗号化済復号鍵を復号することにより復号鍵を取得するとともに、当該復号鍵に基づいて、暗号化済対象データを復号することにより対象データを取得する。
これによれば、対象データを共有する複数のユーザのそれぞれに対して、真正情報に基づいて、暗号化済復号鍵を復号することにより復号鍵が取得され、当該復号鍵に基づいて、暗号化済対象データを復号することにより対象データが取得される。従って、復号鍵を、対象データを共有する複数のユーザに通知することなく、当該複数のユーザのそれぞれが対象データを取得できる。
また、対象データに代えて、暗号化済対象データが記憶される。更に、暗号化済対象データの復号に用いられる復号鍵に代えて、暗号化済復号鍵が記憶される。従って、対象データ及び復号鍵が漏洩することを抑制できる。
このように、上記データ共有装置によれば、複数のユーザが対象データを共有しながら、対象データが表す情報の漏洩を抑制できる。
次に、第1実施形態のデータ共有装置について、より詳細に説明する。
(構成)
図1に表されるように、データ共有システム1は、データ共有装置10と、複数(本例では、N個)の端末装置20-1,20-2,…,20-Nと、を備える。Nは、2以上の整数を表す。データ共有装置10と、各端末装置20-1,20-2,…,20-Nと、は、通信回線NWを介して互いに通信可能に接続される。通信回線NWは、無線通信の伝送路を含んでいてもよい。
データ共有装置10、及び、N個の端末装置20-1,20-2,…,20-Nのそれぞれは、情報処理装置、又は、コンピュータである。例えば、コンピュータは、据置型ゲーム機、携帯型ゲーム機、テレビ受像機、又は、スマートフォン等の少なくとも一部であってもよい。例えば、データ共有装置10は、サーバ型コンピュータ、デスクトップ型コンピュータ、ラップトップ型コンピュータ、タブレット型コンピュータ、又は、スマートフォン等であってよい。例えば、各端末装置20-1,20-2,…,20-Nは、デスクトップ型コンピュータ、ラップトップ型コンピュータ、タブレット型コンピュータ、又は、スマートフォン等であってよい。
なお、データ共有装置10は、互いに通信可能に接続された複数の装置により構成されていてもよい。
図2に表されるように、データ共有装置10は、バスBU1を介して互いに接続された、処理装置11、記憶装置12、入力装置13、出力装置14、及び、通信装置15を備える。
処理装置11は、記憶装置12に記憶されているプログラムを実行することにより、記憶装置12、入力装置13、出力装置14、及び、通信装置15を制御する。これにより、処理装置11は、後述する機能を実現する。
本例では、処理装置11は、CPU(Central Processing Unit)である。なお、処理装置11は、CPUに代えて、又は、CPUに加えて、MPU(Micro Processing Unit)、GPU(Graphics Processing Unit)、又は、DSP(Digital Signal Processor)を含んでもよい。
本例では、記憶装置12は、揮発性メモリと不揮発性メモリとを含む。例えば、記憶装置12は、RAM(Random Access Memory)、ROM(Read Only Memory)、半導体メモリ、有機メモリ、HDD(Hard Disk Drive)、及び、SSD(Solid State Drive)の少なくとも1つを含む。
入力装置13は、データ共有装置10の外部から情報を入力する。本例では、入力装置13は、キーボード及びマウスを備える。なお、入力装置13は、マイクロフォンを備えてもよい。
出力装置14は、データ共有装置10の外部へ情報を出力する。本例では、出力装置14は、ディスプレイを備える。なお、出力装置14は、スピーカを備えてもよい。
なお、データ共有装置10は、入力装置13及び出力装置14の両方を構成するタッチパネル式のディスプレイを備えてもよい。
通信装置15は、データ共有装置10の外部の装置と通信する。本例では、通信装置15は、カード型、又は、オンボード型の、ネットワークアダプタ、又は、ネットワークインタフェースを備える。
図3に表されるように、端末装置20-nは、バスBU2を介して互いに接続された、処理装置21、記憶装置22、入力装置23、出力装置24、及び、通信装置25を備える。nは、1乃至Nの整数を表す。
処理装置21、記憶装置22、入力装置23、出力装置24、及び、通信装置25は、データ共有装置10の処理装置11、記憶装置12、入力装置13、出力装置14、及び、通信装置15と同様の機能をそれぞれ有する。
(機能)
図4に表されるように、端末装置20-nの機能は、ユーザ情報入力部201と、認証用入力情報入力部202と、要求入力部203と、対象データ出力部204と、を含む。
ユーザ情報入力部201は、端末装置20-nのユーザにより入力装置23を用いて入力されたユーザ情報を受け付ける。
本例では、ユーザ情報は、ユーザ識別情報と、パスワードと、を含む。例えば、ユーザを識別するユーザ識別情報は、当該ユーザのユーザID(Identification)、又は、当該ユーザのメールアドレスであってもよい。
加えて、ユーザ情報は、住所、電話番号、誕生日、及び、年齢、の少なくとも1つを含んでいてもよい。例えば、ユーザ識別情報、及び、パスワードのそれぞれは、文字列である。文字列は、複数の文字要素からなる。文字要素は、文字、数字、又は、記号である。
ユーザ情報入力部201は、受け付けられたユーザ情報を通信装置25を用いてデータ共有装置10へ送信する。
認証用入力情報入力部202は、端末装置20-nのユーザにより入力装置23を用いて入力された認証用入力情報を受け付ける。
本例では、認証用入力情報は、ユーザ識別情報と、パスワードと、を含む。
認証用入力情報入力部202は、受け付けられた認証用入力情報を通信装置25を用いてデータ共有装置10へ送信する。
要求入力部203は、端末装置20-nのユーザにより入力装置23を用いて入力された処理要求を受け付ける。本例では、処理要求は、共有要求、アクセス要求、更新要求、又は、締結要求である。
共有要求は、ユーザ(換言すると、共有元ユーザ)が、他のユーザ(換言すると、共有先ユーザ)との間で、対象データを共有することを要求する情報である。対象データは、複数のユーザの間で締結される契約を表す。本例では、対象データは、共有元ユーザと共有先ユーザとの間で締結される契約の内容を表す契約書を表すデータである。
なお、共有先ユーザは、複数であってもよい。また、対象データは、複数のユーザ間で締結される契約以外の情報を表していてもよい。
本例では、共有要求は、対象データと、共有元ユーザを識別するユーザ識別情報である共有元ユーザ識別情報と、共有先ユーザを識別するユーザ識別情報である共有先ユーザ識別情報と、を含む。なお、データ共有装置10は、対象データの基となる基礎データを記憶していてもよい。例えば、基礎データは、複数のユーザの間で締結される契約の内容を表す契約書の雛型を表すデータである。この場合、共有要求は、対象データに代えて、基礎データを識別する基礎データ識別情報を含んでいてもよい。
共有元ユーザが対象データの共有においてアクセスコードの使用を設定する場合、共有要求は、アクセスコードを含む。例えば、アクセスコードは、文字列である。文字列は、複数の文字要素からなる。文字要素は、文字、数字、又は、記号である。
アクセス要求は、ユーザ(換言すると、アクセスユーザ)が、対象データにアクセスする(例えば、閲覧する)ことを要求する情報である。
本例では、アクセス要求は、アクセスユーザを識別するユーザ識別情報であるアクセスユーザ識別情報と、対象データを識別する対象データ識別情報と、を含む。
アクセスの対象となる対象データの共有においてアクセスコードの使用が設定されている場合、アクセス要求は、アクセスコードを含む。
更新要求は、ユーザ(換言すると、更新要求ユーザ)が、対象データを更新することを要求する情報である。
本例では、更新要求は、更新要求ユーザを識別するユーザ識別情報である更新要求ユーザ識別情報と、更新の対象となる対象データを識別する対象データ識別情報と、更新後の対象データと、を含む。
更新の対象となる対象データの共有においてアクセスコードの使用が設定されている場合、更新要求は、アクセスコードを含む。本例では、更新要求は、アクセス要求に続いて入力される。なお、アクセス要求に続いて更新要求が入力される場合、アクセス要求に含まれる、アクセスユーザ識別情報、対象データ識別情報、及び、アクセスコードは、更新要求に含まれる、更新要求ユーザ識別情報、対象データ識別情報、及び、アクセスコードとしてそれぞれ用いられてよい。
締結要求は、ユーザ(換言すると、締結要求ユーザ)が、対象データが表す契約を締結することを要求する情報である。
本例では、締結要求は、締結要求ユーザを識別するユーザ識別情報である締結要求ユーザ識別情報と、締結の対象となる対象データを識別する対象データ識別情報と、を含む。
締結の対象となる対象データの共有においてアクセスコードの使用が設定されている場合、締結要求は、アクセスコードを含む。本例では、締結要求は、アクセス要求に続いて入力される。なお、アクセス要求に続いて締結要求が入力される場合、アクセス要求に含まれる、アクセスユーザ識別情報、対象データ識別情報、及び、アクセスコードは、締結要求に含まれる、締結要求ユーザ識別情報、対象データ識別情報、及び、アクセスコードとしてそれぞれ用いられてよい。
要求入力部203は、受け付けられた処理要求を通信装置25を用いてデータ共有装置10へ送信する。
対象データ出力部204は、通信装置25を用いてデータ共有装置10から対象データを受信する。対象データ出力部204は、受信された対象データを出力装置24を用いて出力する(本例では、ディスプレイに表示する)。
データ共有装置10の機能は、ユーザ登録処理部110と、ユーザ認証処理部120と、要求処理部130と、を含む。
ユーザ登録処理部110は、ユーザ情報受付部111と、秘密鍵暗号化部112と、ユーザ情報記憶部113と、を含む。
ユーザ情報受付部111は、通信装置15を用いて端末装置20-nからユーザ情報を受信し、受信されたユーザ情報を受け付ける。ユーザ情報受付部111は、受け付けられたユーザ情報に基づいて真正情報及び照合基準情報を取得する。本例では、ユーザ情報受付部111は、真正情報及び照合基準情報を生成することにより取得する。
真正情報は、ユーザが真正であることを示す情報である。本例では、真正情報は、ユーザ情報に含まれるパスワードに基づいて生成される。本例では、真正情報は、暗号用ハッシュ化方式に従って生成されるパスワードのハッシュ値である。
例えば、パスワードのハッシュ値は、ランダムに生成される文字列(換言すると、ソルト)をパスワードに連結するとともに、ハッシュ関数による文字列の変換を、所定のストレッチ回数だけ繰り返し実行する(換言すると、ストレッチングを行う)ことにより生成される。
なお、ユーザ情報受付部111は、真正情報を、データ共有システム1の外部のユーザ認証システムから受信することにより取得してもよい。この場合、ユーザ認証システムは、ユーザが真正であるか否かを判定し、ユーザが真正であると判定された場合に真正情報をデータ共有システム1へ送信し、一方、ユーザが真正であると判定されなかった場合に真正情報を送信しない。
照合基準情報は、ユーザ情報に含まれるパスワードに基づいて生成される。本例では、照合基準情報は、暗号用ハッシュ化方式と異なる認証用ハッシュ化方式に従って生成されるパスワードのハッシュ値である。例えば、認証用ハッシュ化方式は、ソルト、及び、ストレッチ回数の少なくとも一方が暗号用ハッシュ化方式と異なる。
本例では、ユーザ情報受付部111は、ユーザに対する、当該ユーザが真正であることを示す情報である真正情報を取得する真正情報取得部の少なくとも一部に対応する。
秘密鍵暗号化部112は、ユーザ情報受付部111によってユーザ情報が受け付けられた場合、当該ユーザ情報に対して、公開鍵暗号方式に従った暗号化処理及び復号処理にそれぞれ用いられる公開鍵及び秘密鍵を生成する。例えば、公開鍵暗号方式は、RSA暗号方式である。
この場合、秘密鍵暗号化部112は、当該ユーザ情報に対して生成された秘密鍵に対して、当該ユーザ情報に対して取得された真正情報に基づく、共通鍵暗号方式に従った暗号化処理を行うことによって、当該秘密鍵を暗号化することにより暗号化済秘密鍵を生成する。例えば、共通鍵暗号方式は、AES(Advanced Encryption Standard)と呼ばれる暗号方式である。
ユーザ情報記憶部113は、ユーザ情報受付部111によってユーザ情報が受け付けられた場合、当該ユーザ情報に含まれるパスワード以外の情報と、秘密鍵暗号化部112によって当該ユーザ情報に対して生成された公開鍵と、秘密鍵暗号化部112によって当該ユーザ情報に対して生成された暗号化済秘密鍵と、ユーザ情報受付部111によって当該ユーザ情報に対して生成された照合基準情報と、暗号用ハッシュ化方式情報と、認証用ハッシュ化方式情報と、を互いに対応付けて記憶装置12に記憶させる。
暗号用ハッシュ化方式情報は、当該ユーザ情報に対して真正情報を生成するために用いられた暗号用ハッシュ化方式を表す情報である。本例では、暗号用ハッシュ化方式情報は、ソルト、及び、ストレッチ回数を表す情報を含む。
認証用ハッシュ化方式情報は、当該ユーザ情報に対して照合基準情報を生成するために用いられた認証用ハッシュ化方式を表す情報である。本例では、認証用ハッシュ化方式情報は、ソルト、及び、ストレッチ回数を表す情報を含む。
本例では、ユーザ情報記憶部113は、複数のユーザのそれぞれに対して、当該ユーザと、公開鍵と、暗号化済秘密鍵と、を互いに対応付けて記憶する公開鍵秘密鍵記憶部に対応する。
ユーザ認証処理部120は、認証用入力情報受付部121と、真正情報記憶部122と、を含む。
認証用入力情報受付部121は、通信装置15を用いて端末装置20-nから認証用入力情報を受信し、受信された認証用入力情報を受け付ける。認証用入力情報受付部121は、受け付けられた認証用入力情報に基づいて照合対象情報を取得する。本例では、認証用入力情報受付部121は、照合対象情報を生成することにより取得する。
照合対象情報は、認証用入力情報に含まれるパスワードに基づいて生成される。本例では、照合対象情報は、認証用入力情報に含まれるユーザ識別情報と対応付けて記憶装置12に記憶されている認証用ハッシュ化方式情報が表す認証用ハッシュ化方式に従って生成されるパスワードのハッシュ値である。
認証用入力情報受付部121は、生成された照合対象情報が、認証用入力情報に含まれるユーザ識別情報と対応付けて記憶装置12に記憶されている照合基準情報と一致する場合、当該ユーザ識別情報(換言すると、当該ユーザ識別情報により識別されるユーザ)に対するログインを許可し、一方、当該照合対象情報が当該照合基準情報と異なる場合、当該ユーザ識別情報に対するログインを禁止する。
認証用入力情報受付部121は、認証用入力情報に含まれるユーザ識別情報に対するログインが許可された場合、当該認証用入力情報に基づいて真正情報を取得する。本例では、認証用入力情報受付部121は、真正情報を生成することにより取得する。
真正情報は、認証用入力情報に含まれるパスワードに基づいて生成される。本例では、真正情報は、認証用入力情報に含まれるユーザ識別情報と対応付けて記憶装置12に記憶されている暗号用ハッシュ化方式情報が表す暗号用ハッシュ化方式に従って生成されるパスワードのハッシュ値である。
なお、認証用入力情報受付部121は、真正情報を、データ共有システム1の外部のユーザ認証システムから受信することにより取得してもよい。
本例では、認証用入力情報受付部121は、ユーザに対する、当該ユーザが真正であることを示す情報である真正情報を取得する真正情報取得部の少なくとも一部に対応する。
真正情報記憶部122は、認証用入力情報受付部121によって真正情報が取得された場合、当該真正情報を、当該真正情報が取得される基となった認証用入力情報に含まれるユーザ識別情報と対応付けて記憶装置12に記憶させる。換言すると、真正情報記憶部122は、ユーザ識別情報に対するログインが許可された場合、当該ユーザ識別情報に対する真正情報の記憶を開始する。
真正情報記憶部122は、ユーザ識別情報に対して所定の保持終了条件が満足された場合、当該ユーザ識別情報と対応付けて記憶装置12に記憶されている真正情報を記憶装置12から消去する。換言すると、真正情報記憶部122は、ユーザ識別情報に対して所定の保持終了条件が満足された場合、当該ユーザ識別情報に対する真正情報の記憶を終了する。
本例では、保持終了条件は、ログアウト条件、タイムアウト条件、及び、セッション破棄条件の少なくとも1つが満足された場合に満足される。
本例では、ログアウト条件は、ユーザ識別情報に対するログアウトが要求された、という条件である。
本例では、タイムアウト条件は、ユーザ識別情報に対するログインが許可されてから経過した時間が、所定のタイムアウト時間よりも長くなった、という条件である。
本例では、セッション破棄条件は、異常な状態が発生した、という条件である。例えば、異常な状態は、ログイン中のユーザに対して、再びログインが要求された(換言すると、多重ログインが行われた)状態、不正なアクセスが行われた状態、又は、ユーザがログイン中に、端末装置20-n、又は、データ共有装置10が再起動した状態である。
なお、保持終了条件は、真正情報が暗号化又は復号において使用された(換言すると、真正情報が使用済みである)、という条件であってもよい。
また、データ共有装置10の機能は、真正情報記憶部122を備えていなくてもよい。この場合、データ共有装置10は、暗号化又は復号において使用が要求される毎に真正情報を取得し、暗号化又は復号において、取得された真正情報を使用した後に、真正情報を記憶装置12に記憶させない。
要求処理部130は、要求受付部131と、対象データ暗号化部132と、対象データ記憶部133と、復号鍵暗号化部134と、アクセス情報記憶部135と、対象データ復号部136と、を含む。
要求受付部131は、通信装置15を用いて端末装置20-nから処理要求を受信し、受信された処理要求を受け付ける。
対象データ暗号化部132は、要求受付部131によって受け付けられた処理要求が共有要求である(換言すると、共有要求が受け付けられた)場合、当該共有要求に含まれる対象データを受け付けるとともに、当該対象データの暗号化及び復号にそれぞれ用いられる暗号鍵及び復号鍵を生成する。
本例では、対象データ暗号化部132は、対象データの暗号化及び復号において、共通鍵暗号方式に従った暗号化処理及び復号処理をそれぞれ行う。従って、本例では、対象データの暗号化及び復号にそれぞれ用いられる暗号鍵及び復号鍵は、同一である。従って、本例では、対象データの暗号化及び復号にそれぞれ用いられる暗号鍵及び復号鍵は、いずれも対称鍵と表されてよい。なお、対象データ暗号化部132は、対象データの暗号化及び復号において、公開鍵暗号方式に従った暗号化処理及び復号処理をそれぞれ行ってもよい。
対象データ暗号化部132は、受け付けられた対象データに対して、生成された暗号鍵(本例では、対称鍵)に基づく、共通鍵暗号方式に従った暗号化処理を行うことによって、当該対象データを暗号化することにより暗号化済対象データを生成する。
対象データ記憶部133は、対象データ暗号化部132によって生成された暗号化済対象データを、当該暗号化済対象データが生成される基となった対象データを識別する対象データ識別情報と対応付けて記憶装置12に記憶させる。
復号鍵暗号化部134は、要求受付部131によって共有要求が受け付けられた場合、当該共有要求における共有ユーザのそれぞれに対して、当該共有ユーザに対する真正情報に基づいて復号可能に、対象データ暗号化部132によって生成された復号鍵(本例では、対称鍵)を暗号化することにより暗号化済復号鍵を生成する。
共有要求における複数の共有ユーザは、当該共有要求に含まれる共有元ユーザ識別情報により識別される共有元ユーザと、当該共有要求に含まれる共有先ユーザ識別情報により識別される共有先ユーザと、からなる。また、共有要求に含まれる、共有元ユーザ識別情報、及び、共有先ユーザ識別情報のそれぞれは、共有ユーザ識別情報と表されてもよい。
復号鍵暗号化部134は、要求受付部131によって受け付けられた共有要求がアクセスコードを含まない場合、対称鍵に対して、共有元ユーザ識別情報と対応付けて記憶装置12に記憶されている真正情報に基づく、共通鍵暗号方式に従った暗号化処理を行うことにより暗号化済対称鍵を生成する。本例では、共有元ユーザ識別情報により識別される共有元ユーザは、ログインしている場合に共有要求を送信する。従って、本例では、共有元ユーザ識別情報により識別される共有元ユーザは、複数の共有ユーザのうちの、ログイン中のユーザである。
更に、この場合、復号鍵暗号化部134は、共有先ユーザ識別情報のそれぞれに対して、当該共有先ユーザ識別情報と対応付けて記憶装置12に記憶されている公開鍵に基づく、公開鍵暗号方式に従った暗号化処理を対称鍵に対して行うことにより暗号化済対称鍵を生成する。本例では、共有先ユーザ識別情報により識別される共有先ユーザは、共有要求が受け付けられた時点にてログインしていない。従って、本例では、共有先ユーザ識別情報により識別される共有先ユーザは、複数の共有ユーザのうちの、ログイン中のユーザ以外のユーザである。
復号鍵暗号化部134は、要求受付部131によって受け付けられた共有要求がアクセスコードを含む場合、当該アクセスコードを受け付けるとともに、対称鍵に対して、当該アクセスコードに基づく、共通鍵暗号方式に従った暗号化処理を行うことにより、暫定暗号化済対称鍵を生成する。
この場合、復号鍵暗号化部134は、生成された暫定暗号化済対称鍵に対して、共有元ユーザ識別情報と対応付けて記憶装置12に記憶されている真正情報に基づく、共通鍵暗号方式に従った暗号化処理を行うことにより暗号化済対称鍵を生成する。
更に、この場合、復号鍵暗号化部134は、共有先ユーザ識別情報のそれぞれに対して、当該共有先ユーザ識別情報と対応付けて記憶装置12に記憶されている公開鍵に基づく、公開鍵暗号方式に従った暗号化処理を暫定暗号化済対称鍵に対して行うことにより暗号化済対称鍵を生成する。
アクセス情報記憶部135は、要求受付部131によって共有要求が受け付けられた場合、当該共有要求に含まれる共有ユーザ識別情報のそれぞれに対して、当該共有ユーザ識別情報と、当該共有要求に基づいて当該共有ユーザ識別情報に対して復号鍵暗号化部134によって生成された暗号化済対称鍵と、暗号方式情報と、当該共有要求に基づいて対象データ記憶部133によって記憶された対象データ識別情報と、を互いに対応付けて記憶装置12に記憶させる。
本例では、暗号方式情報は、暗号化済対称鍵を生成するために使用された暗号方式(本例では、共通鍵暗号方式、又は、公開鍵暗号方式)を表す情報と、暗号化済対称鍵を生成するためにアクセスコードが使用された(換言すると、対象データの共有においてアクセスコードの使用が設定されている)か否かを表す情報と、を含む。
本例では、アクセス情報記憶部135は、複数のユーザのそれぞれに対して、当該ユーザに対して生成された暗号化済復号鍵を記憶する復号鍵記憶部に対応する。
対象データ復号部136は、要求受付部131によって受け付けられた処理要求がアクセス要求である(換言すると、アクセス要求が受け付けられた)場合、当該アクセス要求に含まれるアクセスユーザ識別情報により識別されるアクセスユーザに対して取得された真正情報に基づいて、当該アクセスユーザと対応付けて記憶装置12に記憶されている暗号化済復号鍵を復号することにより復号鍵を取得する。
本例では、対象データ復号部136は、アクセス要求に含まれる、アクセスユーザ識別情報及び対象データ識別情報と対応付けて記憶装置12に記憶されている暗号方式情報が、共通鍵暗号方式を表すとともに、アクセスコードの使用が設定されていないことを表す場合、当該アクセスユーザ識別情報及び当該対象データ識別情報と対応付けて記憶装置12に記憶されている暗号化済対称鍵に対して、当該アクセスユーザ識別情報と対応付けて記憶装置12に記憶されている真正情報に基づく、共通鍵暗号方式に従った復号処理を行うことにより対称鍵を取得する。
また、対象データ復号部136は、当該暗号方式情報が、共通鍵暗号方式を表すとともに、アクセスコードの使用が設定されていることを表す場合、当該アクセスユーザ識別情報及び当該対象データ識別情報と対応付けて記憶装置12に記憶されている暗号化済対称鍵に対して、当該アクセスユーザ識別情報と対応付けて記憶装置12に記憶されている真正情報に基づく、共通鍵暗号方式に従った復号処理を行うことにより暫定暗号化済対称鍵を取得する。この場合、対象データ復号部136は、取得された暫定暗号化済対称鍵に対して、当該アクセス要求に含まれるアクセスコードに基づく、共通鍵暗号方式に従った復号処理を行うことにより対称鍵を取得する。
また、対象データ復号部136は、当該暗号方式情報が、公開鍵暗号方式を表すとともに、アクセスコードの使用が設定されていないことを表す場合、当該アクセスユーザ識別情報と対応付けて記憶装置12に記憶されている暗号化済秘密鍵に対して、当該アクセスユーザ識別情報と対応付けて記憶装置12に記憶されている真正情報に基づく、共通鍵暗号方式に従った復号処理を行うことにより秘密鍵を取得する。この場合、対象データ復号部136は、当該アクセスユーザ識別情報及び当該対象データ識別情報と対応付けて記憶装置12に記憶されている暗号化済対称鍵に対して、取得された秘密鍵に基づく、公開鍵暗号方式に従った復号処理を行うことにより対称鍵を取得する。
また、対象データ復号部136は、当該暗号方式情報が、公開鍵暗号方式を表すとともに、アクセスコードの使用が設定されていることを表す場合、当該アクセスユーザ識別情報と対応付けて記憶装置12に記憶されている暗号化済秘密鍵に対して、当該アクセスユーザ識別情報と対応付けて記憶装置12に記憶されている真正情報に基づく、共通鍵暗号方式に従った復号処理を行うことにより秘密鍵を取得する。この場合、対象データ復号部136は、当該アクセスユーザ識別情報及び当該対象データ識別情報と対応付けて記憶装置12に記憶されている暗号化済対称鍵に対して、取得された秘密鍵に基づく、公開鍵暗号方式に従った復号処理を行うことにより暫定暗号化済対称鍵を取得する。更に、この場合、対象データ復号部136は、取得された暫定暗号化済対称鍵に対して、当該アクセス要求に含まれるアクセスコードに基づく、共通鍵暗号方式に従った復号処理を行うことにより対称鍵を取得する。
対象データ復号部136は、アクセス要求に対して対称鍵が取得された場合、当該アクセス要求に含まれる対象データ識別情報と対応付けて記憶装置12に記憶されている暗号化済対象データに対して、当該対称鍵に基づく、共通鍵暗号方式に従った復号処理を行うことにより対象データを取得する。
対象データ復号部136は、アクセス要求に対して対象データが取得された場合、当該対象データを、当該アクセス要求を送信してきた端末装置20-nへ、通信装置15を用いて送信する。
復号鍵暗号化部134は、対象データ復号部136によってアクセス要求に対して対称鍵が取得された場合において、暗号化済復号鍵の復号において公開鍵暗号方式に従った復号処理が行われることにより当該対称鍵が取得された場合、当該アクセス要求に含まれるアクセスユーザ識別情報により識別されるアクセスユーザに対する真正情報に基づく、共通鍵暗号方式に従った暗号化処理を行うことによって当該対称鍵を暗号化し直すことにより、当該アクセスユーザに対する暗号化済復号鍵を生成する。本例では、アクセスユーザ識別情報により識別されるアクセスユーザは、ログインしている場合にアクセス要求を送信する。従って、本例では、アクセスユーザ識別情報により識別されるアクセスユーザは、複数の共有ユーザのうちの、ログイン中のユーザである。
本例では、復号鍵暗号化部134は、対象データ復号部136によってアクセス要求に対して対称鍵が取得された場合において、暗号化済復号鍵の復号において公開鍵暗号方式に従った復号処理が行われることにより当該対称鍵が取得され、且つ、当該アクセス要求にアクセスコードが含まれない場合、当該対称鍵に対して、当該アクセス要求に含まれるアクセスユーザ識別情報と対応付けて記憶装置12に記憶されている真正情報に基づく、共通鍵暗号方式に従った暗号化処理を行うことにより暗号化済対称鍵を生成する。
また、復号鍵暗号化部134は、対象データ復号部136によってアクセス要求に対して対称鍵が取得された場合において、暗号化済復号鍵の復号において公開鍵暗号方式に従った復号処理が行われることにより当該対称鍵が取得され、且つ、当該アクセス要求にアクセスコードが含まれる場合、当該対称鍵に対して、当該アクセスコードに基づく、共通鍵暗号方式に従った暗号化処理を行うことにより暫定暗号化済対称鍵を生成する。更に、この場合、復号鍵暗号化部134は、生成された暫定暗号化済対称鍵に対して、当該アクセス要求に含まれるアクセスユーザ識別情報と対応付けて記憶装置12に記憶されている真正情報に基づく、共通鍵暗号方式に従った暗号化処理を行うことにより暗号化済対称鍵を生成する。
アクセス情報記憶部135は、復号鍵暗号化部134によってアクセス要求に対して対称鍵が暗号化し直された場合、当該アクセス要求に含まれるアクセスユーザ識別情報、及び、当該アクセス要求に含まれる対象データ識別情報と対応付けて記憶装置12に記憶されている、暗号化済対称鍵、及び、暗号方式情報を、復号鍵暗号化部134によって新たに生成された暗号化済対称鍵、及び、当該暗号化済対称鍵に対する新たな暗号方式情報にそれぞれ更新(本例では、置換)する。
対象データ暗号化部132は、要求受付部131によってアクセス要求に続いて更新要求が受け付けられた場合、当該更新要求に含まれる、更新後の対象データに対して、復号鍵暗号化部134によって当該アクセス要求に対して取得された対称鍵に基づく、共通鍵暗号方式に従った暗号化処理を行うことによって、当該対象データを暗号化することにより暗号化済対象データを生成する。
対象データ記憶部133は、要求受付部131によってアクセス要求に続いて更新要求が受け付けられた場合、当該更新要求に含まれる対象データ識別情報と対応付けて記憶装置12に記憶されている暗号化済対象データを、対象データ暗号化部132によって当該更新要求に対して生成された暗号化済対象データに更新(本例では、置換)する。
アクセス情報記憶部135は、要求受付部131によってアクセス要求に続いて締結要求が受け付けられた場合、締結要求情報を、当該締結要求に含まれる対象データ識別情報及び締結要求ユーザ識別情報と対応付けて記憶装置12に記憶させる。締結要求情報は、締結が要求されたことを表す情報である。
対象データ暗号化部132は、要求受付部131によってアクセス要求に続いて締結要求が受け付けられた場合、当該締結要求に含まれる対象データ識別情報と対応付けて記憶装置12に記憶されている、すべての共有ユーザ識別情報を抽出する。この場合、対象データ暗号化部132は、抽出された共有ユーザ識別情報のそれぞれに対して、当該共有ユーザ識別情報と対応付けて締結要求情報が記憶装置12に記憶されているか否かを判定する。
対象データ暗号化部132は、抽出された共有ユーザ識別情報のすべてに対して締結要求情報が記憶されている(換言すると、対象データが表す契約が締結された)場合、当該抽出された共有ユーザ識別情報により識別される共有ユーザのそれぞれに対して、対象データ復号部136によって当該アクセス要求に対して取得された対象データの暗号化及び復号にそれぞれ用いられる暗号鍵及び復号鍵を生成する。上述のように、本例では、対象データ暗号化部132は、対象データの暗号化及び復号において、共通鍵暗号方式に従った暗号化処理及び復号処理をそれぞれ行う。従って、本例では、対象データの暗号化及び復号にそれぞれ用いられる暗号鍵及び復号鍵は、同一である。
対象データ暗号化部132は、当該抽出された共有ユーザ識別情報により識別される共有ユーザのそれぞれに対して、生成された暗号鍵(本例では、対称鍵)に基づく、共通鍵暗号方式に従った暗号化処理を当該対象データに対して行うことによって、当該対象データを暗号化することにより暗号化済対象データを生成する。
対象データ記憶部133は、当該抽出された共有ユーザ識別情報により識別される共有ユーザのそれぞれに対して、対象データ暗号化部132によって生成された暗号化済対象データを、新たに割り当てられる対象データ識別情報と対応付けて記憶装置12に記憶させる。
復号鍵暗号化部134は、対象データ暗号化部132によって締結要求に基づいて共有ユーザのそれぞれに対して復号鍵が生成された場合、当該共有ユーザのそれぞれに対して、当該共有ユーザに対する真正情報に基づいて復号可能に、対象データ暗号化部132によって生成された復号鍵(本例では、対称鍵)を暗号化することにより暗号化済復号鍵を生成する。
締結要求に基づく複数の共有ユーザは、当該締結要求に含まれる締結要求ユーザ識別情報により識別される今回要求ユーザと、過去に送信された締結要求に含まれる締結要求ユーザ識別情報により識別される過去要求ユーザと、からなる。
復号鍵暗号化部134は、今回要求ユーザに対して生成された対称鍵に対して、今回要求ユーザを識別するユーザ識別情報と対応付けて記憶装置12に記憶されている真正情報に基づく、共通鍵暗号方式に従った暗号化処理を行うことにより暗号化済対称鍵を生成する。本例では、今回要求ユーザは、ログインしている場合に締結要求を送信する。従って、本例では、今回要求ユーザは、複数の共有ユーザのうちの、ログイン中のユーザである。
更に、復号鍵暗号化部134は、過去要求ユーザのそれぞれに対して、当該過去要求ユーザを識別するユーザ識別情報と対応付けて記憶装置12に記憶されている公開鍵に基づく、公開鍵暗号方式に従った暗号化処理を、当該過去要求ユーザに対して生成された対称鍵に対して行うことにより暗号化済対称鍵を生成する。本例では、過去要求ユーザは、締結要求が受け付けられた時点にてログインしていない。従って、本例では、過去要求ユーザは、複数の共有ユーザのうちの、ログイン中のユーザ以外のユーザである。
アクセス情報記憶部135は、復号鍵暗号化部134によって締結要求に基づいて共有ユーザのそれぞれに対して暗号化済対称鍵が生成された場合、当該共有ユーザのそれぞれに対して、当該共有ユーザを識別するユーザ識別情報と、当該共有ユーザに対して復号鍵暗号化部134によって生成された暗号化済対称鍵と、当該暗号化済対称鍵に対する暗号方式情報と、当該締結要求に基づいて当該共有ユーザに対して対象データ記憶部133によって記憶された対象データ識別情報と、を互いに対応付けて記憶装置12に記憶させる。
(動作)
次に、データ共有システム1の動作について、図5乃至図11を参照しながら説明する。
本例では、データ共有装置10は、ユーザ情報を登録するため、図5に表される処理を実行する。
データ共有装置10は、ユーザ情報を受け付けるまで、図5のステップS101にて「No」と判定することにより待機する。
その後、端末装置20-nのユーザは、入力装置23を用いてユーザ情報を入力する。これにより、端末装置20-nは、入力されたユーザ情報を受け付け、受け付けられたユーザ情報をデータ共有装置10へ送信する。
これにより、データ共有装置10は、端末装置20-nからユーザ情報を受信し、受信されたユーザ情報を受け付ける(図5のステップS101)。その結果、データ共有装置10は、図5のステップS101にて「Yes」と判定し、受け付けられたユーザ情報に対して、公開鍵暗号方式に従った暗号化処理及び復号処理にそれぞれ用いられる公開鍵及び秘密鍵を生成する(図5のステップS102)。
次いで、データ共有装置10は、受け付けられたユーザ情報に基づいて真正情報及び照合基準情報を生成することにより取得する。更に、データ共有装置10は、生成された秘密鍵に対して、取得された真正情報に基づく、共通鍵暗号方式に従った暗号化処理を行うことによって、当該秘密鍵を暗号化することにより暗号化済秘密鍵を生成する(図5のステップS103)。
次いで、データ共有装置10は、受け付けられたユーザ情報に含まれるパスワード以外の情報と、生成された公開鍵と、生成された暗号化済秘密鍵と、取得された照合基準情報と、暗号用ハッシュ化方式情報と、認証用ハッシュ化方式情報と、を互いに対応付けて記憶装置12に記憶させる(図5のステップS104)。
これにより、データ共有装置10は、図5の処理を終了する。
また、データ共有装置10は、ユーザ認証を行うため、図6に表される処理を実行する。
データ共有装置10は、認証用入力情報を受け付けるまで、図6のステップS201にて「No」と判定することにより待機する。
その後、端末装置20-nのユーザは、入力装置23を用いて認証用入力情報を入力する。これにより、端末装置20-nは、入力された認証用入力情報を受け付け、受け付けられた認証用入力情報をデータ共有装置10へ送信する。
これにより、データ共有装置10は、端末装置20-nから認証用入力情報を受信し、受信された認証用入力情報を受け付ける(図6のステップS201)。その結果、データ共有装置10は、図6のステップS201にて「Yes」と判定し、受け付けられた認証用入力情報に基づいて照合対象情報を生成することにより取得する。
次いで、データ共有装置10は、取得された照合対象情報が、認証用入力情報に含まれるユーザ識別情報と対応付けて記憶装置12に記憶されている照合基準情報と一致する(換言すると、ユーザが真正である)か否かを判定する(図6のステップS202)。
データ共有装置10は、当該照合対象情報が当該照合基準情報と異なる場合、図6のステップS202にて「No」と判定し、ステップS201へ戻ることにより、受け付けられた認証用入力情報に含まれるユーザ識別情報に対するログインを禁止する。
一方、データ共有装置10は、当該照合対象情報が当該照合基準情報と一致する場合、図6のステップS202にて「Yes」と判定し、ステップS203へ進むことにより、受け付けられた認証用入力情報に含まれるユーザ識別情報に対するログインを許可する。
次いで、データ共有装置10は、当該認証用入力情報に基づいて真正情報を生成することにより取得し、取得された真正情報を、当該認証用入力情報に含まれるユーザ識別情報と対応付けて記憶装置12に記憶させる(図6のステップS203)。
次いで、データ共有装置10は、保持終了条件が満足されるまで、図6のステップS204にて「No」と判定することにより待機する。
その後、保持終了条件が満足された場合、データ共有装置10は、図6のステップS204にて「Yes」と判定し、ステップS201にて受け付けられた認証用入力情報に含まれるユーザ識別情報と対応付けて記憶装置12に記憶されている真正情報を記憶装置12から消去する(図6のステップS205)。
これにより、データ共有装置10は、図6の処理を終了する。
また、データ共有装置10は、共有要求を処理するため、図7に表される処理を実行する。
データ共有装置10は、共有要求を受け付けるまで、図7のステップS301にて「No」と判定することにより待機する。
その後、端末装置20-nのユーザは、入力装置23を用いて共有要求を入力する。これにより、端末装置20-nは、入力された共有要求を受け付け、受け付けられた共有要求をデータ共有装置10へ送信する。
これにより、データ共有装置10は、端末装置20-nから共有要求を受信し、受信された共有要求を受け付ける(図7のステップS301)。その結果、データ共有装置10は、図7のステップS301にて「Yes」と判定し、受け付けられた共有要求に含まれる共有元ユーザ識別情報に対するログインが許可されている(換言すると、共有元ユーザがログイン中である)か否かを判定する(図7のステップS302)。例えば、データ共有装置10は、共有元ユーザ識別情報と対応付けて記憶装置12に真正情報が記憶されている場合、共有元ユーザがログイン中であると判定してよい。
共有元ユーザがログイン中でない場合、データ共有装置10は、ステップS302にて「No」と判定し、ステップS303へ進んで、図6に表されるユーザ認証処理を開始した後、ステップS302へ戻る。
共有元ユーザがログイン中である場合、データ共有装置10は、ステップS302にて「Yes」と判定し、対象データの暗号化及び復号に用いられる対象鍵を生成する(図7のステップS304)。
次いで、データ共有装置10は、受け付けられた共有要求に含まれる対象データに対して、生成された対称鍵に基づく、共通鍵暗号方式に従った暗号化処理を行うことによって、当該対象データを暗号化することにより暗号化済対象データを生成する(図7のステップS305)。
次いで、データ共有装置10は、生成された暗号化済対象データを、受け付けられた共有要求に含まれる対象データを識別する対象データ識別情報と対応付けて記憶装置12に記憶させる(図7のステップS306)。
次いで、データ共有装置10は、受け付けられた共有要求がアクセスコードを含む(換言すると、アクセスコードを使用する)か否かを判定する(図7のステップS307)。
共有要求がアクセスコードを含む場合、データ共有装置10は、ステップS307にて「Yes」と判定し、生成された対称鍵に対して、当該アクセスコードに基づく、共通鍵暗号方式に従った暗号化処理を行うことにより、暫定暗号化済対称鍵を生成する(図7のステップS308)。その後、データ共有装置10は、図7のステップS309へ進む。
一方、共有要求がアクセスコードを含まない場合、データ共有装置10は、ステップS307にて「No」と判定し、図7のステップS308の処理を実行することなく、ステップS309へ進む。
次いで、データ共有装置10は、対称鍵(アクセスコードを使用しない場合)、又は、暫定暗号化済対称鍵(アクセスコードを使用する場合)に対して、受け付けられた共有要求に含まれる共有元ユーザ識別情報と対応付けて記憶装置12に記憶されている真正情報に基づく、共通鍵暗号方式に従った暗号化処理を行うことにより暗号化済対称鍵を生成する(図7のステップS309)。
次いで、データ共有装置10は、受け付けられた共有要求に含まれる共有元ユーザ識別情報と、図7のステップS306にて記憶された対象データ識別情報と、図7のステップS309にて生成された暗号化済対称鍵と、当該暗号化済対称鍵に対する暗号方式情報と、を互いに対応付けて記憶装置12に記憶させる(図7のステップS310)。
次いで、データ共有装置10は、受け付けられた共有要求に含まれる共有先ユーザ識別情報のそれぞれに対して、当該共有先ユーザ識別情報と対応付けて記憶装置12に記憶されている公開鍵に基づく、公開鍵暗号方式に従った暗号化処理を、対称鍵(アクセスコードを使用しない場合)、又は、暫定暗号化済対称鍵(アクセスコードを使用する場合)に対して行うことにより暗号化済対称鍵を生成する(図7のステップS311)。
次いで、データ共有装置10は、受け付けられた共有要求に含まれる共有先ユーザ識別情報のそれぞれに対して、当該共有先ユーザ識別情報と、図7のステップS306にて記憶された対象データ識別情報と、図7のステップS311にて生成された暗号化済対称鍵と、当該暗号化済対称鍵に対する暗号方式情報と、を互いに対応付けて記憶装置12に記憶させる(図7のステップS312)。
これにより、データ共有装置10は、図7の処理を終了する。
また、データ共有装置10は、アクセス要求、更新要求、及び、締結要求を処理するため、図8に表される処理を実行する。
データ共有装置10は、アクセス要求を受け付けるまで、図8のステップS401にて「No」と判定することにより待機する。
その後、端末装置20-nのユーザは、入力装置23を用いてアクセス要求を入力する。これにより、端末装置20-nは、入力されたアクセス要求を受け付け、受け付けられたアクセス要求をデータ共有装置10へ送信する。
これにより、データ共有装置10は、端末装置20-nからアクセス要求を受信し、受信されたアクセス要求を受け付ける(図8のステップS401)。その結果、データ共有装置10は、図8のステップS401にて「Yes」と判定し、受け付けられたアクセス要求に含まれるアクセスユーザ識別情報に対するログインが許可されている(換言すると、アクセスユーザがログイン中である)か否かを判定する(図8のステップS402)。例えば、データ共有装置10は、アクセスユーザ識別情報と対応付けて記憶装置12に真正情報が記憶されている場合、アクセスユーザがログイン中であると判定してよい。
アクセスユーザがログイン中でない場合、データ共有装置10は、ステップS402にて「No」と判定し、ステップS403へ進んで、図6に表されるユーザ認証処理を開始した後、ステップS402へ戻る。
アクセスユーザがログイン中である場合、データ共有装置10は、ステップS402にて「Yes」と判定し、受け付けられたアクセス要求に含まれる、対象データ識別情報及びアクセスユーザ識別情報と対応付けて記憶装置12に記憶されている暗号方式情報を取得する(図8のステップS404)。
次いで、データ共有装置10は、取得された暗号方式情報が表す暗号方式が共通鍵暗号方式であるか否かを判定する(図8のステップS405)。
暗号方式情報が表す暗号方式が共通鍵暗号方式である場合、データ共有装置10は、ステップS405にて「Yes」と判定し、ステップS406へ進んで、図9に表される共通鍵暗号方式対称鍵復号処理を実行する。
具体的には、データ共有装置10は、受け付けられたアクセス要求に含まれる、アクセスユーザ識別情報及び対象データ識別情報と対応付けて記憶装置12に記憶されている暗号化済対称鍵に対して、当該アクセスユーザ識別情報と対応付けて記憶装置12に記憶されている真正情報に基づく、共通鍵暗号方式に従った復号処理を行うことにより、対称鍵(アクセスコードを使用しない場合)、又は、暫定暗号化済対称鍵(アクセスコードを使用する場合)を取得する(図9のステップS4061)。
次いで、データ共有装置10は、図8のステップS404にて取得された暗号方式情報が、アクセスコードの使用が設定されていることを表すか否かを判定する(図9のステップS4062)。
暗号方式情報が、アクセスコードの使用が設定されていることを表す場合、データ共有装置10は、ステップS4062にて「Yes」と判定し、ステップS4061にて取得された暫定暗号化済対称鍵に対して、受け付けられたアクセス要求に含まれるアクセスコードに基づく、共通鍵暗号方式に従った復号処理を行うことにより対称鍵を取得する(図9のステップS4063)。次いで、データ共有装置10は、図9の処理を終了することにより、図8のステップS408へ進む。
一方、暗号方式情報が、アクセスコードの使用が設定されていないことを表す場合、データ共有装置10は、ステップS4062にて「No」と判定し、図9のステップS4063を実行することなく、図9の処理を終了することにより、図8のステップS408へ進む。
また、暗号方式情報が表す暗号方式が公開鍵暗号方式である場合、データ共有装置10は、ステップS405にて「No」と判定し、ステップS407へ進んで、図10に表される公開鍵暗号方式対称鍵復号処理を実行する。
具体的には、データ共有装置10は、受け付けられたアクセス要求に含まれる、アクセスユーザ識別情報と対応付けて記憶装置12に記憶されている暗号化済秘密鍵に対して、当該アクセスユーザ識別情報と対応付けて記憶装置12に記憶されている真正情報に基づく、共通鍵暗号方式に従った復号処理を行うことにより秘密鍵を取得する(図10のステップS4071)。
次いで、データ共有装置10は、受け付けられたアクセス要求に含まれる、アクセスユーザ識別情報及び対象データ識別情報と対応付けて記憶装置12に記憶されている暗号化済対称鍵に対して、取得された秘密鍵に基づく、公開鍵暗号方式に従った復号処理を行うことにより、対称鍵(アクセスコードを使用しない場合)、又は、暫定暗号化済対称鍵(アクセスコードを使用する場合)を取得する(図10のステップS4072)。
次いで、データ共有装置10は、図8のステップS404にて取得された暗号方式情報が、アクセスコードの使用が設定されていることを表すか否かを判定する(図10のステップS4073)。
暗号方式情報が、アクセスコードの使用が設定されていることを表す場合、データ共有装置10は、ステップS4073にて「Yes」と判定し、ステップS4072にて取得された暫定暗号化済対称鍵に対して、受け付けられたアクセス要求に含まれるアクセスコードに基づく、共通鍵暗号方式に従った復号処理を行うことにより対称鍵を取得する(図10のステップS4074)。次いで、データ共有装置10は、図10のステップS4075へ進む。
一方、暗号方式情報が、アクセスコードの使用が設定されていないことを表す場合、データ共有装置10は、ステップS4073にて「No」と判定し、図10のステップS4074を実行することなく、図10のステップS4075へ進む。
次いで、データ共有装置10は、図8のステップS404にて取得された暗号方式情報が、アクセスコードの使用が設定されていることを表すか否かを判定する(図10のステップS4075)。
暗号方式情報が、アクセスコードの使用が設定されていることを表す場合、データ共有装置10は、ステップS4075にて「Yes」と判定し、ステップS4074にて取得された対称鍵に対して、受け付けられたアクセス要求に含まれるアクセスコードに基づく、共通鍵暗号方式に従った暗号化処理を行うことにより、暫定暗号化済対称鍵を生成する(図10のステップS4076)。その後、データ共有装置10は、図10のステップS4077へ進む。
一方、暗号方式情報が、アクセスコードの使用が設定されていないことを表す場合、データ共有装置10は、ステップS4075にて「No」と判定し、図10のステップS4076を実行することなく、図10のステップS4077へ進む。
次いで、データ共有装置10は、ステップS4072にて取得された対称鍵(アクセスコードを使用しない場合)、又は、ステップS4076にて生成された暫定暗号化済対称鍵(アクセスコードを使用する場合)に対して、受け付けられたアクセス要求に含まれるアクセスユーザ識別情報と対応付けて記憶装置12に記憶されている真正情報に基づく、共通鍵暗号方式に従った暗号化処理を行うことにより暗号化済対称鍵を生成する(図10のステップS4077)。
なお、データ共有装置10は、ステップS4072にて取得された暫定暗号化済対称鍵を、ステップS4077にて使用してもよい。この場合、図10のステップS4075及びステップS4076の処理は、図10の処理から省略されてよい。
次いで、データ共有装置10は、受け付けられたアクセス要求に含まれる、アクセスユーザ識別情報及び対象データ識別情報と対応付けて記憶装置12に記憶されている、暗号化済対称鍵及び暗号方式情報を、図10のステップS4077にて生成された暗号化済対称鍵、及び、当該暗号化済対称鍵に対する新たな暗号方式情報にそれぞれ更新する(図10のステップS4078)。
次いで、データ共有装置10は、図10の処理を終了することにより、図8のステップS408へ進む。
次いで、データ共有装置10は、受け付けられたアクセス要求に含まれる対象データ識別情報と対応付けて記憶装置12に記憶されている暗号化済対象データに対して、ステップS406又はステップS407にて取得された対称鍵に基づく、共通鍵暗号方式に従った復号処理を行うことにより対象データを取得する(図8のステップS408)。
次いで、データ共有装置10は、取得された対象データを、受け付けられたアクセス要求を送信してきた端末装置20-nへ送信する。
これにより、端末装置20-nは、データ共有装置10から対象データを受信し、受信された対象データを出力する(本例では、ディスプレイに表示する)。
次いで、データ共有装置10は、アクセス要求に続いて更新要求又は締結要求を受け付けるまで、図8のステップS409にて「No」と判定することにより待機する。
その後、端末装置20-nのユーザは、入力装置23を用いて更新要求又は締結要求を入力する。これにより、端末装置20-nは、入力された更新要求又は締結要求を受け付け、受け付けられた更新要求又は締結要求をデータ共有装置10へ送信する。
これにより、データ共有装置10は、端末装置20-nから更新要求又は締結要求を受信し、受信された更新要求又は締結要求を受け付ける(図8のステップS409)。その結果、データ共有装置10は、図8のステップS409にて「Yes」と判定し、ステップS409にて受け付けられた処理要求が更新要求であるか否かを判定する(図8のステップS410)。
受け付けられた処理要求が更新要求である場合、データ共有装置10は、ステップS410にて「Yes」と判定し、当該更新要求に含まれる、更新後の対象データに対して、ステップS406又はステップS407にて取得された対称鍵に基づく、共通鍵暗号方式に従った暗号化処理を行うことによって、当該対象データを暗号化することにより暗号化済対象データを生成する(図8のステップS411)。
次いで、データ共有装置10は、受け付けられた更新要求に含まれる対象データ識別情報と対応付けて記憶装置12に記憶されている暗号化済対象データを、ステップS411にて生成された暗号化済対象データに更新する(図8のステップS412)。次いで、データ共有装置10は、図8の処理を終了する。
一方、受け付けられた処理要求が締結要求である場合、データ共有装置10は、ステップS410にて「No」と判定し、ステップS413へ進んで、図11に表される締結処理を実行する。
具体的には、データ共有装置10は、締結要求情報を、受け付けられた締結要求に含まれる対象データ識別情報及び締結要求ユーザ識別情報と対応付けて記憶装置12に記憶させる(図11のステップS4131)。
次いで、データ共有装置10は、受け付けられた締結要求に含まれる対象データ識別情報と対応付けて記憶装置12に記憶されている、すべての共有ユーザ識別情報を抽出し、抽出された共有ユーザ識別情報のそれぞれに対して、当該共有ユーザ識別情報と対応付けて締結要求情報が記憶装置12に記憶されている(換言すると、すべての共有ユーザの締結要求情報が記憶されている)か否かを判定する(図11のステップS4132)。
抽出された共有ユーザ識別情報の少なくとも1つに対して締結要求情報が記憶されていない(換言すると、対象データが表す契約が締結されていない)場合、データ共有装置10は、ステップS4132にて「No」と判定し、後述されるステップS4133乃至ステップS4139の処理を実行することなく、図11の処理を終了することにより図8の処理を終了する。
一方、抽出された共有ユーザ識別情報のすべてに対して締結要求情報が記憶されている(換言すると、対象データが表す契約が締結された)場合、データ共有装置10は、ステップS4132にて「Yes」と判定し、当該抽出された共有ユーザ識別情報により識別される共有ユーザのそれぞれに対して、図8のステップS408にて取得された対象データの暗号化及び復号に用いられる対称鍵を生成する(図11のステップS4133)。
次いで、データ共有装置10は、当該抽出された共有ユーザ識別情報により識別される共有ユーザのそれぞれに対して、生成された対称鍵に基づく、共通鍵暗号方式に従った暗号化処理を、図8のステップS408にて取得された対象データに対して行うことによって、当該対象データを暗号化することにより暗号化済対象データを生成する(図11のステップS4134)。
次いで、データ共有装置10は、当該抽出された共有ユーザ識別情報により識別される共有ユーザのそれぞれに対して、ステップS4134にて生成された暗号化済対象データを、新たに割り当てられる対象データ識別情報と対応付けて記憶装置12に記憶させる(図11のステップS4135)。
次いで、データ共有装置10は、今回、受け付けられた締結要求に含まれる締結要求ユーザ識別情報により識別される今回要求ユーザに対してステップS4133にて生成された対称鍵に対して、今回要求ユーザを識別するユーザ識別情報と対応付けて記憶装置12に記憶されている真正情報に基づく、共通鍵暗号方式に従った暗号化処理を行うことにより暗号化済対称鍵を生成する(図11のステップS4136)。
次いで、データ共有装置10は、当該今回要求ユーザを識別するユーザ識別情報と、ステップS4136にて生成された暗号化済対称鍵と、当該暗号化済対称鍵に対する暗号方式情報と、当該今回要求ユーザに対してステップS4135にて記憶された対象データ識別情報と、を互いに対応付けて記憶装置12に記憶させる(図11のステップS4137)。
次いで、データ共有装置10は、当該抽出された共有ユーザ識別情報のうちの、今回、受け付けられた締結要求に含まれる締結要求ユーザ識別情報以外の共有ユーザ識別情報(換言すると、今回よりも前に受け付けられた締結要求に含まれる締結要求ユーザ識別情報)により識別される過去要求ユーザのそれぞれに対して、当該過去要求ユーザを識別するユーザ識別情報と対応付けて記憶装置12に記憶されている公開鍵に基づく、公開鍵暗号方式に従った暗号化処理を当該過去要求ユーザに対してステップS4133にて生成された対称鍵に対して行うことにより暗号化済対称鍵を生成する(図11のステップS4138)。
次いで、データ共有装置10は、当該過去要求ユーザのそれぞれに対して、当該過去要求ユーザを識別するユーザ識別情報と、ステップS4138にて生成された暗号化済対称鍵と、当該暗号化済対称鍵に対する暗号方式情報と、当該過去要求ユーザに対してステップS4135にて記憶された対象データ識別情報と、を互いに対応付けて記憶装置12に記憶させる(図11のステップS4139)。
次いで、データ共有装置10は、図11の処理を終了することにより図8の処理を終了する。
以上、説明したように、第1実施形態のデータ共有装置10は、複数のユーザ(本例では、共有ユーザ)が対象データを共有する。
データ共有装置10は、真正情報取得部(本例では、ユーザ情報受付部111、及び、認証用入力情報受付部121)と、対象データ暗号化部132と、対象データ記憶部133と、復号鍵暗号化部134と、復号鍵記憶部(本例では、アクセス情報記憶部135)と、対象データ復号部136と、を備える。
真正情報取得部は、ユーザに対する、当該ユーザが真正であることを示す情報である真正情報を取得する。
対象データ暗号化部132は、対象データを受け付けるとともに、当該対象データの暗号化及び復号にそれぞれ用いられる暗号鍵及び復号鍵を生成し、且つ、当該暗号鍵に基づいて当該対象データを暗号化することにより暗号化済対象データを生成する。
対象データ記憶部133は、暗号化済対象データを記憶する。
復号鍵暗号化部134は、複数のユーザのそれぞれに対して、当該ユーザに対する真正情報に基づいて復号可能に、復号鍵を暗号化することにより暗号化済復号鍵を生成する。
復号鍵記憶部は、複数のユーザのそれぞれに対して、当該ユーザに対して生成された暗号化済復号鍵を当該ユーザと対応付けて記憶する。
対象データ復号部136は、ユーザに対して取得された真正情報に基づいて、当該ユーザと対応付けて記憶されている暗号化済復号鍵を復号することにより復号鍵を取得するとともに、当該復号鍵に基づいて、暗号化済対象データを復号することにより対象データを取得する。
これによれば、対象データを共有する複数のユーザのそれぞれに対して、真正情報に基づいて、暗号化済復号鍵を復号することにより復号鍵が取得され、当該復号鍵に基づいて、暗号化済対象データを復号することにより対象データが取得される。従って、復号鍵を、対象データを共有する複数のユーザに通知することなく、当該複数のユーザのそれぞれが対象データを取得できる。
また、対象データに代えて、暗号化済対象データが記憶される。更に、暗号化済対象データの復号に用いられる復号鍵に代えて、暗号化済復号鍵が記憶される。従って、対象データ及び復号鍵が漏洩することを抑制できる。
このように、データ共有装置10によれば、複数のユーザが対象データを共有しながら、対象データが表す情報の漏洩を抑制できる。
更に、第1実施形態のデータ共有装置10において、復号鍵暗号化部134は、複数のユーザのうちの、少なくとも一部のユーザのそれぞれに対する復号鍵の暗号化において、共通鍵暗号方式に従った、当該ユーザに対する真正情報に基づく暗号化処理を行う。
これによれば、公開鍵暗号方式を用いる場合よりも、復号鍵の暗号化及び復号における処理の負荷を抑制できる。
更に、第1実施形態のデータ共有装置10において、復号鍵暗号化部134は、複数のユーザのうちの、少なくとも一部のユーザのそれぞれに対する復号鍵の暗号化において、公開鍵暗号方式に従った、当該ユーザと対応付けられた公開鍵に基づく暗号化処理を行う。
ところで、データ共有装置10は、ログインしていないユーザに対して真正情報を取得できないことが多い。このため、ログインしていないユーザに対して、当該ユーザに対する真正情報に基づく暗号化処理を行えない虞がある。これに対し、データ共有装置10によれば、ログインしていないユーザに対しても、復号鍵の暗号化を行うことができる。
更に、第1実施形態のデータ共有装置10において、復号鍵暗号化部134は、複数のユーザのうちの、ログイン中のユーザに対する復号鍵の暗号化において、共通鍵暗号方式に従った、当該ユーザに対する真正情報に基づく暗号化処理を行うとともに、当該複数のユーザのうちの、ログイン中のユーザ以外のユーザのそれぞれに対する復号鍵の暗号化において、公開鍵暗号方式に従った、当該ユーザと対応付けられた公開鍵に基づく暗号化処理を行う。
これによれば、ログイン中のユーザに対して、共通鍵暗号方式に従った暗号化処理が行われる。従って、公開鍵暗号方式を用いる場合よりも、復号鍵の暗号化における処理の負荷を抑制できる。更に、複数のユーザのうちの、ログイン中のユーザ以外のユーザに対して、公開鍵暗号方式に従った暗号化処理が行われる。
このように、対象データを共有する複数のユーザのそれぞれに対して、復号鍵の暗号化を行うことができる。
更に、第1実施形態のデータ共有装置10において、復号鍵暗号化部134は、複数のユーザのうちの、ログイン中のユーザに対して、当該ユーザと対応付けて記憶されている暗号化済復号鍵の復号において公開鍵暗号方式に従った復号処理が行われることにより復号鍵が取得された場合、共通鍵暗号方式に従った、当該ユーザに対する真正情報に基づく暗号化処理を行うことによって当該復号鍵を暗号化し直すことにより、当該ユーザに対する暗号化済復号鍵を生成する。復号鍵記憶部は、ログイン中のユーザに対して、当該ユーザに対して生成された暗号化済復号鍵を当該ユーザと対応付けて記憶する。
これによれば、公開鍵暗号方式に従った暗号化済復号鍵を、共通鍵暗号方式に従った暗号化済復号鍵に置き換えることができる。ところで、共通鍵暗号方式に従った暗号化処理及び復号処理は、公開鍵暗号方式よりも負荷が小さい。従って、復号鍵の暗号化及び復号における処理の負荷を抑制できる。
更に、第1実施形態のデータ共有装置10は、秘密鍵暗号化部112と、公開鍵秘密鍵記憶部(本例では、ユーザ情報記憶部113)と、を備える。
秘密鍵暗号化部112は、複数のユーザのそれぞれに対して、公開鍵暗号方式に従った暗号化処理及び復号処理にそれぞれ用いられる公開鍵及び秘密鍵を生成するとともに、共通鍵暗号方式に従った、当該ユーザに対して取得された真正情報に基づく暗号化処理を行うことによって当該秘密鍵を暗号化することにより暗号化済秘密鍵を生成する。
公開鍵秘密鍵記憶部は、複数のユーザのそれぞれに対して、当該ユーザと、公開鍵と、暗号化済秘密鍵と、を互いに対応付けて記憶する。
復号鍵暗号化部134は、複数のユーザのうちの、少なくとも一部のユーザのそれぞれに対する復号鍵の暗号化において、公開鍵暗号方式に従った、当該ユーザと対応付けて記憶されている公開鍵に基づく暗号化処理を行う。
これによれば、秘密鍵に代えて、暗号化済秘密鍵が記憶される。従って、秘密鍵が漏洩することを抑制できる。この結果、複数のユーザが対象データを共有しながら、対象データが表す情報の漏洩を抑制できる。
更に、第1実施形態のデータ共有装置10において、対象データは、複数のユーザの間で締結される契約を表す。対象データ暗号化部132は、契約が締結された場合、複数のユーザのそれぞれに対して、対象データの暗号化及び復号にそれぞれ用いられる暗号鍵及び復号鍵を生成し、且つ、当該暗号鍵に基づいて当該対象データを暗号化することにより暗号化済対象データを生成する。
対象データ記憶部133は、複数のユーザのそれぞれに対して、当該ユーザに対して生成された暗号化済対象データを当該ユーザと対応付けて記憶する。
これによれば、契約が締結された後、対象データを共有していた複数のユーザに対して、互いに独立に対象データを保管できる。
更に、第1実施形態のデータ共有装置10において、復号鍵暗号化部134は、アクセスコードを受け付けるとともに、複数のユーザのそれぞれに対する復号鍵の暗号化において、共通鍵暗号方式に従った、当該アクセスコードに基づく暗号化処理を行う。
対象データ復号部136は、アクセスコードを受け付けるとともに、暗号化済復号鍵の復号において、共通鍵暗号方式に従った、当該アクセスコードに基づく復号処理を行う。
これによれば、アクセスコードが知得されない限り、復号鍵が取得されない。従って、対象データが表す情報の漏洩をより一層抑制できる。
なお、第1実施形態の変形例のデータ共有装置10は、アクセスコードを使用しないように構成されていてもよい。
また、第1実施形態の変形例のデータ共有装置10は、対称鍵の暗号化において、真正情報に基づく共通鍵暗号方式に従った暗号化処理に代えて、公開鍵に基づく公開鍵暗号方式に従った暗号化処理を用いてもよい。換言すると、第1実施形態の変形例のデータ共有装置10は、いずれのユーザに対しても、対称鍵の暗号化において、当該ユーザに対応付けられた公開鍵に基づく公開鍵暗号方式に従った暗号化処理を行ってもよい。
なお、本発明は、上述した実施形態に限定されない。例えば、上述した実施形態に、本発明の趣旨を逸脱しない範囲内において当業者が理解し得る様々な変更が加えられてよい。
1 データ共有システム
10 データ共有装置
11 処理装置
12 記憶装置
13 入力装置
14 出力装置
15 通信装置
110 ユーザ登録処理部
111 ユーザ情報受付部
112 秘密鍵暗号化部
113 ユーザ情報記憶部
120 ユーザ認証処理部
121 認証用入力情報受付部
122 真正情報記憶部
130 要求処理部
131 要求受付部
132 対象データ暗号化部
133 対象データ記憶部
134 復号鍵暗号化部
135 アクセス情報記憶部
136 対象データ復号部
20-1,20-2,…,20-N 端末装置
21 処理装置
22 記憶装置
23 入力装置
24 出力装置
25 通信装置
201 ユーザ情報入力部
202 認証用入力情報入力部
203 要求入力部
204 対象データ出力部
BU1 バス
BU2 バス
NW 通信回線

Claims (8)

  1. 複数のユーザが対象データを共有するデータ共有装置であって、
    前記ユーザに対する、前記データ共有装置へのログインが許可された場合、当該ユーザが真正であることを示す情報である真正情報を取得する真正情報取得部と、
    前記対象データを受け付けるとともに、当該対象データの暗号化及び復号にそれぞれ用いられる暗号鍵及び復号鍵を生成し、且つ、当該暗号鍵に基づいて当該対象データを暗号化することにより暗号化済対象データを生成する対象データ暗号化部と、
    前記暗号化済対象データを記憶する対象データ記憶部と、
    前記複数のユーザのそれぞれに対して、当該ユーザに対する前記真正情報に基づいて復号可能に、前記復号鍵を暗号化することにより暗号化済復号鍵を生成する復号鍵暗号化部と、
    前記複数のユーザのそれぞれに対して、当該ユーザに対して生成された前記暗号化済復号鍵を当該ユーザと対応付けて記憶する復号鍵記憶部と、
    前記ユーザに対して取得された前記真正情報に基づいて、当該ユーザと対応付けて記憶されている前記暗号化済復号鍵を復号することにより前記復号鍵を取得するとともに、当該復号鍵に基づいて、前記暗号化済対象データを復号することにより前記対象データを取得する対象データ復号部と、
    を備え、
    前記復号鍵暗号化部は、前記複数のユーザのうちの、前記データ共有装置にログイン中のユーザに対する前記復号鍵の暗号化において、当該復号鍵に対して、共通鍵暗号方式に従った、当該ユーザに対する前記真正情報に基づく暗号化処理を行うことにより、前記暗号化済復号鍵を生成するとともに、前記複数のユーザのうちの、前記データ共有装置にログイン中のユーザ以外のユーザのそれぞれに対する前記復号鍵の暗号化において、当該復号鍵に対して、公開鍵暗号方式に従った、当該ユーザと対応付けられた公開鍵に基づく暗号化処理を行うことにより、前記暗号化済復号鍵を生成する、データ共有装置
  2. 請求項に記載のデータ共有装置であって、
    前記復号鍵暗号化部は、前記複数のユーザのうちの、前記データ共有装置にログイン中のユーザに対して、当該ユーザと対応付けて記憶されている前記暗号化済復号鍵の復号において、当該暗号化済復号鍵に対して、公開鍵暗号方式に従った復号処理が行われることにより前記復号鍵が取得された場合、当該復号鍵に対して、共通鍵暗号方式に従った、当該ユーザに対する前記真正情報に基づく暗号化処理を行うことによって当該復号鍵を暗号化し直すことにより、当該ユーザに対する暗号化済復号鍵を生成し、
    前記復号鍵記憶部は、前記データ共有装置にログイン中のユーザに対して、当該ユーザに対して生成された前記暗号化済復号鍵を当該ユーザと対応付けて記憶する、データ共有装置。
  3. 複数のユーザが対象データを共有するデータ共有装置であって、
    前記ユーザに対する、前記データ共有装置へのログインが許可された場合、当該ユーザが真正であることを示す情報である真正情報を取得する真正情報取得部と、
    前記対象データを受け付けるとともに、当該対象データの暗号化及び復号にそれぞれ用いられる暗号鍵及び復号鍵を生成し、且つ、当該暗号鍵に基づいて当該対象データを暗号化することにより暗号化済対象データを生成する対象データ暗号化部と、
    前記暗号化済対象データを記憶する対象データ記憶部と、
    前記複数のユーザのそれぞれに対して、当該ユーザに対する前記真正情報に基づいて復号可能に、前記復号鍵を暗号化することにより暗号化済復号鍵を生成する復号鍵暗号化部と、
    前記複数のユーザのそれぞれに対して、当該ユーザに対して生成された前記暗号化済復号鍵を当該ユーザと対応付けて記憶する復号鍵記憶部と、
    前記ユーザに対して取得された前記真正情報に基づいて、当該ユーザと対応付けて記憶されている前記暗号化済復号鍵を復号することにより前記復号鍵を取得するとともに、当該復号鍵に基づいて、前記暗号化済対象データを復号することにより前記対象データを取得する対象データ復号部と、
    を備え、
    前記復号鍵暗号化部は、前記真正情報と異なるアクセスコードを受け付けるとともに、前記複数のユーザのそれぞれに対する前記復号鍵の暗号化において、当該復号鍵に対して、共通鍵暗号方式に従った、当該アクセスコードに基づく暗号化処理を行うことにより、暫定暗号化済復号鍵を生成し、且つ、前記複数のユーザのうちの、少なくとも一部のユーザのそれぞれに対する前記復号鍵の暗号化において、当該暫定暗号化済復号鍵に対して、共通鍵暗号方式に従った、当該ユーザに対する前記真正情報に基づく暗号化処理を行うことにより、前記暗号化済復号鍵を生成する、データ共有装置。
  4. 請求項に記載のデータ共有装置であって、
    前記復号鍵暗号化部は、前記複数のユーザのうちの、前記データ共有装置にログイン中のユーザに対する前記復号鍵の暗号化において、前記暫定暗号化済復号鍵に対して、共通鍵暗号方式に従った、当該ユーザに対する前記真正情報に基づく暗号化処理を行うことにより、前記暗号化済復号鍵を生成するとともに、前記複数のユーザのうちの、前記データ共有装置にログイン中のユーザ以外のユーザのそれぞれに対する前記復号鍵の暗号化において、当該暫定暗号化済復号鍵に対して、公開鍵暗号方式に従った、当該ユーザと対応付けられた公開鍵に基づく暗号化処理を行うことにより、前記暗号化済復号鍵を生成する、データ共有装置。
  5. 請求項に記載のデータ共有装置であって、
    前記復号鍵暗号化部は、前記複数のユーザのうちの、前記データ共有装置にログイン中のユーザに対して、当該ユーザと対応付けて記憶されている前記暗号化済復号鍵の復号において、当該暗号化済復号鍵に対して、公開鍵暗号方式に従った復号処理が行われることにより前記復号鍵が取得された場合、当該復号鍵に対して、共通鍵暗号方式に従った、前記アクセスコードに基づく暗号化処理を行うことにより、暫定暗号化済復号鍵を生成し、且つ、当該暫定暗号化済復号鍵に対して、共通鍵暗号方式に従った、当該ユーザに対する前記真正情報に基づく暗号化処理を行うことによって当該復号鍵を暗号化し直すことにより、当該ユーザに対する暗号化済復号鍵を生成し、
    前記復号鍵記憶部は、前記データ共有装置にログイン中のユーザに対して、当該ユーザに対して生成された前記暗号化済復号鍵を当該ユーザと対応付けて記憶する、データ共有装置。
  6. 請求項1乃至請求項のいずれか一項に記載のデータ共有装置であって、
    前記対象データは、前記複数のユーザの間で締結される契約を表し、
    前記対象データ暗号化部は、前記契約が締結された場合、前記複数のユーザのそれぞれに対して、前記対象データの暗号化及び復号にそれぞれ用いられる暗号鍵及び復号鍵を生成し、且つ、当該暗号鍵に基づいて当該対象データを暗号化することにより暗号化済対象データを生成し、
    前記対象データ記憶部は、前記複数のユーザのそれぞれに対して、当該ユーザに対して生成された前記暗号化済対象データを当該ユーザと対応付けて記憶する、データ共有装置。
  7. 複数のユーザが対象データを共有する処理をコンピュータが実行するデータ共有方法であって、
    前記処理は、
    前記ユーザに対する、前記コンピュータへのログインが許可された場合、当該ユーザが真正であることを示す情報である真正情報を取得し、
    前記対象データを受け付けるとともに、当該対象データの暗号化及び復号にそれぞれ用いられる暗号鍵及び復号鍵を生成し、且つ、当該暗号鍵に基づいて当該対象データを暗号化することにより暗号化済対象データを生成し、
    前記暗号化済対象データを記憶し、
    前記複数のユーザのそれぞれに対して、当該ユーザに対する前記真正情報に基づいて復号可能に、前記復号鍵を暗号化することにより暗号化済復号鍵を生成し、
    前記複数のユーザのそれぞれに対して、当該ユーザに対して生成された前記暗号化済復号鍵を当該ユーザと対応付けて記憶し、
    前記ユーザに対して取得された前記真正情報に基づいて、当該ユーザと対応付けて記憶されている前記暗号化済復号鍵を復号することにより前記復号鍵を取得するとともに、当該復号鍵に基づいて、前記暗号化済対象データを復号することにより前記対象データを取得する、
    ことを含み、
    前記複数のユーザのうちの、前記コンピュータにログイン中のユーザに対する前記復号鍵の暗号化において、当該復号鍵に対して、共通鍵暗号方式に従った、当該ユーザに対する前記真正情報に基づく暗号化処理を行うことにより、前記暗号化済復号鍵を生成するとともに、前記複数のユーザのうちの、前記コンピュータにログイン中のユーザ以外のユーザのそれぞれに対する前記復号鍵の暗号化において、当該復号鍵に対して、公開鍵暗号方式に従った、当該ユーザと対応付けられた公開鍵に基づく暗号化処理を行うことにより、前記暗号化済復号鍵を生成する、データ共有方法。
  8. 複数のユーザが対象データを共有する処理をコンピュータが実行するデータ共有方法であって、
    前記処理は、
    前記ユーザに対する、前記コンピュータへのログインが許可された場合、当該ユーザが真正であることを示す情報である真正情報を取得し、
    前記対象データを受け付けるとともに、当該対象データの暗号化及び復号にそれぞれ用いられる暗号鍵及び復号鍵を生成し、且つ、当該暗号鍵に基づいて当該対象データを暗号化することにより暗号化済対象データを生成し、
    前記暗号化済対象データを記憶し、
    前記複数のユーザのそれぞれに対して、当該ユーザに対する前記真正情報に基づいて復号可能に、前記復号鍵を暗号化することにより暗号化済復号鍵を生成し、
    前記複数のユーザのそれぞれに対して、当該ユーザに対して生成された前記暗号化済復号鍵を当該ユーザと対応付けて記憶し、
    前記ユーザに対して取得された前記真正情報に基づいて、当該ユーザと対応付けて記憶されている前記暗号化済復号鍵を復号することにより前記復号鍵を取得するとともに、当該復号鍵に基づいて、前記暗号化済対象データを復号することにより前記対象データを取得する、
    ことを含み、
    前記真正情報と異なるアクセスコードを受け付けるとともに、前記複数のユーザのそれぞれに対する前記復号鍵の暗号化において、当該復号鍵に対して、共通鍵暗号方式に従った、当該アクセスコードに基づく暗号化処理を行うことにより、暫定暗号化済復号鍵を生成し、且つ、前記複数のユーザのうちの、少なくとも一部のユーザのそれぞれに対する前記復号鍵の暗号化において、当該暫定暗号化済復号鍵に対して、共通鍵暗号方式に従った、当該ユーザに対する前記真正情報に基づく暗号化処理を行うことにより、前記暗号化済復号鍵を生成する、データ共有方法。
JP2021157890A 2021-09-28 2021-09-28 データ共有装置、及び、データ共有方法 Active JP7060751B1 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2021157890A JP7060751B1 (ja) 2021-09-28 2021-09-28 データ共有装置、及び、データ共有方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2021157890A JP7060751B1 (ja) 2021-09-28 2021-09-28 データ共有装置、及び、データ共有方法

Publications (2)

Publication Number Publication Date
JP7060751B1 true JP7060751B1 (ja) 2022-04-26
JP2023048525A JP2023048525A (ja) 2023-04-07

Family

ID=81387418

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2021157890A Active JP7060751B1 (ja) 2021-09-28 2021-09-28 データ共有装置、及び、データ共有方法

Country Status (1)

Country Link
JP (1) JP7060751B1 (ja)

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002033727A (ja) 2000-05-11 2002-01-31 Matsushita Electric Ind Co Ltd ファイル管理装置
WO2005015862A1 (en) 2003-08-07 2005-02-17 Onaras Ag Method and devices for secure transmission of electronic messages
JP2006345261A (ja) 2005-06-09 2006-12-21 Sharp Corp データ処理装置
JP2009098889A (ja) 2007-10-16 2009-05-07 Buffalo Inc データ管理装置、データ管理方法およびデータ管理プログラム
JP2009245227A (ja) 2008-03-31 2009-10-22 Fujitsu Ltd 情報記憶装置
JP2009245579A (ja) 2008-03-31 2009-10-22 Toshiba Corp 記憶ドライブのアクセス方法及びハードディスクドライブ
US20210152351A1 (en) 2019-04-09 2021-05-20 Mark Rodney Anson Computer System Implemented Method for Generating a Symmetric Encryption Key Used for Encrypting and Decrypting a Computer System User's Hidden Data

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002033727A (ja) 2000-05-11 2002-01-31 Matsushita Electric Ind Co Ltd ファイル管理装置
WO2005015862A1 (en) 2003-08-07 2005-02-17 Onaras Ag Method and devices for secure transmission of electronic messages
JP2006345261A (ja) 2005-06-09 2006-12-21 Sharp Corp データ処理装置
JP2009098889A (ja) 2007-10-16 2009-05-07 Buffalo Inc データ管理装置、データ管理方法およびデータ管理プログラム
JP2009245227A (ja) 2008-03-31 2009-10-22 Fujitsu Ltd 情報記憶装置
JP2009245579A (ja) 2008-03-31 2009-10-22 Toshiba Corp 記憶ドライブのアクセス方法及びハードディスクドライブ
US20210152351A1 (en) 2019-04-09 2021-05-20 Mark Rodney Anson Computer System Implemented Method for Generating a Symmetric Encryption Key Used for Encrypting and Decrypting a Computer System User's Hidden Data

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
株式会社日本マーケティングリサーチ機構,高セキュリティ電子契約サービス「Kri」が、日本マーケティングリサーチ機構の調査で3部門No.1を獲得しました。,PR TIMES,2021年09月02日,[2022年3月17日検索],インターネット,<URL:https://prtimes.jp/main/html/rd/p/000000904.000033417.html>

Also Published As

Publication number Publication date
JP2023048525A (ja) 2023-04-07

Similar Documents

Publication Publication Date Title
CN106716914B (zh) 用于漫游的受保护内容的安全密钥管理
CN109150499B (zh) 动态加密数据的方法、装置、计算机设备和存储介质
US8984295B2 (en) Secure access to electronic devices
CN102427442B (zh) 组合请求相关元数据和元数据内容
US8396218B2 (en) Cryptographic module distribution system, apparatus, and program
CN107682141A (zh) 用于数据传输的数据加密方法和系统
JP4597784B2 (ja) データ処理装置
US10943020B2 (en) Data communication system with hierarchical bus encryption system
JP2011527804A (ja) 仮想入力レイアウトを用いた情報伝送
EP3282737B1 (en) Information processing device, authentication device, system, information processing method, program, and authentication method
JPWO2015111221A1 (ja) 機器証明書提供装置、機器証明書提供システムおよび機器証明書提供プログラム
JP2007058487A (ja) ログイン情報管理装置及び方法
KR101541165B1 (ko) 모바일 메시지 암호화 방법, 이 방법을 수행하는 프로그램을 기록한 컴퓨터 판독가능 기록매체 및 이 방법을 저장한 다운로드 서버
JP6719503B2 (ja) ログイン制御方法
JP2024025805A (ja) 鍵端末に秘密鍵を秘匿したまま暗号ファイルを処理するストレージシステムのダウンロード端末、鍵端末、ならびに、ストレージサーバ
JP7060751B1 (ja) データ共有装置、及び、データ共有方法
JP2010200210A (ja) 鍵管理機器及び鍵利用システム及び鍵運用システム及び鍵管理方法及び鍵管理プログラム
KR100505481B1 (ko) 휴대용 단말기를 이용한 웹서비스 접속 인증시스템
CN106330897A (zh) 一种信息存储方法及系统
KR101808313B1 (ko) 데이터 암호화 방법
JP7555553B1 (ja) 情報端末、情報処理システム、コンピュータプログラム及び情報処理方法
JP6627398B2 (ja) 代理認証装置、代理認証方法および代理認証プログラム
US20240305458A1 (en) Systems and Methods for Non-Custodial Key Storage and Digital Signatures
WO2022249293A1 (ja) 制御方法、制御プログラム、情報処理システムおよび情報処理装置
CN111741374B (zh) 获取白盒查找表的方法、装置、电子设备、存储介质及服务端

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20210928

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20210928

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210929

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20211221

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20211226

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20220322

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220401

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: 20220413

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20220414

R150 Certificate of patent or registration of utility model

Ref document number: 7060751

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150