JPH0713484A - 楕円曲線に基づく鍵生成装置、暗号化装置及び復号化装置 - Google Patents
楕円曲線に基づく鍵生成装置、暗号化装置及び復号化装置Info
- Publication number
- JPH0713484A JPH0713484A JP15226793A JP15226793A JPH0713484A JP H0713484 A JPH0713484 A JP H0713484A JP 15226793 A JP15226793 A JP 15226793A JP 15226793 A JP15226793 A JP 15226793A JP H0713484 A JPH0713484 A JP H0713484A
- Authority
- JP
- Japan
- Prior art keywords
- elliptic curve
- key
- calculated
- common multiple
- mod
- 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.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/60—Methods or arrangements for performing computations using a digital non-denominational number representation, i.e. number representation without radix; Computing devices using combinations of denominational and non-denominational quantity representations, e.g. using difunction pulse trains, STEELE computers, phase computers
- G06F7/72—Methods or arrangements for performing computations using a digital non-denominational number representation, i.e. number representation without radix; Computing devices using combinations of denominational and non-denominational quantity representations, e.g. using difunction pulse trains, STEELE computers, phase computers using residue arithmetic
- G06F7/724—Finite field arithmetic
- G06F7/725—Finite field arithmetic over elliptic curves
Abstract
(57)【要約】
【目的】 本発明の目的は、素数と楕円曲線に関する制
限をなくして安全性を一層高めた楕円曲線に基づく鍵生
成装置、暗号化装置及び復号化装置を提供することであ
る。 【構成】 本発明は、暗号化鍵eと復号化鍵dp がe・
dp ≡1(mod Ψp )を、暗号化鍵eと復号化鍵dq が
e・dq ≡1(mod Ψq )を満たすように決定されてい
ることにより、値が5以上の任意の素数と任意の形の楕
円曲線を利用できる。
限をなくして安全性を一層高めた楕円曲線に基づく鍵生
成装置、暗号化装置及び復号化装置を提供することであ
る。 【構成】 本発明は、暗号化鍵eと復号化鍵dp がe・
dp ≡1(mod Ψp )を、暗号化鍵eと復号化鍵dq が
e・dq ≡1(mod Ψq )を満たすように決定されてい
ることにより、値が5以上の任意の素数と任意の形の楕
円曲線を利用できる。
Description
【0001】
【産業上の利用分野】本発明は、楕円曲線に基づく鍵生
成装置、暗号化装置及び復号化装置に係り、特に、ディ
ジタル化された文書を伝送する際に、楕円曲線に基づい
て暗号方式及び復号方式に用いられる鍵生成装置、鍵生
成装置により生成された鍵を用いて暗号化する暗号化装
置、及び暗号化装置により伝送された暗号文を平文に復
号する復号化装置に関する。
成装置、暗号化装置及び復号化装置に係り、特に、ディ
ジタル化された文書を伝送する際に、楕円曲線に基づい
て暗号方式及び復号方式に用いられる鍵生成装置、鍵生
成装置により生成された鍵を用いて暗号化する暗号化装
置、及び暗号化装置により伝送された暗号文を平文に復
号する復号化装置に関する。
【0002】
【従来の技術】まず、最初に楕円曲線に関する記号につ
いて説明する。素数pと係数a,bに対し、y2 ≡x3
+ax+b(mod p)を満たす点の集合に無限遠点Oを
加えた集合を楕円曲線Ep (a,b)と呼ぶ。E
p (a,b)内の点の個数を#Ep (a,b)と書く。
素数p,q、その積n(=pq)と係数a,bに対し、
y2 ≡x3 +ax+b(mod n)を満たす点の集合に無
限遠点Oを加えた集合を楕円曲線En (a,b)と書
く。
いて説明する。素数pと係数a,bに対し、y2 ≡x3
+ax+b(mod p)を満たす点の集合に無限遠点Oを
加えた集合を楕円曲線Ep (a,b)と呼ぶ。E
p (a,b)内の点の個数を#Ep (a,b)と書く。
素数p,q、その積n(=pq)と係数a,bに対し、
y2 ≡x3 +ax+b(mod n)を満たす点の集合に無
限遠点Oを加えた集合を楕円曲線En (a,b)と書
く。
【0003】1991年に楕円曲線に基づく公開鍵暗号
(KMOV方式)が小山らにより提案されている(K.Ko
yama, U.M.Maurer, T.Okamoto and S.A. Vanstone, "Ne
w publikc-key schemes based on elliptic curves ove
r the ring Zn", Lecture Note in Computer Science V
ol. 576, pp.252-266 (1991)) 。
(KMOV方式)が小山らにより提案されている(K.Ko
yama, U.M.Maurer, T.Okamoto and S.A. Vanstone, "Ne
w publikc-key schemes based on elliptic curves ove
r the ring Zn", Lecture Note in Computer Science V
ol. 576, pp.252-266 (1991)) 。
【0004】この方式は、パラメータn(=pq)が素
因数分解の困難さに安全性の根拠をおいている。KMO
V方式は、パラメータの素数p,qがp≡q≡2(mod
3)または、p≡q≡3(mod 4)でなければならない
という制限がある。
因数分解の困難さに安全性の根拠をおいている。KMO
V方式は、パラメータの素数p,qがp≡q≡2(mod
3)または、p≡q≡3(mod 4)でなければならない
という制限がある。
【0005】p≡q≡2(mod 3)の場合のKMOV方
式を簡単に説明する。素数p,qを選び、その積をnと
する。p+1とq+1の最小公倍数をΨn とする最小公
倍数Ψn と互いに素な値eを選び、e・d≡1(mod Ψ
n )を満たすdを計算する。e,nが公開鍵であり、d
が秘密鍵である。
式を簡単に説明する。素数p,qを選び、その積をnと
する。p+1とq+1の最小公倍数をΨn とする最小公
倍数Ψn と互いに素な値eを選び、e・d≡1(mod Ψ
n )を満たすdを計算する。e,nが公開鍵であり、d
が秘密鍵である。
【0006】送信者は、平文Mを楕円曲線En (0,
b):y2 ≡x3 +b(mod n)上でe倍した点Cを暗
号文として送信する。受信者は暗号文Cを楕円曲線En
(0,b):y2 ≡x3 +b(mod n)上でd倍した点
Mとして平文を得る。
b):y2 ≡x3 +b(mod n)上でe倍した点Cを暗
号文として送信する。受信者は暗号文Cを楕円曲線En
(0,b):y2 ≡x3 +b(mod n)上でd倍した点
Mとして平文を得る。
【0007】p≡q≡3(mod 4)の場合のKMOV方
式を簡単に説明する。素数p,qを選び、その積をnと
する。p+1,q+1の最小公倍数をΨn とする。最小
公倍数Ψn と互いに素な値eを選び、e・d≡1(mod
Ψn )を満たすdを計算する。e,nが公開鍵であり、
dが秘密鍵である。
式を簡単に説明する。素数p,qを選び、その積をnと
する。p+1,q+1の最小公倍数をΨn とする。最小
公倍数Ψn と互いに素な値eを選び、e・d≡1(mod
Ψn )を満たすdを計算する。e,nが公開鍵であり、
dが秘密鍵である。
【0008】送信者は平文Mを楕円曲線En (a,
0):y2 ≡x3 +ax(mod n)上でe倍した点Cを暗
号文として送信する。受信者は暗号文Cを楕円曲線En
(a,0):y2 ≡x3 +ax(mod n)上でd倍した
点Mとして平文を得る。
0):y2 ≡x3 +ax(mod n)上でe倍した点Cを暗
号文として送信する。受信者は暗号文Cを楕円曲線En
(a,0):y2 ≡x3 +ax(mod n)上でd倍した
点Mとして平文を得る。
【0009】
【発明が解決しようとする課題】しかしながら、上記従
来のKMOV方式では、素数と楕円曲線が以下の条件
1、2を満たしていなればならないという問題がある。 条件1:素数p,qがp≡q≡2(mod 3)を満たし、
かつ楕円曲線がEn (0,b):y2 ≡x3 +b(mod
n)であること。 条件2:素数p,qがp≡q≡3(mod 4)を満たし、
かつ楕円曲線がEn (0,b):y2 ≡x3 +ax(mo
d n)であること。
来のKMOV方式では、素数と楕円曲線が以下の条件
1、2を満たしていなればならないという問題がある。 条件1:素数p,qがp≡q≡2(mod 3)を満たし、
かつ楕円曲線がEn (0,b):y2 ≡x3 +b(mod
n)であること。 条件2:素数p,qがp≡q≡3(mod 4)を満たし、
かつ楕円曲線がEn (0,b):y2 ≡x3 +ax(mo
d n)であること。
【0010】素数と楕円曲線に関するこのような制限
は、暗号解読にとって有用な情報となり得る可能性があ
る。
は、暗号解読にとって有用な情報となり得る可能性があ
る。
【0011】本発明は、上記の点に鑑みなされたもの
で、上記従来の問題を解決し、素数と楕円曲線に関する
制限をなくして安全性を一層高めた楕円曲線に基づく鍵
生成装置、暗号化装置及び復号化装置を提供することを
目的とする。
で、上記従来の問題を解決し、素数と楕円曲線に関する
制限をなくして安全性を一層高めた楕円曲線に基づく鍵
生成装置、暗号化装置及び復号化装置を提供することを
目的とする。
【0012】
【課題を解決するための手段】本発明の鍵生成装置は、
値が5以上の2つの素数p,qを生成する素数生成手段
と、素数生成手段で生成された素数p,qの積nを計算
する乗算手段と、素数生成手段で生成された素数pに対
して、p+1−2√p以上p+1+2√p以下の全ての
又は一部の整数の第1の最小公倍数Ψp を計算する第1
の最小公倍数計算手段と、素数生成手段で生成された素
数qに対して、q+1−2√q以上q+1+2√q以下
の全ての又は一部の整数の第2の最小公倍数Ψq を計算
する第2の最小公倍数計算手段と、第1の最小公倍数計
算手段で計算された第1の最小公倍数Ψp と第2の最小
公倍数計算手段で計算された第2の最小公倍数Ψq の両
方共に互いに素な整数eを生成する互素数生成手段と、
第1の最小公倍数計算手段で計算された第1の最小公倍
数Ψp と互素数生成手段で決定された整数eに対してe
・dp ≡1(mod Ψp )を満たす秘密鍵dp を計算する
第1の逆数計算手段と、第2の最小公倍数計算手段で計
算された第2の最小公倍数Ψq と互素数生成手段で決定
された整数eに対してe・dq ≡1(mod Ψq )を満た
す秘密鍵dq を計算する第2の逆数計算手段と、乗算手
段で求めた積nと互素数生成手段で決定された整数eを
公開ファイル装置に送信する第1の送信手段と、素数生
成手段で生成された素数p,qと第1の逆数計算手段で
計算された秘密鍵dp と第2の逆数計算手段で計算され
た秘密鍵dq とを復号化装置の記憶手段に送信する第2
の送信手段とを有する。
値が5以上の2つの素数p,qを生成する素数生成手段
と、素数生成手段で生成された素数p,qの積nを計算
する乗算手段と、素数生成手段で生成された素数pに対
して、p+1−2√p以上p+1+2√p以下の全ての
又は一部の整数の第1の最小公倍数Ψp を計算する第1
の最小公倍数計算手段と、素数生成手段で生成された素
数qに対して、q+1−2√q以上q+1+2√q以下
の全ての又は一部の整数の第2の最小公倍数Ψq を計算
する第2の最小公倍数計算手段と、第1の最小公倍数計
算手段で計算された第1の最小公倍数Ψp と第2の最小
公倍数計算手段で計算された第2の最小公倍数Ψq の両
方共に互いに素な整数eを生成する互素数生成手段と、
第1の最小公倍数計算手段で計算された第1の最小公倍
数Ψp と互素数生成手段で決定された整数eに対してe
・dp ≡1(mod Ψp )を満たす秘密鍵dp を計算する
第1の逆数計算手段と、第2の最小公倍数計算手段で計
算された第2の最小公倍数Ψq と互素数生成手段で決定
された整数eに対してe・dq ≡1(mod Ψq )を満た
す秘密鍵dq を計算する第2の逆数計算手段と、乗算手
段で求めた積nと互素数生成手段で決定された整数eを
公開ファイル装置に送信する第1の送信手段と、素数生
成手段で生成された素数p,qと第1の逆数計算手段で
計算された秘密鍵dp と第2の逆数計算手段で計算され
た秘密鍵dq とを復号化装置の記憶手段に送信する第2
の送信手段とを有する。
【0013】また、本発明の暗号化装置は、公開ファイ
ル装置から受信者の公開鍵e,nを受信する受信手段
と、平文M=(mx ,my )を含むような楕円曲線En
(a,b):y2 ≡x3 +ax+b(mod n)の係数
a,bを決定する係数決定手段と、係数決定手段で決定
された楕円曲線En (a,b):y2 ≡x3 +ax+b
(mod n)上で平文M=(mx ,my )をe倍した点C
=(cx ,cy )を計算する楕円曲線乗算手段と、楕円
曲線乗算手段で計算されたC=(cx ,cy )と係数決
定手段で決定された係数aを受信者へ送信する送信手段
とを有する。
ル装置から受信者の公開鍵e,nを受信する受信手段
と、平文M=(mx ,my )を含むような楕円曲線En
(a,b):y2 ≡x3 +ax+b(mod n)の係数
a,bを決定する係数決定手段と、係数決定手段で決定
された楕円曲線En (a,b):y2 ≡x3 +ax+b
(mod n)上で平文M=(mx ,my )をe倍した点C
=(cx ,cy )を計算する楕円曲線乗算手段と、楕円
曲線乗算手段で計算されたC=(cx ,cy )と係数決
定手段で決定された係数aを受信者へ送信する送信手段
とを有する。
【0014】また、本発明の復号化装置は、鍵生成装置
から送信された素数p,q,秘密鍵dp ,dq を受信す
る第1の受信手段と、第1の受信手段で受信した素数
p,q,秘密鍵dp ,dq を記憶する記憶手段と、暗号
文C=(cx ,cy )と係数aを受信する第2の受信手
段と、記憶手段に記憶されている素数p,秘密鍵dp を
用いて第2の受信手段で受信した暗号文C=(cx ,c
y )を楕円曲線En (a,b):y2 ≡x3 +ax+b
(mod p)上で、dp 倍した点Mp =(mpx,mpy)を
計算する第1の楕円曲線乗算手段と、記憶手段に記憶さ
れている素数q,秘密鍵dq を用いて第2の受信手段で
受信した暗号文C=(cx ,cy )を楕円曲線E
n (a,b):y2 ≡x3 +ax+b(mod p)上で、
dq 倍した点Mq =(mqx,mqy)を計算する第2の楕
円曲線乗算手段と、第1の受信手段で受信した素数q,
pを用いて第1の楕円曲線乗算手段で計算された点Mp
と第2の楕円曲線乗算手段で計算された点Mq とから平
文M=(m p ,mq )を計算する中国剰余定理計算手段
とを有する。
から送信された素数p,q,秘密鍵dp ,dq を受信す
る第1の受信手段と、第1の受信手段で受信した素数
p,q,秘密鍵dp ,dq を記憶する記憶手段と、暗号
文C=(cx ,cy )と係数aを受信する第2の受信手
段と、記憶手段に記憶されている素数p,秘密鍵dp を
用いて第2の受信手段で受信した暗号文C=(cx ,c
y )を楕円曲線En (a,b):y2 ≡x3 +ax+b
(mod p)上で、dp 倍した点Mp =(mpx,mpy)を
計算する第1の楕円曲線乗算手段と、記憶手段に記憶さ
れている素数q,秘密鍵dq を用いて第2の受信手段で
受信した暗号文C=(cx ,cy )を楕円曲線E
n (a,b):y2 ≡x3 +ax+b(mod p)上で、
dq 倍した点Mq =(mqx,mqy)を計算する第2の楕
円曲線乗算手段と、第1の受信手段で受信した素数q,
pを用いて第1の楕円曲線乗算手段で計算された点Mp
と第2の楕円曲線乗算手段で計算された点Mq とから平
文M=(m p ,mq )を計算する中国剰余定理計算手段
とを有する。
【0015】
【作用】本発明の鍵生成装置は、暗号化鍵eと復号化鍵
dp がe・dp ≡1(mod Ψp)を満たすように決定さ
れているので、楕円曲線Ep (a,b):y2 ≡x3 +
ax+b(mod p )上の点(xp ,yp )はe倍して、
さらにdp 倍すれば、もとの点(xp ,yp )になる。
同様に、暗号化鍵eと復号化鍵dq がe・dq ≡1(mo
d Ψq )を満たすように決定されているので、楕円曲線
Eq (a,b):y2 ≡x3 +ax+b(mod q)上の
点(xq ,yq )はe倍して、さらにdq倍すれば、も
との点(xq ,yq )になる。即ち、本発明の鍵生成装
置によって暗号化鍵と復号化鍵を決定すれば、素数や楕
円曲線に制限なく、暗号化と復号化が正しく行うことが
可能である。
dp がe・dp ≡1(mod Ψp)を満たすように決定さ
れているので、楕円曲線Ep (a,b):y2 ≡x3 +
ax+b(mod p )上の点(xp ,yp )はe倍して、
さらにdp 倍すれば、もとの点(xp ,yp )になる。
同様に、暗号化鍵eと復号化鍵dq がe・dq ≡1(mo
d Ψq )を満たすように決定されているので、楕円曲線
Eq (a,b):y2 ≡x3 +ax+b(mod q)上の
点(xq ,yq )はe倍して、さらにdq倍すれば、も
との点(xq ,yq )になる。即ち、本発明の鍵生成装
置によって暗号化鍵と復号化鍵を決定すれば、素数や楕
円曲線に制限なく、暗号化と復号化が正しく行うことが
可能である。
【0016】なお、本発明の暗号的安全性の根拠は素因
数分解の困難さであるから素数p,qの桁数はその積n
の素因数分解の困難さを考慮して決められる。
数分解の困難さであるから素数p,qの桁数はその積n
の素因数分解の困難さを考慮して決められる。
【0017】従って、値が5以上の任意の素数と、任意
の形の楕円曲線が利用できるように暗号化鍵と復号化鍵
を決定しているため、従来のKMOV方式のように暗号
化鍵と復号化鍵が制限された素数や楕円曲線にしか利用
できないという制限がなくなる。
の形の楕円曲線が利用できるように暗号化鍵と復号化鍵
を決定しているため、従来のKMOV方式のように暗号
化鍵と復号化鍵が制限された素数や楕円曲線にしか利用
できないという制限がなくなる。
【0018】
【実施例】以下、図面と共に本発明の実施例を詳細に説
明する。
明する。
【0019】最初に本発明の鍵生成装置について説明す
る。鍵生成装置は、復号側に設けられ、公開鍵e,n及
び秘密鍵dを生成し、これらの鍵を公開ファイル装置ま
たは、復号化装置に送信する。
る。鍵生成装置は、復号側に設けられ、公開鍵e,n及
び秘密鍵dを生成し、これらの鍵を公開ファイル装置ま
たは、復号化装置に送信する。
【0020】図1は、本発明の一実施例の鍵生成装置の
構成例を示す。同図に示す鍵生成装置100は、素数生
成器101、乗算器102、第1最小公倍数計算器10
3、第2最小公倍数計算器104、互素数生成器10
5、第1逆数計算器106、第2逆数計算器107、第
1送信器108及び第2送信器109により構成され
る。
構成例を示す。同図に示す鍵生成装置100は、素数生
成器101、乗算器102、第1最小公倍数計算器10
3、第2最小公倍数計算器104、互素数生成器10
5、第1逆数計算器106、第2逆数計算器107、第
1送信器108及び第2送信器109により構成され
る。
【0021】以下に鍵生成装置の各構成の動作を説明す
る。
る。
【0022】(1)素数生成器101は、値が5以上の
2つの素数p,qを生成する。
2つの素数p,qを生成する。
【0023】(2)乗算器102は、素数p,qの積n
を計算する。
を計算する。
【0024】(3)第1最小公倍数計算器103は、素
数生成装置101で生成された素数pについてp+1−
2√p以上p+1+2√p以下の全ての又は一部の整数
の最小公倍数Ψp を計算する。
数生成装置101で生成された素数pについてp+1−
2√p以上p+1+2√p以下の全ての又は一部の整数
の最小公倍数Ψp を計算する。
【0025】(4)第2最小公倍数計算器104は、素
数生成器101で生成された素数qについてq+1−2
√q以上q+1+2√q以下の全ての又は一部の整数の
最小公倍数Ψq を計算する。
数生成器101で生成された素数qについてq+1−2
√q以上q+1+2√q以下の全ての又は一部の整数の
最小公倍数Ψq を計算する。
【0026】(5)互素数生成器105は、(3)にお
いて、第1最小公倍数計算器103で生成された最小公
倍数Ψp 及び、(4)において、第2最小公倍数計算器
104で生成された最小公倍数Ψq の両方ともに互いに
素な整数eを生成する。 (6)第1逆数計算器106は、(3)で第1最小公倍
数計算器103により計算された最小公倍数Ψp と
(5)で互素数生成器105により生成された整数eに
対して e・dp ≡1(mod Ψp ) を満たす秘密鍵dp を計算する。
いて、第1最小公倍数計算器103で生成された最小公
倍数Ψp 及び、(4)において、第2最小公倍数計算器
104で生成された最小公倍数Ψq の両方ともに互いに
素な整数eを生成する。 (6)第1逆数計算器106は、(3)で第1最小公倍
数計算器103により計算された最小公倍数Ψp と
(5)で互素数生成器105により生成された整数eに
対して e・dp ≡1(mod Ψp ) を満たす秘密鍵dp を計算する。
【0027】(7)第2逆数計算器107は、(4)に
おいて第2最小公倍数計算器104により計算された最
小公倍数Ψq と(5)で互素数生成器105により生成
された整数eに対して e・dq ≡1(mod Ψq ) を満たす秘密鍵dq を計算する。
おいて第2最小公倍数計算器104により計算された最
小公倍数Ψq と(5)で互素数生成器105により生成
された整数eに対して e・dq ≡1(mod Ψq ) を満たす秘密鍵dq を計算する。
【0028】(8)第1送信器108は(2)で乗算器
102により求められた積nと(5)で決定された整数
eを公開ファイル装置に公開鍵として送信する。
102により求められた積nと(5)で決定された整数
eを公開ファイル装置に公開鍵として送信する。
【0029】(9)第2送信器109は、(1)で素数
生成器101により生成された素数p,qと(6)で第
1逆数計算器106により計算された秘密鍵dp と
(7)で第2逆数計算器107により計算された秘密鍵
dp を復号化装置の記憶部に送信する。
生成器101により生成された素数p,qと(6)で第
1逆数計算器106により計算された秘密鍵dp と
(7)で第2逆数計算器107により計算された秘密鍵
dp を復号化装置の記憶部に送信する。
【0030】従って、鍵生成装置100は生成された公
開鍵e,nを公開ファイル装置に送信し、素数q,pと
復号鍵(秘密鍵)dp ,dq を復号化装置に送信する。
開鍵e,nを公開ファイル装置に送信し、素数q,pと
復号鍵(秘密鍵)dp ,dq を復号化装置に送信する。
【0031】次に、本発明の暗号化装置について説明す
る。暗号化装置は、公開鍵e,n及び秘密鍵dp ,dq
を用いて平文Mを暗号文Cに暗号化し、復号装置に送信
するものである。
る。暗号化装置は、公開鍵e,n及び秘密鍵dp ,dq
を用いて平文Mを暗号文Cに暗号化し、復号装置に送信
するものである。
【0032】図2は、本発明の一実施例の暗号化装置の
構成例を示す。同図に示す暗号化装置200は公開鍵
e,nを受信する受信器201、楕円曲線の係数を決定
する係数決定器202、暗号文Cを計算する楕円曲線乗
算器203及び暗号文Cと係数を復号装置に送信する送
信器204から構成される。
構成例を示す。同図に示す暗号化装置200は公開鍵
e,nを受信する受信器201、楕円曲線の係数を決定
する係数決定器202、暗号文Cを計算する楕円曲線乗
算器203及び暗号文Cと係数を復号装置に送信する送
信器204から構成される。
【0033】以下に、暗号化装置200の各構成の動作
を説明する。
を説明する。
【0034】(1)受信器201は、公開ファイル装置
から受信者の公開鍵e,nを受信する。
から受信者の公開鍵e,nを受信する。
【0035】(2)係数決定器202は、平文M=(m
x ,my )を含むような楕円曲線 En (a,b):y2 ≡x3 +ax+b(mod n) の係数a,bを決定する。
x ,my )を含むような楕円曲線 En (a,b):y2 ≡x3 +ax+b(mod n) の係数a,bを決定する。
【0036】(3)楕円曲線乗算器203は、(1)で
受信器201が公開ファイル装置から受信した公開鍵
e,nを用いて、楕円曲線 En (a,b):y2 ≡x3 +ax+b(mod n) 上で、平文M=(mx ,my )をe倍した点C=
(cx ,cy )を計算する。求められた点Cは暗号文で
ある。
受信器201が公開ファイル装置から受信した公開鍵
e,nを用いて、楕円曲線 En (a,b):y2 ≡x3 +ax+b(mod n) 上で、平文M=(mx ,my )をe倍した点C=
(cx ,cy )を計算する。求められた点Cは暗号文で
ある。
【0037】(4)送信器204は(3)で楕円曲線乗
算器203により求められた暗号文C=(cx ,cy )
と(2)で決定された係数aを受信者に送信する。
算器203により求められた暗号文C=(cx ,cy )
と(2)で決定された係数aを受信者に送信する。
【0038】次に、本発明の復号化装置について説明す
る。図3は、本発明の一実施例の復号化装置の構成例を
示す。同図に示す復号化装置300は、鍵生成装置10
0から素数及び秘密鍵を受信する第1受信器301、受
信した内容を記憶する記憶部302、暗号化装置200
から暗号文を受信する第2受信器303、楕円曲線を用
いて暗号文を平文に復号する第1及び第2楕円乗算器3
04、305、素数を用いて中国剰余定理により平文を
求める中国剰余定理計算器306より構成される。
る。図3は、本発明の一実施例の復号化装置の構成例を
示す。同図に示す復号化装置300は、鍵生成装置10
0から素数及び秘密鍵を受信する第1受信器301、受
信した内容を記憶する記憶部302、暗号化装置200
から暗号文を受信する第2受信器303、楕円曲線を用
いて暗号文を平文に復号する第1及び第2楕円乗算器3
04、305、素数を用いて中国剰余定理により平文を
求める中国剰余定理計算器306より構成される。
【0039】以下に、復号化装置300の各構成の動作
を説明する。
を説明する。
【0040】(1)第1受信器301は、鍵生成装置1
00により送信された素数p,q及び秘密鍵dp ,dq
を受信し、これらの値を記憶部302に送出する。記憶
部302は、第1受信器301より送信された素数及び
秘密鍵を記憶する。
00により送信された素数p,q及び秘密鍵dp ,dq
を受信し、これらの値を記憶部302に送出する。記憶
部302は、第1受信器301より送信された素数及び
秘密鍵を記憶する。
【0041】(2)第2受信器303は、暗号化装置2
00から暗号文C=(cx ,cy )と係数aを受信す
る。
00から暗号文C=(cx ,cy )と係数aを受信す
る。
【0042】(3)第1楕円乗算器304は、記憶部3
02に記憶されている素数p,秘密鍵dp を用いて
(2)で第2受信器303により受信された暗号文C=
(cx ,cy )を楕円曲線 Ep (a,b):y2 ≡x3 +ax+b(mod p) 上でdp 倍した点Mp =(mpx,mpy)を計算する。
02に記憶されている素数p,秘密鍵dp を用いて
(2)で第2受信器303により受信された暗号文C=
(cx ,cy )を楕円曲線 Ep (a,b):y2 ≡x3 +ax+b(mod p) 上でdp 倍した点Mp =(mpx,mpy)を計算する。
【0043】(4)第2楕円乗算器305は、記憶部3
02に記憶されている素数q,秘密鍵dq を用いて
(2)で第2受信器303により受信された暗号文C=
(cx ,cy )を楕円曲線 Eq (a,b):y2 ≡x3 +ax+b(mod q) 上でdq 倍した点Mq =(mqx,mqy)を計算する。
02に記憶されている素数q,秘密鍵dq を用いて
(2)で第2受信器303により受信された暗号文C=
(cx ,cy )を楕円曲線 Eq (a,b):y2 ≡x3 +ax+b(mod q) 上でdq 倍した点Mq =(mqx,mqy)を計算する。
【0044】(5)中国剰余定理計算器306は、記憶
部302の素数p,qを用いて(3)で第1楕円乗算器
304で計算された点Mp と(4)で第2楕円乗算器3
05で計算された点Mq とから中国剰余定理に基づいて
平文M=(mx ,my )を計算する。
部302の素数p,qを用いて(3)で第1楕円乗算器
304で計算された点Mp と(4)で第2楕円乗算器3
05で計算された点Mq とから中国剰余定理に基づいて
平文M=(mx ,my )を計算する。
【0045】図4は本発明の一実施例のシステム構成例
を示す。同図に示すシステムは、上記の鍵生成装置10
0、暗号化装置200、復号化装置300及び公開ファ
イル装置400により構成されている。公開ファイル4
00は、ユーザ毎にユーザ名及び公開鍵n,eを管理す
る。これらの鍵は、鍵生成装置100から受信器を介し
て得る。また、暗号化装置200が暗号化を行う場合に
は、公開ファイル装置400は、これらの鍵を送信器を
介して送出する。
を示す。同図に示すシステムは、上記の鍵生成装置10
0、暗号化装置200、復号化装置300及び公開ファ
イル装置400により構成されている。公開ファイル4
00は、ユーザ毎にユーザ名及び公開鍵n,eを管理す
る。これらの鍵は、鍵生成装置100から受信器を介し
て得る。また、暗号化装置200が暗号化を行う場合に
は、公開ファイル装置400は、これらの鍵を送信器を
介して送出する。
【0046】このような構成において、公開ファイル装
置400はセンタ側が有し、暗号化装置200は送信
側、復号化装置300及び鍵生成装置100は受信側で
有するものとする。さらに、これらの装置は、それぞれ
通信路で接続されている。
置400はセンタ側が有し、暗号化装置200は送信
側、復号化装置300及び鍵生成装置100は受信側で
有するものとする。さらに、これらの装置は、それぞれ
通信路で接続されている。
【0047】以下に図4に示す構成の動作を説明する。
【0048】(1)受信側は鍵生成装置100を用い
て、自分の公開鍵e,nと復号化鍵p,q,dp ,dq
を決定し、公開鍵e,nをセンタへ送信し、公開ファイ
ル装置400に登録する。また、復号化鍵p,q,
dp ,dq を復号化装置300に送信する。
て、自分の公開鍵e,nと復号化鍵p,q,dp ,dq
を決定し、公開鍵e,nをセンタへ送信し、公開ファイ
ル装置400に登録する。また、復号化鍵p,q,
dp ,dq を復号化装置300に送信する。
【0049】(2)送信側は暗号化装置200を用い
て、平文M=(mx ,my )を暗号化し、暗号文C=
(cx ,cy )と係数aを受信側に送信する。
て、平文M=(mx ,my )を暗号化し、暗号文C=
(cx ,cy )と係数aを受信側に送信する。
【0050】(3)受信側は、復号化装置300を用い
て、暗号文C=(cx ,cy )と係数aから平文M=
(mx ,my )を得る。
て、暗号文C=(cx ,cy )と係数aから平文M=
(mx ,my )を得る。
【0051】
【発明の効果】上述のように本発明によれば、鍵生成装
置によって暗号化鍵と復号化鍵を決定することにより、
素数と楕円曲線に関する制限をなくして安全性を一層高
めた楕円曲線に基づく公開鍵暗号化及び復号化が可能に
なる。
置によって暗号化鍵と復号化鍵を決定することにより、
素数と楕円曲線に関する制限をなくして安全性を一層高
めた楕円曲線に基づく公開鍵暗号化及び復号化が可能に
なる。
【図1】本発明の一実施例の鍵生成装置の構成例を示す
図である。
図である。
【図2】本発明の一実施例の暗号化装置の構成例を示す
図である。
図である。
【図3】本発明の一実施例の復号化装置の構成例を示す
図である。
図である。
【図4】本発明の一実施例のシステム構成の例を示す図
である。
である。
100 鍵生成装置 101 乗算器 102 素数生成器 103 第1最小公倍数計算器 104 第2最小公倍数計算器 105 互素数生成器 106 第1逆数計算器 107 第2逆数計算器 108 第1送信器 109 第2送信器 200 暗号化装置 201 受信器 202 係数決定器 203 楕円曲線乗算器 204 送信器 300 復号化装置 301 第1受信器 302 記憶部 303 第2受信器 304 第1楕円曲線乗算器 305 第2楕円曲線乗算器 306 中国剰余定理計算器
Claims (3)
- 【請求項1】 値が5以上の2つの素数p,qを生成す
る素数生成手段と、 該素数生成手段で生成された素数p,qの積nを計算す
る乗算手段と、 該素数生成手段で生成された素数pに対して、p+1−
2√p以上p+1+2√p以下の全ての又は一部の整数
の第1の最小公倍数Ψp を計算する第1の最小公倍数計
算手段と、 該素数生成手段で生成された素数qに対して、q+1−
2√q以上q+1+2√q以下の全ての又は一部の整数
の第2の最小公倍数Ψq を計算する第2の最小公倍数計
算手段と、 該第1の最小公倍数計算手段で計算された第1の最小公
倍数Ψp と該第2の最小公倍数計算手段で計算された第
2の最小公倍数Ψq の両方共に互いに素な整数eを生成
する互素数生成手段と、 該第1の最小公倍数計算手段で計算された第1の最小公
倍数Ψp と該互素数生成手段で決定された整数eに対し
てe・dp ≡1(mod Ψp )を満たす秘密鍵d p を計算
する第1の逆数計算手段と、 該第2の最小公倍数計算手段で計算された第2の最小公
倍数Ψq と該互素数生成手段で決定された整数eに対し
てe・dq ≡1(mod Ψq )を満たす秘密鍵d q を計算
する第2の逆数計算手段と、 該乗算手段で求めた積nと該互素数生成手段で決定され
た整数eを公開ファイル装置に送信する第1の送信手段
と、 該素数生成手段で生成された素数p,qと該第1の逆数
計算手段で計算された秘密鍵dp と該第2の逆数計算手
段で計算された秘密鍵dq とを復号化装置の記憶手段に
送信する第2の送信手段とを有することを特徴とする楕
円曲線に基づく鍵生成装置。 - 【請求項2】 公開ファイル装置から受信者の公開鍵
e,nを受信する受信手段と、 平文M=(mx ,my )を含むような楕円曲線E
n (a,b):y2 ≡x3 +ax+b(mod n)の係数
a,bを決定する係数決定手段と、 該係数決定手段で決定された楕円曲線En (a,b):
y2 ≡x3 +ax+b(mod n)上で平文M=(mx ,
my )をe倍した点C=(cx ,cy )を計算する楕円
曲線乗算手段と、 該楕円曲線乗算手段で計算されたC=(cx ,cy )と
該係数決定手段で決定された係数aを受信者へ送信する
送信手段とを有することを特徴とする楕円曲線に基づく
暗号化装置。 - 【請求項3】 鍵生成装置から送信された素数p,q,
秘密鍵dp ,dq を受信する第1の受信手段と、 該第1の受信手段で受信した素数p,q,秘密鍵dp ,
dq を記憶する記憶手段と、 暗号文C=(cx ,cy )と係数aを受信する第2の受
信手段と、 該記憶手段に記憶されている素数p,秘密鍵dp を用い
て該第2の受信手段で受信した暗号文C=(cx ,
cy )を楕円曲線En (a,b):y2 ≡x3 +ax+
b(mod p)上で、dp 倍した点Mp =(mpx,mpy)
を計算する第1の楕円曲線乗算手段と、 該記憶手段に記憶されている素数q,秘密鍵dq を用い
て該第2の受信手段で受信した暗号文C=(cx ,
cy )を楕円曲線En (a,b):y2 ≡x3 +ax+
b(mod p)上で、dq 倍した点Mq =(mqx,mqy)
を計算する第2の楕円曲線乗算手段と、 該第1の受信手段で受信した素数q,pを用いて該第1
の楕円曲線乗算手段で計算された点Mp と該第2の楕円
曲線乗算手段で計算された点Mq とから平文M=
(mp ,mq )を計算する中国剰余定理計算手段とを有
することを特徴とする楕円曲線に基づく復号化装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP15226793A JPH0713484A (ja) | 1993-06-23 | 1993-06-23 | 楕円曲線に基づく鍵生成装置、暗号化装置及び復号化装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP15226793A JPH0713484A (ja) | 1993-06-23 | 1993-06-23 | 楕円曲線に基づく鍵生成装置、暗号化装置及び復号化装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH0713484A true JPH0713484A (ja) | 1995-01-17 |
Family
ID=15536761
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP15226793A Pending JPH0713484A (ja) | 1993-06-23 | 1993-06-23 | 楕円曲線に基づく鍵生成装置、暗号化装置及び復号化装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH0713484A (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2004252433A (ja) * | 2003-01-28 | 2004-09-09 | Matsushita Electric Ind Co Ltd | 故障利用攻撃に対抗できる楕円べき倍演算装置及び情報セキュリティ装置 |
-
1993
- 1993-06-23 JP JP15226793A patent/JPH0713484A/ja active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2004252433A (ja) * | 2003-01-28 | 2004-09-09 | Matsushita Electric Ind Co Ltd | 故障利用攻撃に対抗できる楕円べき倍演算装置及び情報セキュリティ装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Almaiah et al. | A new hybrid text encryption approach over mobile ad hoc network | |
WO2009026771A1 (fr) | Procédé pour négocier une clé, chiffrer et déchiffrer des informations, signer et authentifier les informations | |
KR20040009766A (ko) | 암호 시스템에서 송수신 장치 및 방법 | |
CN111262709B (zh) | 基于陷门哈希函数的无证书签密系统及方法 | |
Zhong | An overview of rsa and oaep padding | |
JP3402441B2 (ja) | 公開鍵暗号化装置、公開鍵暗号復号装置及び復号プログラム記録媒体 | |
US7356140B2 (en) | Encrypting device, decrypting device, cryptosystem including the same devices, encrypting method, and decrypting method | |
Mohapatra | Public key cryptography | |
KR20030047148A (ko) | Rsa를 이용한 클라이언트/서버 기반의 메신저 보안 방법 | |
JP2000047581A (ja) | 暗号化方法,暗号化・復号装置及び暗号通信システム | |
JP3041293B2 (ja) | 暗号化方法、復号化方法、認証方法、暗号化装置、復号化装置、認証装置、認証文送信者装置、認証文受信者装置、暗号通信システム及び認証システム | |
Lizama-Perez | Non-invertible key exchange protocol | |
JPH0713484A (ja) | 楕円曲線に基づく鍵生成装置、暗号化装置及び復号化装置 | |
JP2002023626A (ja) | 公開鍵暗号方法および公開鍵暗号を用いた通信システム | |
Dhamodharan et al. | Multifarious mapping schemes on Elliptic curve cryptography for IoT security | |
JP2617091B2 (ja) | 暗号通信システム | |
JP3278790B2 (ja) | 公開鍵暗号方法及び公開鍵暗号システム | |
JP2624634B2 (ja) | 暗号装置および復号化装置および暗号・復号化装置および暗号システム | |
Bashir et al. | Cryptanalysis and improvement of an encryption scheme that uses elliptic curves over finite fields | |
JPH0798563A (ja) | 楕円曲線による署名、認証及び秘密通信方式 | |
Darwish et al. | New hybrid cryptosystem for internet applications | |
Schwenk | Cryptography: Confidentiality | |
JP2617092B2 (ja) | 暗号通信システム | |
Zia et al. | Cryptanalysis and improvement of an encryption scheme that uses elliptic curves over finite fields | |
JP3240723B2 (ja) | 通信方法、秘密通信方法及び署名通信方法 |