JP4794970B2 - 秘密情報の保護方法及び通信装置 - Google Patents
秘密情報の保護方法及び通信装置 Download PDFInfo
- Publication number
- JP4794970B2 JP4794970B2 JP2005288893A JP2005288893A JP4794970B2 JP 4794970 B2 JP4794970 B2 JP 4794970B2 JP 2005288893 A JP2005288893 A JP 2005288893A JP 2005288893 A JP2005288893 A JP 2005288893A JP 4794970 B2 JP4794970 B2 JP 4794970B2
- Authority
- JP
- Japan
- Prior art keywords
- information
- shared key
- generated
- data
- control unit
- 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
Links
- 238000000034 method Methods 0.000 title claims description 142
- 230000006854 communication Effects 0.000 title claims description 44
- 238000004891 communication Methods 0.000 title claims description 44
- 230000005540 biological transmission Effects 0.000 claims description 6
- 239000006185 dispersion Substances 0.000 claims description 2
- 230000007175 bidirectional communication Effects 0.000 claims 2
- 238000012545 processing Methods 0.000 description 25
- 238000012790 confirmation Methods 0.000 description 24
- 238000004590 computer program Methods 0.000 description 6
- 238000010586 diagram Methods 0.000 description 5
- 238000004364 calculation method Methods 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 230000000694 effects Effects 0.000 description 2
- 238000007796 conventional method Methods 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
Images
Description
(1)サーバ側に登録してあるサイトアクセス用パスワードに対してクライアント側からアクセスがあるたびに、サーバが異なるパスワード暗号用鍵を生成する。そして、このパスワード暗号用鍵でサイトアクセス用パスワードを暗号化してサーバ側に登録する。
(2)サーバが生成したパスワード暗号用鍵をクライアント側のICカードのようなセキュリティ媒体に登録する。
(3)サーバ側に登録したサイトアクセス用パスワードをユーザが利用する場合は、ユーザがクライアント側に登録されたパスワード暗号用鍵を利用し、クライアント端末とサーバとの間でセキュアチャネル、すなわち暗号通信によってセキュリティが確保された通信チャネルを確立する。このようなセキュアチャネルでは、パスワード暗号用鍵を用いてサーバ及びクライアント端末の双方が同一のセキュアチャネル用鍵を生成し、サーバとクライアント端末の双方が、このセキュアチャネル用鍵を共有する。
(4)セキュアチャネル用鍵を用いて、クライアント側に登録されたパスワード暗号用鍵、ユーザのログイン用のID及びパスワードを暗号化し、暗号データをクライアント端末からサーバに通知する。
(5)サーバは、クライアント端末から受信した暗号データをセキュアチャネル用鍵で復号し、そのユーザのログイン用のIDとパスワードでユーザの本人確認を行う。本人確認ができた場合、サーバは、暗号データを復号して得たパスワード暗号用鍵を用い、このパスワード暗号用鍵で暗号化されているサイトアクセス用パスワードを復号化して利用し、その結果をクライアント端末に通知する。
サーバとクライアント端末の間で用いるセキュアチャネル用鍵と、サーバがサイトアクセス用パスワードを暗号化するためのパスワード暗号用鍵との2つの鍵が必要であるが、これらの鍵を同一にすると、サーバ側も鍵を保持することになるため、例えばサーバ管理者がサーバ側の鍵を不正に利用して、サイトアクセス用パスワードを勝手に使用できるという不都合が生じる。サーバ側に設定されている鍵の不正利用を防止するために、例えば秘密分散法を利用し、サーバ側とクライアント側とで鍵を分散することも考えられるが、しかし、その場合でも鍵を利用する際には、分散された鍵をサーバ側に通知するための通信路に暗号化鍵を使用するため、根本的な問題解決にはならない。さらに、クライアント側のトークンに鍵そのものを設定することも考えられるが、そうすると、ICカード等の高価なセキュリティ媒体を用いなければならなくなる。
本発明は、例えばシングルサインオンで使用するパスワードや鍵等の秘密情報の保護を安全且つ確実ならしめる手法を提供することを、主たる課題とするものである。
本発明のある実施の態様では、前記第1装置が、前記第2装置を介した前記サイトへのアクセス権限情報を前記秘密情報として前記第2装置に伝達する。そして、前記第2装置が、前記アクセス権限情報を取得し、このアクセス権限情報をメモリ領域に登録することにより、このアクセス権限情報を伴う前記第1装置から前記サイトへのアクセスを可能にする。
本発明は、例えば図1に示されるパスワード認証鍵交換システムとしての実施が可能である。この実施の形態のパスワード認証鍵交換システムは、インターネット等で構成されるネットワーク10に接続されるサーバ20と、このネットワーク10を介してサーバ20に接続されるクライアント端末30と、サーバ20に接続されたサイト40を含んで構成される。サイトは、ひとまとまりに公開可能なWebページ群を保有する情報処理システムであり、実質的にはサーバである。なお、図1では、便宜上1つのサイト40のみが示されているが、サイトの数はいくつであってもよい。
サイト40は、ネットワーク10を介して通信を行うためのI/F41と、サイト運営に必要な処理を実行するサイト制御部42と、サイトDB43を備えている。サイト制御部42もまた、コンピュータプログラムを読み込んで実行する一種のコンピュータである。
サーバ20とクライアント端末30との間における鍵交換には、後述するパスワード認証鍵交換プロトコルを利用する。このパスワード認証鍵交換プロトコルで共有した鍵(共有鍵)を、サイトアクセス用パスワードをクライアント端末30からサーバ20に通知する際の暗号化及び復号化に利用するとともに、サーバ20側におけるサイトアクセス用パスワードの暗号化にも利用する。
また、サーバ20は、次回用の共有鍵でサイトアクセス用パスワードを暗号化し、これを保持する。この暗号化が済むと、サーバ20は、次回用の共有鍵を削除する。
クライアント端末30と、サーバ20とが、二分割した乱数の一方と他方をそれぞれ保持し、次回の共有鍵を生成する際に用いるため、次回の処理においても、セキュアチャネルを確立する時の鍵は同一の鍵となり、この共有鍵を用いてサイト用アクセスパスワードを暗号化する。
次に、この実施の形態に係るパスワード認証鍵交換システムにおいて、サーバ20と、クライアント端末30とが、ネットワーク10を通じて、実際には複数存在するサイト40にシングルサインオンでアクセスするときの動作例を示す。
この通信は、サイトアクセス用パスワードの登録処理と、サイトアクセス用パスワードの利用処理とに大別される。
図2ないし図4は、パスワード認証鍵交換プロトコルを用いたサイトアクセス用パスワード登録処理の手順を時系列的に示している。このサイトアクセス用パスワードの登録処理に際しては、ユーザのユーザIDとパスワードπが対応付けられて事前にサーバ20のサーバDB23に登録されているものとする。
また、図5は、サーバ20のサーバDB23内と、クライアント端末30のメモリ内におけるデータ構造を示す。
なお、図2ないし図4における処理(1)〜(26)は、具体的には、図1に示す機能ブロックにおいて行われる。
(3)クライアント制御部32は、ユーザがアクセスを希望するサイト情報と、ユーザIDとをサーバ制御部22に通知する。
(5)サーバ制御部22は、(4)の処理でユーザIDがサーバDB23に登録されていることを確認した場合には、共有鍵生成用の乱数S1を生成する。また、このとき、サーバ制御部22は、(3)の処理で通知を受けたサイト情報をユーザIDと対応付けてサーバDB23に登録する。
(6)サーバ制御部22は、(4)の処理でユーザIDがサーバDB23に登録されていないことを確認した場合には、クライアント端末30にエラーを通知する。
(8)クライアント制御部32は、(7)の処理で生成したクライアントデータWaをサーバ制御部22に通知する。
g1 = H(π)^k mod q
Wa = g1^C1 mod q
(10) サーバ制御部22は、(9)の処理でクライアントデータWaが正しく計算されていることを確認した場合には、(4)の処理でクライアント端末30から受信したユーザIDに対応するパスワードπをサーバDB23から読み出し、そのハッシュ値H(π)と、(5)の処理で生成した乱数S1とを用いて、サーバデータWbを生成する。さらに、サーバ制御部22は、このサーバデータWbをクライアント制御部32に通知する。
g1 = H(π)^k mod q
Wb = g1^S1 mod q
(12)サーバ制御部22は、(9)の処理で正確性を確認したクライアントデータWaと、(5)の処理で生成した乱数S1を用いて鍵交換共有データKbを生成する。
この鍵交換共有データKbのハッシュ値が、共有鍵SK1となる。つまり、サーバ制御部22で生成する共有鍵SK1は、以下のようになる。Hはハッシュ関数である。
SK1=H(Kb||Pi)
(14)クライアント制御部32は、(13)の処理で確認データが正しく計算されていないことを確認した場合は、サーバ制御部22にエラーを通知し、(2)の処理で生成した乱数C1と、サーバ制御部22から通知されたサーバデータWbとを消去する。
(15)クライアント制御部32は、(12)の処理でサーバ制御部22から通知されたサーバデータWbと、(2)の処理で生成した乱数C1とを用いて鍵交換共有データKaを生成する。この鍵交換共有データKaのハッシュ値が、共有鍵となる。つまり、クライアント制御部32で生成する共有鍵SK1は、以下のようになる。
SK1=H(Ka||Pi)
任意の素数a(1<=a<=q-1)に対してa = g^b mod qとなる素数bが存在する(qは、この条件を満たす任意の素数)。
Ka= b^C1 mod q
=( g1^S1 mod q)^C1 mod q
=(g1^S1)^C1 mod q = g1^S1・C1 mod q
Kb= a^C1 mod q= g1^C1 mod p)^S1 mod q
=(g1^C1)^S1 mod q
= g1^C1・S1 mod q
である。この通り、KaとKbは一致する。
(18)サーバ制御部22は、(17)の処理において、サーバ側の確認データとクライアント側の確認データとが不一致であることを確認した場合には、エラーであることをクライアント制御部32に通知するとともに、乱数S1と確認データを消去する。
(21)サーバ制御部22は、(20)の処理で取得したサイトアクセス用パスワードを用いて、そのサイト40にログインし、クライアント制御部32から通知を受けたサイトアクセス用パスワードが正しいか否かを確認する。
(22)サーバ制御部22は、(21)の処理において、サイトアクセス用パスワードに対応するサイト40に正しくログインできなかった場合は、クライアント制御部32にエラーであることを通知し、サイトアクセス用パスワードの再入力を求める。
(23)サーバ制御部22は、サイトアクセス用パスワードに対応するサイト40に正しくログインできた場合は、乱数(C2*S2)を生成する。サーバ制御部22は、乱数(C2*S2)を任意に二分割し、その一方の乱数S2をサーバDB23に登録し、他方の乱数C2を(12)の処理で生成した共有鍵SK1で暗号化して、セキュアチャネルを通じて、クライアント制御部32に通知する。
(25)クライアント制御部32は、トークンに乱数C2を設定し、サーバ制御部22に通知する。クライアント制御部32は、乱数C2をサーバ制御部22に通知した後に、トークンを返却するため乱数C2をトークンから外してクライアントメモリ33に登録する。なお、トークン利用者が複数のクライアント端末を利用する場合には、トークンのみに乱数を保持し、クライアントメモリ33には登録しなくても良い。
このときのクライアントメモリ33内のデータ構造は、図5(b)に示す通りである。
図6ないし図9は、サイトアクセス用パスワード利用処理のための手順説明図である。図6ないし図9における処理(31)〜(58)は、具体的には、図1に示す機能ブロックにおいて行われる。このサイトアクセス用パスワードの利用処理は、基本的にはサイトアクセス用パスワードの登録処理に準ずる処理である。また、サーバ制御部22と、クライアント制御部32との間における通信は、すべてI/F21、ネットワーク10及びI/F31を通じて行われるため、以下では、この記載を省略する。
なお、サイトアクセス用パスワード利用処理は、サーバ20とクライアント端末30とよって繰り返し行われる処理であるため、ここでは、説明を一般化するために、サイトアクセス用パスワード登録処理における乱数C1、乱数S1、クライアントデータWa、サーバデータWb、共有鍵鍵交換共有データKa、Kb、及び、共有鍵SK1に相当する値を、それぞれ、乱数Cx、乱数Sx、クライアントデータWax、サーバデータWbx、共有鍵鍵交換共有データKax、Kbx、及び、共有鍵SKxとする。xは世代数を表し、例えば、乱数S(x+1)は、乱数Sxを生成した処理の次回処理で生成された一世代後の乱数であることを意味する。
(32)クライアント制御部32は、クライアントメモリ33内に登録されている乱数Cxをトークンに設定する。なお、事前にトークンに乱数Cxが登録されている場合は、省略しても良い。
(33)クライアント制御部32は、ユーザがアクセスを希望するサイト情報と、ユーザIDとをサーバ制御部22に通知する。
(35)サーバ制御部22は、(34)の処理でユーザIDがサーバDB23に登録されていることを確認した場合には、このユーザIDに対応する乱数SxをサーバDB23から読み出す。
(36)サーバ制御部22は、(34)の処理でユーザIDがサーバDB23に登録されていないことを確認した場合には、クライアント端末30にエラーを通知する。
(38)クライアント制御部32は、(37)の処理で生成したクライアントデータWaxをサーバ制御部22に通知する。
g1’ = H(π)^k mod q
Wax = g1’^Cx mod q
(40) サーバ制御部22は、(39)の処理でクライアントデータWaxが正しく計算されていることを確認した場合には、(34)の処理でクライアント端末30から受信したユーザIDに対応するパスワードπをサーバDB23から読み出し、このパスワードπのハッシュ値H(π)と、(35)の処理で用いた乱数Sxとを用いて、サーバデータWbxを生成する。さらに、サーバ制御部22は、このサーバデータWbxをクライアント制御部32に通知する。
g1’ = H(π)^k mod q
Wbx = g1’^Sx mod q
(42)サーバ制御部22は、(39)の処理で正しく計算されていることを確認したクライアントデータWaxと、(35)の処理で読み出した乱数Sxを用いて鍵交換共有データKbxを生成する。この鍵交換共有データKbxのハッシュ値が、共有鍵となる。つまり、サーバ制御部22で生成する共有鍵SKxは、以下のようになる。
SKx=Hash(Kbx||Pi)
(44)クライアント制御部32は、(43)の処理で確認データが正しく計算されていないことを確認した場合は、サーバ制御部22にエラーを通知し、(35)の処理で読み出した乱数Sxと、サーバ制御部22から通知されたサーバデータWbxとを消去する。
(45)クライアント制御部32は、(42)の処理でサーバ制御部22から通知されたサーバデータWbxと、(35)の処理で読み出した乱数Sxを用いて鍵交換共有データKaxを生成する。この鍵交換共有データKaxのハッシュ値が、共有鍵となる。つまり、クライアント制御部32で生成する共有鍵SKxは、以下のようになる。
SKx=H(Kax||Pi)
(46)クライアント制御部32は、鍵交換共有データKax、クライアントデータWax、サーバデータWbx、及び、その他必要な情報を連結した確認データ(H(|パラメータ|Wax|Wbx|Kax|g))をサーバ制御部22に通知する。
(48)サーバ制御部22は、(47)の処理において、サーバ側の確認データと、クライアント側の確認データの不一致を確認した場合には、エラーであることをクライアント制御部32に通知するとともに、乱数Cxと確認データを消去する。
(50)サーバ制御部22は、ユーザIDに対応するサイト情報をサーバDB23から読み出し、サイト40に接続するために使用する接続データ(アドレス等)をクライアント制御部32に通知する。
(52)クライアント制御部32は、サイト40へのアクセスを終了するかを繰り返し確認する。この処理は、ユーザがクライアント端末30に終了する旨を入力するまでクライアント制御部32によって繰り返し実行される。
(53)ユーザによってクライアント端末30にサイト40へのアクセスを終了する旨が入力されると、クライアント制御部32は、サーバ制御部22にサイトをログオフする旨を通知する。
(54)サーバ制御部22は、サイト40からログオフする。
(56)クライアント制御部32は、共有鍵SKxを用いて、サーバ制御部22から受け取った暗号データを復号化し、二分割された乱数の一方の乱数C(x+1)を得る。クライアント制御部32は、この乱数C(x+1)をトークンに設定する。
(58)サーバ制御部22は、クライアント制御32から乱数C(x+1)をトークンに設定した旨の通知を受けると、次回用の乱数C(x+1)*S(x+1)を用いて共有鍵SK(x+1)を生成する。また、サーバ制御部22は、サイトアクセス用パスワードを共有鍵SK(x+1)で暗号化し、乱数S(x+1)とともにサーバDB23に登録する。さらに、サーバ制御部22は、生成した次回用の共有鍵SK(x+1)を削除する。
次に、本発明の第2実施形態を説明する。第2実施形態では、図1に示したサイト40において、秘密分散法を用いて、サイトアクセス用パスワードとシェアから2つの分散データを生成する。クライアント端末30は、2つの分散データを復元するためのシェアを保持し、シェアのハッシュ値をクライアント端末30が利用する乱数にする。サーバ20は、分散データの一方を共有鍵で暗号化して保持し、他方の分散データを乱数として利用する。
サーバ20とクライアント端末30との間で形成するセキュアチャネルで用いる暗号化のための共有鍵は、サーバ20が有する乱数と、クライアント端末30が有する乱数とを利用して生成した共有鍵となる。
次に、第2実施形態において、サーバ20と、クライアント端末30とが、ネットワーク10を通じて通信を行い、実際には複数存在するサイト40にシングルサインオンでアクセスするときの動作例を示す。この通信は、サイトアクセス用パスワードの登録処理と、サイトアクセス用パスワードの利用処理とに大別される。
図10〜図11は、パスワード認証鍵交換プロトコルを用いたサイトアクセス用パスワード登録処理の手順説明図である。このサイトアクセス用パスワードの登録処理に際しては、ユーザのユーザIDとパスワードφが対応付けられて事前にサーバ20のサーバDB23に登録されているものとする。また、サーバ制御部22、クライアント制御部32及びサイト制御部42の間における通信は、すべてI/F21、ネットワーク10、I/F31及びI/F41を通じて行われるため、以下では、この記載を省略する。また、図12は、サーバ20のサーバDB23内と、クライアント端末30のメモリ内におけるデータ構造説明図である。
なお、図10及び図11における処理(101)〜(118)は、具体的には、図1に示す機能ブロックにおいて行われる。
(102)クライアント制御部32は、ユーザIDに対応するクライアントメモリ33内のデータを読み込み、サイトアクセス用パスワードをサイト40で登録済みかを確認する。具体的には、ユーザIDに対応するクライアントメモリ33内のデータにシェアが存在するか否かを確認する。
(103)クライアント制御部32は、(102)の処理でユーザIDに対応するクライアントメモリ33内のデータにシェアが存在しないことを確認した場合は、I/F31及びネットワーク10を通じ、サーバ20経由でそのユーザが登録を希望するサイトアクセス用パスワードをサイト40に通知する。
(105)サイト制御部42は、サーバ20のサーバDB23にサイトアクセス用パスワードの分散データを設定するために必要な設定コードと、クライアント端末30が利用するトークンに設定させるシェアとを任意に生成し、ネットワーク10を通じてクライアント端末30のクライアント制御部32に通知する。
(107)クライアント制御部32は、サーバアクセス用パスワードφを次式に代入して、g2値を生成する。
g2=H(φ)^k mod q
Wa’=g2^H(シェア) mod q
(110)サーバ制御部22とクライアント制御部32との間で共有鍵を生成する。すなわち、(108)で生成したクライアントデータWa’と乱数とに基づいて生成されるサーバデータWb’とを用いて、実施の形態1における(9)から(18)の処理と同様の処理を実行することにより、サーバ制御部22及びクライアント制御部32は、共有鍵SK1’をそれぞれ生成する。
この結果、サーバ20とクライアント端末30は、共有鍵SK1’を共有する。
(112)サーバ制御部22は、共有鍵SK1’を用いて、暗号化された設定コードを復号化するとともに、後述する分散データ1を暗号化するための次回処理用の共有鍵を生成する際に利用する共有鍵生成パラメータPi’と、設定コードとを、サイト制御部42に通知する。
(114)サイト制御部42は、サーバ制御部22から通知された設定コードが、(105)の処理で生成した設定コードと同一でないことを確認した場合は、ネットワーク10を通じて、クライアント制御部32にエラーであることを通知する。
(115)サイト制御部42は、サーバ制御部22から通知された設定コードが、(105)の処理で生成した設定コードと同一であることを確認した場合は、(105)の処理で生成した設定コードをサイトDB43から削除し、サイトDB43内において、その設定コードに対応するサイトアクセス用パスワードとシェアを読み出し、このサイトアクセス用パスワードとシェアとから分散データ1及び分散データ2を生成する。
分散データ2=p+x*a+x*b
分散データ1=p+y*a+y*b
ここで、P=サイト用パスワード、[a,b]はシェア,[x,y]は任意の乱数である。
なお、分散の方法は、本方式に限定されるものではない。また、シェアのサイズは、ユーザの利用頻度によって変更しても良い。
Z = Wa’^分散データ2 mod q
SKx’=Hash(Z||Pi’)
(118)サーバ制御部22は、サイト制御部42から通知された、暗号化された分散データ1と、暗号化されていない分散データ2とをユーザIDと対応付けてサーバDB23に登録する。このときのサーバDB23内のデータ構造は、図12(a)に示す通りである。
図13ないし図16は、サイトアクセス用パスワード利用処理の手順説明図である。また、サーバ制御部22、クライアント制御部32及びサイト制御部42の間における通信は、すべてI/F21、ネットワーク10、I/F31及びI/F41を通じて行われるため、以下では、この記載を省略する。なお、図13ないし図16における処理(131)〜(158)は、具体的には、図1に示す機能ブロックにおいて行われる。
このサイトアクセス用パスワードの利用処理は、基本的にはサイトアクセス用パスワードの登録処理に準ずる処理である。
(132)クライアント制御部32は、クライアントメモリ33内に登録されているシェアのハッシュ値をトークンに設定する。なお、事前にトークンにシェアのハッシュ値が設定されている場合は省略しても良い。
(133)クライアント制御部32は、ユーザがアクセスを希望するサイト情報と、ユーザIDとをサーバ制御部22に通知する。
(135)サーバ制御部22は、(134)の処理でユーザIDがサーバDB23に登録されていることを確認した場合には、このユーザIDに対応する分散データ2をサーバDB23から読み出す。
(136)サーバ制御部22は、(134)の処理でユーザIDがサーバDB23に登録されていないことを確認した場合には、クライアント端末30にエラーを通知する。
(138)クライアント制御部32は、(137)の処理で生成したクライアントデータWax’をサーバ制御部22に通知する。
パスワードφのハッシュ値H(φ)を用いて、下記式によりg2を求める。
g2=H(φ)^k mod q
Wax’ = g2^H(シェア) mod q
(140)サーバ制御部22は、(139)の処理でクライアントデータWax’が正しく計算されていることを確認した場合には、(134)の処理でクライアント端末30から受信したユーザIDに対応するパスワードφをサーバDB23から読み出し、このパスワードφのハッシュ値Hash(φ)と、(135)の処理で用いた分散データ2とを用いて、サーバデータWbx’を生成する。さらに、サーバ制御部22は、このサーバデータWbx’をクライアント制御部32に通知する。
g2=H(φ)^k mod q
Wbx’ = g2^分散データ2 mod q
(142)サーバ制御部22は、(139)の処理で正確性を確認したクライアントデータWax’と、(135)の処理で読み出した分散データ2を用いて鍵交換共有データKbx’を生成する。この鍵交換共有データKbxのハッシュ値が、共有鍵となる。つまり、サーバ制御部22で生成する共有鍵SKx’は、以下のようになる。
SKx’=H(Kbx’||Pi)
(144)クライアント制御部32は、(143)の処理で確認データが正しく計算されていないことを確認した場合は、サーバ制御部22にエラーを通知し、(135)の処理で読み出した分散データ2と、サーバ制御部22から通知されたサーバデータWbx’とを消去する。
(145)クライアント制御部32は、(142)の処理でサーバ制御部22から通知されたサーバデータWbx’と、(135)の処理で読み出した分散データ2を用いて鍵交換共有データKax’を生成する。この鍵交換共有データKax’のハッシュ値が共有鍵となる。つまり、クライアント制御部32で生成する共有鍵SKx’は、以下のようになる。
SKx’=H(Kax’||Pi)
(146)クライアント制御部32は、鍵交換共有データKax、クライアントデータWax’、サーバデータWbx’、及び、その他必要な情報を連結した確認データ(H(|パラメータ|Wax’|Wbx’|Kax|g))をサーバ制御部22に通知する。
(148)サーバ制御部22は、(147)の処理において、サーバ側の確認データと、クライアント側の確認データの不一致を確認した場合には、エラーであることをクライアント制御部32に通知するとともに、分散データ2と確認データを消去する。
(150)サーバ制御部22は、分散データ1と分散データ2とをクライアント制御部32に通知する。
(152)クライアント制御部32は、サイト40へのアクセスを終了するかを繰り返し確認する。この処理は、ユーザがクライアント端末30に終了する旨を入力するまで繰り返し実行される。
(153)ユーザによってクライアント端末30にサイト40へのアクセスを終了する旨が入力されると、クライアント制御部32は、サーバ制御部22にサイトをログオフする旨を通知する。
(154)サーバ制御部22は、サイト40からログオフする。
(156)クライアント制御部32は、共有鍵SK(x+1)’を用いて、サーバ制御部22から受け取った暗号データを復号化し、次回処理用のシェアを得る。クライアント制御部32は、この次回処理用のシェアのハッシュ値をトークンに設定する。
(158)サーバ制御部22は、クライアント制御32から次回処理用のシェアをトークンに設定した旨の通知を受けると、次回用のシェアのハッシュ値と次回用の分散データ2を用いて共有鍵SK(x+1)’を生成する。さらに、サーバ制御部22は、分散データ1を共有鍵SK(x+1)’で暗号化し、暗号化していない分散データ2とともにサーバDB23に登録する。また、サーバ制御部22は、生成した次回用の共有鍵SK(x+1)’を削除する。
Claims (6)
- 通信路を介して接続された第1装置と第2装置の双方が、相手側で生成された情報(Wa/Wb)と自己側で生成した情報(C1/S1)とに基づいて前記通信路をセキュアチャネル化して情報交換を行うための共有鍵(SK1)を生成する段階と、
前記第1装置が、前記第2装置への登録を希望する秘密情報を前記共有鍵(SK1)で暗号化し、この暗号データを前記第2装置に伝達する段階と、
前記第2装置が、前記第1装置より受け取った前記暗号データを前記共有鍵(SK1)で復号して前記秘密情報を得た後は次回アクセス用の新規情報(C2*S2)を生成し、この新規情報(C2*S2)の一部(S2)を保存し、残部の新規情報(C2)を前記共有鍵(SK1)で暗号化して前記第1装置(クライアント端末)へ伝達する段階と、
前記第1装置が、前記第2装置から受け取った暗号データを前記共有鍵(SK1)で復号して前記残部の新規情報(C2)を得、この残部の新規情報(C2)を次回アクセス用の前記自己側で生成した情報として保存する段階と、
前記第2装置が、前記次回アクセス用の新規情報(C2*S2)に基づいて新たな共有鍵(SK2)を生成するとともに、前記共有鍵(SK1)で復号した秘密情報を前記新たな共有鍵(SK2)で暗号化し、前記一部の新規情報(S2)とともに、次回アクセス用の前記自己側で生成した情報として保存する段階と、
前記第1装置が所定のサイトにアクセスする際に、前記第1装置と前記第2装置の双方が、相手側で生成された情報(Wax/Wbx)と前記自己側で生成した情報として保存している情報(Cx/Sx)とに基づいて前記通信路をセキュアチャネル化して情報交換を行うための共有鍵(SKx)を生成する段階と、
前記第2装置が、生成した共有鍵(SKx)を用いて前記秘密情報を復号し、復号した秘密情報を伴う前記第1装置から前記サイトへのアクセスを可能にする段階と、
前記第2装置が、次回アクセス用の新規情報(C(x+1)*S(x+1))を生成し、この新規情報(C(x+1)*S(x+1))の一部(S(x+1))を保存し、残部の新規情報(C(x+1))を前記共有鍵(SKx)で暗号化した第1暗号データを前記第1装置へ伝達する段階と、
前記第1装置が、前記第2装置から受け取った前記第1暗号データを前記共有鍵(SKx)で復号して前記残部の新規情報(C(x+1))を得、この残部の新規情報(C(x+1))を次回アクセス用の前記自己側で生成した情報として保存する段階と、
前記第2装置が、前記次回アクセス用の新規情報(C(x+1)*S(x+1))に基づいて新たな共有鍵(SK(x+1))を生成するとともに、前記復号した秘密情報を前記生成した共有鍵(SK(x+1))で暗号化して保存し、前記新規情報の一部(S(x+1))を次回アクセス用の前記自己側で生成した情報として保存する段階とを有する、
暗号化された秘密情報の保護方法。 - 前記共有鍵(SK1)を生成する段階は、
前記第1装置が、自己が生成した乱数(C1)に基づいて第1データ(Wa)を生成し、この第1データ(Wa)を前記第2装置に伝達する段階と、
前記第2装置が、前記第1装置より受け取った第1データ(Wa)と自己が生成した乱数(S1)とに基づいて第2データ(Wb)を生成し、この第2データ(Wb)を前記第1装置に伝達するとともに、前記第1データ(Wa)と前記自己が生成した乱数(S1)とに基づいてそのハッシュ値が共有鍵(SK1)となる共有データ(Kb)を生成する段階と、
前記第1装置が、前記第2装置より受け取った第2データ(Wb)と自己が生成した前記乱数(C1)とに基づいてそのハッシュ値が共有鍵(SK1)となる共有データ(Ka)を生成する段階とを含み、
これらの共有データの各々から前記共有鍵(SK1)を導出する、
請求項1記載の保護方法。 - 前記秘密情報を2つの分散データに分け、
前記第1装置が、前記2つの分散データを復元するためのシェアを保持するとともに、このシェアのハッシュ値を自己側で生成する情報(C1)とし、
前記第2装置が、前記2つの分散データうち前記サイトにおいて前記共有鍵(SK1)で暗号化された一方の分散データを保持し、他方の分散データを前記自己側で生成する情報(S1)とすることにより、前記第2装置が、前記2つの分散データと前記シェアとから前記秘密情報を復号可能にする、
請求項2記載の保護方法。 - 前記第1装置が、前記第2装置を介した前記サイトへのアクセス権限情報を前記秘密情報として前記第2装置に伝達し、
前記第2装置が、前記アクセス権限情報を取得し、このアクセス権限情報をメモリ領域に登録することにより、このアクセス権限情報を伴う前記第1装置から前記サイトへのアクセスを可能にする、
請求項1又は2記載の保護方法。 - 通信路を介して接続された第2装置との間で双方向の通信を行う通信装置であって、
第2装置で生成された情報(Wb)と自己側で生成した情報(C1)とに基づいて前記通信路をセキュアチャネル化して情報交換を行うための共有鍵(SK1)を生成する第1鍵情報生成手段と、
前記第2装置への登録を希望する秘密情報を前記共有鍵(SK1)で暗号化し、この第1暗号データを前記第2装置に伝達する第1伝達手段と、
前記第2装置において前記共有鍵(SK1)で復号された前記秘密情報を新たな共有鍵(SK2)で暗号化して保存し、前記新たな共有鍵(SK2)を生成するときに用いた次回アクセス用の新規情報(C2*S2)の一部(C2)を前記共有鍵(SK1)で暗号化したデータを前記第2装置から受け取る第1受取手段と、
前記第2装置から受け取った第1暗号データを前記共有鍵(SK1)で復号して前記一部の新規情報(C2)を得、この一部の新規情報(C2)を次回アクセス用の前記自己側で生成した情報として保存する第1保存手段と、
所定のサイトにアクセスする際に、前記第2装置で生成された情報(Wbx)と前記自己側で生成した情報として保存している情報(Cx)とに基づいて前記通信路をセキュアチャネル化して情報交換を行うための共有鍵(SKx)を生成する第2鍵情報生成手段と、
前記第2装置を介して、前記第2装置において生成された前記共有鍵(SKx)を用いて復号された前記秘密情報を伴って前記サイトへアクセスするアクセス手段と、
前記第2装置において、前記秘密情報を新たな共有鍵(SK(x+1))で暗号化して保存する際に、前記新たな共有鍵(SK(x+1))を生成する際に用いた次回アクセス用の新規情報(C(x+1)*S(x+1))の一部(C(x+1))が前記共有鍵(SKx)で暗合された第2暗号データを受け取る第2受取手段と、
前記第2装置から受け取った第2暗号データを前記共有鍵(SKx)で復号して前記一部の新規情報(C(x+1))を得、この一部の新規情報(C(x+1))を次回アクセス用の前記自己側で生成した情報として保存する第2保存手段とを有する、
通信装置。 - 通信路を介して接続された第1装置との間で双方向の通信を行う通信装置であって、
前記第1装置で生成された情報(Wa)と自己側で生成した情報(S1)とに基づいて前記通信路をセキュアチャネル化して情報交換を行うための共有鍵(SK1)を生成する第1鍵情報生成手段と、
自装置への登録を希望する秘密情報であって、前記共有鍵(SK1)で暗号化された第1暗号データを前記第1装置から受信する受信手段と、
前記第1装置から受け取った前記第1暗号データを前記共有鍵(SK1)で復号して前記秘密情報を得た後は次回アクセス用の新規情報(C2*S2)を生成し、この新規情報(C2*S2)の一部(S2)を保存し、残部の新規情報(C2)を前記共有鍵(SK1)で暗号化して前記第1装置(クライアント端末)へ伝達する第1伝達手段と、
前記次回アクセス用の新規情報(C2*S2)に基づいて新たな共有鍵(SK2)を生成するとともに、前記共有鍵(SK1)で復号した秘密情報を前記新たな共有鍵(SK2)で暗号化し、前記一部の新規情報(S2)とともに、次回アクセス用の前記自己側で生成した情報として保存する第1保存手段と、
前記第1装置が所定のサイトにアクセスする際に、前記第1装置で生成された情報(Wax)と前記自己側で生成した情報として保存している情報(Sx)とに基づいて前記通信路をセキュアチャネル化して情報交換を行うための共有鍵(SKx)を生成する第2鍵情報生成手段と、
前記第2鍵情報生成手段が生成した共有鍵(SKx)を用いて前記秘密情報を復号し、復号した秘密情報を伴う前記第1装置から前記サイトへのアクセスを可能にするアクセス手段と、
次回アクセス用の新規情報(C(x+1)*S(x+1))を生成し、この新規情報(C(x+1)*S(x+1))の一部(S(x+1))を保存し、残部の新規情報(C(x+1))を前記共有鍵(SKx)で暗号化して前記第1装置へ伝達する第2伝達手段と、
前記第2伝達手段が生成した前記次回アクセス用の新規情報(C(x+1)*S(x+1))に基づいて新たな共有鍵(SK(x+1))を生成するとともに、前記復号した秘密情報を前記生成した共有鍵(SK(x+1))で暗号化して保存し、前記新規情報の一部(S(x+1))を次回アクセス用の前記自己側で生成した情報として保存する第2保存手段とを有する、通信装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005288893A JP4794970B2 (ja) | 2005-09-30 | 2005-09-30 | 秘密情報の保護方法及び通信装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005288893A JP4794970B2 (ja) | 2005-09-30 | 2005-09-30 | 秘密情報の保護方法及び通信装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2007104118A JP2007104118A (ja) | 2007-04-19 |
JP4794970B2 true JP4794970B2 (ja) | 2011-10-19 |
Family
ID=38030648
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2005288893A Active JP4794970B2 (ja) | 2005-09-30 | 2005-09-30 | 秘密情報の保護方法及び通信装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4794970B2 (ja) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4924943B2 (ja) * | 2007-09-04 | 2012-04-25 | Kddi株式会社 | 認証付鍵交換システム、認証付鍵交換方法およびプログラム |
US9137346B2 (en) | 2009-06-18 | 2015-09-15 | Qualcomm Incorporated | System and method for permitting recordation of voice transmissions among group members of a communication group of wireless communication devices |
US8195213B2 (en) | 2009-06-18 | 2012-06-05 | Qualcomm Incorporated | System and method for permitting recordation of voice transmissions among group members of a communication group of wireless communication devices |
US9143903B2 (en) | 2012-10-19 | 2015-09-22 | Qualcomm Incorporated | Requesting and providing acknowledgements to specific PTT talk spurts |
CN104852796B (zh) * | 2015-04-13 | 2018-05-01 | 南昌大学 | 基于连续变量来实现受多方控制的量子对话方法 |
RU2018137847A (ru) * | 2016-03-29 | 2020-04-29 | Конинклейке Филипс Н.В. | Система и способ для распространения основанного на идентификационной информации ключевого материала и сертификата |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2001075468A (ja) * | 1999-09-03 | 2001-03-23 | Yamazaki Kyoiku Kizai Kk | インターネット教育システム、クライアントサーバシステムおよび記録媒体 |
JP4604418B2 (ja) * | 2001-07-26 | 2011-01-05 | パナソニック株式会社 | 通信装置および通信方法 |
JP4614664B2 (ja) * | 2003-01-10 | 2011-01-19 | パナソニック株式会社 | グループ加入認可システム、サーバ機器及びクライアント機器 |
-
2005
- 2005-09-30 JP JP2005288893A patent/JP4794970B2/ja active Active
Also Published As
Publication number | Publication date |
---|---|
JP2007104118A (ja) | 2007-04-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7688975B2 (en) | Method and apparatus for dynamic generation of symmetric encryption keys and exchange of dynamic symmetric key infrastructure | |
CN109088889B (zh) | 一种ssl加解密方法、系统及计算机可读存储介质 | |
EP2020797B1 (en) | Client-server Opaque token passing apparatus and method | |
KR101130415B1 (ko) | 비밀 데이터의 노출 없이 통신 네트워크를 통해 패스워드 보호된 비밀 데이터를 복구하는 방법 및 시스템 | |
US8059818B2 (en) | Accessing protected data on network storage from multiple devices | |
US7231526B2 (en) | System and method for validating a network session | |
TWI288552B (en) | Method for implementing new password and computer readable medium for performing the method | |
US8644516B1 (en) | Universal secure messaging for cryptographic modules | |
US5418854A (en) | Method and apparatus for protecting the confidentiality of passwords in a distributed data processing system | |
US20020087862A1 (en) | Trusted intermediary | |
EP2251810B1 (en) | Authentication information generation system, authentication information generation method, and authentication information generation program utilizing a client device and said method | |
JP2009529832A (ja) | 発見不可能、即ち、ブラック・データを使用するセキュアなデータ通信 | |
US7266705B2 (en) | Secure transmission of data within a distributed computer system | |
CN110868291B (zh) | 一种数据加密传输方法、装置、系统及存储介质 | |
JP4794970B2 (ja) | 秘密情報の保護方法及び通信装置 | |
CN114244508A (zh) | 数据加密方法、装置、设备及存储介质 | |
CN110519222B (zh) | 基于一次性非对称密钥对和密钥卡的外网接入身份认证方法和系统 | |
US10764260B2 (en) | Distributed processing of a product on the basis of centrally encrypted stored data | |
JP4924943B2 (ja) | 認証付鍵交換システム、認証付鍵交換方法およびプログラム | |
JP7337763B2 (ja) | 通信システム、通信方法およびプログラム | |
CA3210990C (en) | End to end encryption with roaming capabilities | |
CN118300905B (zh) | 基于保密认证模式的密文传输方法、装置、设备及介质 | |
KR100842014B1 (ko) | 다수의 장치로부터 네트워크 저장 장치상의 보호 데이터에대한 접근 | |
CA3225987A1 (en) | End to end encryption with roaming capabilities | |
KR20210126944A (ko) | 비밀정보의 공유 방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20080318 |
|
RD03 | Notification of appointment of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7423 Effective date: 20100325 |
|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20100402 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20110128 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20110208 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20110411 |
|
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: 20110719 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20110727 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 Ref document number: 4794970 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140805 Year of fee payment: 3 |
|
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 |
|
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 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313111 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |