DOI QR코드

DOI QR Code

Integer Factorization Algorithm of Pollard's Rho Based on Multiple Initial Values

다중 초기치 Pollards's Rho 소인수분해 알고리즘

  • Lee, Sang-Un (Dept. of Multimedia Eng., Gangneung-Wonju National University)
  • 이상운 (강릉원주대학교 과학기술대학 멀티미디어공학과)
  • Received : 2017.10.11
  • Accepted : 2017.12.08
  • Published : 2017.12.31

Abstract

This paper deals with integer factorization of two prime p,q of SHA-256 secure hash value n for Bit coin mining. This paper proposes an algorithm that greatly reduces the execution time of Pollard's rho integer factorization algorithm. Rho(${\rho}$) algorithm computes $x_i=x^2_{i-1}+1(mod\;n)$ and $y_i=[(y^2_{i-1}+1)^2+1](mod\;n)$ for intial values $(x_0,y_0)=(2,2)$ to find the factor 1 < $gcd({\mid}x_i-y_i{\mid},n)$ < n. It however fails to factorize some particular composite numbers. The algorithm proposed in this paper applies multiple initial values $(x_0,y_0)=(2^k,2^k)$ and ($2^k,2$), $2{\leq}k{\leq}10$ to the existing Pollard's Rho algorithm. As a results, the proposed algorithm achieves both the factorization of all the composite numbers and the reduction of the execution time of Pollard's Rho by 67.94%.

본 논문은 비트코인 채굴에 필요한 SHA-256 암호 해시 값(n)을 구성하는 2개의 소수(p,q)를 빠르게 해독하는 소인수분해법을 다룬다. 본 논문에서는 Pollard's Rho 소인수분해 알고리즘의 수행횟수를 월등히 감소시킨 알고리즘을 제안하였다. Rho (${\rho}$) 알고리즘은 $(x_0,y_0)=(2,2)$ 초기치에 대해 $x_i=x^2_{i-1}+1(mod\;n)$$y_i=[(y^2_{i-1}+1)^2+1](mod\;n)$을 계산하여 1 < $gcd({\mid}x_i-y_i{\mid},n)$ < n으로 소인수를 구한다. 이 알고리즘은 특정 합성수에 대해서는 소인수 분해에 실패할 수 있다. 제안된 알고리즘은 Pollard Rho 알고리즘에 $(x_0,y_0)=(2^k,2^k)$와 ($2^k,2$), $2{\leq}k{\leq}10$을 적용하였다. 그 결과 모든 합성수에 대해 소인수분해를 할 수 있었으며, Pollard Rho 알고리즘의 수행횟수를 67.94% 감소시켰다.

Keywords

References

  1. T. H. Cormen, C. E. Leiserson, R. L. Rivest, and C. Stein, "Introduction to Algorithms, Section 31.7 The RSA Public-key Cryptosystem," 2nd Ed., MIT Press and McGraw-Hill. pp. 881-887, 2001. ISBN: 9780262533058
  2. D. R. Stinson, "Cryptography: Theory and Practice," 3rd ed., London, CRC Press, 2005. ISBN: 97815848850852006
  3. C. Barnes, "Integer Factorization Algorithms," Department of Physics, Oregon State University, 2004.
  4. J. M. Pollard, "A Monte Carlo Method for Factorization," Bit Numerical Mathematics (BIT), Vol. 15, No. 3, pp. 331-334, Sep. 1975. doi:10.1007/BF01933667
  5. K. Rosen, "Discrete Mathematics and It's Applications," 6th Ed., McGrew-Hill, 2011. ISBN-10: 0072899050
  6. R. Montenegro, "Lecture Notes on Pollard's Rho", http://ravimontenegro.com/92.360/PollardRho.pdf, 2011.
  7. R. P. Brent, "An Improved Monte Carlo Factorization Algorithm," Bit Numerical Mathematics (BIT), Vol. 20, No. 2, pp. 176-184, Jun. 1980. doi:10.1007/BF01933190
  8. S. U. Lee, "Multiple Parallel-Pollard's Rho Discrete Logarithm Algorithm," Journal of The Korea Society of Computer and Information (KSCI), Vol. 20 No. 8, pp. 29-33, Aug. 2015. doi:10.9708/jksci.2015.20.8.029