An improved parallel block Lanczos algorithm over GF(2) for integer factorization

Abstract RSA algorithm is one of the most popular and secure public key cryptographic algorithms and has been widely used in many real-life applications. The security of the RSA algorithm lies in the difficulty of factoring large integers efficiently and the General Number Field Sieve (GNFS) algorithm is the most efficient algorithm for factoring integers greater than 110 digits at present. In this paper, targeted to speed up the factorization process of RSA, we discuss the current research about solving large and sparse linear systems over GF(2), which is one of the most time-consuming steps of the GNFS algorithm. With that, we propose an improved parallel block Lanczos (IBL) algorithm to reduce the communication cost of solving large and sparse linear systems over GF(2). More specifically, we firstly re-implement the parallel block Lanczos algorithm from the BSP paradigm to Open MPI. To further improve the performance, we then reorganize and redesign the algorithm to reduce the synchronization and communication costs during the outer product step. After this, we integrate the improved parallel block Lanczos algorithm with the GNFS algorithm. Finally, theoretical and experimental results demonstrate that the IBL algorithm greatly enhances the performance of GNFS compared with previous parallel block Lanczos (PBL) algorithm, in terms of both execution time and speedup.

[1]  Javier Herranz,et al.  On the Efficiency of Revocation in RSA-Based Anonymous Systems , 2016, IEEE Transactions on Information Forensics and Security.

[2]  Kaushal K. Shukla,et al.  Heuristic algorithm based on molecules optimizing their geometry in a crystal to solve the problem of integer factorization , 2016, Soft Comput..

[3]  Cheng Chang,et al.  sRSA: High Speed RSA on the Intel MIC Architecture , 2015, 2015 IEEE 21st International Conference on Parallel and Distributed Systems (ICPADS).

[4]  Leslie G. Valiant,et al.  A bridging model for parallel computation , 1990, CACM.

[5]  Han-Yu Lin,et al.  Provably secure proxy convertible authenticated encryption scheme based on RSA , 2014, Inf. Sci..

[6]  H. W. Lenstra,et al.  Factoring integers with elliptic curves , 1987 .

[7]  Laurence T. Yang,et al.  An integrated parallel GNFS algorithm for integer factorization based on Linbox Montgomery block Lanczos method over GF(2) , 2010, Comput. Math. Appl..

[8]  Johannes A. Buchmann,et al.  An Implementation of the General Number Field Sieve , 1994, CRYPTO.

[9]  Athanasios V. Vasilakos,et al.  Cloud data integrity checking with an identity-based auditing mechanism from RSA , 2016, Future Gener. Comput. Syst..

[10]  Abhijit Das,et al.  Use of SIMD-based data parallelism to speed up sieving in integer-factoring algorithms , 2015, Appl. Math. Comput..

[11]  Brendan Vastenhouw,et al.  A Two-Dimensional Data Distribution Method for Parallel Sparse Matrix-Vector Multiplication , 2005, SIAM Rev..

[12]  Yehuda Lindell,et al.  Introduction to Modern Cryptography , 2004 .

[13]  Tanmoy Maitra,et al.  An Efficient and Robust RSA-Based Remote User Authentication for Telecare Medical Information Systems , 2014, Journal of Medical Systems.

[14]  Laurence T. Yang,et al.  Integer Factorization by a Parallel GNFS Algorithm for Public Key Cryptosystems , 2005, ICESS.

[15]  Richard P. Brent,et al.  Recent Progress and Prospects for Integer Factorisation Algorithms , 2000, COCOON.

[16]  Neelam Verma,et al.  Cryptanalytic Attacks and Countermeasures on RSA , 2013, SocProS.

[17]  Qi Wang,et al.  The Space Complexity Analysis in the General Number Field Sieve Integer Factorization , 2016, Theor. Comput. Sci..

[18]  P. L. Montgomery,et al.  A survey of modern integer factorization algorithms , 1994 .

[19]  Yuan Luo,et al.  A new construction of threshold cryptosystems based on RSA , 2016, Inf. Sci..

[20]  Marvin C. Wunderlich,et al.  A design for a number theory package with an optimized trial division routine , 1974, CACM.

[21]  Pascal Giorgi,et al.  Online order basis algorithm and its impact on the block Wiedemann algorithm , 2014, ISSAC.

[22]  Rob H. Bisseling,et al.  Parallel Scientific Computation , 2004 .

[23]  Tong Zhou,et al.  Performance modeling of hyper-scale custom machine for the principal steps in block Wiedemann algorithm , 2016, The Journal of Supercomputing.