JP5403955B2 - 権限検証装置及び実行装置及び利用者端末装置及びアクセス制御システム及びコンピュータプログラム及び権限検証方法及び操作要求通知方法及びアクセス制御方法 - Google Patents
権限検証装置及び実行装置及び利用者端末装置及びアクセス制御システム及びコンピュータプログラム及び権限検証方法及び操作要求通知方法及びアクセス制御方法 Download PDFInfo
- Publication number
- JP5403955B2 JP5403955B2 JP2008172399A JP2008172399A JP5403955B2 JP 5403955 B2 JP5403955 B2 JP 5403955B2 JP 2008172399 A JP2008172399 A JP 2008172399A JP 2008172399 A JP2008172399 A JP 2008172399A JP 5403955 B2 JP5403955 B2 JP 5403955B2
- Authority
- JP
- Japan
- Prior art keywords
- unit
- key
- user
- data
- operation request
- 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.)
- Expired - Fee Related
Links
Images
Description
対称暗号方式は、暗号化に使用する暗号化鍵と、復号に使用する復号鍵とが同一である暗号方式である。送信側の装置と受信側の装置とが、同一の共通鍵を共有し、送信側の装置は、共有した共通鍵を暗号化鍵として使用して暗号化をし、受信側の装置は、共有した共通鍵を復号鍵として使用して復号をする。対称暗号方式では、いかにして第三者に知られることなく共通鍵を共有するかが課題となる。
非対称暗号方式は、暗号化鍵と復号鍵とが異なる暗号方式をいい、特に、暗号化鍵と復号鍵とのうちいずれか一方を公開して第三者に知られても、第三者が他方を推測することができない方式を、公開鍵暗号方式という。公開鍵暗号方式において、第三者に知られてもいいほうの鍵を公開鍵、秘密裡に保持しなければならないほうの鍵を秘密鍵という。例えば、暗号化鍵を公開する場合、送信側の装置は、公開された公開鍵を暗号化鍵として使用して暗号化をし、受信側の装置は、秘密裡に保持した秘密鍵を復号鍵として使用して復号をする。これにより、送信側の装置が受信側の装置と秘密を共有する必要がない。また、復号鍵を公開する場合、送信側の装置は、秘密裡に保持した秘密鍵を暗号化鍵として使用して暗号化をし、受信側の装置は、公開された公開鍵を復号鍵として使用して復号する。これにより、誰でも復号をすることができるが、第三者が改竄することができないので、署名などに利用される。公開鍵暗号方式では、公開された公開鍵が、送信先もしくは送信元の装置が保持している秘密鍵に対応するものであることを検証する手段が課題となる。公開鍵と秘密鍵を保持している装置との対応を検証できなければ、なりすましなどを防ぐことができないからである。
公開鍵と秘密鍵を保持している装置との対応を検証する方式の一つとして、公開鍵基盤(PKI:Public Key Infrastructure)を利用する方式がある。公開鍵基盤においては、公開鍵と、その公開鍵に対応する秘密鍵を保持している装置との対応関係を表わすデータを公開鍵証明書とし、公開鍵証明書を検証することで、公開鍵と秘密鍵を保持している装置との対応を検証する。公開鍵証明書が第三者により改竄されるのを防ぐため、公開鍵証明書には、公開鍵証明書を発行した認証機関(CA:Certification Authority)の秘密鍵による署名が付される。公開鍵証明書に付された署名を検証するには、認証機関の公開鍵が必要となる。認証機関の公開鍵は、認証機関の公開鍵証明書から入手することができる。公開鍵基盤を利用する方式では、このように、公開鍵証明書を連鎖的に辿ることにより、公開鍵と秘密鍵を保持している装置との対応を検証する。
別の方式として、IDベース暗号方式を利用する方式がある。IDベース暗号方式とは、装置のID(製造番号、装置番号、MACアドレス、IPアドレス、メースアドレスなど、その装置を識別するデータ)をそのままその装置の公開鍵として使用する公開鍵暗号方式である。装置のIDを公開鍵として使用するため、公開鍵と秘密鍵を保持している装置との対応を検証する必要がない。
特に、組込み機器などでは、処理能力や通信能力が低い場合があり、利用者の権限を検証する処理の負荷を少なくすることが望まれる。
この発明は、例えば、上記のような課題を解決するためになされたものであり、処理能力や通信能力が限られた場合であっても、利用者の操作権限を検証できるようにすることを目的とする。
利用者が対象装置を操作する権限があるか否かを検証する権限検証装置において、
データを処理する処理装置と、データを送信する送信装置と、データを受信する受信装置と、識別取得部と、通信鍵生成部と、通信鍵暗号化部と、暗号化通信鍵送信部と、暗号化操作要求受信部と、操作要求復号部と、操作要求検証部と、操作要求通知部とを有し、
上記識別取得部は、上記処理装置を用いて、利用者を識別する利用者識別データを取得し、
上記通信鍵生成部は、上記処理装置を用いて、暗号化鍵と上記暗号化鍵に対応する復号鍵とを生成し、
上記通信鍵暗号化部は、上記処理装置を用いて、IDベース暗号方式により、上記識別取得部が取得した利用者識別データを使用して、上記通信鍵生成部が生成した暗号化鍵を暗号化して、暗号化通信鍵とし、
上記暗号化通信鍵送信部は、上記送信装置を用いて、上記通信鍵暗号化部が暗号化した暗号化通信鍵を送信し、
上記暗号化操作要求受信部は、上記受信装置を用いて、上記対象装置に対する操作を表わす操作要求メッセージを暗号化した暗号化操作要求を受信し、
上記操作要求復号部は、上記処理装置を用いて、上記通信鍵生成部が生成した復号鍵を使用して、上記暗号化操作要求受信部が受信した暗号化操作要求を復号して、復号操作要求とし、
上記操作要求検証部は、上記処理装置を用いて、上記操作要求復号部が復号した復号操作要求が正しく復号されているか否かを判定し、正しく復号されていると判定した場合に、操作権限ありと判定し、
上記操作要求通知部は、上記処理装置を用いて、上記操作要求検証部が操作権限ありと判定した場合に、上記操作要求復号部が復号した復号操作要求を、操作要求メッセージとして上記対象装置に対して通知することを特徴とする。
実施の形態1について、図1〜図8を用いて説明する。
アクセス制御システム800は、鍵生成装置400、複数の利用者端末装置300a〜300d(以下、複数の利用者端末装置300a〜300dを区別する必要がない場合は、単に「利用者端末装置300」と呼ぶ。)、複数の実行装置200a〜200c(同様に、「実行装置200」と呼ぶ場合がある。)を有する。
実行装置200ごとに、操作をする権限を有する利用者は異なり、また、利用者により、権限のある操作の範囲が異なる。
例えば、実行装置200aを操作する権限のある利用者は、利用者端末装置300aの利用者(以下「利用者a」と呼ぶ。)と、利用者端末装置300bの利用者(以下「利用者b」と呼ぶ。)とに限られ、利用者端末装置300cの利用者や利用者端末装置300dの利用者には、実行装置200aを操作する権限がない。利用者aは、実行装置200aの管理者権限を有し、実行装置200aに対してすべての操作をする権限を有するが、利用者bは、実行装置200aの一般利用者権限しか有さず、実行装置200aの状態をモニターする操作をする権限を有するが、実行装置200aの状態を変更する操作をする権限がない。
実行装置200は、利用者端末装置300の利用者に権限があるかを検証するためのデータを、IDベース暗号方式により暗号化して、利用者端末装置300に渡す。
鍵生成装置400は、利用者端末装置300の利用者に権限があるかを判定し、権限があると判定した場合に、IDベース暗号方式における秘密鍵を利用者端末装置300に渡す。
利用者端末装置300は、IDベース暗号方式により、鍵生成装置400から受け取った秘密鍵を使用して、実行装置200から受け取ったデータを復号する。
実行装置200は、利用者端末装置300に渡したデータを利用者端末装置300が正しく復号できた場合に、利用者端末装置300の利用者に権限があると認める。
鍵生成装置400、利用者端末装置300、実行装置200は、プログラムを実行するCPU911(Central・Processing・Unit、中央処理装置、処理装置、演算装置、マイクロプロセッサ、マイクロコンピュータ、プロセッサともいう)を備えている。CPU911は、バス912を介してROM913、RAM914、通信装置915、表示装置901、キーボード902、マウス903、FDD904、CDD905、プリンタ装置906、スキャナ装置907、磁気ディスク装置920と接続され、これらのハードウェアデバイスを制御する。磁気ディスク装置920の代わりに、光ディスク装置、メモリカード読み書き装置などの記憶装置でもよい。
RAM914は、揮発性メモリの一例である。ROM913、FDD904、CDD905、磁気ディスク装置920の記憶媒体は、不揮発性メモリの一例である。これらは、記憶装置あるいは記憶部の一例である。
通信装置915、キーボード902、スキャナ装置907、FDD904などは、入力部、入力装置の一例である。
また、通信装置915、表示装置901、プリンタ装置906などは、出力部、出力装置の一例である。
磁気ディスク装置920には、オペレーティングシステム921(OS)、ウィンドウシステム922、プログラム群923、ファイル群924が記憶されている。プログラム群923のプログラムは、CPU911、オペレーティングシステム921、ウィンドウシステム922により実行される。
ファイル群924には、以下に述べる実施の形態の説明において、「〜の判定結果」、「〜の計算結果」、「〜の処理結果」として説明する情報やデータや信号値や変数値やパラメータが、「〜ファイル」や「〜データベース」の各項目として記憶されている。「〜ファイル」や「〜データベース」は、ディスクやメモリなどの記録媒体に記憶される。ディスクやメモリになどの記憶媒体に記憶された情報やデータや信号値や変数値やパラメータは、読み書き回路を介してCPU911によりメインメモリやキャッシュメモリに読み出され、抽出・検索・参照・比較・演算・計算・処理・出力・印刷・表示などのCPUの動作に用いられる。抽出・検索・参照・比較・演算・計算・処理・出力・印刷・表示のCPUの動作の間、情報やデータや信号値や変数値やパラメータは、メインメモリやキャッシュメモリやバッファメモリに一時的に記憶される。
また、以下に述べる実施の形態の説明において説明するフローチャートの矢印の部分は主としてデータや信号の入出力を示し、データや信号値は、RAM914のメモリ、FDD904のフレキシブルディスク、CDD905のコンパクトディスク、磁気ディスク装置920の磁気ディスク、その他光ディスク、ミニディスク、DVD(Digital・Versatile・Disk)等の記録媒体に記録される。また、データや信号は、バス912や信号線やケーブルその他の伝送媒体によりオンライン伝送される。
鍵生成装置400は、生成利用者識別受信部411、署名受信部412、公開鍵証明書記憶部421、生成個別識別取得部422、署名検証部423、役割記憶部431、生成役割取得部432、生成対象識別取得部433、権限判定部434、秘密鍵生成部441、秘密鍵暗号化部442、暗号化秘密鍵送信部451を有する。
署名受信部412は、CPU911を用いて、受信した署名データを出力する。
生成個別識別取得部422は、CPU911を用いて、入力した利用者識別データを鍵生成装置400に対して送信してきた利用者端末装置300の利用者を特定する。生成個別識別取得部422は、CPU911を用いて、特定した利用者を個別に識別するデータ(以下「個別識別データ」と呼ぶ。)を取得する。例えば、生成利用者識別受信部411が受信する利用者識別データは、個別識別データを含み、生成個別識別取得部422は、CPU911を用いて、利用者識別データに含まれる個別識別データを抜き出すことにより、個別識別データを取得する。
生成個別識別取得部422は、CPU911を用いて、取得した個別識別データを出力する。
署名検証部423は、CPU911を用いて、公開鍵証明書記憶部421が記憶した公開鍵証明書のなかから、入力した個別識別データによって識別される利用者についての公開鍵証明書を取得する。
署名検証部423は、CPU911を用いて、取得した公開鍵証明書から、その利用者の公開鍵を取得する。
署名検証部423は、CPU911を用いて、公開鍵署名方式により、取得した公開鍵を復号鍵として使用して、入力した署名データを復号する。以下、署名検証部423が署名データを復号して得たデータを「復号署名データ」と呼ぶ。
署名検証部423は、CPU911を用いて、復号した復号署名データと、入力した利用者識別データとを比較して、利用者識別データが改変されていないか判定する。
利用者識別データが改変されていないと判定した場合、署名検証部423は、CPU911を用いて、入力した個別識別データを出力する。
役割対応データ510は、例えば、個別識別データ511、対象識別データ512、役割データ513を一組のデータ(レコード)とし、複数のレコードからなるデータである。
この図では、左側の列に個別識別データ511を、真ん中の列に対象識別データ512を、右側の列に役割データ513を、それぞれ縦に並べ、横に並んだ個別識別データ511と、対象識別データ512と、役割データ513とが、一つのレコードであることを表わしている。
個別識別データ511は、利用者を個別に識別するデータである。
対象識別データ512は、実行装置200を識別するデータである。
役割データ513は、役割を識別するデータである。
なお、この図に示した役割対応データ510の形式は一例であり、それぞれの利用者が、それぞれの実行装置200に対して、どのような役割を有するかをを表わすことができる形式であれば、役割対応データの形式は、他の形式であってもよい。
生成役割取得部432は、CPU911を用いて、入力した利用者識別データに基づいて、利用者が実行装置200を操作しようとする権限が、どのような役割に基づくものであるかを表わす役割データを取得する。例えば、生成利用者識別受信部411が受信する利用者識別データは、役割データを含み、生成役割取得部432は、CPU911を用いて、利用者識別データに含まれる役割データを抜き出すことにより、役割データを取得する。
生成役割取得部432は、CPU911を用いて、取得した役割データを出力する。
生成対象識別取得部433は、CPU911を用いて、入力した利用者識別データに基づいて、利用者が操作しようとしている実行装置200を表わす対象識別データを取得する。例えば、生成利用者識別受信部411が受信する利用者識別データは、対象識別データを含み、生成対象識別取得部433は、CPU911を用いて、利用者識別データに含まれる対象識別データを抜き出すことにより、対象識別データを取得する。
生成対象識別取得部433は、CPU911を用いて、取得した対象識別データを出力する。
権限判定部434は、CPU911を用いて、役割記憶部431が記憶した役割対応データに基づいて、入力した個別識別データによって識別される利用者が、入力した対象識別データによって識別される実行装置200に対して、入力した役割データによって識別される役割を有するか否かを判定する。
権限判定部434は、CPU911を用いて、判定結果を表わすデータを出力する。
秘密鍵生成部441は、CPU911を用いて、入力したデータが表わす判定結果に基づいて、その利用者がその実行装置200に対してその役割を有する場合に、生成利用者識別受信部411が出力した利用者識別データを入力する。
秘密鍵生成部441は、CPU911を用いて、入力した利用者識別データをIDベース暗号方式における公開鍵とし、公開鍵に対応する秘密鍵を生成する。
秘密鍵生成部441は、CPU911を用いて、生成した秘密鍵を出力する。
秘密鍵暗号化部442は、CPU911を用いて、公開鍵証明書記憶部421が記憶した公開鍵証明書のなかから、入力した個別識別データによって識別される利用者についての公開鍵証明書を取得する。
秘密鍵暗号化部442は、CPU911を用いて、取得した公開鍵証明書から、その利用者の公開鍵を取得する。
秘密鍵暗号化部442は、CPU911を用いて、公開鍵暗号方式により、取得した公開鍵を暗号化鍵として使用して、入力した秘密鍵を暗号化する。以下、秘密鍵暗号化部442が秘密鍵を暗号化して得たデータ(暗号文)を「暗号化秘密鍵」と呼ぶ。
秘密鍵暗号化部442は、CPU911を用いて、暗号化した暗号化秘密鍵を出力する。
暗号化秘密鍵送信部451は、通信装置915を用いて、生成利用者識別受信部411が受信した利用者識別データ及び署名受信部412が受信した署名データを送信してきた利用者端末装置300に対して、入力した暗号化秘密鍵を送信する。
利用者端末装置300は、対象入力部311、役割入力部312、操作入力部313、権限要求生成部321、権限要求送信部322、端末利用者識別受信部331、端末利用者識別記憶部341、利用者秘密鍵記憶部342、署名生成部343、端末利用者識別送信部351、署名送信部352、暗号化秘密鍵受信部361、秘密鍵復号部362、通信鍵復号部371、復号通信鍵記憶部372、操作要求生成部381、操作要求暗号化部382、暗号化操作要求送信部383、操作結果受信部391、結果出力部392を有する。
対象入力部311は、CPU911を用いて、入力した内容に基づいて、利用者が操作しようとしている実行装置200を識別する対象識別データを取得する。
対象入力部311は、CPU911を用いて、取得した対象識別データを出力する。
役割入力部312は、CPU911を用いて、入力した内容に基づいて、利用者の役割を識別する役割データを取得する。
役割入力部312は、CPU911を用いて、取得した役割データを出力する。
操作入力部313は、CPU911を用いて、入力した内容に基づいて、操作の内容を表わすデータ(以下「操作内容データ」と呼ぶ。)を取得する。
操作入力部313は、CPU911を用いて、取得した操作内容データを出力する。
権限要求生成部321は、CPU911を用いて、入力した役割データに基づいて、実行装置200に対して、役割データが表わす役割による操作をする権限を要求するメッセージ(以下「権限要求メッセージ」と呼ぶ。)を生成する。
権限要求生成部321は、CPU911を用いて、生成した権限要求メッセージを出力する。
権限要求送信部322は、通信装置915を用いて、入力した対象識別データによって識別される実行装置200に対して、入力した権限要求メッセージを送信する。
端末利用者識別受信部331は、CPU911を用いて、受信した利用者識別データを出力する。
暗号化通信鍵受信部332は、CPU911を用いて、受信した暗号化通信鍵を出力する。
端末利用者識別記憶部341は、RAM914を用いて、入力した利用者識別データを記憶する。
署名生成部343は、CPU911を用いて、公開鍵暗号方式により、入力した秘密鍵を暗号化鍵(署名鍵)として使用して、入力した利用者識別データを暗号化して、署名データを生成する。
署名生成部343は、CPU911を用いて、生成した署名データを出力する。
端末利用者識別送信部351は、通信装置915を用いて、鍵生成装置400に対して、入力した利用者識別データを送信する。
署名送信部352は、通信装置915を用いて、鍵生成装置400に対して、入力した署名データを送信する。
暗号化秘密鍵受信部361は、CPU911を用いて、受信した暗号化秘密鍵を出力する。
秘密鍵復号部362は、CPU911を用いて、公開鍵暗号方式により、入力した秘密鍵を復号鍵として使用して、入力した暗号化秘密鍵を復号する。以下、秘密鍵復号部362が暗号化秘密鍵を復号して得たデータを「復号秘密鍵」と呼ぶ。
秘密鍵復号部362は、CPU911を用いて、復号した復号秘密鍵を出力する。
通信鍵復号部371は、CPU911を用いて、IDベース暗号方式により、入力した復号秘密鍵を復号鍵として使用して、入力した暗号化通信鍵を復号する。以下、通信鍵復号部371が暗号化通信鍵を復号して得たデータを「復号通信鍵」と呼ぶ。
通信鍵復号部371は、CPU911を用いて、復号した復号通信鍵を出力する。
復号通信鍵記憶部372は、RAM914を用いて、入力した復号通信鍵を記憶する。
操作要求生成部381は、CPU911を用いて、入力した操作内容データに基づいて、実行装置200に対して、操作内容データが表わす操作を要求するメッセージ(以下「操作要求メッセージ」と呼ぶ。)を生成する。
操作要求生成部381は、CPU911を用いて、生成した操作要求メッセージを出力する。
操作要求暗号化部382は、CPU911を用いて、共通鍵暗号方式により、入力した復号通信鍵を暗号化鍵として使用して、入力した操作要求メッセージを暗号化する。以下、操作要求暗号化部382が操作要求メッセージを暗号化して得たデータを「暗号化操作要求」と呼ぶ。
操作要求暗号化部382は、CPU911を用いて、暗号化した暗号化操作要求を出力する。
暗号化操作要求送信部383は、通信装置915を用いて、入力した対象識別データによって識別される実行装置200に対して、入力した暗号化操作要求を送信する。
操作結果受信部391は、CPU911を用いて、受信した操作結果メッセージを出力する。
結果出力部392は、CPU911を用いて、入力した操作結果メッセージに基づいて、操作結果メッセージが表わす操作結果を取得する。
結果出力部392は、表示装置901などの出力装置を用いて、取得した操作結果を出力する。
実行装置200は、権限検証装置100と対象装置210とを有する。
権限検証装置100は、利用者の操作権限を判定する装置である。
対象装置210は、利用者の操作にしたがって、実際に処理を実行する装置である。
権限要求受信部111は、CPU911を用いて、受信した権限要求メッセージを出力する。
役割取得部121は、CPU911を用いて、入力した権限要求メッセージに基づいて、権限要求メッセージが要求する役割を判別する。
役割取得部121は、CPU911を用いて、判別した役割を識別する役割データを取得する。
役割取得部121は、CPU911を用いて、取得した役割データを出力する。
乱数生成部122は、CPU911を用いて、生成した乱数を出力する。
識別生成部123は、CPU911を用いて、入力した役割データと乱数とに基づいて、利用者識別データを生成する。例えば、識別生成部123は、CPU911を用いて、実行装置200自身を識別する対象識別データと、入力した役割データと、入力した乱数を表わす文字列データとを結合して、結合したデータを利用者識別データとする。あるいは、識別生成部123は、CPU911を用いて、更に、権限要求受信部111が受信した権限要求メッセージを送信した利用者端末装置300の利用者を識別する個別識別データを入力し、入力した個別識別データを更に結合して、利用者識別データとしてもよい。
識別生成部123は、CPU911を用いて、生成した利用者識別データを出力する。
識別記憶部124は、磁気ディスク装置920を用いて、入力した利用者識別データを記憶する。
通信鍵生成部131は、CPU911を用いて、生成した共通鍵を出力する。
通信鍵記憶部132は、磁気ディスク装置920を用いて、入力した共通鍵を記憶する。
通信鍵暗号化部133は、CPU911を用いて、入力した利用者識別データをIDベース暗号方式における公開鍵とし、IDベース暗号方式により、入力した利用者識別データを暗号化鍵として使用して、入力した共通鍵を暗号化する。以下、通信鍵暗号化部133が共通鍵を暗号化して取得したデータを、暗号化通信鍵と呼ぶ。
通信鍵暗号化部133は、CPU911を用いて、取得した暗号化通信鍵を出力する。
識別送信部141は、通信装置915を用いて、権限要求受信部111が受信した権限要求メッセージを送信した利用者端末装置300に対して、入力した利用者識別データを送信する。
暗号化通信鍵送信部142は、通信装置915を用いて、権限要求受信部111が受信した権限要求メッセージを送信した利用者端末装置300に対して、入力した暗号化通信鍵を送信する。
暗号化操作要求受信部151は、CPU911を用いて、受信した暗号化操作要求を出力する。
操作要求復号部152は、CPU911を用いて、共通鍵暗号方式により、入力した共通鍵を復号鍵として使用して、入力した暗号化操作要求を復号する。以下、操作要求復号部152が暗号化操作要求を復号して得たデータを「復号操作要求」と呼ぶ。
操作要求復号部152は、CPU911を用いて、復号した復号操作要求を出力する。
権限対応データ520は、例えば、役割データ521、操作内容データ522を一組のデータ(レコード)とし、複数のレコードからなるデータである。
この図では、左側の列に役割データ521を、右側の列の操作内容データ522を、それぞれ縦に並べ、横に並んだ役割データ521と、操作内容データ522とが、一つのレコードであることを表わしている。
役割データ521は、役割を識別するデータである。
操作内容データ522は、操作の内容を表わすデータである。
なお、この図に示した権限対応データ520の形式は一例であり、それぞれの役割を有する利用者が、どのような操作をする権限を有するかをを表わすことができる形式であれば、権限対応データの形式は、他の形式であってもよい。
操作要求検証部162は、CPU911を用いて、入力した復号操作要求を検証する。
復号操作要求の検証には、二つの段階がある。
第一段階は、復号操作要求が正しく復号されているか否かの検証である。操作要求メッセージには、あらかじめ定められた書式(フォーマット)があり、復号操作要求が正しく復号されていれば、復号操作要求は、操作要求メッセージとしての書式を満たしているはずである。操作要求検証部162は、CPU911を用いて、復号操作要求が操作要求メッセージとしての書式を満たしているか否かを判定することにより、復号操作要求が正しく復号されているか否かを検証する。
操作要求検証部162は、CPU911を用いて、操作権限ありと判定した場合、入力した復号操作要求を出力する。
操作要求通知部163は、CPU911を用いて、入力した復号操作要求を、対象装置210に対して、操作要求メッセージとして通知する。
操作要求取得部211は、CPU911を用いて、取得した操作要求メッセージを出力する。
処理実行部212は、CPU911を用いて、入力した操作要求メッセージに基づいて、操作要求メッセージにより要求された操作に対応する処理を実行する。
処理実行部212は、CPU911を用いて、処理を実行した結果を表わすデータ(以下「結果データ」と呼ぶ。)を出力する。
操作結果生成部213は、CPU911を用いて、入力した結果データに基づいて、処理実行部212が処理を実行した結果を利用者端末装置300に対して通知するメッセージ(以下「操作結果メッセージ」と呼ぶ。)を生成する。
操作結果生成部213は、CPU911を用いて、生成した操作結果メッセージを出力する。
操作結果送信部214は、通信装置915を用いて、暗号化操作要求受信部151が受信した暗号化操作要求を送信した利用者端末装置300に対して、入力した操作結果メッセージを送信する。
通信鍵生成部131は、CPU911を用いて、共通鍵暗号方式における共通鍵を生成する。通信鍵記憶部132は、磁気ディスク装置920を用いて、通信鍵生成部131が生成した共通鍵を記憶する。通信鍵暗号化部133は、IDベース暗号方式により、識別記憶部124が記憶した利用者識別データをIDベース暗号方式における公開鍵として使用して、通信鍵記憶部132が記憶した共通鍵を暗号化する。
識別送信部141は、通信装置915を用いて、利用者端末装置300に対して、識別記憶部124が記憶した利用者識別データを送信する。暗号化通信鍵送信部142は、通信装置915を用いて、利用者端末装置300に対して、通信鍵暗号化部133が暗号化した暗号化通信鍵を送信する。
署名生成部343は、CPU911を用いて、公開鍵暗号方式により、利用者秘密鍵記憶部342が記憶した公開鍵暗号方式における秘密鍵を使用して、端末利用者識別記憶部341が記憶した利用者識別データを暗号化する。
端末利用者識別送信部351は、通信装置915を用いて、鍵生成装置400に対して、端末利用者識別記憶部341が記憶した利用者識別データを送信する。署名送信部352は、通信装置915を用いて、鍵生成装置400に対して、署名生成部343が生成した署名データを送信する。
署名検証部423は、CPU911を用いて、公開鍵証明書記憶部421が記憶した公開鍵証明書に基づいて、署名受信部412が受信した署名データを検証する。
署名検証部423が署名データの検証に成功した場合、生成役割取得部432は、CPU911を用いて、生成利用者識別受信部411が受信した利用者識別データに基づいて、役割データを取得する。生成対象識別取得部433は、CPU911を用いて、生成利用者識別受信部411が受信した利用者識別データに基づいて、対象識別データを取得する。権限判定部434は、CPU911を用いて、役割記憶部431が記憶した役割対応データに基づいて、生成利用者識別受信部411が受信した利用者識別データを送信してきた利用者端末装置300の利用者が、生成対象識別取得部433が取得した対象識別データによって識別される実行装置200に対して、生成役割取得部432が取得した役割データによって識別される役割を有するか否かを判定する。
その利用者がその実行装置200に対してその役割を有すると権限判定部434が判定した場合、鍵生成装置400は、秘密鍵通知処理S645へ進む。
その利用者がその実行装置200に対してその役割を有しないと権限判定部434が判定した場合、または、署名検証部423が署名データの検証に失敗した場合、鍵生成装置400は、処理を終了する。
通信鍵復号部371は、CPU911を用いて、IDベース暗号方式により、秘密鍵復号部362が復号した復号秘密鍵を使用して、暗号化通信鍵受信部332が受信した暗号化通信鍵を復号する。復号通信鍵記憶部372は、RAM914を用いて、通信鍵復号部371が復号した復号通信鍵を記憶する。
復号操作要求が正しく復号されていると判定した場合、操作要求検証部162は、CPU911を用いて、権限記憶部161が記憶した権限対応データに基づいて、役割取得部121が取得した役割を有する利用者に、操作要求復号部152が復号した復号操作要求が要求する操作をする権限があるか判定する。
権限があると操作要求検証部162が判定した場合、実行装置200は、処理実行処理S670へ進む。
権限がないと操作要求検証部162が判定した場合、または、復号操作要求が正しく復号されていないと操作要求検証部162が判定した場合、実行装置200は、処理を終了する。
上記識別取得部(識別生成部123)は、上記処理装置(CPU911)を用いて、利用者を識別する利用者識別データを取得する。
上記通信鍵生成部131は、上記処理装置(CPU911)を用いて、暗号化鍵(共通鍵)と上記暗号化鍵に対応する復号鍵(共通鍵)とを生成する。
上記通信鍵暗号化部133は、上記処理装置(CPU911)を用いて、IDベース暗号方式により、上記識別取得部(識別生成部123)が取得した利用者識別データを使用して、上記通信鍵生成部131が生成した暗号化鍵(共通鍵)を暗号化して、暗号化通信鍵とする。
上記暗号化通信鍵送信部142は、上記送信装置(通信装置915)を用いて、上記通信鍵暗号化部133が暗号化した暗号化通信鍵を送信する。
上記暗号化操作要求受信部151は、上記受信装置(通信装置915)を用いて、上記対象装置210に対する操作を表わす操作要求メッセージを暗号化した暗号化操作要求を受信する。
上記操作要求復号部152は、上記処理装置(CPU911)を用いて、上記通信鍵生成部131が生成した復号鍵(共通鍵)を使用して、上記暗号化操作要求受信部151が受信した暗号化操作要求を復号して、復号操作要求とする。
上記操作要求検証部162は、上記処理装置(CPU911)を用いて、上記操作要求復号部152が復号した復号操作要求が正しく復号されているか否かを判定し、正しく復号されていると判定した場合に、操作権限ありと判定する。
上記操作要求通知部163は、上記処理装置(CPU911)を用いて、上記操作要求検証部162が操作権限ありと判定した場合に、上記操作要求復号部152が復号した復号操作要求を、操作要求メッセージとして上記対象装置210に対して通知する。
暗号化鍵(共通鍵)を、IDベース暗号方式ではなく、通常の公開鍵暗号方式で暗号化する構成も考えられるが、その場合、利用者の公開鍵の正当性・有効性が保証されている必要がある。例えば、権限検証装置100は、公開鍵証明書を辿ってCAによる証明を検証したり、公開鍵証明書の失効を確認するなど、PKIを利用して、公開鍵の正当性・有効性を検証する必要がある。
これに対し、この実施の形態における権限検証装置100は、暗号化鍵(共通鍵)をIDベース暗号方式で暗号化するので、PKIを利用して公開鍵の正当性・有効性を検証する必要がなく、例えば、組込み機器など、処理能力や通信能力が限られた装置に権限検証装置100を設ける場合であっても、利用者の操作権限を検証することができる。
その場合、通信鍵生成部131は、CPU911を用いて、非対称暗号方式における暗号化鍵と復号鍵とのペアを生成し、通信鍵記憶部132は、磁気ディスク装置920を用いて、通信鍵生成部131が生成した復号鍵を記憶する。通信鍵暗号化部133は、CPU911を用いて、IDベース暗号方式により、識別生成部123が生成した利用者識別データを公開鍵として使用して、通信鍵生成部131が生成した暗号化鍵を暗号化して、暗号化通信鍵とする。
識別生成部123が生成した利用者識別データに対応するIDベース暗号方式における秘密鍵を利用者端末装置300が知っていれば、権限検証装置100が送信した暗号化通信鍵を正しく復号できるので、通信鍵復号部371が復号した復号通信鍵は、識別生成部123が生成した暗号化鍵と同一となる。したがって、通信鍵復号部371が復号した復号通信鍵を暗号化鍵として使用して、操作要求暗号化部382が操作要求メッセージを暗号化し、通信鍵記憶部132が記憶した復号鍵を使用して操作要求復号部152が暗号化操作要求を復号することにより、共通鍵暗号方式を使用する構成と同じ効果を得ることができる。
上記役割取得部121は、上記処理装置(CPU911)を用いて、利用者の役割を表わす役割データを取得する。
上記識別取得部(識別生成部123)は、上記処理装置(CPU911)を用いて、上記役割取得部121が取得した役割データに基づいて、利用者識別データを生成することにより、上記利用者識別データを取得する。
上記操作要求検証部162は、上記処理装置(CPU911)を用いて、上記操作要求復号部152が復号した復号操作要求が正しく復号されているか否かを判定し、正しく復号されていると判定した場合に、上記役割取得部121が取得した役割データが表わす役割に、上記復号操作要求が表わす操作をする権限があるか否かを判定し、上記役割に上記操作をする権限があると判定した場合に、操作権限ありと判定する。
上記識別送信部141は、上記送信装置(通信装置915)を用いて、上記識別取得部(識別生成部123)が取得した利用者識別データを送信する。
ある時点において、利用者が対象装置210に対する操作権限を有し、その時点で権限検証装置100が送信した利用者識別データに対応する秘密鍵を知っていたとしても、利用者の権限が失効したのちに、権限検証装置100が送信した利用者識別データに対応する秘密鍵を知らなければ、操作要求検証部162は、利用者に操作権限がないと判定し、利用者の権限が失効したのち、利用者は、対象装置210を操作できなくなる。すなわち、権限検証装置100の設定を変えることなく、利用者の操作権限の変動に対応することができる。
上記乱数生成部122は、上記処理装置(CPU911)を用いて、乱数を生成する。
上記識別取得部(識別生成部123)は、上記処理装置(CPU911)を用いて、上記乱数生成部122が生成した乱数に基づいて、利用者識別データを生成することにより、上記利用者識別データを取得する。
操作権限を有する利用者が、操作権限の失効に備えて、あらかじめ利用者識別データを予測し、予測した利用者識別データに対応するIDベース暗号方式における秘密鍵を入手しておくことができないので、利用者の操作権限を確実に失効させることができる。
上記端末利用者識別取得部(端末利用者識別受信部331)は、上記処理装置(CPU911)を用いて、利用者を識別する利用者識別データを取得する。
上記秘密鍵取得部(暗号化秘密鍵受信部361・秘密鍵復号部362)は、上記処理装置(CPU911)を用いて、IDベース暗号方式において上記端末利用者識別取得部(端末利用者識別受信部331)が取得した利用者識別データに対応する秘密鍵を取得する。
上記暗号化通信鍵受信部332は、上記受信装置(通信装置915)を用いて、暗号化に使用する暗号化鍵(共通鍵)をIDベース暗号方式により暗号化した暗号化通信鍵を、上記権限検証装置100から受信する。
上記通信鍵復号部371は、上記処理装置(CPU911)を用いて、IDベース暗号方式により、上記秘密鍵取得部(暗号化秘密鍵受信部361・秘密鍵復号部362)が取得した秘密鍵を使用して、上記暗号化通信鍵受信部332が受信した暗号化通信鍵を復号して、復号通信鍵とする。
上記操作要求暗号化部382は、上記処理装置(CPU911)を用いて、上記通信鍵復号部371が復号した復号通信鍵を使用して、上記利用者による対象装置210に対する操作を表わす操作要求メッセージを暗号化して、暗号化操作要求とする。
上記暗号化操作要求送信部383は、上記送信装置(通信装置915)を用いて、上記操作要求暗号化部382が暗号化した暗号化操作要求を、上記権限検証装置100に対して送信する。
上記端末利用者識別送信部351は、上記送信装置(通信装置915)を用いて、IDベース暗号方式における秘密鍵を生成する鍵生成装置400に対して、上記端末利用者識別取得部(端末利用者識別受信部331)が取得した利用者識別データを送信する。
上記秘密鍵取得部(暗号化秘密鍵受信部361・秘密鍵復号部362)は、上記受信装置(通信装置915)を用いて、上記鍵生成装置400が生成した秘密鍵を受信することにより、上記秘密鍵を取得する。
上記生成利用者識別受信部411は、上記受信装置(通信装置915)を用いて、利用者を識別する利用者識別データを受信する。
上記権限判定部434は、上記処理装置(CPU911)を用いて、上記利用者に対象装置210を操作する権限があるか否かを判定する。
上記秘密鍵生成部441は、上記処理装置(CPU911)を用いて、上記利用者に対象装置210を操作する権限があると上記権限判定部434が判定した場合に、IDベース暗号方式において上記生成利用者識別受信部411が受信した利用者識別データに対応する秘密鍵を生成する。
上記秘密鍵送信部(秘密鍵暗号化部442・暗号化秘密鍵送信部451)は、上記送信装置(通信装置915)を用いて、上記秘密鍵生成部441が生成した秘密鍵を送信する。
上記生成利用者識別受信部411は、上記受信装置(通信装置915)を用いて、上記利用者の役割を表わす役割データを含む利用者識別データを受信する。
上記生成役割取得部432は、上記処理装置(CPU911)を用いて、上記生成利用者識別受信部411が受信した利用者識別データに基づいて、上記役割データを取得する。
上記権限判定部434は、上記処理装置(CPU911)を用いて、上記利用者が上記対象装置210に対して上記役割データが表わす役割を有するか否かを判定し、上記利用者が上記対象装置210に対して上記役割データが表わす役割を有すると判定した場合に、上記利用者に上記対象装置210を操作する権限があると判定する。
上記生成利用者識別受信部411は、上記受信装置(通信装置915)を用いて、上記利用者を個別に識別する個別識別データを含む利用者識別データを受信する。
上記生成個別識別取得部422は、上記処理装置(CPU911)を用いて、上記生成利用者識別受信部411が受信した利用者識別データに基づいて、上記個別識別データを取得する。
上記権限判定部434は、上記処理装置(CPU911)を用いて、上記生成個別識別取得部422が取得した個別識別データにより個別に識別される利用者に上記対象装置210を操作する権限があるか否かを判定する。
上記生成利用者識別受信部411は、上記受信装置(通信装置915)を用いて、上記対象装置210を識別する対象識別データを含む利用者識別データを受信する。
上記生成対象識別取得部433は、上記処理装置(CPU911)を用いて、上記生成利用者識別受信部411が受信した利用者識別データに基づいて、上記対象識別データを取得する。
上記権限判定部434は、上記処理装置(CPU911)を用いて、上記生成対象識別取得部433が取得した対象識別データにより識別される対象装置210を操作する権限が上記利用者にあるか否かを判定する。
上記処理装置(CPU911)が、利用者を識別する利用者識別データを取得する。
上記処理装置(CPU911)が、暗号化鍵(共通鍵)と上記暗号化鍵に対応する復号鍵(共通鍵)とを生成する。
上記処理装置(CPU911)が、IDベース暗号方式により、取得した利用者識別データを使用して、生成した暗号化鍵(共通鍵)を暗号化して、暗号化通信鍵とする。
上記送信装置(通信装置915)が、暗号化した暗号化通信鍵を送信する。
上記受信装置(通信装置915)が、上記対象装置210に対する操作を表わす操作要求メッセージを暗号化した暗号化操作要求を受信する。
上記処理装置(CPU911)が、生成した復号鍵(共通鍵)を使用して、受信した暗号化操作要求を復号して、復号操作要求とする。
上記処理装置(CPU911)が、復号した復号操作要求が正しく復号されているか否かを判定し、正しく復号されていると判定した場合に、操作権限ありと判定する。
上記処理装置(CPU911)が、操作権限ありと判定した場合に、復号した復号操作要求を、操作要求メッセージとして上記対象装置210に対して通知する。
上記処理装置(CPU911)が、利用者を識別する利用者識別データを取得する。
上記処理装置(CPU911)が、IDベース暗号方式において、取得した利用者識別データに対応する秘密鍵を取得する。
上記受信装置(通信装置915)が、暗号化に使用する暗号化鍵(共通鍵)をIDベース暗号方式により暗号化した暗号化通信鍵を、上記権限検証装置100から受信する。
上記処理装置(CPU911)が、IDベース暗号方式により、取得した秘密鍵を使用して、受信した暗号化通信鍵を復号して、復号通信鍵とする。
上記処理装置(CPU911)が、復号した復号通信鍵を使用して、上記利用者による上記対象装置210に対する操作を表わす操作要求メッセージを暗号化して、暗号化操作要求とする。
上記送信装置(通信装置915)が、暗号化した暗号化操作要求を、上記権限検証装置100に対して送信する。
上記受信装置(通信装置915)が、利用者を識別する利用者識別データを受信する。
上記処理装置(CPU911)が、上記利用者に対象装置210を操作する権限があるか否かを判定する。
上記処理装置(CPU911)が、上記利用者に対象装置210を操作する権限があると判定した場合に、IDベース暗号方式において、受信した利用者識別データに対応する秘密鍵を生成する。
上記送信装置(通信装置915)が、生成した秘密鍵を送信する。
上記権限検証装置100(識別生成部123)が、利用者を識別する利用者識別データを取得する。
上記権限検証装置100(通信鍵生成部131)が、暗号化鍵(共通鍵)と上記暗号化鍵に対応する復号鍵(共通鍵)とを生成する。
上記権限検証装置100(通信鍵暗号化部133)が、IDベース暗号方式により、取得した利用者識別データを使用して、生成した暗号化鍵(共通鍵)を暗号化して、暗号化通信鍵とする。
上記権限検証装置100(暗号化通信鍵送信部142)が、暗号化した暗号化通信鍵を送信する。
上記利用者端末装置300(端末利用者識別受信部331)が、上記利用者識別データを取得する。
上記利用者端末装置300(暗号化秘密鍵受信部361・秘密鍵復号部362)が、IDベース暗号方式において、取得した利用者識別データに対応する秘密鍵を取得する。
上記利用者端末装置300(暗号化通信鍵受信部332)が、上記権限検証装置100が送信した暗号化通信鍵を受信する。
上記利用者端末装置300(通信鍵復号部371)が、IDベース暗号方式により、取得した秘密鍵を使用して、受信した暗号化通信鍵を復号して、復号通信鍵とする。
上記利用者端末装置300(操作要求暗号化部382)が、復号した復号通信鍵を使用して、上記利用者による対象装置210に対する操作を表わす操作要求メッセージを暗号化して、暗号化操作要求とする。
上記利用者端末装置300(暗号化操作要求送信部383)が、暗号化した暗号化操作要求を、上記権限検証装置100に対して送信する。
上記権限検証装置100(暗号化操作要求受信部151)が、上記利用者端末装置300が送信した暗号化操作要求を受信する。
上記権限検証装置100(操作要求復号部152)が、生成した復号鍵(共通鍵)を使用して、受信した暗号化操作要求を復号して、復号操作要求とする。
上記権限検証装置100(操作要求検証部162)が、復号した復号操作要求が正しく復号されているか否かを判定し、正しく復号されていると判定した場合に、操作権限ありと判定する。
上記権限検証装置100(操作要求通知部163)が、操作権限ありと判定した場合に、復号した復号操作要求を、操作要求メッセージとして上記対象装置210に対して通知する。
機器(実行装置200)を操作する役割(ロール)に関するロール情報(役割データ)を送信するロール要求送信部(権限要求送信部322)と、
権限確認情報(利用者識別データ及び暗号化通信鍵)を受信する権限確認受信部(端末利用者識別受信部331・暗号化通信鍵受信部332)と、
権限確認情報に含まれるID情報(利用者識別データ)からユーザ秘密鍵(公開鍵暗号方式における秘密鍵)により署名情報(署名データ)を生成する署名部(署名生成部343)と、
ユーザ公開鍵を含むユーザ情報(個別識別データ)と、ID情報(利用者識別データ)と、署名情報(署名データ)とをあわせて発行要求として送信する発行要求送信部(端末利用者識別送信部351・署名送信部352)と、
暗号済秘密鍵(暗号化秘密鍵)を受信する秘密鍵受信部(暗号化秘密鍵受信部361)と、
暗号済秘密鍵からユーザ秘密鍵(公開鍵暗号方式における秘密鍵)によりIDベース秘密鍵(IDベース暗号方式における秘密鍵)を復号する秘密鍵復号部362と、
権限確認情報に含まれる暗号済暗号鍵(暗号化通信鍵)からIDベース秘密鍵(IDベース暗号方式における秘密鍵)により暗号鍵(共通鍵)を復号するIDベース復号部(通信鍵復号部371)と、
機器(実行装置200)に対する操作情報(操作要求メッセージ)から暗号鍵(共通鍵)により暗号済操作情報(暗号化操作要求)を生成する暗号部(操作要求暗号化部382)と、
暗号済操作情報を送信する操作要求送信部(暗号化操作要求送信部383)とを有する。
ロール情報(役割データ)を受信するロール要求受信部(権限要求受信部111)と、
乱数を生成する乱数生成部122と、
機器(実行装置200)を識別する識別情報(対象識別データ)と、ロール情報(役割データ)と、乱数とからID情報(利用者識別データ)を生成するID情報生成部(識別生成部123)と、
暗号鍵(共通鍵)と復号鍵(共通鍵)とを生成する暗号鍵生成部(通信鍵生成部131)と、
暗号鍵(共通鍵)からID情報(利用者識別データ)により暗号済暗号鍵(暗号化通信鍵)を生成するIDベース暗号部(通信鍵暗号化部133)と、
ID情報(利用者識別データ)と、暗号済暗号鍵(暗号化通信鍵)とをあわせて権限確認情報として送信する権限確認送信部(識別送信部141・暗号化通信鍵送信部142)と、
暗号済操作情報(暗号化操作要求)を受信する操作要求受信部(暗号化操作要求受信部151)と、
暗号済操作情報から復号鍵(共通鍵)により操作情報(操作要求メッセージ)を復号する復号部(操作要求復号部152)と、
正しく復号された操作情報(操作要求メッセージ)と、ロール情報(役割データ)とをもとに、アクセス制御マトリクス(権限対応データ)にしたがい、役割(ロール)として操作が許可されているかどうかの判定結果を生成するアクセス制御部(操作要求検証部162)とを有し、
判定結果からアクセスが許可された場合に操作を実行する。
発行要求(利用者識別データ及び署名データ)を受信する発行要求受信部(生成利用者識別受信部411・署名受信部412)と、
発行要求に含まれる署名情報(署名データ)を署名検証情報(公開鍵証明書)により検証して検証結果を生成する署名検証部423と、
検証結果が正しい場合に、発行要求に含まれるID情報(利用者識別データ)に含まれるロール情報(役割データ)と、発行要求に含まれるID情報に含まれる識別情報(対象識別データ)と、発行要求に含まれるユーザ情報(個別識別データ)とをもとに、認証情報(役割対応データ)にしたがい、ユーザの機器(実行装置200)に対する役割(ロール)としてのアクセス権の有無を認証結果として生成するアクセス権認証部(権限判定部434)と、
認証結果からアクセス権が有ると認証された場合に、ID情報(利用者識別データ)からIDベース秘密鍵(IDベース暗号方式における秘密鍵)を生成するIDベース秘密鍵生成部(秘密鍵生成部441)と、
IDベース秘密鍵(IDベース暗号方式における秘密鍵)からユーザ情報に含まれるユーザ公開鍵(公開鍵暗号方式における公開鍵)により暗号済秘密鍵(暗号化秘密鍵)を生成する秘密鍵暗号部(秘密鍵暗号化部442)と、
暗号済秘密鍵(暗号化秘密鍵)を送信する秘密鍵送信部(暗号化秘密鍵送信部451)とを有する。
以上説明した機器(実行装置200)は、ロールベースのアクセス制御方式におけるロール(役割)を元にID情報(利用者識別データ)を生成するID情報生成部(識別生成部123)を備える。
また、以上説明した機器(実行装置200)は、ユーザが操作情報(操作要求メッセージ)を暗号化する暗号鍵(共通鍵)をID情報(利用者識別データ)により暗号化して暗号済暗号鍵(暗号化通信鍵)を得るIDベース暗号部(通信鍵暗号化部133)を備える。
以上説明したユーザ装置(利用者端末装置300)は、ID情報(利用者識別データ)により暗号化された暗号済暗号鍵(暗号化通信鍵)をIDベース暗号の秘密鍵により復号して暗号鍵(復号通信鍵)を得るIDベース復号部(通信鍵復号部371)を備える。
以上説明したサーバ(鍵生成装置400)は、ID情報(利用者識別データ)に対応する秘密鍵を生成するIDベース秘密鍵生成部(秘密鍵生成部441)を備える。
また、以上説明したサーバ(鍵生成装置400)は、機器(実行装置200)の識別情報(対象識別データ)とユーザ情報(個別識別データ)とユーザの要求するロール情報(役割データ)とをもとに、認証情報(役割対応データ)を参照してアクセス権の有無を認証するアクセス権認証部(権限判定部434)を備えたものである。
ユーザが機器(実行装置200)を操作する役割(ロール)を決定し、ロール要求送信部(権限要求送信部322)が、ロール情報(役割データ)を機器(実行装置200)へ送信する。
ロール要求受信部(権限要求受信部111)が、ユーザ装置(利用者端末装置300)からロール情報(役割データ)を受信する。次に、乱数生成部122が、乱数を生成する。次に、ID情報生成部(識別生成部123)が、機器(実行装置200)を識別する識別情報(対象識別データ)と、ロール情報(役割データ)と、乱数とからID情報(利用者識別データ)を生成する。次に、暗号鍵生成部(通信鍵生成部131)が、暗号鍵(共通鍵)と復号鍵(共通鍵)とを生成する。次に、IDベース暗号部(通信鍵暗号化部133)が、IDベース暗号の暗号化の対象となる暗号鍵(共通鍵)からID情報(利用者識別データ)により暗号済暗号鍵(暗号化通信鍵)を生成する。次に、権限確認送信部(識別送信部141・暗号化通信鍵送信部142)が、ID情報(利用者識別データ)と、暗号済暗号鍵(暗号化通信鍵)とをあわせて権限確認情報としてユーザ装置(利用者端末装置300)へ送信する。
権限確認受信部(端末利用者識別受信部331・暗号化通信鍵受信部332)が、機器(実行装置200)から権限確認情報(利用者識別データ及び暗号化通信鍵)を受信する。署名部(署名生成部343)が、権限確認情報に含まれるID情報(利用者識別データ)からユーザ秘密鍵(公開鍵暗号方式における秘密鍵)により署名情報(署名データ)を生成する。次に、発行要求送信部(端末利用者識別送信部351・署名送信部352)が、ユーザ公開鍵を含むユーザ情報(個別識別データ)と、ID情報(利用者識別データ)と、署名情報(署名データ)とをあわせて発行要求としてサーバ(鍵生成装置400)に送信する。
発行要求受信部(生成利用者識別受信部411・署名受信部412)が、ユーザ装置(利用者端末装置300)から発行要求を受信する。次に、署名検証部423が、発行要求に含まれる署名情報(署名データ)を署名検証情報(公開鍵証明書)により検証して検証結果を生成する。
なお、署名検証部423は、署名検証情報として、予め安全な方法により、ユーザ装置(利用者端末装置300)からサーバ(鍵生成装置400)に渡されたユーザ公開鍵を利用する構成としてもよい。
また、予めサーバ(鍵生成装置400)がユーザの秘密鍵(公開鍵暗号方式における秘密鍵)とユーザの公開鍵(公開鍵暗号方式における公開鍵)を生成し、安全な方法により、サーバ(鍵生成装置400)からユーザ装置(利用者端末装置300)にユーザの秘密鍵とユーザの公開鍵とを渡しておく構成としてもよい。
また、予めユーザ公開鍵に対してPKIの認証局が公開鍵証明書を発行し、サーバ(鍵生成装置400)は認証局の公開鍵証明書を署名検証情報として利用する構成としてもよい。
例えば、権限判定部434は、まずユーザ情報(個別識別データ)をもとに識別情報(対象識別データ)とロール情報(役割データ)との関係を表す表(役割対応データ)を特定し、識別情報(対象識別データ)とロール情報(役割データ)とから、表(役割対応データ)の該当する箇所の「○」と「×」とによりアクセス権の有無を判断する。
秘密鍵受信部(暗号化秘密鍵受信部361)が、暗号済秘密鍵(暗号化秘密鍵)を受信する。次に、秘密鍵復号部(秘密鍵復号部362)が、暗号済秘密鍵(暗号化秘密鍵)からユーザ秘密鍵(公開鍵暗号方式における秘密鍵)によりIDベース秘密鍵を復号する。次に、IDベース復号部(通信鍵復号部371)が、権限確認情報に含まれる暗号済暗号鍵(暗号化通信鍵)からIDベース秘密鍵により暗号鍵(共通鍵)を復号する。次に、暗号部(操作要求暗号化部382)が、機器(実行装置200)に対する操作情報(操作要求メッセージ)から暗号鍵(共通鍵)により暗号済操作情報(暗号化操作要求)を生成する。次に、操作要求送信部(暗号化操作要求送信部383)が、暗号済操作情報(暗号化操作要求)を機器(実行装置200)に送信する。
操作要求受信部(暗号化操作要求受信部151)が、暗号済操作情報(暗号化操作要求)を受信する。次に、復号部(操作要求復号部152)が、暗号済操作情報(暗号化操作要求)から復号鍵(共通鍵)により操作情報(操作要求メッセージ)を復号する。次に、復号部(操作要求復号部152)が操作情報(操作要求メッセージ)が正しく復号した場合に、操作要求検証部162が、正しく復号された操作情報(操作要求メッセージ)と、ロール情報(役割データ)とをもとに、アクセス制御マトリクス(権限対応データ)にしたがい、役割(ロール)として操作が許可されているかどうかの判定結果を生成する。
例えば、操作要求検証部162は、操作(操作内容データ)とロール情報(役割データ)から、表の該当する箇所の「○」と「×」とにより操作が許可されているかどうかを判断する。
次に、機器(実行装置200)が、判定結果からアクセスが許可された場合に操作を実行する。
また、機器(実行装置200)が暗号鍵生成部による生成する暗号鍵と復号鍵とは、共通鍵暗号方式に基づいて同じ鍵を利用する構成としてもよいし、非対称な暗号方式に基づいて異なる鍵を利用する構成としてもよい。
また、ユーザ公開鍵のかわりにPKIにおける公開鍵証明書を利用し、署名検証情報に公開鍵証明書を発行した認証局の公開鍵証明書を利用する構成としてもよい。
また、IDベース暗号方式を用いてアクセス制御を行う場合に、予め全てのアクセス先に対するアクセス権の有無を発行センタ(鍵生成装置400)に対して送信し、各々に対応する秘密鍵を取得し、これら全ての秘密鍵を安全に保管し続ける必要がない。
また、IDベース暗号方式を用いてアクセス制御を行う場合に、アクセス権の失効を迅速に反映できる。
これにより、機器(実行装置200)がアクセス権を有効と取り扱う間は、同一のID情報(利用者識別データ)を利用して、操作情報(操作要求メッセージ)を暗号化するための暗号鍵(共通鍵)の更新をすることができる。
すなわち、実行装置200が公開鍵証明書などの認証情報を保持したり検証したりする必要がなく、利用者の操作権限が変化した場合であっても、実行装置200に設定されたデータを変更する必要がない。このため、操作権限の変更に柔軟に対応することができる。
実施の形態2について、図9〜図11を用いて説明する。
なお、実施の形態1で説明したアクセス制御システム800と共通する部分については、同一の符号を付し、説明を省略する。
利用者端末装置300は、実施の形態1で説明した機能ブロックに加えて、更に、要求利用者識別送信部384を有する。
要求利用者識別送信部384は、通信装置915を用いて、実行装置200に対して、暗号化操作要求送信部383が送信する暗号化操作要求とともに、入力した利用者識別データを送信する。
権限検証装置100は、実施の形態1で説明した機能ブロックに加えて、更に、発行時刻取得部125、識別受信部153、要求時刻取得部154、通信鍵削除部155、通信鍵選択部156を有する。
識別生成部123は、CPU911を用いて、入力した役割データと乱数と発行時刻データとに基づいて、利用者識別データを生成する。例えば、識別生成部123は、CPU911を用いて、実行装置200自身を識別する対象識別データと、入力した役割データと、入力した乱数を表わす文字列データと、入力した発行時刻データとを結合して、結合したデータを利用者識別データとする。
識別生成部123は、CPU911を用いて、生成した利用者識別データを出力する。
通信鍵記憶部132は、磁気ディスク装置920を用いて、入力した共通鍵を、入力した利用者識別データと対応づけて記憶する。通信鍵記憶部132は、既に記憶している共通鍵がある場合、既に記憶している共通鍵に加えて、入力した共通鍵を記憶し、複数の共通鍵を記憶する。
通信鍵削除部155は、CPU911を用いて、入力した利用者識別データから、発行時刻データを取得する。例えば、通信鍵削除部155は、CPU911を用いて、発行時刻データを含む利用者識別データから、発行時刻データを抜き出すことにより、発行時刻データを取得する。
通信鍵削除部155は、CPU911を用いて、取得した発行時刻データが表わす発行時刻と、入力した要求時刻データが表わす要求時刻とを比較して、利用者識別データの有効期限が切れていないかを判定する。
例えば、利用者識別データの有効期限を「1日」とする場合、通信鍵削除部155は、CPU911を用いて、発行時刻の日付と要求時刻の日付とを比較して、日付が同じなら有効期限内、日付が異なれば有効期限切れと判定する。あるいは、利用者識別データの有効期限を「10分」とする場合、通信鍵削除部155は、CPU911を用いて、発行時刻の10分後の時刻を計算し、計算した時刻(以下「有効期限時刻」と呼ぶ。)と要求時刻とを比較して、要求時刻が有効期限時刻より前であれば有効期限内、要求時刻が有効期限時刻より後であれば有効期限切れと判定する。
通信鍵選択部156は、CPU911を用いて、通信鍵記憶部132が記憶した共通鍵のなかから、入力した利用者識別データに対応づけられた共通鍵を選択し、選択した共通鍵を取得する。
通信鍵選択部156は、CPU911を用いて、取得した共通鍵を出力する。
操作要求復号部152は、CPU911を用いて、共通鍵暗号方式により、入力した共通鍵を復号鍵として使用して、入力した暗号化操作要求を復号する。
操作要求復号部152は、CPU911を用いて、復号した復号操作要求を出力する。
識別受信工程S662において、識別受信部153は、通信装置915を用いて、利用者端末装置300が送信した利用者識別データを受信する。
有効期限判定工程S663において、要求時刻取得部154は、CPU911を用いて、要求時刻を取得する。通信鍵削除部155は、CPU911を用いて、識別受信工程S662で識別受信部153が受信した利用者識別データに基づいて、発行時刻データを取得する。通信鍵削除部155は、CPU911を用いて、取得した発行時刻データが表わす発行時刻と、要求時刻取得部154が取得した要求時刻とに基づいて、有効期限内か否かを判定する。
有効期限内であると通信鍵削除部155が判定した場合、権限検証装置100は、通信鍵選択工程S664へ進む。
有効期限切れであると通信鍵削除部155が判定した場合、権限検証装置100は、通信鍵削除工程S668へ進む。
通信鍵記憶部132が記憶した共通鍵のなかに、その利用者識別データに対応づけられた共通鍵がない場合、権限検証装置100は、操作要求検証処理S660を終了し、処理実行処理S670を実行しない。
通信鍵記憶部132が記憶した共通鍵のなかから、その利用者識別データに対応づけられた共通鍵を通信鍵選択部156が選択した場合、権限検証装置100は、操作要求復号工程S665へ進む。
操作要求検証工程S666において、操作要求検証部162は、CPU911を用いて、操作要求復号工程S665で操作要求復号部152が復号した復号操作要求を検証する。
検証の結果、利用者に操作権限があると操作要求検証部162が判定した場合、権限検証装置100は、操作要求検証処理S660を終了し、処理実行処理S670へ進む。
検証の結果、利用者に操作権限がないと操作要求検証部162が判定した場合、権限検証装置100は、操作要求検証処理S660を終了し、処理実行処理S670を実行しない。
その後、権限検証装置100は、操作要求検証処理S660を終了し、処理実行処理S670を実行しない。
上記通信鍵記憶部132は、上記記憶装置(磁気ディスク装置920)を用いて、上記識別取得部(識別生成部123)が取得した利用者識別データに対応づけて、上記通信鍵生成部131が生成した復号鍵(共通鍵)を記憶する。
上記識別受信部153は、上記受信装置(通信装置915)を用いて、上記暗号化操作要求とともに上記利用者端末装置300が送信した利用者識別データを受信する。
上記通信鍵選択部156は、上記処理装置(CPU911)を用いて、上記通信鍵記憶部132が記憶した復号鍵(共通鍵)のなかから、上記識別受信部153が受信した利用者識別データに対応づけられた復号鍵(共通鍵)を選択する。
上記操作要求復号部152は、上記処理装置(CPU911)を用いて、上記通信鍵選択部156が選択した復号鍵(共通鍵)を使用して、上記暗号化操作要求受信部151が受信した暗号化操作要求を復号して、復号操作要求とする。
上記通信鍵削除部155は、上記処理装置(CPU911)を用いて、上記通信鍵記憶部132が記憶した復号鍵(共通鍵)が有効か無効かを判定し、上記通信鍵記憶部132が記憶した復号鍵(共通鍵)のなかから、無効であると判定した復号鍵(共通鍵)を削除する。
上記現在時刻取得部(発行時刻取得部125)は、上記処理装置(CPU911)を用いて、現在時刻(発行時刻)を表わす現在時刻データ(発行時刻データ)を取得する。
上記識別取得部(識別生成部123)は、上記処理装置(CPU911)を用いて、上記現在時刻取得部(発行時刻取得部125)が取得した現在時刻データ(発行時刻データ)に基づいて、利用者識別データを生成することにより、上記利用者識別データを取得する。
上記発行時刻取得部125は、上記処理装置(CPU911)を用いて、上記識別取得部(識別生成部123)が利用者識別データを取得した時刻(発行時刻)を表わす発行時刻データを取得する。
上記要求時刻取得部154は、上記処理装置(CPU911)を用いて、上記暗号化操作要求受信部151が暗号化操作要求を受信した時刻(要求時刻)を表わす要求時刻データを取得する。
上記有効期限判定部(通信鍵削除部155)は、上記処理装置(CPU911)を用いて、上記発行時刻取得部125が取得した発行時刻データと、上記要求時刻取得部154が取得した要求時刻データとに基づいて、有効期限内か否かを判定する。
上記操作要求復号部152は、上記処理装置(CPU911)を用いて、上記有効期限判定部(通信鍵削除部155)が有効期限内であると判定した場合に、上記通信鍵生成部131が生成した復号鍵を使用して、上記暗号化操作要求受信部151が受信した暗号化操作要求を復号して、復号操作要求とする。
上記識別取得部(識別生成部123)は、上記処理装置(CPU911)を用いて、上記発行時刻取得部125が取得した発行時刻データに基づいて、利用者識別データを生成することにより、上記利用者識別データを取得する。
上記識別受信部153は、上記受信装置(通信装置915)を用いて、上記暗号化操作要求とともに上記利用者端末装置300が送信した利用者識別データを受信する。
上記有効期限判定部(通信鍵削除部155)は、上記処理装置(CPU911)を用いて、上記識別受信部153が受信した利用者識別データに基づいて、発行時刻データを取得し、取得した発行時刻データと、上記要求時刻取得部154が取得した要求時刻データとに基づいて、有効期限内か否かを判定する。
ロール情報(役割データ)を受信するロール要求受信部(権限要求受信部111)と、
乱数を生成する乱数生成部122と、
日時(発行時刻)を取得する日時取得部(発行時刻取得部125)と、
機器(実行装置200)を識別する識別情報(対象識別データ)と、ロール情報(役割データ)と、乱数と、日時(発行時刻)とからID情報(利用者識別データ)を生成するID情報生成部(識別生成部123)と、
暗号鍵(共通鍵)と復号鍵(共通鍵)とを生成する暗号鍵生成部(通信鍵生成部131)と、
日時(発行時刻)と、日時取得部(要求時刻取得部154)から取得した現在の日時(要求時刻)とをもとに復号鍵(共通鍵)を消去する復号鍵消去部(通信鍵削除部155)と、
暗号鍵(共通鍵)からID情報(利用者識別データ)により暗号済暗号鍵(暗号化通信鍵)を生成するIDベース暗号部(通信鍵暗号化部133)と、
ID情報(利用者識別データ)と、暗号済暗号鍵(暗号化暗号鍵)とをあわせて権限確認情報として送信する権限確認送信部(識別送信部141・暗号化通信鍵送信部142)と、
暗号済操作情報(暗号化操作要求)を受信する操作要求受信部(暗号化操作要求受信部151)と、
暗号済操作情報から復号鍵(共通鍵)により操作情報(操作要求メッセージ)を復号する復号部(操作要求復号部152)と、
正しく復号された操作情報(操作要求メッセージ)と、ロール情報(役割データ)とをもとに、アクセス制御マトリクス(権限対応データ)にしたがい、役割(ロール)として操作が許可されているかどうかの判定結果を生成するアクセス制御部(操作要求検証部162)とを有し、
判定結果からアクセスが許可された場合に操作を実行する。
ユーザが機器を操作する役割(ロール)を決定し、ロール要求送信部(権限要求送信部322)が、ロール情報(役割データ)を機器(実行装置200)へ送信する。
ロール要求受信部(権限要求受信部111)が、ユーザ装置(利用者端末装置300)からロール情報(役割データ)を受信する。次に、乱数生成部122が、乱数を生成する。次に、日時取得部(発行時刻取得部125)が、日時(発行時刻)を取得する。次に、ID情報生成部(識別生成部123)が、機器を識別する識別情報(対象識別データ)と、ロール情報(役割データ)と、乱数と、日時(発行時刻)とからID情報(利用者識別データ)を生成する。次に、暗号鍵生成部(通信鍵生成部131)が、暗号鍵(共通鍵)と復号鍵(共通鍵)とを生成する。次に、IDベース暗号部(通信鍵暗号化部133)が、IDベース暗号の暗号化の対象となる暗号鍵(共通鍵)からID情報(利用者識別データ)により暗号済暗号鍵(暗号化通信鍵)を生成する。次に、権限確認送信部(識別送信部141・暗号化通信鍵送信部142)が、ID情報(利用者識別データ)と暗号済暗号鍵(暗号化通信鍵)とをあわせて権限確認情報としてユーザ装置(利用者端末装置300)へ送信する。
権限確認受信部(端末利用者識別受信部331・暗号化通信鍵受信部332)が、機器(実行装置200)から権限確認情報(利用者識別データ及び暗号化通信鍵)を受信する。次に、署名部(署名生成部343)が、権限確認情報に含まれるID情報(利用者識別データ)からユーザ秘密鍵(公開鍵暗号方式における秘密鍵)により署名情報(署名データ)を生成する。次に、発行要求送信部(端末利用者識別送信部351・署名送信部352)が、ユーザ公開鍵を含むユーザ情報(個別識別データ)と、ID情報(利用者識別データ)と、署名情報(署名データ)とをあわせて発行要求としてサーバ(鍵生成装置400)に送信する。
発行要求受信部(生成利用者識別受信部411・署名受信部412)が、ユーザ装置(利用者端末装置300)から発行要求を受信する。次に、署名検証部423が、発行要求に含まれる署名情報(署名データ)を署名検証情報(公開鍵証明書)により検証して検証結果を生成する。
なお、署名検証部423は、署名検証情報として、予め安全な方法により、ユーザ装置(利用者端末装置300)からサーバ(鍵生成装置400)に渡されたユーザ公開鍵を利用する構成としてもよい。
また、予めサーバ(鍵生成装置400)がユーザの秘密鍵とユーザの公開鍵を生成し、安全な方法により、サーバ(鍵生成装置400)からユーザ装置(利用者端末装置300)にユーザの秘密鍵とユーザの公開鍵を渡しておく構成としてもよい。
また、予めユーザ公開鍵に対してPKIの認証局が公開鍵証明書を発行し、サーバ(鍵生成装置400)は、認証局の公開鍵証明書を署名検証情報として利用する構成としてもよい。
例えば、権限判定部434は、まずユーザ情報(個別識別データ)をもとに識別情報(対象識別データ)とロール情報(役割データ)との関係を表す表を特定し、識別情報とロール情報から、表の該当する箇所の「○」と「×」とによりアクセス権の有無を判断する。
秘密鍵受信部(暗号化秘密鍵受信部361)が、暗号済秘密鍵(暗号化秘密鍵)を受信する。次に、秘密鍵復号部362が、暗号済秘密鍵(暗号化秘密鍵)からユーザ秘密鍵によりIDベース秘密鍵を復号する。次に、IDベース復号部(通信鍵復号部371)が、権限確認情報に含まれる暗号済暗号鍵(暗号化通信鍵)からIDベース秘密鍵により暗号鍵(共通鍵)を復号する。次に、暗号部(操作要求暗号化部382)が、機器(実行装置200)に対する操作情報(操作要求メッセージ)から暗号鍵(共通鍵)により暗号済操作情報(暗号化操作要求)を生成する。次に、操作要求送信部(暗号化操作要求送信部383)が、暗号済操作情報(暗号化操作要求)を機器(実行装置200)に送信する。
操作要求受信部(暗号化操作要求受信部151)が、暗号済操作情報(暗号化操作要求)を受信する。次に、復号鍵消去部(通信鍵削除部155)が、日時(発行時刻)と、日時取得部(要求時刻取得部154)が取得した現在の日時(要求時刻)とをもとに、日時の経過からアクセス権の失効の即時性が損なわれていないかどうかを確認し、即時性が損なわれた場合に復号鍵(共通鍵)を消去し、以後の処理を中断する。
次に、復号部(操作要求復号部152)が、暗号済操作情報(暗号化操作要求)から復号鍵(共通鍵)により操作情報(操作要求メッセージ)を復号する。次に、復号部(操作要求復号部152)が操作情報(操作要求メッセージ)を正しく復号した場合に、操作要求検証部162が、正しく復号された操作情報(操作要求メッセージ)と、ロール情報(役割データ)とをもとに、アクセス制御マトリクス(権限対応データ9にしたがい、役割(ロール)として操作が許可されているかどうかの判定結果を生成する。
例えば、操作要求検証部162は、操作(操作内容データ)とロール情報(役割データ)とから、表の該当する箇所の「○」と「×」とにより操作が許可されているかどうかを判断する。
次に、機器(実行装置200)が、判定結果からアクセスが許可された場合に操作を実行する。
実施の形態3について、図12〜図13を用いて説明する。
なお、実施の形態1または実施の形態2で説明したアクセス制御システム800と共通する部分については、同一の符号を付し、説明を省略する。
権限検証装置100は、実施の形態1で説明した機能ブロックに加えて、更に、識別受信部153、通信鍵削除部155、通信鍵選択部156、操作回数記憶部157、操作回数計数部158を有する。
なお、権限検証装置100は、更に、実施の形態2で説明した発行時刻取得部125、要求時刻取得部154を有していてもよい。
操作回数計数部158は、CPU911を用いて、操作要求検証部162が復号操作要求を出力した場合に、操作回数記憶部157が記憶した操作回数データのなかから、入力した利用者識別データに対応づけられた操作回数データを取得する。操作回数記憶部157が記憶した操作回数データのなかに、入力した利用者識別データに対応づけられた操作回数データがない場合、操作回数計数部158は、CPU911を用いて、操作回数0回を表わす操作回数データを取得する。
操作回数計数部158は、CPU911を用いて、入力した操作回数データが表わす操作回数に1を加える。
操作回数計数部158は、CPU911を用いて、入力した利用者識別データと、加算した操作回数を表わす操作回数データとを出力する。
操作回数計数部158は、CPU911を用いて、加算した操作回数を、所定の最大操作回数と比較して、操作回数が最大操作回数未満であるか最大操作回数以上であるかを判定する。
操作回数計数部158は、CPU911を用いて、判定結果を表わすデータを出力する。
操作回数記憶部157は、磁気ディスク装置920を用いて、入力した利用者識別データと対応づけて、入力した操作回数データを記憶する。
識別受信工程S662において、識別受信部153は、通信装置915を用いて、利用者端末装置300が送信した利用者識別データを受信する。
通信鍵選択工程S664において、通信鍵選択部156は、CPU911を用いて、通信鍵記憶部132が記憶した共通鍵のなかから、識別受信工程S662で識別受信部153が受信した利用者識別データに対応づけられた共通鍵を選択する。
通信鍵記憶部132が記憶した共通鍵のなかに、その利用者識別データに対応づけられた共通鍵がない場合、権限検証装置100は、操作要求検証処理S660を終了し、処理実行処理S670を実行しない。
通信鍵記憶部132が記憶した共通鍵のなかから、その利用者識別データに対応づけられた共通鍵を通信鍵選択部156が選択した場合、権限検証装置100は、操作要求復号工程S665へ進む。
操作要求検証工程S666において、操作要求検証部162は、CPU911を用いて、操作要求復号工程S665で操作要求復号部152が復号した復号操作要求を検証する。
検証の結果、利用者に操作権限があると操作要求検証部162が判定した場合、権限検証装置100は、操作回数計数工程S667へ進む。
検証の結果、利用者に操作権限がないと操作要求検証部162が判定した場合、権限検証装置100は、操作要求検証処理S660を終了し、処理実行処理S670を実行しない。
1を加えた操作回数が最大操作回数以上である場合、権限検証装置100は、通信鍵削除工程S668へ進む。
1を加えた操作回数が最大操作回数未満である場合、権限検証装置100は、操作要求検証処理S660を終了し、処理実行処理S670へ進む。
その後、権限検証装置100は、操作要求検証処理S660を終了し、処理実行処理S670へ進む。
上記操作回数計数部158は、上記処理装置(CPU911)を用いて、上記操作要求検証部162が操作権限ありと判定した回数を計数して、操作回数とする。
上記操作要求復号部152は、上記処理装置(CPU911)を用いて、上記操作回数計数部158が計数した操作回数が所定の最大操作回数未満である場合に、上記通信鍵生成部131が生成した復号鍵(共通鍵)を使用して、上記暗号化操作要求受信部151が受信した暗号化操作要求を復号して、復号操作要求とする。
上記識別受信部153は、上記受信装置(通信装置915)を用いて、上記暗号化操作要求とともに上記利用者端末装置300が送信した利用者識別データを受信する。
上記操作回数計数部158は、上記処理装置(CPU911)を用いて、上記識別受信部153が受信した利用者識別データごとに、上記操作要求検証部162が操作権限ありと判定した回数を計数して、上記利用者識別データについての操作回数とする。
上記通信鍵削除部155は、上記処理装置(CPU911)を用いて、上記操作回数計数部158が計数した操作回数が所定の最大操作回数以上である場合に、上記通信鍵記憶部132が記憶した復号鍵(共通鍵)のなかから、上記識別受信部153が受信した利用者識別データに対応づけられた復号鍵(共通鍵)を削除する。
実施の形態4について、図14〜図15を用いて説明する。
なお、実施の形態1乃至実施の形態3のいずれかで説明したアクセス制御システム800と共通する部分については、同一の符号を付し、説明を省略する。
権限検証装置100は、実施の形態1で説明した機能ブロックに加えて、更に、識別受信部153、要求時刻取得部154、通信鍵削除部155、通信鍵選択部156、操作履歴記憶部164、操作人数算出部165、削除利用者特定部166を有する。
権限検証装置100は、更に、実施の形態2または実施の形態3で説明した発行時刻取得部125、操作回数記憶部157、操作回数計数部158などを有していてもよい。
操作履歴記憶部164は、磁気ディスク装置920を用いて、操作要求検証部162が復号操作要求を出力した場合に、入力した利用者識別データに対応づけて、入力した要求時刻データを記憶する。例えば、操作履歴記憶部164は、磁気ディスク装置920を用いて、利用者識別データと、要求時刻データとを一組のデータ(レコード)とし、複数のレコードからなるデータを記憶する。操作履歴記憶部164は、CPU911を用いて、入力した利用者識別データと同一の利用者識別データを既に記憶しているか否かを判定し、既に記憶していると判定した場合、そのレコードの要求時刻データに上書きして、入力した要求時刻データを記憶する。また、記憶していないと判定した場合は、操作履歴記憶部164は、入力した利用者識別データと入力した要求時刻データとからなるレコードを新たに生成し、既に記憶しているレコードに追加して記憶する。
操作人数算出部165は、CPU911を用いて、入力した要求時刻データが対応づけられた利用者識別データの数(以下「操作人数」と呼ぶ。)を算出する。例えば、操作人数算出部165は、CPU911を用いて、入力した要求時刻データの数を計数し、計数した数を操作人数とする。
操作人数算出部165は、CPU911を用いて、算出した操作人数を表わすデータ(以下「操作人数データ」と呼ぶ。)を出力する。
削除利用者特定部166は、CPU911を用いて、入力した操作人数データが表わす操作人数と、所定の最大操作人数とを比較して、操作人数が最大操作人数以下であるか最大操作人数超であるかを判定する。
削除利用者特定部166は、CPU911を用いて、操作人数が最大操作人数超であると判定した場合、操作履歴記憶部164が記憶した要求時刻データを入力する。
削除利用者特定部166は、CPU911を用いて、入力した要求時刻データのなかから、要求時刻データが表わす要求時刻が古い順に、所定の数の要求時刻データを選択する。
削除利用者特定部166は、CPU911を用いて、選択した要求時刻データに対応づけられた利用者識別データ(以下「削除識別データ」と呼ぶ。)を特定する。
削除利用者特定部166は、CPU911を用いて、特定した削除識別データを出力する。
通信鍵削除部155は、CPU911を用いて、通信鍵記憶部132が記憶した共通鍵のなかから、入力した削除識別データに対応づけられた共通鍵を削除する。
操作人数算出工程S692において、操作人数算出部165は、CPU911を用いて、操作履歴記憶部164が記憶した要求時刻データに基づいて、操作人数を算出する。削除利用者特定部166は、CPU911を用いて、操作人数算出部165が算出した操作人数と、最大操作人数とを比較する。
操作人数が最大操作人数以下であると削除利用者特定部166が判定した場合、権限検証装置100は、操作要求検証処理S660を終了し、処理実行処理S670へ進む。
操作人数が最大操作人数超であると削除利用者特定部166が判定した場合、権限検証装置100は、削除利用者特定工程S693へ進む。
通信鍵削除工程S668において、通信鍵削除部155は、CPU911を用いて、通信鍵記憶部132が記憶した共通鍵のなかから、削除利用者特定工程S693で削除利用者特定部166が特定した削除識別データに対応づけられた共通鍵を削除する。操作履歴記憶部164は、CPU911を用いて、記憶した要求時刻データのなかから、削除利用者特定工程S693で削除利用者特定部166が特定した削除識別データに対応づけられた要求時刻データを削除する。
その後、権限検証装置100は、操作要求検証処理S660を終了し、処理実行処理S670へ進む。
その場合、例えば、識別生成部123が、CPU911を用いて、個別識別データを含む利用者識別データを生成する。操作履歴記憶部164は、CPU911を用いて、入力した利用者識別データから個別識別データを取得して、磁気ディスク装置920を用いて、取得した個別識別データに対応づけて、入力した要求時刻データを記憶する。操作人数算出部165は、CPU911を用いて、操作履歴記憶部164が記憶した要求時刻データに対応づけれらた個別識別データの数を算出して、操作人数とする。
その場合、例えば、操作人数算出部165は、CPU911を用いて、入力した要求時刻データに対応づけられた利用者識別データから、役割データを取得し、役割データごとに、利用者識別データ(あるいは個別識別データ)の数を算出して、操作人数とする。そうすれば、例えば、管理者の数はあらかじめ定めてあるが、一般利用者の数はあらかじめ定めていない場合などにも、対応することができる。
上記操作人数算出部165は、上記処理装置(CPU911)を用いて、上記操作要求検証部162が操作権限ありと判定した利用者の利用者識別データの数を算出して、操作人数とする。
上記削除利用者特定部166は、上記処理装置(CPU911)を用いて、上記操作人数算出部165が算出した操作人数が、上記対象装置210の操作を許可する最大人数(最大操作人数)を超えた場合に、上記通信鍵記憶部132が記憶した復号鍵(共通鍵)に対応づけられた利用者識別データのなかから、削除する利用者識別データを特定して、削除識別データとする。
上記通信鍵削除部155は、上記処理装置(CPU911)を用いて、上記通信鍵記憶部132が記憶した復号鍵(共通鍵)のなかから、上記削除利用者特定部166が特定した削除識別データに対応づけられた復号鍵(共通鍵)を削除する。
実施の形態5について、図16〜図17を用いて説明する。
なお、実施の形態1乃至実施の形態4のいずれかで説明したアクセス制御システム800と共通する部分については、同一の符号を付し、説明を省略する。
権限検証装置100は、実施の形態1で説明した機能ブロックに加えて、更に、発行番号計数部126、識別受信部153、通信鍵削除部155、通信鍵選択部156を有する。
なお、権限検証装置100は、更に、実施の形態2乃至実施の形態4のいずれかで説明した発行時刻取得部125、要求時刻取得部154、操作回数記憶部157、操作回数計数部158、操作履歴記憶部164、操作人数算出部165、削除利用者特定部166などを有していてもよい。
発行番号計数部126は、CPU911を用いて、権限要求受信部111が権限要求メッセージを受信した場合に、記憶した発行番号データが表わす発行番号に1を加え、磁気ディスク装置920を用いて、1を加えた発行番号を表わす発行番号データを記憶する。
発行番号計数部126は、CPU911を用いて、記憶した発行番号データを出力する。
識別生成部123は、CPU911を用いて、入力した役割データと乱数と発行番号データとに基づいて、利用者識別データを生成する。例えば、識別生成部123は、CPU911を用いて、実行装置200自身を識別する対象識別データと、入力した役割データと、入力した乱数を表わす文字列データと、入力した発行番号データとを結合して、結合したデータを利用者識別データとする。
識別生成部123は、CPU911を用いて、生成した利用者識別データを出力する。
通信鍵削除部155は、CPU911を用いて、通信鍵記憶部132が記憶した共通鍵について、対応づけられた利用者識別データに基づいて、発行番号データ(以下「通信鍵発行番号データ」と呼ぶ。)を取得する。
通信鍵削除部155は、CPU911を用いて、入力した最新発行番号データが表わす発行番号と、取得した通信鍵発行番号データが表わす発行番号との差(以下「通信鍵発行数」と呼ぶ。)を算出する。通信鍵削除部155が算出する通信鍵発行数は、その共通鍵が対応づけられた利用者識別データを識別生成部123が生成したのち、現在までに識別生成部123が生成した利用者識別データの数を表わし、その共通鍵がどのくらい古いものであるかの目安となるものである。
通信鍵削除部155は、CPU911を用いて、通信鍵記憶部132が記憶した共通鍵のなかから、算出した通信鍵発行数が所定の最大発行数よりも大きい共通鍵を削除する。
役割取得工程S622において、役割取得部121は、CPU911を用いて、権限要求受信工程S621で権限要求受信部111が受信した権限要求メッセージに基づいて、役割データを取得する。
乱数生成工程S623において、乱数生成部122は、CPU911を用いて、乱数を生成する。
発行番号計数工程S624において、発行番号計数部126は、CPU911を用いて、記憶した発行番号データが表わす発行番号に1を加える。
識別生成工程S625において、識別生成部123は、CPU911を用いて、役割取得工程S622で役割取得部121が取得した役割データと、乱数生成工程S623で乱数生成部122が生成した乱数と、発行番号計数工程S624で発行番号計数部126が計数した発行番号とに基づいて、利用者識別データを生成する。
通信鍵生成工程S626において、通信鍵生成部131は、CPU911を用いて、共通鍵暗号方式で使用する共通鍵を生成する。通信鍵記憶部132は、磁気ディスク装置920を用いて、通信鍵生成部131が生成した共通鍵を、識別生成部123が生成した利用者識別データと対応づけて記憶する。
通信鍵暗号化工程S627において、通信鍵暗号化部133は、CPU911を用いて、IDベース暗号方式により、識別生成工程S625で識別生成部123が生成した利用者識別データをIDベース暗号方式における公開鍵として使用して、通信鍵生成工程S626で通信鍵生成部131が生成した共通鍵を暗号化する。
識別送信工程S628において、識別送信部141は、通信装置915を用いて、識別生成工程S625で識別生成部123が生成した利用者識別データを、利用者端末装置300に対して送信する。
暗号化通信鍵送信工程S629において、暗号化通信鍵送信部142は、通信装置915を用いて、通信鍵暗号化工程S627で通信鍵暗号化部133が暗号化した暗号化通信鍵を、利用者端末装置300に対して送信する。
通信鍵発行数が最大発行数以下であると通信鍵削除部155が判定した場合、権限検証装置100は、通信鍵繰り返し工程S698へ進む。
通信鍵発行数が最大発行数超であると通信鍵削除部155が判定した場合、権限検証装置100は、通信鍵削除工程S697へ進む。
その場合、発行番号計数部126は、磁気ディスク装置920を用いて、役割データに対応づけて発行番号データを記憶する。発行番号計数部126は、CPU911を用いて、役割取得部121が出力した役割データを入力し、記憶した発行番号データのなかから、入力した役割データに対応づけられた発行番号データを選択し、選択した発行番号データが表わす発行番号に1を加え、加算した発行番号を表わす発行番号データを、入力した役割データに対応づけて上書きして記憶する。
通信鍵削除部155は、CPU911を用いて、通信鍵記憶部132が記憶した共通鍵のなかから、その共通鍵が対応づけられた利用者識別データに基づいて取得した役割データが、役割取得部121が出力した役割データと同一である共通鍵を抽出し、抽出した共通鍵について、その共通鍵が対応づけられた利用者識別データに基づいて取得した通信鍵発行番号データと、発行番号計数部126が計数した最新発行番号データとに基づいて、通信鍵発行数を算出して、削除する共通鍵を決定する。
上記発行番号計数部126は、CPU911を用いて、識別取得部(識別生成部123)が利用者識別データを取得すると増加する発行番号を計数する。
上記識別取得部(識別生成部123)は、CPU911を用いて、発行番号計数部126が計数した発行番号に基づいて、利用者識別データを生成することにより、上記利用者識別データを取得する。
上記通信鍵削除部155は、CPU911を用いて、上記通信鍵記憶部132が記憶した復号鍵(共通鍵)のなかから、上記発行番号計数部126が計数した発行番号と、上記復号鍵(共通鍵)に対応づけられた利用者識別データに基づいて取得した発行番号との差が所定の最大発行数よりも大きい復号鍵(共通鍵)を削除する。
ロール情報(役割データ)を受信するロール要求受信部(権限要求受信部111)と、
乱数を生成する乱数生成部122と、
カウント値(発行番号)を生成するカウント部(発行番号計数部126)と、
機器(実行装置200)を識別する識別情報(対象識別データ)と、ロール情報(役割データ)と、乱数と、カウント値(発行番号)とからID情報(利用者識別データ)を生成するID情報生成部(識別生成部123)と、
暗号鍵(共通鍵)と復号鍵(共通鍵)とを生成する暗号鍵生成部(通信鍵生成部131)と、
カウント値(発行番号)と、カウント部(発行番号計数部126)の保持する現在のカウント値(発行番号)とをもとに復号鍵(共通鍵)を消去する復号鍵消去部(通信鍵削除部155)と、
暗号鍵(共通鍵)からID情報(利用者識別データ)により暗号済暗号鍵(暗号化通信鍵)を生成するIDベース暗号部(通信鍵暗号化部133)と、
ID情報(利用者識別データ)と、暗号済暗号鍵(暗号化通信鍵)とをあわせて権限確認情報として送信する権限確認送信部(識別送信部141・暗号化通信鍵送信部142)と、
暗号済操作情報(暗号化操作要求)を受信する操作要求受信部(暗号化操作要求受信部151)と、
暗号済操作情報から復号鍵(通信鍵)により操作情報(操作要求メッセージ)を復号する復号部(操作要求復号部152)と、
正しく復号された操作情報(操作要求メッセージ)と、ロール情報(役割データ)とをもとに、アクセス制御マトリクス(権限対応データ)にしたがい、役割(ロール)として操作が許可されているかどうかの判定結果を生成するアクセス制御部(操作要求検証部162)とを有し、
判定結果からアクセスが許可された場合に操作を実行する。
ユーザが機器(実行装置200)を操作する役割(ロール)を決定し、ロール要求送信部(権限要求送信部322)が、ロール情報(役割データ)を機器(実行装置200)へ送信する。
ロール要求受信部(権限要求受信部111)が、ユーザ装置(利用者端末装置300)からロール情報(役割データ)を受信する。次に、乱数生成部122が、乱数を生成する。次に、カウント部(発行番号計数部126)が、前回生成したカウント値(発行番号)を1つ増やして、カウント値(発行番号)を生成する。次に、ID情報生成部(識別生成部123)が、機器(実行装置200)を識別する識別情報(対象識別データ)と、ロール情報(役割データ)と、乱数と、カウント値(発行番号)とからID情報(利用者識別データ)を生成する。次に、暗号鍵生成部(通信鍵生成部131)が、暗号鍵(共通鍵)と復号鍵(共通鍵)とを生成する。次に、IDベース暗号部(通信鍵暗号化部133)が、IDベース暗号の暗号化の対象となる暗号鍵(共通鍵)からID情報(利用者識別データ)により暗号済暗号鍵(暗号化通信鍵)を生成する。次に、権限確認送信部(識別送信部141・暗号化通信鍵送信部142)が、ID情報(利用者識別データ)と、暗号済暗号鍵(暗号化通信鍵)とをあわせて権限確認情報としてユーザ装置(利用者端末装置300)へ送信する。
権限確認受信部(端末利用者識別受信部331・暗号化通信鍵受信部332)が、機器(実行装置200)から権限確認情報を受信する。次に、署名部(署名生成部343)が、権限確認情報に含まれるID情報(利用者識別データ)からユーザ秘密鍵により署名情報(署名データ)を生成する。次に、発行要求送信部(端末利用者識別送信部351・署名送信部352)が、ユーザ公開鍵を含むユーザ情報(個別識別データ)と、ID情報(利用者識別データ)と、署名情報(署名データ)とをあわせて発行要求としてサーバ(鍵生成装置400)に送信する。
発行要求受信部(生成利用者識別受信部411・署名受信部412)が、ユーザ装置(利用者端末装置300)から発行要求を受信する。次に、署名検証部423が、発行要求に含まれる署名情報(署名データ)を署名検証情報(公開鍵証明書)により検証して検証結果を生成する。
なお、署名検証部423は、署名検証情報として、予め安全な方法により、ユーザ装置(利用者端末装置300)からサーバ(鍵生成装置400)に渡されたユーザ公開鍵を利用する構成としてもよい。
また、予めサーバ(鍵生成装置400)がユーザの秘密鍵とユーザの公開鍵とを生成し、安全な方法により、サーバ(鍵生成装置400)からユーザ装置(利用者端末装置300)にユーザの秘密鍵とユーザの公開鍵とを渡しておく構成としてもよい。
また、予めユーザ公開鍵に対してPKIの認証局が公開鍵証明書を発行し、サーバ(鍵生成装置400)は認証局の公開鍵証明書を署名検証情報として利用する構成としてもよい。
例えば、権限判定部434は、まずユーザ情報(個別識別データ)をもとに識別情報(対象識別データ)とロール情報(役割データ)との関係を表す表を特定し、識別情報(対象識別データ)とロール情報(役割データ)とから、表の該当する箇所の「○」と「×」とによりアクセス権の有無を判断する。
秘密鍵受信部(暗号化秘密鍵受信部361)が、暗号済秘密鍵(暗号化秘密鍵)を受信する。次に、秘密鍵復号部362が、暗号済秘密鍵(暗号化秘密鍵)からユーザ秘密鍵によりIDベース秘密鍵を復号する。次に、IDベース復号部(通信鍵復号部371)が、権限確認情報に含まれる暗号済暗号鍵(暗号化通信鍵)からIDベース秘密鍵により暗号鍵(共通鍵)を復号する。次に、暗号部(操作要求暗号化部382)が、機器(実行装置200)に対する操作情報(操作要求メッセージ)から暗号鍵(共通鍵)により暗号済操作情報(暗号化操作要求)を生成する。次に、操作要求送信部(暗号化操作要求送信部383)が、暗号済操作情報(暗号化操作要求)を機器(実行装置200)に送信する。
操作要求受信部(暗号化操作要求受信部151)が、暗号済操作情報(暗号化操作要求)を受信する。次に、復号鍵消去部(通信鍵削除部155)が、カウント値(発行番号)と、カウント部(発行時刻取得部125)の保持する現在のカウント値(発行番号)をもとに、カウントの差分(通信鍵発行数)からアクセス権の失効の即時性が損なわれていないかどうかを確認し、即時性が損なわれた場合に復号鍵(共通鍵)を消去し、以後の処理を中断する。
例えば、操作要求検証部162は、操作(操作内容データ)とロール情報(役割データ)とから、表の該当する箇所の「○」と「×」とにより操作が許可されているかどうかを判断する。
次に、機器(実行装置200)が、判定結果からアクセスが許可された場合に操作を実行する。
Claims (26)
- 利用者が対象装置を操作する権限があるか否かを検証する権限検証装置において、
データを処理する処理装置と、データを送信する送信装置と、データを受信する受信装置と、識別取得部と、通信鍵生成部と、通信鍵暗号化部と、暗号化通信鍵送信部と、暗号化操作要求受信部と、操作要求復号部と、操作要求検証部と、操作要求通知部とを有し、
上記識別取得部は、上記処理装置を用いて、利用者を識別する利用者識別データを取得し、
上記通信鍵生成部は、上記処理装置を用いて、暗号化鍵と上記暗号化鍵に対応する復号鍵とを生成し、
上記通信鍵暗号化部は、上記処理装置を用いて、IDベース暗号方式により、上記識別取得部が取得した利用者識別データを使用して、上記通信鍵生成部が生成した暗号化鍵を暗号化して、暗号化通信鍵とし、
上記暗号化通信鍵送信部は、上記送信装置を用いて、上記通信鍵暗号化部が暗号化した暗号化通信鍵を送信し、
上記暗号化操作要求受信部は、上記受信装置を用いて、上記対象装置に対する操作を表わす操作要求メッセージを暗号化した暗号化操作要求を受信し、
上記操作要求復号部は、上記処理装置を用いて、上記通信鍵生成部が生成した復号鍵を使用して、上記暗号化操作要求受信部が受信した暗号化操作要求を復号して、復号操作要求とし、
上記操作要求検証部は、上記処理装置を用いて、上記操作要求復号部が復号した復号操作要求が正しく復号されているか否かを判定し、正しく復号されていると判定した場合に、操作権限ありと判定し、
上記操作要求通知部は、上記処理装置を用いて、上記操作要求検証部が操作権限ありと判定した場合に、上記操作要求復号部が復号した復号操作要求を、操作要求メッセージとして上記対象装置に対して通知することを特徴とする権限検証装置。 - 上記権限検証装置は、更に、役割取得部を有し、
上記役割取得部は、上記処理装置を用いて、利用者の役割を表わす役割データを取得し、
上記識別取得部は、上記処理装置を用いて、上記役割取得部が取得した役割データに基づいて、利用者識別データを生成することにより、上記利用者識別データを取得し、
上記操作要求検証部は、上記処理装置を用いて、上記操作要求復号部が復号した復号操作要求が正しく復号されているか否かを判定し、正しく復号されていると判定した場合に、上記役割取得部が取得した役割データが表わす役割に、上記復号操作要求が表わす操作をする権限があるか否かを判定し、上記役割に上記操作をする権限があると判定した場合に、操作権限ありと判定することを特徴とする請求項1に記載の権限検証装置。 - 上記権限検証装置は、更に、発行時刻取得部と、要求時刻取得部と、有効期限判定部とを有し、
上記発行時刻取得部は、上記処理装置を用いて、上記識別取得部が利用者識別データを取得した時刻を表わす発行時刻データを取得し、
上記要求時刻取得部は、上記処理装置を用いて、上記暗号化操作要求受信部が暗号化操作要求を受信した時刻を表わす要求時刻データを取得し、
上記有効期限判定部は、上記処理装置を用いて、上記発行時刻取得部が取得した発行時刻データと、上記要求時刻取得部が取得した要求時刻データとに基づいて、有効期限内か否かを判定し、
上記操作要求復号部は、上記処理装置を用いて、上記有効期限判定部が有効期限内であると判定した場合に、上記通信鍵生成部が生成した復号鍵を使用して、上記暗号化操作要求受信部が受信した暗号化操作要求を復号して、復号操作要求とすることを特徴とする請求項1または請求項2に記載の権限検証装置。 - 上記権限検証装置は、更に、操作回数計数部を有し、
上記操作回数計数部は、上記処理装置を用いて、上記操作要求検証部が操作権限ありと判定した回数を計数して、操作回数とし、
上記操作要求復号部は、上記処理装置を用いて、上記操作回数計数部が計数した操作回数が所定の最大操作回数未満である場合に、上記通信鍵生成部が生成した復号鍵を使用して、上記暗号化操作要求受信部が受信した暗号化操作要求を復号して、復号操作要求とすることを特徴とする請求項1〜請求項3のいずれかに記載の権限検証装置。 - 上記権限検証装置は、更に、識別送信部を有し、
上記識別送信部は、上記送信装置を用いて、上記識別取得部が取得した利用者識別データを送信することを特徴とする請求項1〜請求項4のいずれかに記載の権限検証装置。 - 上記権限検証装置は、更に、現在時刻取得部を有し、
上記現在時刻取得部は、上記処理装置を用いて、現在時刻を表わす現在時刻データを取得し、
上記識別取得部は、上記処理装置を用いて、上記現在時刻取得部が取得した現在時刻データに基づいて、利用者識別データを生成することにより、上記利用者識別データを取得することを特徴とする請求項5に記載の権限検証装置。 - 上記権限検証装置は、更に、乱数生成部を有し、
上記乱数生成部は、上記処理装置を用いて、乱数を生成し、
上記識別取得部は、上記処理装置を用いて、上記乱数生成部が生成した乱数に基づいて、利用者識別データを生成することにより、上記利用者識別データを取得することを特徴とする請求項5または請求項6に記載の権限検証装置。 - 上記権限検証装置は、更に、データを記憶する記憶装置と、通信鍵記憶部と、識別受信部と、通信鍵選択部とを有し、
上記通信鍵記憶部は、上記記憶装置を用いて、上記識別取得部が取得した利用者識別データに対応づけて、上記通信鍵生成部が生成した復号鍵を記憶し、
上記識別受信部は、上記受信装置を用いて、上記暗号化操作要求とともに利用者端末装置が送信した利用者識別データを受信し、
上記通信鍵選択部は、上記処理装置を用いて、上記通信鍵記憶部が記憶した復号鍵のなかから、上記識別受信部が受信した利用者識別データに対応づけられた復号鍵を選択し、
上記操作要求復号部は、上記処理装置を用いて、上記通信鍵選択部が選択した復号鍵を使用して、上記暗号化操作要求受信部が受信した暗号化操作要求を復号して、復号操作要求とすることを特徴とする請求項1〜請求項7のいずれかに記載の権限検証装置。 - 上記権限検証装置は、更に、通信鍵削除部を有し、
上記通信鍵削除部は、上記処理装置を用いて、上記通信鍵記憶部が記憶した復号鍵が有効か無効かを判定し、上記通信鍵記憶部が記憶した復号鍵のなかから、無効であると判定した復号鍵を削除することを特徴とする請求項8に記載の権限検証装置。 - 上記権限検証装置は、更に、操作人数算出部と、削除利用者特定部とを有し、
上記操作人数算出部は、上記処理装置を用いて、上記操作要求検証部が操作権限ありと判定した利用者の利用者識別データの数を算出して、操作人数とし、
上記削除利用者特定部は、上記処理装置を用いて、上記操作人数算出部が算出した操作人数が、上記対象装置の操作を許可する最大人数を超えた場合に、上記通信鍵記憶部が記憶した復号鍵に対応づけられた利用者識別データのなかから、削除する利用者識別データを特定して、削除識別データとし、
上記通信鍵削除部は、上記処理装置を用いて、上記通信鍵記憶部が記憶した復号鍵のなかから、上記削除利用者特定部が特定した削除識別データに対応づけられた復号鍵を削除することを特徴とする請求項9に記載の権限検証装置。 - 上記操作人数算出部は、上記処理装置を用いて、利用者の役割ごとに、上記操作人数を算出することを特徴とする請求項10に記載の権限検証装置。
- 操作権限のある利用者からの操作要求に基づいて処理を実行する実行装置において、
請求項1〜請求項11のいずれかに記載の権限検証装置と、上記権限検証装置が通知した操作要求メッセージに基づいて処理を実行する対象装置とを有することを特徴とする実行装置。 - 利用者が対象装置を操作する権限を有するか否かを検証する権限検証装置に対して、上記利用者による上記対象装置に対する操作要求を通知する利用者端末装置において、
データを処理する処理装置と、データを受信する受信装置と、データを送信する送信装置と、端末利用者識別取得部と、秘密鍵取得部と、暗号化通信鍵受信部と、通信鍵復号部と、操作要求暗号化部と、暗号化操作要求送信部とを有し、
上記端末利用者識別取得部は、上記処理装置を用いて、利用者を識別する利用者識別データを取得し、
上記秘密鍵取得部は、上記処理装置を用いて、IDベース暗号方式において上記端末利用者識別取得部が取得した利用者識別データに対応する秘密鍵を取得し、
上記暗号化通信鍵受信部は、上記受信装置を用いて、暗号化に使用する暗号化鍵をIDベース暗号方式により暗号化した暗号化通信鍵を、上記権限検証装置から受信し、
上記通信鍵復号部は、上記処理装置を用いて、IDベース暗号方式により、上記秘密鍵取得部が取得した秘密鍵を使用して、上記暗号化通信鍵受信部が受信した暗号化通信鍵を復号して、復号通信鍵とし、
上記操作要求暗号化部は、上記処理装置を用いて、上記通信鍵復号部が復号した復号通信鍵を使用して、上記利用者による対象装置に対する操作を表わす操作要求メッセージを暗号化して、暗号化操作要求とし、
上記暗号化操作要求送信部は、上記送信装置を用いて、上記操作要求暗号化部が暗号化した暗号化操作要求を、上記権限検証装置に対して送信することを特徴とする利用者端末装置。 - 上記利用者端末装置は、更に、端末利用者識別送信部を有し、
上記端末利用者識別送信部は、上記送信装置を用いて、IDベース暗号方式における秘密鍵を生成する鍵生成装置に対して、上記端末利用者識別取得部が取得した利用者識別データを送信し、
上記秘密鍵取得部は、上記受信装置を用いて、上記鍵生成装置が生成した秘密鍵を受信することにより、上記秘密鍵を取得することを特徴とする請求項13に記載の利用者端末装置。 - 利用者による対象装置の操作を制御するアクセス制御システムにおいて、
請求項1〜請求項11のいずれかに記載の権限検証装置と、請求項13または請求項14に記載の利用者端末装置とを有することを特徴とするアクセス制御システム。 - 上記アクセス制御システムは、更に、
IDベース暗号方式における秘密鍵を生成する鍵生成装置であって、
データを処理する処理装置と、データを受信する受信装置と、データを送信する送信装置と、生成利用者識別受信部と、権限判定部と、秘密鍵生成部と、秘密鍵送信部とを有し、
上記生成利用者識別受信部は、上記受信装置を用いて、利用者を識別する利用者識別データを受信し、
上記権限判定部は、上記処理装置を用いて、上記利用者に対象装置を操作する権限があるか否かを判定し、
上記秘密鍵生成部は、上記処理装置を用いて、上記利用者に対象装置を操作する権限が
あると上記権限判定部が判定した場合に、IDベース暗号方式において上記生成利用者識別受信部が受信した利用者識別データに対応する秘密鍵を生成し、
上記秘密鍵送信部は、上記送信装置を用いて、上記秘密鍵生成部が生成した秘密鍵を送信する鍵生成装置を有することを特徴とする請求項15に記載のアクセス制御システム。 - 上記鍵生成装置は、更に、生成役割取得部を有し、
上記生成利用者識別受信部は、上記受信装置を用いて、上記利用者の役割を表わす役割データを含む利用者識別データを受信し、
上記生成役割取得部は、上記処理装置を用いて、上記生成利用者識別受信部が受信した利用者識別データに基づいて、上記役割データを取得し、
上記権限判定部は、上記処理装置を用いて、上記利用者が上記対象装置に対して上記役割データが表わす役割を有するか否かを判定し、上記利用者が上記対象装置に対して上記役割データが表わす役割を有すると判定した場合に、上記利用者に上記対象装置を操作する権限があると判定することを特徴とする請求項16に記載のアクセス制御システム。 - 上記鍵生成装置は、更に、生成個別識別取得部を有し、
上記生成利用者識別受信部は、上記受信装置を用いて、上記利用者を個別に識別する個別識別データを含む利用者識別データを受信し、
上記生成個別識別取得部は、上記処理装置を用いて、上記生成利用者識別受信部が受信した利用者識別データに基づいて、上記個別識別データを取得し、
上記権限判定部は、上記処理装置を用いて、上記生成個別識別取得部が取得した個別識別データにより個別に識別される利用者に上記対象装置を操作する権限があるか否かを判定することを特徴とする請求項16または請求項17に記載のアクセス制御システム。 - 上記鍵生成装置は、更に、生成対象識別取得部を有し、
上記生成利用者識別受信部は、上記受信装置を用いて、上記対象装置を識別する対象識別データを含む利用者識別データを受信し、
上記生成対象識別取得部は、上記処理装置を用いて、上記生成利用者識別受信部が受信した利用者識別データに基づいて、上記対象識別データを取得し、
上記権限判定部は、上記処理装置を用いて、上記生成対象識別取得部が取得した対象識別データにより識別される対象装置を操作する権限が上記利用者にあるか否かを判定することを特徴とする請求項16〜請求項18のいずれかに記載のアクセス制御システム。 - データを処理する処理装置と、データを送信する送信装置と、データを受信する受信装置とを有するコンピュータを、請求項1〜請求項11のいずれかに記載の権限検証装置として機能させることを特徴とするコンピュータプログラム。
- データを処理する処理装置と、データを送信する送信装置と、データを受信する受信装置とを有するコンピュータを、請求項12に記載の実行装置として機能させることを特徴とするコンピュータプログラム。
- データを処理する処理装置と、データを送信する送信装置と、データを受信する受信装置とを有するコンピュータを、請求項13または請求項14に記載の利用者端末装置とし
て機能させることを特徴とするコンピュータプログラム。 - データを処理する処理装置と、データを送信する送信装置と、データを受信する受信装置とを有する複数のコンピュータを、請求項15から請求項19のいずれかに記載のアクセス制御システムとして機能させることを特徴とするコンピュータプログラム。
- データを処理する処理装置と、データを送信する送信装置と、データを受信する受信装置とを有する権限検証装置が、利用者が対象装置を操作する権限を有するか否かを検証する権限検証方法において、
上記処理装置が、利用者を識別する利用者識別データを取得し、
上記処理装置が、暗号化鍵と上記暗号化鍵に対応する復号鍵とを生成し、
上記処理装置が、IDベース暗号方式により、取得した利用者識別データを使用して、生成した暗号化鍵を暗号化して、暗号化通信鍵とし、
上記送信装置が、暗号化した暗号化通信鍵を送信し、
上記受信装置が、上記対象装置に対する操作を表わす操作要求メッセージを暗号化した暗号化操作要求を受信し、
上記処理装置が、生成した復号鍵を使用して、受信した暗号化操作要求を復号して、復号操作要求とし、
上記処理装置が、復号した復号操作要求が正しく復号されているか否かを判定し、正しく復号されていると判定した場合に、操作権限ありと判定し、
上記処理装置が、操作権限ありと判定した場合に、復号した復号操作要求を、操作要求メッセージとして上記対象装置に対して通知することを特徴とする権限検証方法。 - データを処理する処理装置と、データを受信する受信装置と、データを送信する送信装置とを有する利用者端末装置が、利用者が対象装置を操作する権限を有するか否かを検証する権限検証装置に対して、上記利用者による上記対象装置に対する操作要求を通知する操作要求通知方法において、
上記処理装置が、利用者を識別する利用者識別データを取得し、
上記処理装置が、IDベース暗号方式において、取得した利用者識別データに対応する秘密鍵を取得し、
上記受信装置が、暗号化に使用する暗号化鍵をIDベース暗号方式により暗号化した暗号化通信鍵を、上記権限検証装置から受信し、
上記処理装置が、IDベース暗号方式により、取得した秘密鍵を使用して、受信した暗号化通信鍵を復号して、復号通信鍵とし、
上記処理装置が、復号した復号通信鍵を使用して、上記利用者による上記対象装置に対する操作を表わす操作要求メッセージを暗号化して、暗号化操作要求とし、
上記送信装置が、暗号化した暗号化操作要求を、上記権限検証装置に対して送信することを特徴とする操作要求通知方法。 - 権限検証装置と、利用者端末装置とを有するアクセス制御システムが、利用者による対象装置の操作を制御するアクセス制御方法において、
上記権限検証装置が、利用者を識別する利用者識別データを取得し、
上記権限検証装置が、暗号化鍵と上記暗号化鍵に対応する復号鍵とを生成し、
上記権限検証装置が、IDベース暗号方式により、取得した利用者識別データを使用して、生成した暗号化鍵を暗号化して、暗号化通信鍵とし、
上記権限検証装置が、暗号化した暗号化通信鍵を送信し、
上記利用者端末装置が、上記利用者識別データを取得し、
上記利用者端末装置が、IDベース暗号方式において、取得した利用者識別データに対応する秘密鍵を取得し、
上記利用者端末装置が、上記権限検証装置が送信した暗号化通信鍵を受信し、
上記利用者端末装置が、IDベース暗号方式により、取得した秘密鍵を使用して、受信した暗号化通信鍵を復号して、復号通信鍵とし、
上記利用者端末装置が、復号した復号通信鍵を使用して、上記利用者による対象装置に対する操作を表わす操作要求メッセージを暗号化して、暗号化操作要求とし、
上記利用者端末装置が、暗号化した暗号化操作要求を、上記権限検証装置に対して送信し、
上記権限検証装置が、上記利用者端末装置が送信した暗号化操作要求を受信し、
上記権限検証装置が、生成した復号鍵を使用して、受信した暗号化操作要求を復号して、復号操作要求とし、
上記権限検証装置が、復号した復号操作要求が正しく復号されているか否かを判定し、正しく復号されていると判定した場合に、操作権限ありと判定し、
上記権限検証装置が、操作権限ありと判定した場合に、復号した復号操作要求を、操作要求メッセージとして上記対象装置に対して通知することを特徴とするアクセス制御方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008172399A JP5403955B2 (ja) | 2008-07-01 | 2008-07-01 | 権限検証装置及び実行装置及び利用者端末装置及びアクセス制御システム及びコンピュータプログラム及び権限検証方法及び操作要求通知方法及びアクセス制御方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008172399A JP5403955B2 (ja) | 2008-07-01 | 2008-07-01 | 権限検証装置及び実行装置及び利用者端末装置及びアクセス制御システム及びコンピュータプログラム及び権限検証方法及び操作要求通知方法及びアクセス制御方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2010016465A JP2010016465A (ja) | 2010-01-21 |
JP5403955B2 true JP5403955B2 (ja) | 2014-01-29 |
Family
ID=41702178
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2008172399A Expired - Fee Related JP5403955B2 (ja) | 2008-07-01 | 2008-07-01 | 権限検証装置及び実行装置及び利用者端末装置及びアクセス制御システム及びコンピュータプログラム及び権限検証方法及び操作要求通知方法及びアクセス制御方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5403955B2 (ja) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101234784B1 (ko) * | 2011-05-30 | 2013-02-20 | 삼성에스디에스 주식회사 | 아이디 기반 암호화 방법 및 그 장치 |
DE102017204181A1 (de) * | 2017-03-14 | 2018-09-20 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Sender zum Emittieren von Signalen und Empfänger zum Empfangen von Signalen |
JP7115556B2 (ja) * | 2018-10-19 | 2022-08-09 | 日本電信電話株式会社 | 認証認可システム及び認証認可方法 |
US11576037B2 (en) * | 2019-10-18 | 2023-02-07 | Huawei Technologies Co., Ltd. | Issuing offline PKI certificates in distributed V2X network |
CN114124395B (zh) * | 2020-08-31 | 2024-04-12 | 北京书生网络技术有限公司 | 密钥管理方法及装置 |
CN113489710B (zh) * | 2021-06-30 | 2023-03-24 | 厦门熵基科技有限公司 | 一种文件共享方法、装置、设备和存储介质 |
CN115277053B (zh) * | 2022-06-08 | 2024-04-23 | 深圳蜂鸟创新科技服务有限公司 | 基于SaaS和Pass平台的数据处理方法及系统 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7266847B2 (en) * | 2003-09-25 | 2007-09-04 | Voltage Security, Inc. | Secure message system with remote decryption service |
JP4869824B2 (ja) * | 2006-08-08 | 2012-02-08 | 三菱電機株式会社 | 受信者装置及び送信者装置及び暗号通信システム及びプログラム |
-
2008
- 2008-07-01 JP JP2008172399A patent/JP5403955B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2010016465A (ja) | 2010-01-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4219965B2 (ja) | ワンタイムidによる認証 | |
JP5403955B2 (ja) | 権限検証装置及び実行装置及び利用者端末装置及びアクセス制御システム及びコンピュータプログラム及び権限検証方法及び操作要求通知方法及びアクセス制御方法 | |
US10708047B2 (en) | Computer-readable recording medium storing update program and update method, and computer-readable recording medium storing management program and management method | |
JP4973899B2 (ja) | 送信装置、送信方法、受信装置、受信方法、記録媒体、および通信システム | |
KR101452708B1 (ko) | Ce 장치 관리 서버, ce 장치 관리 서버를 이용한drm 키 발급 방법, 및 그 방법을 실행하기 위한프로그램 기록매체 | |
KR101078546B1 (ko) | 범용 저장장치의 식별정보를 기반으로 하는 보안 데이터 파일 암호화 및 복호화 장치, 그를 이용한 전자 서명 시스템 | |
US8510844B2 (en) | Authorized content verification method, content transmission/reception system, transmitter, and receiver | |
KR20060045440A (ko) | 패스워드 보호 비밀 데이터의 노출 없이 통신 네트워크을통해 이 비밀 데이터를 복구하는 방법 및 시스템 | |
JP2011082662A (ja) | 通信装置及び情報処理方法及びプログラム | |
KR20080033373A (ko) | 취소 정보 관리 | |
JP2021090114A (ja) | 電子署名システム及び耐タンパ装置 | |
JP2009033402A (ja) | Idベース暗号システム及び送信端末装置及び配送サーバ装置及び受信端末装置 | |
JP3992396B2 (ja) | 電子文書管理装置、電子文書管理方法およびその方法をコンピュータに実行させるプログラムを記録したコンピュータ読み取り可能な記録媒体 | |
JPH05298174A (ja) | 遠隔ファイルアクセスシステム | |
JP2010081154A (ja) | 情報処理装置、プログラム、及び情報処理システム | |
JP6976405B2 (ja) | アクセス管理システム、及びそのプログラム | |
JP5494171B2 (ja) | ファイル管理システム、ストレージサーバ、クライアント、ファイル管理方法およびプログラム | |
JP3984570B2 (ja) | 署名/検証システムにおける鍵管理サーバおよび検証装置を制御するプログラム | |
JP2014022920A (ja) | 電子署名システム、電子署名方法および電子署名プログラム | |
JP5665592B2 (ja) | サーバ装置並びにコンピュータシステムとそのログイン方法 | |
JP2010028689A (ja) | 公開パラメータ提供サーバ、公開パラメータ提供方法、公開パラメータ提供プログラム、暗号化処理実行装置、暗号化処理実行方法、暗号化処理実行プログラム、署名処理実行装置、署名処理実行方法及び署名処理実行プログラム | |
US8307098B1 (en) | System, method, and program for managing a user key used to sign a message for a data processing system | |
KR100382880B1 (ko) | 일회성 암호화 방식을 이용한 인증 시스템 및 방법 | |
JP2010245712A (ja) | Id有効性管理装置及び通信装置及びid有効性管理方法及びデータ処理方法及びプログラム | |
JP2005020536A (ja) | 電子データ署名装置および署名装置用プログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20110511 |
|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20121207 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20130528 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20130627 |
|
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: 20131001 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20131029 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5403955 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
LAPS | Cancellation because of no payment of annual fees |