Skip to main content

A Simulated Annealing Algorithm for the Problem of Minimal Addition Chains

  • Conference paper

Part of the book series: Lecture Notes in Computer Science ((LNAI,volume 7026))

Abstract

Cryptosystems require the computation of modular exponentiation, this operation is related to the problem of finding a minimal addition chain. However, obtaining the shortest addition chain of length n is an NP-Complete problem whose search space size is proportional to n!. This paper introduces a novel idea to compute the minimal addition chain problem, through an implementation of a Simulated Annealing (SA) algorithm. The representation used in our SA is based on Factorial Number System (FNS). We use a fine-tuning process to get the best performance of SA using a Covering Array (CA), Diophantine Equation solutions (DE) and Neighborhood Functions (NF). We present a parallel implementation to execute the fine-tuning process using a Message Passing Interface (MPI) and the Single Program Multiple Data (SPMD) model. These features, allowed us to calculate minimal addition chains for benchmarks considered difficult in very short time, the experimental results show that this approach is a viable alternative to solve the solution of the minimal addition chain problem.

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

Buying options

Chapter
USD   29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD   39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD   54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Learn about institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Michalewicz, Z.: Genetic Algorithms + Data Structures = Evolution Program, 3rd edn. Springer, Heidelberg (1996)

    Book  MATH  Google Scholar 

  2. Nedjah, N., de Macedo Mourelle, L.: Minimal Addition Chain for Efficient Modular Exponentiation Using Genetic Algorithms. In: Hendtlass, T., Ali, M. (eds.) IEA/AIE 2002. LNCS (LNAI), vol. 2358, pp. 88–98. Springer, Heidelberg (2002)

    Chapter  Google Scholar 

  3. Gordon, D.M.: A Survey of Fast Exponentiation Methods. Journal of Algorithms, 129–146 (1998)

    Google Scholar 

  4. Downey, P., Leong, B., Sethi, R.: Computing Sequences with Addition Chains”. SIAM Journal on Computing, 638–646 (1981)

    Google Scholar 

  5. Cruz-Cortés, N., Rodríguez-Henríquez, F., Juárez-Morales, R., Coello Coello, C.A.: Finding Optimal Addition Chains Using a Genetic Algorithm Approach. In: Hao, Y., Liu, J., Wang, Y.-P., Cheung, Y.-m., Yin, H., Jiao, L., Ma, J., Jiao, Y.-C. (eds.) CIS 2005. LNCS (LNAI), vol. 3801, pp. 208–215. Springer, Heidelberg (2005)

    Chapter  Google Scholar 

  6. de Castro, L.N., Timmis, J.: An Introduction to Artificial, Immune Systems: A New Computational Intelligence Paradigm. Springer, Heidelberg (2002) ISBN: 978-1-85233-594-6

    MATH  Google Scholar 

  7. Nedjah, N., Mourelle, L.M.: Efficient Pre-processing for Large Window-Based Modular Exponentiation Using Genetic Algorithms. In: Chung, P.W.H., Hinde, C.J., Ali, M. (eds.) IEA/AIE 2003. LNCS, vol. 2718, pp. 165–194. Springer, Heidelberg (2003)

    Google Scholar 

  8. Bos, J.N.E., Coster, M.J.: Addition Chain Heuristics. In: Brassard, G. (ed.) CRYPTO 1989. LNCS, vol. 435, pp. 400–407. Springer, Heidelberg (1990)

    Google Scholar 

  9. Bleichenbacher, D., Flammenkamp, A.: An efficient Algorithm for Computing Shortest Additions Chains, Bell Labs (1997), http://www.homes.uni-bielefeld.de/achim/ac.ps.gz

  10. Bergeron, F., Berstel, J., Brlek, S.: Efficient Computation of Addition Chains. Journal de Théorie des Nombres de Bordeaux tome 6, 21–38 (1994)

    Article  MathSciNet  MATH  Google Scholar 

  11. Lopez-Escogido, D., Torres-Jimenez, J., Rodriguez-Tello, E., Rangel-Valdez, N.: Strength Two Covering Arrays Construction Using a SAT Representation. In: Gelbukh, A., Morales, E.F. (eds.) MICAI 2008. LNCS (LNAI), vol. 5317, pp. 44–53. Springer, Heidelberg (2008)

    Chapter  Google Scholar 

  12. Quinn Reference, M.J.: Parallel Programming in C with MPI and OpenMP. Mc Graw Hill Higher Education (2004) ISBN 0-07-282256-2

    Google Scholar 

  13. Grabysz, A.D., Rabenseifner, R.: Nesting OpenMP in MPI to Implement a Hybrid Communication Method of Parallel Simulated Annealing on a Cluster of SMP Nodes. In: Nagel, W.E., Walter, W.V., Lehner, W. (eds.) Euro-Par 2006. LNCS, vol. 4128, pp. 1075–1084. Springer, Heidelberg (2006)

    Chapter  Google Scholar 

  14. Strout, M.M., Kreaseck, B., Hovland, P.D.: Data-Flow Analysis for MPI Programs. In: IEEE Computer Society, International Conference on Parallel Processing, pp. 175–184. IEEE Compurer Society (2006) ISBN 0-7695-2636-5

    Google Scholar 

  15. Thurber, E.W.: Shortest Addition Chains, http://wwwhomes.uni-bielefeld.de/achim/addition_chain.html

  16. Laisan, C.A.: Sur la Numeration Factorielle, Application Aux Permutations. Bulletin de la Societe Mathematique de France, 176–183 (1888)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2011 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Jose-Garcia, A., Romero-Monsivais, H., Hernandez-Morales, C.G., Rodriguez-Cristerna, A., Rivera-Islas, I., Torres-Jimenez, J. (2011). A Simulated Annealing Algorithm for the Problem of Minimal Addition Chains. In: Antunes, L., Pinto, H.S. (eds) Progress in Artificial Intelligence. EPIA 2011. Lecture Notes in Computer Science(), vol 7026. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-24769-9_23

Download citation

  • DOI: https://doi.org/10.1007/978-3-642-24769-9_23

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-642-24768-2

  • Online ISBN: 978-3-642-24769-9

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics