KR101699893B1 - 타원 곡선의 점들로 해싱하기 위한 방법 및 디바이스 - Google Patents

타원 곡선의 점들로 해싱하기 위한 방법 및 디바이스 Download PDF

Info

Publication number
KR101699893B1
KR101699893B1 KR1020100011009A KR20100011009A KR101699893B1 KR 101699893 B1 KR101699893 B1 KR 101699893B1 KR 1020100011009 A KR1020100011009 A KR 1020100011009A KR 20100011009 A KR20100011009 A KR 20100011009A KR 101699893 B1 KR101699893 B1 KR 101699893B1
Authority
KR
South Korea
Prior art keywords
group
string
elements
hash value
hashing
Prior art date
Application number
KR1020100011009A
Other languages
English (en)
Other versions
KR20100094939A (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 KR20100094939A publication Critical patent/KR20100094939A/ko
Application granted granted Critical
Publication of KR101699893B1 publication Critical patent/KR101699893B1/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
    • H04L9/3236Cryptographic 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 using cryptographic hash functions
    • 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
    • H04L9/3073Public 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 involving pairings, e.g. identity based encryption [IBE], bilinear mappings or bilinear pairings, e.g. Weil or Tate pairing
    • 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
    • H04L9/3247Cryptographic 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 involving digital signatures

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Algebra (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Mathematical Physics (AREA)
  • Pure & Applied Mathematics (AREA)
  • Computing Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Computer Hardware Design (AREA)
  • Human Computer Interaction (AREA)
  • Complex Calculations (AREA)

Abstract

본 발명은 한 그룹의 요소들, 특히 타원 곡선의 점들로 해싱하는 것에 관한 것이다. 입력 메시지는, 예컨대 SHA-1과 MD5와 같은 "정규" 해싱 알고리즘을 통해 실행되고, 그룹의 요소와 곱해지는 스칼라 값으로서 사용된다. 그 결과는 또한 반드시 그 그룹의 요소이다. 장점은 해싱 알고리즘의 보안성이 기초가 되는 "정규" 해싱 알고리즘의 것과 동일하다는 점이다. 또한 장치가 제공된다.

Description

타원 곡선의 점들로 해싱하기 위한 방법 및 디바이스{METHOD AND DEVICE FOR HASHING ONTO POINTS OF AN ELLIPTIC CURVE}
본 발명은 일반적으로 암호 작성법에 관한 것으로, 더 구체적으로는 타원 곡선의 점들로 해싱(hashing)하는 것에 관한 것이다.
이 섹션은 아래에 설명 및/또는 주장되는 본 발명의 다양한 양상에 관련될 수 있는 관련 분야의 다양한 양상을 읽는 사람에게 소개하기 위한 것이다. 이 논의는 본 발명의 다양한 양상들의 더 나은 이해를 촉진하기 위한 배경 정보를 읽는 사람에게 제공하는 데 있어서 도움이 될 것으로 믿는다. 따라서, 이들 설명은 종래 기술의 용인이 아니라, 이러한 관점에서 읽어져야 하는 것으로 이해되어야 한다.
해시(hash) 함수는 입력으로서 메시지(보통 스트링으로 표현되는)를 취하고, 고정된 길이를 가지는 해시 값{또는 '메시지 다이제스트(message digest)' 또는 '디지털 지문(digital fingerprint)'이라고 부르는}을 만들어낸다. 더 구체적으로, 해시 함수(h)는 임의의 유한한 길이의 비트-스트링들을 고정된 길이(가령, l 비트들의)의 비트-스트링에 맵핑한다. 즉
Figure 112010008060830-pat00001
. 해시 값인 h(m)은 입력 스트링(m)의 간결한 표현이다.
암호 작성법 응용예들의 경우, 해시 함수들은 아래와 같은 추가 특성을 요구할 수 있다.
- 프리이미지 저항성(preimage resistance): 출력(v)이 주어질 때 v로 해싱하는 입력(u)을 찾는 것{즉, h(u)=v가 되도록}은 계산상 실행 불가능하다.
- 제 2 이미지 저항성: 한 쌍의 u와 v=h(u)가 주어질 때 v로 해싱하는 제 2 입력(u'≠u)을 찾는 것{즉, h(u')=v=h(u)가 되도록}은 계산상 실행 불가능하다.
- 충돌 저항성: 동일한 값을 해싱하는 임의의 2개의 상이한 입력(u,u')을 찾는 것{즉, u≠u'인 h(u)=h(u')가 되도록}은 계산상 실행 불가능하다.
- 랜덤 오라클(random oracle): 수 개의 보안 증가는 해시 함수의 출력이 랜덤 오라클로서 거동한다고 가정한다. 이는 1993년 컴퓨터와 통신 보안에 관한 제 1차 ACM 회의의 ACM 논설문(Press), 페이지 62-73에 "Random oracles are Practical: A Paradigm for Designing Efficient Protocols"라는 제목으로 M.Bellare와 P.Rogaway에 의해 설명되는 소위 랜덤 오라클 모델이다.
해시 함수들은 디지털 서명을 포함하여 많은 암호 작성법 응용예에서 사용되고, 현대의 암호화 알고리즘들의 설계에서 기초적인 역할을 하고, MAC(message authentication code)들을 구성하는 역할을 할 수 있다. MAC은 비밀 키(K)에 의해 인덱스가 붙여진 함수(
Figure 112010008060830-pat00002
)들의 군(family)이다. MAC는, 예컨대 FIPS 198과 FIPS 198-1에서 설명되는데, 이들은 모두 "The Keyed-Hash Message Authentication Code(HMAC)"(Federal Information Processing Standards Publication)라고 부르고, 전자는 2002년 3월 발표된 것이고, 후자(아직 공인되지 않은 초안)는 2007년 6월에 발표된 것이다.
일부 암호화 작성 응용예들은 타원 곡선의 점들로의 해싱을 요구한다. 이는 "Identity-Based Encryption from the Weil Pairing"(SIAM Journal of Computing, 32(3):586-615, 2003)이라는 제목으로 D.Boneh와 M.Franklin에 의해 설명된 구성과 같은 동일성(identity)-기반의 암호화 구성을 포함하고, 이러한 구성은 전통적인 인증-기반의 암호 작성법보다 훨씬 더 간단한 공개-키(public-key) 기초구조를 그 특성으로 한다. 이들 구성은 타원 곡선 점들에서의 쌍일차 짝짓기(bilinear pairing)를 사용한다. 특히, 소위 '추출(extract)'절차는 주어진 타원 곡선의 점들에 임의의 유한한 스트링들을 맵핑하는 해시 함수를 요구한다.
G가 타원 곡선의 점들의 그룹(또는 하위 그룹)을 나타낸다면, 문제는 입력으로서 스트링(m)을 취하는 해시 함수를 어떻게 설계하고 그 타원 곡선의 한 점을 나타내는 해시 값을 어떻게 만들어내는 가이다. 즉,
Figure 112010008060830-pat00003
그러한 한 가지 방법은 N.Koblitz에 의해 "A course in Number Theory and Cryptography"(volume 114 of Graduate Texts in Mathematices, Springer-Verlag, 제 2판, 1994)에서 설명된 기술로부터 얻어질 수 있다. 한 번의 시도에 관한 성공 확률이 약 0.5이기 때문에, k를 이러한 방법의 실패 확률이 개략적으로
Figure 112010008060830-pat00004
이 되도록 '시도들(tries)'의 최대 개수에 대응하는 큰 수라고 표시한다. 또한 E를 Weierstraβ공식, 즉
Figure 112010008060830-pat00005
에 의해 주어진 유한한 필드(
Figure 112010008060830-pat00006
) 위에서의 타원 곡선이라고 표시하고, 여기서 곡선 파라미터들은
Figure 112010008060830-pat00007
이다.
타원 곡선(E)의 점들의 세트는 '특별한' 점(O)과 함께 이러한 Weierstraβ공식을 만족시키는 쌍들(x,y)에 의해 주어지고, 이러한 '특별한' 점(O)을 무한대에서의 점이라고 부른다. 입력 메시지(m)가 주어지면, 먼저 v=h(m)이 계산되고, 이 경우
Figure 112010008060830-pat00008
이 임의의 적합한 해시 함수{예컨대, SHA(Secure Hash Standard) 군의}이고, v는 범위
Figure 112010008060830-pat00009
에서의 정수로서 간주된다. 각각의 j=1,2,..,k에 관해,
Figure 112010008060830-pat00010
가 정의된다. q>
Figure 112010008060830-pat00011
라면, 그렇게 정의된 정수들(
Figure 112010008060830-pat00012
)과 다항식 표현을 사용하는 의 요소들의 세트 사이에 1:1 대응관계가 존재한다.
Figure 112010008060830-pat00014
Figure 112010008060830-pat00015
에 대응하는
Figure 112010008060830-pat00016
-요소를 표시한다. 그런 다음 j=1,2,..,k에 관해 좌표 x=
Figure 112010008060830-pat00017
이고, y에 대한 Weierstraβ공식을 해결하려는 시도가 이루어진다. 해결책이 존재한다면, 그것은
Figure 112010008060830-pat00018
라고 표시된다.
Figure 112010008060830-pat00019
가 해결책이 발견되는 {1,..,k}에서의 가장 작은 j를 표시한다면, 이는
Figure 112010008060830-pat00020
을 정의한다.
이러한 방법에 대한 문제점은 사이드-채널(side-channel) 분석과 실패 분석을 통해 입력에 대한 정보를 누설한다는 점이다. 이는 기본이 되는 응용예의 보안성을 손상시킬 수 있다. 이는 또한 출력 분포에 있어서의 일부 치우침을 발생시키고, 이는 랜덤 오라클 모델에 기초하여 보안성 입증을 무효로 하거나 약하게 할 수 있다. 게다가, 이러한 방법의 반복적인 성질은 일부 비효율성을 야기한다.
그러므로, 종래 기술의 문제점들 중 적어도 일부를 극복하는 타원 곡선의 점들로의 해싱 방법에 관한 필요성이 존재함을 알게 된다.
제 1 양상에서, 본 발명은 임의의 유한한 길이를 가지는 스트링을 한 그룹의 요소로 해싱하는 방법에 관한 것이다. 스트링을 스칼라(scalar)로 맵핑하는 제 1 해싱 알고리즘으로부터 발생하는 제 1 해시 값이 얻어진다. 적어도 스칼라의 제 1 부분이 그 그룹의 미리 결정된 제 1 요소와 곱해져, 출력인 그 그룹의 제 2 요소를 얻는다.
바람직한 제 1 실시예에서는, 그룹이 타원 곡선의 점들을 포함한다.
바람직한 제 2 실시예에서는, 스트링에 관한 제 1 해시 값이 계산에 의해 얻어져서 스칼라를 얻는다.
바람직한 제 3 실시예에서는, 그룹의 제 1 요소가 최대 순서(order)의 요소이다.
바람직한 제 4 실시예에서는, 본 발명의 방법이 그룹의 제 4 요소를 얻기 위해, 제 1 해시 값의 제 2 부분과 그룹의 미리 결정된 제 3 요소 사이의 스칼라 곱셈을 수행하는 단계와, 그룹의 제 5 요소를 얻기 위해, 그룹의 제 2 요소와 상기 그룹의 제 4 요소를 더하는 단계를 더 포함한다.
제 2 양상에서는, 본 발명이 임의의 유한한 길이를 가지는 스트링을 한 그룹의 요소로 해싱하는 디바이스에 관한 것이다. 이 디바이스는 스트링을 스칼라로 맵핑하는 제 1 해싱 알고리즘으로부터 발생하는 제 1 해시 값을 얻기 위한 수단, 그룹의 제 2 요소를 얻기 위해, 제 1 해시 값과 그룹의 미리 결정된 제 1 요소 사이의 스칼라 곱셈을 수행하기 위한 수단, 및 그룹의 제 2 요소를 출력하기 위한 수단을 포함한다.
바람직한 제 1 실시예에서는, 그룹이 타원 곡선의 점들을 포함한다.
바람직한 제 2 실시예에서는, 제 1 해시 값을 얻기 위한 수단이 제 1 해시 값을 계산하도록 적응된다.
바람직한 제 3 실시예에서는, 그룹의 제 1 요소가 최대 순서의 요소이다.
제 3 양상에서는, 본 발명이 프로세서에 의해 실행될 때, 제 1 양상의 실시예들 중 임의의 것의 방법을 수행하는 저장된 명령들을 포함하는 컴퓨터 프로그램 제품에 관한 것이다.
이제, 본 발명의 바람직한 특징들이, 첨부 도면을 참조하여 비-제한적인 예를 통해 설명된다.
본 발명의 임의의 유한한 길이를 가지는 스트링을 한 그룹의 요소로 해싱하는 방법이 사용된 암호 작성법을 적용함으로써 응용예의 보안성을 강화할 수 있다.
도 1은 본 발명의 바람직한 실시예에 따른 디바이스를 예시하는 도면.
반복하는 종래 기술의 해결책에 비해, 본 발명은 타원 곡선의 점들로 해싱하기 위한 기본적으로 상이한 접근법을 취한다. 이 방법은 타원 곡선의 미리 결정된 점으로 시작하고 그룹들의 특징에 의존하는데, 즉 그룹의 요소와 스칼라의 곱은 자동으로 그 그룹의 보통 상이한 요소를 제공한다. 타원 곡선의 점들로 해싱하기 위해, 정규 해싱 알고리즘의 출력은 스칼라로서 취해지고, 타원 곡선의 점을 그 그룹의 요소로서 취해진다. 당업자라면 미리 결정된 점으로서 최대 순서의 요소를 유리하게 사용한다는 점을 알게 되는데, 이는 그렇게 함으로써 가능한 출력들의 세트를 확대시키기 때문이다.
더 구체적으로,
Figure 112010008060830-pat00021
을 임의의 유한한 길이의 비트-스트링을 길이가 l인 비트-스트링으로 맵핑하는 정규 해시 함수라고 표시한다. 그러한 해시 함수들의 예는 MD5(Message Digest 5)이고 SHA-1이 있다. 또한 E를 타원 곡선으로, G를 그것의 하위 그룹, P를 적어도
Figure 112010008060830-pat00022
의 차수를 지닌 G의 점이라고 표시한다. 그러면 본 발명의 바람직한 일 실시예에 따른 해싱 방법은 다음과 같이 정의될 수 있다.
Figure 112010008060830-pat00023
이 해시 함수는 구현하기 쉽고, 주어진 타원 곡선에 점들을 맵핑한다. 또한, 임의의 2개의 상이한 입력 메시지(m,m')에 관해, h(m)=h(m')일 경우에만 H(m)=H(m')을 따르게 되는데, 이는
Figure 112010008060830-pat00024
이기 때문이다. 그 결과, 해시 함수(H)의 보안성은 기본이 되는 해시 함수(h)의 보안성과 동일하다. 해시 함수들과 타원 곡선들에 대한 일반적인 공격(attack)이 제곱근 공격이므로, 제안된 구조는 최선의 것이다.
당업자라면 이러한 방법의 많은 변형예가 가능하다는 점을 알게 된다. 예컨대, 그룹의 하나 이상의 미리 결정된 요소들은 곱셈 후 더해질 수 있다. 또 다른 가능성은 해시 값과 그룹에서의 복수의 요소 사이의 분리된 스칼라 곱셈을 수행하고, 그 후 그 결과들을 더하는 것이다(비록, 이렇게 하는 것이 요소들을 더한 결과와 스칼라를 곱한 것과 동일한 것에 해당하더라도, 이러한 덧셈이 추가 요소를 만들어내기 때문이다).
또 다른 가능성은 n개의 유리하게 다른 부분들로 분리되는 스칼라 해시 값을 얻고, 그 부분들과 그룹의 n개의 상이한 요소들 사이의 스칼라 곱셈을 수행한 다음 그 결과들을 더하는 것이다. 다시 말해(n=2인 경우에 관한 변형예를 예시하면),
Figure 112010008060830-pat00025
이고, 여기서
Figure 112010008060830-pat00026
Figure 112010008060830-pat00027
는 그 그룹에서의 요소들이다.
도 1은 본 발명의 바람직한 실시예에 따른 디바이스를 예시한다. 이 디바이스(100)는 다른 디바이스(미도시)와의 통신을 위해 적응된 적어도 하나의 인터페이스 유닛(110), 적어도 하나의 프로세서(120), 및 중간 계산 결과들과 같은 데이터를 저장하기 위해 적응된 적어도 하나의 메모리(130)를 포함한다. 이 프로세서(120)는 아마도 계산에 의해 입력 스트링의 해시 값을 얻고, 유리하게 타원 곡선의 한 점인 그룹의 요소와의 곱셉을 위해 스칼라로서의 해시 값을 사용함으로써 본 명세서에서 전술한 방법을 수행하고, 그 결과를 출력하도록 적응된다. CD-ROM이나 DVD와 같은 컴퓨터 프로그램 제품(140)은 프로세서(120)에 의해 실행될 때 본 발명의 실시예들 중 임의의 것에 따른 방법을 수행하는 저장된 명령들을 포함한다.
본 발명의 방법은 입력 값들이 타원 곡선들의 점들로 맵핑되어야 할 때마다 사용될 수 있다. 이 방법은 충분히 일반적이고, MD5, SHA, 및 HMAC과 같은 암호화 작성 표준들에서 권고된 것들을 포함하는 임의의 알려진 (정규) 해시 함수를 조절할 수 있다. 더 중요한 것은, 이러한 방법의 보안성인 기본이 되는 (정규) 해시 함수의 보안성과 동일하다는 점이다.
당업자라면, 본 발명의 바람직한 실시예에 따른 방법이 타원 곡선들에 제한되지 않음을 알게 되는데, 즉 이러한 방법은 예컨대 초타원(hyperelliptic) 곡선들이나 유한한 필드 또는 유한한 링(ring)의 증가하는(multiplicative) 그룹, 또는 그 그룹의 하위 그룹과 같은 임의의 그룹에 바로 적용될 수 있다.
상세한 설명부, (적절한) 청구항, 및 도면에 개시된 각각의 특징은 독립적으로 또는 임의의 적절한 조합으로 제공될 수 있다. 하드웨어에서 구현되는 것으로 설명된 특징들은 또한 소프트웨어에서 구현될 수 있고, 그 역도 성립한다. 연결들은, 적용 가능하다면 유선 연결이나 무선 연결로서 구현될 수 있고, 이러한 연결은 반드시 직접적이거나 전용 연결일 필요가 없다.
청구항들에서 등장하는 참조 기호들은 오직 예시를 위한 것이고, 청구항들의 범주에 어떠한 제한하는 효과도 가지지 않는다.
110: 인터페이스 유닛 120: 프로세서
130: 메모리 140: 컴퓨터 프로그램 제품

Claims (11)

  1. 임의의 유한한 길이를 가지는 스트링을 한 그룹의 요소로 해싱(hashing)하는 프로세서 구현 방법으로서,
    하나의 디바이스에서,
    스트링을 하나의 스칼라(scalar)에 맵핑하는 제 1 해싱 알고리즘(h)으로부터 발생하는 제 1 해시 값을 획득하는 단계로서, h:{0,1}*→{0,1}l이고, l은 정수인, 제 1 해시 값을 획득하는 단계, 및
    그룹의 제 2 요소를 획득하기 위해, 제 1 해시 값의 적어도 제 1 부분인 스칼라와 그룹의 제 1 요소 사이의 곱셈을 수행하는 단계를 포함하고,
    그룹의 제 2 요소를 출력하는 단계를 포함하는 것을 특징으로 하는, 임의의 유한한 길이를 가지는 스트링을 한 그룹의 요소로 해싱하는 프로세서 구현 방법.
  2. 제 1항에 있어서,
    그룹은 타원 곡선의 점들을 포함하는, 임의의 유한한 길이를 가지는 스트링을 한 그룹의 요소로 해싱하는 프로세서 구현 방법.
  3. 제 1항에 있어서,
    제 1 해시 값을 획득하는 단계는,
    스칼라를 획득하기 위해, 스트링을 획득하고 스트링에 관한 제 1 해시 값을 계산하는, 획득 및 계산 단계를 포함하는, 임의의 유한한 길이를 가지는 스트링을 한 그룹의 요소로 해싱하는 프로세서 구현 방법.
  4. 제 1항에 있어서,
    그룹의 제 1 요소는 타원 곡선 상의 미리 결정된 점인, 임의의 유한한 길이를 가지는 스트링을 한 그룹의 요소로 해싱하는 프로세서 구현 방법.
  5. 제 1항에 있어서,
    그룹의 제 4 요소를 획득하기 위해, 제 1 해시 값의 제 2 부분과 그룹의 미리 결정된 제 3 요소 사이의 스칼라 곱셈을 수행하는 단계와,
    그룹의 제 5 요소를 획득하기 위해, 그룹의 제 2 요소와 그룹의 제 4 요소를 더하는 단계를 더 포함하는, 임의의 유한한 길이를 가지는 스트링을 한 그룹의 요소로 해싱하는 프로세서 구현 방법.
  6. 임의의 유한한 길이를 가지는 스트링을 한 그룹의 요소로 해싱하는 디바이스(100)로서,
    스트링을 스칼라에 맵핑하는 제 1 해싱 알고리즘(h)으로부터 발생하는 제 1 해시 값을 획득하기 위한 수단(110,120)으로서, h:{0,1}*→{0,1}l이고, l은 정수인, 제 1 해시 값을 획득하기 위한 수단(110,120), 및
    그룹의 제 2 요소를 획득하기 위해, 제 1 해시 값의 적어도 제 1 부분인 스칼라와 그룹의 제 1 요소 사이의 곱셈을 수행하기 위한 수단(120)을 포함하고,
    그룹의 제 2 요소를 출력하기 위한 수단(110,120)을 포함하는 것을 특징으로 하는, 임의의 유한한 길이를 가지는 스트링을 한 그룹의 요소로 해싱하는 디바이스.
  7. 제 6항에 있어서,
    그룹은 타원 곡선의 점들을 포함하는, 임의의 유한한 길이를 가지는 스트링을 한 그룹의 요소로 해싱하는 디바이스.
  8. 제 6항에 있어서,
    제 1 해시 값을 획득하기 위한 수단은 제 1 해시 값을 계산하도록 적응되는, 임의의 유한한 길이를 가지는 스트링을 한 그룹의 요소로 해싱하는 디바이스.
  9. 제 6항에 있어서,
    그룹의 제 1 요소는 타원 곡선 상의 미리 결정된 점인, 임의의 유한한 길이를 가지는 스트링을 한 그룹의 요소로 해싱하는 디바이스.
  10. 제 6항에 있어서,
    그룹의 제 4 요소를 획득하기 위해, 제 1 해시 값의 제 2 부분과 그룹의 미리 결정된 제 3 요소 사이의 스칼라 곱셈을 수행하기 위한 수단과,
    그룹의 제 5 요소를 획득하기 위해, 그룹의 제 2 요소와 그룹의 제 4 요소를 더하기 위한 수단을 더 포함하는, 임의의 유한한 길이를 가지는 스트링을 한 그룹의 요소로 해싱하는 디바이스.
  11. 컴퓨터 프로그램이 저장된 컴퓨터 판독 가능한 저장 매체(140)로서,
    컴퓨터 프로그램은 명령어들을 포함하며, 명령어들은, 프로세서에 의해 실행될 때, 제 1항 내지 제 5항 중 어느 한 항에 따른 방법을 수행하는, 컴퓨터 판독 가능한 저장 매체.
KR1020100011009A 2009-02-19 2010-02-05 타원 곡선의 점들로 해싱하기 위한 방법 및 디바이스 KR101699893B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
EP09305164.7 2009-02-19
EP09305164A EP2222015A1 (en) 2009-02-19 2009-02-19 Method and device for hashing onto points of an elliptic curve

Publications (2)

Publication Number Publication Date
KR20100094939A KR20100094939A (ko) 2010-08-27
KR101699893B1 true KR101699893B1 (ko) 2017-02-13

Family

ID=40935745

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020100011009A KR101699893B1 (ko) 2009-02-19 2010-02-05 타원 곡선의 점들로 해싱하기 위한 방법 및 디바이스

Country Status (5)

Country Link
EP (2) EP2222015A1 (ko)
JP (1) JP5528842B2 (ko)
KR (1) KR101699893B1 (ko)
CN (1) CN101814989B (ko)
TW (1) TWI525466B (ko)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2941115B1 (fr) * 2009-01-14 2011-02-25 Sagem Securite Codage de points d'une courbe elliptique

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2003017559A2 (en) * 2001-08-13 2003-02-27 Board Of Trustees Of The Leland Stanford Junior University Systems and methods for identity-based encryption and related cryptographic techniques

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1256463A (zh) * 1999-11-25 2000-06-14 赵风光 一种新型数字签名体制和装置
JP4842276B2 (ja) * 2004-11-11 2011-12-21 サーティコム コーポレーション 楕円曲線上の新しいトラップドア1方向性関数と、その、より短い署名及び非対称暗号化への応用
DE602006006454D1 (de) * 2006-10-10 2009-06-04 Ntt Docomo Inc Verfahren und Vorrichtung zur Authentifizierung
JP4928412B2 (ja) * 2006-10-31 2012-05-09 日本電信電話株式会社 署名生成装置、署名検証装置、それらの方法及びプログラム
KR101527867B1 (ko) * 2007-07-11 2015-06-10 삼성전자주식회사 타원 곡선 암호 시스템에 대한 부채널 공격에 대응하는방법
FR2941115B1 (fr) * 2009-01-14 2011-02-25 Sagem Securite Codage de points d'une courbe elliptique

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2003017559A2 (en) * 2001-08-13 2003-02-27 Board Of Trustees Of The Leland Stanford Junior University Systems and methods for identity-based encryption and related cryptographic techniques

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
D. R. L. Brown, "The Encrypted Elliptic Curve Hash", IACR vo. pp.1-15(2008)*

Also Published As

Publication number Publication date
JP2010191419A (ja) 2010-09-02
EP2222016A1 (en) 2010-08-25
KR20100094939A (ko) 2010-08-27
CN101814989A (zh) 2010-08-25
TWI525466B (zh) 2016-03-11
TW201032086A (en) 2010-09-01
JP5528842B2 (ja) 2014-06-25
EP2222015A1 (en) 2010-08-25
CN101814989B (zh) 2014-10-15

Similar Documents

Publication Publication Date Title
US8190895B2 (en) Authenticated key exchange with derived ephemeral keys
WO2015021934A1 (zh) 一种生成数字签名的方法及装置
US8139765B2 (en) Elliptical polynomial-based message authentication code
US8170203B2 (en) Message authentication code with elliptic polynomial hopping
CN112446052B (zh) 一种适用于涉密信息系统的聚合签名方法及系统
CN107911217B (zh) 基于ecdsa算法协同生成签名的方法、装置和数据处理系统
US20100166175A1 (en) Cryptographic hash functions using elliptic polynomial cryptography
US20120243680A1 (en) Incorporating data into an ecdsa signature component
Sun et al. Strongly unforgeable proxy signature scheme secure in the standard model
US20100177890A1 (en) Hash functions with elliptic polynomial hopping
Noether et al. Monero is not that mysterious
RU2533693C2 (ru) Кодирование точек эллиптической кривой
EP2553865A1 (en) Collision based multivariate signature scheme
US20240007303A1 (en) Method and system for digital signatures utilizing multiplicative semigroups
US10425227B2 (en) Computer-readable recording medium, shared key generation method, and information processing terminal
US20100208884A1 (en) Method and device for hashing onto points of an elliptic curve
Stallings Digital signature algorithms
CN109074759B (zh) 用于Cheon抗性的静态DIFFIE-HELLMAN安全性的方法和系统
CN112434269A (zh) 文件的零知识证明方法、验证方法、计算设备和存储介质
WO2023093278A1 (zh) 数字签名门限方法和装置
KR101699893B1 (ko) 타원 곡선의 점들로 해싱하기 위한 방법 및 디바이스
CN111368317A (zh) 一种计算机数据加密系统及方法
US11616994B2 (en) Embedding information in elliptic curve base point
Zhang et al. Efficient designated confirmer signature from bilinear pairings
KR20210061194A (ko) 구조화된 행렬들에 기초한 공개키 암호를 위한 방법과 장치

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