Restriction site analysis involves determining the locations of restriction sites after the process of digestion by reconstructing their positions based on the lengths of the cut DNA. Using different reaction times with a single enzyme to cut DNA is a technique known as a partial digestion. Determining the exact locations of restriction sites following a partial digestion is challenging due to the computational time required even with the best known practical algorithm. In this paper, we introduce an efficient algorithm to find the exact solution for the partial digest problem. The algorithm is able to find all possible solutions for the input and works by traversing the solution tree with a breadth-first search in two stages and deleting all repeated subproblems. Two types of simulated data, random and Zhang, are used to measure the efficiency of the algorithm. We also apply the algorithm to real data for the Luciferase gene and the E. coli K12 genome. Our algorithm is a fast tool to find the exact solution for the partial digest problem. The percentage of improvement is more than 75% over the best known practical algorithm for the worst case. For large numbers of inputs, our algorithm is able to solve the problem in a suitable time, while the best known practical algorithm is unable.
The RSA (Rivest–Shamir–Adleman) asymmetric-key cryptosystem is widely used for encryptions and digital signatures. Let be the RSA public key and d be the corresponding private key (or private exponent). One of the attacks on RSA is to find the private key d using continued fractions when d is small. In this paper, we present a new technique to improve a small private exponent attack on RSA using continued fractions and multicore systems. The idea of the proposed technique is to find an interval that contains and then propose a method to generate different points in the interval that can be used by continued fraction and multicore systems to recover the private key, where is Euler’s totient function. The practical results of three small private exponent attacks on RSA show that we extended the previous bound of the private key that is discovered by continued fractions. When n is 1024 bits, we used 20 cores to extend the bound of d by for de Weger, Maitra-Sarkar, and Nassr et al. attacks in average times 7.67 h, 2.7 h, and 44 min, respectively.
24 August 2017 in Arabian Journal for Science and Engineering
Factoring a composite odd integer into its prime factors is one of the security problems for some public-key cryptosystems such as the Rivest-Shamir-Adleman cryptosystem. Many strategies have been proposed to solve factorization problem in a fast running time. However, the main drawback of the algorithms used in such strategies is the high computational time needed to find prime factors. Therefore, in this study, we focus on one of the factorization algorithms that is used when the two prime factors are of the same size, namely, the Fermat factorization (FF) algorithm. We investigate the performance of the FF method using three parameters: (1) the number of bits for the composite odd integer, (2) size of the difference between the two prime factors, and (3) number of threads used. The results of our experiments in which we used different parameters values indicate that the running time of the parallel FF algorithm is faster than that of the sequential FF algorithm. The maximum speed up achieved by the parallel FF algorithm is 6.7 times that of the sequential FF algorithm using 12 cores. Moreover, the parallel FF algorithm has near-linear scalability.