KR100368204B1 - 정규 기저를 이용한 역원 계산 알고리즘 - Google Patents

정규 기저를 이용한 역원 계산 알고리즘 Download PDF

Info

Publication number
KR100368204B1
KR100368204B1 KR10-1998-0031739A KR19980031739A KR100368204B1 KR 100368204 B1 KR100368204 B1 KR 100368204B1 KR 19980031739 A KR19980031739 A KR 19980031739A KR 100368204 B1 KR100368204 B1 KR 100368204B1
Authority
KR
South Korea
Prior art keywords
setting
satisfied
finite
value
determining whether
Prior art date
Application number
KR10-1998-0031739A
Other languages
English (en)
Other versions
KR20000013065A (ko
Inventor
김창한
Original Assignee
김창한
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 김창한 filed Critical 김창한
Priority to KR10-1998-0031739A priority Critical patent/KR100368204B1/ko
Publication of KR20000013065A publication Critical patent/KR20000013065A/ko
Application granted granted Critical
Publication of KR100368204B1 publication Critical patent/KR100368204B1/ko

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/30Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
    • H04L9/3066Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy involving algebraic varieties, e.g. elliptic or hyper-elliptic curves
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/60Methods 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/72Methods 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/724Finite field arithmetic
    • G06F7/726Inversion; Reciprocal calculation; Division of elements of a finite field

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Computing Systems (AREA)
  • Computational Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Algebra (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Complex Calculations (AREA)

Abstract

본 발명은 스마트 카드와 이동통신 단말기를 포함하는 전자기기에서 전자서명을 포함한 정보보안을 위해 사용되는 타원곡선암호를 하드웨어로 구현시 바탕체의 연산중, 불안전한 채널환경에서도 디지털 데이터를 안전하게 전송하기 위하여 데이터 처리 시스템이 정규 기저(normal basis)를 이용하여 유한체(finite field)의 역원(inverse)을 계산하는 방법에 관한 것이다.
본 방법의 일 실시예에서는, t를 n으로, x를 u로, u를 αa로 초기화한다(s10). 그리고 t>0 여부를 판단하고(s20), 상기 판단 결과 t>0 이면, t0=0와 t>1 가 만족되는지 판단한다(s50). 그리고 상기 판단 결과 t0=0 이고, t>1 이면, t 를 오른쪽으로 한번 쉬프트하고, ' ×' 가 유한체의 곱셈,가 u를 t번 제곱하는 것을 의미하는 경우 상기 u를 u×로 설정한 다음, 다시 상기 단계(s50)를 수행한다(s60). 만약 상기 단계(s50)의 조건이 만족하지 않으면, x 값을 x ×u 로 설정하고(s70), 상기 설정 후, t=1 인지의 여부를 확인해서(s80), 확인 결과 t=1이 아니면, u 값을 ur로 설정하고, t0을 0 으로 설정한 뒤, 상기 단계(s50)를 다시 수행한다(s90).
본 발명은 스마트카드, 전자화폐 또는 이동통신 상에서 전자서명과 같은 정보보안을 위한 응용분야에 적용될 수 있다. 아울러 본 발명은 타원곡선 암호시스템에 적용 가능하며 특히 하드웨어에 직접 적용될 수 있다는 점이 특징이다.

Description

정규 기저를 이용한 역원 계산 알고리즘{lnverse operation algorithm using normal basis}
본 발명은 정규 기저를 이용한 역원 계산 방법에 관한 것이다. 특히 본 발명은 타원곡선 암호시스템에 적용되는 핵심기술로서 타원곡선 암호를 하드웨어로 구현시 바탕체의 연산중 역원을 계산하는 방법에 관한 것이다.
최근 인터넷의 확산과 더불어, 안전하지 못한 채널을 통한 안전한 데이터의 전송을 보장하는 능력이 전자상거래업체와 개인에게 모두 중요한 주제가 되어 왔다.
공개키 암호체계(Public-key cryptosystem)는 1976 년에 Diffie-Hellman에 의해서 처음으로 제안되었고, 이후, 정보의 비밀성, 무결성, 관계자 인증 및 부인방지를 설명하는 방법으로 사용되어왔다.
Neal Koblitz 와 Victor Miller 에 의해서 독립적으로 제안되어진 암호 체계인 ECC(Elliptic Curve Cryptosystem)는 공개키와 비밀키를 생성하는데 타원 곡선을 사용한다.
공개키와 개인키(비밀키)를 얻는데 있어서, 이 방법은 상당한 관심을 유발시켜 왔는데, 그 이유는 이 방법이 현재 사용되고 있는 또 다른 암호 체계와 같은 수준의 안전성을 제공하면서도 키(key) 크기가 더욱 더 작게 될 수 있기 때문이었다. 작은 키값은 데이터를 암호화, 복호화하는데 있어서 연산량과 에너지 요구를 훨씬 줄여주게 된다.
최근에 집중적으로 논의되고 있는 디지털 서명(Digital Signature, 전자 서명은 부분적인 의미)의 경우, 공개키 암호가 필수적이며 지금 가장 널리 사용되고 있는 RSA의 경우, 키 크기가 1024 비트는 되어야 안전한 것으로 평가되는데, 이는 서명의 길이가 너무 긴 단점을 지내고 있다.
이에 반해, ECC는 160 비트 정도의 키 크기로 같은 수준의 안전성을 보장하기 때문에, 전자 상거래에 필요한 스마트 카드나 전자 화폐 등에 사용될 수 있다. 또한, 전원의 양이 한정된 이동 통신기기의 암호화에 적용될 수도 있다.
위와 같은 이유로 해서 ECC는 차세대 공개키 암호법으로 주목받고 있다. 그런데, 이를 구현하기 위해서는 유한체의 연산을 효율적으로 구현하는 것이 매우 중요한 변수가 된다.
특히, smart card, HPC, 이동 통신기기 등의 하드웨어에 상기 기법을 구현하기 위해서는 정규 기저를 이용한 유한체 연산 방법이 현재까지 알려진 가장 적합한 방법으로 여겨지고 있다. 여기서, 유한체 GF(2n)란 원소의 개수가 2n이며, 사칙연산을 가진 집합을 말한다. 이 기술은 A.J. Menezes의 저서인 "Applications of finite fields, "Kluwer Academic Publishers(1993)에 개시되어 있다.
도 1은 다른 종래기술의 흐름도로서 1985년에 C.C. Wang, T.K. Truong, H,M.Shao, L.J. Deutsch, J.K Omura 및 I.S. Reed에 의해 "VLSI architecture for computing multiplications and inverses in GF(2m), " IEEE Trans, Comput., vol. C-34를 통해 개시되었다. 이때 a∈GF(2n)의 관계가 있다. 이 방법에서는 먼저, u값에 a2을, x 값에 1을, t 값에 0을 대입한 후(s1), w 값에는 u·x 를, t 값에는 t+1을 대입한다(s2) 그 다음으로는, t = n-1인지를 판단하여(s3), 이 조건을 만족하면, x를 인쇄한 다음(s5) 멈추고(s6), 상기 판단 조건을 만족하지 못하면, u 값에 u2를, x 값에 w를 대입하고(S4), 다시 w 값에는 u·x를, t 값에는 t + 1을 대입하는 단계(s2)로 간다. 상기한 바와 같이 이 방법은 유한체의 역원을 구하는 최적화된 방법은 아니다. 이 기술은 하드웨어의 구현을 위해 방법을 단순화시키는데 초점을 맞추었기 때문에, 곱셈의 개수는 고려하지 않았다. 따라서 이 방법을 사용해서GF(2n) 위에서 역원을 계산하기 위해서는 n-2 번의 곱셈과 n-1 번의 제곱이 필요하다.
다른 종래기술로서 1986년 T. Itoh, 0 Teechai 및 S. Tsujii에 의해 "A fast algorithm for computing multicative inverses in GF(2n) using normal bases," J. Soc. Electron. Comm,(Japan), 44(1986), pp.31-26를 통해 개시된 방법은, nb(n-1)+w(n-1)-2 번의 곱셈과 n-1 번의 제곱을 요구한다. 여기서, nb(n)은 n의 비트수이고, w(n)는 n의 이진법 표현에서 생기는 1의 개수를 의미한다. 이는 곱셈의 개수를 최소화시켰다는 중요한 장점을 지녔다. 그러나, 이 방법은 하드웨어의 구현시 많은 결점을 지니고 있다.
이또 등의 방법의 하드웨어 구현시의 결점을 간단히 살펴보면, 첫째로, 계산 단계중에 중간 결과의 저장이 필요하고, 이런 저장 장소의 크기도 주어진 유한체에 따라 변한다는 점이고, 둘째로, 하드웨어에서 구현하기에는 방법이 매우 복잡하다는 점이다.
이를 개선하기 위해서 G.B, Agnew, T. Beth, R,C. Mullin 및 S.A. Vanstone 에 의해 "Arithmetic Operations in GF(2n)" J. Cryptology(1993)를 통해 개시된 방법은 하드웨어의 구현에 적합한 방법이었으나, 곱셈의 개수가 많이 늘어나는 단점이 있다.
따라서 현재는 상기 Wang 등에 의해 제시된 방법이 주로 사용되고 있다.
본 발명은 상기와 같은 종래 기술의 문제점을 해결하기 위하여 창안된 것으로서, 멱승 방법(Exponentiation method) 의 응용으로서 정규 기저로 표현된 유한체의 역원을 구하는 최적화된 역원 계산 방법을 제공함을 그 목적으로 한다.
또한, 본 발명은 마지막으로 변형된 정규 기저에 적용된 역원 계산 방법을 제공함을 다른 목적으로 한다.
본 발명의 목적과 장점은 아래의 발명의 상세한 설명을 읽고 아래의 도면을 참조하면 보다 명백해질 것이다.
도 1 은 종래의 기술인 Wang 등에 의해 제안된 방법의 흐름을 나타낸 순서도.
도 2 는 본 발명에 따른 멱승 계산 방법의 흐름도.
도 3 은 본 발명에 따른 멱승 계산 방법의 다른 실시예를 나타내는 흐름도.
도 4 는 본 발명에 따른 멱승 계산 방법의 또 다른 실시예를 나타내는 흐름도.
< 제 1 실시예 >
도 2는 스마트 카드와 이동통신 단말기를 포함하는 전자기기에서 전자서명을 포함한 정보보안을 위해 사용되는 타원곡선암호를 하드웨어로 구현시 바탕체의 연산중, 불안전한 채널환경에서도 디지털 데이터를 안전하게 전송하기 위하여 데이터 처리 시스템이 정규 기지(normal basis)를 이용하여 유한체(finite field)의 역원(inverse)을 계산하는 방법의 바람직한 일 실시예의 흐름도이다.
이때 a는 정수 또는 a∈GF(2n+1)의 관계가 있고, a, r은 자연수다. 여기서 GF(2n)는 정규 기저로 표현된 유한체(finite field)를 뜻한다. 본 발명에서는 p를 소수(prime)이라고 하고, n≥l일 때 q=pn이라고 한다. 이때 GF(q)는 q개의 유한요소(finite elements)를 갖는 유한체라고 하며, GF(qn)은 GF(q)를 n차원으로확장한 유한체가 된다. 이러한 정의는 전혀 새로운 것이 아니며 이 분야의 숙련된 기술자들에게는 이미 정형화된 것으로 받아들여지고 있는 것이다.
본 발명은 smart card, HPC, 이동 통신기기 등과 같은 데이터 처리 시스템이, 불안전한 채널환경에서도 디지털 데이터를 안전하게 전송하기 위하여 정규 기저(normal basis)를 이용하여 유한체(finite field)의 역원(inverse)을 계산하는 방법에 관한 것이다.
본 발명에서, a는 자연수, k는 양의 정수, l은 자연수, n은 양의 정수, p는 소수(prime), r은 자연수일 때, q=pn의 관계가 성립하고, GF(q)는 q개의 원소(finite elements)를 갖는 유한체, GF(qn)은 GF(q)를 n차원으로 확장한 유한체, GF(q)상의 GF(qn)의 정규기저는이고, t=(tl…t1,t0)2로 표시되는 2진수, u와 x는 상기 확장한 유한체의 n개의 2진비트열 가운데 하나의 비트열 원소를 나타내고, a∈GF(2n+1)일 때, t를 n으로, x를 1로, u를 αα로 초기화 한다(s10). 그리고 t>0 여부를 판단하고(s20), 상기 판단 결과 t>0 이면, t0=0와 t>1 가 만족되는지 판단한다(s50). 그리고 상기 판단 결과 t0=0 이고, t>1 이면, t 를 오른쪽으로 한번 쉬프트하고, ' X '가 유한체의 곱셈,가 u를 t번 제곱하는 것을 의미하는 경우 상기 u 를로 설정한 다음, 다시 상기 단계(s50)를 수행한다(s60). 만약 상기 단계(s50)의 조건이 만족하지 않으면, x 값을 x ×u 로 설정하고(s70), 상기 설정 후, t=1 인지의 여부를 확인해서(s80), 확인 결과 t=1이 아니면, u 값을 ur로 설정하고, t0을 0 으로 설정한 뒤, 상기 단계(s50)를 다시 수행한다(s90).
t= {10111011}2인 경우 이것을 오른쪽으로 한번 쉬프트 하면 t= {1011101}2이 되고, 또 한번 오른쪽으로 쉬프트 하면 t= {101110}2이 된다.
< 제 2 실시예 >
도 3 은 a, r 이 2 인 경우에 정규 기저를 이용한 유한체의 역원 계산 방법의 바람직한 실시예를 나타내는 흐름도이다.
본 실시예는 스마트 카드와 이동통신 단말기를 포함하는 전자기기에서 전자서명을 포함한 정보보안을 위해 사용되는 타원곡선암호를 하드웨어로 구현시 바탕체의 연산중, 불안전한 채널환경에서도 디지털 데이터를 안전하게 전송하기 위하여 데이터 처리 시스템이 정규 기저(normal basis)를 이용하여 유한체(finite field)의 역원(inverse)을 계산하는 방법에 관한 것으로서, a는 2, k는 양의 정수, l은 자연수, n은 양의 정수, p는 소수(prime), r은 2 일 때, q=pn의 관계가 성립하고, GF(q)는 q개의 원소(finite elements)를 갖는 유한체, GF(qn)은 GF(q)를 n차원으로 확장한 유한체, GF(q)상의 GF(qn)치 정규기저는이고, t=(tl,…,t1,t0)2로 표시되는 2진수, u와 x는 상기 확장한 유한체의 n개의 2진 비트열 가운데 하나의 비트열 원소를 나타내고, α∈GF(2n+1)일 때, t를 n으로, x를 1로, u를 α2로 초기화 한다(s120). 그리고 t>0 여부를 확인하고(s130), 상기 확인 결과 t>0 이면, t0=0와 t>1 가 만족되는지 판단한다(s160).
상기 판단 결과 t0=0 이고, t>1 이면, t 를 오른쪽으로 한번 쉬프트하고, ' ×'가 유한체의 곱셈,가 u를 t번 제곱하는 것을 의미하는 경우 상기 u를 u×로 설정한 다음, 다시 상기 단계(s160)를 수행한다(s170). 만약 상기 단계(s160)의 조건이 만족하지 않으면, x 값을 x×u 로 설정하고(s180), 상기 설정 후 t=1 인지의 여부를 판단하여(s190), 상기 판단 결과 t=1이 아닌 경우에는, u 값을 u2로 설정하고, t0을 0 으로 설정한 뒤, 다시 상기 단계(s160)를 수행한다(s200).
< 제 3 실시예 >
본 발명의 바람직한 또 다른 실시예가 도 4에 개시되어 있다. 본 실시예는 스마트 카드와 이동통신 단말기를 포함하는 전자기기에서 전자서명을 포함한 정보보안을 위해 사용되는 타원곡선암호를 하드웨어로 구현시 바탕체의 연산중, 불안전한 채널환경에서도 디지털 데이터를 안전하게 전송하기 위하여 데이터 처리 시스템이 정규 기저(normal basis)를 이용하여 유한체(finite field)의 역원(inverse)을 계산하는 방법에 관한 것이다.
본 발명에서 a는 영이 아닌 정수, k는 양의 정수, l은 자연수, n은 양의 정수, p는 소수(prime), r은 영이 아닌 정수일 때, q=pn관계가 성립하고, GF(q)는 q개의 원소(finite elements)를 갖는 유한체, GF(qn)은 GF(q)를 n차원으로 확장한 유한체, GF(q)상의 GF(qn)의 정규기저는이고, t=(tl,…,t1,t0)2로 표시되는 2진수, u와 x는 상기 확장한 유한체의 n개의 2진 비트열 가운데 하나의 비트열 원소를 나타내고,,일 때, t를 2n-1로, x를 1로, u를 α2로 초기화 한다(s230). 그리고 t>0 여부를 판단하고(s240), 상기 판단 결과 t>0이면, t0=0와 t>1 가 만족되는지 판단하고(s270), 상기 판단 결과 t0=0 이고, t>1 이면, t를 오른쪽으로 한번 쉬프트하고,' × '가 유한체의 곱셈,가 u를 t번 제곱하는 것을 의미하는 경우 상기 u를 u×로 설정한 다음, 다시 상기 단계(s270)를 수행한다(s280). 만약 상기 단계(s270)의 조건이 만족가지 않으면, x 값을 x ×u 로 설정하고(s290), 상기 설정 후, t=1 인지의 여부를 판단한다(s300). 그리고 상기 판단 결과 t=1이 아니면, u 값을 u2로 설정하고, t0을 0으로 설정한 뒤, 상기 단계(s270)를 다시 수행한다(s270).
그러나 상기 단계(s300)의 조건이 만족되지 않는 경우, t 의 값을 m-1로, (x ·a)을 오른쪽으로 2n번 쉬프트한 값을 u로, y 의 값을 1로 설정한 뒤(s320), t의 값이 0 보다 큰지 여부를 판단해서(s330), t의 값이 0 보다 크면 to=0 이고 t가 1보다 큰지 판단한다(s360). 만약 상기 단계(s360)의 조건이 만족되면, t를 오른쪽으로 한번 쉬프트하고, 상기 u를 오른쪽으로 2nx t번 쉬프트해서 u와 곱한 값을 u로 설정한 뒤, 다시 상기 단계(s360)를 수행한다(s370). 그러나 만약 상기 단계 (S360)의 조건을 만족하지 않으면, y를 y ×u로 설정한 뒤(s380), t=1 인지의 여부를 확인한다(s390). 상기 확인 결과 t=1이면 x 값을 x ×y 로 설정하고 (s400), 확인 결과, t=1이 아니면 u를 2n번 우측으로 쉬프트한 값을 u로 설정하고, t0을 0 로 설정한 뒤, 다시 상기 단계(s360)를 수행한다(s430).
본 발명의 적용분야는 컴퓨터, 핸드폰, 스마트카드, 전자화폐 등 많은 분야가 해당된다. 특히 본 발명은 스마트카드나 이동통신 상에서 전자서명과 같은 정보보안을 위한 응용분야에 적용될 수 있는 기술이다. 현실적으로 기존의 RSA, DSA 같은 공개키방식은 앞에서 언급한 환경에서 구현하는데 많은 어려움이 있으나, 본 발명에 따른 타원곡선 암호방식은 이를 충분히 극복할 수 있다. 본 발명은 타원곡선 암호시스템에 적용되는 핵심기술이며, 특히 하드웨어에 직접 적용될 수 있는 기술이다.
본 발명은 다양하게 변형될 수 있고 여러 가지 형태를 취할 수 있으며 상기 발명의 상세한 설명에서는 그에 따른 특별한 실시예에 대해서만 기술하였다. 하지만 본 발명은 상기 발명의 상세한 설명에서 언급된 특별한 형태로 한정되는 것이 아닌 것으로 이해되어야 하며, 오히려 첨부된 청구범위에 의해 정의되는 본 발명의 정신과 범위 내에 있는 모든 변형물과 균등물 및 대체물을 포함하는 것으로 이해되어야 한다.
상기와 같이 구성된 본 발명의 효과 및 장점은 다음과 같다.
첫째, 본 발명은 정규 기저를 이용한 유한체 연산중에서도 최적화가 미비한 곱셈 역원(muliplicative inverse)을 개선한 정규 기저를 이용한 역원 계산방법을 제공한다.
둘째, 본 발명은 변형된 정규 기저의 경우에도 제곱의 개수를 현저히 줄이는 효과가 있다. 즉 본 발명은 기존의 방법보다 제곱이 n-1로 줄어든다.
셋째, 본 발명에 따른 최적 역원 방법은 곱셈과 제곱의 수에 있어서 이또 등의 방법과 같으면서도 중간 결과의 저장이 전혀 필요 없다.
넷째, 본 발명은 방법이 단순하고 곱셈과 제곱을 제외한 어떠한 계산도 소요되지 않는 최적화된 방법이다.
다섯째, 본 발명은 스마트카드, 전자화폐 또는 이동통신 상에서 전자서명과 같은 정보보안을 위한 응용분야에 적용될 수 있다.
여섯째, 본 발명은 타원곡선 암호시스템에 적용 가능하며 특히 하드웨어에 직접 적용될 수 있다.

Claims (3)

  1. 스마트 카드와 이동통신 단말기를 포함하는 전자기기에서 전자서명을 포함한 정보보안을 위해 사용되는 타원곡선암호를 하드웨어로 구현시 바탕체의 연산중, 불안전한 채널환경에서도 디지털 데이타를 안전하게 전송하기 위하여 데이터 처리 시스템이 정규 기저(normal basis)를 이용하여 유한체(finite field)의 역원 (inverse)을 계산하는 방법에 있어서,
    a는 자연수, k는 양의 정수, l은 자연수, n은 양의 정수, p는 소수(prime), r은 자연수일 때,
    q=pn의 관계가 성립하고, GF(q)는 q개의 원소(finite elements)를 갖는 유한체, GF(qn)은 Gf(q)를 n차원으로 확장한 유한체, GF(q)상의 GF(qn)의 정규기저는이고, t=(tl,…,t1,t0)2로 표시하는 2진수, u와 x는 상기 확장한 유한체의 n개의 2진 비트열 가운데 하나의 비트열 원소를 나타내고, a∈GF(2n+1)일 때,
    t를 n으로, x를 1로, u를 αα초기화 하는 단계;
    t>0 여부를 판단하는 단계;
    상기 판단 결과 t>0 이면, t0=0와 t>1 가 만족되는지 판단하는 단계;
    상기 판단 결과 t0=0 이고, t>1 이면, t 를 오른쪽으로. 한번 쉬프트하고, ' ×'가 유한체의 곱셈,가 u를 t번 제곱하는 것을 의미하는 경우 상기 u를 u ×로 설정한 다음, 다시 상기 t0=0와 t>1 가 만족되는지 판단하는 단계를 수행하는 단계;
    만약 상기 판단결과 t0=0와 t>1 가 만족되지 않으면, x 값을 x ×u 로 설정하는 단계;
    상기 설정 후, t=1 인지의 여부를 판단하는 단계; 및
    상기 판단 결과 t=1이 아니면, u 값을 ur로 설정하고, t0을 0 으로 설정한 뒤, 상기 t0=0와 t>1 가 만족되는지 판단하는 단계를 다시 수행하는 단계를 포함하는, 정규기저를 이용한 유한체의 계산 방법.
  2. 스마트 카드와 이동통신 단말기를 포함하는 전자기기에서 전자서명을 포함한 정보보안을 위해 사용되는 타원곡선암호를 하드웨어로 구현시 바탕체의 연산중, 불안전한 채널환경에서도 디지탈 데이타를 안전하게 전송하기 위하여 데아터 처리 시스템이 정규 기저(normal basis)를 이용하여 유한체(finite field)의 역원 (inverse)를 계산하는 방법에 있어서,
    a는 2, k는 양의 정수, l은 자연수, n은 양의 정수, p는 소수(prime), r은 2 일 때,
    q=pn의 관계가 성립되고, GF(q)는 q개의 원소(finite elements)를 갖는 유한체, GF(qn)은 GF(q)를 n차원으로 확장한 유한체, GF(q)상의 GF(qn)의 정규기저는이고, t=(tl,…t1,t0)2로 표시되는 2진수, u와 x는 상기 확장한 유한체의 n개의 2진 비트열 가운데 하나의 비트열 원소를 나타내고, a∈GF(2n+1)일 때,
    t를 n으로, x를 1로, u를 α2로 초기화 하는 단계;
    t>0 여부를 판단하는 단계;
    상기 판단 결과 t>0 이면, t0=0와 t>1 가 만족되는지 판단하는 단계;
    상기 판단 결과 t0=0 이고, t>1 이면, t 를 오른쪽으로 한번 쉬프트하고, ' ×'가 유한체의 곱셈,가 u를 t번 제곱하는 것을 의미하는 경우 상기 u를 u×로 설정한 다음, 다시 상기 t0=0와 t>1 가 만족되는지 판단하는 단계를 수행하는 단계;
    만약 상기 t0=0와 t>1 가 만족되는지 판단하는 단계의 조건이 만족하지 않으면, x 값을 x ×u로 설정하는 단계;
    상기 설정후 t=1 인지의 여부를 판단하는 단계; 및
    상기 판단 결과 t=1이 아닌 경우에는, u 값을 u2로 설정하고, t0을 0으로 설정한 뒤, 다시 상기 t0=0와 t>1 가 만족되는지 판단하는 단계를 수행하는 단계를 포함하는, 정규 기저를 이응한 유한체의 역원 계산 방법.
  3. 스마트 카드와 이동통신 단말기를 포함하는 전자기기에서 전자서명을 포함한 정보보안을 위해 사용되는 타원곡선암호를 하드웨어로 구현시 바탕체의 연산중, 불안전한 채널환경에서도 디지탈 데이타를 안전하게 전송하기 위하여 데아터 처리 시스템이 정규 기저(nornal basis)를 이용하여 유한체(finite field)의 역원 (inverse)를 계산하는 방법에 있어서,
    a는 영이 아닌 정수, k는 양의 정수, l은 자연수, n은 양의 정수, p는 소수 (prime), r은 영이 아닌 정수일 때,
    q=pn의 관계가 성립되고, GF(q)는 q개의 원소(finite elements)를 갖는 유한체, GF(qn)은 GF(q)를 n차원으로 확장한 유한체, GF(q)상의 GF(qn)의 정규기저는이고, t=(tl,…t1,t0)2로 표시되는 2진수, u와 x는 상기 확장한 유한체의 n개의 2진 비트열 가운데 하나의 비트열 원소를 나타내고,,일 때,
    t를 2n-1으로, x를 1로, u를 α2로 초기화 하는 단계;
    t>0 여부를 판단하는 단계;
    상기 판단 결과 t>0 이면, t0=0와 t>1 가 만족되는지 판단하는 단계;
    상기 판단 결과 t0=0 이고, t>1 이면, t 를 오른쪽으로 한번 쉬프트하고,' ×'가 유한체의 곱셈,가 u를 t번 제곱하는 것을 의미하는 경우 상기 u를 u ×로 설정한 다음, 다시 상기 t0=0와 t>1 가 만족되는지 판단하는 단계를 수행하는 단계;
    만약 상기 t0=0와 t>1 가 만족되는지 판단하는 단계의 조건이 만족되지 않으면, x 값을 x ×u로 설정하는 단계;
    상기 설정 후, t=1 인지의 여부를 판단하는 단계;
    상기 판단 결과 t=1이 아니면, u 값을 u2로 설정하고, t0을 0 으로 설정한 뒤, 상기 t0=0와 t>1 가 만족되는지 판단하는 단계를 다시 수행하는 단계;
    만약 상기 판단 결과 t=1이 아니면 t의 값을 m-1로, (x ·a)을 오른쪽으로 2"번 쉬프트한 값을 u로, y의 값을 1로 설정하는 단계;
    상기 t, (x ·a) 및 y의 설정 뒤 t 의 값이 0 보다 큰지 여부를 판단하는 단계(s330);
    상기 판단(s33) 결과 t의 값이 0 보다 크면, t0=0 이고 t 가 1 보다 큰지 판단하는 단계(s360);
    상기 단계(s360)의 조건을 만족하면, t를 오른쪽으로 한번 쉬프트하고, 상기 u를 오른쪽으로 2n×t번 쉬프트해서 u와 곱한 값을 u로 설정한 뒤, 다시 상기단계(s360)를 수행하는 단계;
    상기 단계(s360)의 조건을 만족하지 않으면, y를 y ×u로 설정하는 단계;
    상기 설정 뒤 t=1 인지의 여부를 확인하는 단계(s390);
    상기 확인(s390) 결과 t=1이면 x 값을 x ×y 로 설정하는 단계; 및
    상기 확인(s390) 결과, t=1이 아니면 u를 2n번 우측으로 쉬프트한 값을 u로 설정하고, t0을 0 으로 설정한 뒤, 다시 상기 단계(s360)를 수행하는 단계를 포함하는, 정규기저를 이용한 유한체의 역원 계산 방법.
KR10-1998-0031739A 1998-08-04 1998-08-04 정규 기저를 이용한 역원 계산 알고리즘 KR100368204B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR10-1998-0031739A KR100368204B1 (ko) 1998-08-04 1998-08-04 정규 기저를 이용한 역원 계산 알고리즘

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR10-1998-0031739A KR100368204B1 (ko) 1998-08-04 1998-08-04 정규 기저를 이용한 역원 계산 알고리즘

Publications (2)

Publication Number Publication Date
KR20000013065A KR20000013065A (ko) 2000-03-06
KR100368204B1 true KR100368204B1 (ko) 2003-03-06

Family

ID=19546392

Family Applications (1)

Application Number Title Priority Date Filing Date
KR10-1998-0031739A KR100368204B1 (ko) 1998-08-04 1998-08-04 정규 기저를 이용한 역원 계산 알고리즘

Country Status (1)

Country Link
KR (1) KR100368204B1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100606435B1 (ko) 2005-02-04 2006-08-01 고려대학교 산학협력단 유한체에서의 역원 연산 장치 및 방법

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100606435B1 (ko) 2005-02-04 2006-08-01 고려대학교 산학협력단 유한체에서의 역원 연산 장치 및 방법

Also Published As

Publication number Publication date
KR20000013065A (ko) 2000-03-06

Similar Documents

Publication Publication Date Title
JP3862500B2 (ja) 直接埋め込み方式による高速楕円曲線暗号化の方法と装置
US7961874B2 (en) XZ-elliptic curve cryptography with secret key embedding
US7961873B2 (en) Password protocols using XZ-elliptic curve cryptography
US7379546B2 (en) Method for XZ-elliptic curve cryptography
CN109039640B (zh) 一种基于rsa密码算法的加解密硬件系统及方法
US20060029220A1 (en) Elliptic polynomial cryptography with multi x-coordinates embedding
US6480606B1 (en) Elliptic curve encryption method and system
Langley et al. Rfc 7748: Elliptic curves for security
Yang et al. A provably secure and efficient strong designated verifier signature scheme
WO2019056103A1 (en) SUPERSINGULAR ELLIPTICAL CURVED CRYPTOGRAPH KEY AGREEMENT SCHEME WITH THREE PARTS
JP2007041461A (ja) 楕円曲線暗号におけるスカラー倍計算方法およびスカラー倍計算装置
JP4423900B2 (ja) 楕円曲線暗号におけるスカラー倍計算方法と、その装置およびそのプログラム
JP4616169B2 (ja) モンゴメリ乗算剰余における変換パラメータの計算装置、方法およびそのプログラム
KR100368204B1 (ko) 정규 기저를 이용한 역원 계산 알고리즘
Wang et al. An efficient elliptic curves scalar multiplication for wireless network
KR102490702B1 (ko) 유한 필드 디피 헬만에서 보안 소수를 선택하기 위한 방법 및 시스템
CN102347840B (zh) 一种基于互素序列和杠杆函数的公钥加密方法
JP4502817B2 (ja) 楕円曲線スカラー倍計算方法および装置
KR100341507B1 (ko) 빠른 유한체 연산을 이용한 타원곡선 암호화 방법 및 전자서명 방법
Gupta et al. Performance study of genus 3 hyperelliptic curve cryptosystem
JP2942395B2 (ja) 秘密通信用ネットワークシステム
Banoth et al. Mathematical Foundation for Classical and Modern Cryptography
Ikram Cryptographic identification of users over network
Gueron et al. Applications of the Montgomery exponent
Rafiammal Implementation of Elliptic Curve Scalar Multiplier on FPGA

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E601 Decision to refuse application
AMND Amendment
J201 Request for trial against refusal decision
B601 Maintenance of original decision after re-examination before a trial
J301 Trial decision

Free format text: TRIAL DECISION FOR APPEAL AGAINST DECISION TO DECLINE REFUSAL REQUESTED 20010720

Effective date: 20020930

S901 Examination by remand of revocation
GRNO Decision to grant (after opposition)
GRNT Written decision to grant
LAPS Lapse due to unpaid annual fee