• 제목/요약/키워드: Discrete exponentiation

검색결과 10건 처리시간 0.043초

Sparse 소수를 사용한 효과적인 지수연산 (A fast exponentiation with sparse prime)

  • 고재영;박봉주;김인중
    • 한국통신학회논문지
    • /
    • 제23권4호
    • /
    • pp.1024-1034
    • /
    • 1998
  • 정보통신망에서 사용하는 공개키 암호시스템은 대부분 지수 연산을 사용한다. 하지만, 암호시스템은 안전성을 고려한 큰 수의 지수 연산을 사용하기 때문에 많은 계산 량과 준비시간을 요구한다. 이러한 문제점을 해결하기 위하여 모듈러 감소 연산에서 Montgomery, Yang, Kawamura 등이 사전계산 방법, 중간계산, 그리고 테이블을 사용하는 방법을 제안하였으며, 지수 연산에서 Coster, Brickel, Lee 등이 addition chain, window, 그리고 고정된 수를 사용하는 경우 사전 계산을 하는 방법을 제안하였다. 본 논문에서는 sparse 소수를 사용한 모듈러 감소 연산 방법을 제안하고 지수연산시 계산 량을 줄이는 방법을 제안한다. 이는 이산대수 방식의 암호시스템에서 매우 효과적으로 적용할 수 있다.

  • PDF

병렬 지수승에서 라운드 수 축소를 위한 알고리즘 (An Algorithm For Reducing Round Bound of Parallel Exponentiation)

  • 김윤정
    • 정보보호학회논문지
    • /
    • 제14권1호
    • /
    • pp.113-119
    • /
    • 2004
  • 지수승(exponentiation) 연산은 암호 관련 응용에서 널리 사용되고 있으며, 안전성을 위해 지수 n의 값을 크게 선정하여 이용하고 있다. 그런데, n의 값이 커짐에 따라 수행해야 하는 곱셈의 횟수도 따라서 증가하게 되고, 결과적으로 속도가 빠른 연산 알고리즘의 개발이 중요한 문제로 대두되고 있다. 본 논문에서는 정규 기저 표현(normal bases representation)을 갖는 GF(2$^n$) 상의 병렬 지수승 연산에 있어서, 프로세서 수가 고정된 경우에 라운드 수를 개선할 수 있는 알고리즘을 제안하고 이의 성능분석을 수행한다. 제안하는 방안은 지수(exponent)를 특정 비트 수로 나누어 지수승을 수행하는 윈도우 방법(window method)를 이용하는 것으로, 윈도우 값 계산 단계에서 휴지 프로세서들로 하여금 윈도우들 간의 곰을 계산하도록 합으로써, 전체 라운드 수를 줄이는 효과를 갖는다.

공개 파라메터 키 크기를 줄인 새로운 이산대수문제 (A new discrete logarithm problem with public parameter key-size reduction)

  • 박영호;오상호;주학수
    • 정보보호학회논문지
    • /
    • 제13권2호
    • /
    • pp.91-98
    • /
    • 2003
  • 본 논문은 유한체의 상군(quotient group)에서 이산대수문제를 고려한 새로운 공개키 시스템을 제안한다 이 시스템은 기존의 공개키의 크기와 전송 테이터 양을 반으로 줄여 통신량의 부담을 줄일 뿐만 아니라 효율적인 승연산을 통해 계산비용을 줄일 수 있다. 특별히 DSA와 비교해서 같은 안전도를 갖는 이 시스템의 속도는 대략 50%정도 향상된다.

두 개의 balanced subset을 이용한 효율성 개선 (Efficiency Improvement Using Two Balanced Subsets)

  • 김홍태
    • 융합보안논문지
    • /
    • 제18권1호
    • /
    • pp.13-18
    • /
    • 2018
  • 암호시스템에서 효율성은 매우 중요한 요소 중의 하나이다. 천정희 외 3인은 이산대수 문제에 기반하는 암호 시스템에서 지수승 연산 속도를 높이기 위해 새로운 지수 형태를 제안하였다. 제안된 변형은 고정된 원소 ${\alpha}$와 작은 해밍 웨이트를 가지는 두 원소 $e_1$, $e_2$에 대해 $e_1+{\alpha}e_2$로 표현되며 스플릿 지수라 불린다. 그들은 $e_1$, $e_2$를 각각 $Z_p$의 부분집합이면서 언밸런스드 부분집합인 $S_1$, $S_2$에서 선택하였다. 본 논문에서는 $S_1$, $S_2$$Z_p$의 부분집합이면서 밸런스드 부분집합이 되도록 하여 효율성을 개선한다. 결과적으로, 이진 유한체에서의 지수승 연산 속도는 9.1%, 코블리츠 곡선에서의 스칼라 곱셈 연산 속도는 12.1% 빨라진다.

  • PDF

대칭키 해독을 위한 아기걸음 2k-ary 성인걸음 알고리즘 (Baby-Step 2k-ary Adult-Step Algorithm for Symmetric-Key Decryption)

  • 이상운
    • 한국인터넷방송통신학회논문지
    • /
    • 제15권2호
    • /
    • pp.23-29
    • /
    • 2015
  • $a^b{\equiv}c$(mod p)에서 a,c,p가 주어졌을 때 b를 구하는 이산대수 문제를 푸는 아기걸음-거인걸음 알고리즘은 p를 $m={\lceil}{\sqrt{p}}{\rceil}$개의 원소를 가진 m개의 블록으로 분할하고 거인 1명이 보폭 m으로 단방향으로만 $a^0$로 걸어가면서 찾는 방법이다. 본 논문은 기본적으로 p를 p/l, $a^l$ > p로 분할하고, 성인 1명이 보폭 l로 단방향으로 걸어가는 방법으로 변형시켰다. 또한, 성인 $2^k$명이 동시에 걸어가면서 b를 빠르게 찾는 방법으로 확장시켰다. 제안된 알고리즘을 $1{\leq}b{\leq}p-1$의 범위에서 $2^k$, (k=2)를 적용한 결과 기본적인 성인걸음수의 1/4로 감소시키는 효과를 얻었다. 결론적으로, 제안된 알고리즘은 아기걸음-거인걸음 알고리즘의 보폭 수를 획기적으로 단축시킬 수 있었다.

최단 보폭-최장 보폭 이산대수 알고리즘의 변형 (Modified Baby-Step Giant-Step Algorithm for Discrete Logarithm)

  • 이상운
    • 한국컴퓨터정보학회논문지
    • /
    • 제18권8호
    • /
    • pp.87-93
    • /
    • 2013
  • 최단 보폭-최장 보폭 알고리즘은 n을 $m={\lceil}\sqrt{n}{\rceil}$개의 원소를 가진 m개의 블록으로 분할하고 첫 번째 블록의 m개에 대해 $a^x$ (mod n) 값을 저장한다. 다음으로 m개의 블록에 대한 mod n을 계산하여 첫 번째 블록의 원소 값을 검색하여 일치하는 블록을 찾는 방법이다. 본 논문에서는 첫 번째로, $a^{{\phi}(n)/2}{\equiv}1(mod\;n)$$a^x(mod\;n){\equiv}a^{{\phi}(n)+x}$ (mod n)의 특징을 적용하여 m개의 원소를 가진 ${\lceil}m/2{\rceil}$개의 블록으로 분할하는 방법을 적용하여 최장보폭의 수행횟수를 50% 감소시켰다. 두 번째로, ${\lceil}m/2{\rceil}$개의 최단 보폭을 먼저 수행하여 저장하고, 첫 번째 블록의 m개 원소를 수행하는 최단 보폭을 수행하는 방법으로 최단 보폭-최장 보폭 알고리즘을 역으로 수행하는 방법을 제안하였다. 이 알고리즘은 최단 보폭-최장 보폭 알고리즘의 m개 저장과 검색을 ${\lceil}m/2{\rceil}$개로 50% 감소시키는 특징이 있다.

비대칭키 RSA의 𝜙(n) 해독을 위한 역 아기걸음- 2k-ary 성인걸음법 (Reverse Baby-step 2k-ary Adult-step Method for 𝜙((n) Decryption of Asymmetric-key RSA)

  • 이상운
    • 한국인터넷방송통신학회논문지
    • /
    • 제14권6호
    • /
    • pp.25-31
    • /
    • 2014
  • 비대칭키 RSA의 공개키 e와 합성수 n=pq은 알고 있고 개인키 d를 모를 때, ${\phi}(n)=(p-1)(q-1)=n+1-(p+q)$을 구하여 $d=e^{-1}(mod{\phi}(n))$으로 개인키 d를 해독한다. 암호해독은 일반적으로 n/p=q 또는 $a^2{\equiv}b^2$(mod n), a=(p+q)/2,b=(q-p)/2를 구하는 소인수 분해법이 널리 적용되고 있다. 그러나 아직까지도 많은 RSA 수들이 해독되지 않고 있다. 본 논문은 ${\phi}(n)$을 직접 구하는 알고리즘을 제안하였다. 제안된 알고리즘은 이산대수의 아기걸음-거인걸음법과 모듈러 지수연산의 $2^k$-ary법을 적용하였다. 이 알고리즘은 역-아기걸음과 $2^k$-ary 성인걸음법을 적용하여 기본적인 성인걸음법 수행횟수를 $1/2^k$로 줄이고, $m={\lfloor}\sqrt{n}{\rfloor}$의 저장 메모리 용량도 l, $a^l$ > n로 감소시켜 ${\phi}(n)$을 l회 이내로 구하였다.

공개키 분배방식에 관한 연구 (A Study on Public Key Distribution System)

  • 권창영;원동호
    • 한국통신학회논문지
    • /
    • 제15권12호
    • /
    • pp.981-989
    • /
    • 1990
  • 본 논문에서는 기존의 제안된 여러가지 공개키 분배방식을 정리하고, 3인 이상 다수 가입자의 공유 비밀 회의용 키로 사용할 수 있는 새로운 공개키 분배방식을 제안하였다. 본 방식은 모든 연산이 큰 소수 p에 관한 법연산이 적용되는 멱승 함수를 이용하였으며 GF(p) 상에서 승산역원을 계산하기 위한 새로운 방법을 고안하였다. 또한, 기존의 방법과 달리 공통 암호화키를 분배하기 위한 사전 분배정보는 일방향통신으로 가능하다. 본 방식의 안전성은 유한체 GF(p)상에서 이산 대수의 어려움에 근거하며, DH(Diffie-Hellman) 공개키 분배방식 보다 강하다.

  • PDF

WAP에서 사용 가능한 ElGamal 기반의 비대화형 불확정 전송 프로토콜 (Non-Interactive Oblivious Transfer Protocol based on EIGamal in WAP)

  • 정경숙;홍석미;정태충
    • 정보보호학회논문지
    • /
    • 제13권1호
    • /
    • pp.11-18
    • /
    • 2003
  • 인터넷이 무선 구간으로 확대됨에 따라 보안측면에서도 효율적이고 안전한 새로운 보안 프로토콜이 필요하게 되었다. 본 논문에서는 이러한 요구를 해결하기 위해 통신량이 적을 뿐만 아니라 신뢰 기관이 비밀키를 보유함으로 인해서 발생하는 문제점을 해결할 수 있는 새로운 프로토콜을 제안하고자 한다. 이 프로토콜은 비대화형 불확정 전송 프로토콜로서 기존의 안전도가 검증된 EIGamal 공개키 알고리즘을 기반으로 하였다. 제안된 프로토콜은 불확정 전송 프로토콜이므로 서버와 클라이언트간의 통신량을 줄일 수 있고, 챌린지 선택 비트(challenge selection bit)를 사용하여 클라이언트가 서버에 인증되는 확률을 줄임으로서 프로토콜의 효율성을 높였다. 또한 이중지수승(double exponentitation)을 사용함으로써 메시지를 복호화 할 경우 기존의 이산대수나 소인수문제보다 어렵게 되므로 프로토콜의 안정성을 높일 수 있다.

RSA의 오일러 함수 𝜙(n) 해독 2kβ 알고리즘 (A 2kβ Algorithm for Euler function 𝜙(n) Decryption of RSA)

  • 이상운
    • 한국컴퓨터정보학회논문지
    • /
    • 제19권7호
    • /
    • pp.71-76
    • /
    • 2014
  • 대표적인 공개키 암호방식인 RSA에 사용되는 합성수 n=pq의 큰자리 소수 p,q를 소인수분해하여 구하는 것은 사실상 불가능하다. 공개키 e와 합성수 n은 알고 개인키 d를 모를 때, ${\phi}(n)=(p-1)(q-1)=n+1-(p+q)$을 구하여 $d=e^{-1}(mod{\phi}(n))$의 역함수로 개인키 d를 해독할수 있다. 따라서 ${\phi}(n)$을 알기위해 n으로부터 p,q를 구하는 수학적 난제인 소인수분해법을 적용하고 있다. 소인수분해법에는 n/p=q의 나눗셈 시행법보다는 $a^2{\equiv}b^2(mod\;n)$, a=(p+q)/2,b=(q-p)/2의 제곱합동법이 일반적으로 적용되고 있다. 그러나 다양한 제곱합동법이 존재함에도 불구하고 아직까지도 많은 RSA 수들이 해독되지 않고 있다. 본 논문은 ${\phi}(n)$을 직접 구하는 알고리즘을 제안하였다. 제안된 알고리즘은 $2^j{\equiv}{\beta}_j(mod\;n)$, $2^{{\gamma}-1}$ < n < $2^{\gamma}$, $j={\gamma}-1,{\gamma},{\gamma}+1$에 대해 $2^k{\beta}_j{\equiv}2^i(mod\;n)$, $0{\leq}i{\leq}{\gamma}-1$, $k=1,2,{\ldots}$ 또는 $2^k{\beta}_j=2{\beta}_j$${\phi}(n)$을 구하였다. 제안된 알고리즘은 $n-10{\lfloor}{\sqrt{n}}{\rfloor}$ < ${\phi}(n){\leq}n-2{\lfloor}{\sqrt{n}}{\rfloor}$의 임의의 위치에 존재하는 ${\phi}(n)$도 약 2배 차이의 수행횟수로 찾을 수 있었다.