Construction of MNT elliptic curves with a small security loss

Download Report

Transcript Construction of MNT elliptic curves with a small security loss

최소의 안전성 손실을 갖는
MNT 타원곡선 생성
삼성 SDS
통합보안컨설팅그룹
선동규
책임컨설턴트/Ph.D.
대한수학회 봄 연구발표회
2009.04.25
Copyright ⓒ 2009 Samsung SDS Co., Ltd. All rights reserved | Confidential
Elliptic Curves Suitable for Pairing Based Cryptography
For pairing based cryptography we need elliptic curves defined over finite fields
Fq whose group order is divisible by some prime r with r | qk-1 where k is
relatively small
K (Embedding degree)
Special
Elliptic Curves
Supersingular
Ordinary
2009 대한수학회 봄 연구발표회
Pairing Based
Cryptography
k=2,3,4,6
q=pm (단, p=2 또는 3)
Weil Descent 공격 (m은 소수)
k는 임의의 양의 정수, 일반적으로 매우 큼 (k는 6~20 정도가 적합함)
q=p
안전성 측면에서 pairing에 적합한 ordinary 타원곡선은 아직 검증이 안되었음
Hard Problem & Pairing-friendly Elliptic Curves
For prime p, Elliptic Curve over Fp E(Fp): y2=x3+Ax+B (단, A, B ∈ Fp)
P
P
#(E(Fp))=n=hr(order), r l pk-1
단, h는 cofactor, r은 소수
Alice
Bob


P,  P
 P
P(xg, yg): generator of E[r]
Eve
안전성
ECDLP. ECDHP
r은 160비트, pk은 1024비트 이상을 만족해야 함
K는 상대적으로 커야함
효율성
ρ:= (logp)/(logr)이 1에 가까워야 함
k는 상대적으로 작음
2009 대한수학회 봄 연구발표회
History of Pairing-friendly Elliptic Curves
k=3,4,6
k=10
k=12
k=2a3b
Scott, Barreto 방법 원리
k=3,4,6
k=3,4,6
소수 위수(MNT: Miyaji, Nakabayashi, Takano, 2001)
→ 타원곡선의 개수가 매우 적음
Hasse 방정식
작은 cofactor(Scott, Barreto, “Generating More MNT Elliptic
Curves”, 2006) → 상당히 많은 양의 타원곡선의 생성 가능!
k=10
소수위수를 갖는 타원곡선 생성
(Freeman, 2006)
k=12
소수위수를 갖는 타원곡선 생성
(Paulo, Barreto, Michael Naehrig, 2006)
2009 대한수학회 봄 연구발표회
Pell 방정식
CM 방법
Scott, Barreto MNT EC
기본 변수 성질
E(Fp): y2=x3+Ax+B(단, p는 소수, A, B∈Fp)
#(E(Fp))=n=hr(단, r은 소수)
r l pk-1
n=p+1-t (단, t는 E(Fp)의 trace)
Hasse 방정식
t2+DV2=4p (단 D>0는 squarefree 정수, discriminant)
Cyclotomic polynomial Ф
(k의 정보 내포)
정리: r l pk-1 ⇔ r l Фk(x) (단, x=t-1)
정리로부터 적당한 정수 d에 대하여 Фk(x)=dr
Pell 방정식
K=3,4,6에 대하여 Фk는
이차다항식을 만족
(예: Ф6(x)=x2-x+1)
DV2=4hФk(x)/d-(x-1)2
변수 치환: ak=-2([k/2]+4)h+d, b=4h-d(단, b>0),
x=(y- ak)/b, fk= ak2-b2, g=dbD
y2-gV2=fk → (y, V)
(y, V) → (p, r, h, D) → A, B, 생성자를 구함
CM 방법
D에 따라 구현시간이 오래 걸리는 경우도 있음
2009 대한수학회 봄 연구발표회
Result of Scott, Barreto
k=6인 경우의 결과 (hmax=4, Dmax=104)
k=6인 경우에서 많은 타원곡선이 생성
소수 p는 2128~2256의 조건에서 생성
총 353개 중 34개가 ρ≤1.2을 만족
이상적인 경우 즉, n=p인 경우는 2개 출현
구현 시간은 D에 따라 크게 의존
2009 대한수학회 봄 연구발표회
Definition of Security Loss
정의:
G=E(Fp)[r]으로 고려할 때, 생성자
P와 i=1,2, …, q에 대하여 αiP가 주어지면
(1) α-1P를 구하는 문제를 q-weak DiffieHellman (wDH) 문제,
(2) αq+1P 를 구 하 는 문 제 를 q-Strong
Diffie-Hellman (SDH) 문제라고 한다.
정리(cheon): P를 소수 위수 r를 갖는 G
의 생성자로 가정하고 α∈Zr라고 할 때,
(1) r-1의 약수 d에 대하여 P, αP 와 αdP이
주어지면 O((log r )( r / d  d ))의 group 연산시
간으로 비밀 키 α를 복구할 수 있고,
(2) r+1의 약수 d에 대하여 αiP (0≤i≤d)이
주어지면 O((log r )( r / d  d )) 의 group 연산시
간으로 비밀 키 α를 복구할 수 있다.
αP
P
Cheon, 2006
…+
O((log r )( r / d  d ))
Comuta, 2007
O( r / d  d )
d<r1/2
αd P
단,
2009 대한수학회 봄 연구발표회
안전성손실 비트
O( r / d )
General Analysis
Scott, Barreto의 MNT 타원곡선 (r=229 비트)
충분히 큰 q에
대하여 안정성
손 실 L=8 비
트
774<210
38584<216
Supersingular 타원곡선의 안전성
이상적인 MNT 타원곡선의 안전성 (n=r)
모든 경우에 Cheon의 알고리즘에 취약
작은 크기의 q에 대하여 모두 취약
(4개의 타원곡선)
2009 대한수학회 봄 연구발표회
Our Algorithm (k=6 Case)
최소의 안전성 손실을 갖는 MNT 타원곡선 생성 알고리즘
Scott, Barreto의 알고리즘 이용
→ 12,353개
ρ≤1.2의 조건 추가
→ 2,205개
초
기
값
2009 대한수학회 봄 연구발표회
L=7, q=277
Cheon의 알고리즘에 강한
r의 조건추가
hmax=4,
Dmax=107
→ 13개(type1:3개, type2:10개)
Results
예제 1) r+1이 두 개의 큰 소수를 갖는 경우 (3개)
r=161 비트 소수 , L=2 비트, ρ=1.10
•
E(Fp): y2=x3-3x+B(단, B∈Fp)
→효율적인 측면 고려
예제 2) r-1과 r+1이 큰 소수를 한 개 갖는 경우
(10개)
r=180 비트 소수 , L=5 비트, ρ=1.05
•
(xg,yg)∈FpXFp는 E(Fp)[r]의 생성자
다른 예제)
2009 대한수학회 봄 연구발표회
Conclusion
1
pairing기반 암호에 적용할 수 있는 최소의 안전성
손실을 갖는 타원곡선 생성
2
방대한 양의 계산으로 희소성 있는 타원곡선 발견
3
키사이즈를 늘리지 않고도 160비트이상의 안전성을
요구하는 암호알고리즘에 적용가능
4
짧은 전자서명 및 ID기반 암호에 효율적으로 사용가능
2009 대한수학회 봄 연구발표회
2009 대한수학회 봄 연구발표회