JP4960894B2 - Elliptic curve point compression device, elliptic curve point expansion device, method and program thereof - Google Patents
Elliptic curve point compression device, elliptic curve point expansion device, method and program thereof Download PDFInfo
- Publication number
- JP4960894B2 JP4960894B2 JP2008008227A JP2008008227A JP4960894B2 JP 4960894 B2 JP4960894 B2 JP 4960894B2 JP 2008008227 A JP2008008227 A JP 2008008227A JP 2008008227 A JP2008008227 A JP 2008008227A JP 4960894 B2 JP4960894 B2 JP 4960894B2
- Authority
- JP
- Japan
- Prior art keywords
- point
- compression
- elliptic curve
- order
- information
- 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
Images
Description
この発明は、情報セキュリティ技術に関するものである。特に、楕円曲線暗号において、部分体曲線である楕円曲線E(Fq^m)の点を特定するデータサイズを小さくする楕円曲線の点圧縮装置、楕円曲線の点展開装置、それらの方法及びプログラムに関する。 The present invention relates to information security technology. In particular, in elliptic curve cryptography, an elliptic curve point compression device, an elliptic curve point expansion device, a method and a program thereof for reducing the data size for specifying a point of an elliptic curve E (F q ^ m ) that is a partial body curve About.
標数qを素数又はその冪、拡大次数mを2以上の整数、a,b∈Fq、Oを無限遠点として、部分体曲線である楕円曲線E(Fq^m)={(x,y)∈Fq^m 2|y2=x3+ax+b}∪O上の点P=(X,Y)∈Fq^m 2を示すデータのビット数(データサイズとする。)は、2×m×log2qである。有限体Fq^mの位数(元の個数)はqmであるため、有限体Fq^mのある1つの元を表すデータサイズはlog2qm=m×log2qとなる。そして、点Pのx座標の値であるXと、点Pのy座標の値であるYとがそれぞれ有限体Fq^mの元であるため、点Pを特定するデータサイズは2×m×log2qとなるのである。 A characteristic curve q is a prime number or a power thereof, an expansion order m is an integer of 2 or more, a, bεF q , and O is an infinite point, and an elliptic curve E (F q ^ m ) = {(x , Y) ∈ F q ^ m 2 | y 2 = x 3 + ax + b} ∪O The number of bits of data indicating the point P = (X, Y) ∈F q ^ m 2 (referred to as the data size) is 2 × m × log 2 q. For finite F q ^ m of order (the original number) is q m, the data size representing one source with finite F q ^ m is the log 2 q m = m × log 2 q. And since X which is the value of the x coordinate of the point P and Y which is the value of the y coordinate of the point P are elements of the finite field F q ^ m , the data size for specifying the point P is 2 × m Xlog 2 q.
楕円曲線E(Fq^m)上の点Pを特定するデータサイズを小さくする方法として、以下に述べる方法が知られている(例えば、非特許文献1参照。)。楕円曲線E(Fq^m)は、Xaを楕円曲線E(Fq^m)上の任意の点のx座標の値として、直線x=Xaと二点でのみ交わる。そして、楕円曲線E(Fq^m)は、x軸に対して線対称となっているため、楕円曲線E(Fq^m)と直線x=Xaとが交わる2つの交点のうち、一方の交点のy座標の値が正となり、他方の交点のy座標の値が負となる。したがって、楕円曲線E(Fq^m)上の点のx座標の値とその点のy座標の値の正負のみがわかれば、その点を特定することが可能である。このため、y座標の正負を1ビットで表現することにより、楕円曲線E(Fq^m)上の点Pを特定するデータサイズをm×log2q+1とすることができる。
非特許文献1に記載された技術においては、楕円曲線(Fq^m)上の点Pを特定する圧縮されたデータサイズが十分に小さくないという問題があった。
In the technique described in
この発明は、背景技術に記載された楕円曲線の点圧縮方法よりもデータサイズを小さくする楕円曲線の点圧縮装置、楕円曲線の点展開装置、それらの方法及びプログラムを提供することを目的とする。 It is an object of the present invention to provide an elliptic curve point compression device, an elliptic curve point expansion device, and a method and program thereof that reduce the data size compared to the elliptic curve point compression method described in the background art. .
標数qを素数又はその冪、mを拡大次数、a,b∈Fq、Oを無限遠点として、部分体曲線である楕円曲線E(Fq^m)={(x,y)∈Fq^m 2|y2=x3+ax+b}∪O上の点P∈Fq^m 2を圧縮して、点Pの圧縮情報を生成するために、まず、φをq乗フロベニウス写像として、点Pから、点φP,φ2P,…,φ(m−1)P∈E(Fq^m)をそれぞれ求める。点P,φP,φ2P,…,φ(m−1)Pを通る曲線の多項式の各項の係数λ0,λ2,…,λm−1∈Fqを求める。点P,φP,φ2P,…,φ(m−1)Pを予め定められた順序で並べた点列を生成する。点列における点Pの順序に
関する位置(以下、順序位置とする。)の情報(以下、順序位置情報mPとする。)を決定する。点Pの圧縮情報は、順序位置情報mPと係数λ0,λ2,…,λm−1とを含む。
An elliptic curve E (F q ^ m ) = {(x, y) ∈, where the characteristic q is a prime number or its power, m is an expansion order, a, b∈F q , and O is an infinite point. In order to compress the point PεF q ^ m 2 on F q ^ m 2 | y 2 = x 3 + ax + b} ∪O and generate the compression information of the point P, first, let φ be a qth power Frobenius map From the point P, the points φP, φ 2 P,..., Φ (m − 1) P∈E (F q ^ m ) are obtained. Point P, φP, φ 2 P, ..., φ (m - 1) coefficient of each term of the polynomial curve passing through P λ 0, λ 2, ... , determine the λ m-1 ∈F q. A point sequence in which the points P, φP, φ 2 P,..., Φ (m − 1) P are arranged in a predetermined order is generated. Position regarding the order of the point P in the point sequence (hereinafter referred to as sequence position.) Information (hereinafter referred to as sequence position information m P.) Determined. Compression information of the point P, the order position information m P and coefficient lambda 0, lambda 2, ..., and a λ m-1.
点P,φP,φ2P,…,φ(m−1)Pを通る曲線の多項式の各項の係数λ0,λ2,…,λm−1∈Fqを求める。点P,φP,φ2P,…,φ(m−1)Pを通る曲線の多項式の各項の係数λ0,λ2,…,λm−1∈Fqと、順序位置情報mP(例えば、順序位置情報mPは、1からmまでの整数)とを少なくとも圧縮情報とすることにより、圧縮情報のデータサイズを、最小で(m−1)×log2q+log2mとすることができる。 Point P, φP, φ 2 P, ..., φ (m - 1) coefficient of each term of the polynomial curve passing through P λ 0, λ 2, ... , determine the λ m-1 ∈F q. Point P, φP, φ 2 P, ..., φ (m - 1) coefficient of each term of the polynomial curve passing through P λ 0, λ 2, ... , λ m-1 ∈F q and the order position information m P (For example, the order position information m P is an integer from 1 to m) and at least the compression information, the data size of the compression information is at least (m−1) × log 2 q + log 2 m Can do.
[点圧縮装置]
本発明の点圧縮、点展開と対象となるのは、部分体曲線である楕円曲線E(Fq^m)上の有理点である。すなわち、標数qを素数又はその冪、mを拡大次数、a,b∈Fq、Oを無限遠点として、部分体曲線である楕円曲線E(Fq^m)={(x,y)∈Fq^m 2|y2=x3+ax+b}∪O上の点P∈Fq^m 2が、点圧縮、点展開の対象となる。さらにいうと、後述するように、部分体曲線である楕円曲線E(Fq^m)上の有理点の中でも、集合(φ−1)E(Fq^m)に含まれる点が点圧縮、点展開の対象となる。
[Point compression device]
What is subject to point compression and point expansion of the present invention is a rational point on an elliptic curve E (F q ^ m ) that is a partial body curve. That is, an elliptic curve E (F q ^ m ) = {(x, y), which is a partial field curve, where the characteristic q is a prime number or its power, m is an expansion order, a, bεF q , and O is an infinite point. ) ∈F q ^ m 2 | y 2 = x 3 + ax + b} ∪O, the point P∈F q ^ m 2 on the point is the target of point compression and point expansion. Furthermore, as will be described later, among the rational points on the elliptic curve E (F q ^ m ) that is a partial body curve, the points included in the set (φ−1) E (F q ^ m ) are point-compressed. , Subject to point expansion.
標数qと拡大次数mはそれぞれ、必要とされる安全性を確保することができる程度に十分大きな数であることが望ましい。また、安全性の観点から、4a3+27b2≠0の関係を満たすように、a,bを選択することが望ましい。以下、部分体曲線である楕円曲線E(Fq^m)を、単に楕円曲線E(Fq^m)とも呼ぶ。 It is desirable that the characteristic q and the expansion order m are sufficiently large so that the required safety can be ensured. From the viewpoint of safety, it is desirable to select a and b so as to satisfy the relationship of 4a 3 + 27b 2 ≠ 0. Hereinafter, the elliptic curve E (F q ^ m ) that is a partial body curve is also simply referred to as an elliptic curve E (F q ^ m ).
点圧縮、すなわち点を圧縮するとは、楕円曲線E(Fq^m)上の点を特定するデータサイズが小さい圧縮情報を生成することを意味する。点展開、すなわち、点を展開するとは、楕円曲線E(Fq^m)上の点を特定する圧縮情報を圧縮前のデータに戻すことを意味する。 Point compression, that is, compression of a point, means that compression information having a small data size for specifying a point on the elliptic curve E (F q ^ m ) is generated. Point expansion, that is, expansion of a point, means that compression information for specifying a point on the elliptic curve E (F q ^ m ) is returned to the data before compression.
図1と図2を参照して、点圧縮装置10について説明する。図1は点圧縮装置10の機能構成を例示する図であり、図2は点圧縮装置10の処理の流れを例示するフローチャートである。
The
<ステップS1e>
楕円曲線E(Fq^m)上の点P∈Fq^m 2が、圧縮例外判定部11に入力される。圧縮例外判定部11は、点P∈(φ−1)E(Fq^m)であるかどうか、すなわち点Pが集合(φ−1)E(Fq^m)に含まれるかどうかを判定する。点圧縮装置10は、点P∈(φ−1)E(Fq^m)と判定された場合にはステップS2e以降の処理を行い、点P∈(φ−1)E(Fq^m)と判定されなかった場合にはステップS2e以降の処理を行わない。点P∈(φ−1)E(Fq^m)でない場合には、点圧縮をすることができるとは限らないため、また点圧縮をすることができたとしても点展開をすることができるとは限らないためである。
<Step S1e>
A point PεF q ^ m 2 on the elliptic curve E (F q ^ m ) is input to the compression exception determination unit 11. The compression exception determination unit 11 determines whether or not the point Pε (φ−1) E (F q ^ m ), that is, whether or not the point P is included in the set (φ−1) E (F q ^ m ). judge. When it is determined that the point Pε (φ−1) E (F q ^ m ), the
φは、q乗フロベニウス写像であり、φ:(x,y)→(xq,yq)と定義される。φは、E(Fq^m)乗の自己準同型写像である。また、集合(φ−1)E(Fq^m)は、E(Fq^m)上のすべての点を写像(φ−1)により写した点がなす集合のことである。すなわち、E(Fq^m)上の点を点aとして、(φ−1)a(=φa−a)がなす集合のことである。 φ is a qth power Frobenius map and is defined as φ: (x, y) → (x q , y q ). φ is a self-homogeneous mapping of the power of E (F q ^ m ). The set (φ-1) E (F q ^ m ) is a set formed by points obtained by mapping all points on E (F q ^ m ) by mapping (φ-1). That is, it is a set formed by (φ−1) a (= φa−a) with a point on E (F q ^ m ) as a point a.
E(Fq^m)/E(Fq)が位数Lの巡回群であり、♯E(Fq)とLが互いに素であれば、E(Fq^m)[L]=(φ−1)E(Fq^m)である(後述する補題1参照)。したがって、E(Fq^m)/E(Fq)が位数Lの巡回群であり、♯E(Fq)とLが互いに素であれば、圧縮例外判定部11は、点P∈(φ−1)E(Fq^m)であるかどうかの代わりに、点P∈E(Fq^m)[L]であるかどうかを判定してもよい。♯aはaの位数を表し、a[b]は、aに含まれる点のうちb倍したら無限遠点Oになる点の集合を表す。
If E (F q ^ m ) / E (F q ) is a cyclic group of order L and #E (F q ) and L are relatively prime, E (F q ^ m ) [L] = ( φ−1) E (F q ^ m ) (see
<ステップS2e>
圧縮交点生成部12は、入力された楕円曲線E(Fq^m)上の点P∈Fq^m 2を基にして、点φP,φ2P,…,φ(m−1)Pをそれぞれ求める。点Pと求まった点とは、係数生成部13、圧縮並替部14に送られる。
<Step S2e>
The compression
なお、点P∈Fq 2であればφP=Pであり、その対偶を取って、φP=Pでなければ点P∈Fq 2ではない。ここで、(φ−1)E(Fq^m)は、φa=aとならないような点a∈E(Fq^m)の集合である。したがって、点P∈(φ−1)E(Fq^m)であれば、φP=Pではないため、点P∈Fq 2でない。したがって、体の基本的な性質を考慮すると、点P∈(φ−1)E(Fq^m)であれば、点P,φP,φ2P,…,φ(m−1)Pはすべて異なる。 Note that if the point PεF q 2 , φP = P, and taking the even number, if φP = P, it is not the point PεF q 2 . Here, (φ−1) E (F q ^ m ) is a set of points a∈E (F q ^ m ) that does not satisfy φa = a. Therefore, if the point Pε (φ−1) E (F q ^ m ), since it is not φP = P, it is not the point PεF q 2 . Therefore, considering the basic properties of the body, if the point Pε (φ−1) E (F q ^ m ), the points P, φP, φ 2 P,..., Φ (m−1) P are Everything is different.
<ステップS3e>
係数生成部13は、点P,φP,φ2P,…,φ(m−1)Pを通る曲線の多項式の各項の係数λ0,λ2,…,λm−1∈Fqを求める。求まった係数λ0,λ2,…,λm−1は、後述する順序位置情報mPと共に点Pの圧縮情報を構成する。
<Step S3e>
xの重みを2、yの重みを3とすると、重みc(cは任意の自然数)の多項式f(x,y)=0は、楕円曲線E(Fq^m)とc個の交点で交わることが知られている。また、楕円曲線E(Fq^m)とc個の交点で交わる多項式f(x,y)=0の重みはcであることが知られている。ここで、点P,φP,φ2P,…,φ(m−1)Pの数はm個であるため、係数生成部13は、重みmの多項式の係数λ0,λ2,…,λm−1を求めればよい。
When the weight of x is 2 and the weight of y is 3, the polynomial f (x, y) = 0 of the weight c (c is an arbitrary natural number) is the intersection of the elliptic curve E (F q ^ m ) and c. It is known to cross. Further, it is known that the weight of the polynomial f (x, y) = 0 that intersects the elliptic curve E (F q ^ m ) at c intersections is c. Here, since the number of points P, φP, φ 2 P,..., Φ (m−1) P is m, the
重みi∈Nを持つO以外で正則な単項式をMiは、i≠1のとき
係数λ0,λ2,…,λm−1の求め方については、後述する[係数の第一の求め方]、[係数の第二の求め方]を参照のこと。例えば、係数生成部13は、これらの方法で係数λ0,λ2,…,λm−1を計算する。もちろん、他の方法を用いて、係数λ0,λ2,…,λm−1を計算してもよい。
For how to obtain the coefficients λ 0 , λ 2 ,..., Λ m−1 , refer to [First method for obtaining coefficients] and [Second method for obtaining coefficients] described later. For example, the
<ステップS4e>
圧縮並替部14は、圧縮交点生成部12が求めた点P,φP,φ2P,…,φ(m−1)Pを予め定められた順序で並べた点列(P,φP,φ2P,…,φ(m−1)P)*を生成する。アスタリスク*は、予め定められた順序で並び替えられた後の点列を意味する。生成された点列(P,φP,φ2P,…,φ(m−1)P)*は、順序位置情報決定部15に送られる。
<Step S4e>
The
予め定められた順序とは、その順序に従って一意に点列を生成することができる並べ方のことである。例えば、各点のx座標の値が、降べき順序又昇べきの順になるようにする順序のことである。もちろん、x座標の値の代わりに、y座標の値を用いてもよい。 The predetermined order is an arrangement that can generate a point sequence uniquely according to the order. For example, the order in which the value of the x coordinate of each point is in descending order or ascending order. Of course, the value of the y coordinate may be used instead of the value of the x coordinate.
<ステップS5e>
順序位置情報決定部15は、点列(P,φP,φ2P,…,φ(m−1)P)*における点Pの順序に関する位置の情報mPを決定する。点Pの順序に関する位置のことを、点Pの順序位置と略する。また、点Pの順序位置の情報を、点Pの順序位置情報mPと略する。
<Step S5e>
The order position
例えば、点列(P,φP,φ2P,…,φ(m−1)P)*における点Pの位置が左からmleft(1≦mleft≦m)番目であった場合には、その左から数えた点Pの順序位置mleftが、点Pの順序位置情報となる。同様に、点列(P,φP,φ2P,…,φ(m−1)P)*における右から数えた点Pの順序位置mrightを、点Pの順序位置情報mPとしてもよい。このように、点列(P,φP,φ2P,…,φ(m−1)P)*における点Pの順序位置を示す任意の情報を順序位置情報mPとして用いてもよい。 For example, when the position of the point P in the point sequence (P, φP, φ 2 P,..., Φ (m−1) P) * is m left (1 ≦ m left ≦ m) from the left , The order position m left of the point P counted from the left becomes the order position information of the point P. Similarly, the order position m right of the point P counted from the right in the point sequence (P, φP, φ 2 P,..., Φ (m−1) P) * may be used as the order position information m P of the point P. . Thus, arbitrary information indicating the order position of the point P in the point sequence (P, φP, φ 2 P,..., Φ (m−1) P) * may be used as the order position information m P.
点Pの順序位置情報mPと、係数λ0,λ2,…,λm−1とを少なくとも含む情報が、点Pの圧縮情報となる。点Pの圧縮情報は、点展開装置20に送られる。
And sequence position information m P of the point P, the coefficient lambda 0, lambda 2, ..., information including at least a lambda m-1 becomes the compression information of the point P. The compression information of the point P is sent to the
この例では、係数λ0,λ2,…,λm−1のデータサイズは合計で(m−1)×log2qであり、順序位置情報mpのデータサイズはlog2mであるため、圧縮情報のデータサイズは、少なくとも(m−1)×log2q+log2mとなる。したがって、m<<qである場合には(多くの場合この条件は満される。)、圧縮前のデータサイズである2×m×log2qや、背景技術に記載された点圧縮方法により圧縮されたデータサイズであるm×log2q+1よりも、点Pを特定するデータサイズを小さくすることができる。 In this example, the data sizes of the coefficients λ 0 , λ 2 ,..., Λ m−1 are (m−1) × log 2 q in total, and the data size of the order position information m p is log 2 m. The data size of the compression information is at least (m−1) × log 2 q + log 2 m. Therefore, when m << q (this condition is often satisfied), the data size before compression is 2 × m × log 2 q or the point compression method described in the background art. The data size for specifying the point P can be made smaller than m × log 2 q + 1 which is the compressed data size.
[点展開装置]
図3と図4を参照して、点展開装置20について説明する。図3は点展開装置20の機能構成を例示する図であり、図4は点展開装置20の処理の流れを例示するフローチャートである。
[Point deployment device]
The
<ステップS1d>
圧縮情報のうち係数λ0,λ2,…,λm−1が、展開交点生成部21に入力される。展開交点生成部21は、係数λ0,λ2,…,λm−1を持つ重みmの多項式f(x,y)と、楕円曲線E(fq^m)との交点をそれぞれ求める。
<Step S1d>
Of the compression information, coefficients λ 0 , λ 2 ,..., Λ m−1 are input to the expanded
係数λ0,λ2,…,λm−1が点Pに基づいて点圧縮装置10により正統に生成されたものである場合には、展開交点生成部21により計算される交点は、点P,φP,φ2P,…,φ(m−1)Pとなる。計算された交点は、展開並替部22に送られる。
If the coefficients λ 0 , λ 2 ,..., Λ m−1 are legitimately generated by the
<ステップS2d>
展開並替部22は、計算された交点を、予め定められた順序で並び替えた点列を生成する。展開並替部22における予め定められた順序は、点圧縮装置10の圧縮並替部14における予め定められた順序と同じである。この例では、点圧縮装置10と点展開装置20とには、同じ、予め定められた順序が定められている。並び替えられた点列は、点決定部23に送られる。
<Step S2d>
The
展開交点生成部21が生成した交点が点P,φP,φ2P,…,φ(m−1)Pである場合には、展開並替部22により並び替えられた点列は(点P,φP,φ2P,…,φ(m−1)P)*となる。
When the intersections generated by the expanded
<ステップS3d>
並び替えられた点列(点P,φP,φ2P,…,φ(m−1)P)*と、圧縮情報のうち順序位置情報mPが、点決定部23に入力される。点決定部23は、順序位置情報mpにより定まる順序位置にある点を出力する。例えば、順序位置情報mpが、点列の左から何番目であるにより点Pの順序位置を表すものである場合には、並び替えられた点列(点P,φP,φ2P,…,φ(m−1)P)*の左からmp番目の点を出力する。圧縮情報が点Pに基づいて点圧縮装置10により正統に圧縮されたものである場合には、この処理により、圧縮の対象となった点Pが出力される。
<Step S3d>
The rearranged point sequence (points P, φP, φ 2 P,..., Φ (m−1) P) * and the order position information m P among the compression information are input to the
<ステップS4d>
展開例外判定部24は、点決定部23が出力した点が、集合(φ−1)E(Fq^m)に含まれるかどうかを判定する。集合(φ−1)E(Fq^m)に含まれると判定された場合には、圧縮情報が点Pに基づいて点圧縮装置10により正統に圧縮され、また正しく展開されたと判断することができる(ステップS4dy)。集合(φ−1)E(Fq^m)に含まれないと判断された場合には、圧縮情報が点Pに基づいて点圧縮装置10により正統に圧縮されなかった、または、正しく展開されなかったと判断することができる(ステップS4dn)。この場合には、点展開装置20は、点決定部23が出力した点を受け入れない。
<Step S4d>
The expansion
このように、データサイズが(m−1)×log2q+log2mである圧縮情報を展開して、圧縮の対象となった点Pを復元することができる。 In this way, the compression information whose data size is (m−1) × log 2 q + log 2 m can be expanded to restore the point P that is the object of compression.
[補題1]
E(Fq^m)/E(Fq)が位数Lの巡回群であり、♯E(Fq)とLが互いに素であれば、
E(Fq^m)[L]=(φ−1)E(Fq^m)
[Lemma 1]
If E (F q ^ m ) / E (F q ) is a cyclic group of order L, and #E (F q ) and L are relatively prime,
E (F q ^ m ) [L] = (φ-1) E (F q ^ m )
《補題1の証明》
φ−1は、E(Fq^m)上の自己準同型写像であるから、準同型定理によってE(Fq^m)を、
Ker(φ−1)(+)Im(φ−1)
に分解できる。Ker(φ−1)=E(Fq)であるから、
Im(φ−1)〜E(Fq^m)/E(Fq)
E(Fq^m)/E(Fq)が位数Lの巡回群であり、♯E(Fq)とLが互いに素なので、
E(Fq^m)[L]=(φ−1)E(Fq^m)
である。
<< Proof of
phi-1, since a endomorphism on E (F q ^ m), the E (F q ^ m) by homomorphic theorem,
Ker (φ-1) (+) Im (φ-1)
Can be disassembled. Since Ker (φ−1) = E (F q ),
Im (φ-1) to E (F q ^ m ) / E (F q )
Since E (F q ^ m ) / E (F q ) is a cyclic group of order L, and #E (F q ) and L are relatively prime,
E (F q ^ m ) [L] = (φ-1) E (F q ^ m )
It is.
[補題2]
P∈(φ−1)E(Fq^m) ⇒ Σi=0 m−1φiP=O
[Lemma 2]
Pε (φ−1) E (F q ^ m ) = > Σ i = 0 m−1 φ i P = O
《補題2の証明》
P∈(φ−1)E(Fq^m)より、
Σi=0 m−1φiP∈(φm−1)E(Fq^m)={O}
したがって、Σi=0 m−1φiP=Oである。
<< Proof of
From P∈ (φ−1) E (F q ^ m ),
Σ i = 0 m−1 φ i P∈ (φ m −1) E (F q ^ m ) = {O}
Therefore, Σ i = 0 m−1 φ i P = O.
《補題2についての補足》
mと♯E(Fq)が互いに素ならば、補題2について逆が言える。すなわち、
Σi=0 m−1φiP=O ⇒ P∈(φ−1)E(Fq^m)
である。したがって、mと♯E(Fq)が互いに素である場合には、圧縮例外判定部11(図1)及び/又は展開例外判定部24(図3)は、P∈(φ−1)E(Fq^m)であるかどうかの代わりに、Σi=0 m−1φiP=Oであるかどうかを判定してもよい。
《Supplement for
If m and #E (F q ) are relatively prime, the converse is true for
Σ i = 0 m−1 φ i P = O => P∈ (φ−1) E (F q ^ m )
It is. Therefore, when m and #E (F q ) are relatively prime, the compression exception determination unit 11 (FIG. 1) and / or the deployment exception determination unit 24 (FIG. 3) determines that P∈ (φ−1) E Instead of whether or not (F q ^ m ), it may be determined whether or not Σ i = 0 m−1 φ i P = O.
[係数の第一の求め方]
係数生成部13(図1)における係数λ0,λ2,…,λm−1の求め方の例について説明する。
[First method of determining the coefficient]
An example of how to obtain the coefficients λ 0 , λ 2 ,..., Λ m−1 in the coefficient generator 13 (FIG. 1) will be described.
f(x,y)=Mm(x,y)+λ0M0(x,y)+Σi=2 m−1λiMi(x,y)=0に点P,φP,φ2P,…,φ(m−1)Pをそれぞれ代入すると、λ0,λ2,…,λm−1についてのm個の式ができる。これらの式をλ0,λ2,…,λm−1について解けばよい。 f (x, y) = M m (x, y) + λ 0 M 0 (x, y) + Σ i = 2 m−1 λ i M i (x, y) = 0 at points P, φP, φ 2 P , ..., substituting φ a (m-1) P, respectively, lambda 0, lambda 2, ..., it is the m equations for lambda m-1. These equations may be solved for λ 0 , λ 2 ,..., Λ m−1 .
すなわち、点Pの座標の値を(xφ0,yφ0)、点φPの座標の値を(xφ1,yφ1)、…、点φ(m−1)Pの座標の値を(xφ(m−1),yφ(m−1))として、これらをそれぞれf(x,y=0に代入すると、
Mm(xφ0,yφ0)+λ0M0(xφ0,yφ0)+Σi=2 m−1λiMi(xφ0,yφ0)=0
Mm(xφ1,yφ1)+λ0M0(xφ1,yφ1)+Σi=2 m−1λiMi(xφ1,yφ1)=0
…
Mm(xφ(m−1),yφ(m−1))+λ0M0(xφ(m−1),yφ(m−1))+Σi=2 m−1λiMi(xφ(m−1),yφ(m−1))=0
というλ0,λ2,…,λm−1についてのm個の式ができる。これらの式において重みmの項Mmを右辺にそれぞれ移動したものは、行列を用いて以下のように表現できる。
That is, the coordinate value of the point P is ( xφ0 , yφ0 ), the coordinate value of the point φP is ( xφ1 , yφ1 ),..., And the coordinate value of the point φ (m−1) P is ( xφ (M−1) , y φ (m−1) ) and substituting these into f (x, y = 0),
M m (x φ0 , y φ0 ) + λ 0 M 0 (x φ0 , y φ0 ) + Σ i = 2 m−1 λ i M i (x φ0 , y φ0 ) = 0
M m (x φ 1 , y φ 1 ) + λ 0 M 0 (x φ 1 , y φ 1 ) + Σ i = 2 m−1 λ i M i (x φ 1 , y φ 1 ) = 0
...
M m (x φ (m−1) , y φ (m−1) ) + λ 0 M 0 (x φ (m−1) , y φ (m−1) ) + Σ i = 2 m−1 λ i M i (x [ phi] (m-1) , y [ phi] (m-1) ) = 0
M equations for λ 0 , λ 2 ,..., Λ m−1 are obtained. In these formulas, the term M m of the weight m moved to the right side can be expressed as follows using a matrix.
[係数の第二の求め方]
重みmのモニック多項式f(x,y)=Mm(x,y)+λ0M0(x,y)+Σi=2 m−1λiMi(x,y)=0の因子div(f)は、
div(f)=Σi=0 m−1(φiP)−m(O)
である。したがって、以下では、重みmのモニック多項式f(x,y)を求めるために、因子div(f)がdiv(f)=Σi=0 m−1(φiP)−m(O)である多項式を作ることを考える。ここで、多項式gについての因子div(g)は、零点と極の形式和であり、+の括弧で囲まれたものは多項式gの零点、−の括弧で囲まれたものは多項式gの極を表す。
[The second way to find the coefficient]
Factor div () of weight m m polynomial f (x, y) = M m (x, y) + λ 0 M 0 (x, y) + Σ i = 2 m−1 λ i M i (x, y) = 0 f)
div (f) = Σ i = 0 m−1 (φ i P) −m (O)
It is. Therefore, in the following, in order to obtain the monic polynomial f (x, y) of the weight m, the factor div (f) is div (f) = Σ i = 0 m−1 (φ i P) −m (O). Consider creating a polynomial. Here, the factor div (g) for the polynomial g is a formal sum of zeros and poles, the parentheses enclosed in + are the zeros of the polynomial g, and those enclosed in parentheses-are the poles of the polynomial g. Represents.
計算の便宜のため以下の定義を行う。なお以下では、
Qn=Σi=0 n−1φiP
div(fn)=Σi=0 n−1(φiP)−(Qn)−(n−1)(O)
Qn=(xn,yn),φnP=(xn’,yn’)とし、ln、vnを
ln=(xn’−xn)(y−yn)−(yn’−yn)(x−xn)
vn=(x−xn+1)
とすると、
div(ln)=(Qn)+(φnP)+(−Qn+1)−3(O)
div(vn)=(−Qn+1)+(Qn+1)−2(O)
であるから、
fn+1=fnln/vn …(1)
である。また、div(f1)=(P)−(P)−0(O)であるから、
f1=1 …(2)
と出来る。上記(1)と(2)の漸化式をypの2次以上の項を楕円の定義式で還元し、分母と分子を通分しながらm−1回繰り返すことにより、
fm=Σi=0 m−1(φiP)−(Qm)−(m−1)(O)
を作ることができる。ここで、点P∈(φ−1)E(Fq^m)であれば、Qm=Σi=0 m−1φiP=Oである(前述の補題2参照)。したがって、
fm=Σi=0 m−1(φiP)−m(O)
となる。このfmが、点P,φP,φ2P,…,φm−1Pを通る重みmのモニック多項式f(x,y)となる。この過程の計算量はFq^m上演算O(m2)回である。
The following definitions are made for convenience of calculation. In the following,
Q n = Σ i = 0 n−1 φ i P
div (f n ) = Σ i = 0 n−1 (φ i P) − (Q n ) − (n−1) (O)
Q n = (x n, y n), φ n P = (x n ', y n') and, l n, v n a l n = (x n '-x n) (y-y n) - (Y n ′ −y n ) (x−x n )
v n = (x−x n + 1 )
Then,
div (l n ) = (Q n ) + (φ n P) + (− Q n + 1 ) −3 (O)
div (v n ) = (− Q n + 1 ) + (Q n + 1 ) −2 (O)
Because
f n + 1 = f n l n / v n (1)
It is. Since div (f 1 ) = (P) − (P) −0 (O),
f 1 = 1 (2)
And can. (1) and the recurrence formula (2) reducing the second and higher terms y p by defining equation of an ellipse, by repeating m-1 times while Tsubun the denominator and the numerator,
f m = Σ i = 0 m−1 (φ i P) − (Q m ) − (m−1) (O)
Can be made. Here, if the point Pε (φ−1) E (F q ^ m ), then Q m = Σ i = 0 m−1 φ i P = O (see
f m = Σ i = 0 m−1 (φ i P) −m (O)
It becomes. This f m becomes the monic polynomial f (x, y) of the weight m passing through the points P, φP, φ 2 P,..., Φ m−1 P. The amount of calculation in this process is O (m 2 ) operations over F q ^ m .
実際のf(x,y)の計算は必ずしも上記の式に基づいて行う必要はない。例えば、
div(fn)=Σi=0 n−1(φiP)−(Qn)−(n−1)(O)
に対して、
div(fn σ^n)=Σi=n 2n−1(φiP)−(φnQn)−(n−1)(O)
であるから、
div(ln’)=(Qn)+(φnQn)+(−Q2n)−3(O)
div(vn’)=(−Q2n)+(Q2n)−2(O)
なるln’,vn’を使えば、
f2n=fnfn σ^nln’/vn’
とすることができる。
The actual calculation of f (x, y) is not necessarily performed based on the above formula. For example,
div (f n ) = Σ i = 0 n−1 (φ i P) − (Q n ) − (n−1) (O)
Against
div (f n σ ^ n ) = Σ i = n 2n−1 (φ i P) − (φ n Q n ) − (n−1) (O)
Because
div (l n ′) = (Q n ) + (φ n Q n ) + (− Q 2n ) −3 (O)
div (v n ′) = (− Q 2n ) + (Q 2n ) −2 (O)
If you use l n ', v n '
f 2n = f n f n σ ^ n l n '/ v n '
It can be.
[変形例]
点展開装置20を用いて、平文を楕円曲線E(Fq^m)上の点に確率的に埋め込むことができる。係数λ0,λ2,…,λm−1∈Fqと順序位置情報mPの一部に平文を割り当てて、残りの部分をランダムに決定する。例えば、平文をq進数で表現したときの各桁の値を係数λ0,λ2,…,λm−1の何れかに対応させ、対応していない係数及び順序位置情報mPの値はランダムに決定する。そして、これらの係数λ0,λ2,…,λm−1∈Fqと順序位置情報mPを基にして、点展開装置20が点展開を試み、点の展開に成功すれば、平文はその展開された点に埋め込まれたことになるのである。
[Modification]
The plain text can be stochastically embedded at a point on the elliptic curve E (F q ^ m ) using the
集合(φ−1)E(Fq^m)の位数がおよそqm−1であるのに対して、係数λ0,λ2,…,λm−1∈Fqと順序位置情報mPの取り得る値のバリエーションはmqm−1であるため、平文の楕円曲線E(Fq^m)上の点への埋め込みが成功する確率はおよそ、qm−1/mqm−1=1/mである。従来知られていた埋め込み方法の成功確率は1/qであるため、m<<qの場合は、この方法は効率がよいと言える。 The order of the set (φ−1) E (F q ^ m ) is approximately q m−1 , whereas the coefficients λ 0 , λ 2 ,..., Λ m−1 ∈F q and the order position information m Since the variation of the value that P can take is mq m−1 , the probability of successful embedding in a point on the plaintext elliptic curve E (F q ^ m ) is approximately q m−1 / mq m−1 = 1 / m. Since the success probability of the conventionally known embedding method is 1 / q, it can be said that this method is efficient when m << q.
点圧縮の対象となる点Pが集合(φ−1)E(Fq^m)に含まれることがわかっている等の場合には、点圧縮装置10(図1)の圧縮例外判定部11、及び、ステップS1e(図3)の処理は必ずしも必要ではない。同様に、係数λ0,λ2,…,λm−1が点Pに基づいて点圧縮装置10により正統に生成されたものであることがわかっている等の場合には、点展開装置20(図3)の展開例外判定部24、及び、ステップS4d(図4)の処理は必ずしも必要ではない。
When it is known that the point P to be subjected to point compression is included in the set (φ−1) E (F q ^ m ), the compression exception determination unit 11 of the point compression device 10 (FIG. 1). And the process of step S1e (FIG. 3) is not necessarily required. Similarly, when it is known that the coefficients λ 0 , λ 2 ,..., Λ m−1 are legitimately generated by the
図1に例示した点圧縮装置10及び図3に例示した点展開装置20においては、各部間でデータが直接送られているが、図示していない記憶部を介して、間接的にデータが送られてもよい。
In the
また、圧縮並替部14は、図示していない記憶部に格納された点P,φP,…,φ(m−1)Pを予め定めた順序で並び替えてもよい。すなわち、圧縮並替部14に、点P,φP,…,φ(m−1)Pが入力されなくてもよい。同様に、順序位置順序決定部15は、記憶部に格納された点P,φP,…,φ(m−1)Pにおける点Pの位置順序情報を決定し、(点P,φP,…,φ(m−1)P)*が入力されなくてもよい。点展開装置20の順序位置情報決定部15、展開並替部22、点決定部23についても同様である。
Further, the
上述の構成をコンピュータによって実現する場合、点圧縮装置10、点展開装置20の各部はそれぞれプログラムによって記述される。そして、このプログラムをコンピュータで実行することにより、上記各部の機能がコンピュータ上で実現される。
When the above configuration is realized by a computer, each unit of the
すなわち、CPUが各プログラムを逐次読み込んで実行することにより、圧縮例外判定部11、圧縮交点生成部12、係数生成部13、圧縮並替部14、順序位置情報決定部15、展開交点生成部21、展開並替部22、点決定部23及び展開例外判定部24の機能が実現される。また、上記した図示していない記憶部等の記憶部は、メモリ、ハードディスク等記憶手段により実現される。
That is, the CPU sequentially reads and executes each program, whereby the compression exception determination unit 11, the compression
この処理内容を記述したプログラムは、コンピュータで読み取り可能な記録媒体に記録しておくことができる。コンピュータで読み取り可能な記録媒体としては、例えば、磁気記録装置、光ディスク、光磁気記録媒体、半導体メモリ等どのようなものでもよいが、具体的には、例えば、磁気記録装置として、ハードディスク装置、フレキシブルディスク、磁気テープ等を、光ディスクとして、DVD(Digital Versatile Disc)、DVD−RAM(Random Access Memory)、CD−ROM(Compact Disc Read Only Memory)、CD
−R(Recordable)/RW(ReWritable)等を、光磁気記録媒体として、MO(Magneto-Optical disc)等を、半導体メモリとしてEEP−ROM(Electronically Erasable and Programmable-Read Only Memory)等を用いることができる。
The program describing the processing contents can be recorded on a computer-readable recording medium. The computer-readable recording medium may be any medium such as a magnetic recording device, an optical disk, a magneto-optical recording medium, or a semiconductor memory. Specifically, for example, the magnetic recording device may be a hard disk device or a flexible Discs, magnetic tapes, etc. as optical discs, DVD (Digital Versatile Disc), DVD-RAM (Random Access Memory), CD-ROM (Compact Disc Read Only Memory), CD
-R (Recordable) / RW (ReWritable), etc., MO (Magneto-Optical disc), etc. as a magneto-optical recording medium, EEP-ROM (Electronically Erasable and Programmable-Read Only Memory), etc. as a semiconductor memory it can.
また、このプログラムの流通は、例えば、そのプログラムを記録したDVD、CD−ROM等の可搬型記録媒体を販売、譲渡、貸与等することによって行う。さらに、このプログラムをサーバコンピュータの記憶装置に格納しておき、ネットワークを介して、サーバコンピュータから他のコンピュータにそのプログラムを転送することにより、このプログラムを流通させる構成としてもよい。 The program is distributed by selling, transferring, or lending a portable recording medium such as a DVD or CD-ROM in which the program is recorded. Furthermore, the program may be distributed by storing the program in a storage device of the server computer and transferring the program from the server computer to another computer via a network.
また、上述した実施形態とは別の実行形態として、コンピュータが可搬型記録媒体から直接このプログラムを読み取り、そのプログラムに従った処理を実行することとしてもよく、さらに、このコンピュータにサーバコンピュータからプログラムが転送されるたびに、逐次、受け取ったプログラムに従った処理を実行することとしてもよい。また、サーバコンピュータから、このコンピュータへのプログラムの転送は行わず、その実行指示と結果取得のみによって処理機能を実現する、いわゆるASP(Application Service Provider)型のサービスによって、上述の処理を実行する構成としてもよい。なお、本形態におけるプログラムには、電子計算機による処理の用に供する情報であってプログラムに準ずるもの(コンピュータに対する直接の指令ではないがコンピュータの処理を基底する性質を有するデータ等)を含むものとする。 As an execution form different from the above-described embodiment, the computer may read the program directly from the portable recording medium and execute processing according to the program. Each time is transferred, the processing according to the received program may be executed sequentially. Also, the program is not transferred from the server computer to the computer, and the above-described processing is executed by a so-called ASP (Application Service Provider) type service that realizes the processing function only by the execution instruction and result acquisition. It is good. Note that the program in this embodiment includes information that is used for processing by an electronic computer and that conforms to the program (data that is not a direct command to a computer but has a property that is based on computer processing).
また、この形態では、コンピュータ上で所定のプログラムを実行させることにより、本装置を構成することとしたが、これらの処理内容の少なくとも一部をハードウェア的に実現することとしてもよい。 In this embodiment, the present apparatus is configured by executing a predetermined program on a computer. However, at least a part of these processing contents may be realized by hardware.
また、上述の各種の処理は、記載に従って時系列に実行されるのみならず、処理を実行する装置の処理能力あるいは必要に応じて並列的にあるいは個別に実行されてもよい。例えば、点圧縮装置10のステップS3e(図2)の処理と、ステップS4e及びステップS5eの処理とを並列的に行ってもよい。その他、本発明の趣旨を逸脱しない範囲で適宜変更が可能であることはいうまでもない。
In addition, the various processes described above are not only executed in time series according to the description, but may be executed in parallel or individually according to the processing capability of the apparatus that executes the processes or as necessary. For example, the process of step S3e (FIG. 2) of the
10 点圧縮装置
11 圧縮例外判定部
12 圧縮交点生成部
13 係数生成部
14 圧縮並替部
15 順序位置情報決定部
20 点展開装置
21 展開交点生成部
22 展開並替部
23 点決定部
24 展開例外判定部
DESCRIPTION OF
Claims (10)
φをq乗フロベニウス写像として、上記点Pから、点φP,φ2P,…,φ(m−1)P∈E(Fq^m)をそれぞれ求める圧縮交点生成手段と、
上記点P,φP,φ2P,…,φ(m−1)Pを通る曲線の多項式の各項の係数λ0,λ2,…,λm−1∈Fqを求める係数生成手段と、
上記点P,φP,φ2P,…,φ(m−1)Pを予め定められた順序で並べた点列を生成する圧縮並替手段と、
上記点列における点Pの順序に関する位置(以下、順序位置とする。)の情報(以下、順序位置情報mPとする。)を決定する順序位置情報決定手段と、
を備え、
上記点Pの圧縮情報は、上記順序位置情報mPと上記係数λ0,λ2,…,λm−1とを含むことを特徴とする楕円曲線の点圧縮装置。 An elliptic curve E (F q ^ m ) = {(x, y) ∈, where the characteristic q is a prime number or its power, m is an expansion order, a, b∈F q , and O is an infinite point. In a point compression apparatus that compresses a point PεF q ^ m 2 on F q ^ m 2 | y 2 = x 3 + ax + b} ∪O to generate compression information of the point P,
compression intersection generation means for determining points φP, φ 2 P,..., φ (m − 1) P∈E (F q ^ m ) from the above point P, where φ is a qth power Frobenius map;
The point P, φP, φ 2 P, ..., φ (m - 1) coefficient of each term of the polynomial curve passing through P λ 0, λ 2, ... , a coefficient generating means for obtaining the λ m-1 ∈F q ,
Compression rearrangement means for generating a point sequence in which the points P, φP, φ 2 P,..., Φ (m − 1) P are arranged in a predetermined order;
Order position information determining means for determining information (hereinafter referred to as order position information m P ) of the position (hereinafter referred to as order position) relating to the order of the points P in the point sequence;
With
Compression information of the point P, the sequence position information m P and the coefficient lambda 0, lambda 2, ..., compressor point of the elliptic curve, characterized in that it comprises a λ m-1.
点P∈(φ−1)E(Fq^m)であるかを判定する圧縮例外判定手段をさらに備え、
上記圧縮交点生成手段は、点P∈(φ−1)E(Fq^m)であると判定された場合に、上記点Pから、点φP,φ2P,…,φ(m−1)P∈E(Fq^m)をそれぞれ求める手段である、
ことを特徴とする楕円曲線の点圧縮装置。 In the elliptic curve point compression device according to claim 1,
A compression exception judging means for judging whether or not the point Pε (φ−1) E (F q ^ m );
The compression intersection generating means, when it is determined that the point P∈ (φ-1) E ( F q ^ m), from the point P, the point φP, φ 2 P, ..., φ (m - 1 ) PεE (F q ^ m ) is a means for obtaining each.
An elliptic curve point compression device characterized by the above.
上記点Pの圧縮情報は、点Pを含む複数の点を予め定められた順序で並べた場合の点Pの順序に関する位置(以下、順序位置とする。)の情報(以下、順序位置情報mPとする。)と、係数λ0,λ2,…,λm−1∈Fqとを含み、
上記係数λ0,λ2,…,λm−1で特定される多項式で表される曲線と上記楕円曲線E(Fq m)との複数の交点をそれぞれ求める展開交点生成手段と、
上記求まった交点を上記予め定められた順序で並び替えた点列を生成する展開並替手段と、
上記点列のうちの、上記順序位置情報mPにより定まる順序位置にある点を出力する点決定手段と、
を備える楕円曲線の点展開装置。 An elliptic curve E (F q ^ m ) = {(x, y) ∈, where the characteristic q is a prime number or its power, m is an expansion order, a, b∈F q , and O is an infinite point. F q ^ m 2 | y 2 = x 3 + ax + b} In the point expansion device that generates the point P by expanding the compression information of the point P on O,
The compression information of the point P is information (hereinafter referred to as order position information) of position (hereinafter referred to as order position) regarding the order of the point P when a plurality of points including the point P are arranged in a predetermined order. P ), and coefficients λ 0 , λ 2 ,..., Λ m−1 ∈F q ,
Expanded intersection generation means for respectively obtaining a plurality of intersections between a curve represented by a polynomial specified by the coefficients λ 0 , λ 2 ,..., Λ m−1 and the elliptic curve E (F q m );
A deployment rearrangement means for generating a point sequence in which the obtained intersections are rearranged in the predetermined order;
A point determination means for outputting a point in the order position determined by the order position information m P in the point sequence;
An elliptic curve point expansion device.
φをq乗フロベニウス写像として、上記点出力手段によって出力された点が(φ−1)E(Fq^m)に含まれるかどうかを判定し、上記出力された点が(φ−1)E(Fq^m)に含まれないと判定された場合に正常に点が展開されなかったと判断する展開例外判定手段をさらに備える、
ことを特徴とする楕円曲線の点展開装置。 The elliptic curve point expansion device according to claim 3,
Using φ as the qth power Frobenius map, it is determined whether or not the point output by the point output means is included in (φ−1) E (F q ^ m ), and the output point is (φ−1) A deployment exception determining unit that determines that a point has not been normally expanded when it is determined that the point is not included in E (F q ^ m );
An elliptic curve point expansion device.
圧縮交点生成部が、φをq乗フロベニウス写像として、上記点Pから、点φP,φ2P,…,φ(m−1)P∈E(Fq^m)をそれぞれ求める圧縮交点生成ステップと、
係数生成部が、上記点P,φP,φ2P,…,φ(m−1)Pを通る曲線の多項式の各項の係数λ0,λ2,…,λm−1∈Fqを求める係数生成ステップと、
圧縮並替部が、上記点P,φP,φ2P,…,φ(m−1)Pを予め定められた順序で並べた点列を生成する圧縮並替ステップと、
順序位置情報決定部が、上記点列における点Pの順序に関する位置(以下、順序位置とする。)の情報(以下、順序位置情報mPとする。)を決定する順序位置情報決定ステップと、
を有し、
上記点Pの圧縮情報は、上記順序位置情報mPと上記係数λ0,λ2,…,λm−1とを含むことを特徴とする楕円曲線の点圧縮方法。 An elliptic curve E (F q ^ m ) = {(x, y) ∈, where the characteristic q is a prime number or its power, m is an expansion order, a, b∈F q , and O is an infinite point. In the point compression method for compressing the point PεF q ^ m 2 on F q ^ m 2 | y 2 = x 3 + ax + b} ∪O and generating the compression information of the point P,
The compression intersection generation unit obtains points φP, φ 2 P,..., Φ (m − 1) P∈E (F q ^ m ) from the point P , using φ as the qth power Frobenius map. When,
Coefficient generation unit, the point P, φP, φ 2 P, ..., φ (m - 1) coefficient of each term of the polynomial curve passing through P λ 0, λ 2, ... , a λ m-1 ∈F q A coefficient generation step to be obtained;
Compression shuffle play section, the point P, φP, φ 2 P, ..., φ - a (m 1) compression rearrangement step of generating a sequence of points arrayed at a predetermined order P,
An order position information determination unit for determining information (hereinafter referred to as order position information m P ) of a position related to the order of the points P in the point sequence (hereinafter referred to as order position);
Have
Compression information of the point P, the sequence position information m P and the coefficient lambda 0, lambda 2, ..., point compression method of the elliptic curve, characterized in that it comprises a λ m-1.
圧縮例外判定部が、点P∈(φ−1)E(Fq^m)であるかを判定する圧縮例外判定ステップをさらに有し、
上記圧縮交点生成ステップは、点P∈(φ−1)E(Fq^m)であると判定された場合に、上記点Pから、点φP,φ2P,…,φ(m−1)P∈E(Fq^m)をそれぞれ求めるステップである、
ことを特徴とする楕円曲線の点圧縮方法。 In the elliptic curve point compression method according to claim 5,
The compression exception determination unit further includes a compression exception determination step of determining whether or not the point Pε (φ−1) E (F q ^ m );
The compression intersection generation step, when it is determined that the point P∈ (φ-1) E ( F q ^ m), from the point P, the point φP, φ 2 P, ..., φ (m - 1 ) P∈E (F q ^ m ) respectively.
An elliptic curve point compression method characterized by the above.
上記点Pの圧縮情報は、点Pを含む複数の点を予め定められた順序で並べた場合の点Pの順序に関する位置(以下、順序位置とする。)の情報(以下、順序位置情報mPとする。)と、係数λ0,λ2,…,λm−1∈Fqとを含み、
展開交点生成部が、上記係数λ0,λ2,…,λm−1で特定される多項式で表される曲線と上記楕円曲線E(Fq m)との複数の交点をそれぞれ求める展開交点生成ステップと、
展開並替部が、上記求まった交点を上記予め定められた順序で並び替えた点列を生成する展開並替ステップと、
点決定部が、上記点列のうちの、上記順序位置情報mPにより定まる順序位置にある点を出力する点決定ステップと、
を有する楕円曲線の点展開方法。 An elliptic curve E (F q ^ m ) = {(x, y) ∈, where the characteristic q is a prime number or its power, m is an expansion order, a, b∈F q , and O is an infinite point. F q ^ m 2 | y 2 = x 3 + ax + b} ∪ In the point expansion method for generating the point P by expanding the compression information of the point P on ∪O,
The compression information of the point P is information (hereinafter referred to as order position information) of position (hereinafter referred to as order position) regarding the order of the point P when a plurality of points including the point P are arranged in a predetermined order. P ), and coefficients λ 0 , λ 2 ,..., Λ m−1 ∈F q ,
A developed intersection generating unit obtains a plurality of intersections between the curve represented by the polynomial specified by the coefficients λ 0 , λ 2 ,..., Λ m−1 and the elliptic curve E (F q m ). Generation step;
Expand shuffle play unit, the expansion rearrangement step of generating a sequence of points rearranged in the order of the intersections Motoma' above said predetermined,
Point determination unit, of the above point sequence, a decision step that outputs a certain point in order position determined by the sequence position information m P,
A point expansion method of an elliptic curve having
展開例外判定部が、φをq乗フロベニウス写像として、上記点出力ステップによって出力された点が(φ−1)E(Fq^m)に含まれるかどうかを判定し、上記出力された点が(φ−1)E(Fq^m)に含まれないと判定された場合に正常に点が展開されなかったと判断する展開例外判定ステップをさらに有する、ことを特徴とする楕円曲線の点展開方法。 The elliptic curve point expansion method according to claim 7,
The expansion exception determination unit determines whether φ is a qth power Frobenius map and whether or not the point output by the point output step is included in (φ−1) E (F q ^ m ), and the output point Of the elliptic curve, further comprising a development exception judgment step for judging that the point has not been developed normally when it is determined that is not included in (φ−1) E (F q ^ m ) Deployment method.
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2008008227A JP4960894B2 (en) | 2008-01-17 | 2008-01-17 | Elliptic curve point compression device, elliptic curve point expansion device, method and program thereof |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2008008227A JP4960894B2 (en) | 2008-01-17 | 2008-01-17 | Elliptic curve point compression device, elliptic curve point expansion device, method and program thereof |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JP2009169171A JP2009169171A (en) | 2009-07-30 |
| JP4960894B2 true JP4960894B2 (en) | 2012-06-27 |
Family
ID=40970396
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2008008227A Active JP4960894B2 (en) | 2008-01-17 | 2008-01-17 | Elliptic curve point compression device, elliptic curve point expansion device, method and program thereof |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP4960894B2 (en) |
Families Citing this family (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP5300374B2 (en) * | 2008-08-25 | 2013-09-25 | 株式会社東芝 | Expression conversion device, arithmetic device, expression conversion method, and program |
| JP5300373B2 (en) | 2008-08-25 | 2013-09-25 | 株式会社東芝 | Apparatus and program for performing data compression processing using algebraic torus |
| JP5354994B2 (en) * | 2008-08-25 | 2013-11-27 | 株式会社東芝 | Apparatus and program for performing data compression processing using algebraic torus |
| JP5514345B2 (en) * | 2013-04-26 | 2014-06-04 | 株式会社東芝 | Expression conversion device, arithmetic device, expression conversion method, and program |
| WO2020101567A1 (en) * | 2018-11-16 | 2020-05-22 | Microsec Pte Ltd | Method and architecture for securing and managing networks of embedded systems with optimised public key infrastructure |
Family Cites Families (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP3787075B2 (en) * | 2001-04-09 | 2006-06-21 | 日本電信電話株式会社 | Subgroup origin determination device of rational point group on curve, program thereof, and recording medium thereof |
| JP4752176B2 (en) * | 2003-09-11 | 2011-08-17 | 日本電信電話株式会社 | Unidirectional function calculation method, apparatus and program |
-
2008
- 2008-01-17 JP JP2008008227A patent/JP4960894B2/en active Active
Also Published As
| Publication number | Publication date |
|---|---|
| JP2009169171A (en) | 2009-07-30 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| Cheon et al. | HAETAE: Shorter lattice-based fiat-shamir signatures | |
| Bruin et al. | The Mordell–Weil sieve: proving non-existence of rational points on curves | |
| Göloğlu et al. | On the Function Field Sieve and the Impact of Higher Splitting Probabilities: Application to Discrete Logarithms in and | |
| Joux et al. | The function field sieve is quite special | |
| CN101300569B (en) | System and method for hash function construction from expander graph | |
| CN107430829B (en) | Share recovery system, device, method, and storage medium | |
| JP4960894B2 (en) | Elliptic curve point compression device, elliptic curve point expansion device, method and program thereof | |
| CN101061526B (en) | Encryption computing device | |
| JP2010204466A (en) | Encryption device, decryption device, key generating device and program | |
| US10163371B1 (en) | Rotating bit values based on a data structure while generating a large, non-compressible data stream | |
| JP2012154968A (en) | Secure aggregate function system, secret aggregate function apparatus, secure aggregate function processing method and secure aggregate function program | |
| Pereira et al. | x-only point addition formula and faster compressed SIKE | |
| Huang et al. | Finding primitive elements in finite fields of small characteristic | |
| CN113687773B (en) | Data compression model training method and device and storage medium | |
| US8233616B2 (en) | Apparatus and computer program product for performing data compression processing using algebraic torus | |
| JP6059159B2 (en) | Share conversion system, share conversion method, program | |
| CN112417478A (en) | Data processing method, apparatus, equipment and storage medium | |
| JP5300373B2 (en) | Apparatus and program for performing data compression processing using algebraic torus | |
| JP7016457B2 (en) | Final power unit, pairing arithmetic unit, cryptographic processing unit, final power calculation method and final power calculation program | |
| Gaudry | Integer factorization and discrete logarithm problems | |
| Heule et al. | Clausal Proof Compression. | |
| Joux | A Tutorial on High Performance Computing Applied to Cryptanalysis: (Invited Talk Abstract) | |
| JP3787075B2 (en) | Subgroup origin determination device of rational point group on curve, program thereof, and recording medium thereof | |
| Johansson et al. | EUROCRYPT 2013 | |
| JP7634782B2 (en) | Parameter generation device, parameter generation method, and parameter generation program |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20100114 |
|
| RD03 | Notification of appointment of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7423 Effective date: 20110729 |
|
| A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20111118 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20111129 |
|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20120118 |
|
| 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: 20120313 |
|
| 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: 20120323 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20150330 Year of fee payment: 3 |
|
| R150 | Certificate of patent or registration of utility model |
Ref document number: 4960894 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
| S531 | Written request for registration of change of domicile |
Free format text: JAPANESE INTERMEDIATE CODE: R313531 |
|
| R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
| S533 | Written request for registration of change of name |
Free format text: JAPANESE INTERMEDIATE CODE: R313533 |
|
| R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |