KR20110136787A - 타원 곡선상의 점의 부호화 - Google Patents

타원 곡선상의 점의 부호화 Download PDF

Info

Publication number
KR20110136787A
KR20110136787A KR1020117016455A KR20117016455A KR20110136787A KR 20110136787 A KR20110136787 A KR 20110136787A KR 1020117016455 A KR1020117016455 A KR 1020117016455A KR 20117016455 A KR20117016455 A KR 20117016455A KR 20110136787 A KR20110136787 A KR 20110136787A
Authority
KR
South Korea
Prior art keywords
function
point
parameter
elliptic curve
equation
Prior art date
Application number
KR1020117016455A
Other languages
English (en)
Other versions
KR101602361B1 (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 모르포
Publication of KR20110136787A publication Critical patent/KR20110136787A/ko
Application granted granted Critical
Publication of KR101602361B1 publication Critical patent/KR101602361B1/ko

Links

Images

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/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • 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/002Countermeasures against attacks on cryptographic mechanisms
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L12/40052High-speed IEEE 1394 serial bus
    • H04L12/40104Security; Encryption; Content protection
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/30Compression, e.g. Merkle-Damgard construction

Landscapes

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

Abstract

다음 방정식을 만족하는 타원 곡선상의 점 P를 획득하는 단계를 포함하는 전자적 구성요소에서 암호 계산 방법에 있어서:
Figure pct00073
상기 a1, a2, a3, a4 및 a6는 집합 A의 구성요소들이고, A는 모듈러 정수 환(a ring of the modular integers) Z/qZ 이고 상기 q는 3보다 명백히(strictly) 큰 서로 다른 소수들(prime numbers) 중 어느 하나의 수(number) I의 양의 정수배이고, I는 2보다 크거나 같은 정수이고, 또는 A는 소수(prime integer)의 q 제곱승을 갖는 유한 필드(finite filed) Fq이고; 상기 X 및 Y는 점 P의 좌표이고, A의 구성요소들이다. 상기 방법은 파라미터를 결정하는 단계(11)와, 상기 파라미터에 함수를 적용함으로써(12), 점 P의 좌표 X,Y를 획득하는 단계(13)를 포함한다. A의 오일러 함수(Euller function)
Figure pct00074
는 방정식
Figure pct00075
에 대응된다.
상기 함수는 a1, a2, a3, a4 및 a6 그리고 A 내의 상기 파라미터에서 유리분수(a rational fraction)에 의해 표현되는 가역함수(invertible function) 및 확정적 함수(deterministic function)이고, 점 P 중 적어도 하나의 값 q/4I 를 획득하고, I는 유한 필드 Fq에 대하여 1과 동일한 I값을 가진다.
상기 방법은 암호화(cryptographic encryption) 또는 해쉬(hash) 인증(authentication) 또는 인식 어플리케이션(identification application)에서 상기 점 P를 이용하는 단계를 더 포함한다.

Description

타원 곡선상의 점의 부호화{ENCODING OF POINTS OF AN ELLIPTIC CURVE}
본 발명은 타원 곡선의 점들의 사용에 기초한 메시지 암호화에 관한 것으로서, 보다 상세하게는, 확정적 방법(a deterministic manner)에 의한 메시지 암호화에 관한 것이다.
메시지에 암호화 계산법을 적용하기 위해 수학적 구조들에 임의의 값들을 삽입하는 알고리즘이 전통적으로 사용되어 오고 있다. 이러한 목적을 위해, 타원 곡선들은 그러한 암호화 계산들의 구현을 용이하게 하고, 다른 암호화 계산들의 구현에 관해서 메모리 공간을 절약할 수 있게 하는 수학 구조(mathematical structures)들이다.
그러나 타원 곡선들을 이용하여 임의의 값들을 삽입하기 위한 효율적인 알고리즘들은 개연성(probabilistic)에 근거한다. 결론적으로, 그러한 알고리즘들의 구현 시간은 불변하는(constant) 것이 아니고, 메시지가 암호화되는 것에 의존한다. 이에 따라, 침입자(attacker)가 적용되는 알고리즘의 다양한 구현 시간을 결정한다면, 그는 암호화된 메시지에 대한 정보를 획득할 수 있게 된다.
개연적 삽입 알고리즘(probabilistic insertion algorithm)에 의해 사용된 시간을 가장(mask)하기 위해, 이 알고리즘에 쓸모없는(userless) 단계들을 추가하도록 하여, 어떠한 메시지가 처리되더라도, 그 응용은(application) 항상 동등한 길이의 시간 간격으로 분산된다.
그러나 그러한 처리는 다루기가 힘들고, 상당한 양의 시간을 소모하게 된다.
본 발명의 목적은 상기와 같은 상황을 개선하는 데 목적이 있다.
본 발명의 일면에 따른 암호 계산 방법은, 다음 방정식을 만족하는 타원 곡선상의 점 P를 획득하는 단계를 포함하는 전자적 구성요소에서 암호 계산 방법에 있어서:
Figure pct00001
상기 a1, a2, a3, a4 및 a6는 집합 A의 구성요소들이고,
A는 모듈러 정수 환(a ring of the modular integers) Z/qZ 이고 상기 q는 3보다 명백히(strictly) 큰 서로 다른 소수들(prime numbers) 중 어느 하나의 수(number) I의 양의 정수 배이고, I는 2보다 크거나 같은 정수이고, 또는 A는 소수(prime integer)의 q 제곱 승을 갖는 유한 필드(finite filed) Fq이고;
상기 X 및 Y는 점 P의 좌표이고, A의 구성요소들이고,
다음 단계들을 포함하는 상기 방법;
/a/ 파라미터를 결정하는 단계(11);
/b/ 상기 파라미터에 함수를 적용함으로써(12), 점 P의 좌표 X,Y를 획득하는 단계(13);
다음 방정식을 만족하는 A의 오일러 함수(Euller function)
Figure pct00002
:
Figure pct00003
상기 함수는 a1, a2, a3, a4 및 a6 그리고 A 내의 상기 파라미터에서 유리분수(a rational fraction)에 의해 표현되는 가역 함수(invertible function) 및 확정적 함수(deterministic function)이고,
점 P 중 적어도 하나의 값 q/4I 를 획득하고, I는 유한 필드 Fq에 대하여 1과 동일한 I값을 가지고;
/c/ 암호화(cryptographic encryption) 또는 해쉬(hash) 인증(authentication) 또는 인식 어플리케이션(identification application)에서 상기 점 P를 이용하는 단계;를 포함할 수 있다.
본 발명의 일 실시예에 따르면, 종래 기술에서 수행된 것처럼 개연적 방법(probabilistic manner)으로 암호계산을 수행하는 것과 달리, 암호 계산을 위한 실행 시간은 상기 계산이 수행되는 메시지에 의존하지 않는다.
또한, 높은 수준의 효율적 구현을 유지하는 동안 잠재적인 침입자(potential attacker)에 정보를 제공하지 않고, 이들 규정들(provisions)에 의하여, 전자적 구성요소(electronic component)에서, 타원 곡선상의 점들에 기초하여 암호 계산을 실행하는 것이 가능하다.
또한, 확정적 방법(deterministic manner)으로 타원 곡선상의 많은 점들은 잠재적 침입들에 대하여 높은 수준의 보안을 갖는 다수의 암호 응용들을 가능하게 한다.
또한, 본 발명은 전자 신원 문서(electronic identity documents), 전자 여권(electronic passport)과 같이 개인 사생활 보호(privacy)에 관련된 프로토콜의 맥락에서 유리하게 적용될 수 있다.
또한, 본 발명은 ID 기반의 암호화 방식(identity-based encryption schemes)의 맥락에서 유용하게 적용될 수 있다.
본 발명은 전통적인 랜덤 함수에 기초하여 타원 곡선에 대한 랜덤 함수를 반환(return)하는 구성을 제공할 수 있다.
종래의 보네-프랭클린(Boneh-Franklin) 방식은 타원 곡선의 단일 형태만을 제안했으나, 본 발명은 그들의 암호 방식이 구현될 타원 곡선들의 개수를 증가시킬 수 있다.
도 1은 본 발명의 일 실시예에 따른 암호 계산의 주요 단계를 나타내는 도면이다.
본 발명의 상술한 목적, 특징들 및 장점은 첨부된 도면과 관련된 다음의 상세한 설명을 통하여 보다 분명해질 것이다. 이하 첨부된 도면을 참조하여 본 발명에 따른 바람직한 실시예들을 상세히 설명한다. 명세서 전체에 걸쳐서 동일한 참조번호들은 동일한 구성요소들을 나타낸다. 또한, 본 발명과 관련된 공지 기능 혹은 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우, 그 상세한 설명을 생략한다.
본 발명의 첫 번째 양상은 다음 방정식을 만족하는 타원 곡선상의 점 P를 획득하는 단계를 포함하는 전자적 구성요소에서 암호 계산 방법을 제안한다.
Figure pct00004
상기 a1, a2, a3, a4 및 a6는 집합 A의 구성요소들이고,
A는 모듈러 정수 환(a ring of the modular integers) Z/qZ 이고, 상기 q는 3보다 명백히(strictly) 큰 서로 다른 소수들(prime numbers) 중 어느 하나의 수(number) I의 양의 정수배이고, I는 2보다 크거나 같은 정수이고, 또는 A는 소수(prime integer)의 q 제곱승을 갖는 유한 필드(finite filed) Fq이고;
상기 X 및 Y는 점 P의 좌표이고, A의 구성요소들이고,
다음 단계들을 포함하는 상기 방법;
/a/ 파라미터를 결정하는 단계(11);
/b/ 상기 파라미터에 함수를 적용함으로써(12), 점 P의 좌표 X,Y를 획득하는 단계(13);
다음 방정식을 만족하는 A의 오일러 함수(Euller function)
Figure pct00005
:
Figure pct00006
상기 함수는 a1, a2, a3, a4 및 a6 그리고 A 내의 상기 파라미터에서 유리분수(a rational fraction)에 의해 표현되는 가역 함수(invertible function) 및 확정적 함수(deterministic function)이고, 점 P 중 적어도 하나의 값 q/4I 를 획득하고, I는 유한 필드 Fq에 대하여 1과 동일한 I값을 가지고;
/c/ 암호화(cryptographic encryption) 또는 해쉬(hash) 또는 서명(signature) 또는 인증(authentication) 또는 인식 어플리케이션(identification application)에서 상기 점 P를 이용하는 단계;를 포함한다.
주어진 개수(a given number of)의 점들을 획득한다'라는 것은 출력(output)에 적어도 상기 주어진 개수의 서로 다른 점들을 제공하기 위해 고려된 함수가 적용된다는 사실을 의미한다.
높은 수준의 효율적 구현을 유지하는 동안 잠재적인 침입자(potential attacker)에 정보를 제공하지 않고, 이들 규정들(provisions)에 의하여, 전자적 구성요소(electronic component)에서, 타원 곡선상의 점들에 기초하여 암호 계산을 실행하는 것이 가능하다. 실제로, 상기 타원 곡선상의 점을 획득하도록 하는 함수는 유리 분수(a rational fraction)이고, 따라서, 그것(타원 곡선상의 점을 획득하는 것)은 개연적 함수(probabilistic function)라기 보다는 확정적 함수(determinisric function)이다; 입력 파라미터가 무엇이든지 간에 그것(타원 곡선상의 점을 획득하는 것)을 계산하는데 소요되는 시간은 상수(constant)이다. 이러한 조건들 하에서, 타원 곡선상의 점들을 획득하는 것은 종래의 기술들과는 달리 효율적이고, 그 계산 시간은 더 이상 암호화되는 메시지에 의존하지 않는다.
환 A(the ring A)는 RSA(for 'Rivest Shamir Adleman')일 수 있다. 이 경우, 이러한 환(ring)은 Z/qZ로 표기될 수 있으며, q는 두 소수들의 곱과 같으며, 그 곱
Figure pct00007
는 계산하기 힘들다.
환(ring) A에 대한 오일러 함수
Figure pct00008
는 상기 환(ring) A에서 가역 요소들의 수(the number)를 제공하는 함수이다. 여기서 A는 유한 필드(finite filed) Fq이고,
Figure pct00009
의 관계에 있다.
모듈러 정수 환(a ring of the modular integers) Z/qZ 을 고려할 때, 아래의 수학식을 가진다. 여기서 q는 3보다 명백히(strictly) 큰 서로 다른 소수들(prime numbers) 중 어느 하나의 수(number) I의 양의 정수배이고, I는 2보다 크거나 같은 정수이다.
Figure pct00010
여기서, 1cm은 최소 공배수를 의미하고,
상기 Pi는 소수 I이다.
본 발명의 일 실시예에 따른 확정적 함수(deterministic function)는 유리분수(a rational fraction)로 표현되고, 어떤 메시지 또는 데이터든지 간에 그들의 응용이 적용되는 것에 항상 동일한 시간이 소모된다.
실제, 집합 A에서, 거듭제곱 3 및 거듭제곱 1/3을 하는 함수는 전단사(bijective) 함수이다. 결론적으로, 그들은 유리 분수 형태로 표현될 수 있으며, 그러므로, 확정적 함수(deterministic function) f는 유리 분수의 형태로 표현될 수 있다. 집합 A(set A)에서 거듭 제곱 1/3의 계산은 거듭 제곱
Figure pct00011
의 계산과 동일하다.
Figure pct00012
이므로, 후자(latter)는 정수이다. 다음 방정식은 A에서 만족된다.
Figure pct00013
이 방정식으로부터 다음 방정식이 유도된다:
Figure pct00014
결론적으로, 다음과 같이 표현할 수 있다.
Figure pct00015
현재, 타원 곡선의 점 P를 획득할 수 있는 함수 f 는 1/3 거듭 제곱을 포함한다.
그리하여, 1/3 거듭 제곱을 위한 함수가 A의 어떤 구성 요소들에 대해서도 동일한 시간에 계산된다는 사실에 의하여, 개연성(probabilities)을 조절할 필요 없이 타원 곡선의 점들을 획득할 수 있다. 결론적으로, 종래 기술에서 수행된 것과 달리, 암호 계산을 위한 실행 시간은 상기 계산이 수행되는 메시지에 의존하지 않는다.
더욱이, 상기 A가 유한 필드(finite filed) Fq에 대응되는 맥락에서, 확정적 함수(deterministic function) f는 상기 타원 곡선의 적어도 q/4 점들 P를 제공할 수 있다. 상기 A가 모듈러 정수 환(a ring of the modular integers) Z/qZ 에 대응되는 맥락에서, 확정적 함수(deterministic function)는 상기 타원 곡선의 적어도 q/4I점들을 제공할 수 있다. 여기서, 상기 q는 3보다 명백히(strictly) 큰 서로 다른 소수들(prime numbers) 중 어느 하나의 수(number) I의 양의 정수배이고, I는 2보다 크거나 같은 정수이다.
확정적 방법(deterministic manner)으로 타원 곡선상의 많은 점들은 잠재적 침입들에 대하여 높은 수준의 보안을 갖는 다수의 암호 응용들을 가능하게 한다.
본 발명의 일 실시예에 의하면, 사용된 상기 타원 곡선은 "Weierstrass" 타입 또는 특징 p의 곡선으로 불리는 곡선이다. 여기서, q는 2n과는 다르다.
방정식 (1)은 아래와 같이 표현될 수 있다.
Figure pct00016
, 여기서, a=a2, b=a6 이다.
상기 확정적 함수(deterministic function)는 아래의 각 방정식에 따른 타원 곡선상의 점의 좌표를 제공한다:
Figure pct00017
(4) 및
Figure pct00018
(5)
여기서 u는 단계 /a/ 에서 결정된 파라미터이고,
v=(3a-u4)/(6u)이다.
다른 실시예에서, 본 발명은 지표(charateristics)가 2인 타원 곡선에 적용될 수 있다.
이 경우, q는 다음 방정식을 만족한다:
q=2n;
상기 n은 홀수(odd integer)이고,
방정식 (1)은 다음과 같이 기재되고:
Figure pct00019
, 여기서, a=a2 이고 b=a6 이고;
상기 확정적 함수(deterministic function)는 다음 각 방정식들에 따른 타원 곡선상의 점의 좌표를 제공한다;
Figure pct00020
(16)
Figure pct00021
여기서, u는 단계 /a/에서 결정된 파라미터이고, w=a+u2+u 이다.
유리한 특정 케이스에서, n은 소수이고 홀수(odd integer)이다. 실제로, 이와 같은 n은 특정 공격을 제한할 수 있다.
이러한 맥락에서, 확정적 함수(deterministic function)는 타원 곡선의 적어도 2n-2의 점들을 제공한다.
이러한 함수를 Koblitz 타입의 타원 곡선, b가 1과 동일하고, a가 F2에 속하는 지표(characteristics) 2의 타원 곡선의 특정 케이스에 적용할 수 있다. 실제로, Koblitz 타원 곡선들을 이용함으로써, 보다 빠른 방식으로 암호 계산을 구현할 수 있다.
이러한 확정적 함수(deterministic function)를 해쉬 함수(hash function)의 결과에 적용할 수 있다. 그리하여, 단계 /a/에서, 상기 파라미터 u는 해쉬 함수(hash function) h를 적용하여 획득될 수 있다.
일 실시예에서, 상기 해쉬 함수는 단 방향(one way) 함수이다. 이러한 특징은 유지된다: 확정적 함수(deterministic function)와 해쉬 함수(hash function)를 조합하여 생성되는 함수는 단 방향(one way) 특성을 보여준다.
여기서, 해쉬 함수와 같은 단 방향(one way)의 타원 곡선에 대한 함수가 궁극적으로 획득된다. 이러한 함수는 더욱이 충돌(collisions)에 강인하다.
이러한 확정적 함수(deterministic function)는 타원 곡선에 적용될 수 있는 랜덤 함수와 차별화되지 않는(또는 차별점이 없는 특성) 특성을 보여주는 방식으로 적용될 수 있다. 이러한 특성은 특히, 이러한 함수가 해쉬 함수들이 랜덤한 것으로 추정되는 모델에서 안전한 것으로 입증되는 암호 스키마에 적용될 때 특히, 이점을 나타낸다. 실제로, 상기 확정적 함수(deterministic function)는 랜덤 함수와 차별화되지 않는 특성을 보여주기 때문에, 안전한 암호 방식(scheme)은 암호 방식의 이러한 동일한 타입에서 이러한 기능을 적용함으로써 획득된다.
단계 /a/에서, 상기 파라미터 u는, 제1 해쉬 함수 h 및 제2 해시 함수 h'을 적용함으로써 획득될 수 있다. 타원 곡선의 점들 중 일 그룹의 형성자(generator)가 G로 지정된다.
상기 암호 계산은 다음의 함수의 응용을 포함하고,
f(h)+h'·G
여기서 f는 확정적 함수(deterministic function)이고, G는 상기 타원 곡선 상의 점들 중 일 그룹의 생성자(generator)이다.
상기 타원 곡선의 점들 중 이러한 그룹은 본 발명의 일 실시예에 따른 암호 계산에 의해 이용되는 점들에 대응될 수 있다.
적어도 하나의 패스워드에 의해 본 발명의 첫 번째 양상에 따른 암호 계산 실행 방법을 구현하는 본 발명의 두 번째 양상은, 상기 단계 /a/에서, 상기 파라미터는 패스워드의 함수로서 결정되고, 상기 패스워드는 상기 파라미터에 포함되어 있으며, 인증 단계가 상기 점 P에 기초하여 수행된다.
본 발명의 세 번째 양상은 커플링 연산(coupling operation)을 허용하는 타원 곡선에서 보네-프랭클린(Boneh-Franklin) 아이덴터티(idendity)에 기초하여 데이터를 암호화하는 방법을 제안한다.
상기 아이덴터티는 엔터티를 확인하는 수치값이고,
상기 방법은 다음 단계들을 포함한다:
/a/ 청구항 6에서의 암호 계산 방법을 상기 아이덴터티에 적용함으로써 점(point)를 획득하는 단계;
/b/ 상기 점(point), 랜덤 파라미터(random parameter) 및 상기 데이터를 조합(combining)함으로써, 암호화된 데이터를 획득하는 단계.
여기서, "조합한다(combine)"라는 용어는 상기 커플링(coupling), 해쉬 기능들(hash operations), "배타적 논리합(exclusive or)" 기능 및 스칼라 곱(scalar multiplication)의 조합을 적용하는 사실을 의미한다.
본 발명의 네 번째 양상은 다음 방정식을 만족하는 타원 곡선상의 점 P를 획득하는 단계를 포함하는 전자적 구성요소(electronic component)에서 암호 계산 방법을 제안한다.
Figure pct00022
상기 a1, a2, a3, a4 및 a6는 집합 A의 구성요소들이다.
상기 A는 모듈러 정수 환(a ring of the modular integers) Z/qZ 이고 상기 q는 3보다 명백히(strictly) 큰 서로 다른 소수들(prime numbers) 중 어느 하나의 수(number) I의 양의 정수배이고, I는 2보다 크거나 같은 정수이다.
또는 A는 소수(prime integer)의 q 제곱승을 갖는 유한 필드(finite filed) Fq이다.
상기 X 및 Y는 점 P의 좌표이고, A의 구성요소들이다.
상기 방법들은 다음 단계들을 포함한다.
/a/ 타원 곡선상의 좌표 X 및 Y를 갖는 점 P를 결정하는 단계와,
/b/ 함수를 상기 점 P에 적용함으로써 파라미터를 획득하는 단계와,
다음 방정식을 만족하는 A의 오일러 함수(Euller function)
Figure pct00023
:
Figure pct00024
상기 함수는 a1, a2, a3, a4 및 a6 그리고 A 내의 상기 파라미터에서 유리분수(a rational fraction)에 의해 표현되는 가역 함수(invertible function) 및 확정적 함수(deterministic function)의 역함수이고, 점 P 중 적어도 하나의 수(number) q/4I 를 획득하고, I는 유한 필드 Fq에 대하여 1과 동일한 I값을 가진다;
/c/ 암호화(cryptographic encryption) 또는 해쉬(hash) 또는 서명(signature) 또는 인증(authentication) 또는 인식 어플리케이션(identification application)에서 상기 파라미터(parameter)를 이용하는 단계;를 포함한다.
여기서, 본 발명의 첫 번째 양상에서 기술된 확정적 함수(deterministic function)는 가역 함수(invertible function)이다. 따라서, 본 발명의 첫 번째 양상에서 만들어지는 사용의 역 방향(reverse direction)으로 사용되는 경우 유리할 수 있다.
실제로, 타원 곡선의 점들로부터 시작하는 암호화 도메인에서 상기 첫 번째 양상에서 언급된 함수의 역 함수를 통해 그들에 대응되는 파라미터를 획득하는 것은 특히, 데이터 압축 응용을 위해 유용하다.
그리하여, 본 발명의 다섯 번째 양상은 데이터를 다음 방정식을 만족하는 타원 곡선상의 점 P의 좌표에 해당하는 각각의 데이터 쌍 X 및 Y으로 압축하는 데이터 압축 방법을 제안한다.
Figure pct00025
상기 a1, a2, a3, a4 및 a6는 집합 A의 구성요소들이다.
상기 A는 모듈러 정수 환(a ring of the modular integers) Z/qZ 이고 상기 q는 3보다 명백히(strictly) 큰 서로 다른 소수들(prime numbers) 중 어느 하나의 수(number) I의 양의 정수배이고, I는 2보다 크거나 같은 정수이다.
또는 A는 소수(prime integer)의 q 제곱승을 갖는 유한 필드(finite filed) Fq이다;
상기 X 및 Y는 점 P의 좌표 및 A의 구성요소들이고,
청구항 9에 청구된 암호 계산 방법 중 단계 /a/ 내지 /c/가 상기 데이터 쌍들(pairs of data) 각각에 적용되고,
상기 데이터 쌍들은 단계 /c/에서 각각 획득된 상기 파라미터들에 의해 표현된다.
본 발명의 여섯 번째 양상은, 본 발명의 첫 번째 양상에 따른 암호 계산 방법의 구현을 위해 채택된 수단들을 포함하는 전자 기기를 제안한다.
본 발명의 일곱 번째 양상은 본 발명의 네 번째 양상에 따른 암호 계산 방법의 구현을 위해 채택된 수단들을 포함하는 전자 기기를 제안한다.
본 발명의 여덟 번째 양상은 본 발명의 여섯 번째 또는 일곱 번째 양상에 따른 전자 기기를 포함하는 칩 카드(chip card)를 제안한다.
다른 양상들, 본 발명의 목적 및 효과들은 그것의 실시예들 중 어느 하나의 설명들에 의해 명백해질 것이다.
본 발명은 본 발명의 일 실시예에 따른 암호 계산의 주요 단계들을 설명하는 도 1을 참조하여 보다 잘 이해될 것이다.
A에 대하여 임의의 타원 곡선은 다음 방정식을 만족한다:
Figure pct00026
상기 a1, a2, a3, a4 및 a6는 집합 A의 구성요소들이고,
상기 X 및 Y는 점 P의 좌표이고, 상기 집합 A의 구성요소들이다.
만약 다음 방정식이 만족된다면;
Figure pct00027
여기서,
Figure pct00028
는 A에 적용된 오일러 함수(Euller function)이고, 거듭제곱 3 을 위한 상기 함수, 거듭제곱 1/3을 위한 상기 함수는 계산되는 값들이 무엇인지 상관없이 고정된 시간(constant time)에 효율적으로 계산될 수 있는 함수들이다. 이러한 특징으로 인해, 파라미터의 함수로서 타원 곡선의 점 P의 확정된 방법에서 획득할 수 있다.
파라미터의 함수로서 타원 곡선의 점 P를 확정된 방법(determined manner)으로 획득할 수 있고, 상기 계산 시간은 이러한 확정적 함수(deterministic function) f 가 적용되는 상기 파라미터와는 독립적이다.
함수 f는 또한 타원 곡선 방정식의 타입에 따라 부수적으로 Fa ,b 또는 Fa를 지정한다.
도 1을 참조하면, 단계 11에서, 파라미터 u의 결정, 유한 필드(finite filed) Fq의 구성이 고려된다. 그 다음으로, 단계 12에서, 확정적 방법으로 타원 곡선의 점 P를 획득하기 위해 확정적 함수(deterministic function) f 상기 파라미터에 적용된다. 이러한 모든 단계들은 환(ring) A에서 수행되며, 방정식(2)를 만족한다.
다음 섹션들은 타원 곡선 방정식들의 특별 케이스에서 이러한 특징들의 응용을 나타낸다. 본 발명의 일 실시예는 "Weierstrass" 타입의 타원 곡선에 적용될 수 있다. 즉, p〉3인 지표(chracteristic) P 및 지표(chracteristic) 2를 가지는 타원 곡선이다.
다음 섹션들에서는, 고려되는 상기 타원 곡선이 필드(field) Fq에 대한 "Weierstrass" 타입에 관한 것이다.
이러한 맥락에서, 유한 갈로이스(Galois) 분야(finite Galois filed)의 기수(cardinal) q는 값 2 및 3과 다른 소수(prime number) p에 대해서 pn과 동일하다. 방정식(1)은 다음 "Weierstrass" 방정식에 따라 표현될 수 있다.
Figure pct00029
(3)
여기서, a 및 b는 Ea ,b를 표시하는 타원 곡선의 파라미터들이다.
구성요소들의 수 q를 포함하는 유한 필드 A=Fq 에서, q는 방정식 (2)를 만족하고, 거듭 제곱 3을 위한 함수 f와 거듭 제곱 1/3을 위한 함수는 계산되는 값들이 무엇인지에 상관없이 고정된 시간(constant time)에 효율적으로 계산될 수 있는 전단사(bijections, 일대일) 관계에 있다.
이러한 조건 하에서, 상기 타원 곡선의 점P의 좌표 X 및 Y는 다음 각각의 방정식들을 만족한다:
Figure pct00030
(4)
Figure pct00031
(5)
v=(3a-u4)/(6u) (6)
상기 u는 본 발명의 일 실시예에 따른 파라미터이고, u는, 유한 필드(finite filed) Fq *에 속한다.
유한 필드(finite filed) Fq에서, 거듭 제곱
Figure pct00032
은 거듭 제곱 1/3에 대응된다.
이에 따라, 암호 계산의 구현을 위해 사용된 상기 타원 곡선은 "Weierstrass" 타입이며, 방정식 (4) 및 (5)에 따라, 파라미터 u에 관해 고정된 계산 시간을 갖는 확정적 방법(deterministic manner)으로 파라미터 u의 함수로서 상기 타원 곡선의 점들 P를 획득하는데 유리하다.
방정식(4) 및 (5)를 만족하는 좌표(coordinates)를 갖는 점 P는 방정식 (3)에 따른 상기 타원 곡선의 특정 점에 대응한다.
상기 타원 곡선을 갖는 방정식 (4)에 따라 직선(straight line)과 방정식 (5)에 따른 직선(straight line), 방정식(3)에 따른 타원 곡선의 교차점(intersection)은 다음 방정식 시스템을 만족한다.
Figure pct00033
및 (7)
Figure pct00034
(5)
상기 방정식 시스템은 다음과 같이 표현될 수 있다:
Figure pct00035
및 (8)
Figure pct00036
(6)
후자(latter) 방정식들은 다음과 같이 보다 간편화될 수 있다.
Figure pct00037
및 (9)
Figure pct00038
(6)
그리하여, 상기 방정식 시스템은 최종적으로 아래와 같이 표현될 수 있다:
Figure pct00039
및 (10)
Figure pct00040
(6)
방정식(4)에 대응하는 방정식(10)은 P가 고려된 상기 타원곡선의 점이라는 것으로부터 도출된다.
결론적으로, 방정식 (4) 및 (5)를 만족하는 좌표 X 및 Y를 가지는 점 P는 방정식 (3)에 따른 타원 곡선의 점이다.
이하에서, 다음과 같이 표시한다.
- Fq * 의 구성을 방정식 타원 곡선(3)의 점에 매핑하는 함수 fa ,b
0은 함수 fa , b 의 입력이 되지 못한다. 그렇지 않으면, 0으로 나누어지는 일이 발생한다. 그럼에도 불구하고, 타원 곡선의 점들의 그룹 중 항등원(neutral element) 함수 fa ,b 에 의해 획득되지 않기 때문에, 함수 fa ,b 하에서 0을 상기 점 그룹(point group) 중 항등원(neutral element)에 대응되는 것으로 정의한다.
함수 fa ,b는 거듭제곱 3 또는 거듭제곱 1/3을 위한 함수가 유한 Galois 필드에서 전사적(bijective)일 때, 확정적 함수(deterministic function)이다.
이러한 조건하에서 함수 fa ,b를 적용하는 비용(cost)은 유한 필드(finite filed) Fq에서 거듭제곱의 증가(elevation to a power)에 거의 대응된다.
본 발명의 실시예에 따른 암호화 계산법에 의해 암호화된 메시지를 복호화 하기 위해, 상기 타원 곡선의 점 P를 획득할 수 있도록 하는 하나 또는 그 이상의 파라미터 값 u 를 결정하기 위한 규정이 만들어진다.
이러한 목적을 위해, 다음 섹션들은 함수 fa ,b의 역함수를 계산하는 방법을 개시한다.
u1 및 u2를 Fq * 의 두 구성요소로 가정하고, 각각은 다음 방정식의 해(solution)이다:
Figure pct00041
(11)
상기 a, x 및 y는 Fq의 구성요소들이다.
b는 다음 방정식을 만족하는 것으로 한다:
Figure pct00042
이러한 조건들 하에서, 다음 방정식이 만족된다:
Figure pct00043
(12)
실제로, 먼저, 좌표(x1,y1)을 가지는 점 P1의 모든 트리, 좌표(x2,y2)을 가지는 점 P2 및 좌표(x,y)를 갖는 점 P는 타원 곡선 Ea ,b의 점들이다.
더욱이, 방정식(11)에 따르면, 점 P 및 P1은 다음 방정식을 갖는 직선상에 위치하게 된다.
Figure pct00044
(13)
이상에서 설명한 바와 같이, q는 방정식(2)를 만족하기 때문에, 타원 곡선(3) 및 직선(13)은 단일 점(single point)에서 서로 교차한다. 그리하여, 점 P 및 P1은 특정 단일 점(single unique point)에 대응된다.
동일한 논리를 점 P 및 P2에 적용함으로써, P 및 P2가 단일 점(single point)에 대응되는 것이 쉽게 도출된다. 결론적으로, P, P1 및 P2는 타원 곡선의 동일한 점에 대응된다.
파라미터 u가 방정식(11)의 해(solution)인 경우 그리고 파라미터 u가 방정식(11)의 해(solution)인 경우에만, 파라미터 u는 다음과 같이 존재한다:
fa ,b(u)=(x,y)
따라서, 방정식(11)의 해를 구하는 것은 파라미터 u를 다음 방정식에 따른 타원 곡선의 점 P가 획득되는 함수로 결정하는 것이 가능하게 한다.
fa ,b(u)=P
방정식 (11)은 Berlekamp의 알고리즘과 같은 표준 알고리즘들에 의해 해결될 수 있다.[Shoup, Journal of Symbolic Computation Vol 20: p363-397,1995].
방정식 (11)에 의해, 상기 타원 곡선의 점 P에 대응되는 파라미터 u를 찾기 위한 fa ,b의 역함수를 쉽게 구할 수 있다.
이러한 특성들로 인해, fa ,b에 의해 획득되는 점들(points)의 수(the number)를 결정할 수 있다. Im(fa ,b) 은 함수 fa ,b의 일련의 상 점(image point)들로 정의한다. q는 Fq의 기수(cardinal)이므로, 이미지 세트 Im(fa ,b)는 q 보다 작은 기수(cardinal)를 갖는다. 더욱이, 방정식(11)은 각 이미지 포인트(image point)들에 대해서, 4개의 선행자(antecedents)의 최대값이 존재함을 알려줄 수 있다. 사실, Fq의 기수(cardinal)는 Im(fa ,b)의 기수의 4배와 거의 동일하다. 따라서, 다음의 부등식이 얻어진다.
q/4≤#Im(fa ,b)≤q
또한, Im(fa ,b)의 기수에 문제 해결을 돕는(heuristic) 결과를 줄 수 있다. 방정식 (11)은 유한 필드(finite filed) Fq에서 4차 방정식이다. 유한 필드(finite filed) Fq에서 임의의 4차 다항식은 근(root)을 가지지 않는 경우에 대해서 2/5의 확률이 있다. 따라서, 타원 곡선의 점들 중 3/5는 이미지 점(image point) Im(fa ,b)의 세트 안에 존재하고, 따라서, 본 발명의 실시예에 따른 암호 계산에 사용될 수 있다.
본 발명의 실시예에서, 환(ring) Z/qZ에 대한 타원 곡선을 이용할 수 있다. 여기서, q는 소수들(prime numbers) p1,p2…,pI. I의 곱이다. 수리 과학(congruence)의 해결 시스템을 다루는 모듈러 수리학의 결과인 "The Chinese remainder" 이론은, Z/qZ이 Z/p1Z × … ×Z/pIZ와 동일한 구조임을 주장한다. 따라서, 상기 Z/piZ 의 각각에 대한 타원 곡선을 연구하는 것과 동일하다. 현재, 각 Pi는 소수(prime number)이므로, Z/piZ 는 사실 Fpi일 수 있는 분야이다. 더욱이, 각 Pi는 3보다 명백히(strictly) 크고, Fpi에 대한 타원 곡선 방법식은 "Weierstrass" 타입이다.
이에 따라, 방정식(4) 및 (5)가 Fpi의 각각을 위해 개시되고, Fp1 × … × FpI = Z/qZ 또한 사실이다. 더욱이, Fpi의 각각에 대하여, 다음 식이 있다.
pi/4≤#Im(fa ,b)≤pi
이에 따라, Z/qZ에 대하여, 다음 식을 증명할 수 있다.
p1/4×…×pI/4=q/4I≤#Im(fa ,b)≤p1×…×pI=q
본 발명의 실시예에서, 다음 식을 만족하는 지표(characteristics) 2를 갖는 타원 곡선을 이용할 수 있다.
Figure pct00045
(15)
여기서, a 및 b는 finite Galois Field 의 구성요소들이다.
n은 가능한 침입들(attacks)을 제한하기 위하여 홀의 소수(odd prime number)일 수 있다.
여기서, 아래의 값을 가질 수 있다.
2n mod 3 = 2
거듭제곱 2를 위한 함수, 및 거듭제곱 1/3을 위한 함수는
finite Galois field에 적용되는 값이 무엇이든지 간에 고정된 시간(constant time)에 계산 가능한 전사적이다(bijection).
다음 방정식을 만족하는
Figure pct00047
의 구성요소들인 u 및 w 파라미터를 표시한다:
w=a+a2+u
다음 방정식 각각을 만족하는 좌표 X 및 Y를 갖는 점 P는 타원 곡선 (15) 상에 존재한다:
Figure pct00048
(16)
Figure pct00049
(16')
이 경우, 암호 계산을 구현하기 위해 사용되는 타원 곡선은 지표(characteristics)가 2이고, 확정적 방법(deterministic manner)에서, 방정식(16) 및 (16')에 따라 파라미터 u의 함수로서 타원 곡선의 점 P를 획득할 수 있다.
실제로, 방정식(16) 및 (16')을 만족하는 좌표를 가지는 점 P는 방정식(15)에 따른 타원 곡선의 특정 점에 대응한다. 방정식(16')에 따른 직선과 타원 곡선 (15)의 교차점(intersection)은 다음 방정식 시스템을 만족한다.
Figure pct00050
및 (15)
Figure pct00051
(16')
이 방정식은 다음과 같이 표현될 수 있다.
Figure pct00052
및 (17)
Figure pct00053
(16')
이에 따라, 이러한 방정식 시스템은 궁극적으로 다음과 같이 표현될 수 있다.
Figure pct00054
및 (19)
Figure pct00055
(16')
방정식(16)에 대응되는 방정식(19)는, P가 고려된 타원 곡선의 점(point)이라는 사항으로부터 도출된다.
결론적으로, 방정식 (16) 및 (16')을 만족하는 좌표 X 및 Y를 가지는 점 P는방정식 (15)에 따른 타원 곡선의 점이다.
"Weierstrass" 타입의 타원 곡선의 경우, fa의 상(image) Im(fa)에 포함되어 있는 점들의 개수(the number)를 한정하는(bound) 것이 가능하다. 이것은 starting set
Figure pct00056
의 구성요소들의 개수이기 때문에 이러한 집합 Im(fa)은 최대 2n 개의 구성요소들을 포함한다.
방정식(16')은 다음과 같이 표현될 수 있다.
Figure pct00057
(17)
상기 방정식을 해결하는 u값에 대하여, 다음과 같이 표현된다.
Fa(u)=(x,y)
방정식 (17)은 4차 식이다. 결론적으로, 적어도 4개의 서로 다른 파라미터 u 값은 상기 방정식의 근이 된다. 이에 따라, fa의 2n/4=2n-2 개의 상 포인트(image point)가 존재한다. 따라서, 상 포인트(image point) Im(fa)의 집합에는 적어도 2n-2개의 구성요소들이 존재한다.
본 발명의 상기 특징에 의하여, 확정적 함수(deterministic function) f가 이용가능하고, 고려되는 타원 곡선들의 종류(type)에 따라서 fa ,b 또는 fa 가 정해지며, 그것의 상 집합(image set)은 타원 곡선 상의 점들의 집합이고, "Weierstrass" 타입의 타원 곡선들의 경우 개수 q(cardinal of the finite field considered)의 1/4과 최소한 동일하기 때문에, 또는 지표(chracteristics)가 2인 타원 곡선에서는 적어도 2n-2와 동일하다.
상기 확정적 함수(deterministic function) f는 그것이 적용되는 finite Galois field에서 거듭제곱 3(및 거듭제곱 1/3)의 함수의 전사적(bijective) 특징에 기초한다.
본 발명의 일 실시예에 따른 확정적 함수(deterministic function)는 타원 곡선에 대하여 해쉬 함수의 구현을 위해 사용된다.
본 발명의 일 실시예에 따른 함수 fa , b 를 해쉬 함수(hash function) h로부터 나오는 비트 스트링(bit string)에 적용함으로써, 해쉬 함수(hash function)가 다음과 같이 획득된다:
fa ,b(h) (18)
타원 곡선에 대한 상기 함수(18)은 다음 특징을 나타낸다.
- 해쉬 함수 h는 단 방향(one-way)이다.
- 충돌(collisions)에 강인(resistant)하다.
이와 같은 함구는 다양한 암호 계산에 있어서 응용될 수 있다.
타원 곡선에 적용된 랜덤 함수와 차별점이 없는 타원 곡선에 대한 해쉬 함수를 얻기 위해, 본 발명의 일 실시예에 따른 함수 fa ,b와 두 해쉬 함수들(hash functions)을 조합(combine)하는 규정(provision)이 만들어질 수 있다.
두 랜덤 해쉬 함수 h 및 h'를 고려한다. 상기 해쉬 함수 h는 A를 향해 집합{0,1}*에 적용된다. 상기 함수 h'은 유한 필드(finite filed) FN 를 향해 집합{0,1}*에 적용되고, 상기 N이 사용된 곡선상의 점들의 그룹의 순서이다.
이와 같은 조건 하에, 다음 함수는 타원 곡선에 대한 린덤 함수와 차별화되지 않는 타원 곡선에 대한 해쉬 함수(hash function)이다:
f(h)+h'·G (19)
본 발명의 일 실시예에 따른 함수 fa ,b는 타원 곡선상의 점을 결정하는데 이용된다. G, 상기 타원 곡선 상의 점들 중 일 그룹을 생성하는 포인트, 즉, 본 발명의 구현을 위한 맥락에서 fa ,b의 상 포인트(image points)는 결정된 점(point)들에 대한 균일한 분포(uniform distribution)를 보장(guarantee)하는데 이용된다.
본 발명은 타원 곡선들을 이용하는 암호 계산의 타입에서 구현될 수 있다. 특히, PACE(Password Authentication Connection Establishment)와 같은 패스워드 기반의 인증 프로토콜에 유리하다.
이 경우, 방정식 (18)을 이용하여, 암호 계산의 수행 시간과 관련한 어떠한 침입(attack)도 허용하지 않으면서 구현 가능하다.
본 발명은 전자 신원 문서(electronic identity documents), 전자 여권(electronic passport)과 같이 개인 사생활 보호(privacy)에 관련된 프로토콜의 맥락에서 유리하게 적용될 수 있다.
그러한 프로토콜들에 집중함으로써,
http://www.larc.usp.br/~pbarreto/tales1.html에서 이용 가능한 'Why public elliptic curve parameters area public' 문서에 기술된 바와 같이 사용된 타원곡선들의 파라미터들을 결정할 수 있다.
현재, 이러한 파라미터들은 이러한 전자 문서들을 소유하고 있는 사람들의 국적(nationality)을 결정할 수 있다.
방정식(19)를 이용함으로써, 타원 곡선의 공개적인 파라미터(public parameters)들에 독립적인 점들의 표시를 획득할 수 있다. 상기 방정식(19)는 랜덤 함수(random function) 차별화되지 않는(non-differentiable) 방법으로 적용될 수 있다.
본 발명은 또한 ID 기반의 암호화 방식(identity-based encryption schemes)의 맥락에서 유용하게 적용될 수 있다.
보네-프랭클린(Boneh-Franklin) 암호화 방식은(Dan Bon도 and Matthew K. Franklin, Proceedings of the Crypto 2001 conference) 그러한 구성을 이용하는 예이다. 실제로, 보안 조건(secure condition) 하에서 사용될 수 있도록 하기 위해서는, 이러한 방식은 랜덤 함수가 존재하는 타원 곡선을 필요로 한다. 본 발명은 전통적인 랜덤 함수에 기초하여 타원 곡선에 대한 랜덤 함수를 반환하는 구성을 제공할 수 있다.
그럼에도 불구하고, 보네-프랭클린(Boneh-Franklin)에 따른 암호화에 적절한 타원 곡선들은 특정 함수를 필요로 한다: 점 커플링 함수(point coupling function). 커플링 함수(coupling function)는 유한 필드(finite field)에 대한 값을 입력 및 출력함으로써, 두 점들을 취하는(take) 함수
Figure pct00058
이다. 이러한 커플링은 수하적으로 주목할 만한 특징을 가지기 때문에 흥미롭다. 다음 방정식이 만족된다:
Figure pct00059
상기 g는 매핑된 유한 필드의 생성자이고;
상기 c 및d 는 base G에 대한 cG 및 dG의 구체적인 알고리즘이고; 및
상기 G는 상기 타원 곡선상의 점들 중 일 그룹의 생성자이다.
보네-프랭클린(Boneh-Franklin) 방식의 저자(authors)들은 그들 방식에 대한 타원 곡선의 단일 형태만을 제안했다. 본 발명은 그들의 암호 방식이 구현될 타원 곡선들의 개수를 증가시킬 수 있다.
실제로, 본 발명의 규정에 의하여, 이와 같은 암호 방식은 커플링(coupling)이 효율적으로 계산되고, 방정식(2)가 만족되는 모든 곡선들에 대하여 구현될 수 있다.
본 발명의 실시예에 의하면, 점들의 좌표를 유리하게 압축할 수 있다. 실제로, 본 발명의 규정들은 파라미터 u 에 의해 점 P의 좌표 X 및 Y를 나타낼 수 있다. 결론적으로, 파라미터 u는 많은 정보를 갖는 점 P(X,Y)를 나타내기 때문에 압축을 수행하는데 파라미터 u를 사용할 수 있다.
본 발명에 의한 암호 계산 방법은 소프트웨어를 통해 실행될 수 있다. 소프트웨어로 실행될 때, 본 발명의 구성 수단들은 필요한 작업을 실행하는 코드 세그먼트들이다. 프로그램 또는 코드 세그먼트들은 프로세서 판독 가능 매체에 저장되거나 전송 매체 또는 통신망에서 반송파와 결합된 컴퓨터 데이터 신호에 의하여 전송될 수 있다.
컴퓨터가 읽을 수 있는 기록매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록 장치를 포함한다. 컴퓨터가 읽을 수 있는 기록 장치의 예로는, ROM, RAM, CD-ROM, DVD±ROM, DVD-RAM, 자기 테이프, 플로피 디스크, 하드 디스크(hard disk), 광데이터 저장장치 등이 있다. 또한 컴퓨터가 읽을 수 있는 기록매체는 네트워크로 연결된 컴퓨터 장치에 분산되어 분산방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수 있다.
이상에서 설명한 본 발명은, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에 있어 본 발명의 기술적 사상을 벗어나지 않는 범위 내에서 여러 가지 치환, 변형 및 변경이 가능하므로 전술한 실시예 및 첨부된 도면에 의해 한정되는 것이 아니다. 또한 본 문서에서 설명된 실시예들은 한정되게 적용될 수 있는 것이 아니라, 다양한 변형이 이루어질 수 있도록 각 실시예들의 전부 또는 일부가 선택적으로 조합되어 구성될 수도 있다.

Claims (12)

  1. 다음 방정식을 만족하는 타원 곡선상의 점 P를 획득하는 단계를 포함하는 전자적 구성요소에서 암호 계산 방법에 있어서:
    Figure pct00060

    상기 a1, a2, a3, a4 및 a6는 집합 A의 구성요소들이고,
    A는 모듈러 정수 환(a ring of the modular integers) Z/qZ 이고 상기 q는 3보다 명백히(strictly) 큰 서로 다른 소수들(prime numbers) 중 어느 하나의 수(number) I의 양의 정수배이고, I는 2보다 크거나 같은 정수이고, 또는 A는 소수(prime integer)의 q 제곱승을 갖는 유한 필드(finite filed) Fq이고;
    상기 X 및 Y는 점 P의 좌표이고, A의 구성요소들이고,
    다음 단계들을 포함하는 상기 방법;
    /a/ 파라미터를 결정하는 단계(11);
    /b/ 상기 파라미터에 함수를 적용함으로써(12), 점 P의 좌표 X,Y를 획득하는 단계(13);
    다음 방정식을 만족하는 A의 오일러 함수(Euller function)
    Figure pct00061
    :
    Figure pct00062

    상기 함수는 a1, a2, a3, a4 및 a6 그리고 A 내의 상기 파라미터에서 유리분수(a rational fraction)에 의해 표현되는 가역함수(invertible function) 및 확정적 함수(deterministic function)이고,
    점 P 중 적어도 하나의 값 q/4I 를 획득하고, I는 유한 필드 Fq에 대하여 1과 동일한 I값을 가지고;
    /c/ 암호화(cryptographic encryption) 또는 해쉬(hash) 또는 서명(signature) 인증(authentication) 또는 인식 어플리케이션(identification application)에서 상기 점 P를 이용하는 단계;
    를 포함하는 암호 계산 방법.
  2. 제 1 항에 있어서,
    상기 A는 F2n과 서로 다르고,
    방정식 (1)은 아래와 같이 기술되고,
    Figure pct00063
    , 여기서, a=a2, b=a6이고;
    상기 확정적 함수(deterministic function)는 아래의 각 방정식에 따른 타원 곡선 상의 점의 좌표를 제공하고;
    Figure pct00064

    Figure pct00065

    여기서 u는 단계 /a/ 에서 결정된 파라미터이고, v=(3a-u4)/(6u)인 것을 특징으로 하는 암호 계산 방법.
  3. 제 1 항에 있어서,
    상기 q는 다음 방정식을 만족하고:
    q=2n;
    상기 n은 홀수(odd integer)이고,
    방정식 (1)은 다음과 같이 기재되고:
    Figure pct00066

    여기서, a=a2 이고 b=a6;
    상기 확정적 함수(deterministic function)는 다음 각 방정식들에 따른 타원 곡선 상의 점의 좌표를 제공하고;
    Figure pct00067

    Figure pct00068

    여기서, u는 단계 /a/에서 결정된 파라미터이고, w=a+u2+u 인 것을 특징으로 하는 암호 계산 방법.
  4. 제 1 항 내지 제 3 항 중 어느 한 항에 있어서,
    단계 /a/에서, 상기 파라미터는 해쉬 함수(hash function)을 적용하여 획득되는 것을 특징으로 하는 암호 계산 방법.
  5. 제 4 항에 있어서,
    상기 해쉬 함수(hash function)는 단 방향(one way)인 것을 특징으로 하는 암호 계산 방법.
  6. 제 1 항 내지 제 5 항 중 어느 한 항에 있어서,
    단계 /a/에서, 상기 파라미터는 제1 해쉬 함수 h 및 제2 해시 함수 h'을 적용함으로써 획득되고,
    상기 암호 계산은 다음의 함수의 응용을 포함하고,
    f(h)+h'·G
    여기서 f는 확정적 함수(deterministic function)이고, G는 상기 타원 곡선 상의 점들 중 일 그룹의 생성자인 것을 특징으로 하는 암호 계산 방법.
  7. 제 1 항 내지 제 6 항 중 어느 한 항에서 정의되는 암호 계산 방법을 구현하는 적어도 하나의 패스워드에 의해 인증을 수행하는 방법으로서,
    상기 단계 /a/에서, 상기 파라미터는 패스워드의 함수로서 결정되고, 상기 패스워드는 상기 파라미터에 포함되어 있으며, 인증 단계가 상기 점 P에 기초하여 수행되는 것을 특징으로 하는 인증 방법.
  8. 커플링 연산(coupling operation)을 허용하는 타원 곡선에서 보네-프랭클린(Boneh-Franklin) 아이덴터티(idendity)에 기초하여 데이터를 암호화하는 방법에 있어서;
    상기 아이덴터티는 엔터티를 확인하는 수치값이고,
    /a/ 청구항 6에서의 암호 계산 방법을 상기 아이덴터티에 적용함으로써 점(point)를 획득하는 단계;
    /b/ 상기 점(point), 랜덤 파라미터 및 상기 데이터를 조합함으로써, 암호화된 데이터를 획득하는 단계;
    를 포함하는 데이터 암호화 방법.
  9. 다음 방정식을 만족하는 타원 곡선상의 점 P를 획득하는 단계를 포함하는 전자적 구성요소(electronic component)에서 암호 계산 방법에 있어서:
    Figure pct00069

    상기 a1, a2, a3, a4 및 a6는 집합 A의 구성요소들이고,
    A는 모듈러 정수 환(a ring of the modular integers) Z/qZ 이고 상기 q는 3보다 명백히(strictly) 큰 서로 다른 소수들(prime numbers) 중 어느 하나의 수(number) I의 양의 정수배이고, I는 2보다 크거나 같은 정수이고, 또는 A는 소수(prime integer)의 q 제곱승을 갖는 유한 필드(finite filed) Fq이고;
    상기 X 및 Y는 점 P의 좌표이고, A의 구성요소들이고,
    다음 단계들을 포함하는 상기 방법;
    /a/ 타원 곡선상의 좌표 X 및 Y를 갖는 점 P를 결정하는 단계;
    /b/ 함수를 상기 점 P에 적용함으로써 파라미터를 획득하는 단계;
    다음 방정식을 만족하는 A의 오일러 함수(Euller function)
    Figure pct00070
    :
    Figure pct00071

    상기 함수는 a1, a2, a3, a4 및 a6 그리고 A 내의 상기 파라미터에서 유리분수(a rational fraction)에 의해 표현되는 가역함수(invertible function) 및 확정적 함수(deterministic function)의 역함수이고, 점 P 중 적어도 하나의 수(number) q/4I 를 획득하고, I는 유한 필드 Fq에 대하여 1과 동일한 I값을 가지고;
    /c/ 암호화(cryptographic encryption) 또는 해쉬(hash) 또는 서명(signature) 또는 인증(authentication) 또는 인식 어플리케이션(identification application)에서 상기 파라미터(parameter)를 이용하는 단계;
    를 포함하는 암호 계산 방법.
  10. 데이터를 다음 방정식을 만족하는 타원 곡선상의 점 P의 좌표에 해당하는 각각의 데이터 쌍 X 및 Y으로 압축하는 데이터 압축 방법에 있어서:
    Figure pct00072

    상기 a1, a2, a3, a4 및 a6는 집합 A의 구성요소들이고,
    A는 모듈러 정수 환(a ring of the modular integers) Z/qZ 이고 상기 q는 3보다 명백히(strictly) 큰 서로 다른 소수들(prime numbers) 중 어느 하나의 수(number) I의 양의 정수배이고, I는 2보다 크거나 같은 정수이고, 또는 A는 소수(prime integer)의 q 제곱승을 갖는 유한 필드(finite filed) Fq이고;
    상기 X 및 Y는 점 P의 좌표 및 A의 구성요소들이고,
    청구항 9에 청구된 암호 계산 방법 중 단계 /a/ 내지 /c/가 상기 데이터 쌍들(pairs of data) 각각에 적용되고,
    상기 데이터 쌍들은 단계 /c/에서 각각 획득된 상기 파라미터들에 의해 표현되는 것을 특징으로 하는 데이터 압축 방법.
  11. 제 1 항 내지 제 6 항 중 어느 한 항에 있어서, 암호 계산의 실행 방법을 구현하기 위해 채택된 수단들을 포함하는 전자 기기.
  12. 제 9 항에 있어서, 암호 계산의 실행 방법을 구현하기 위해 채택된 수단들을 포함하는 전자 기기.
KR1020117016455A 2009-01-14 2010-01-08 타원 곡선상의 점의 부호화 KR101602361B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FR0950189A FR2941115B1 (fr) 2009-01-14 2009-01-14 Codage de points d'une courbe elliptique
FR0950189 2009-01-14

Publications (2)

Publication Number Publication Date
KR20110136787A true KR20110136787A (ko) 2011-12-21
KR101602361B1 KR101602361B1 (ko) 2016-03-10

Family

ID=40940526

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020117016455A KR101602361B1 (ko) 2009-01-14 2010-01-08 타원 곡선상의 점의 부호화

Country Status (10)

Country Link
US (1) US8666066B2 (ko)
EP (1) EP2377268B1 (ko)
JP (1) JP2012515489A (ko)
KR (1) KR101602361B1 (ko)
CN (1) CN102318264B (ko)
BR (1) BRPI1006832B1 (ko)
FR (1) FR2941115B1 (ko)
HK (1) HK1163957A1 (ko)
RU (1) RU2533693C2 (ko)
WO (1) WO2010081980A1 (ko)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8165287B2 (en) * 2008-12-30 2012-04-24 King Fahd University Of Petroleum & Minerals Cryptographic hash functions using elliptic polynomial cryptography
US8189771B2 (en) * 2009-01-12 2012-05-29 King Fahd University Of Petroleum & Minerals Hash functions with elliptic polynomial hopping
JP5268066B2 (ja) * 2009-01-16 2013-08-21 日本電信電話株式会社 変換演算装置、その方法、プログラム及び記録媒体
EP2222015A1 (en) * 2009-02-19 2010-08-25 Thomson Licensing Method and device for hashing onto points of an elliptic curve
US20100208884A1 (en) * 2009-02-19 2010-08-19 Thomson Licensing Method and device for hashing onto points of an elliptic curve
FR2947404B1 (fr) * 2009-06-30 2011-12-16 Sagem Securite Cryptographie par parametrisation sur une courbe elliptique
US8385541B2 (en) * 2010-02-18 2013-02-26 King Fahd University Of Petroleum And Minerals Method of performing elliptic polynomial cryptography with elliptic polynomial hopping
US10484173B2 (en) 2017-01-03 2019-11-19 Nxp B.V. X-only generic mapping function for PACE protocol

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1062764B1 (de) * 1998-02-18 2003-07-23 Infineon Technologies AG Verfahren und vorrichtung zur kryptographischen bearbeitung anhand einer elliptischen kurve auf einem rechner
FR2791496B1 (fr) * 1999-03-26 2001-10-19 Gemplus Card Int Procedes de contre-mesure dans un composant electronique mettant en oeuvre un algorithme de crytographie a cle publique de type courbe elliptique
TW548940B (en) * 1999-11-29 2003-08-21 Gen Instrument Corp Generation of a mathematically constrained key using a one-way function
JP4842276B2 (ja) * 2004-11-11 2011-12-21 サーティコム コーポレーション 楕円曲線上の新しいトラップドア1方向性関数と、その、より短い署名及び非対称暗号化への応用
RU2294559C1 (ru) * 2005-06-02 2007-02-27 Федеральное государственное научное учреждение Научно-исследовательский институт "СПЕЦВУЗАВТОМАТИКА" Устройство для генерации псевдослучайной последовательности двоичных чисел с использованием эллиптических кривых
DE602006006454D1 (de) * 2006-10-10 2009-06-04 Ntt Docomo Inc Verfahren und Vorrichtung zur Authentifizierung
EP2222015A1 (en) * 2009-02-19 2010-08-25 Thomson Licensing Method and device for hashing onto points of an elliptic curve

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
BARRETO PAULO S.L.M. 외 1인, IACR website, "Fast hashing onto elliptic curves over fields of characteristic 3" (2001.11.15. 공개) *

Also Published As

Publication number Publication date
FR2941115A1 (fr) 2010-07-16
KR101602361B1 (ko) 2016-03-10
EP2377268A1 (fr) 2011-10-19
RU2011134050A (ru) 2013-02-20
BRPI1006832B1 (pt) 2021-01-19
RU2533693C2 (ru) 2014-11-20
FR2941115B1 (fr) 2011-02-25
EP2377268B1 (fr) 2012-11-14
HK1163957A1 (en) 2012-11-09
CN102318264A (zh) 2012-01-11
JP2012515489A (ja) 2012-07-05
WO2010081980A1 (fr) 2010-07-22
BRPI1006832A2 (pt) 2016-04-12
US8666066B2 (en) 2014-03-04
US20110274269A1 (en) 2011-11-10
CN102318264B (zh) 2014-03-12

Similar Documents

Publication Publication Date Title
KR101602361B1 (ko) 타원 곡선상의 점의 부호화
JP5001176B2 (ja) 署名生成装置、署名生成方法及び署名生成プログラム
US7912216B2 (en) Elliptic curve cryptosystem optimization using two phase key generation
US8139765B2 (en) Elliptical polynomial-based message authentication code
US6898284B2 (en) Cryptographic identification and digital signature method using efficient elliptic curve
Singh et al. An ASCII value based text data encryption System
CN108111295A (zh) 一种基于类模运算的同态加密算法
US8509426B1 (en) XZ-elliptic curve cryptography system and method
Afolabi et al. Comparative analysis of some selected cryptographic algorithms
Guo et al. Pairing based elliptic curve encryption scheme with hybrid problems in smart house
Nithin et al. XBMRSA: A new XML encryption algorithm
Harjito et al. Comparative Analysis between Elgamal and NTRU Algorithms and their implementation of Digital Signature for Electronic Certificate
US20120140921A1 (en) Rsa-analogous xz-elliptic curve cryptography system and method
JP2019029751A (ja) 暗号処理装置、暗号化通信システム、暗号処理方法、および暗号処理プログラム
JP5355263B2 (ja) 鍵共有装置、鍵共有方法及びプログラム
TWI525466B (zh) 在一群組中的一元件上碎扯一串列隨意有限長度之方法和裝置
JP2011128281A (ja) 複数のナップザックを用いる公開鍵暗号方式による暗号システム、鍵生成装置、暗号化装置、復号装置、データ交換方法およびプログラム
Zhang et al. New construction of PVPKE scheme based on signed quadratic residues
Sharma et al. Intensified ElGamal Cryptosystem (IEC)
Murtaza Image Cryptosystems Using Elliptic Curve Cryptography
DAWAHDEH et al. A NEW MODIFIED GRAYSCALE IMAGE ENCRYPTION TECHNIQUE USING ELLIPTIC CURVE CRYPTOSYSTEM
Assoujaa et al. Pairing based cryptography New random point exchange key protocol
Salam et al. Algebraic Analysis of Shrinking Generator
Xu et al. Cryptanalysis of an improved MFE public key cryptosystem
Tai et al. Weak-keys in public key cryptosystems based on discrete logarithms

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant