Skip to main content
Log in

Factorization using binary decision diagrams

  • Published:
Cryptography and Communications Aims and scope Submit manuscript

Abstract

We address the factorization problem in this paper: Given an integer \(N=pq\), find two factors \(p\) and \(q\) of \(N\) such that \(p\) and \(q\) are of same bit-size. When we say integer multiplication of \(N\), we mean expressing \(N\) as a product of two factors \(p\) and \(q\) such that \(p\) and \(q\) are of same bit-size. We work on this problem in the light of Binary Decision Diagrams (BDD). A Binary Decision Diagram is an acyclic graph which can be used to represent Boolean functions. We represent integer multiplication of \(N\) as product of factors \(p\) and \(q\) using a BDD. Using various operations on the BDD we present an algorithm for factoring \(N\). All calculations are done over \(GF(2)\). We show that the number of nodes in the constructed BDD is \(\mathcal {O}(n^{3})\) where \(n\) is the number of bits in \(p\) or \(q\). We do factoring experiments for the case when \(p\) and \(q\) are primes as in the case of RSA modulus \(N\), and report on the observed complexity. The multiplication of large RSA numbers (that cannot be factored fast in practice) can still be easily represented as a BDD.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7
Fig. 8
Fig. 9

Similar content being viewed by others

References

  1. Leighton, F.T., Shor, P.W. (eds.): Proceedings of the Twenty-Ninth Annual ACM Symposium on the Theory of Computing, El Paso, Texas, USA, May 4–6, 1997. ACM, New York (1997)

    Google Scholar 

  2. Boneh, D.: Twenty years of attacks on the RSA cryptosystem. Not. AMS 46, 203–213 (1999)

    MathSciNet  MATH  Google Scholar 

  3. Pomerance, C.: The quadratic sieve factoring algorithm. In: Advances in Cryptology: Proceedings of EUROCRYPT 84, A, Workshop on the Theory and Application of of Cryptographic Techniques, Paris, France, April 9–11, 1984, Proceedings, pp. 169–182 (1984), https://doi.org/10.1007/3-540-39757-4_17

  4. Lenstra, A.K., et al.: The number field sieve. In: Proceedings of the 22nd Annual ACM Symposium on Theory of Computing, May 13–17, 1990, Baltimore, Maryland, USA, pp. 564–572 (1990), https://doi.org/10.1145/100216.100295. http://doi.acm.org/10.1145/100216.100295.,

  5. Knuth, D.E.: The Art of Computer Programming, vol. 4. Addison-Wesley Professional (2009)

  6. Schilling, T.E., Raddum, H.: Solving compressed right hand side equation systems with linear absorption. In: Sequences and Their Applications - SETA 2012 - 7th International Conference, Waterloo, ON, Canada, June 4–8, 2012. Proceedings, pp. 291–302 (2012), https://doi.org/10.1007/978-3-642-30615-0_27

  7. Raddum, H., Kazymyrov, O.: Algebraic attacks using binary decision diagrams. In: Cryptography and Information Security in the Balkans - First International Conference, BalkanCryptSec 2014, Istanbul, Turkey, October 16–17, 2014, Revised Selected Papers, pp. 40–54 (2014), https://doi.org/10.1007/978-3-319-21356-9_4

  8. Minato, S.: π DD: a new decision diagram for efficient problem solving in permutation space. In: Theory and Applications of Satisfiability Testing - SAT, 2011 - 14th International Conference, SAT 2011, Ann Arbor, MI, USA, June 19–22, 2011. Proceedings, pp. 90–104 (2011), https://doi.org/10.1007/978-3-642-21581-0_9

  9. Burch, J.R.: Using BDDs to verify multipliers. In: Proceedings of the 28th Design Automation Conference, San Francisco, California, USA, June 17–21, 1991, pp. 408–412 (1991), https://doi.org/10.1145/127601.127703. http://doi.acm.org/10.1145/100216.100295.

  10. Rudell, R.: Dynamic variable ordering for ordered binary decision diagrams. In: Proceedings of the 1993 IEEE/ACM International Conference on Computer-Aided Design, 1993, Santa Clara, California, USA, November 7–11, 1993, pp. 42–47 (1993), https://doi.org/10.1109/ICCAD.1993.580029

  11. Bollig, B., Wegener, I.: Improving the variable ordering of OBDDs is NP-complete. IEEE Trans. Computers 45(9), 993–1002 (1996). https://doi.org/10.1109/12.537122

    Article  MATH  Google Scholar 

  12. Bryant, R.E.: Graph-based algorithms for boolean function manipulation. IEEE Trans. Computers 35(8), 677–691 (1986). https://doi.org/10.1109/TC.1986.1676819

    Article  MATH  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Håvard Raddum.

Additional information

This article is part of the Topical Collection on Special Issue: Mathematical Methods for Cryptography

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Raddum, H., Varadharajan, S. Factorization using binary decision diagrams. Cryptogr. Commun. 11, 443–460 (2019). https://doi.org/10.1007/s12095-018-0304-7

Download citation

  • Received:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s12095-018-0304-7

Keywords

Mathematics Subject Classification (2010)

Navigation