JP6151140B2 - 情報の暗号化・復号化方法、情報提供システムおよびプログラム - Google Patents

情報の暗号化・復号化方法、情報提供システムおよびプログラム Download PDF

Info

Publication number
JP6151140B2
JP6151140B2 JP2013189996A JP2013189996A JP6151140B2 JP 6151140 B2 JP6151140 B2 JP 6151140B2 JP 2013189996 A JP2013189996 A JP 2013189996A JP 2013189996 A JP2013189996 A JP 2013189996A JP 6151140 B2 JP6151140 B2 JP 6151140B2
Authority
JP
Japan
Prior art keywords
user
information
key
encryption
terminal
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2013189996A
Other languages
English (en)
Other versions
JP2015056820A (ja
Inventor
安細 康介
康介 安細
尚宜 佐藤
尚宜 佐藤
磯部 義明
義明 磯部
英 岩崎
英 岩崎
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP2013189996A priority Critical patent/JP6151140B2/ja
Priority to CN201410238695.7A priority patent/CN104468496B/zh
Priority to US14/304,255 priority patent/US9479330B2/en
Publication of JP2015056820A publication Critical patent/JP2015056820A/ja
Application granted granted Critical
Publication of JP6151140B2 publication Critical patent/JP6151140B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0819Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
    • H04L9/0822Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) using key encryption key
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/24Key scheduling, i.e. generating round keys or sub-keys for block encryption

Landscapes

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

Description

本発明は、情報を暗号化し、暗号化した情報を復号化するシステムに関する。
情報システムの発展に伴い、情報提供サービスを行う複数の情報提供者のサーバや情報を利用する複数の利用者の端末が、インターネット等を通じて相互に接続され、利用者各々が様々な情報提供サービスを利用するのが一般的になってきている。また、情報提供サービスを行う情報提供者の数が多くなるに従い、各利用者が求める情報提供サービスを自ら発見し、管理するのが難しくなってきたため、主要かつ有用な情報提供サービスを纏めて管理し利用者に対し情報中継を行うポータルサイトと呼ばれる情報中継サービス提供者が必要となってきている。
情報提供者は、特定の利用者に向けたデータを情報中継サービス提供者宛に送信し、情報中継サービス提供者は、利用者向けに送られた情報提供者からのデータを一時的に蓄積し、利用者は自らの要求に基づき、情報中継サービス提供者が一時的に蓄積している自分宛の情報を取得・閲覧するというサービス形態が想定されている。
また、利用者利便性を上げるため、利用者は自らの代理人権限を別の利用者に付与し、代理人権限を付与された利用者は、代理権限付与元の利用者宛に送信されたデータを代わりに取得・閲覧することが可能となる代理人サービスというサービス形態も考えられている。
上記のようなサービス形態を想定した際、セキュリティ上の問題が発生する。情報中継サービス提供者の役割は、受信した利用者宛のデータを一時保存し利用者からの要求に基づき送信を行うことであり、データの内容を閲覧できるべきではない。データの内容の閲覧が可能な場合は、情報中継サービス提供者の不正により、利用者が意図しない情報漏えいが起きる可能性がある。
情報漏えい対策としては、AES暗号などの従来技術により安全にかつ効率よく秘匿化をすることが可能であるが、情報提供者と利用者間で暗号化を行った場合、代理人サービスを想定すると新たな問題が発生する。
第一には、代理人権限を付与した別の利用者に対し、利用者が自らの暗号鍵を渡した場合、代理を意図したデータ以外の全てのデータについても、復号が可能となってしまう問題がある。
第二には、別途、情報提供者に依頼して、代理人権限を付与した別の利用者用に、代理人権限を付与した別の利用者だけが復号可能な暗号化したデータを送信する方法も考えられる。しかし、この場合は、情報提供者が各々代理人および代理人に対応する暗号鍵を管理し、代理人用に別途データを代理人に対応する暗号鍵を用いて暗号化する必要も生じるため、情報提供者の業務負荷が大きくなってしまう。
上記の問題を解決する従来技術として、特許文献1のように情報中継時の暗号化データを再暗号化する方法が知られている。
WO2012/147869
しかしながら、前記特許文献1では、利用者が一度代理権限を付与した他の利用者に対して、過去・未来と含めた全期間の代理閲覧権限を与えることしか出来ない。また、期間ごとに暗号鍵や再暗号化鍵を更新することで、特定期間のみの代理権限を付与することも可能ではあるが、その場合、利用者や代理人、情報提供者が管理すべき暗号鍵や、情報中継サービス提供者が管理すべき再暗号化鍵の数が膨大になり、管理運用も煩雑になってしまう問題がある。
本発明は、管理すべき鍵数を抑えつつ、利用者の代理人が、利用者により指定された一定期間のみ、利用者向けの情報を閲覧可能とする情報の暗号化・復号化方法、情報提供システムおよびプログラムを提供することを目的とする。
本発明の代表的な一例は次の通りである。すなわち、本発明は、情報を記憶する情報提供サーバにより、複数の利用者の端末の何れかからの情報要求に応じて、要求された情報を暗号化し、これを情報中継装置を介して情報要求元の利用者端末に送信する情報提供システムにおける、情報の暗号化・復号化方法である。前記情報中継装置により、第1の利用者の代理人である第2の利用者の端末からの情報の要求を受信し、暗号化データ記憶部に記憶されている第1の利用者の端末向けの前記情報の暗号化データを、第1の暗号鍵記憶部に記憶されている第2の利用者用の再暗号化鍵を用いて、再暗号化し、前記再暗号化データを、前記第2の利用者の端末に送信する。また、前記第2の利用者の端末により、前記情報中継装置から前記再暗号化データを受信し、第2の暗号鍵記憶部に記憶されている前記第2の利用者用の暗号鍵と、前記第1の利用者の端末により指定された、前記情報の閲覧可能期間と関連付いた時間鍵を用いて、前記受信した再暗号化データを復号する。
任意の利用者は、時間鍵により、代理人に対して代理で利用者向けの情報を閲覧可能な期間を指定できるため、管理すべき鍵数を抑えつつ、利用者の代理人が、利用者により指定された一定期間のみ、利用者向けの情報を閲覧できる。
第一実施形態における、情報提供システムの概略を例示する図である。 電子計算機の概略構成を例示する図である。 第一の実施形態における、本人鍵登録申請を行う処理を例示するシーケンス図である。 第一の実施形態における、本人宛の暗号化データを送信する処理を例示するシーケンス図である。 第一の実施形態における、本人宛の暗号化データを入手、閲覧する処理を例示するシーケンス図である。 第一の実施形態における、代理人鍵登録申請を行う処理を例示するシーケンス図である。 第一の実施形態における、代理人が代理元宛の暗号化データを入手、閲覧する処理を例示するシーケンス図である。
以下に、本発明の一実施形態について、図1〜図7の図面を用いて説明する。
(実施の形態1)
図1は、本発明の第一の実施の形態である情報提供システムの概略図である。図示するように、情報提供システムは、利用者が利用する1つ以上の利用者端末120と、情報提供者が利用する1つ以上の情報提供サーバ140と、情報中継サービス提供者が利用するポータル・サーバ(情報中継装置)100と、を備え、利用者端末120と情報提供サーバ140とポータル・サーバ100は、ネットワーク160を介して相互に情報を送受信できるように設計されている。このような構成を持つ情報提供システムは、複数の情報提供サーバ140と、情報を取得する複数の利用者端末120との間に、情報を中継するポータル・サーバ100があるモデルにおいて、情報提供サーバ140が特定の利用者端末120向けに暗号化したデータをポータルサーバ100が復号することなく利用者端末120の要求に応じて利用者が指定する代理人用の利用者端末120向けに再暗号化するシステムである。
なお、利用者端末120は、複数の利用者が各々の利用者端末を利用することから、利用者端末A(120−A)、利用者端末B(120−B)…と複数の利用者端末が接続されるものとする。
また、情報提供サーバ140は、複数の情報提供者が各々の情報提供サーバを利用することを想定し、情報提供サーバ1(140−1)、情報提供サーバ2(140−2)…と複数の情報提供サーバが接続されるものとする。
次に、図1のシステムを構成する各装置の機能概略について説明する。
情報提供サーバ140は、制御部141と、暗号処理部142と、通信部143と、入出力部144と、暗号鍵記憶部151と、情報記憶部152を備える。
情報記憶部152には、ポータル・サーバ100を中継して利用者端末120に向けて送信されるデータが記憶されており、暗号鍵記憶部151には、送信されるデータを暗号化する暗号鍵が記憶される。
暗号処理部142は、利用者端末120に向けて送信されるデータを暗号化する暗号鍵の生成や、情報記憶部152に記憶されているデータを暗号鍵記憶部151に記憶される暗号鍵によって暗号化して暗号化データを生成する等の暗号処理全般に関する機能を有する。
通信部143は、利用者端末120およびポータル・サーバ100との間において、ネットワーク160を介して情報(暗号鍵や暗号化データ等)を送受信する処理に関する機能を有する。
入出力部144は、情報提供者からの入力を受け付けたり、情報提供者に対し情報を表示したりする機能を有する。
制御部141は、情報提供サーバ140に備わる各部の全体処理を制御する機能を有する。例えば、情報記憶部152から暗号化対象のデータを読込み、暗号鍵記憶部151から指定された暗号鍵を読込み、暗号処理部142に暗号化対象データおよび暗号鍵を入力し、暗号処理部142により暗号化処理を行うことで暗号化データを生成し、通信部143により生成された暗号化データをネットワーク160を介して、ポータル・サーバ100に送信する等の全体処理を制御する。
ポータル・サーバ100は、制御部101と、暗号処理部102と、通信部103と、入出力部104と、暗号鍵記憶部111と、暗号化データ記憶部112を備える。
暗号化データ記憶部112には、情報提供サーバ140から受信した暗号化データやポータル・サーバ100で再暗号化したデータが記憶され、暗号鍵記憶部111には、ポータル・サーバ100で再暗号化する暗号鍵等が記憶される。
暗号処理部102は、利用者端末120に向けて送信される暗号鍵の生成や、暗号化データ記憶部112に記憶されているデータを暗号鍵記憶部111に記憶されている再暗号鍵によって再暗号化して暗号化データを生成する等の暗号処理全般に関する機能を有する。
通信部103は、利用者端末120および情報提供サーバ140との間において、ネットワーク160を介して情報(暗号鍵や暗号化データ等)を送受信する処理に関する機能を有する。
入出力部104は、情報中継サービス提供者からの入力を受け付けたり、情報中継サービス提供者に対し情報を表示したりする機能を有する。
制御部101は、ポータル・サーバ100に備わる各部の全体処理を制御する機能を有する。例えば、暗号化データ記憶部112から暗号化データを読込み、暗号鍵記憶部111から指定された再暗号鍵を読込み、暗号処理部102に暗号化データおよび再暗号鍵を入力し、暗号処理部102により再暗号化処理を行うことで暗号化データを生成し、暗号化データ記憶部112に暗号化データを保持する等の全体処理を制御する。
利用者端末120は、制御部121と、暗号処理部122と、通信部123と、暗号鍵記憶部131と、入出力部124と、暗号化データ記憶部132を備える。
暗号化データ記憶部132には、ポータル・サーバ100から受信した暗号化データ等が記憶され、暗号鍵記憶部131には、利用者端末120で暗号化データを復号するための暗号鍵等が記憶される。
暗号処理部122は、利用者端末120で暗号化データを復号するための暗号鍵の生成や、暗号化データ記憶部132に記憶されている暗号化データを暗号鍵記憶部131に記憶されている暗号鍵によって復号する等の暗号処理全般に関する機能を有する。
通信部123は、ポータル・サーバ100および情報提供サーバ140との間において、ネットワーク160を介して情報(暗号鍵や暗号化データ等)を送受信する処理に関する機能を有する。
入出力部124は、利用者からの入力を受け付けたり、利用者に対し情報を表示したりする機能を有する。
制御部121は、利用者端末120に備わる各部の全体処理を制御する機能を有する。例えば、暗号化データ記憶部132から暗号化データを読込み、暗号鍵記憶部131から指定された暗号鍵を読込み、暗号処理部122に暗号化データおよび暗号鍵を入力し、暗号処理部122により復号処理を行うことで暗号化データを復号する等の全体処理を制御する。
なお、図1に例示する、利用者端末120、ポータル・サーバ100、情報提供サーバ140、の各装置は、例えば、図2に示すような、CPU201と、メモリ202と、ハードディスク等の外部記憶装置204と、インターネットやネットワーク160を介して他装置と通信を行なうための通信装置203と、キーボードやマウス等の入力装置205と、表示装置やプリンタ等の出力装置206と、可搬性を有する記憶媒体208から情報を読み取る読取装置207と、これらの各装置間を接続する内部通信線209を備えた、一般的な電子計算機(コンピュータ)200で実現できる。
例えば、利用者端末120の装置は、暗号鍵記憶部131と暗号化データ記憶部132は、CPU201がメモリ202または外部記録装置204を利用することにより実現可能であり、制御部121と暗号処理部122は、外部記録装置204に記録されている所定のプログラムをメモリ202にロードしてCPU201で実行することで実現可能であり、入出力部124は、CPU201が入力装置205と出力装置206を利用することで実現可能であり、通信部123は、CPU201が通信装置203を利用することで実現可能である。
この所定のプログラムは、読取装置207を介して記録媒体208から、あるいは、通信装置203を介してネットワーク160から、外部記録装置204に記録(ダウンロード)され、それから、メモリ202上にロードされて、CPU201により実行されるようにしてもよい。また、読取装置207を介して、記録媒体208から、あるいは通信装置203を介してネットワーク160から、メモリ202上に直接ロードされ、CPU201により実行されるようにしてもよい。
利用者端末120の暗号処理部122とポータル・サーバ100の暗号処理部102と情報提供サーバ140の暗号処理部142とに実装される暗号方式について、以下に説明する。
ここで、暗号鍵Kにより暗号化対象の情報Mを前記暗号方式の暗号演算fで暗号化したデータをf(K,M)と記述し、暗号鍵K1と暗号鍵K2同士のある演算「・」を行った新たな暗号鍵をK1・K2と記述する。また、暗号化データf(K,M)は、暗号鍵Kを用いて、情報Mに復号することが出来る。
前記暗号方式の第一の性質として、暗号鍵K2で情報Mを暗号化したデータf(K2,M)に対し、再暗号化鍵K1を用いて暗号鍵変換演算Uを行うことにより、暗号鍵K1・K2で暗号化したデータf(K1・K2,M)に変換することが出来る。
U(K1, f(K2,M)) = f(K1・K2,M) (数式1)
前記第一の性質を利用し、暗号鍵K2と、暗号鍵K1から生成可能な暗号鍵同士のある演算「・」に関する逆元の暗号鍵K1 -1と、により生成した再暗号化鍵をK2・K1 -1とすると、以下の関係が成り立つ。
U(K2・K1 -1, f(K1,M)) = f(K2・K1 -1・K1,M) = f(K2,M) (数式1−1)
すなわち、再暗号化鍵K2・K1 -1を用いて、暗号鍵K1で暗号化された暗号化データf(K1,M)を、復号することなく暗号鍵K2で暗号化された暗号化データf(K2,M)に変換することが出来る。
前記暗号方式の第二の性質として、暗号鍵K2で情報Mを暗号化したデータf(K2,M)を、暗号鍵K1で再度暗号化したf(K1,f(K2,M))は、暗号鍵K1で情報Mを暗号化したデータf(K1,M)を、暗号鍵K2で再度暗号化したf(K2,f(K1,M))は、等しく暗号化の順番に可換性の性質を持つ。
f(K1,f(K2,M)) = f(K2,f(K1,M)) (数式2)
前記暗号方式の第三の性質として、暗号鍵同士のある演算「・」は以下の可換性を持つ。
K1・K2 = K2・K1 (数式3)
次に、一方向性の性質を持つ時間鍵T、Sについて説明する。時間鍵は前記暗号方式の暗号鍵としての性質を持った上で、以下の制約条件のもと生成される。
(i+1)番目の時間鍵Ti+1は、時間鍵Tiのハッシュ関数Hを取ったものとして生成される。すなわち、Ti+1 = H(Ti)の関係を満たす。これにより、Tpしか知らない場合、ハッシュ関数Hを順次用いることでp番目より大きなTp+1、Tp+2…を生成することは出来るが、ハッシュ関数の一方向性によりp番目より小さなTp-1、Tp-2…は生成することが出来ない。
(i-1)番目の時間鍵Si-1は、時間鍵Siのハッシュ関数Hを取ったものとして生成される。すなわち、Si-1 = H(Si)の関係を満たす。これにより、Sqしか知らない場合、ハッシュ関数Hを順次用いることでq番目より小さなSq-1、Sq-2…を生成することは出来るが、ハッシュ関数の一方向性によりq番目より大きなSq+1、Sq+2…は生成することが出来ない。
図3は、本実施形態において、利用者端末120が情報提供サーバ140と協調してポータル・サーバ100に本人用の再暗号化鍵を登録するシーケンスを表した図である。
まず、利用者端末A(120−A)は通信部123にて、本人用の再暗号化鍵の登録申請をポータル・サーバ100に送付し(S301)、ポータル・サーバ100は暗号処理部102にて使い捨ての鍵Kpを生成し、暗号鍵記憶部111に保持し(S302)、通信部103にて使い捨ての鍵Kpを利用者端末A(120−A)に送付する(S303)。
次に、利用者端末A(120−A)は暗号処理部122にて自分用の暗号鍵として秘密鍵Kaを生成して暗号鍵記憶部131に保持し(S304)、暗号処理部122にて時間指定用の暗号鍵として時間鍵T1と時間鍵SN(Nは任意の正の整数)を生成して暗号鍵記憶部131に保持し(S305)、暗号処理部122にて本人用の再暗号化鍵の元となる再暗号化鍵Kp・Kaを生成する(S306)。
次に、利用者端末A(120−A)は、通信部123にてS306で生成した再暗号化鍵Kp・KaとS305で生成した時間鍵T1と時間鍵SNを情報提供サーバ1(140−1)に送付する(S307)。ここで、S306で生成した再暗号化鍵Kp・KaとS305で生成した時間鍵T1と時間鍵SNは、利用者端末A(120−A)および情報提供サーバ1(140−1)以外に知られてはいけないデータであり、SSL等の暗号通信を利用することで、他の利用者端末・他の情報提供サーバおよびポータルサーバに対し秘匿しておく必要がある。
次に、情報提供サーバ1(140−1)は、通信部143にて受信した時間鍵T1と時間鍵SNを暗号鍵記憶部151に保持し(S308)、暗号処理部142にて利用者端末A(120−A)向けの秘密鍵K1,aを生成して暗号鍵記憶部151に保持し(S309)、暗号処理部142にて利用者端末A(120−A)向けの再暗号化鍵の元となる再暗号化鍵Kp・Ka・K1,a -1を生成し(S310)、通信部143にてS310で生成した再暗号化鍵Kp・Ka・K1,a -1をポータル・サーバ100に送付する(S311)。
次に、ポータル・サーバ100は、通信部103にて受信した再暗号化鍵Kp・Ka・K1,a -1と暗号鍵記憶部111に保持していた暗号鍵Kpの逆元Kp -1を用いて、暗号処理部102にて再暗号鍵Ka・K1,a -1(=Kp -1・Kp・Ka・K1,a -1)を生成し、暗号鍵記憶部111に保持する(S312)。ここで、暗号記憶部111に保持していた暗号鍵Kpは再暗号化鍵を生成するための使い捨ての鍵であるため、破棄してもよい。
最後に、ポータル・サーバ100は、通信部103にて鍵登録申請完了の通知を利用者端末A(120−A)に送付し、利用者端末A(120−A)の通信部123が前記通知を受信して処理を終了する(S313)。
図4は、本実施形態において、情報提供サーバ140がポータル・サーバ100に特定の利用者端末120向けの情報を暗号化して送付するシーケンスを表した図である。
まず、情報提供サーバ1(140−1)は、利用者端末A(120−A)宛に送付する情報M1,aを生成して情報記憶部152に保持し(S401)、暗号鍵記憶部151に保持していた利用者端末A(120−A)用の時間鍵T1と時間鍵SNを用いて、情報送付時点の現在時刻に対応する時間鍵Tiと時間鍵Siを生成する(S402)。
次に、情報提供サーバ1(140−1)は暗号処理部142にて、情報記憶部152に保持している利用者端末A(120−A)宛に送付する情報M1,aを、暗号鍵記憶部151に保持している利用者端末A(120−A)用の秘密鍵K1,aとS402で生成した時間鍵Tiと時間鍵Siを用いて生成した暗号鍵K1,a・Ti・Siにより暗号化することで、暗号化データf(K1,a・Ti・Si, M1,a)を生成する(S403)。
次に、情報提供サーバ1(140−1)は通信部143にて、前記生成した暗号化データf(K1,a・Ti・Si, M1,a)をポータル・サーバ100に送付する(S404)。
次に、ポータル・サーバ100は暗号処理部102にて、通信部103で受信した前記暗号化データf(K1,a・Ti・Si, M1,a)を、暗号鍵記憶部111に保持している利用者端末A(120−A)用の再暗号化鍵Ka・K1,a -1を用いて再暗号化することで、暗号化データf(Ka・Ti・Si, M1,a)を生成する(S405)。ここで、暗号化データf(Ka・Ti・Si, M1,a)の生成の過程を以下に示す。
U(Ka・K1,a -1,f(K1,a・Ti・Si, M1,a)) = f(Ka・K1,a -1・K1,a・Ti・Si, M1,a)) = f(Ka・Ti・Si, M1,a)
最後に、ポータル・サーバ100はS405で生成した暗号化データf(Ka・Ti・Si, M1,a)を暗号化データ記憶部112に保持し、処理を終了する(S406)。
図5は、本実施形態において、利用者端末A(120―A)がポータル・サーバ100から本人向けの暗号化データを取得、復号し、復号した情報を閲覧するシーケンスを表した図である。
まず、利用者端末A(120−A)は通信部123にて、本人向けの情報要求をポータル・サーバ100に送付し(S501)、ポータル・サーバ100は暗号化データ記憶部132に保持している暗号化データf(Ka・Ti・Si, M1,a)を読み出し、通信部103にて読み出した暗号化データf(Ka・Ti・Si, M1,a)を利用者端末A(120−A)に送付する(S502)。
次に、利用者端末A(120−A)は暗号処理部122にて、暗号鍵記憶部131から読み出した時間鍵T1と時間鍵SNを用いて、時間鍵Tiと時間鍵Siを生成する(S503)。
次に、利用者端末A(120−A)は暗号処理部122にて、S502で受信した暗号化データf(Ka・Ti・Si, M1,a)を、暗号鍵記憶部151に保持している利用者本人の秘密鍵KaとS502で生成した時間鍵Tiと時間鍵Siを用いて生成した暗号鍵Ka・Ti・Siにより復号することで、情報M1,aを生成する(S504)。
最後に、利用者はS504で復号した情報M1,aを閲覧することで処理を終了する。
図6は、本実施形態において、複数の利用者端末120がポータル・サーバ100に代理人用の再暗号化鍵を登録するシーケンスを表した図である。
まず、利用者端末A(120−A)は通信部123にて、代理人用の再暗号化鍵の登録申請をポータル・サーバ100に送付し(S601)、ポータル・サーバ100は暗号処理部102にて使い捨ての鍵Kpを生成し、暗号鍵記憶部111に保持し(S602)、通信部103にて使い捨ての鍵Kpを利用者端末A(120−A)に送付する(S603)。
次に、利用者端末A(120−A)は暗号鍵記憶部131に保持している自分用の秘密鍵Kaを読み出し(S604)、暗号処理部122にて、暗号鍵記憶部131に保持している時間指定用の時間鍵T1と時間鍵SNを用いて、閲覧可能開始期間に関連付けた時間鍵Tpと閲覧可能終了期間に関連付けた時間鍵Sqを生成し(S605)、暗号処理部122にて代理人用の再暗号化鍵の元となる再暗号化鍵Kp・Ka -1を生成する(S606)。ここで、時間鍵のp、qは、1≦p≦q≦Nの関係を持たせる。
次に、利用者端末A(120−A)は、通信部123にてS606で生成した再暗号化鍵Kp・Ka -1とS605で生成した時間鍵Tpと時間鍵Sqを代理人として指定する利用者端末B(120−B)に送付する(S607)。ここで、S606で生成した再暗号化鍵Kp・Ka -1とS605で生成した時間鍵Tpと時間鍵Sqは、利用者端末A(120−A)および利用者端末B(120−B)以外に知られてはいけないデータであり、SSL等の暗号通信を利用することで、他の利用者端末・他の情報提供サーバおよびポータルサーバに対し秘匿しておく必要がある。
次に、利用者端末B(120−B)は、通信部123にて受信した時間鍵Tpと時間鍵Sqを暗号鍵記憶部131に保持し(S608)、暗号処理部122にて利用者端末A(120−A)向けの代理人用秘密鍵K'b,aを生成して暗号鍵記憶部132に保持し(S609)、暗号処理部122にて利用者端末A(120−A)向けの代理人用の再暗号化鍵の元となる再暗号化鍵K'b,a・Kp・Ka -1を生成し(S610)、通信部123にてS610で生成した再暗号化鍵K'b,a・Kp・Ka -1をポータル・サーバ100に送付する(S611)。
次に、ポータル・サーバ100は、処理部102にて、通信部103にて受信した再暗号化鍵K'b,a・Ka・Ka -1と、暗号鍵記憶部111に保持していた暗号鍵Kpの逆元Kp -1を用いて、代理人用の暗号再暗号鍵K'b,a・Ka -1(= K'b,a・(Kp -1・Kp)・Ka -1 = Kp -1・K'b,a・Kp・Ka -1)を生成し、暗号鍵記憶部111に保持する(S612)。ここで、暗号記憶部111に保持していた暗号鍵Kpは再暗号化鍵を生成するための使い捨ての鍵であるため、破棄してもよい。
最後に、ポータル・サーバ100は、通信部103にて代理人用の再暗号化鍵登録申請完了の通知を利用者端末A(120−A)に送付し、利用者端末A(120−A)の通信部123が前記通知を受信して処理を終了する(S613)。
なお、利用者端末B(120−B)に送信した時間鍵Sqに代えて、時間鍵Sq+j(q≦q+i≦N)を生成して利用者端末B(120−B)に再送することで、代理人が閲覧可能な期間を延長することも出来る。
図7は、本実施形態において、代理人の利用者端末120がポータル・サーバ100から代理人向けの暗号化データを取得、復号し、復号した情報を閲覧するシーケンスを表した図である。
まず、代理人としての利用者端末B(120−B)は通信部123にて、利用者端末A(120−A)の代理人として情報要求をポータル・サーバ100に送付する(S701)。
次に、ポータル・サーバ100は暗号処理部102にて、暗号化データ記憶部112に保持している暗号化データf(Ka・Ti・Si, M1,a)を、暗号鍵記憶部111に保持している利用者端末B(120−B)の代理人用の再暗号化鍵K'b,a・Ka -1を用いて再暗号化することで、代理人向けの暗号化データf(K'b,a・Ti・Si, M1,a)を生成する(S702)。ここで、暗号化データf(K'b,a・Ti・Si, M1,a)の生成の過程を以下に示す。
U(Kb,a・Ka -1, f(Ka・Ti・Si, M1,a)) = f(K'b,a・Ka -1・Ka・Ti・Si, M1,a)) = f(K'b,a・Ti・Si, M1,a)
次に、ポータル・サーバ100は通信部103にて、S702で生成した代理人向けの暗号化データf(K'b,a・Ti・Si, M1,a)を利用者端末B(120−B)に送付する(S703)。
次に、利用者端末B(120−B)は暗号処理部122にて、暗号鍵記憶部131から読み出した時間鍵Tpと時間鍵Sqを用いて、時間鍵Tiと時間鍵Siを生成する(S704)。ここで、利用者端末A(120−A)から指定された時間鍵のp、qとiがp≦i≦qの場合は時間鍵Tiと時間鍵Siの両方ともに生成可能であるが、i<pの場合、時間鍵Tiは生成不可能であり、q<iの場合、時間鍵Siは生成不可能である。これにより、利用者端末A(120−A)から指定された時間鍵のp、qがp≦i≦qの条件を満たしていない場合は、以降のシーケンスが実行することが出来ず、利用者端末B(120−B)は代理人向けの暗号化データf(K'b,a・Ti・Si, M1,a)を復号して、閲覧することが出来ない。
次に、利用者端末B(120−B)は暗号処理部122にて、S703で受信した暗号化データf(K'b,a・Ti・Si, M1,a)を、暗号鍵記憶部131に保持している代理人用の秘密鍵K'b,aとS704で生成した時間鍵Tiと時間鍵Siを用いて生成した暗号鍵K'b,a・Ti・Siにより復号することで、情報M1,aを生成する(S705)。
最後に、情報M1,aが出力装置206に出力されることにより、代理人としての利用者BはS705で復号した情報M1,aを閲覧することで処理を終了する(S706)。
時間鍵TおよびSの利用方法について、一例として、月単位で閲覧可否の制御を実施する方法について説明する。
まず最初に、利用者端末A(120−A)で実施するS305において、時間鍵T1およびS12を生成して、保持する。生成した時間鍵T1およびS12から、順次ハッシュ関数Hを取ることでT2〜T12およびS1〜S11を生成することが可能となり、これら時間鍵をある年の各月(例えば、T1,S1を2013年1月、T2,S2を2013年2月…、T12,S12を2013年12月)に対応させて管理する。
次に、情報提供サーバ1(140−1)で実施するS402において、情報送付時点の現在日付に対応する時間鍵Tiと時間鍵Si(例えば、現在が2013年4月であれば時間鍵T4と時間鍵S4)を生成し、S403において、生成した時間鍵を用いて暗号化データf(K1,a・T4・S4, M1,a)を生成する。
次に、利用者端末A(120−A)で実施するS605において、時間指定用の時間鍵T1と時間鍵S12を用いて代理人に閲覧を許可する期間に対応する時間鍵(例えば、3月〜5月まで閲覧を許可する場合は、時間鍵T3および時間鍵S5)を生成する。
最後に、利用者端末B(120−B)で実施するS704において、本実施例によると閲覧可能期間(2013年3月〜5月)に対応してS605で生成された時間鍵T3と時間鍵S5を保持しているため、当該時間鍵を用いて時間鍵T4と時間鍵S4を生成可能であり、情報送付時点の現在日付(2013年4月)に対応する代理人向けの暗号化データf(K'b,a・T4・S4, M1,a)を復号して、閲覧することが出来る。しかしながら、閲覧可能期間以外(例えば2013年8月)に対応する代理人向けの暗号化データf(K'b,a・T8・S8, M1,a)は、時間鍵S8を生成することが出来ないため閲覧することが出来ない。
なお、上記の例では時間鍵Tと時間鍵Sを月単位に対応付けたが、日付単位や時間単位など時系列に並んだものに対応付けて管理しても良い。
以上説明した実施例によれば、任意の利用者は、時間鍵により、代理人に対して代理で利用者向けの情報を閲覧可能な期間を指定できるため、管理すべき鍵数を抑えつつ、利用者の代理人が、利用者により指定された一定期間のみ、利用者向けの情報を閲覧できる。
以上本発明の一実施例を説明したが、本発明はこれに限定されるものではなく、その要旨を逸脱しない範囲で種々変更可能である。
100・・・ポータル・サーバ、101・・・制御部、102・・・暗号処理部、103・・・通信部、104・・・入出力部、111・・・暗号鍵記憶部、112・・・暗号化データ記憶部、120・・・利用者端末、121・・・制御部、122・・・暗号処理部、123・・・通信部、124・・・入出力部、131・・・暗号鍵記憶部、132・・・暗号化データ記憶部、140・・・情報提供サーバ、141・・・制御部、142・・・暗号処理部、143・・・通信部、144・・・入出力部、151・・・暗号鍵記憶部、152・・・情報記憶部、160・・・ネットワーク、200・・・電子計算機、201・・・CPU(Central Processing Unit)、202・・・メモリ、203・・・通信装置、204・・・外部記録装置、205・・・入力装置、206・・・出力装置、207・・・読取装置、208・・・可搬性を有する記憶媒体、209・・・内部通信線。

Claims (5)

  1. 情報を記憶する情報提供サーバにより、複数の利用者の端末の何れかからの情報要求に応じて、要求された情報を暗号化し、これを情報中継装置を介して情報要求元の利用者端末に送信する情報提供システムにおける、情報の暗号化・復号化方法であって、
    前記情報中継装置により、
    第1の利用者の代理人である第2の利用者の端末からの情報の要求を受信し、
    暗号化データ記憶部に記憶されている第1の利用者の端末向けの前記情報の暗号化データを、第1の暗号鍵記憶部に記憶されている第2の利用者用の再暗号化鍵を用いて、再暗号化し、
    前記再暗号化データを、前記第2の利用者の端末に送信し、
    前記第2の利用者の端末により、
    前記情報中継装置から前記再暗号化データを受信し、
    第2の暗号鍵記憶部に記憶されている前記第2の利用者用の暗号鍵と、前記第1の利用者の端末により指定された、前記情報の閲覧可能期間と関連付いた時間鍵を用いて、前記受信した再暗号化データを復号し、
    前記第2の利用者用の再暗号化鍵は、前記第1の利用者の端末により生成された第1の利用者用の暗号鍵の逆元と、前記第2の利用者用の暗号鍵との所定の演算結果であり、
    前記情報中継装置により、
    前記第1の利用者用の暗号鍵により復号可能な前記情報の暗号化データを、前記第2の利用者用の暗号鍵を用いて再暗号化することにより、前記第1の利用者用の暗号鍵により復号することなく、前記第2の利用者用の暗号鍵を用いて復号可能な前記再暗号化データを生成し、
    前記生成した再暗号化データを前記第2の利用者の端末に送信し、
    前記第2の利用者の端末により、
    前記情報中継装置から前記再暗号化データを受信し、
    前記第1の利用者の端末により時間鍵T1から一方向性の性質を持つハッシュ関数Hを用いて生成された、前記情報の閲覧可能開始期間と関連付いた時間鍵Tp(pは1≦pを満たす任意の正の整数)から、時間鍵Ti(p≦i)を生成し、
    前記第1の利用者の端末により時間鍵SN(Nは任意の正の整数)から前記ハッシュ関数Hを用いて生成された、前記情報の閲覧可能終了期間と関連付いた時間鍵Sq(qはq≦Nを満たす任意の正の整数)から、時間鍵Si(i≦q)を生成し、
    前記第2の利用者用の暗号鍵である秘密鍵と、前記時間鍵Tiと、前記時間鍵Siを用いて、前記受信した再暗号化データを復号する、
    ことを特徴とする情報の暗号化・復号化方法。
  2. 前記第1の利用者の端末により、
    一方向性の性質を持つハッシュ関数Hを用いて、Ti+1=H(Ti)により前記時間鍵T1から前記時間鍵Tpを生成し、Si-1=H(Si)により前記時間鍵SNから前記時間鍵Sqを生成し、
    前記生成した前記時間鍵Tpと前記時間鍵Sqを前記第2の利用者の端末に送信する、
    ことを特徴とする請求項に記載の情報の暗号化・復号化方法。
  3. 情報を記憶する情報提供サーバにより、複数の利用者の端末の何れかからの情報要求に応じて、要求された情報を暗号化し、これを情報中継装置を介して情報要求元の利用者端末に送信する情報提供システムであって、
    前記情報中継装置は、
    第1の利用者の代理人である第2の利用者の端末からの情報の要求を受信し、
    暗号化データ記憶部に記憶されている第1の利用者の端末向けの前記情報の暗号化データを、第1の暗号鍵記憶部に記憶されている第2の利用者用の再暗号化鍵を用いて、再暗号化し、
    前記再暗号化データを、前記第2の利用者の端末に送信し、
    前記第2の利用者の端末は、
    前記情報中継装置から前記再暗号化データを受信し、
    第2の暗号鍵記憶部に記憶されている前記第2の利用者用の暗号鍵と、前記第1の利用者の端末により指定された、前記情報の閲覧可能期間と関連付いた時間鍵を用いて、前記受信した再暗号化データを復号し、
    前記第2の利用者用の再暗号化鍵は、前記第1の利用者の端末により生成された第1の利用者用の暗号鍵の逆元と、前記第2の利用者用の暗号鍵との所定の演算結果であり、
    前記情報中継装置は、
    前記第1の利用者用の暗号鍵により復号可能な前記情報の暗号化データを、前記第2の利用者用の暗号鍵を用いて再暗号化することにより、前記第1の利用者用の暗号鍵により復号することなく、前記第2の利用者用の暗号鍵を用いて復号可能な前記再暗号化データを生成し、
    前記生成した再暗号化データを前記第2の利用者の端末に送信し、
    前記第2の利用者の端末は、
    前記情報中継装置から前記再暗号化データを受信し、
    前記第1の利用者の端末により時間鍵T1から一方向性の性質を持つハッシュ関数Hを用いて生成された、前記情報の閲覧可能開始期間と関連付いた時間鍵Tp(pは1≦pを満たす任意の正の整数)から、時間鍵Ti(p≦i)を生成し、
    前記第1の利用者の端末により時間鍵SN(Nは任意の正の整数)から前記ハッシュ関数Hを用いて生成された、前記情報の閲覧可能終了期間と関連付いた時間鍵Sq(qはq≦Nを満たす任意の正の整数)から、時間鍵Si(i≦q)を生成し、
    前記第2の利用者用の暗号鍵である秘密鍵と、前記時間鍵Tiと、前記時間鍵Siを用いて、前記受信した再暗号化データを復号する、
    ことを特徴とする情報提供システム。
  4. 前記第1の利用者の端末は、
    一方向性の性質を持つハッシュ関数Hを用いて、Ti+1=H(Ti)により前記時間鍵T1から前記時間鍵Tpを生成し、Si-1=H(Si)により前記時間鍵SNから前記時間鍵Sqを生成し、
    前記生成した前記時間鍵Tpと前記時間鍵Sqを前記第2の利用者の端末に送信する、
    ことを特徴とする請求項に記載の情報提供システム。
  5. 請求項1又は2の何れか1項に記載の情報の暗号化・復号化方法をコンピュータに実行させるためのプログラム。
JP2013189996A 2013-09-13 2013-09-13 情報の暗号化・復号化方法、情報提供システムおよびプログラム Active JP6151140B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2013189996A JP6151140B2 (ja) 2013-09-13 2013-09-13 情報の暗号化・復号化方法、情報提供システムおよびプログラム
CN201410238695.7A CN104468496B (zh) 2013-09-13 2014-05-30 信息的加密解密方法、信息提供系统以及记录介质
US14/304,255 US9479330B2 (en) 2013-09-13 2014-06-13 Method, information service system and program for information encryption/decryption

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2013189996A JP6151140B2 (ja) 2013-09-13 2013-09-13 情報の暗号化・復号化方法、情報提供システムおよびプログラム

Publications (2)

Publication Number Publication Date
JP2015056820A JP2015056820A (ja) 2015-03-23
JP6151140B2 true JP6151140B2 (ja) 2017-06-21

Family

ID=52669108

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013189996A Active JP6151140B2 (ja) 2013-09-13 2013-09-13 情報の暗号化・復号化方法、情報提供システムおよびプログラム

Country Status (3)

Country Link
US (1) US9479330B2 (ja)
JP (1) JP6151140B2 (ja)
CN (1) CN104468496B (ja)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105022965B (zh) * 2015-07-14 2019-09-06 Oppo广东移动通信有限公司 一种数据加密方法及装置
JP6723908B2 (ja) * 2016-12-06 2020-07-15 株式会社日立製作所 暗号化データ流通システム及び方法
CN106789039B (zh) * 2017-01-25 2020-12-08 武汉大学 一种机密数据的存储方法
US10587401B2 (en) * 2017-04-03 2020-03-10 Salesforce.Com, Inc. Secure handling of customer-supplied encryption secrets
US11019098B2 (en) * 2018-06-29 2021-05-25 Intel Corporation Replay protection for memory based on key refresh
US10903999B1 (en) * 2019-09-11 2021-01-26 Zscaler, Inc. Protecting PII data from man-in-the-middle attacks in a network
US11200329B1 (en) 2021-02-16 2021-12-14 block.one Fast access to a data resource update in a blockchain network

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE69521413T2 (de) * 1994-01-13 2002-05-29 Certco Inc Verschlüsselungseinrichtung und verfahren mit möglichkeit zur gesicherten zentralen schlüsselablage
JP2005252384A (ja) * 2004-03-01 2005-09-15 Rikogaku Shinkokai 暗号化データ保管サーバシステム、暗号化データ保管方法及び再暗号化方法
KR100564731B1 (ko) * 2004-08-13 2006-03-28 (주)잉카엔트웍스 네트워크를 통하여 개인 휴대 단말기로 데이터를 전송하는방법 및 그 시스템
US7454021B2 (en) * 2004-10-29 2008-11-18 Hewlett-Packard Development Company, L.P. Off-loading data re-encryption in encrypted data management systems
JP4341607B2 (ja) * 2005-10-26 2009-10-07 株式会社日立製作所 記憶媒体発行方法
US8094810B2 (en) * 2006-02-03 2012-01-10 Massachusetts Institute Of Technology Unidirectional proxy re-encryption
EP2107491A4 (en) * 2007-01-26 2014-08-27 Nec Corp AUTHORIZATION MANAGEMENT PROCESS, SYSTEM THEREFOR, AND SERVER AND INFORMATION TERMINAL USED IN THE SYSTEM
US8681975B2 (en) * 2009-08-31 2014-03-25 Apple Inc. Encryption method and apparatus using composition of ciphers
JP2011055309A (ja) * 2009-09-03 2011-03-17 National Institute Of Information & Communication Technology 二機能付きidベース暗号化方法及び暗号システム
JP5361920B2 (ja) * 2011-02-16 2013-12-04 株式会社東芝 ファイルサーバシステム
EP2704354B1 (en) 2011-04-27 2021-04-07 Kabushiki Kaisha Toshiba Re-encryption key generator, re-encryption apparatus, and program
JP5454960B2 (ja) * 2011-11-09 2014-03-26 株式会社東芝 再暗号化システム、再暗号化装置及びプログラム

Also Published As

Publication number Publication date
US9479330B2 (en) 2016-10-25
US20150082040A1 (en) 2015-03-19
JP2015056820A (ja) 2015-03-23
CN104468496A (zh) 2015-03-25
CN104468496B (zh) 2018-01-02

Similar Documents

Publication Publication Date Title
JP6151140B2 (ja) 情報の暗号化・復号化方法、情報提供システムおよびプログラム
US9246683B2 (en) Re-encryption key generator, re-encryption apparatus, and program
JP6245782B1 (ja) 個人情報保護システム
JP2014175970A (ja) 情報配信システム、情報処理装置及びプログラム
JP2016158189A (ja) 鍵付替え方向制御システムおよび鍵付替え方向制御方法
JP6049914B2 (ja) 暗号システム、鍵生成装置及び再暗号化装置
JP2008172736A (ja) 暗号文復号権委譲システム
US20210135851A1 (en) Encryption processing system and encryption processing method
JP6058514B2 (ja) 暗号処理方法、暗号システム、およびサーバ
JP6840692B2 (ja) 計算機システム、接続装置、及びデータ処理方法
JP2023008395A (ja) マルチパーティ型準同型暗号によるセキュアでロバストな連合学習システム及び連合学習方法
JP2007142591A (ja) 暗号管理方法
JP2011211537A (ja) 暗号化情報の有効期限延長システム、有効期限延長方法及びプログラム
WO2010038763A1 (ja) 情報管理システム、端末装置、サーバ装置およびプログラム
Purushothama et al. Secure cloud storage service and limited proxy re-encryption for enforcing access control in public cloud
JP4668028B2 (ja) 転送元用ソフトウェア、転送要求端末、転送元用パック生成装置、及びプログラムセット
JP2017021144A (ja) 翻訳システムおよび翻訳方法
JP2011172099A (ja) データ転送方法、データ転送システム、データ送信装置、データ管理装置、データ復号装置およびコンピュータプログラム
JP7215580B2 (ja) チャットボットシステム及び情報処理方法
JP6723908B2 (ja) 暗号化データ流通システム及び方法
JP7158693B2 (ja) 通信システム、サーバ装置、ユーザ装置、方法、コンピュータプログラム
JP2013205655A (ja) プログラム、情報処理方法及び情報処理装置
JP6167598B2 (ja) 情報処理装置、情報処理方法、および、コンピュータ・プログラム
JP2018107625A (ja) データ配信システム、データ生成装置、仲介装置、データ配信方法、及びプログラム
JP6108012B2 (ja) 情報配信システム、情報処理装置及びプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20151215

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20160930

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20161018

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20161219

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20170110

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20170112

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20170524

R150 Certificate of patent or registration of utility model

Ref document number: 6151140

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150