JPH05281906A - 暗号鍵共有方式 - Google Patents
暗号鍵共有方式Info
- Publication number
- JPH05281906A JPH05281906A JP4080979A JP8097992A JPH05281906A JP H05281906 A JPH05281906 A JP H05281906A JP 4080979 A JP4080979 A JP 4080979A JP 8097992 A JP8097992 A JP 8097992A JP H05281906 A JPH05281906 A JP H05281906A
- Authority
- JP
- Japan
- Prior art keywords
- user
- group
- center
- key generation
- prime
- 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.)
- Withdrawn
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0816—Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
- H04L9/0819—Key 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/083—Key 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) involving central third party, e.g. key distribution center [KDC] or trusted third party [TTP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0861—Generation of secret information including derivation or calculation of cryptographic keys or passwords
- H04L9/0863—Generation of secret information including derivation or calculation of cryptographic keys or passwords involving passwords or one-time passwords
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer And Data Communications (AREA)
Abstract
(57)【要約】
【目的】 本発明は、ユーザ間で暗号鍵を用いて暗号通
信する暗号鍵共有方式に関し、剰余の法nやセンタ識別
情報Mを複数、更にグループ分けしたりし、経路に割り
当てる素数の数を削減することを目的とする。 【構成】 センタ側でユーザ毎の鍵生成情報Zを Z=M**(1/(PW*(経路素数pの積)) mo
d n によって生成してユーザに提供し、ユーザがユーザ間の
暗号鍵Kを K=Z**(PW*(通信相手以外の経路素数p))
mod n によって生成するシステムで、センタで剰余の法nを複
数化して経路素数を共有化し、経路素数の数を削減する
ように構成する。
信する暗号鍵共有方式に関し、剰余の法nやセンタ識別
情報Mを複数、更にグループ分けしたりし、経路に割り
当てる素数の数を削減することを目的とする。 【構成】 センタ側でユーザ毎の鍵生成情報Zを Z=M**(1/(PW*(経路素数pの積)) mo
d n によって生成してユーザに提供し、ユーザがユーザ間の
暗号鍵Kを K=Z**(PW*(通信相手以外の経路素数p))
mod n によって生成するシステムで、センタで剰余の法nを複
数化して経路素数を共有化し、経路素数の数を削減する
ように構成する。
Description
【0001】
【産業上の利用分野】本発明は、ユーザ間で暗号鍵を用
いて暗号通信する暗号鍵共有方式に関するものである。
いて暗号通信する暗号鍵共有方式に関するものである。
【0002】
【従来の技術】従来、暗号鍵を用いて複数のユーザ間で
暗号通信する場合、各ユーザはセンタに各自のパスワー
ドPWを登録する。センタは、各ユーザに対する識別番
号IDと鍵生成情報Zを発行する。この発行された識別
番号IDと鍵生成情報Zをもとに共通鍵を生成し、他の
ユーザとの間で暗号通信する。ここで、図18の(a)
に示すように、全ユーザ数Nu=5としてときの動作を
簡単に説明する。
暗号通信する場合、各ユーザはセンタに各自のパスワー
ドPWを登録する。センタは、各ユーザに対する識別番
号IDと鍵生成情報Zを発行する。この発行された識別
番号IDと鍵生成情報Zをもとに共通鍵を生成し、他の
ユーザとの間で暗号通信する。ここで、図18の(a)
に示すように、全ユーザ数Nu=5としてときの動作を
簡単に説明する。
【0003】各ユーザがセンタにパスワードPWを登録
する。センタは、各ユーザ間の経路pi(i=1、2、
3・・・10)に素数を割り当てると共に、各ユーザの
鍵生成情報Zとして、自己が接続している経路の逆数と
パスワードPWiの逆数のベキ乗の値を下式のようにそ
れぞれ作成する。
する。センタは、各ユーザ間の経路pi(i=1、2、
3・・・10)に素数を割り当てると共に、各ユーザの
鍵生成情報Zとして、自己が接続している経路の逆数と
パスワードPWiの逆数のベキ乗の値を下式のようにそ
れぞれ作成する。
【0004】 ユーザA:ZA=M**(1/PWA*p1*p2*p3*p4)) mod n ユーザB:ZB=M**(1/PWB*p1*p5*p6*p7)) mod n ユーザC:ZC=M**(1/PWC*p5*p2*p9*p8)) mod n ユーザD:ZD=M**(1/PWD*p8*p6*p3*p10))mod n ユーザE:ZE=M**(1/PWE*p3*p4*p9*p10))mod n ここで、nは大きな2つの素数p、qの積である。p、
qを秘密とし、法nは公開するが、PWi、piからそ
の逆数はnの素因数を知っているセンタしかできない。
Mはセンタ識別情報である。
qを秘密とし、法nは公開するが、PWi、piからそ
の逆数はnの素因数を知っているセンタしかできない。
Mはセンタ識別情報である。
【0005】また、センタが各ユーザに通知し、ユーザ
が保持する素数は下記である。 ユーザA:(p1、p2、p3、p4) ユーザB:(p1、p5、p6、p7) ユーザC:(p5、p2、p9、p8) ユーザD:(p8、p6、p3、p10) ユーザE:(p3、p4、p9、p10) また、センタが所持あるいは生成する素数は下記であ
る。
が保持する素数は下記である。 ユーザA:(p1、p2、p3、p4) ユーザB:(p1、p5、p6、p7) ユーザC:(p5、p2、p9、p8) ユーザD:(p8、p6、p3、p10) ユーザE:(p3、p4、p9、p10) また、センタが所持あるいは生成する素数は下記であ
る。
【0006】センタ:(p1、p2、p3、p4、p
5、p6、p7、p8、p9、p10) センタの公開情報は、法n、素数、各ユーザのパスワー
ドである。
5、p6、p7、p8、p9、p10) センタの公開情報は、法n、素数、各ユーザのパスワー
ドである。
【0007】ここで、A−B間で暗号通信する場合、 ユーザAは、ユーザAB間の経路に割り当てられた素数
p1以外の逆数を消去し、共通鍵を得る。即ち、 KAB=ZA**(PWA*p2*p3*p4) mod n (=M**(1/P1) mod n) ユーザBは、同様に、ユーザAB間の経路に割り当てら
れた素数p1以外の逆数を消去し、共通鍵を得る。即
ち、 KAB=ZA**(PWB*p5*p6*p7) mod n (=M**(1/P1) mod n) 従って、ユーザA、ユーザBともに共通鍵を用い、通信
しようとする平文をこの共通鍵を用いて暗号化し、相手
に送り、相手はこの共通鍵を用いて元の平文に戻す。こ
れにより、ユーザAとユーザBとの間で暗号通信するこ
とが可能となる。
p1以外の逆数を消去し、共通鍵を得る。即ち、 KAB=ZA**(PWA*p2*p3*p4) mod n (=M**(1/P1) mod n) ユーザBは、同様に、ユーザAB間の経路に割り当てら
れた素数p1以外の逆数を消去し、共通鍵を得る。即
ち、 KAB=ZA**(PWB*p5*p6*p7) mod n (=M**(1/P1) mod n) 従って、ユーザA、ユーザBともに共通鍵を用い、通信
しようとする平文をこの共通鍵を用いて暗号化し、相手
に送り、相手はこの共通鍵を用いて元の平文に戻す。こ
れにより、ユーザAとユーザBとの間で暗号通信するこ
とが可能となる。
【0008】尚、図18の(a)は、ユーザA、B、
C、D、E間の経路に素数p1、p2、p3、p4、p
5、p6、p7、p8、p9、p10を割り当てた様子
を示す。図18の(b)は、ユーザA、B、C、D、E
間の経路の素数を表にしたものである。
C、D、E間の経路に素数p1、p2、p3、p4、p
5、p6、p7、p8、p9、p10を割り当てた様子
を示す。図18の(b)は、ユーザA、B、C、D、E
間の経路の素数を表にしたものである。
【0009】
【発明が解決しようとする課題】上述したように、従来
の方式は、全ユーザをNuとしたとき、センタは、ユー
ザ間の経路の素数を割り当てるために、 (Nu−1)Nu/2 の数の素数を発生する必要がある。ユーザ数Nuが大き
くなった場合、生成する素数の量が膨大となり、作成時
間がかかると共に、管理すべき素数の数が膨大となると
いった問題があった。
の方式は、全ユーザをNuとしたとき、センタは、ユー
ザ間の経路の素数を割り当てるために、 (Nu−1)Nu/2 の数の素数を発生する必要がある。ユーザ数Nuが大き
くなった場合、生成する素数の量が膨大となり、作成時
間がかかると共に、管理すべき素数の数が膨大となると
いった問題があった。
【0010】本発明は、これらの問題を解決するため、
剰余の法nやセンタ識別情報Mを複数用い、更にグルー
プ分けなど行い、経路に割り当てる素数の数を削減する
ことを目的としている。
剰余の法nやセンタ識別情報Mを複数用い、更にグルー
プ分けなど行い、経路に割り当てる素数の数を削減する
ことを目的としている。
【0011】
【課題を解決するための手段】図1を参照して課題を解
決するための手段を説明する。図1において、鍵生成情
報作成装置11は、センタ側でユーザからのパスワード
PWの通知に対応して、鍵生成情報Z、剰余の法n、経
路素数pを作成などしてユーザに渡すものである。
決するための手段を説明する。図1において、鍵生成情
報作成装置11は、センタ側でユーザからのパスワード
PWの通知に対応して、鍵生成情報Z、剰余の法n、経
路素数pを作成などしてユーザに渡すものである。
【0012】鍵生成手段2は、ユーザ側でセンタから受
け取った鍵生成情報Z、剰余の法n、経路素数pをもと
に暗号鍵を生成するものである。
け取った鍵生成情報Z、剰余の法n、経路素数pをもと
に暗号鍵を生成するものである。
【0013】
【作用】本発明は、図1に示すように、センタ側の鍵生
成情報作成装置11がユーザ毎の鍵生成情報Zを Z=M**(1/(PW*(経路素数pの積)) mod n によって生成してユーザに通知し、ユーザ側の鍵生成手
段2がユーザ間の暗号鍵Kを K=Z**(PW*(通信相手以外の経路素数p)) mod n によって生成するシステムで、センタ側の鍵生成情報作
成装置11が剰余の法nを複数化して経路素数を共有化
し、当該経路素数の数を削減するようにしている。
成情報作成装置11がユーザ毎の鍵生成情報Zを Z=M**(1/(PW*(経路素数pの積)) mod n によって生成してユーザに通知し、ユーザ側の鍵生成手
段2がユーザ間の暗号鍵Kを K=Z**(PW*(通信相手以外の経路素数p)) mod n によって生成するシステムで、センタ側の鍵生成情報作
成装置11が剰余の法nを複数化して経路素数を共有化
し、当該経路素数の数を削減するようにしている。
【0014】また、センタ側の鍵生成情報作成装置11
がセンタ識別情報Mを複数化して経路素数を共有化し、
経路素数の数を削減するようにしている。また、センタ
側の鍵生成情報作成装置11が剰余の法nを複数化、お
よびセンタ識別情報Mを複数化して経路素数を共有化
し、経路素数の数を削減するようにしている。
がセンタ識別情報Mを複数化して経路素数を共有化し、
経路素数の数を削減するようにしている。また、センタ
側の鍵生成情報作成装置11が剰余の法nを複数化、お
よびセンタ識別情報Mを複数化して経路素数を共有化
し、経路素数の数を削減するようにしている。
【0015】また、センタ側の鍵生成情報作成装置11
がユーザを複数のグループに分解し、各グループ内のユ
ーザに同一の経路素数を共通に割り当て、グループ内の
鍵生成用に1つの剰余の法n、グループ間の鍵生成用に
2つの剰余の法nを割り当て、経路素数の数を削減する
ようにしている。
がユーザを複数のグループに分解し、各グループ内のユ
ーザに同一の経路素数を共通に割り当て、グループ内の
鍵生成用に1つの剰余の法n、グループ間の鍵生成用に
2つの剰余の法nを割り当て、経路素数の数を削減する
ようにしている。
【0016】また、センタ側の鍵生成情報作成装置11
がユーザを複数のグループに分解し、各グループ内のユ
ーザに同一の経路素数を共通に割り当て、グループ内の
鍵生成用に1つのセンタ識別情報M、グループ間の鍵生
成用に2つのセンタ識別情報Mを割り当て、経路素数の
数を削減するようにしている。
がユーザを複数のグループに分解し、各グループ内のユ
ーザに同一の経路素数を共通に割り当て、グループ内の
鍵生成用に1つのセンタ識別情報M、グループ間の鍵生
成用に2つのセンタ識別情報Mを割り当て、経路素数の
数を削減するようにしている。
【0017】また、センタ側の鍵生成情報作成装置11
がユーザを複数のグループに分解し、各グループ内のユ
ーザに方向付きで2つの経路素数を共通に割り当て、グ
ループ内の鍵生成用およびグループ間の鍵生成用に各々
1つの剰余の法nを割り当て、経路素数の数を削減する
ようにしている。
がユーザを複数のグループに分解し、各グループ内のユ
ーザに方向付きで2つの経路素数を共通に割り当て、グ
ループ内の鍵生成用およびグループ間の鍵生成用に各々
1つの剰余の法nを割り当て、経路素数の数を削減する
ようにしている。
【0018】また、センタ側の鍵生成情報作成装置11
がユーザを複数のグループに分解し、各グループ内のユ
ーザに方向付きで2つの経路素数を共通に割り当て、グ
ループ内の鍵生成用およびグループ間の鍵生成用に各々
1つのセンタ識別情報Mを割り当てし、経路素数の数を
削減するようにしている。
がユーザを複数のグループに分解し、各グループ内のユ
ーザに方向付きで2つの経路素数を共通に割り当て、グ
ループ内の鍵生成用およびグループ間の鍵生成用に各々
1つのセンタ識別情報Mを割り当てし、経路素数の数を
削減するようにしている。
【0019】また、センタ側の鍵生成情報作成装置11
がユーザを複数のグループに分解し、各グループ内のユ
ーザに同一の経路素数を共通に割り当て、グループ内の
鍵生成用およびグループ間の鍵生成用に各々1つの剰余
の法nを割り当てると共に、複数の識別情報Mを割り当
て、経路素数の数を削減するようにしている。
がユーザを複数のグループに分解し、各グループ内のユ
ーザに同一の経路素数を共通に割り当て、グループ内の
鍵生成用およびグループ間の鍵生成用に各々1つの剰余
の法nを割り当てると共に、複数の識別情報Mを割り当
て、経路素数の数を削減するようにしている。
【0020】従って、剰余の法nやセンタ識別情報Mを
複数、更にグループ分けしたりし、経路に割り当てる素
数の数を削減することが可能となる。これにより、セン
タが保持する経路素数の数を削減し、記憶容量を少なく
できる。
複数、更にグループ分けしたりし、経路に割り当てる素
数の数を削減することが可能となる。これにより、セン
タが保持する経路素数の数を削減し、記憶容量を少なく
できる。
【0021】
【実施例】次に、図1から図17を用いて本発明の実施
例の構成および動作を詳細に説明する。
例の構成および動作を詳細に説明する。
【0022】図1は、本発明の1実施例構成図を示す。
図1において、センタ1は、ユーザ(1)、ユーザ
(2)・・・ユーザ(Nu)に鍵生成情報などを与え、
暗号通信を管理するものであって、鍵生成情報作成装置
11、公開ファイル12、制御装置13などから構成さ
れるものである。
図1において、センタ1は、ユーザ(1)、ユーザ
(2)・・・ユーザ(Nu)に鍵生成情報などを与え、
暗号通信を管理するものであって、鍵生成情報作成装置
11、公開ファイル12、制御装置13などから構成さ
れるものである。
【0023】鍵生成情報作成装置11は、センタ側でユ
ーザからのパスワードPWの通知に対応して、鍵生成情
報Z、剰余の法n、経路素数pを作成などするものであ
る(図17参照)。
ーザからのパスワードPWの通知に対応して、鍵生成情
報Z、剰余の法n、経路素数pを作成などするものであ
る(図17参照)。
【0024】公開ファイル12は、センタ1が保持する
情報のうち、公開する情報(例えば剰余の法n、経路素
数pなど)を格納するファイルである。制御装置13
は、各種制御を行うものであって、各ユーザとの間でデ
ータの授受を行ったりなどするものである。
情報のうち、公開する情報(例えば剰余の法n、経路素
数pなど)を格納するファイルである。制御装置13
は、各種制御を行うものであって、各ユーザとの間でデ
ータの授受を行ったりなどするものである。
【0025】ユーザ(1)、(2)・・・(Nu)は、
センタ1から鍵生成情報、剰余の法n、経路素数pなど
の送付を受けて暗号鍵を生成し、他のユーザの間で暗号
通信を行うコンピュータシステムであって、ここでは、
鍵生成手段2、暗号処理手段3などから構成されるもの
である。
センタ1から鍵生成情報、剰余の法n、経路素数pなど
の送付を受けて暗号鍵を生成し、他のユーザの間で暗号
通信を行うコンピュータシステムであって、ここでは、
鍵生成手段2、暗号処理手段3などから構成されるもの
である。
【0026】鍵生成手段2は、受け取った鍵生成情報
Z、剰余の法n、経路素数pをもとに暗号鍵を生成する
ものである。暗号処理手段3は、鍵生成手段2によって
生成された暗号鍵をもとに、平文を暗号化するものであ
る。この暗号化した暗号文を相手先のユーザに送信す
る。受け取った相手先のユーザは、同様にして生成した
暗号鍵を使って暗号文を復元して元の平文に戻すように
している。
Z、剰余の法n、経路素数pをもとに暗号鍵を生成する
ものである。暗号処理手段3は、鍵生成手段2によって
生成された暗号鍵をもとに、平文を暗号化するものであ
る。この暗号化した暗号文を相手先のユーザに送信す
る。受け取った相手先のユーザは、同様にして生成した
暗号鍵を使って暗号文を復元して元の平文に戻すように
している。
【0027】図2は、本発明の鍵生成情報作成装置の構
成図を示す。これは、センタ1に設けた鍵生成情報作成
装置11の構成図である。図2において、素数生成11
1は、ユーザ間を接続する経路素数を生成するものであ
る(図17の(b)参照)。
成図を示す。これは、センタ1に設けた鍵生成情報作成
装置11の構成図である。図2において、素数生成11
1は、ユーザ間を接続する経路素数を生成するものであ
る(図17の(b)参照)。
【0028】演算装置112は、各種演算を行うもので
ある。ファイル113は、各種情報を格納するものであ
る。秘密ファイル114は、秘密の情報(例えば大きな
素数p、q(256ビット))を格納するものである。
ある。ファイル113は、各種情報を格納するものであ
る。秘密ファイル114は、秘密の情報(例えば大きな
素数p、q(256ビット))を格納するものである。
【0029】入出力装置115は、ユーザとの間で各種
情報の授受を行うものであって、ここでは、ユーザ数、
素数多重化数、ユーザID、パスワードなどを受け取
り、鍵生成情報出力をユーザに行ったりするものであ
る。
情報の授受を行うものであって、ここでは、ユーザ数、
素数多重化数、ユーザID、パスワードなどを受け取
り、鍵生成情報出力をユーザに行ったりするものであ
る。
【0030】制御装置116は、制御命令に従って、各
種制御を行うものである。次に、具体例を用いて本発明
の概念を順次説明する。図3は、本発明の1実施例説明
図を示す。これは、剰余の法nを2つとし、2つの経路
に同じ経路素数を割り当て、経路素数を半分にしたもの
である。ここでは、説明を簡単にするため、ユーザA、
B、C、D、Eの数5とする。
種制御を行うものである。次に、具体例を用いて本発明
の概念を順次説明する。図3は、本発明の1実施例説明
図を示す。これは、剰余の法nを2つとし、2つの経路
に同じ経路素数を割り当て、経路素数を半分にしたもの
である。ここでは、説明を簡単にするため、ユーザA、
B、C、D、Eの数5とする。
【0031】図3の(a)は、ユーザ/経路素数の例を
示す。 A、B、C、D、E:ユーザID(パスワード) pia、pib(i=1から5):経路に割り当てる素
数であって、ここではpia=pibである。
示す。 A、B、C、D、E:ユーザID(パスワード) pia、pib(i=1から5):経路に割り当てる素
数であって、ここではpia=pibである。
【0032】図3の(b)は、素数割当表を示す。これ
は、図3の(a)の経路に割り当てた素数を表にしたも
のである。このよう各経路に素数を割り当てると、各ユ
ーザに割り当てられる鍵生成情報Z、保持する素数は以
下のようになる。
は、図3の(a)の経路に割り当てた素数を表にしたも
のである。このよう各経路に素数を割り当てると、各ユ
ーザに割り当てられる鍵生成情報Z、保持する素数は以
下のようになる。
【0033】 ユーザA:ZA1=M**(1/PWA*p1*p5)) mod na (1) ZA2=M**(1/PWA*p1*p4)) mod nb (2) ユーザB:ZB1=M**(1/PWB*p1*p2)) mod na ZB2=M**(1/PWB*p2*p5)) mod nb ユーザC:ZC1=M**(1/PWC*p2*p3)) mod na ZC2=M**(1/PWC*p1*p3)) mod nb ユーザD:ZD1=M**(1/PWD*p2*p4)) mod na ZD2=M**(1/PWD*p3*p4)) mod nb ユーザE:ZE1=M**(1/PWE*p4*p5)) mod na ZE2=M**(1/PWE*p3*p5)) mod nb ユーザが所持する公開素数は、下記のようになる。
【0034】 ユーザA:(p1、p4、p5) ユーザB:(p1、p2、p5) ユーザC:(p1、p2、p3) ユーザD:(p2、p3、p4) ユーザE:(p3、p4、p5) また、センタが保持する素数は、下記のようになる。
【0035】(p1、p2、p3、P4、p5)上記の
方法により、センタで生成すべき素数の数は半減する。
鍵生成情報Zから、他のユーザ間の暗号鍵を不正に作成
できないようにするための剰余の法nは、na、nbと
いう2種類を設ける。一方、ユーザが所持すべき鍵生成
情報の量および剰余の法nの数は2倍となる。ユーザで
の暗号鍵の生成は、鍵生成する経路に割り当てられた素
数の逆数が残るように、鍵生成情報Zに素数、パスワー
ドを巾乗する(図4、図5を用いて後述する)。
方法により、センタで生成すべき素数の数は半減する。
鍵生成情報Zから、他のユーザ間の暗号鍵を不正に作成
できないようにするための剰余の法nは、na、nbと
いう2種類を設ける。一方、ユーザが所持すべき鍵生成
情報の量および剰余の法nの数は2倍となる。ユーザで
の暗号鍵の生成は、鍵生成する経路に割り当てられた素
数の逆数が残るように、鍵生成情報Zに素数、パスワー
ドを巾乗する(図4、図5を用いて後述する)。
【0036】図4は、本発明の説明図(法nが2つ)を
示す。これは、図3のユーザAに鍵の情報を交付すると
きの、センタ側の制御フローである。 :初期設定する。これは、鍵生成情報作成装置11の
素数生成111が下記の値を初期設定する。
示す。これは、図3のユーザAに鍵の情報を交付すると
きの、センタ側の制御フローである。 :初期設定する。これは、鍵生成情報作成装置11の
素数生成111が下記の値を初期設定する。
【0037】 ・na ・nb ・M ・経路素数(p1、p2、p3、p4、p5) ここで、法naは大きな素数の積pa*qaであり、法
nbは大きな素数の積pb*qbである。これら大きな
素数pa、qa、pb、qbは、秘密ファイル114に
保存して秘密にし、公開しない。Mは、センタ識別情報
(センタ識別番号)である。経路素数は、ここでは、図
3の(a)に示すように、p1、p2、p3、p4、p
5である。
nbは大きな素数の積pb*qbである。これら大きな
素数pa、qa、pb、qbは、秘密ファイル114に
保存して秘密にし、公開しない。Mは、センタ識別情報
(センタ識別番号)である。経路素数は、ここでは、図
3の(a)に示すように、p1、p2、p3、p4、p
5である。
【0038】:で初期設定した状態で、ユーザAか
らパスワードpwaをセンタに登録したことに対応し
て、鍵生成情報の生成を行う。 ・ユーザの素数の積:p1*p5・・・式(1)の鍵生
成情報参照 ・pwの乗算:p1*p5*pwa ・naの素因数でpの逆数を求める。
らパスワードpwaをセンタに登録したことに対応し
て、鍵生成情報の生成を行う。 ・ユーザの素数の積:p1*p5・・・式(1)の鍵生
成情報参照 ・pwの乗算:p1*p5*pwa ・naの素因数でpの逆数を求める。
【0039】 1/(p1*p5*pwa) mod (pa−1)(qa−1) ・Mにmod nで巾乗し、ZA1を求める(上述した
式(1)の鍵生成情報ZA1を求める)。同様に、上述
した式(2)の鍵生成情報ZA2を求める。
式(1)の鍵生成情報ZA1を求める)。同様に、上述
した式(2)の鍵生成情報ZA2を求める。
【0040】以上によって、センタ側でユーザAからパ
スワードpwaの通知に対応して、鍵生成情報作成装置
11が、鍵生成情報ZA1、ZA2を生成する。次に、
:ユーザAに下記情報を発行する。
スワードpwaの通知に対応して、鍵生成情報作成装置
11が、鍵生成情報ZA1、ZA2を生成する。次に、
:ユーザAに下記情報を発行する。
【0041】・ZA1、ZA2 ・na、nb ・素数(p1、p4、p5) 尚、に示すように、の逆数は、図示のように求め
る。このように求めてZA1を算出することにより、ユ
ーザ側で、後述する KAB=ZA1**(pwa*p5) mod na の計算により、結果として、 KAB=M**(1/p1) mod na の値が得られることとなる。
る。このように求めてZA1を算出することにより、ユ
ーザ側で、後述する KAB=ZA1**(pwa*p5) mod na の計算により、結果として、 KAB=M**(1/p1) mod na の値が得られることとなる。
【0042】以上によって、センタ側でユーザAからパ
スワードpwaの通知に対応して、暗号鍵を生成するた
めに必要な情報(ZA1、ZA2、na、nb、素数
(p1、p4、p5))が通知されることとなる。
スワードpwaの通知に対応して、暗号鍵を生成するた
めに必要な情報(ZA1、ZA2、na、nb、素数
(p1、p4、p5))が通知されることとなる。
【0043】図5は、本発明の説明図(法nが2つ)を
示す。これは、図3のユーザAがユーザBと暗号通信す
るときの、ユーザA側の制御フローである。 :ユーザAがpwa(パスワード)をセンタに登録す
る。これは、図4のの直前のpwa登録に対応してい
る。
示す。これは、図3のユーザAがユーザBと暗号通信す
るときの、ユーザA側の制御フローである。 :ユーザAがpwa(パスワード)をセンタに登録す
る。これは、図4のの直前のpwa登録に対応してい
る。
【0044】:のpwaをセンタに登録したことに
対応して、図4の、によってセンタから通知のあっ
た情報(ZA1、ZA2、na、nb、素数(p1、p
4、p5))をユーザAがもらう(受け取る)。
対応して、図4の、によってセンタから通知のあっ
た情報(ZA1、ZA2、na、nb、素数(p1、p
4、p5))をユーザAがもらう(受け取る)。
【0045】:ユーザAがユーザBと暗号通信するに
先立ち、鍵(暗号鍵)の作成を行う。 ・経路素数がp1、naと分かる。これは、図3の
(b)でユーザAからユーザBに暗号通信しようとして
いるので、経路数がp1、法naと判明する。
先立ち、鍵(暗号鍵)の作成を行う。 ・経路素数がp1、naと分かる。これは、図3の
(b)でユーザAからユーザBに暗号通信しようとして
いるので、経路数がp1、法naと判明する。
【0046】 ・KAB=ZA1**(pwa*p5) mod na を計算する。これにより、ユーザAからユーザBに暗号
通信するときに必要な暗号鍵KABが生成されたことと
なる。
通信するときに必要な暗号鍵KABが生成されたことと
なる。
【0047】:KABを鍵にして暗号通信する。これ
は、で生成した暗号鍵KABをもとに、通信しようと
する平文を暗号化してユーザBに送信する。受け取った
ユーザBは、同様にして生成した暗号鍵KABをもとに
復号して元の平文に戻す。
は、で生成した暗号鍵KABをもとに、通信しようと
する平文を暗号化してユーザBに送信する。受け取った
ユーザBは、同様にして生成した暗号鍵KABをもとに
復号して元の平文に戻す。
【0048】以上によって、センタは剰余の法na、n
bの2つを用い、鍵生成情報ZA1、ZA2を作成して
ユーザAに渡し、これを受け取ったユーザAは図3の
(b)の素数割当表に従い、ZA1とnaと素数(pw
a*p5)を使用し、に示すように暗号鍵KABを作
成する。従って、図3の(b)の素数割当表から判明す
るように、2つの剰余の法na、nbを用いているた
め、法nが1つの場合に比し、素数の数を半減できる。
図5で鍵生成情報は、1度交付されれば、次回からは
から鍵生成処理を始める。
bの2つを用い、鍵生成情報ZA1、ZA2を作成して
ユーザAに渡し、これを受け取ったユーザAは図3の
(b)の素数割当表に従い、ZA1とnaと素数(pw
a*p5)を使用し、に示すように暗号鍵KABを作
成する。従って、図3の(b)の素数割当表から判明す
るように、2つの剰余の法na、nbを用いているた
め、法nが1つの場合に比し、素数の数を半減できる。
図5で鍵生成情報は、1度交付されれば、次回からは
から鍵生成処理を始める。
【0049】次に、センタ識別情報Mを2つ用い、経路
素数の数を半減する実施例について、図3を用いて説明
する。図3でpia、pib(i=1、2・・・5)は
経路に割り当てる素数で、pia=pibである。この
とき経路にいずれの素数を割り当てるかを図3の(b)
の素数割当表に示す。
素数の数を半減する実施例について、図3を用いて説明
する。図3でpia、pib(i=1、2・・・5)は
経路に割り当てる素数で、pia=pibである。この
とき経路にいずれの素数を割り当てるかを図3の(b)
の素数割当表に示す。
【0050】このとき、各ユーザに割り当てる鍵生成情
報、保持する素数は以下の通りである。 ユーザA:ZA1=M1**(1/PWA*p1*p5)) mod n (3) ZA2=M2**(1/PWA*p1*p4)) mod n (4) ユーザB:ZB1=M1**(1/PWB*p1*p2)) mod n ZB2=M2**(1/PWB*p2*p5)) mod n ユーザC:ZC1=M1**(1/PWC*p2*p3)) mod n ZC2=M2**(1/PWC*p1*p3)) mod n ユーザD:ZD1=M1**(1/PWD*p2*p4)) mod n ZD2=M2**(1/PWD*p3*p4)) mod n ユーザE:ZE1=M1**(1/PWE*p4*p5)) mod n ZE2=M2**(1/PWE*p3*p5)) mod n ユーザが所持する公開素数は、下記のようになる。
報、保持する素数は以下の通りである。 ユーザA:ZA1=M1**(1/PWA*p1*p5)) mod n (3) ZA2=M2**(1/PWA*p1*p4)) mod n (4) ユーザB:ZB1=M1**(1/PWB*p1*p2)) mod n ZB2=M2**(1/PWB*p2*p5)) mod n ユーザC:ZC1=M1**(1/PWC*p2*p3)) mod n ZC2=M2**(1/PWC*p1*p3)) mod n ユーザD:ZD1=M1**(1/PWD*p2*p4)) mod n ZD2=M2**(1/PWD*p3*p4)) mod n ユーザE:ZE1=M1**(1/PWE*p4*p5)) mod n ZE2=M2**(1/PWE*p3*p5)) mod n ユーザが所持する公開素数は、下記のようになる。
【0051】 ユーザA:(p1、p4、p5) ユーザB:(p1、p2、p5) ユーザC:(p1、p2、p3) ユーザD:(p2、p3、p4) ユーザE:(p3、p4、p5) また、センタが保持する素数は、下記のようになる。
【0052】(p1、p2、p3、P4、p5)ここ
で、M1、M2はセンタ識別情報である。センタで生成
すべき素数の数は半減する。ユーザが所持すべき鍵生成
情報の量は2倍となる。ユーザでの暗号鍵の生成は、鍵
生成する経路番号に割り当てられた素数の逆数が残るよ
うに、鍵生成情報Zに素数、パスワードを巾乗する。
で、M1、M2はセンタ識別情報である。センタで生成
すべき素数の数は半減する。ユーザが所持すべき鍵生成
情報の量は2倍となる。ユーザでの暗号鍵の生成は、鍵
生成する経路番号に割り当てられた素数の逆数が残るよ
うに、鍵生成情報Zに素数、パスワードを巾乗する。
【0053】図6は、本発明の説明図(Mが2つ)を示
す。これは、図3のユーザAに鍵生成情報を交付すると
きの、センタ側の制御フローである。 :初期設定する。これは、鍵生成情報作成装置11の
素数生成111が下記の値を初期設定する。
す。これは、図3のユーザAに鍵生成情報を交付すると
きの、センタ側の制御フローである。 :初期設定する。これは、鍵生成情報作成装置11の
素数生成111が下記の値を初期設定する。
【0054】 ・n ・M1、M2 ・経路素数(p1、p2、p3、p4、p5) ここで、法nは大きな素数の積p*qである。これら大
きな素数p、qは、秘密ファイル114に保存して秘密
にし、公開しない。M1、M2は、センタ識別情報(セ
ンタ識別番号)である。経路素数は、ここでは、図3の
(a)に示すように、p1、p2、p3、p4、p5で
ある。
きな素数p、qは、秘密ファイル114に保存して秘密
にし、公開しない。M1、M2は、センタ識別情報(セ
ンタ識別番号)である。経路素数は、ここでは、図3の
(a)に示すように、p1、p2、p3、p4、p5で
ある。
【0055】:で初期設定した状態で、ユーザAか
らパスワードpwaをセンタに登録したことに対応し
て、鍵生成情報の生成を行う。 ・ユーザの素数の積:p1*p5・・・式(3)の鍵生
成情報参照 ・pwの乗算:p1*p5*pwa ・naの素因数でpの逆数を求める。
らパスワードpwaをセンタに登録したことに対応し
て、鍵生成情報の生成を行う。 ・ユーザの素数の積:p1*p5・・・式(3)の鍵生
成情報参照 ・pwの乗算:p1*p5*pwa ・naの素因数でpの逆数を求める。
【0056】 1/(p1*p5*pwa) mod (p−1)(q−1) ・Mにmod nで巾乗し、ZA1を求める(上述した
式(3)の鍵生成情報ZA1を求める)。同様に、上述
した式(4)の鍵生成情報ZA2を求める。
式(3)の鍵生成情報ZA1を求める)。同様に、上述
した式(4)の鍵生成情報ZA2を求める。
【0057】以上によって、センタ側でユーザAからパ
スワードpwaの通知に対応して、鍵生成情報作成装置
11が、鍵生成情報ZA1、ZA2を生成する。 次に、:ユーザAに下記情報を発行する。
スワードpwaの通知に対応して、鍵生成情報作成装置
11が、鍵生成情報ZA1、ZA2を生成する。 次に、:ユーザAに下記情報を発行する。
【0058】 ・ZA1、ZA2 ・n ・素数(p1、p4、p5) 尚、に示すように、の逆数の求め方は、図示のよう
に求める。このように求めてZA1を算出することによ
り、ユーザ側で、後述する KAB=ZA1**(pwa*p5) mod na の計算により、結果として、 KAB=M**(1/p1) mod na の値が得られることとなる。
に求める。このように求めてZA1を算出することによ
り、ユーザ側で、後述する KAB=ZA1**(pwa*p5) mod na の計算により、結果として、 KAB=M**(1/p1) mod na の値が得られることとなる。
【0059】以上によって、センタ側でユーザAからパ
スワードpwaの通知に対応して、暗号鍵を生成するに
必要な情報(ZA1、ZA2、n、素数(p1、p4、
p5))が通知されることとなる。
スワードpwaの通知に対応して、暗号鍵を生成するに
必要な情報(ZA1、ZA2、n、素数(p1、p4、
p5))が通知されることとなる。
【0060】図7は、本発明の説明図(Mが2つ)を示
す。これは、図3のユーザAがユーザBと暗号通信する
ときの、ユーザA側の制御フローである。 :ユーザAがpwa(パスワード)をセンタに登録す
る。
す。これは、図3のユーザAがユーザBと暗号通信する
ときの、ユーザA側の制御フローである。 :ユーザAがpwa(パスワード)をセンタに登録す
る。
【0061】:のpwaをセンタに登録したことに
対応して、センタから通知のあった情報(ZA1、ZA
2、n、素数(p1、p4、p5))をユーザAがもら
う。 :ユーザAがユーザBと暗号通信するに先立ち、鍵
(暗号鍵)の作成を行う。
対応して、センタから通知のあった情報(ZA1、ZA
2、n、素数(p1、p4、p5))をユーザAがもら
う。 :ユーザAがユーザBと暗号通信するに先立ち、鍵
(暗号鍵)の作成を行う。
【0062】・経路素数がp1、naと分かる。これ
は、図3の(b)でユーザAからユーザBに暗号通信し
ようとしているので、経路数がp1、法naと判明す
る。 ・KAB=ZA1**(pwa*p5) mod n を計算する。これにより、ユーザAからユーザBに暗号
通信するときに必要な暗号鍵KABが生成されたことと
なる。
は、図3の(b)でユーザAからユーザBに暗号通信し
ようとしているので、経路数がp1、法naと判明す
る。 ・KAB=ZA1**(pwa*p5) mod n を計算する。これにより、ユーザAからユーザBに暗号
通信するときに必要な暗号鍵KABが生成されたことと
なる。
【0063】:KABを鍵にして暗号通信する。 以上によって、センタはセンタ識別情報Mを2つ用い、
鍵生成情報ZA1、ZA2を作成してユーザAに渡し、
これを受け取ったユーザAは図3の(b)の素数割当表
に従い、ZA1とnaと素数(pwa*p5)を使用
し、に示すように暗号鍵KABを作成する。これによ
り、センタ識別情報の2つを持っているので、従来の場
合に比し、素数の数を半減できる。図7で鍵生成情報
は、1度センタから交付されれば、次回からはから鍵
生成処理を始める。
鍵生成情報ZA1、ZA2を作成してユーザAに渡し、
これを受け取ったユーザAは図3の(b)の素数割当表
に従い、ZA1とnaと素数(pwa*p5)を使用
し、に示すように暗号鍵KABを作成する。これによ
り、センタ識別情報の2つを持っているので、従来の場
合に比し、素数の数を半減できる。図7で鍵生成情報
は、1度センタから交付されれば、次回からはから鍵
生成処理を始める。
【0064】次に、図8から図10を用い、ユーザ数N
u=12、グループ数Ng=3とし、グループ内に1つ
の法n、グループ間に2つの法nを割り当てた場合につ
いて説明する。
u=12、グループ数Ng=3とし、グループ内に1つ
の法n、グループ間に2つの法nを割り当てた場合につ
いて説明する。
【0065】図8の(a)は、グループ内素数の割当
(ユーザ数Nu=4の場合)を示す。ここで、1、2、
3、4がグループ内のユーザを表し、p1、p2・・・
がユーザ間の経路に割り当てた素数を表す。各グループ
内のユーザは、各識別番号に従って、同じ素数が割り当
てられる。即ち、グループ1、2、3内のユーザ識別番
号2のユーザは、p2、p5、p6、p7を割り当て
る。
(ユーザ数Nu=4の場合)を示す。ここで、1、2、
3、4がグループ内のユーザを表し、p1、p2・・・
がユーザ間の経路に割り当てた素数を表す。各グループ
内のユーザは、各識別番号に従って、同じ素数が割り当
てられる。即ち、グループ1、2、3内のユーザ識別番
号2のユーザは、p2、p5、p6、p7を割り当て
る。
【0066】そして、各ユーザは、グループ内の暗号通
信を行う場合は、グループに割り当てられた剰余の法と
鍵生成情報を用いて鍵生成を行う。グループ間で暗号通
信を行う場合は、図8の(b)に示す法と、それに対応
する鍵生成情報を用いて鍵生成を行う。
信を行う場合は、グループに割り当てられた剰余の法と
鍵生成情報を用いて鍵生成を行う。グループ間で暗号通
信を行う場合は、図8の(b)に示す法と、それに対応
する鍵生成情報を用いて鍵生成を行う。
【0067】図8の(b)は、nの割り当て方を示す。
グループ内で1つのn1、n2、n3をそれぞれ割り当
てている。グループ間では、図示のように、割り当て
る。まず、ユーザ識別番号IDiと相手識別番号IDj
のとき、IDi、IDj間に割り当てられる素数Pkの
添字kは、Nguをグループ内のユーザ数とすると計算
でき、 kij=IDj (IDi=1の場合) (5) から定まる。但し、IDi<IDjとし、kij=kjiとす
る。
グループ内で1つのn1、n2、n3をそれぞれ割り当
てている。グループ間では、図示のように、割り当て
る。まず、ユーザ識別番号IDiと相手識別番号IDj
のとき、IDi、IDj間に割り当てられる素数Pkの
添字kは、Nguをグループ内のユーザ数とすると計算
でき、 kij=IDj (IDi=1の場合) (5) から定まる。但し、IDi<IDjとし、kij=kjiとす
る。
【0068】また、グループ番号i、jで通信を行う場
合の法の選択も、グループiのIDsと、グループjの
IDtで通信を行う場合、(Gi>Gjかつ IDs<
IDt)または(Gi<Gjかつ IDs>IDt)の
とき nji (7) それ以外のとき nij (8) という条件に従って選択すればよい。
合の法の選択も、グループiのIDsと、グループjの
IDtで通信を行う場合、(Gi>Gjかつ IDs<
IDt)または(Gi<Gjかつ IDs>IDt)の
とき nji (7) それ以外のとき nij (8) という条件に従って選択すればよい。
【0069】ユーザ数Nu=12、Ng=3の場合の経
路素数、法の割当を、それぞれ図8の(c)、(d)に
示す。図8の(c)中の番号は、経路素数の添字であ
り、斜線の部分は、そうでない部分と異なる法を用いる
ことを示す。図8の(d)で使用する法は、法の選択を
表している。例えばグループ2のユーザ2は、以下の鍵
生成情報が発行される。
路素数、法の割当を、それぞれ図8の(c)、(d)に
示す。図8の(c)中の番号は、経路素数の添字であ
り、斜線の部分は、そうでない部分と異なる法を用いる
ことを示す。図8の(d)で使用する法は、法の選択を
表している。例えばグループ2のユーザ2は、以下の鍵
生成情報が発行される。
【0070】 グループ2内Z2 =M**(1/(p2*p6*p7)) mod n2 (7) グループ1間Z12=M**(1/(p2*p5)) mod n12 Z21=M**(1/(p6*p7)) mod n21 グループ3間Z23=M**(1/(p5*p6*p7)) mod n23 Z32=M**(1/(p2) mod n32 グループ2のユーザ2に割り当てられたユーザは、上記
鍵生成情報と素数の組(p2、p3、p5、p6、p
7)が配布される。鍵生成は、相手グループ間に割り当
てられた素数の逆数以外の素数を消去することにより得
られる。例えばグループ2のユーザ2と、グループ3の
ユーザ3との暗号共有鍵K2233は、経路素数p6が
割り当てられるので、Z23を用いて、 K2233=Z23**(p5*p7) mod n23 (=M** (1/p6) mod n23) で求める。
鍵生成情報と素数の組(p2、p3、p5、p6、p
7)が配布される。鍵生成は、相手グループ間に割り当
てられた素数の逆数以外の素数を消去することにより得
られる。例えばグループ2のユーザ2と、グループ3の
ユーザ3との暗号共有鍵K2233は、経路素数p6が
割り当てられるので、Z23を用いて、 K2233=Z23**(p5*p7) mod n23 (=M** (1/p6) mod n23) で求める。
【0071】図9は、本発明の他の説明図(グループ
化、法nが2つ)を示す。これは、図8のユーザAに鍵
生成情報を交付するときの、センタ側の制御フローであ
る。 :初期設定する。これは、鍵生成情報作成装置11の
素数生成111が下記の値を初期設定する。
化、法nが2つ)を示す。これは、図8のユーザAに鍵
生成情報を交付するときの、センタ側の制御フローであ
る。 :初期設定する。これは、鍵生成情報作成装置11の
素数生成111が下記の値を初期設定する。
【0072】 ・nij ・M ・経路素数(p1、p2、p3、p4、p5、p6、p
7、p8、p9、p10、p11、p12、p13、p
14) ここで、法nijは、図示のように、pij*qij
(i、j=1、2、3)である。pij、qijは大き
な素数(各256ビット)である。
7、p8、p9、p10、p11、p12、p13、p
14) ここで、法nijは、図示のように、pij*qij
(i、j=1、2、3)である。pij、qijは大き
な素数(各256ビット)である。
【0073】:で初期設定した状態で、ユーザAか
らパスワードpwをセンタに登録したことに対応して、
鍵生成情報の生成を行う。 ・ユーザの素数の積:p2*p6*p7・・式(7)の鍵生成情報参照 p2*p5 p6*p7 p5*p6*p7 p2 ・pwの乗算 ・n2、n12、n21、n23、n32の素因数で逆
数を求める。
らパスワードpwをセンタに登録したことに対応して、
鍵生成情報の生成を行う。 ・ユーザの素数の積:p2*p6*p7・・式(7)の鍵生成情報参照 p2*p5 p6*p7 p5*p6*p7 p2 ・pwの乗算 ・n2、n12、n21、n23、n32の素因数で逆
数を求める。
【0074】・逆数をMにmod nで巾乗する。 Z2 =M**(1/(p2*p6*p7*pw) mod n2 Z12=M**(1/(p2*p5*pw) mod n12 Z21=M**(1/(p6*p7*pw) mod n21 Z23=M**(1/(p5*p6*p7*pw) mod n23 Z32=M**(1/(p2*pw) mod n32 以上によって、センタ側でユーザAからパスワードpw
の通知に対応して、鍵生成情報作成装置11が、鍵生成
情報Z1、Z12、Z21、Z23、Z32を生成す
る。
の通知に対応して、鍵生成情報作成装置11が、鍵生成
情報Z1、Z12、Z21、Z23、Z32を生成す
る。
【0075】次に、:ユーザAに下記情報を発行す
る。 ・Z2、Z12、Z21、Z23、Z32 ・n、n12、n21、n23、n32 ・素数(p2、p3、p5、p6、p7) 以上によって、センタ側でユーザ(グループ2のユーザ
2)からパスワードpwの通知に対応して、暗号鍵を生
成するに必要な情報が通知されることとなる。
る。 ・Z2、Z12、Z21、Z23、Z32 ・n、n12、n21、n23、n32 ・素数(p2、p3、p5、p6、p7) 以上によって、センタ側でユーザ(グループ2のユーザ
2)からパスワードpwの通知に対応して、暗号鍵を生
成するに必要な情報が通知されることとなる。
【0076】図10は、本発明の説明図(ブループ化、
法nが2つ)を示す。これは、図8のユーザ(グループ
2のユーザ2)がユーザ(グループ3のユーザ3)と暗
号通信するときの、ユーザ(グループ2のユーザ2)側
の制御フローである。
法nが2つ)を示す。これは、図8のユーザ(グループ
2のユーザ2)がユーザ(グループ3のユーザ3)と暗
号通信するときの、ユーザ(グループ2のユーザ2)側
の制御フローである。
【0077】:ユーザ(グループ2のユーザ2)がp
w(パスワード)をセンタに登録する。 :のpwをセンタに登録したことに対応して、セン
タから通知のあった図示情報ををユーザ(グループ2の
ユーザ2)がもらう。
w(パスワード)をセンタに登録する。 :のpwをセンタに登録したことに対応して、セン
タから通知のあった図示情報ををユーザ(グループ2の
ユーザ2)がもらう。
【0078】:ユーザ(グループ2のユーザ2)がユ
ーザ(グループ3のユーザ3)と暗号通信するに先立
ち、鍵(暗号鍵)の作成を行う。 ・経路素数がp6、n23と分かる。これは、図8の
(c)、(d)ユーザ(グループ2のユーザ2)からユ
ーザ(グループ3のユーザ3)に暗号通信しようとして
いるので、経路数がp6、法n23と判明する。また、
式(5)、(6)、(7)、(8)を使って求められ
る。
ーザ(グループ3のユーザ3)と暗号通信するに先立
ち、鍵(暗号鍵)の作成を行う。 ・経路素数がp6、n23と分かる。これは、図8の
(c)、(d)ユーザ(グループ2のユーザ2)からユ
ーザ(グループ3のユーザ3)に暗号通信しようとして
いるので、経路数がp6、法n23と判明する。また、
式(5)、(6)、(7)、(8)を使って求められ
る。
【0079】 ・K2233=Z23**(pw*p5*p7) mod n23 を計算する。これにより、(グループ2のユーザ2)か
らユーザ(グループ3のユーザ3)に暗号通信するとき
に必要な暗号鍵K2233が生成されたこととなる。
らユーザ(グループ3のユーザ3)に暗号通信するとき
に必要な暗号鍵K2233が生成されたこととなる。
【0080】:K2233を鍵にして暗号通信する。 以上によって、センタはグループ化し、法を2つ用い、
鍵生成情報を作成してユーザに渡し、これを受け取った
ユーザは図8の割当表に従い、に示すように暗号鍵K
2233を作成する。これにより、素数の数を削減でき
る。
鍵生成情報を作成してユーザに渡し、これを受け取った
ユーザは図8の割当表に従い、に示すように暗号鍵K
2233を作成する。これにより、素数の数を削減でき
る。
【0081】図10で鍵生成情報が一度センタから交付
されれば、次回移行、から鍵生成処理を始める。次
に、図11から図13を用い、ユーザ数Nu=12、グ
ループ数Ng=3とし、グループに1つの法n、方向付
きで2つの経路素数割り当てた場合について説明する。
されれば、次回移行、から鍵生成処理を始める。次
に、図11から図13を用い、ユーザ数Nu=12、グ
ループ数Ng=3とし、グループに1つの法n、方向付
きで2つの経路素数割り当てた場合について説明する。
【0082】図11の(a)は、グループ内素数の割当
(ユーザ数Nu=4の場合)を示す。各グループ内のユ
ーザは、各識別番号に従って、同じ素数が割り当てる。
即ち、グループ1、2、3内のユーザ識別番号2のユー
ザは、p2、p5、p6、p7、p8、p10、p14
を割り当てる。
(ユーザ数Nu=4の場合)を示す。各グループ内のユ
ーザは、各識別番号に従って、同じ素数が割り当てる。
即ち、グループ1、2、3内のユーザ識別番号2のユー
ザは、p2、p5、p6、p7、p8、p10、p14
を割り当てる。
【0083】そして、各ユーザは、グループ内の暗号通
信を行う場合は、グループに割り当てられた剰余の法と
鍵生成情報を用いて鍵生成を行う。グループ間で暗号通
信を行う場合は、図11の(b)に示す法nと、それに
対応する鍵生成情報を用いて鍵生成を行う。
信を行う場合は、グループに割り当てられた剰余の法と
鍵生成情報を用いて鍵生成を行う。グループ間で暗号通
信を行う場合は、図11の(b)に示す法nと、それに
対応する鍵生成情報を用いて鍵生成を行う。
【0084】図11の(b)は、nの割り当て方を示
す。グループ内で1つのn1、n2、n3をそれぞれ割
り当てている。グループ間では、図示のように、割り当
てている。
す。グループ内で1つのn1、n2、n3をそれぞれ割
り当てている。グループ間では、図示のように、割り当
てている。
【0085】まず、ユーザ識別番号IDiと相手識別番
号IDjのとき、IDi、IDj間に割り当てられる素
数Pkの添字kは、Nguをグループ内のユーザ数とす
ると計算でき、 k=Nug(IDi−1)+IDj (IDiを起点とする場合) (9) k=Nug(IDj−1)+IDi (IDjを起点とする場合)(10) から定まる。ここで、どちらかのID起点とするかは、
通信を行うユーザの属するグループによる。即ち、グフ
ープiのIDsと、グループjのIDtで通信を行う場
合、 i=jの場合、IDs、IDtの小さい方を起点とする素数を選ぶ (11) (11 i<jの場合、IDsを起点とする素数を選ぶ (12) i>jの場合、IDtを起点とする素数を選ぶ (13) ユーザ数Nu=12、Ng=3の場合の経路素数、法の
割当を、それぞれ図11の(c)、(d)に示す。
号IDjのとき、IDi、IDj間に割り当てられる素
数Pkの添字kは、Nguをグループ内のユーザ数とす
ると計算でき、 k=Nug(IDi−1)+IDj (IDiを起点とする場合) (9) k=Nug(IDj−1)+IDi (IDjを起点とする場合)(10) から定まる。ここで、どちらかのID起点とするかは、
通信を行うユーザの属するグループによる。即ち、グフ
ープiのIDsと、グループjのIDtで通信を行う場
合、 i=jの場合、IDs、IDtの小さい方を起点とする素数を選ぶ (11) (11 i<jの場合、IDsを起点とする素数を選ぶ (12) i>jの場合、IDtを起点とする素数を選ぶ (13) ユーザ数Nu=12、Ng=3の場合の経路素数、法の
割当を、それぞれ図11の(c)、(d)に示す。
【0086】図11の(c)中の番号は、経路素数の添
字である。例えばグループ2のユーザ2は、以下の鍵生
成情報が発行される。 グループ2内Z2 =M**(1/(p2*p6*p7*p8)) mod n2 グループ1間Z12=M**(1/(p2*p6*p10*p14))mod n 12 グループ3間Z23=M**(1/(p5*p6*p7*p8)) mod n2 3 グループ2のユーザ2に割り当てられたユーザは、上記
鍵生成情報と素数の組(p2、p5、p6、p7、p
8、p10、p14)が配布される。鍵生成は、相手グ
ループ間に割り当てられた素数の逆数以外の素数を消去
することにより得られる。例えばグループ2のユーザ2
と、グループ3のユーザ3との暗号共有鍵K2233
は、経路素数p6が割り当てられるので、Z23を用い
て、 K2233=Z23**(p5*p6*p8) mod n23 (=M** (1/p7) mod n23) で求める。
字である。例えばグループ2のユーザ2は、以下の鍵生
成情報が発行される。 グループ2内Z2 =M**(1/(p2*p6*p7*p8)) mod n2 グループ1間Z12=M**(1/(p2*p6*p10*p14))mod n 12 グループ3間Z23=M**(1/(p5*p6*p7*p8)) mod n2 3 グループ2のユーザ2に割り当てられたユーザは、上記
鍵生成情報と素数の組(p2、p5、p6、p7、p
8、p10、p14)が配布される。鍵生成は、相手グ
ループ間に割り当てられた素数の逆数以外の素数を消去
することにより得られる。例えばグループ2のユーザ2
と、グループ3のユーザ3との暗号共有鍵K2233
は、経路素数p6が割り当てられるので、Z23を用い
て、 K2233=Z23**(p5*p6*p8) mod n23 (=M** (1/p7) mod n23) で求める。
【0087】図12は、本発明の他の説明図(グループ
化、経路が方向付、法nが1つ)を示す。これは、図1
1のユーザ(グループ2のユーザ2)がユーザ(グルー
プ3のユーザ3)と暗号通信するときの、センタ側の制
御フローである。
化、経路が方向付、法nが1つ)を示す。これは、図1
1のユーザ(グループ2のユーザ2)がユーザ(グルー
プ3のユーザ3)と暗号通信するときの、センタ側の制
御フローである。
【0088】:初期設定する。これは、鍵生成情報作
成装置11の素数生成111が下記の値を初期設定す
る。 ・nij ・M ・経路素数(p1、p2・・・p16) :で初期設定した状態で、ユーザ(グループ2のユ
ーザ2)からパスワードpwをセンタに登録したことに
対応して、鍵生成情報の生成を行う。
成装置11の素数生成111が下記の値を初期設定す
る。 ・nij ・M ・経路素数(p1、p2・・・p16) :で初期設定した状態で、ユーザ(グループ2のユ
ーザ2)からパスワードpwをセンタに登録したことに
対応して、鍵生成情報の生成を行う。
【0089】 ・pwの乗算 ・n2、n12、n23の素因数で逆数を求める。
【0090】・逆数をMにmod nで巾乗する。 Z2 =M**(1/(p2*p7*p8*pw) mod n2 Z12=M**(1/(p2*p6*p10*p14*pw) mod n12 Z23=M**(1/(p5*p6*p7*p8*pw) mod n23 以上によって、センタ側でユーザ(グループ2のユーザ
2)からパスワードpwの通知に対応して、鍵生成情報
作成装置11が、鍵生成情報Z1、Z12、Z23を生
成する。
2)からパスワードpwの通知に対応して、鍵生成情報
作成装置11が、鍵生成情報Z1、Z12、Z23を生
成する。
【0091】次に、:ユーザ(グループ2のユーザ
2)に下記情報を発行する。 ・Z2、Z12、Z23 ・n、n12、n23 ・素数(p2、p5、p6、p7、p8、p10、p1
4) 以上によって、センタ側でユーザ(グループ2のユーザ
2)からパスワードpwの通知に対応して、暗号鍵を生
成するに必要な情報が通知されることとなる。
2)に下記情報を発行する。 ・Z2、Z12、Z23 ・n、n12、n23 ・素数(p2、p5、p6、p7、p8、p10、p1
4) 以上によって、センタ側でユーザ(グループ2のユーザ
2)からパスワードpwの通知に対応して、暗号鍵を生
成するに必要な情報が通知されることとなる。
【0092】図13は、本発明の説明図(グループ化、
経路が方向付け、法nが1つ)を示す。これは、図11
のユーザ(グループ2のユーザ2)がユーザ(グループ
3のユーザ3)と暗号通信するときの、ユーザ(グルー
プ2のユーザ2)側の制御フローである。
経路が方向付け、法nが1つ)を示す。これは、図11
のユーザ(グループ2のユーザ2)がユーザ(グループ
3のユーザ3)と暗号通信するときの、ユーザ(グルー
プ2のユーザ2)側の制御フローである。
【0093】:ユーザ(グループ2のユーザ2)がp
w(パスワード)をセンタに登録する。 :のpwをセンタに登録したことに対応して、セン
タから通知のあった図示情報ををユーザ(グループ2の
ユーザ2)がもらう。
w(パスワード)をセンタに登録する。 :のpwをセンタに登録したことに対応して、セン
タから通知のあった図示情報ををユーザ(グループ2の
ユーザ2)がもらう。
【0094】:ユーザ(グループ2のユーザ2)がユ
ーザ(グループ3のユーザ3)と暗号通信するに先立
ち、鍵(暗号鍵)の作成を行う。 ・経路素数がp7、n23と分かる。これは、図11の
(c)、(d)ユーザ(グループ2のユーザ2)からユ
ーザ(グループ3のユーザ3)に暗号通信しようとして
いるので、経路数がp7、法n23と判明する。
ーザ(グループ3のユーザ3)と暗号通信するに先立
ち、鍵(暗号鍵)の作成を行う。 ・経路素数がp7、n23と分かる。これは、図11の
(c)、(d)ユーザ(グループ2のユーザ2)からユ
ーザ(グループ3のユーザ3)に暗号通信しようとして
いるので、経路数がp7、法n23と判明する。
【0095】 ・K2233=Z23**(pw*p5*p6*p8) mod n23 を計算する。これにより、ユーザ(グループ2のユーザ
2)からユーザ(グループ3のユーザ3)に暗号通信す
るときに必要な暗号鍵K2233が生成されたこととな
る。
2)からユーザ(グループ3のユーザ3)に暗号通信す
るときに必要な暗号鍵K2233が生成されたこととな
る。
【0096】:K2233を鍵にして暗号通信する。 以上によって、センタはグループ化し、経路を方向付
け、グループに法を1つ用い、鍵生成情報を作成してユ
ーザに渡し、これを受け取ったユーザは図11の割当表
に従い、に示すように暗号鍵K2233を作成する。
これにより、素数の数を削減できる。図13で鍵生成情
報は1度センタから交付されれば、鍵生成処理を始め
る。次に、図14から図16を用い、ユーザ数Nu=1
2、グループ数Ng=3とし、グループに1つの法n、
2つのセンタ識別情報を割り当てた場合について説明す
る。
け、グループに法を1つ用い、鍵生成情報を作成してユ
ーザに渡し、これを受け取ったユーザは図11の割当表
に従い、に示すように暗号鍵K2233を作成する。
これにより、素数の数を削減できる。図13で鍵生成情
報は1度センタから交付されれば、鍵生成処理を始め
る。次に、図14から図16を用い、ユーザ数Nu=1
2、グループ数Ng=3とし、グループに1つの法n、
2つのセンタ識別情報を割り当てた場合について説明す
る。
【0097】図14の(a)は、グループ内素数の割当
(ユーザ数Nu=4の場合)を示す。各グループ内のユ
ーザは、各識別番号に従って、同じ素数を割り当てる。
即ち、グループ1、2、3内のユーサ識別番号2のユー
ザは、p2、p5、p6、p7を割り当てる。
(ユーザ数Nu=4の場合)を示す。各グループ内のユ
ーザは、各識別番号に従って、同じ素数を割り当てる。
即ち、グループ1、2、3内のユーサ識別番号2のユー
ザは、p2、p5、p6、p7を割り当てる。
【0098】そして、各ユーザは、グループ内の暗号通
信を行う場合は、グループに割り当てられた剰余の法と
鍵生成情報を用いて鍵生成を行う。グループ間で暗号通
信を行う場合は、図14の(b)に示す法nと、それに
対応する鍵生成情報を用いて鍵生成を行う。
信を行う場合は、グループに割り当てられた剰余の法と
鍵生成情報を用いて鍵生成を行う。グループ間で暗号通
信を行う場合は、図14の(b)に示す法nと、それに
対応する鍵生成情報を用いて鍵生成を行う。
【0099】図14の(b)は、nの割り当て方を示
す。グループ内で1つのn1、n2、n3をそれぞれ割
り当てている。グループ間では、図示のように、割り当
てている。
す。グループ内で1つのn1、n2、n3をそれぞれ割
り当てている。グループ間では、図示のように、割り当
てている。
【0100】まず、ユーザ識別番号IDiと相手識別番
号IDjのとき、IDi、IDj間に割り当てられる素
数Pkの添字kは、Nguをグループ内のユーザ数とす
ると計算でき、 kij=IDj (IDiを起点とする場合) (14) から定まる。但し、IDi <IDj かつKij=Kjiとす
る。
号IDjのとき、IDi、IDj間に割り当てられる素
数Pkの添字kは、Nguをグループ内のユーザ数とす
ると計算でき、 kij=IDj (IDiを起点とする場合) (14) から定まる。但し、IDi <IDj かつKij=Kjiとす
る。
【0101】また、グループ番号i、jで通信を行う場
合の法の解釈も、グループiのIDs、グループjのI
Dtで通信を行う場合、 (Gi>Gjかつ IDs<IDt)または(Gi<Gjかつ IDs>ID t)のとき、M1 (16) それ以外のときM2 (17) を用いればよい。
合の法の解釈も、グループiのIDs、グループjのI
Dtで通信を行う場合、 (Gi>Gjかつ IDs<IDt)または(Gi<Gjかつ IDs>ID t)のとき、M1 (16) それ以外のときM2 (17) を用いればよい。
【0102】ユーザ数Nu=12、Ng=3の場合の経
路素数、法の割当を、それぞれ図14の(c)、(d)
に示す。図14の(c)中の番号は、経路素数の添字で
ある。例えばグループ2のユーザ2は、以下の鍵生成情
報が発行される。
路素数、法の割当を、それぞれ図14の(c)、(d)
に示す。図14の(c)中の番号は、経路素数の添字で
ある。例えばグループ2のユーザ2は、以下の鍵生成情
報が発行される。
【0103】 グループ2内Z2 =M1**(1/(p2*p6*p7)) mod n2 グループ1間Z12=M1**(1/(p2*p5)) mod n12 Z21=M1**(1/(p6*p7)) mod n12 グループ3間Z23=M1**(1/(p5*p6*p7)) mod n23 Z32=M2**(1/(p2)) mod n23 グループ2のユーザ2に割り当てられたユーザは、上記
鍵生成情報と素数の組(p2、p5、p6、p7、p
8、p10、p14)が配布される。鍵生成は、相手グ
ループ間に割り当てられた素数の逆数以外の素数を消去
することにより得られる。例えばグループ2のユーザ2
と、グループ3のユーザ3との暗号共有鍵K2233
は、経路素数p6が割り当てられるので、Z23を用い
て、 K2233=Z23**(p5*p7) mod n23 ( =M1** (1/p6)) で求める。
鍵生成情報と素数の組(p2、p5、p6、p7、p
8、p10、p14)が配布される。鍵生成は、相手グ
ループ間に割り当てられた素数の逆数以外の素数を消去
することにより得られる。例えばグループ2のユーザ2
と、グループ3のユーザ3との暗号共有鍵K2233
は、経路素数p6が割り当てられるので、Z23を用い
て、 K2233=Z23**(p5*p7) mod n23 ( =M1** (1/p6)) で求める。
【0104】図15は、本発明の他の説明図(グループ
化、法nが1つ、Mが2つ)を示す。これは、図14の
ユーザ(グループ2のユーザ2)に鍵生成情報を交付す
るときの、センタ側の制御フローである。
化、法nが1つ、Mが2つ)を示す。これは、図14の
ユーザ(グループ2のユーザ2)に鍵生成情報を交付す
るときの、センタ側の制御フローである。
【0105】:初期設定する。これは、鍵生成情報作
成装置11の素数生成111が下記の値を初期設定す
る。 ・nij ・M1、M2 ・経路素数(p1、p2・・・p10) :で初期設定した状態で、ユーザ(グループ2のユ
ーザ2)からパスワードpwをセンタに登録したことに
対応して、鍵生成情報の生成を行う。
成装置11の素数生成111が下記の値を初期設定す
る。 ・nij ・M1、M2 ・経路素数(p1、p2・・・p10) :で初期設定した状態で、ユーザ(グループ2のユ
ーザ2)からパスワードpwをセンタに登録したことに
対応して、鍵生成情報の生成を行う。
【0106】 ・pwの乗算 ・n2、n12、n23の素因数で逆数を求める。
【0107】・逆数をMにmod nで巾乗する。 Z2 =M1**(1/(p2*p6*p7*pw) mod n2 Z12=M2**(1/(p2*p5*pw) mod n12 Z21=M1**(1/(p6*p7*pw) mod n12 Z23=M2**(1/(p5*p6*p7*pw) mod n23 Z32=M1**(1/(p2*pw) mod n23 以上によって、センタ側でユーザ(グループ2のユーザ
2)からパスワードpwの通知に対応して、鍵生成情報
作成装置11が、鍵生成情報Z1、Z12、Z21、Z
23、Z32を生成する。
2)からパスワードpwの通知に対応して、鍵生成情報
作成装置11が、鍵生成情報Z1、Z12、Z21、Z
23、Z32を生成する。
【0108】次に、:ユーザ(グループ2のユーザ
2)に下記情報を発行する。 ・Z2、Z12、Z21、Z23、Z32 ・n、n12、n23 ・素数(p2、p5、p6、p7) 以上によって、センタ側でユーザ(グループ2のユーザ
2)からパスワードpwの通知に対応して、暗号鍵を生
成するに必要な情報が通知されることとなる。
2)に下記情報を発行する。 ・Z2、Z12、Z21、Z23、Z32 ・n、n12、n23 ・素数(p2、p5、p6、p7) 以上によって、センタ側でユーザ(グループ2のユーザ
2)からパスワードpwの通知に対応して、暗号鍵を生
成するに必要な情報が通知されることとなる。
【0109】図16は、本発明の説明図(グループ化、
法nが1つ、Mが2つ)を示す。これは、図14のユー
ザ(グループ2のユーザ2)がユーザ(グループ3のユ
ーザ3)と暗号通信するときの、ユーザ(グループ2の
ユーザ2)側の制御フローである。
法nが1つ、Mが2つ)を示す。これは、図14のユー
ザ(グループ2のユーザ2)がユーザ(グループ3のユ
ーザ3)と暗号通信するときの、ユーザ(グループ2の
ユーザ2)側の制御フローである。
【0110】:ユーザ(グループ2のユーザ2)がp
w(パスワード)をセンタに登録する。 :のpwをセンタに登録したことに対応して、セン
タから通知のあった図示情報ををユーザ(グループ2の
ユーザ2)がもらう。
w(パスワード)をセンタに登録する。 :のpwをセンタに登録したことに対応して、セン
タから通知のあった図示情報ををユーザ(グループ2の
ユーザ2)がもらう。
【0111】:ユーザ(グループ2のユーザ2)がユ
ーザ(グループ3のユーザ3)と暗号通信するに先立
ち、鍵(暗号鍵)の作成を行う。 ・経路素数がp6、n23と分かる。これは、図14の
(c)、(d)ユーザ(グループ2のユーザ2)からユ
ーザ(グループ3のユーザ3)に暗号通信しようとして
いるので、経路数がp6、法n23と判明する。
ーザ(グループ3のユーザ3)と暗号通信するに先立
ち、鍵(暗号鍵)の作成を行う。 ・経路素数がp6、n23と分かる。これは、図14の
(c)、(d)ユーザ(グループ2のユーザ2)からユ
ーザ(グループ3のユーザ3)に暗号通信しようとして
いるので、経路数がp6、法n23と判明する。
【0112】 ・K2233=Z23**(pw*p5*p7) mod n23 を計算する。これにより、ユーザ(グループ2のユーザ
2)からユーザ(グループ3のユーザ3)に暗号通信す
るときに必要な暗号鍵K2233が生成されたこととな
る。
2)からユーザ(グループ3のユーザ3)に暗号通信す
るときに必要な暗号鍵K2233が生成されたこととな
る。
【0113】:K2233を鍵にして暗号通信する。 以上によって、センタはグループ化し、グループに法を
1つ、センタ識別情報Mを2つ用い、鍵生成情報を作成
してユーザに渡し、これを受け取ったユーザは図14の
割当表に従い、に示すように暗号鍵K2233を作成
する。これにより、素数の数を削減できる。図16で鍵
生成情報は1度センタから交付されれば、次回移行は
から鍵生成処理を始める。
1つ、センタ識別情報Mを2つ用い、鍵生成情報を作成
してユーザに渡し、これを受け取ったユーザは図14の
割当表に従い、に示すように暗号鍵K2233を作成
する。これにより、素数の数を削減できる。図16で鍵
生成情報は1度センタから交付されれば、次回移行は
から鍵生成処理を始める。
【0114】図17は、本発明の動作説明フローチャー
トを示す。これは、図2の構成の動作説明したものであ
る。図17の(a)は、鍵生成情報作成フローを示す。
トを示す。これは、図2の構成の動作説明したものであ
る。図17の(a)は、鍵生成情報作成フローを示す。
【0115】S1は、ユーザ数Nuを入力する。これ
は、最大使用可能なユーザ数Nuを入力する。S2は、
剰余の法の数Nnを入力する。
は、最大使用可能なユーザ数Nuを入力する。S2は、
剰余の法の数Nnを入力する。
【0116】S3は、素数発生する。S31は、256
ビットの素数を発生する。S32は、発生した素数が良
い素数か、例えばRSA暗号系における暗号解読を困難
にする良い素数か検査する。YESの場合には、S33
で秘密ファイルに書き込み、S34でNn×2個生成し
て必要な数に達すれば終わり、達しないときはS31を
繰り返す。
ビットの素数を発生する。S32は、発生した素数が良
い素数か、例えばRSA暗号系における暗号解読を困難
にする良い素数か検査する。YESの場合には、S33
で秘密ファイルに書き込み、S34でNn×2個生成し
て必要な数に達すれば終わり、達しないときはS31を
繰り返す。
【0117】S4は、剰余の法の生成を行う。S5は、
経路素数の発生を行う。これらは、S3で発生して秘密
ファイルに格納した良い素数から、2個pi、qi(i
=1、2・・・Nn)を取り出し(S41)、計算回路
を用いてその積を計算する(S42)。計算した値を公
開ファイル12に書き込む(S43)。次に経路素数を
発生し、経路素数としてファイル113に格納する。こ
の素数の大きさは、発生すべき素数の総数が表現可能な
ビット列として決めてある。
経路素数の発生を行う。これらは、S3で発生して秘密
ファイルに格納した良い素数から、2個pi、qi(i
=1、2・・・Nn)を取り出し(S41)、計算回路
を用いてその積を計算する(S42)。計算した値を公
開ファイル12に書き込む(S43)。次に経路素数を
発生し、経路素数としてファイル113に格納する。こ
の素数の大きさは、発生すべき素数の総数が表現可能な
ビット列として決めてある。
【0118】S6は、ユーザPWの入力待ちとなる。S
7は、グループ数、ID割当を行う。これらは、ユーザ
が鍵生成情報を受け取るために、PWをセンタに入力す
ると、先ず、グループ番号gと、ユーザ識別番号IDを
割り当てる。この割り当てたユーザ番号に対応する経路
素数を計算する。次にその経路に対応する素数を経路素
数テーブルから索引する。この場合、既述した実施例に
従って、niとそれに対応する経路素数の選択を行う。
このとき、niの因数pi、qiを秘密ファイルから取
り出し、Li=LCM(pi−1、qi−1)を計算す
る。そして、選択された経路素数は、法Li上で、順次
乗算し、更にパスワードを乗算する。最後に、その逆数
を求める。法nで計算し、以下の巾乗剰余演算により、
鍵生成情報を作成する(S81からS91)。経路素
数、鍵生成情報、それに法を各ユーザに配布する(S
9、S10)。
7は、グループ数、ID割当を行う。これらは、ユーザ
が鍵生成情報を受け取るために、PWをセンタに入力す
ると、先ず、グループ番号gと、ユーザ識別番号IDを
割り当てる。この割り当てたユーザ番号に対応する経路
素数を計算する。次にその経路に対応する素数を経路素
数テーブルから索引する。この場合、既述した実施例に
従って、niとそれに対応する経路素数の選択を行う。
このとき、niの因数pi、qiを秘密ファイルから取
り出し、Li=LCM(pi−1、qi−1)を計算す
る。そして、選択された経路素数は、法Li上で、順次
乗算し、更にパスワードを乗算する。最後に、その逆数
を求める。法nで計算し、以下の巾乗剰余演算により、
鍵生成情報を作成する(S81からS91)。経路素
数、鍵生成情報、それに法を各ユーザに配布する(S
9、S10)。
【0119】
【発明の効果】以上説明したように、本発明によれば、
センタで剰余の法nを複数化して経路素数を共有化し
たり、センタ識別情報Mを複数化して経路素数を共有
化したり、ユーザを複数のグループに分解し、各グル
ープ内のユーザに同一の経路素数を共通に割り当て、グ
ループ内の鍵生成用に1つの剰余の法n、グループ間の
鍵生成用に2つの剰余の法nを割り当てたり、各グル
ープ内のユーザに同一の経路素数を共通に割り当て、グ
ループ内の鍵生成用に1つのセンタ識別情報M、グルー
プ間の鍵生成用に2つのセンタ識別情報Mを割り当てた
り、各グループ内のユーザに方向付きで2つの経路素
数を共通に割り当て、グループ内の鍵生成用およびグル
ープ間の鍵生成用に1つの剰余の法nを割り当たり、
各グループ内のユーザに方向付きで2つの経路素数を共
通に割り当て、グループ内の鍵生成用およびグループ間
の鍵生成用に1つのセンタ識別情報Mを割り当てたり、
各グループ内のユーザに同一の経路素数を共通に割り
当て、グループ内の鍵生成用およびグループ間の鍵生成
用に1つの剰余の法nを割り当てると共に、センタ識別
情報Mをグループ内に1つ、グループ間に2つを割り当
てたりする構成を採用しているため、剰余の法nやセン
タ識別情報Mを複数、更にグループ分けしたりし、経路
に割り当てる素数の数を削減することができる。これに
より、センタが保持する経路素数の数を削減し、記憶容
量を少なくできる共に、ユーザ数の上限を大きくするこ
とができる。
センタで剰余の法nを複数化して経路素数を共有化し
たり、センタ識別情報Mを複数化して経路素数を共有
化したり、ユーザを複数のグループに分解し、各グル
ープ内のユーザに同一の経路素数を共通に割り当て、グ
ループ内の鍵生成用に1つの剰余の法n、グループ間の
鍵生成用に2つの剰余の法nを割り当てたり、各グル
ープ内のユーザに同一の経路素数を共通に割り当て、グ
ループ内の鍵生成用に1つのセンタ識別情報M、グルー
プ間の鍵生成用に2つのセンタ識別情報Mを割り当てた
り、各グループ内のユーザに方向付きで2つの経路素
数を共通に割り当て、グループ内の鍵生成用およびグル
ープ間の鍵生成用に1つの剰余の法nを割り当たり、
各グループ内のユーザに方向付きで2つの経路素数を共
通に割り当て、グループ内の鍵生成用およびグループ間
の鍵生成用に1つのセンタ識別情報Mを割り当てたり、
各グループ内のユーザに同一の経路素数を共通に割り
当て、グループ内の鍵生成用およびグループ間の鍵生成
用に1つの剰余の法nを割り当てると共に、センタ識別
情報Mをグループ内に1つ、グループ間に2つを割り当
てたりする構成を採用しているため、剰余の法nやセン
タ識別情報Mを複数、更にグループ分けしたりし、経路
に割り当てる素数の数を削減することができる。これに
より、センタが保持する経路素数の数を削減し、記憶容
量を少なくできる共に、ユーザ数の上限を大きくするこ
とができる。
【図面の簡単な説明】
【図1】本発明の1実施例構成図である。
【図2】本発明の鍵生成情報作成装置の構成図である。
【図3】本発明の1実施例説明図である。
【図4】本発明の説明図である。
【図5】本発明の説明図である。
【図6】本発明の説明図である。
【図7】本発明の説明図である。
【図8】本発明の他の実施例説明図(その1)である。
【図9】本発明の他の説明図である。
【図10】本発明の他の説明図である。
【図11】本発明の他の実施例説明図(その2)であ
る。
る。
【図12】本発明の他の説明図である。
【図13】本発明の他の説明図である。
【図14】本発明の他の実施例説明図(その3)であ
る。
る。
【図15】本発明の他の説明図である。
【図16】本発明の他の説明図である。
【図17】本発明の動作説明フローチャートである。
【図18】従来技術の説明図である。
1:センタ 11:鍵生成情報作成装置 12:公開ファイル 111:素数生成 112:演算装置 113:ファイル 114:秘密ファイル 115:入出力装置 116:制御装置 2:鍵生成手段 3:暗号処理手段
Claims (8)
- 【請求項1】ユーザ間で暗号鍵を用いて暗号通信する暗
号鍵共有方式において、 センタ側でユーザ毎の鍵生成情報Zを Z=M**(1/(PW*(経路素数pの積)) mod n によって生成してユーザに提供し、 ユーザがユーザ間の暗号鍵Kを K=Z**(PW*(通信相手以外の経路素数pの積)) mod n によって生成するシステムで、 センタで剰余の法nを複数化して経路素数を共有化し、
経路素数の数を削減するように構成したことを特徴とす
る暗号鍵共有方式。ここで、 M:センタ識別情報 PW:ユーザのパスワード **:ベキ乗 mod n:nの剰余 - 【請求項2】上記システムで、 センタでセンタ識別情報Mを複数化して経路素数を共有
化し、経路素数の数を削減するように構成したことを特
徴とする暗号鍵共有方式。 - 【請求項3】上記システムで、 センタで剰余の法nを複数化、およびセンタ識別情報M
を複数化して経路素数を共有化し、経路素数の数を削減
するように構成したことを特徴とする暗号鍵共有方式。 - 【請求項4】上記システムで、 センタでユーザを複数のグループに分解し、各グループ
内のユーザに同一の経路素数を共通に割り当て、グルー
プ内の鍵生成用に1つの剰余の法n、グループ間の鍵生
成用に2つの剰余の法nを割り当て、経路素数の数を削
減するように構成したことを特徴とする暗号鍵共有方
式。 - 【請求項5】上記システムで、 センタでユーザを複数のグループに分解し、各グループ
内のユーザに同一の経路素数を共通に割り当て、グルー
プ内の鍵生成用に1つのセンタ識別情報M、グループ間
の鍵生成用に2つのセンタ識別情報Mを割り当て、経路
素数の数を削減するように構成したことを特徴とする暗
号鍵共有方式。 - 【請求項6】上記システムで、 センタでユーザを複数のグループに分解し、各グループ
内のユーザに方向付きで2つの経路素数を共通に割り当
て、グループ内の鍵生成用およびグループ間の鍵生成用
に1つの剰余の法nを割り当て、経路素数の数を削減す
るように構成したことを特徴とする暗号鍵共有方式。 - 【請求項7】上記システムで、 センタでユーザを複数のグループに分解し、各グループ
内のユーザに方向付きで2つの経路素数を共通に割り当
て、グループ内の鍵生成用およびグループ間の鍵生成用
に1つのセンタ識別情報Mを割り当て、経路素数の数を
削減するように構成したことを特徴とする暗号鍵共有方
式。 - 【請求項8】上記システムで、 センタでユーザを複数のグループに分解し、各グループ
内のユーザに同一の経路素数を共通に割り当て、グルー
プ内の鍵生成用およびグループ間の鍵生成用に1つの剰
余の法nを割り当てると共に、複数のセンタ識別情報M
を割り当て、経路素数の数を削減するように構成したこ
とを特徴とする暗号鍵共有方式。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP4080979A JPH05281906A (ja) | 1992-04-02 | 1992-04-02 | 暗号鍵共有方式 |
US08/041,453 US5325433A (en) | 1992-04-02 | 1993-04-02 | Encryption communication system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP4080979A JPH05281906A (ja) | 1992-04-02 | 1992-04-02 | 暗号鍵共有方式 |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH05281906A true JPH05281906A (ja) | 1993-10-29 |
Family
ID=13733627
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP4080979A Withdrawn JPH05281906A (ja) | 1992-04-02 | 1992-04-02 | 暗号鍵共有方式 |
Country Status (2)
Country | Link |
---|---|
US (1) | US5325433A (ja) |
JP (1) | JPH05281906A (ja) |
Families Citing this family (32)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB2267419B (en) * | 1992-05-29 | 1996-11-27 | Toshiba Kk | Data processing apparatus |
WO1995002292A1 (fr) * | 1993-07-07 | 1995-01-19 | Ntt Mobile Communications Network Inc. | Procede de controle de la confidentialite de communications personnelles |
WO1995004428A1 (en) * | 1993-08-02 | 1995-02-09 | Solomon, Hadar | Apparatus and method for creating and transmitting confidential documents |
JP3548215B2 (ja) * | 1993-12-22 | 2004-07-28 | キヤノン株式会社 | 通信方法及びそのシステム |
US6026167A (en) * | 1994-06-10 | 2000-02-15 | Sun Microsystems, Inc. | Method and apparatus for sending secure datagram multicasts |
US5812666A (en) * | 1995-03-31 | 1998-09-22 | Pitney Bowes Inc. | Cryptographic key management and validation system |
US5680456A (en) * | 1995-03-31 | 1997-10-21 | Pitney Bowes Inc. | Method of manufacturing generic meters in a key management system |
US5742682A (en) * | 1995-03-31 | 1998-04-21 | Pitney Bowes Inc. | Method of manufacturing secure boxes in a key management system |
US5661803A (en) * | 1995-03-31 | 1997-08-26 | Pitney Bowes Inc. | Method of token verification in a key management system |
US6052780A (en) * | 1996-09-12 | 2000-04-18 | Open Security Solutions, Llc | Computer system and process for accessing an encrypted and self-decrypting digital information product while restricting access to decrypted digital information |
US6603857B1 (en) * | 1997-07-14 | 2003-08-05 | Entrust Technologies Limited | Method and apparatus for controlling release of time sensitive information |
US6816821B1 (en) | 1997-09-03 | 2004-11-09 | Stmicroelectronics Limited | Post image techniques |
GB9718688D0 (en) * | 1997-09-03 | 1997-11-12 | Sgs Thomson Microelectronics | Post image techniques |
JPH11275068A (ja) * | 1998-03-20 | 1999-10-08 | Fujitsu Ltd | 鍵管理サーバ、チャットシステムの端末装置、チャットシステム及び記録媒体 |
US7158805B1 (en) * | 1999-02-11 | 2007-01-02 | Smartint Co., Ltd. | Telecommunications system and terminal apparatus for exchanging terminal stored information and automatically updating changed information among terminal users |
AU2001292910B2 (en) * | 2000-09-22 | 2008-05-01 | Sca Ipla Holdings, Inc. | Systems and methods for preventing unauthorized use of digital content |
US7237123B2 (en) * | 2000-09-22 | 2007-06-26 | Ecd Systems, Inc. | Systems and methods for preventing unauthorized use of digital content |
JP2004512734A (ja) * | 2000-10-18 | 2004-04-22 | コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ | 共通暗号化鍵の生成 |
US7360075B2 (en) * | 2001-02-12 | 2008-04-15 | Aventail Corporation, A Wholly Owned Subsidiary Of Sonicwall, Inc. | Method and apparatus for providing secure streaming data transmission facilities using unreliable protocols |
US7353380B2 (en) * | 2001-02-12 | 2008-04-01 | Aventail, Llc, A Subsidiary Of Sonicwall, Inc. | Method and apparatus for providing secure streaming data transmission facilities using unreliable protocols |
US7383329B2 (en) | 2001-02-13 | 2008-06-03 | Aventail, Llc | Distributed cache for state transfer operations |
US7016494B2 (en) * | 2001-03-26 | 2006-03-21 | Hewlett-Packard Development Company, L.P. | Multiple cryptographic key precompute and store |
US7328453B2 (en) | 2001-05-09 | 2008-02-05 | Ecd Systems, Inc. | Systems and methods for the prevention of unauthorized use and manipulation of digital content |
US7159038B2 (en) * | 2001-07-26 | 2007-01-02 | Victor John Rychlicki | Method of addressing networked devices |
KR100581590B1 (ko) * | 2003-06-27 | 2006-05-22 | 주식회사 케이티 | 이중 요소 인증된 키 교환 방법 및 이를 이용한 인증방법과 그 방법을 포함하는 프로그램이 저장된 기록매체 |
JP4707992B2 (ja) * | 2004-10-22 | 2011-06-22 | 富士通株式会社 | 暗号化通信システム |
US20070192602A1 (en) * | 2004-12-17 | 2007-08-16 | Telefonaktiebolaget Lm Ericsson (Publ) | Clone resistant mutual authentication in a radio communication network |
JP2006237860A (ja) * | 2005-02-23 | 2006-09-07 | Canon Inc | 複数鍵生成方法及び改竄検証方法、並びに装置、記憶媒体、プログラム |
US7499552B2 (en) | 2006-01-11 | 2009-03-03 | International Business Machines Corporation | Cipher method and system for verifying a decryption of an encrypted user data key |
US7522723B1 (en) * | 2008-05-29 | 2009-04-21 | Cheman Shaik | Password self encryption method and system and encryption by keys generated from personal secret information |
KR20170091951A (ko) * | 2016-02-02 | 2017-08-10 | 에스프린팅솔루션 주식회사 | 전자 디바이스에게 보안을 제공하기 위한 방법 및 장치 |
WO2018200824A1 (en) * | 2017-04-28 | 2018-11-01 | University Of North Dakota | Lightweight key exchange protocol |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4799258A (en) * | 1984-02-13 | 1989-01-17 | National Research Development Corporation | Apparatus and methods for granting access to computers |
GB8819767D0 (en) * | 1988-08-19 | 1989-07-05 | Ncr Co | Public key diversification method |
EP0482233B1 (en) * | 1990-10-24 | 1995-03-08 | Omnisec Ag | Cryptographic system allowing encrypted communication between users with a secure mutual cipher key determined without user interaction |
-
1992
- 1992-04-02 JP JP4080979A patent/JPH05281906A/ja not_active Withdrawn
-
1993
- 1993-04-02 US US08/041,453 patent/US5325433A/en not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
US5325433A (en) | 1994-06-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JPH05281906A (ja) | 暗号鍵共有方式 | |
US8209533B2 (en) | Key agreement and transport protocol | |
EP0873617B1 (en) | Key agreement and transport protocol with implicit signatures | |
CA2579259C (en) | Key agreement and transport protocol with implicit signatures | |
CA2525894C (en) | Key agreement and transport protocol | |
US5889865A (en) | Key agreement and transport protocol with implicit signatures | |
US7397917B2 (en) | Method and apparatus for generating a cryptographic key | |
EP1488569B1 (en) | Authenticated key exchange | |
US20020021803A1 (en) | Cryptographic identification and digital signature method using efficient elliptic curve | |
US6993136B2 (en) | Cryptographic key exchange method using efficient elliptic curve | |
Newman et al. | Public key management for network security | |
US7505585B2 (en) | Method of generating cryptographic key using elliptic curve and expansion in joint sparse form and using same | |
EP2104268B1 (en) | Key agreement and transport protocol with implicit signatures | |
JP2948605B2 (ja) | 暗号鍵共通の暗号通信用端末 | |
JP2005234069A (ja) | 相互検証を可能とする秘密情報分配装置、秘密情報検証装置、秘密情報照合装置、秘密情報分配システム及びプログラム | |
JPH01165241A (ja) | 暗号鍵共有装置 | |
Madaan et al. | Decentralized Access Control Infrastructure for Enterprise Digital Asset Management | |
JPH02246640A (ja) | 管理センタの認証情報を用いる共有鍵配送方式 | |
JPS6130827A (ja) | キ−配送方式 | |
JPH01212040A (ja) | 鍵共有方式 | |
JPS6326137A (ja) | 公開鍵暗号システム | |
JP2001257667A (ja) | 排他的鍵共有法 | |
JPS63233630A (ja) | 秘密鍵配送方式 | |
JPS63180237A (ja) | 同報暗号通信方式 | |
JPH01836A (ja) | 複数局間秘密鍵作成方式 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A300 | Application deemed to be withdrawn because no request for examination was validly filed |
Free format text: JAPANESE INTERMEDIATE CODE: A300 Effective date: 19990608 |