(57)【特許請求の範囲】
【請求項１】
送信者側装置が，受信者の公開鍵を用いて送信データを暗号化し，受信者側装置へ送信する公開鍵暗号通信方法であって，
前記送信者側装置は，演算手段と，べき乗算手段と，剰余演算手段と，メモリ手段と，乱数生成手段と，通信手段と，を備え，
前記受信者側装置は，演算手段と，べき乗算手段と，剰余演算手段と，メモリ手段と，通信手段と，を備え，
【数１】
0004304896.tif 000036
を受信者の秘密鍵(p,q)とし，
【数２】
0004304896.tif 000037
を前記受信者の公開鍵(N,k,G,H)とした場合に，
(１)前記送信者側装置は，平文x(x∈{0,1}n)に対して，乱数ｒ∈{0,1}k0を選び，
【数３】
0004304896.tif 000038
を計算し(但し，n+k0+k1=k)，さらに
【数４】
0004304896.tif 000039
に対して，
【数５】
0004304896.tif 000040
を計算し，その結果ｙを暗号文として，該受信者側装置に送信し，
(２)前記受信者側装置は，前記秘密鍵(p,q)を用いて，前記暗号文ｙが平方剰余であることを検査し（平方剰余でない場合は暗号文を拒否する），さらに前記暗号文ｙから，
【数６】
0004304896.tif 000041
（2≦i≦d）
に対して，
【数７】
0004304896.tif 000042
を計算し，さらに，
【数８】
0004304896.tif 000043
と置き，
【数９】
0004304896.tif 000044
を計算し，
【数１０】
0004304896.tif 000045
に示す前記暗号文ｙの復号化結果を求める(但し，復号化結果が*の場合は，該受信者側装置は該暗号文ｙを拒否するものとする)，
ことを特徴とする公開鍵暗号通信方法。
【請求項２】
請求項１に記載の公開鍵暗号通信方法において，
前記受信者側装置は，さらに，鍵生成手段を備え，
前記受信者側装置は，前記公開鍵(N,k,G,H)を生成し，公開する
ことを特徴とする公開鍵暗号通信方法。
【請求項３】
送信者側装置が，受信者の公開鍵を用いて送信データを暗号化し，受信者側装置へ送信する公開鍵暗号通信方法であって，
前記送信者側装置は，演算手段と，べき乗算手段と，剰余演算手段と，メモリ手段と，乱数生成手段と，通信手段と，を備え，
前記受信者側装置は，演算手段と，べき乗算手段と，剰余演算手段と，メモリ手段と，通信手段と，を備え，
【数１１】
0004304896.tif 000046
を受信者の秘密鍵(p,q)とし，
【数１２】
0004304896.tif 000047
を前記受信者の公開鍵(N,k,G,H)とした場合に，
(１)前記送信者側装置は，平文x(x∈{0,1}n)に対して，乱数ｒ∈{0,1}k0を選び，
【数１３】
0004304896.tif 000048
を計算し(但し，n+k0+k1=k)，さらに
【数１４】
0004304896.tif 000049
に対して，
【数１５】
0004304896.tif 000050
を計算し，その結果ｙを暗号文として，該受信者側装置に送信し，
(２)前記受信者側装置は，前記秘密鍵(p,q)を用いて，前記暗号文ｙが平方剰余であることを検査し（平方剰余でない場合は暗号文を拒否する），さらに前記暗号文ｙから，
【数１６】
0004304896.tif 000051
（2≦i≦d）
に対して，
【数１７】
0004304896.tif 000052
を計算し，さらに，
【数１８】
0004304896.tif 000053
と置き，
【数１９】
0004304896.tif 000054
を計算し，
【数２０】
0004304896.tif 000055
に示す前記暗号文ｙの復号化結果を求める(但し，復号化結果が*の場合は，該受信者側装置は該暗号文ｙを拒否するものとする)，
ことを特徴とする公開鍵暗号通信方法。
【請求項４】
請求項３に記載の公開鍵暗号通信方法において，
前記受信者側装置は，さらに，鍵生成手段を備え，
前記受信者側装置は，前記公開鍵(N,k,G,H)を生成し，公開する
ことを特徴とする公開鍵暗号通信方法。
【請求項５】
請求項１から請求項４のいずれか一に記載の公開鍵暗号通信方法において，
前記送信者側装置は，Jacobi記号(w/N)またはwの値とN/2の大小関係を表わす情報を，公開または前記受信者側装置に送信する
ことを特徴とする公開鍵暗号通信方法。
【請求項６】
請求項２または４に記載の公開鍵暗号通信方法において，
前記受信者側装置は，前記秘密鍵である素数を，別なる素数p'に対して，2p'+1の形の素数を選ぶ
ことを特徴とする公開鍵暗号通信方法。
【請求項７】
請求項２，４，６のいずれか一に記載の公開鍵暗号通信方法において，
前記受信者側装置は，前記ｄ(ｄ≧１)の値を入力として取り込む
ことを特徴とする公開鍵暗号通信方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は，N=pdqを法とする剰余環上のべき乗根計算を高速に行う方法，および，該計算法を用いた公開鍵暗号方法に関する。
【０００２】
【従来の技術】
N=pdqを法とする剰余環上のべき乗根計算方法としては，文献１「T.Takagi:Fast RSA-Type Cryptosystem Modulo pkq, Proc. of CRYPTO'98」が知られている。
【０００３】
また，公開鍵暗号方法については，現在まで様々な方法が提案されている。なかでも，文献２「R.L. Rivest, A. Shamir, L. Adleman : A Method for Obtaining Digital Signatures and Public-Key Cryptosystems, Commun. of the ACM, Vol.21, No.2, pp.120-126, 1978.」に掲載されている方法が最も有名であり，最も実用化されている公開鍵暗号である。その他には，文献３「V.S. Miller : Use of Elliptic Curves in Cryptography, Proc. of Crypto'85, LNCS218, Springer-Verlag, pp.417-426 (1985)」，文献４「N. Koblitz : Elliptic Curve Cryptosystems, Math. Comp., 48, 177, pp.203-209 (1987)」等に記載の楕円曲線を用いた方法が効率的な公開鍵暗号として知られている。
【０００４】
安全性について証明可能な方法として，まず，選択平文攻撃を対象としたものは，文献５「M.O. Rabin : Digital Signatures and Public-Key Encryptions as Intractable as Factorization, MIT, Technical Report, MIT/LCS/TR-212 (1979)」に記載されている暗号方法，文献６「T. El Gamal : A Public Key Cryptosystem and a Signature Scheme Based on Discrete Logarithms, IEEE Trans. On Information Theory, IT-31, 4, pp.469-472(1985)」に記載されている暗号方法，文献７「S. Goldwasser and S. Micali : Probabilistic Encryption, JCSS, 28, 2, pp.270-299 (1984) 」に記載されている暗号方法，文献８「M. Blum and S. Goldwasser : An Efficient Probabilistic Public-Key Encryption Scheme which Hides All Partial Information, Proc. of Crypto'84, LNCS196, Springer-Verlag, pp.289-299 (1985)」に記載されている暗号方法，文献９「S. Goldwasser and M. Bellare : Lecture Notes on Cryptography, http:/www-cse.ucsd.edu/users/ mihir/ (1997)」に記載されている暗号方法，文献１０「T. Okamoto and S. Uchiyama : A New Public-Key Cryptosystem as Secure as Factoring, Proc. of Eurocrypt'98, LNCS1403, Springer Verlag, pp.308-318 (1998)」に記載されている暗号方法，などが知られている。
【０００５】
また，選択暗号文攻撃に対して安全性証明可能な方法としては，文献１１「D. Dolve, C. Dwork and M. Naor : Non-Malleable Cryptography, In 23rd Annual ACM Symposium on Theory of Computing, pp.542-552 (1991)」に記載されている暗号方法，文献１２「M. Naor and M. Yung : Public-Key Cryptosystems Provably Secure against Chosen Ciphertext Attacks, Proc. of STOC, ACM Press, pp.427-437 (1990)」に記載されている暗号方法，文献１３「R. Cramer and V. Shoup : A Practical Public Key Cryptosystem Provably Secure against Adaptive Chosen Ciphertext Attack, Proc. of Crypto98, LNCS1462, Springer-Verlag, pp.13-25 (1998)」に記載されている暗号方法，などが知られている。
【０００６】
また，文献１４「M. Bellare and P. Rogaway : Optimal Asymmetric Encryption  How to Encrypt with RSA, Proc. of Eurocrypt'94, LNCS950, Springer Verlag, pp.92-111 (1994)」に記載されている暗号方法においては，一方向性置換の逆関数を計算することの困難性を前提に適応的選択暗号文攻撃に対して強秘匿であると言われてきたが，最近，文献１５「V. Shoup : OAEP Reconsidered. Available on the e-print library (2000/060), November 2000」にて問題点が指摘され，一般的な見地からは安全性の証明が不十分であることが指摘された。
【０００７】
また，文献１６「M. Bellare, A. Desai, D. Pointcheval and P. Rogaway : Relations Among Notions of Security for Public-Key Encryption Schemes, Proc. of Crypto'98, LNCS1462, Springer Verlag, pp.26-45 (1998)」では，IND-CCA2（適応的選択暗号文攻撃に対して強秘匿であること）とNM-CCA2（適応的選択暗号文攻撃に対して頑強であること）の等価性が示され，現在，この条件を満たす公開鍵暗号が最も安全であると考えられている。
【０００８】
【発明が解決しようとする課題】
公開鍵暗号においては，数論アルゴリズムを用いる方法が非常に多く，そのため共通鍵暗号と比較して処理速度が遅いと言う問題がある。
【０００９】
【課題を解決するための手段】
本発明では，公開鍵暗号の復号化処理等で良く用いられる、べき乗根の計算を高速に行うための方法を提供する。
本発明による計算方法では，上記文献１に記載されているべき乗根計算方法に比べて，より高速な処理を実現できる。さらに，本発明の計算方法を復号化処理に用いた高安全・高効率の公開鍵暗号方法を提供する。
【００１０】
本発明によるべき乗根計算方法では，数論アルゴリズムにおいて計算負担の大きいモジュラー積の個数を削減する。具体的には，N=pdq（p,qは素数，d>1）を法とする剰余環において，n乗剰余（n乗根を持つ意味）であるy∈ZNに対して，yのn乗根である値xを，
【００１１】
【数２３】
0004304896.tif 000002
として，
【００１２】
【数２４】
0004304896.tif 000003
により，x0,x1,…,xd-1を計算する。
【００１３】
また，本発明の計算方法を，文献１７「西岡，佐藤，瀬戸：HIME(R)，情報セキュリティ研究会（ISEC）5月2001」に記載されている公開鍵暗号方法に適用することにより、安全性が高く、効率の良い公開鍵暗号方法を提供する。
具体的には，
【００１４】
【数２５】
0004304896.tif 000004
なる秘密鍵(p,q)を作成し，さらに，
【００１５】
【数２６】
0004304896.tif 000005
なる公開鍵(N,k,G,H)を作成する。
【００１６】
(１)送信者は，平文x(x∈{0,1}n)に対して，乱数ｒ∈{0,1}k0を選び，
【００１７】
【数２７】
0004304896.tif 000006
を計算し(但し，n+k0+k1=k)，さらに
【００１８】
【数２８】
0004304896.tif 000007
に対して，
【００１９】
【数２９】
0004304896.tif 000008
を暗号文として，該受信者に送信する。
【００２０】
(２)受信者は，自身の秘密鍵(p,q)を用いて，暗号文が平方剰余であることを検査し（平方剰余でない場合は暗号文を拒否する），さらに暗号文から，
【００２１】
【数３０】
0004304896.tif 000009
に対して，
【００２２】
【数３１】
0004304896.tif 000010
を計算し，さらに，
【００２３】
【数３２】
0004304896.tif 000011
と置き，
【００２４】
【数３３】
0004304896.tif 000012
を計算し，
【００２５】
【数３４】
0004304896.tif 000013
により，暗号文を復号化する(但し，復号化結果が*の場合は，該受信者は該暗号文を拒否するものとする)。
【００２６】
【発明の実施の形態】
以下，図面を用いて，本発明の実施例について説明する。
図１は，本発明の実施例１のステップを表わすフローチャートである。
図２は，本発明の実施例１の計算方法を実現する計算装置100を示す。
図３は，本発明の実施例２，３のシステム構成を示す図である。このシステムは，送信者側装置200と受信者側装置300から構成されている。さらに，送信者側装置200と受信者側装置300は通信回線400で接続されている。
【００２７】
図４は，実施例２，３における送信者側装置200の内部構成を示す。送信者側装置200は，乱数生成手段201，べき乗算手段202，演算手段203，剰余演算手段204，メモリ205，通信装置206，入力装置207，暗号化装置208，を備えている。
図５は，実施例２，３における受信者側装置300の内部構成を示す。受信者側装置300は，鍵生成手段301，べき乗算手段302，剰余演算手段303，演算手段304，メモリ305，通信装置306，復号化装置307，を備えている。
図６は，実施例２の概要を示す図である。
図７は，実施例３の概要を示す図である。
【００２８】
（実施例１）
本実施例は，合成数N=pdq（p,qは素数，d>1）を法とする剰余環上のn乗根（nは2以上の自然数）を計算する方法について説明する。
【００２９】
ｎ乗剰余（ｎ乗根を持つ意味）であるy∈ZNに対して，yのｎ乗根である値xを，
【００３０】
【数３５】
0004304896.tif 000014
として，x0,x1,…,xd-1を計算することでyのｎ乗根を計算する。
具体的には，y∈ZNを計算装置100内の入力装置に入力し，演算装置101，べき乗算器102，剰余演算器103，メモリ104を用いて，
【００３１】
【数３６】
0004304896.tif 000015
により，x0,x1,…,xd-1を計算する。計算結果であるxは出力装置を用いて出力される（ここで，nの値によってはyのn乗根は複数存在する場合がある点に注意する。）。
【００３２】
一般に，このような計算では，モジュラー積の計算に処理時間がかかる。以下では，n=d=2の場合において，本実施例による計算方法と上記文献１に記載されている計算方法の効率性の比較をモジュラー積の個数の立場から行う。
【００３３】
Nを法とする剰余環上のモジュラー積を規準とし，モジュラー積1回の計算時間をｔとする。このとき，法がn倍になると計算時間はn2倍になると仮定する。本実施例の計算方法による処理時間をT1，上記文献１の計算方法による処理時間をT2とすると，T1=|p|t/3+11t/6，T2=|p|t/3+25t/6となり，本実施例の方がより高速に計算を行うことができる。
【００３４】
特に、ICカードのような計算能力の低い媒体を利用した場合や一度に多くのべき乗根計算を行うシステムに置いて，本実施例の方法は有効である。
【００３５】
（実施例２）
本実施例は，平文(メッセージともいう)の送信者が受信者に対して，送信データとなるメッセージを暗号通信によって送信する場合について説明する。
本実施例による公開鍵暗号は，上記文献１７に記載されている公開鍵暗号方法に実施例１の計算方法を復号化処理に適用した場合に相当する。
図３は，本実施例のシステム構成を示す。図４は，実施例２の手順概要を示す図である。
【００３６】
１．鍵生成処理
受信者は，予め，受信者側装置200内の鍵生成部201を用いて，
【００３７】
【数３７】
0004304896.tif 000016
なる秘密鍵，
【００３８】
【数３８】
0004304896.tif 000017
なる公開鍵を作成する(但し，k=k0+k1+n)。ただし，ｄの値は本システムの管理者，または受信者があらかじめ，または，必要に応じて定め，上記鍵生成部はその値を取り込むものとする。
【００３９】
また，公開情報を通信回線300などを介して出力し，送信者側装置100へ送付するか，または公開する。公開する方法として，例えば第３者(公開情報管理機関)への登録など，周知の方法を用いることが可能である。その他の情報については，メモリ205に格納する。
【００４０】
２．暗復号化処理
(１)送信者側装置100は，送信者の操作により，平文ｘ∈{0,1}nに対して，乱数生成部101を用いて乱数ｒ∈{0,1}k0を選び，演算部103を用いて，
【００４１】
【数３９】
0004304896.tif 000018
を計算し，
【００４２】
【数４０】
0004304896.tif 000019
と置く。さらに
【００４３】
【数４１】
0004304896.tif 000020
計算する。ｙを暗号文とし，通信装置106を用いて通信回線300を介して受信者の受信者側装置200に送信する。
【００４４】
(２)受信者側装置200は，受信者の操作により，上記秘密情報と，演算部204を用いて，暗号文が平方剰余であることを検査し，平方剰余でない場合は暗号文を拒否する。暗号文yが平方剰余か否かを検査する方法としては，
yp-1/2≡1 (mod p)かつ
yq-1/2≡1 (mod q)が成立すること確認すればよい。さらに暗号文yから，
【００４５】
【数４２】
0004304896.tif 000021
に対して，
【００４６】
【数４３】
0004304896.tif 000022
を計算し，さらに，
【００４７】
【数４４】
0004304896.tif 000023
と置き，
【００４８】
【数４５】
0004304896.tif 000024
を計算し，
【００４９】
【数４６】
0004304896.tif 000025
により，暗号文を復号化する(但し，復号化結果が*の場合は，該受信者は該暗号文を拒否するものとする)。
また，秘密鍵p,qは，素数p',q'からp=2p'+1,q=2q'+1により作成することも可能である。
【００５０】
本実施例の公開鍵暗号方法においては，ｄ(ｄ≧１)の値は変更可能である。たとえば，平文のビット長が常に小さい場合，ｎの素因数分解が困難である範囲においてｄの値を大きくすることにより，復号化処理を高速にすることが可能である。
【００５１】
本実施例による公開鍵暗号方法では，Nの素因数分解問題の困難性を前提にして，選択暗号文攻撃に対して強秘匿であることが証明できる。証明のアウトラインは以下の通り：本実施例による公開鍵暗号方法を破ることができるアルゴリズムが存在したと仮定すると(適応的選択暗号文攻撃における強秘匿性の意味において。定義は，例えば，上記文献１４に記載されている)，そのアルゴリズムを用いて，Nの素因数分解を行うアルゴリズムを構築できる。これより，本実施例の公開鍵暗号方法は素因数分解問題の困難性を前提として，IND-CCA2であることが証明できる。
【００５２】
また，本実施例による方法では，復号化処理において２次方程式を解いているが，事前にJacobi記号(w/N)の値を公開または送信したり，wの値とN/2の大小関係を表わす情報を公開または送信することにより、解を限定することも可能である。
【００５３】
Jacobi記号の定義および計算方法については，例えば文献１８「A.J. Menezes, P.C. van Oorschot, S.A. Vanstone: Jacobi Symbol: Definition & Algorithm, Handbook of Applied Cryptography, CRC Press, pp.73, 1996」または，文献１９「H. Cohen: Jacobi Symbol : Definition & Algorithm, A Course in Computational Algebraic Number Theory, Graduate Texts in Math. 138, Springer-Verlag, New York, pp.27-31, 1993」に記載されている。
【００５４】
本実施例による公開鍵暗号方法は，共通鍵暗号におけるデータ暗号化鍵の配送を目的として，共通鍵暗号と一緒に使用することも可能である。
【００５５】
(実施例３)
本実施例は，実施例２の変形例を与える。図７は，実施例３の手順概要を示す図である。
【００５６】
１．鍵生成処理
受信者は，予め，受信者側装置200内の鍵生成部201を用いて，
【００５７】
【数４７】
0004304896.tif 000026
なる秘密鍵(p,q)を作成し，
【００５８】
【数４８】
0004304896.tif 000027
なる公開鍵(N,k,G,H)を作成する。ただし，ｄの値は本システムの管理者，または受信者があらかじめ，または，必要に応じて定め，上記鍵生成部はその値を取り込むものとする。
また，公開情報を通信回線300などを介して出力し，送信者側装置100へ送付するか，または公開する。公開する方法として，例えば第３者(公開情報管理機関)への登録など，周知の方法を用いることが可能である。その他の情報については，メモリ205に格納する。
【００５９】
２．暗復号化処理
(１)送信者側装置100は，送信者の操作により，
平文ｘ∈{0,1}nに対して，乱数生成部101を用いて乱数
ｒ∈{0,1}k0を選び，演算部103，べき乗算部102，剰余演算部104を用いて，
【００６０】
【数４９】
0004304896.tif 000028
を計算し，
【００６１】
【数５０】
0004304896.tif 000029
と置く。さらに，
【００６２】
【数５１】
0004304896.tif 000030
を計算する。
【００６３】
(２) 受信者側装置200は，受信者の操作により，上記秘密情報と，演算部204を用いて，暗号文が平方剰余であることを検査し，平方剰余でない場合は暗号文を拒否する。暗号文yが平方剰余か否かを検査する方法としては，yp-1/2≡1 (mod p)かつyq-1/2≡1 (mod q)が成立すること確認すればよい。さらに暗号文yから，
【００６４】
【数５２】
0004304896.tif 000031
に対して，
【００６５】
【数５３】
0004304896.tif 000032
を計算し，さらに，
【００６６】
【数５４】
0004304896.tif 000033
と置き，
【００６７】
【数５５】
0004304896.tif 000034
を計算し，
【００６８】
【数５６】
0004304896.tif 000035
により，暗号文を復号化する(但し，復号化結果が*の場合は，該受信者は該暗号文を拒否するものとする)。
【００６９】
また，秘密鍵p,qは，素数p',q'からp=2p'+1,q=2q'+1により作成することも可能である。
【００７０】
本実施例の公開鍵暗号方法においては，ｄ(ｄ≧１)の値は変更可能である。たとえば，平文のビット長が常に小さい場合，ｎの素因数分解が困難である範囲においてｄの値を大きくすることにより，復号化処理を高速にすることが可能である。
【００７１】
本実施例による方法では，実施例２の場合と同様，Nの素因数分解問題の困難性を前提としてIND-CCA2であることが証明できる。また，実施例２の場合同様，復号化処理において， Jacobi記号(w/N)の値を公開または送信したり，wの値とN/2の大小関係を表わす情報を公開または送信することにより、２次方程式の解を限定することも可能である。
【００７２】
実施例２及び実施例３による公開鍵暗号方法は，共通鍵暗号におけるデータ暗号化鍵の配送を目的として，共通鍵暗号と一緒に使用することも可能である。
【００７３】
以上，実施例２，３では，送信者と受信者が各々の装置を利用して暗号通信を行うという一般形で述べたが，具体的には様々なシステムに適用される。例えば，電子ショッピングシステムでは，送信者はユーザであり，送信者側装置はパソコンなどの計算機であり，受信者は小売店，受信者側装置はパソコンなどの計算機となる。このとき，ユーザの商品等の注文書は共通鍵暗号で暗号化されることが多く，その際の暗号化鍵を本実施例による方法により暗号化されて小売店側装置に送信される。また，電子メールシステムでは，各々の装置はパソコンなどの計算機であり，送信文(メール)は共通鍵暗号で暗号化されることが多い。その場合は，共通鍵が本実施例による方法により暗号化されて受信者の計算機に送信される。その他にも，従来の公開鍵暗号が使われている様々なシステムに適用することが可能である。
【００７４】
本実施例における各計算は，CPUがメモリ内の各プログラムを実行することにより行われるものとして説明したが，プログラムだけではなく，いずれかがハードウエア化された演算装置であって，他の演算装置や，CPUと，データのやりとりを行うものであっても良い。
【００７５】
【発明の効果】
本発明のべき乗根計算方法によれば，高速にべき乗根を計算できる。
【００７６】
また，この計算方法を用いた本発明の公開鍵鍵暗号は，最も強力な攻撃法である適応的選択暗号文攻撃に対してもより安全であり，かつ，高速な暗号化及び復号化処理が可能である。
【００７７】
これにより，安全かつ効率的な公開鍵暗号方法，暗号通信方法と，その応用装置，システムを実現することができる。
【図面の簡単な説明】
【図１】実施例１の各ステップのフローチャートを示す図である。
【図２】実施例１における計算装置の内部構成を示す図である。
【図３】実施例２および実施例３のシステム構成を示す図である。
【図４】実施例２および実施例３における送信者側装置の内部構成を示す図である。
【図５】実施例２および実施例３における受信者側装置の内部構成を示す図である。
【図６】実施例２の概要を示す図である。
【図７】実施例３の概要を示す図である。
【符号の説明】
１００…計算装置，１０１…計算装置１００内の入力装置，１０２…計算装置１００内の演算装置，１０３…計算装置１００内のべき乗算器，１０４…計算装置１００内の剰余演算器，１０５…計算装置１００内のメモリ，１０６…計算装置１００内の出力装置，２００…送信者側装置，２０１…送信者側装置２００内の乱数生成部，２０２…送信者側装置２００内のべき乗算部，２０３…送信者側装置２００内の演算部，２０４…送信者側装置２００内の剰余演算部，２０５…送信者側装置２００内のメモリ，２０６…送信者側装置２００内の通信装置，２０７…送信者側装置２００内の入力装置，２０８…送信者側装置２００内の暗号化部，３００…受信者側装置，３０１…受信者側装置３００内の鍵生成部，３０２…受信者側装置３００内のべき乗算部，３０３…受信者側装置３００内の剰余演算部，３０４…受信者側装置３００内の演算部，３０５…受信者側装置３００内のメモリ，３０６…受信者側装置３００内の通信装置，３０７…受信者側装置３００内の復号化部，４００…通信回線，を備えている。
【図１】
0004304896.tif 000056
【図２】
0004304896.tif 000057
【図３】
0004304896.tif 000058
【図４】
0004304896.tif 000059
【図５】
0004304896.tif 000060
【図６】
0004304896.tif 000061
【図７】
0004304896.tif 000062