• 제목/요약/키워드: Probabilistic primality test

검색결과 5건 처리시간 0.017초

효율적 소수성 검정 알고리즘들에 대한 비교ㆍ분석 (A study on effective primality test algorithms)

  • 이호정;송정환
    • 한국정보보호학회:학술대회논문집
    • /
    • 한국정보보호학회 2003년도 동계학술대회
    • /
    • pp.299-306
    • /
    • 2003
  • 본 논문에서는 현재 사용되고 있는 소수성 검정 알고리즘의 효율성을 비교하여 효과적인 알고리즘 사용에 관한 방향을 제시하려 한다. 현재 가장 일반적으로 사용하고 있는 Miller-Rabin 소수성검정법(Miller-Rabin primality test)에 대하여, Miller-Rabin 소수성 검정법 이외에 다른 확률적 소수성 검정법으로 제안된 Frobenius-Grantham 소수성 검정법(Frobenius-Grantham primality test) 이 있다. 그러나 합성수 판별에 대한 확률적 우세함에도 불구하고, Miller-Rabin 소수성 검정법을 대체하고 있지 못하는 이유는 시간복잡도(time complexity)가 Randomized polynomial time이기 때문에 같은 확률에 대한 평균 실행 속도가 Miller-Rabin 소수성 검정법보다 크게 효율적이지 못하기 때문이다. 또한, 2002년 Manindra Agrawal이 제시한 AKS 알고리즘(AKS algorithm)은 최초의 다항식 시간내 결정적 소수성 검정법(Polynomial time deterministic primality test)이지만, 시간 복잡도에서 다항식의 차수가 높기 때문에 현재 사용되고 있는 확률적 소수성 검정법(Probabilistic primality test)을 대체하지 못할 것으로 사료된다. 본 논문에서는 최근 발표된 소수성 검정법인 Frobenius-Grantham 소수성 검정법, AKS 알고리즘과 기존의 Miller-Rabin 소수성 검정법의 장단점을 비교·분석해 보고자 한다.

  • PDF

소수 판별법 (The Primality Test)

  • 이상운;최명복
    • 한국컴퓨터정보학회논문지
    • /
    • 제16권8호
    • /
    • pp.103-108
    • /
    • 2011
  • 대표적인 소수판별법으로 밀러-라빈방법이 적용되고 있다. 밀러-라빈판별법은 m=[2, n-1]에서 m을 k개 선택하여 n-1=$2^sd$, $0\;{\leq}\;r\;{\leq}\;s-1$ 에 대해 $m^d\;{\equiv}\;1(mod\;n)$ 또는 $m^{2^rd}\;{\equiv}\;-1(mod n)$로 소수를 판별하여 $k{\times}r$회를 수행한다. 본 논문은 c=$p^{\frac{n-1}{2}}(mod\;n)$을 계산하여 c=-1이면 소수로 판별하여 k회 수행하였다. 제안된 판별법은 밀러-라빈 판별법의 $k{\times}r$회를 k회로 감소시켰다.

단계적 소수 판별법 (A Step-by-Step Primality Test)

  • 이상운
    • 한국인터넷방송통신학회논문지
    • /
    • 제13권3호
    • /
    • pp.103-109
    • /
    • 2013
  • 대표적인 소수판별법으로 밀러-라빈 방법이 적용되고 있다. 밀러-라빈 판별법은 카마이클 수 또는 반소수가 합성수임에도 불구하고 소수로 잘못 판별하는 단점이 있어 m=[2,n-1], (m,n)=1인 m을 k개 선택하여 소수 여부를 판별한다. 밀러-라빈 방법은 $n-1=2^sd$, $0{\leq}r{\leq}s-1$에 대해 $m^d{\equiv}1$(mod n) 또는 $m^{2^rd}{\equiv}-1$(mod n)로 소수를 판별한다. 본 논문은 m=2로 한정시켜 98.9%를 판별할 수 있는 알고리즘을 제안한다. 제안된 방법은 $n=6k{\pm}1$, $n_1{\neq}5$로 1차로 합성수 여부를 판별한다. 2차에서는 $2^{2^{s-1}d}{\equiv}{\beta}_{s-1}$(mod n)과 $2^d{\equiv}{\beta}_0$(mod n)로 판별하였으며, 3차에서는 ${\beta}_0$ >1이면 $1{\leq}r{\leq}s-2$에서 ${\beta}_r{\equiv}-1$ 존재 여부로, ${\beta}_0=1$이면 m=3,5,7,11,13,17을 순서대로 적용하였다. 제안된 알고리즘을 n=[101,1000]에 적용한 결과 ${\beta}_0$ >1은 26개로 3.0%, ${\beta}_0$ = 1은 0.55%만 수행되었으며, 96.55%는 초기에 판별할 수 있었다.

오일러체를 적용한 소수와 안전소수의 생성법 제안과 분석 (Proposal and Analysis of Primality and Safe Primality test using Sieve of Euler)

  • 조호성;이지호;박희진
    • 전기전자학회논문지
    • /
    • 제23권2호
    • /
    • pp.438-447
    • /
    • 2019
  • IoT 기반의 초연결사회가 되어감에 따라 암호, 인증, 전자서명 등을 위해 RSA와 같은 공개키암호시스템이 빈번하게 사용되고 있다. 공개키암호시스템은 악의적인 공격으로부터 보안성을 확보하기 위해 크기가 매우 큰 (안전)소수를 사용하는데 기기의 성능이 크게 발전하였음에도 불구하고 크기가 큰 (안전)소수생성은 수행시간이 오래 걸리거나 메모리를 많이 요구하는 작업이다. 본 논문에서는 수행시간과 사용공간의 효율을 높이기 위해 오일러체(Euler sieve)를 사용하는 ET-MR 소수검사법과 ET-MR-MR 안전소수검사법을 제안한다. 제안한 검사법을 확률적으로 분석한 수행시간 예측 모델을 제안하고 기존 방법들과 수행시간, 메모리 사용량을 비교하였다. 실험결과, 이론적 예측시간과 실제 수행시간의 차이는 거의 없었으며(4%미만) 각 알고리즘이 가장 빠를 때의 수행시간을 비교하면 ET-MR이 TD-MR보다 34.5%, DT-MR보다 8.5% 더 빨랐으며, ET-MR-MR이 TD-MR-MR보다 65.3% 더 빨랐고, DT-MR-MR과는 비슷하였다. 공간의 경우 k=12,381일 때 ET-MR이 DT-MR보다 약 2.7배 더 사용했지만 TD-MR보다 98.5% 더 적게 사용하였고 k=65,536일 때 ET-MR-MR이 TD-MR-MR 보다 98.4%, DT-MR-MR보다 92.8% 더 적게 사용하였다.

JPV 소수 생성 알고리즘의 확률적 분석 및 성능 개선 (Probabilistic Analysis of JPV Prime Generation Algorithm and its Improvement)

  • 박희진;조호성
    • 한국정보과학회논문지:시스템및이론
    • /
    • 제35권2호
    • /
    • pp.75-83
    • /
    • 2008
  • Joye와 연구자들은 기존의 조합 소수 판단 검사에서 trial division 과정을 제거한 새로운 소수 생성 알고리즘 (이하 JPV 알고리즘)을 제시하였으며, 이 알고리즘이 기존의 조합 소수 생성 알고리즘에 비해 $30{\sim}40%$ 정도 빠르다고 주장하였다. 하지만 이 비교는 전체 수행시간이 아닌 Fermat 검사의 호출 횟수만을 비교한 것으로 정확한 비교와는 거리가 있다. 기존의 조합 소수 생성 알고리즘에 대해 이론적인 수행시간 예측 방법이 있음에도 불구하고 두 알고리즘의 전체 수행시간을 비교할 수 없었던 이유는 JPV 알고리즘에 대한 이론적인 수행 시간 예측 모델이 없었기 때문이다. 본 논문에서는 먼저 JPV 알고리즘을 확률적으로 분석하여 수행시간 예측 모델을 제시하고, 이 모델을 이용하여 JPV 알고리즘과 기존의 조차 소수 생성 알고리즘의 전체 수행시간을 비교한다. 이 모델을 이용하여 펜티엄4 시스템에서 512비트 소수의 생성 시간을 예측해 본 결과 Fermat 검사의 호출 횟수를 이용한 비교와는 달리 JPV 알고리즘이 기존의 조합 소수 생성 알고리즘보다 느리다는 결론을 얻었다. 이러한 이론적인 분석을 통한 비교는 실제 동일한 환경에서 실험을 통해서 검증되었다. 또한, 본 논문에서는 JPV 알고리즘의 성능 개선 방법을 제시한다. 이 방법을 사용하여 JPV 알고리즘을 개선하면 동일한 공간을 사용할 경우에 JPV 알고리즘이 기존의 조합 소수 생성 알고리즘과 비슷한 성능을 보인다.