Skip to main content

RAPID-FeinSPN: A Rapid Prototyping Framework for Feistel and SPN-Based Block Ciphers

  • Conference paper
Information Systems Security (ICISS 2013)

Part of the book series: Lecture Notes in Computer Science ((LNSC,volume 8303))

Included in the following conference series:

Abstract

In this paper we propose RAPID-FeinSPN, an extensible framework designed for rapid prototyping of Feistel Network and Substitution-Permutation Network (SPN) based symmetric ciphers. The framework tries to bridge the gap between the designer of cryptographic schemes and the VLSI implementation engineers of that cryptographic systems. Using a GUI-based interface the user has the freedom either to choose a well-known Feistel or SPN based cryptosystem for implementation or to specify the configuration of a new cipher. RAPID-FeinSPN supports multiple configurations of cryptographic settings and using the modular design principles generates a customized C code as well as a customized hardware implementation without significant performance degradation. This approach allows a quick hardware resource estimation, early functional validation of desirable cipher properties and can be used for benchmarking various design parameters of a cipher that vary in terms of security, complexity or both for a security-throughput trade-off. We have implemented some well known block ciphers using RAPID-FeinSPN and benchmarked the performance against software as well as hardware implementations.

The work of this author was done in part during his visit at RWTH Aachen, Germany as an Alexander von Humboldt Fellow.

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

Access this chapter

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

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Tillich, S.: Instruction Set Extensions for Support of Cryptography on Embedded Systems. PhD thesis, Graz University of Technology, Austria (2008), https://online.tugraz.at/tug_online/voe_main2.getvolltext?pCurrPk=39243

  2. Constantin, J., Burg, A., Gürkaynak, F.: Investigating the potential of custom instruction set extensions for SHA-3 candidates on a 16-bit microcontroller architecture. Cryptology ePrint Archive, Report 2012/050 (2012), http://eprint.iacr.org/2012/050

  3. Guo, X., Srivastav, M., Huang, S., Ganta, D., Henry, M.B., Nazhandali, L., Schaumont, P.: ASIC implementations of five SHA-3 finalists. In: IEEE DATE 2012, pp. 1006–1011 (2012)

    Google Scholar 

  4. Tensilica (now part of Cadence), http://tensilica.com

  5. Synopsys DesignWare ARC Configurable Cores, http://www.synopsys.com .

  6. Synopsys Processor Designer, http://www.synopsys.com/Systems/BlockDesign/processorDev/Pages/default.aspx

  7. Shahzad, K., Khalid, A., Rákossy, Z.E., Paul, G., Chattopadhyay, A.: CoARX: a coprocessor for ARX-based cryptographic algorithms. In: Proceedings of the 50th Annual Design Automation Conference (DAC 2013) (2013), doi:10.1145/2463209.2488898

    Google Scholar 

  8. Chattopadhyay, A., Paul, G.: Exploring security-performance trade-offs during hardware accelerator design of stream cipher RC4. In: 20th International Conference on VLSI and System-on-Chip (VLSI-SoC 2012). IEEE (2012)

    Google Scholar 

  9. Gupta, S.S., Chattopadhyay, A., Khalid, A.: Designing integrated accelerator for stream ciphers with structural similarities. Cryptography and Communications 5(1), 19–47 (2013)

    Article  MathSciNet  MATH  Google Scholar 

  10. Sen Gupta, S., Chattopadhyay, A., Khalid, A.: HiPAcc-LTE: an integrated high performance accelerator for 3GPP LTE stream ciphers. In: Bernstein, D.J., Chatterjee, S. (eds.) INDOCRYPT 2011. LNCS, vol. 7107, pp. 196–215. Springer, Heidelberg (2011)

    Chapter  Google Scholar 

  11. Asanovic, K., Bodik, R., Catanzaro, B.C., Gebis, J.J., Husbands, P., Keutzer, K., Patterson, D.A., Plishker, W.L., Shalf, J., Williams, S.W., Yelick, K.A.: The landscape of parallel computing research: A view from berkeley. UCB/EECS-2006-183, EECS Department, University of California, Berkeley

    Google Scholar 

  12. Dubey, P.: Teraflops for the masses: Killer apps of tomorrow. In: Workshop on Edge Computing Using New Commodity Architectures (UNC), vol. 23 (2006)

    Google Scholar 

  13. Dworkin, M.: Recommendation for block cipher modes of operation. methods and techniques. In: NIST Special Publication 800-38A (2001)

    Google Scholar 

  14. SHA-3 Cryptographic Hash Algorithm Competition, http://csrc.nist.gov/groups/ST/hash/sha-3/index.html

  15. Ferguson, N., Lucks, S., Schneier, B., Whiting, D., Bellare, M., Kohno, T., Callas, J., Walker, J.: The Skein Hash Function Family, Version 1.3 (October 2010), http://www.skein-hash.info/sites/default/files/skein1.3.pdf

  16. Aumasson, J., Henzen, L., Meier, W., Phan, R.: SHA-3 proposal BLAKE ver 1.3 (2010), https://www.131002.net/blake

  17. ISO/IEC 9797-1: Authentication Codes (MACs) Part 1: Mechanisms using a block cipher. In: Information Technology-Security Techniques (1999)

    Google Scholar 

  18. ISO/IEC 9797-2: Authentication Codes (MACs) Part 2: Mechanisms using a dedicated hashfunction. In: Information Technology-Security Techniques (1999)

    Google Scholar 

  19. eSTREAM: the ECRYPT Stream Cipher Project, http://www.ecrypt.eu.org/stream

  20. Bernstein, D.J.: The Salsa20 family of stream ciphers. In: Robshaw, M., Billet, O. (eds.) New Stream Cipher Designs. LNCS, vol. 4986, pp. 84–97. Springer, Heidelberg (2008)

    Chapter  Google Scholar 

  21. Kammler, D., Zhang, D., Schwabe, P., Scharwaechter, H., Langenberg, M., Auras, D., Ascheid, G., Mathar, R.: Designing an ASIP for Cryptographic Pairings over Barreto-Naehrig Curves. In: Clavier, C., Gaj, K. (eds.) CHES 2009. LNCS, vol. 5747, pp. 254–271. Springer, Heidelberg (2009)

    Chapter  Google Scholar 

  22. Bernstein, D.J.: ChaCha, a variant of Salsa20. In: Workshop Record of SASC, The State of the Art of Stream Ciphers (2008), http://cr.yp.to/papers.html#chacha

  23. Berbain, C., et al.: sosemanuk, a fast software-oriented stream cipher. In: Robshaw, M., Billet, O. (eds.) New Stream Cipher Designs. LNCS, vol. 4986, pp. 98–118. Springer, Heidelberg (2008)

    Chapter  Google Scholar 

  24. Luby, M., Rackoff, C.: How to Construct Pseudorandom Permutations and Pseudorandom Functions. SIAM Journal on Computing 17(2), 373–386 (1988)

    Article  MathSciNet  MATH  Google Scholar 

  25. Bertoni, G., Daemen, J., Peeters, M., Van Assche, G.: Keccak sponge function family main document. Submission to NIST, round 3 (2011)

    Google Scholar 

  26. Advanced encryption standard. Federal Information Processing Standard, FIPS-197, 12 (2001)

    Google Scholar 

  27. Data encryption standard. National Bureau of Standards, U.S. Department of Commerce, Washington D.C., FIPS 46 (1977)

    Google Scholar 

  28. Shannon, C.E.: Communication theory of secrecy systems. Bell System Technical Journal 28(4), 656–715 (1949)

    Article  MathSciNet  MATH  Google Scholar 

  29. Zhang, X., Parhi, K.: High-speed VLSI architectures for the AES algorithm. IEEE Transactions on Very Large Scale Integration (VLSI) Systems 12(9), 957–967 (2004)

    Article  Google Scholar 

  30. Barkan, E., Biham, E.: In How Many Ways Can You Write Rijndael? In: Zheng, Y. (ed.) ASIACRYPT 2002. LNCS, vol. 2501, pp. 160–175. Springer, Heidelberg (2002)

    Chapter  Google Scholar 

  31. Ernst, M., Klupsch, S., Hauck, O., Huss, S.A.: Rapid Prototyping for Hardware Accelerated Elliptic Curve Public-Key Cryptosystems. In: Proceedings of the 12th International Workshop on Rapid System Prototyping (RSP 2001) (2001)

    Google Scholar 

  32. Khovratovich, D., Nikolić, I.: Rotational cryptanalysis of ARX. In: Hong, S., Iwata, T. (eds.) FSE 2010. LNCS, vol. 6147, pp. 333–346. Springer, Heidelberg (2010)

    Chapter  Google Scholar 

  33. Leurent, G.: ARX Toolkit, http://www.di.ens.fr/~leurent/arxtools.html

  34. Mouha, N., Velichkov, V., De Canniére, C., Preneel, B.: S-function Toolkit, http://www.ecrypt.eu.org/tools/s-function-toolkit

  35. Fujii, M., Torigai, M.: Data transfer method, communication system and storage medium. In US Patent US6038321 A (March 14, 2000)

    Google Scholar 

  36. Daemen, J., Govaerts, R., Vandewalle, J.: A New Approach to Block Cipher Design. In: Anderson, R. (ed.) FSE 1993. LNCS, vol. 809, pp. 18–32. Springer, Heidelberg (1994)

    Chapter  Google Scholar 

  37. Daemen, J.: Cipher and Hash Function Design: Strategies based on linear and differential cryptanalysis (Ph.D. Dissertation), ch. 7. Katholieke Universiteit Leuven (1994)

    Google Scholar 

  38. Álvarez Marańón, G., Fúster Sabater, A., Guía Martínez, D., Montoya Vitini, F., Peinado Domínguez, A.: Akelarre: a New Block Cipher Algorithm. In: Proceedings of SAC 1996, Third Annual Workshop on Selected Areas in Cryptography, Queen’s University, Kingston, Ontario, pp. 1–14 (1996)

    Google Scholar 

  39. Rijmen, V., Daemen, J., Preneel, B., Bosselaers, A., De Win, E.: The Cipher SHARK. In: Gollmann, D. (ed.) FSE 1996. LNCS, vol. 1039, pp. 99–111. Springer, Heidelberg (1996)

    Chapter  Google Scholar 

  40. Daemen, J., Rijmen, V.: The Design of Rijndael: AES–The Advanced Encryption Standard. Springer (2002) ISBN 3-540-42580-2

    Google Scholar 

  41. Daemen, J., Knudsen, L.R., Rijmen, V.: The Block Cipher Square. In: Biham, E. (ed.) FSE 1997. LNCS, vol. 1267, pp. 149–165. Springer, Heidelberg (1997)

    Chapter  Google Scholar 

  42. Biham, E., Anderson, R.J., Knudsen, L.R.: Serpent: A new block cipher proposal. In: Vaudenay, S. (ed.) FSE 1998. LNCS, vol. 1372, pp. 222–238. Springer, Heidelberg (1998)

    Chapter  Google Scholar 

  43. Lim, C.H.: CRYPTON: A new 128-bit Block Cipher. NIST AES Proposal (1998)

    Google Scholar 

  44. Rijmen, V., Barreto, P.S.L.M.: The ANUBIS Block Cipher. New European Schemes for Signatures, Integrity, and Encryption (NESSIE) (2000)

    Google Scholar 

  45. Barreto, P.S.L.M., Rijmen, V.: The Khazad Legacy-level Block Cipher. In: First open NESSIE Workshop, p. 15 (2000)

    Google Scholar 

  46. Ohkuma, K., Muratani, H., Sano, F., Kawamura, S.: The Block Cipher Hierocrypt. In: Stinson, D.R., Tavares, S. (eds.) SAC 2000. LNCS, vol. 2012, pp. 72–88. Springer, Heidelberg (2001)

    Chapter  Google Scholar 

  47. Daemen, J., Peeters, M., Van Assche, G., Rijmen, V.: Nessie Proposal: Noekeon (2000)

    Google Scholar 

  48. Standaert, F.-X., Piret, G., Rouvroy, G., Quisquater, J.-J., Legat, J.-D.: ICEBERG: An Involutional Cipher Efficient for Block Encryption in Reconfigurable Hardware. In: Roy, B., Meier, W. (eds.) FSE 2004. LNCS, vol. 3017, pp. 279–299. Springer, Heidelberg (2004)

    Chapter  Google Scholar 

  49. Nakahara Jr., J., Rijmen, V., Preneel, B., Vandewalle, J.: The MESH Block Ciphers. In: Chae, K.-J., Yung, M. (eds.) WISA 2003. LNCS, vol. 2908, pp. 458–473. Springer, Heidelberg (2004)

    Chapter  Google Scholar 

  50. Kwon, D., Kim, J., Park, S., Sung, S.H., Sohn, Y., Song, J.H., Yeom, Y., Yoon, E., Lee, S., Lee, J., Chee, S., Han, D., Hong, J.: New Block Cipher: ARIA. In: Lim, J.-I., Lee, D.-H. (eds.) ICISC 2003. LNCS, vol. 2971, pp. 432–445. Springer, Heidelberg (2004)

    Chapter  Google Scholar 

  51. Bogdanov, A.A., Knudsen, L.R., Leander, G., Paar, C., Poschmann, A., Robshaw, M., Seurin, Y., Vikkelsoe, C.: PRESENT: An Ultra-Lightweight Block Cipher. In: Paillier, P., Verbauwhede, I. (eds.) CHES 2007. LNCS, vol. 4727, pp. 450–466. Springer, Heidelberg (2007)

    Chapter  Google Scholar 

  52. Cheng, H., Heys, H.M., Wang, C.: PUFFIN: A Novel Compact Block Cipher Targeted to Embedded Digital Systems. In: 11th EUROMICRO Conference on Digital System Design Architectures, Methods and Tools, DSD 2008, pp. 383–390 (2008), doi:10.1109/DSD.2008.34.

    Google Scholar 

  53. Engels, D., Fan, X., Gong, G., Hu, H., Smith, E.M.: Hummingbird: Ultra-Lightweight Cryptography for Resource-Constrained Devices. In: Sion, R., Curtmola, R., Dietrich, S., Kiayias, A., Miret, J.M., Sako, K., Sebé, F. (eds.) RLCPS, WECSR, and WLC 2010. LNCS, vol. 6054, pp. 3–18. Springer, Heidelberg (2010)

    Chapter  Google Scholar 

  54. Knudsen, L., Leander, G., Poschmann, A., Robshaw, M.J.B.: PRINTcipher: A Block Cipher for IC-Printing. In: Mangard, S., Standaert, F.-X. (eds.) CHES 2010. LNCS, vol. 6225, pp. 16–32. Springer, Heidelberg (2010)

    Chapter  Google Scholar 

  55. Guo, J., Peyrin, T., Poschmann, A., Robshaw, M.: The LED Block Cipher. In: Preneel, B., Takagi, T. (eds.) CHES 2011. LNCS, vol. 6917, pp. 326–341. Springer, Heidelberg (2011)

    Chapter  Google Scholar 

  56. Gong, Z., Nikova, S., Law, Y.W.: KLEIN: A New Family of Lightweight Block Ciphers. In: Juels, A., Paar, C. (eds.) RFIDSec 2011. LNCS, vol. 7055, pp. 1–18. Springer, Heidelberg (2012)

    Chapter  Google Scholar 

  57. Borghoff, J., Canteaut, A., Güneysu, T., Kavun, E.B., Knezevic, M., Knudsen, L.R., Leander, G., Nikov, V., Paar, C., Rechberger, C., Rombouts, P., Thomsen, S.S., Yalçın, T.: PRINCE – A Low-Latency Block Cipher for Pervasive Computing Applications. In: Wang, X., Sako, K. (eds.) ASIACRYPT 2012. LNCS, vol. 7658, pp. 208–225. Springer, Heidelberg (2012)

    Chapter  Google Scholar 

  58. Chattopadhyay, A., Meyr, H., Leupers, R.: LISA: A Uniform ADL for Embedded Processor Modelling, Implementation and Software Toolsuite Generation. In: Mishra, P., Dutt, N. (eds.) Processor Description Languages, pp. 95–130. Morgan Kaufmann (2008)

    Google Scholar 

  59. Doeffinger, R.: AES C Implementation, stuff.mit.edu/afs/sipb/project/vlcplayer/old/src/ffmpeg/libavutil/

  60. Klose, D.: PRESENT C Implementation (32 bit), http://www.lightweightcrypto.org/implementations.php .

  61. Akinyele, J.A., et al.: Charm: A framework for rapidly prototyping cryptosystems. Journal of Cryptographic Engineering, 1–18 (2013)

    Google Scholar 

  62. Lacy, J.B., Donald, P.: Mitchell, and William M. Schell. CryptoLib: Cryptography in software. In: Proc. of Fourth USENIX Security Workshop, pp. 1–18 (1993)

    Google Scholar 

  63. SHA-3 Finalists Announced by NIST Blog post quoting NIST’s announcement in full, http://crypto.junod.info/2010/12/10/sha-3-finalists-announced-by-nist/

  64. Rolfes, C., Poschmann, A., Leander, G., Paar, C.: Ultra-lightweight implementations for smart devices security for 1000 gate equivalents. In: Grimaud, G., Standaert, F.-X. (eds.) CARDIS 2008. LNCS, vol. 5189, pp. 89–103. Springer, Heidelberg (2008)

    Chapter  Google Scholar 

  65. Satoh, A., Morioka, S., Takano, K., Munetoh, S.: Ultra-lightweight implementations for smart devices security for 1000 gate equivalents. In: Boyd, C. (ed.) ASIACRYPT 2001. LNCS, vol. 2248, pp. 239–254. Springer, Heidelberg (2001)

    Chapter  Google Scholar 

  66. Simple AES (Rijndael) IP Core, http://opencores.org/project,aes_core

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2013 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Khalid, A., Hassan, M., Chattopadhyay, A., Paul, G. (2013). RAPID-FeinSPN: A Rapid Prototyping Framework for Feistel and SPN-Based Block Ciphers. In: Bagchi, A., Ray, I. (eds) Information Systems Security. ICISS 2013. Lecture Notes in Computer Science, vol 8303. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-45204-8_13

Download citation

  • DOI: https://doi.org/10.1007/978-3-642-45204-8_13

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-642-45203-1

  • Online ISBN: 978-3-642-45204-8

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics