JPH11282348A - Hyperelliptic curve enciphering method, and its decording - Google Patents

Hyperelliptic curve enciphering method, and its decording

Info

Publication number
JPH11282348A
JPH11282348A JP8660398A JP8660398A JPH11282348A JP H11282348 A JPH11282348 A JP H11282348A JP 8660398 A JP8660398 A JP 8660398A JP 8660398 A JP8660398 A JP 8660398A JP H11282348 A JPH11282348 A JP H11282348A
Authority
JP
Japan
Prior art keywords
points
hyperelliptic curve
infinity
jacobi
addition
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
Application number
JP8660398A
Other languages
Japanese (ja)
Inventor
Kazuo Watanabe
一夫 渡辺
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sony Corp
Original Assignee
Sony Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Sony Corp filed Critical Sony Corp
Priority to JP8660398A priority Critical patent/JPH11282348A/en
Publication of JPH11282348A publication Critical patent/JPH11282348A/en
Pending legal-status Critical Current

Links

Abstract

PROBLEM TO BE SOLVED: To shorten cipher processing time. SOLUTION: Elements of a Jacobian variety are utilized as several kinds of pairs of points on a hyperelliptic curve for a disclosure key used in the case of enciphering an ordinary sentence in a hyperelliptic curve enciphering method using the Jacobian variety accompanied to the hyperelliptic curve, and for an operation of addition on the Jacobian variety used in the case of decording encipherment using the disclosure key. However, pairs of points replaced by a point at infinity are used if necessary not to come into a conjugated relation each other among the points which are not points at infinity out of the points on the hyperelliptic curve. Conjugated relations of the points constituting the elements and number of point at infinity thereof are marked to reduce calculation in the case of addition operation on the Jacobian variety. A cipher processing time is shortened thereby in the present invention compared with conventional one while securing difficulty for a discrete logarithm problem.

Description

【発明の詳細な説明】DETAILED DESCRIPTION OF THE INVENTION

【0001】[0001]

【発明の属する技術分野】この発明は、各種データの通
信分野に適用して好適な暗号化方法及び復号化方法、特
にヤコビ多様体を用いた超楕円曲線暗号化方法及び復号
化方法に関する。詳しくは、ヤコビ多様体の要素の代表
元(∞以外の共役点を除く)を曲線上の点のX座標に順
序をつけて並べた組とみなしてヤコビ多様体上での加法
を行うに当たり、当該曲線の点の性質(共役関係など)
を直接使用することによって、暗号化及び復号化処理時
のヤコビ多様体上での加法演算処理を簡単に行えるよう
にしたものである。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to an encryption method and a decryption method suitable for the field of communication of various data, and more particularly to a hyperelliptic curve encryption method and a decryption method using a Jacobi variety. In detail, when performing the addition on the Jacobi manifold, assuming that the representative elements (excluding the conjugate points other than ∞) of the elements of the Jacobi manifold are arranged as a set in which the X coordinates of the points on the curve are arranged in order. Properties of points on the curve (such as conjugate relations)
Is directly used, so that the addition operation on the Jacobi manifold at the time of the encryption and the decryption can be easily performed.

【0002】[0002]

【従来の技術】より高い安全性が期待できる暗号技術と
して超楕円曲線に付随するヤコビ多様体の演算を用いる
暗号化及び復号化方法が提案されている(例えば、「Nea
l Koblitz, Hyperelliptic Crypto systems, Journal o
f Cryptology, 1989, 139-150」:文献1)。
2. Description of the Related Art An encryption and decryption method using an operation of a Jacobi variety associated with a hyperelliptic curve has been proposed as an encryption technology that can be expected to have higher security (for example, "Nea").
l Koblitz, Hyperelliptic Crypto systems, Journal o
f Cryptology, 1989, 139-150 ": Reference 1).

【0003】この超楕円曲線暗号(ヤコビ多様体暗号)
は離散対数問題の困難性を安全性の根拠とする暗号化方
法(復号化方法)であって、その内容は「Diffie-Hellm
an鍵配送(W. Diffie and M. Hellman, New directions
in cryptography, IEEE Trans. Inform. Theory, 22(1
976), 644-654):文献2」や、「ElGamal 暗号方法(T.
ElGamal, A Public key cryptosystem and a signature
scheme based on discretet log-arithms, IEEE Tran
s. Inform Theory, 31(1985)469-472):文献3」など
の公知資料に詳しく記述されている。
This hyperelliptic curve cryptography (Jacobi manifold cryptography)
Is an encryption method (decryption method) that uses the difficulty of the discrete logarithm problem as the basis of security, and its content is "Diffie-Hellm
an key distribution (W. Diffie and M. Hellman, New directions
in cryptography, IEEE Trans. Inform. Theory, 22 (1
976), 644-654): Reference 2 ”and“ ElGamal encryption method (T.
ElGamal, A Public key cryptosystem and a signature
scheme based on discretet log-arithms, IEEE Tran
s. Inform Theory, 31 (1985) 469-472): Reference 3 ”and other well-known materials.

【0004】ヤコビ多様体を用いたこの超楕円曲線暗号
化方法は以下のような加法(ヤコビ多様体上での加法)
によって実現される。
[0004] This hyperelliptic curve encryption method using Jacobi varieties is additive as follows (addition on Jacobi varieties)
It is realized by.

【0005】まず、Kを有限体とし、その代数的閉包を
Kバーとする。有限体K上で定義される種数gの超楕円
曲線を、 C:V2+h(u)v=f(u) とするときで、超楕円曲線C上の数が0のK−因子全体
のなす加群をD0とし、超楕円曲線CのK−主因子全体
のなす加群をPとするとき、ヤコビ多様体J(K)は、 J(Kバー)⊃J(K)=D0/P のように定義される。
First, let K be a finite field and its algebraic closure be K bars. When the genus g hyperelliptic curve defined on the finite field K is C: V 2 + h (u) v = f (u), the K-factor with the number 0 on the hyperelliptic curve C is Let D 0 be the module formed by K and P be the module formed by all K-primary factors of the hyperelliptic curve C, the Jacobi variety J (K) is J (K bar) KJ (K) = D It is defined as 0 / P.

【0006】ここで、K−(主)因子とは、KバーのK
−自己同型σによって不変:Dσ=Dであるような
(主)因子であることを言う。ヤコビ多様体J(K)
は、剰余群として自然に加群の構造をもつ。
Here, the K- (main) factor is the K-bar
Invariant by automorphism σ: Refers to the (primary) factor such that Dσ = D. Jacobi variety J (K)
Has a modular structure naturally as a remainder group.

【0007】そして、超楕円曲線暗号方法は、このヤコ
ビ多様体J(K)上の加法により、J(K)上の離散対
数問題、つまり、「J(K)上の2つの元D1,D2に対
してD1=mD2となる整数mを(存在すれば)求め
よ。」という問題の困難性を解読の困難性の源とする暗
号方法である。
Then, the hyperelliptic curve cryptosystem uses a discrete logarithm problem on J (K), that is, “two elements D 1 , An integer m that satisfies D 1 = mD 2 (if any) is obtained for D 2.

【0008】上述した暗号方法のうち、例えばヤコビ多
様体上でのElGamal暗号は、送信者Aが平文Mを受信者
Bに送る場合、平文Mをヤコビ多様体J(K)の要素と
対応づけ、有限体K、超楕円曲線Cの定義方程式及びヤ
コビ多様体J(K)の要素D0を取り出して夫々を公開
する公開鍵方式である。
[0008] Among the encryption methods described above, for example, ElGamal encryption on a Jacobi variety, when a sender A sends a plaintext M to a receiver B, associates the plaintext M with an element of the Jacobi variety J (K). , The finite field K, the definition equation of the hyperelliptic curve C, and the element D 0 of the Jacobi variety J (K), and publish them.

【0009】このヤコビ多様体J(K)上での暗号化及
び復号化の概要は次のようになる。(1A)受信者B
は、自然数mBを選びこれを秘密にする(mBを秘密鍵と
する)。次にヤコビ多様体J(K)上で、DB=mB0
を計算し、DBを公開する(DBを公開鍵とする)。
The outline of encryption and decryption on the Jacobi variety J (K) is as follows. (1A) Recipient B
Selects a natural number m B and keeps it secret (m B is a secret key). Next, on the Jacobi variety J (K), D B = m B D 0
It was calculated (the public key D B) to expose D B.

【0010】(1B)送信者Aは乱数rを選び、J
(K)上でE1=rD0,E2=M+rDBを夫々計算し、
その計算結果(E1,E2)を暗号文として受信者B側に
送る(暗号化処理)。
(1B) Sender A selects random number r, and J
(K) on E 1 = rD 0, E 2 = M + rD B was respectively calculated by,
The calculation result (E 1 , E 2 ) is sent to the receiver B as cipher text (encryption processing).

【0011】(1C)受信者Bは秘密鍵mBを用いて、
2−mB1=Mを求める(復号化処理)。
(1C) The recipient B uses the secret key m B to
E 2 -m B E 1 = Request M (decoding processing).

【0012】このように超楕円曲線暗号では、暗号化や
復号化する際にヤコビ多様体J(K)における因子Dの
n倍演算:nD=D+・・・+Dを計算することが必要
となる。
As described above, in the hyperelliptic curve cryptography, when performing encryption or decryption, it is necessary to calculate n times the factor D in the Jacobi variety J (K): nD = D +... + D. .

【0013】つまり、上述では、mB0やrD0,rDB,
B1などの因子Dの演算を行なわなければならない。
That is, in the above description, m B D 0 , rD 0, rD B,
It must be performed calculation of factor D such as m B E 1.

【0014】このようなヤコビ多様体J(K)上におけ
る因子Dの加法アルゴリズムの具体例としては上述した
文献1あるいは文献4(G. Cantor, Computing in the J
acobian of a Hyperelliptic Curve, Math. Comp., 48,
1987, 95-101)に述べられている。この加法アルゴリズ
ムの概要を示すと次のようになる。従来から知られてい
るこの因子(要素)の加法アルゴリズムは次の2つの事
実が成り立つことを前提とする。
As a specific example of such an addition algorithm of the factor D on the Jacobi variety J (K), reference 1 or 4 (G. Cantor, Computing in the J
acobian of a Hyperelliptic Curve, Math.Comp., 48,
1987, 95-101). The outline of this addition algorithm is as follows. The conventionally known addition algorithm of this factor (element) is based on the premise that the following two facts hold.

【0015】(1)ヤコビ多様体J(K)の要素Dは、
(因子類の代表元として)被約因子として一意的に表現
できる。
(1) The element D of the Jacobi variety J (K) is
It can be uniquely expressed as a reduced factor (as a representative element of factors).

【0016】(2)半被約因子(従って、被約因子)は
2つの超楕円曲線C上の多項式 a(u)(deg a<g), b(u)−v の主因子の最大公約因子:div (a,b)として表現で
きる。
(2) The semi-reduced factor (and therefore the reduced factor) is the greatest common reduction of the main factors of the polynomials a (u) (deg a <g) and b (u) -v on the two hyperelliptic curves C. Factor: can be expressed as div (a, b).

【0017】このような前提の上で従来技術による加法
アルゴリズムAaは次のように述べられている。
On such a premise, the additive algorithm Aa according to the prior art is described as follows.

【0018】従来技術による加法アルゴリズムAa:div
(a1,b1)+div(a2,b2)=div(a,b)
A conventional addition algorithm Aa: div
(a 1 , b 1 ) + div (a 2 , b 2 ) = div (a, b)

【0019】[0019]

【数1】 (Equation 1)

【0020】[0020]

【数2】 (Equation 2)

【0021】したがって、上述した暗号化ステップ(1
A),(1B)におけるmB0やrD0,rDBの計算、
さらには復号化ステップ(1C)におけるmB1の計算
は上記加法アルゴリズムAaに則って処理されることに
なる。
Therefore, the above-described encryption step (1)
A), calculation of m B D 0 , rD 0 , rD B in (1B),
Further calculation of m B E 1 in the decoding step (1C) will be processed in accordance with the above additive algorithm Aa.

【0022】[0022]

【発明が解決しようとする課題】ところで、上述した加
法アルゴリズムAaでは、ヤコビ多様体J(K)の2つ
の要素(因子)Dの和を求める際、それぞれの因子Dを
定義している曲線の点の持つ性質を積極的に使っていな
い。
In the above-described addition algorithm Aa, when calculating the sum of two elements (factors) D of the Jacobi variety J (K), a curve defining each factor D is obtained. They do not actively use the properties of points.

【0023】そこで、この発明はこの点の関係を積極的
に使うようにしたものであって、ヤコビ多様体の要素を
超楕円曲線上の点の組(場合によっては点の組みに或る
関係をいれたもの)とみなしてヤコビ多様体上での加法
を行う際に、超楕円曲線の点の性質を直接使う加法のア
ルゴリズムを取り入れることによって、ある種の条件下
ではヤコビ多様体上での加法演算を大幅に簡略化して加
法演算処理時間等を短縮できるようにしたものである。
Therefore, the present invention uses this point relationship positively, and the element of the Jacobi manifold is used as a set of points on the hyperelliptic curve (in some cases, a certain relation In addition, when performing addition on a Jacobi manifold with the addition of an algorithm that directly uses the properties of the points of the hyperelliptic curve, under certain conditions, The addition operation is greatly simplified so that the addition operation processing time and the like can be reduced.

【0024】[0024]

【課題を解決するための手段】上述した課題を解決する
ため、請求項1に記載したこの発明に係る超楕円曲線暗
号化方法では超楕円曲線に付随するヤコビ多様体を用い
た超楕円曲線暗号方法において、平文を暗号化する際に
用いる公開鍵や、この公開鍵を用いて暗号化および復号
化する際に使用される上記ヤコビ多様体上での加法の演
算として、上記ヤコビ多様体の要素を上記超楕円曲線の
点の種数個の組として利用するに当たり、上記超楕円曲
線上における点のうち無限遠点でない点の間では、互い
に共役関係とはならないように、必要があれば無限遠点
に置き換えた点の組として用いることを特徴とする。
In order to solve the above-mentioned problem, in the hyperelliptic curve encryption method according to the present invention, a hyperelliptic curve cryptosystem using a Jacobian variety accompanying the hyperelliptic curve is provided. In the method, as a public key used to encrypt a plaintext, or as an addition operation on the Jacobi manifold used when encrypting and decrypting using the public key, the element of the Jacobi manifold Is used as a set of genus of points of the hyperelliptic curve, among points on the hyperelliptic curve that are not infinity, so that they do not have a conjugate relationship with each other, and infinite if necessary. It is characterized in that it is used as a set of points replaced with far points.

【0025】また、請求項5に記載したこの発明による
超楕円曲線復号化方法では、超楕円曲線に付随するヤコ
ビ多様体を用いた超楕円曲線復号化方法において、上記
ヤコビ多様体の要素を構成する点を上記超楕円曲線の点
の種数個の組として利用すると共に、上記超楕円曲線上
における点のうち無限遠点でない点の間では、必要があ
れば無限遠点に置き換えることによって、互いに共役関
係とはならないような点の組として用いながら、上記ヤ
コビ多様体上での加法演算を行うことによって得られた
暗号文に対して、この暗号文と秘密鍵を用いながら、上
記ヤコビ多様体上での加法の演算を行うことによって平
文を復号するようにしたことを特徴とする。
According to a fifth aspect of the present invention, in the hyperelliptic curve decoding method using a Jacobi variety accompanying a hyperelliptic curve, the elements of the Jacobi variety are constructed. By using the set of points of the hyperelliptic curve as a genus of points, and replacing points between the points on the hyperelliptic curve that are not at infinity with infinite points if necessary. While using the ciphertext obtained by performing the addition operation on the Jacobi manifold while using it as a set of points that do not have a conjugate relationship with each other, The plaintext is decrypted by performing an addition operation on the body.

【0026】この発明ではヤコビ多様体上での加法の演
算を行うに当たり、ヤコビ多様体の要素を構成する点を
超楕円曲線の点の種個数の組として利用する。そして、
超楕円曲線上における点のうち無限遠点でない点の間で
は、必要があれば無限遠点に置き換えることによって、
互いに共役関係とはならないような点の組として用い
る。
In the present invention, when performing the addition operation on the Jacobi variety, the points constituting the elements of the Jacobi variety are used as a set of the number of points of the hyperelliptic curve. And
Between points on the hyperelliptic curve that are not at infinity, by replacing them with infinity if necessary,
It is used as a set of points that do not have a conjugate relationship with each other.

【0027】このように共役関係にある点や無限遠点を
はぶいた点の組みを用いると、この無限遠点の総和が種
数g以上であるようなときには、超楕円曲線上における
2点の組みP,Qの加法は、直ちにそれらを加算するこ
とによって求めることができる。
By using a set of points having a conjugate relationship and a point at which the point at infinity is blown, if the sum of the points at infinity is greater than the genus g, two points on the hyperelliptic curve are obtained. The addition of the sets P and Q can be obtained by immediately adding them.

【0028】また、この発明では上述のようなヤコビ多
様体上における条件付き加法の演算を行うことによって
求められた暗号文を復号するに当たっても、復号の際に
用いるヤコビ多様体上における加法の演算を簡略化でき
る。
Further, in the present invention, even when decrypting a ciphertext obtained by performing the conditional addition operation on the Jacobi manifold as described above, the addition operation on the Jacobi manifold used for decryption is performed. Can be simplified.

【0029】[0029]

【発明の実施の形態】続いて、この発明に係る超楕円曲
線暗号化方法及びその復号化方法の一実施形態を図面を
参照して詳細に説明する。
DESCRIPTION OF THE PREFERRED EMBODIMENTS Next, an embodiment of a hyperelliptic curve encryption method and a decryption method according to the present invention will be described in detail with reference to the drawings.

【0030】図1はこの発明を適用した暗号化及び復号
化のシステムであって、上述したように公開鍵方法によ
る暗号化及び復号化の例である。平文Mは秘密鍵mB
共に暗号文生成手段12に供給され、この生成手段12
に設けられたROM14内の本発明に係る暗号化アルゴ
リズムにしたがって暗号化される。
FIG. 1 shows an encryption and decryption system to which the present invention is applied, which is an example of encryption and decryption by the public key method as described above. Plaintext M is supplied to the ciphertext generating unit 12 together with the private key m B, the generator 12
Is encrypted according to the encryption algorithm according to the present invention in the ROM 14 provided in the ROM.

【0031】すなわち、ヤコビ多様体J(K)上の要素
0と秘密鍵mBとを用いてヤコビ多様体J(K)上で、 DB=mB0 なる加法の演算を行う。演算結果DBは公開鍵として公
開する。
That is, using the element D 0 on the Jacobi variety J (K) and the secret key m B , an addition operation of D B = m B D 0 is performed on the Jacobi variety J (K). Operation result D B is published as the public key.

【0032】送信者Aは乱数rを選び、同じくヤコビ多
様体J(K)上で、 E1=rD02=M+rDB なる加法の演算を行い、その演算結果(E1,E2)を暗
号文として受信者Bに送る。
The transmitter A chooses a random number r, also on the Jacobian variety J (K), E 1 = rD 0 E 2 = M + rD B becomes performs the operation of addition, the operation result (E 1, E 2) To the recipient B as a ciphertext.

【0033】ここで、上述したヤコビ多様体J(K)上
での加法の演算として、この発明では、その詳細は後述
するとして、ヤコビ多様体の要素を構成する点を超楕円
曲線の点の種数個の組として利用すると共に、超楕円曲
線上における点のうち無限遠点でない点の間では、必要
があれば無限遠点に置き換えることによって、互いに共
役関係とはならないような点のx座標の順序に従い並べ
た組みとして用いる。
Here, as the addition operation on the Jacobi variety J (K) described above, in the present invention, as will be described in detail later, the points constituting the elements of the Jacobi variety are replaced by the points of the hyperelliptic curve. In addition to using as a set of genus, between points on the hyperelliptic curve that are not at infinity, if necessary, by replacing them with infinity, x Used as a set arranged in the order of coordinates.

【0034】受信した暗号文(E1,E2)は復号処理手
段22に供給され、秘密鍵mBを用いて、 E2−mB1=M なる復号処理が、同じくヤコビ多様体J(K)上での加
法を演算することによって行われ、平文Mに復号され
る。
The received ciphertext (E 1 , E 2 ) is supplied to the decryption processing means 22, and the decryption processing of E 2 −m B E 1 = M is performed using the secret key m B , and the Jacobi variety J (K) is performed by calculating the addition, and is decoded into plaintext M.

【0035】続いて、本発明によるヤコビ多様体J
(K)上での加法演算を説明する。まず、種数がgの超
楕円曲線 C:v2+h(u)v=f(u) f(u),h(u)∈K[u],degf(u)=2g+1,deg h
(u)≦g に付随するヤコビ多様体をJ(K)とする。
Subsequently, the Jacobi variety J according to the present invention
(K) The addition operation will be described. First, a hyperelliptic curve of genus g: v 2 + h (u) v = f (u) f (u), h (u) ∈K [u], degf (u) = 2g + 1, deg h
Let J (K) be the Jacobi variety associated with (u) ≦ g.

【0036】このヤコビ多様体J(K)は、{曲線上の
(Kバー−有理)点∪∞(無限遠点)}からなる点の組
(P1,P2,・・・,Pg)に、 1.x座標に順序(例えば、次数付き辞書式順序)を定
め、 x(Pi)<x(Pj)(i≦j)と並べた (P1,・・・,Pg) 2.PバーiをPi(≠∞)の共役点とするとき、Pバー
i≠Pj(j=1,・・・g,j≠i) なる関係を入れた集合P(K)とみなせる。実際、
The Jacobi variety J (K) is a set of points (P 1 , P 2 ,..., Pg) composed of {(K bar-rational) points} (infinity points) on the curve. In addition, 1. 1. An order (for example, a lexicographic order with an order) is determined for the x coordinate, and arranged as x (P i ) <x (P j ) (i ≦ j) (P1,..., Pg). When P bar i is a conjugate point of P i (≠ ∞), P bar
i ≠ P j (j = 1,..., g, j ≠ i) can be regarded as a set P (K) including the relation In fact,

【0037】[0037]

【数3】 (Equation 3)

【0038】と対応しており、点の組Piのうちg−r
(r≦g)個が無限遠点∞ならば、ヤコビ多様体J
(K)内で、次のように対応している。
And gr in the point set P i
If (r ≦ g) points at infinity ∞, Jacobi variety J
(K) supports the following.

【0039】[0039]

【数4】 (Equation 4)

【0040】また、この時ヤコビ多様体J(K)の零元
0は、 0=(∞,・・・,∞) (P1,・・・,Pg)に関する逆元−(P1,・・・,Pg
は、 −(P1,・・・,Pg)=(Pバー1,・・・,Pバーg) と表せる。この同一視
[0040] In addition, the zero element 0 of this time Jacobian variety J (K) is, 0 = (∞, ···, ∞) (P 1, ···, P g) on the inverse element - (P 1,・ ・ ・, P g )
Can be expressed as-(P 1 ,..., P g ) = (P bar 1 ,..., P bar g ). This identification

【0041】[0041]

【数5】 (Equation 5)

【0042】の下で、同一の超楕円曲線C上における異
なる点の組Pi,Qiが、 (P1,・・・,Pg)+(Q1,・・・,Qg)=(T1,・・
・,Tg) であれば、次のようになる。
Under the same hyperelliptic curve C, a set of different points P i , Q i is (P 1 ,..., P g ) + (Q 1 ,..., Q g ) = (T 1 , ...
·, T g ), then:

【0043】[0043]

【数6】 (Equation 6)

【0044】この時、ヤコビ多様体J(K)上での加法
を次のようにして行う。今、Pi=∞,Qi=∞であるよ
うな点の組Pi,Qiの個数を夫々r,sとし無限遠点∞
でないような点の組Pi,Qiを改めて夫々、次のように
する。
At this time, the addition on the Jacobi variety J (K) is performed as follows. Now, let r and s denote the number of pairs of points P i and Q i such that P i = ∞ and Q i = ∞, respectively.
The point sets P i and Q i that are not equal to each other are as follows.

【0045】[0045]

【数7】 (Equation 7)

【0046】一般に共約の関係にある2つの点の和は
(ヤコビ多様体の要素として)2∞に等しい。そこで、
次のようにする。
In general, the sum of two points in a commensurate relationship is equal to 2∞ (as an element of the Jacobi variety). Therefore,
Do the following:

【0047】[0047]

【数8】 (Equation 8)

【0048】そして、それを、 Ri(1≦i≦2(g−v)−r−s) とした状態で、条件分けしながら下記の演算を行と、次
のように計算できる。
Then, under the condition of R i (1 ≦ i ≦ 2 (g−v) −rs), the following calculation can be performed while dividing the conditions, and the following calculation can be performed.

【0049】[0049]

【数9】 (Equation 9)

【0050】[0050]

【数10】 (Equation 10)

【0051】ここで、 deg(3g−2v−r−s)∞=3g−2v−r−s≧2
g≧2g−2 であるからリーマンロッホの定理より次のように表すこ
とができる。
Where deg (3g−2v−rs) ∞ = 3g−2v−rs ≧ 2
Since g ≧ 2g−2, it can be expressed as follows from the Riemann-Roch theorem.

【0052】[0052]

【数11】 [Equation 11]

【0053】Ri,Tiは、L((3g−2v−r−s)
∞)に含まれる、あるK係数の有理関数の零点となるは
ずである。ところで、この有理関数は(ある一つの係数
で正規化した)曲線
R i and T i are L ((3g−2v−rs))
It should be the zero of a rational function of a certain K coefficient included in ∞). By the way, this rational function is a curve (normalized by a certain coefficient)

【0054】[0054]

【数12】 (Equation 12)

【0055】がRi(1≦i≦2(g−v)−r−s)
を通るという条件から得られる{2(g−v)−r−
s}元一次連立方程式を解いて求めることができる。
Where R i (1 ≦ i ≦ 2 (g−v) −rs)
{2 (g−v) −r− obtained from the condition that
It can be obtained by solving an s} -element linear simultaneous equation.

【0056】[0056]

【数13】 (Equation 13)

【0057】から定まるRi=(xRi,yRi)以外の交
点Sバーi(i=1,・・・,g)を求めると、この交点S
バーiが、 (T1,・・・,Tg)=(S1,・・・,Sg) と計算できる。
When an intersection S bar i (i = 1,..., G) other than R i = (x Ri , y Ri ) is determined, the intersection S
Bar i can be calculated as (T 1 ,..., T g ) = (S 1 ,..., S g ).

【0058】したがって本発明によるヤコビ多様体J
(K)上における加法アルゴリズムは次のように書き表
すことができる。
Thus, the Jacobi variety J according to the invention
(K) The additive algorithm above can be written as:

【0059】加法(P1,…,Pg)+(Q1,…,Qg)=
(T1,…,Tg)のアルゴリズム
Addition (P 1 ,..., P g ) + (Q 1 ,..., Q g ) =
Algorithm of (T 1 , ..., T g )

【0060】[0060]

【数14】 [Equation 14]

【0061】[0061]

【数15】 (Equation 15)

【0062】[0062]

【数16】 (Equation 16)

【0063】以上が加法アルゴリズムである。The above is the addition algorithm.

【0064】次に、具体的な超楕円曲線C、例えば、有
限体ベクトルF3上の種数2の超楕円曲線C11:v2=u5+1
Next, a specific hyperelliptic curve C, for example, a genus 2 hyperelliptic curve C 1 C 1 : v 2 = u 5 +1 on the finite field vector F3

【0065】[0065]

【数17】 [Equation 17]

【0066】[0066]

【数18】 (Equation 18)

【0067】X座標の順序としては、例えば次数付き辞
書式順序を入れる。つまり、 x1+y1α<x2+y2α⇔(i)x1+y1<x2+y2 又は (ii)=x1+y1=x2+y2, ⇒ X1≦X2 又は x1=x2,y1<y2
As the order of the X coordinate, for example, a lexicographic order with an order is entered. That is, x 1 + y 1 α <x 2 + y 2 α⇔ (i) x 1 + y 1 <x 2 + y 2 or (ii) = x 1 + y 1 = x 2 + y 2 , X 1 ≦ X 2 or x 1 = x 2 , y 1 <y 2

【0068】(a)((0,1),(2,0))+((0,1),(2,0))の計
算(D0+D0=2D0,mB=2の計算例) 1.∞の個数=0である。 2.2=2&0+0=0より(2,0)と(2,0)は
共役関係にある。 3.2≧種数であるからアルゴリズムのステップ(3−
a)より ((0,1),(0,1))(=2D0
(A) The sum of ((0,1), (2,0)) + ((0,1), (2,0))
Calculation (Calculation example of D 0 + D 0 = 2D 0 , m B = 2) The number of ∞ = 0. Since 2.2 = 2 & 0 + 0 = 0, (2,0) and (2,0) have a conjugate relationship. Since 3.2 ≧ genus, the algorithm step (3-
From (a), ((0, 1), (0, 1)) (= 2D 0 )

【0069】(b)((0,1),(0,1))+((0,1),(2,0))の計
算(2D0+D0=3D0の計算例) 1.∞の個数=0である。 2.共役関係にある点の組はない。 3.0<種数であるからアルゴリズムのステップ(3−
b)に進む。
(B) Total of ((0,1), (0,1)) + ((0,1), (2,0))
Calculation (Example of calculation of 2D 0 + D 0 = 3D 0 ) The number of ∞ = 0. 2. There is no conjugate point set. Since 3.0 <genus, the algorithm step (3-
Proceed to b).

【0070】ステップ3(b−1):v=C0+C1u+C
22+C33が(0,1) (0,1),(0,1)(2,0)を通るようにC0
1,C2,C3を求める。これを求めるための計算アル
ゴリズムを以下に示す。
Step 3 (b-1): v = C 0 + C 1 u + C
2 u 2 + C 3 u 3 is (0,1) (0,1), C 0 so as to pass (0,1) (2,0),
Find C 1 , C 2 , C 3 . The calculation algorithm for obtaining this is shown below.

【0071】ステップ3(b-1)の計算アルゴリズム Calculation algorithm of step 3 (b-1)

【0072】[0072]

【数19】 [Equation 19]

【0073】[0073]

【数20】 (Equation 20)

【0074】なる方程式(ここで、div/duiは、曲
線の定義方程式から陰函数の微分を使って定まる)も加
えて連立方程式を解く。
[0074] becomes equation (here, d i v / du i is determined by using a derivative of the shadow function from the definition equation of the curve) is also solving the simultaneous equations in addition.

【0075】なお、実際には、各計算モジュールで(一
致する点の個数−1)階迄の導関数を備えたモジュール
をさらに用意しておき、一致する点の個数に応じてその
モジュールへと分岐させることになる。
Actually, in each calculation module, a module having a derivative up to the (number of coincident points−1) floor is further prepared, and the module is assigned to the module according to the number of coincident points. It will be branched.

【0076】ステップ3(b−1)におけるC0〜C3
連立一次方程式を解くと以下のようになる。
The simultaneous linear equations of C 0 to C 3 in step 3 (b-1) are solved as follows.

【0077】[0077]

【数21】 (Equation 21)

【0078】[0078]

【数22】 (Equation 22)

【0079】(c)((0,2),∞)+((1+α,2+2α),(1+
2α,2+α))の計算 1.∞の個数=1である。 2.共役関係にある点はない。 3.1<種数であるからアルゴリズムのステップ(3−
b)に進む。
(C) ((0, 2), ∞) + ((1 + α, 2 + 2α), (1+
Calculation of 2α, 2 + α)) The number of ∞ = 1. 2. There is no conjugate relationship. Since 3.1 <genus, the algorithm step (3-
Proceed to b).

【0080】[0080]

【数23】 (Equation 23)

【0081】[0081]

【数24】 (Equation 24)

【0082】[0082]

【数25】 (Equation 25)

【0083】(d)((0,1),(2,0)+((1+α,1+α),(1
+2α,1+2α))の計算 1.∞の個数=0である。 2.共役関係にある点はない。 3.0<種数であるからアルゴリズムのステップ(3−
b)に進む。
(D) ((0,1), (2,0) + ((1 + α, 1 + α), (1
+ 2α, 1 + 2α)) Calculation 1. The number of ∞ = 0. 2. There is no conjugate relationship. Since 3.0 <genus, the algorithm step (3-
Proceed to b).

【0084】[0084]

【数26】 (Equation 26)

【0085】[0085]

【数27】 [Equation 27]

【0086】ステップ3(b−2)における計算アルゴ
リズムを以下に示す。
The calculation algorithm in step 3 (b-2) is shown below.

【0087】ステップ3(b-2)の(グレブナ基底を使っ
た)計算アルゴリズム
In step 3 (b-2), using (Gröbner basis)
Calculation algorithm

【0088】[0088]

【数28】 [Equation 28]

【0089】[0089]

【数29】 (Equation 29)

【0090】[0090]

【数30】 [Equation 30]

【0091】これより、u=0が得られるから、 ステップ3(b−3) ((0,2),∞) 上記アルゴリズムにおける四則演算、方程式の求解(因
数分解)はすべて有限体上の演算である。
From this, u = 0 is obtained. Step 3 (b-3) ((0, 2), ∞) The four arithmetic operations and the solution of the equations (factorization) in the above algorithm are all operations on the finite field. It is.

【0092】[0092]

【数31】 (Equation 31)

【0093】である場合は、例えば線形シフトレジスタ
による方法、正規基底を用いる方法などで乗算、除算を
したり、バーレカンプアルゴリズムを使い因数分解する
ことにより高速な演算が行える。したがって演算処理時
間を従来よりも短縮できる。
In this case, multiplication and division can be performed by, for example, a method using a linear shift register, a method using a normal basis, or factorization using a Berlekamp algorithm. Therefore, the operation processing time can be reduced as compared with the conventional case.

【0094】正規基底を用いる方法は文献5(Wang, C.
C etal, VLSI Architectures forComputing Multiplic
ations and Inverse in GF(2m), IEEE Trans on Compu
t.,1990, C-34, 8,pp. 709-716)に詳しい。バーレカン
プアルゴリズムを記述した文献6としては、(Berlekam
p, E. R, Algebraic Coding Theory, MacGrawーHill,196
8)などが知られている。
A method using a normal basis is described in reference 5 (Wang, C.
C etal, VLSI Architectures for Computing Multiplic
ations and Inverse in GF (2 m ), IEEE Trans on Compu
t., 1990, C-34, 8, pp. 709-716). Reference 6 describing the Berlekamp algorithm includes (Berlekam
p, E.R, Algebraic Coding Theory, MacGraw-Hill, 196
8) are known.

【0095】[0095]

【発明の効果】以上説明したように本発明による超楕円
曲線暗号化及び復号化方法では、ヤコビ多様体の要素を
ある性質をみたすような点の組として表現して、公開鍵
の計算(暗号処理)復号文の計算(復号処理)を行うよ
うにしたものである。このため、これらの計算を行うヤ
コビ多様体上での加法を行う際、要素を構成している点
の共役関係、無限違点の数に注目して計算を削減でき
る。これによって、本発明では離散対数問題の困難性を
確保しながら暗号演算処理時間を従来よりも短縮できる
特徴を有する。
As described above, in the hyperelliptic curve encryption and decryption method according to the present invention, the element of the Jacobi variety is represented as a set of points satisfying a certain property, and the calculation of the public key (the encryption key) is performed. Processing) Calculation of decrypted text (decoding processing) is performed. For this reason, when performing addition on a Jacobi variety for performing these calculations, the calculations can be reduced by focusing on the conjugate relation of the points constituting the elements and the number of infinite differences. As a result, the present invention has a feature that the cryptographic operation processing time can be reduced as compared with the related art while securing the difficulty of the discrete logarithm problem.

【図面の簡単な説明】[Brief description of the drawings]

【図1】この発明に係る暗号化及び復号化システムの概
念図である。
FIG. 1 is a conceptual diagram of an encryption and decryption system according to the present invention.

【符号の説明】[Explanation of symbols]

10・・・暗号装置、20・・・復号装置、A・・送信
者、B・・・受信者
10: encryption device, 20: decryption device, A: sender, B: recipient

Claims (5)

【特許請求の範囲】[Claims] 【請求項1】 超楕円曲線に付随するヤコビ多様体を用
いた超楕円曲線暗号方法において、 平文を暗号化する際に用いる公開鍵や、この公開鍵を用
いて暗号化および復号化する際に使用される上記ヤコビ
多様体上での加法の演算として、 上記ヤコビ多様体の要素を上記超楕円曲線の点の種数個
の組として利用するに当たり、上記超楕円曲線上におけ
る点のうち無限遠点でない点の間では、互いに共役関係
とはならないように、必要があれば無限遠点に置き換え
た点の組として用いることを特徴とする超楕円曲線暗号
化方法。
1. A hyperelliptic curve cryptosystem using a Jacobi variety associated with a hyperelliptic curve, wherein a public key used for encrypting plaintext, and a public key used for encrypting and decrypting using the public key. As an operation of addition on the Jacobi manifold used, in using the elements of the Jacobi manifold as a set of genus of points of the hyperelliptic curve, the points on the hyperelliptic curve at infinity A hyperelliptic curve encryption method characterized by using a set of points replaced by points at infinity, if necessary, so that points that are not points do not have a conjugate relationship with each other.
【請求項2】 上記ヤコビ多様体の要素を超楕円曲線の
点の種数個の組と表現して加法をする際、加法される2
つの組に含まれる無限遠点でない点のうちで共役関係と
なる要素の点が存在するときには、上記共役関係となる
点を無限遠点に置き換えて上記ヤコビ多様体上の加法を
実行するようにしたことを特徴とする請求項1記載の超
楕円曲線暗号化方法。
2. When the elements of the Jacobi variety are expressed as a set of genus of points of a hyperelliptic curve and the addition is performed, the added 2
When there is a point of an element that has a conjugate relation among points that are not infinity points included in one set, replace the point with the conjugate relation with the point at infinity and execute the addition on the Jacobi manifold 2. The hyperelliptic curve encryption method according to claim 1, wherein:
【請求項3】 上記無限遠点の個数の総和が、上記超楕
円曲線上の点の種数個以上であるときには、 上記超楕円曲線上の点から上記無限遠点の個数及び点の
組として表したときに共役関係となる点を夫々除いた点
の組を、上記ヤコビ多様体上の加法の結果として用いる
ようにしたことを特徴とする請求項2記載の超楕円曲線
暗号化方法。
3. When the sum of the number of points at infinity is equal to or greater than the genus of points on the hyperelliptic curve, a set of points and the number of points at infinity from points on the hyperelliptic curve 3. The hyperelliptic curve encryption method according to claim 2, wherein a set of points excluding points that have a conjugate relationship when expressed is used as a result of addition on the Jacobi manifold.
【請求項4】 請求項3に記載した加法を実行する際、
請求項3の処理を終えた点の組について、点の組に含ま
れる無限遠点以外を通る曲線と超楕円曲線の交点を求め
ることによって実現することを特徴とする請求項2及び
請求項3記載の超楕円曲線暗号化方法。
4. When performing the addition according to claim 3,
4. The method according to claim 3, wherein the processing is performed by calculating an intersection of a curve and a hyperelliptic curve that pass through points other than the point at infinity included in the set of points. The described hyperelliptic curve encryption method.
【請求項5】 超楕円曲線に付随するヤコビ多様体を用
いた超楕円曲線復号化方法において、 上記ヤコビ多様体の要素を構成する点を上記超楕円曲線
の点の種数個の組として利用すると共に、 上記超楕円曲線上における点のうち無限遠点でない点の
間では、必要があれば無限遠点に置き換えることによっ
て、互いに共役関係とはならないような点の組として用
いながら、上記ヤコビ多様体上での加法演算を行うこと
によって得られた暗号文に対して、この暗号文と秘密鍵
を用いながら、上記ヤコビ多様体上での加法の演算を行
うことによって平文を復号するようにしたことを特徴と
する超楕円曲線復号化方法。
5. A hyperelliptic curve decoding method using a Jacobi manifold associated with a hyperelliptic curve, wherein the points constituting the elements of the Jacobian manifold are used as a set of genus of points of the hyperelliptic curve. At the same time, the points on the hyperelliptic curve that are not at infinity are replaced by infinity if necessary, thereby using the Jacobi points as a set of points that do not have a conjugate relationship with each other. The ciphertext obtained by performing the addition operation on the manifold is decrypted by performing the addition operation on the Jacobi manifold while using the ciphertext and the secret key. A hyperelliptic curve decoding method, characterized in that:
JP8660398A 1998-03-31 1998-03-31 Hyperelliptic curve enciphering method, and its decording Pending JPH11282348A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP8660398A JPH11282348A (en) 1998-03-31 1998-03-31 Hyperelliptic curve enciphering method, and its decording

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP8660398A JPH11282348A (en) 1998-03-31 1998-03-31 Hyperelliptic curve enciphering method, and its decording

Publications (1)

Publication Number Publication Date
JPH11282348A true JPH11282348A (en) 1999-10-15

Family

ID=13891601

Family Applications (1)

Application Number Title Priority Date Filing Date
JP8660398A Pending JPH11282348A (en) 1998-03-31 1998-03-31 Hyperelliptic curve enciphering method, and its decording

Country Status (1)

Country Link
JP (1) JPH11282348A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100345685B1 (en) * 1999-11-15 2002-07-27 한국전자통신연구원 Key generating method, and encryption and decryption system and its method by using the braid operation
KR20030079142A (en) * 2002-04-02 2003-10-10 이창우 Method for Encryption/Decryption of Information using Public Key Cryptosystem

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100345685B1 (en) * 1999-11-15 2002-07-27 한국전자통신연구원 Key generating method, and encryption and decryption system and its method by using the braid operation
KR20030079142A (en) * 2002-04-02 2003-10-10 이창우 Method for Encryption/Decryption of Information using Public Key Cryptosystem

Similar Documents

Publication Publication Date Title
JP4809598B2 (en) Use of isojani in the design of cryptographic systems
JP5291795B2 (en) ENCRYPTION DEVICE, DECRYPTION DEVICE, ENCRYPTION METHOD, DECRYPTION METHOD, SECURITY METHOD, PROGRAM, AND RECORDING MEDIUM
US8589679B2 (en) Identifier-based signcryption with two trusted authorities
Zheng et al. Practical approaches to attaining security against adaptively chosen ciphertext attacks
JPH08504962A (en) Encryption method
US20020041684A1 (en) Public-key encryption and key-sharing methods
US11075748B2 (en) Encryption for low-end devices through computation offloading
US6826586B2 (en) Method for efficient computation of point doubling operation of elliptic curve point scalar multiplication over finite fields F(2m)
US20060251248A1 (en) Public key cryptographic methods and systems with preprocessing
US20050135610A1 (en) Identifier-based signcryption
JP4758110B2 (en) Communication system, encryption apparatus, key generation apparatus, key generation method, restoration apparatus, communication method, encryption method, encryption restoration method
JP4563037B2 (en) ENCRYPTION APPARATUS, DECRYPTION APPARATUS, ENCRYPTION SYSTEM HAVING THEM, ENCRYPTION METHOD, AND DECRYPTION METHOD
Fuchsbauer An introduction to probabilistic encryption
US20060104447A1 (en) Discrete logarithm-based cryptography using the Shafarevich-Tate group
JPH11282348A (en) Hyperelliptic curve enciphering method, and its decording
JP2006319485A (en) Signature device, signature encryption device, verification device, decoding device, restoration device, information providing device, communication system, signature method, signature encryption method, and verification method
Encinas et al. Maple implementation of the Chor-Rivest cryptosystem
GB2413465A (en) Signing and encryption using a unique message string
US20020015491A1 (en) Public key encryption method and communication system using public key cryptosystem
JP2617091B2 (en) Cryptographic communication system
Díaz et al. Chor-rivest knapsack cryptosystem in a post-quantum world
JP3706398B2 (en) Signature, authentication and secret communication method using elliptic curve
JP3278790B2 (en) Public key encryption method and public key encryption system
EP1148675A1 (en) Public key cryptograph and key sharing method
KR101932032B1 (en) Polynomial Functional Encryption Method with Linear ciphertext size

Legal Events

Date Code Title Description
A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20050311

A621 Written request for application examination

Effective date: 20050311

Free format text: JAPANESE INTERMEDIATE CODE: A621

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20060414

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20071204

A02 Decision of refusal

Effective date: 20080408

Free format text: JAPANESE INTERMEDIATE CODE: A02