Skip to main content
Erschienen in:
Buchtitelbild

2020 | OriginalPaper | Buchkapitel

Learning and Grading Cryptology via Automated Test Driven Software Development

Aktivieren Sie unsere intelligente Suche, um passende Fachinhalte oder Patente zu finden.

search-config
loading …

Abstract

Understanding common cryptological concepts like encryption, hashing, signatures, and certificates is a prerequisite when working as an IT security professional but it is also a major challenge in security education. Often students struggle with cryptology as sound previous mathematical knowledge is required and study time is limited. Teachers face the problem to fairly assess the students’ knowledge and understanding of cryptology. The paper presents an approach to face these challenges by utilizing test driven software development techniques for students who have taken courses in programming and theoretical cryptology. The paper describes the practical experience gained in courses with ~30 students utilizing a specialized client-server system to automate the tests. We propose that this setup is beneficial for learning as it gives immediate feedback and allows students to focus on the erroneous parts of their software. The test cases can also be used to grade students’ code by weighting the test cases e.g. in an exam setting.

Sie haben noch keine Lizenz? Dann Informieren Sie sich jetzt über unsere Produkte:

Springer Professional "Wirtschaft+Technik"

Online-Abonnement

Mit Springer Professional "Wirtschaft+Technik" erhalten Sie Zugriff auf:

  • über 102.000 Bücher
  • über 537 Zeitschriften

aus folgenden Fachgebieten:

  • Automobil + Motoren
  • Bauwesen + Immobilien
  • Business IT + Informatik
  • Elektrotechnik + Elektronik
  • Energie + Nachhaltigkeit
  • Finance + Banking
  • Management + Führung
  • Marketing + Vertrieb
  • Maschinenbau + Werkstoffe
  • Versicherung + Risiko

Jetzt Wissensvorsprung sichern!

Springer Professional "Technik"

Online-Abonnement

Mit Springer Professional "Technik" erhalten Sie Zugriff auf:

  • über 67.000 Bücher
  • über 390 Zeitschriften

aus folgenden Fachgebieten:

  • Automobil + Motoren
  • Bauwesen + Immobilien
  • Business IT + Informatik
  • Elektrotechnik + Elektronik
  • Energie + Nachhaltigkeit
  • Maschinenbau + Werkstoffe




 

Jetzt Wissensvorsprung sichern!

Springer Professional "Wirtschaft"

Online-Abonnement

Mit Springer Professional "Wirtschaft" erhalten Sie Zugriff auf:

  • über 67.000 Bücher
  • über 340 Zeitschriften

aus folgenden Fachgebieten:

  • Bauwesen + Immobilien
  • Business IT + Informatik
  • Finance + Banking
  • Management + Führung
  • Marketing + Vertrieb
  • Versicherung + Risiko




Jetzt Wissensvorsprung sichern!

Anhänge
Nur mit Berechtigung zugänglich
Fußnoten
1
Galois Counter Mode = modern block mode for symmetric ciphers like AES which allows for encryption and authentication of data.
 
2
Note that some encryption schemes like Playfair in combination with certain padding schemas can yield different decrypted ciphertexts than the original plaintext.
 
3
If you are interested, please contact the author. Note that the material is currently only available in German.
 
Literatur
1.
Zurück zum Zitat Edwards, S., Pérez-Quiñones, M.: Experiences using test-driven development with an automated grader. J. Comput. Sci. Coll. 22(3), 44–50 (2007) Edwards, S., Pérez-Quiñones, M.: Experiences using test-driven development with an automated grader. J. Comput. Sci. Coll. 22(3), 44–50 (2007)
2.
Zurück zum Zitat Beck, K.: Test-Driven Development: By Example. Addison Wesley, Boston (2002) Beck, K.: Test-Driven Development: By Example. Addison Wesley, Boston (2002)
4.
Zurück zum Zitat Iffländer, L., et al.: PABS – a programming assignment feedback system. In: Proceedings of the 2nd Workshop Automatische Bewertung von Programmieraufgaben (2015) Iffländer, L., et al.: PABS – a programming assignment feedback system. In: Proceedings of the 2nd Workshop Automatische Bewertung von Programmieraufgaben (2015)
5.
Zurück zum Zitat Isong, J.: Developing an automated program checker. J. Comput. Small Coll. 16(3), 218–224 (2001) Isong, J.: Developing an automated program checker. J. Comput. Small Coll. 16(3), 218–224 (2001)
6.
Zurück zum Zitat Krusche, S., Seitz, A.: ArTEMiS - an automatic assessment management system for interactive learning. SIGCSE 2018, 21–24 February, Baltimore, MD, USA (2018) Krusche, S., Seitz, A.: ArTEMiS - an automatic assessment management system for interactive learning. SIGCSE 2018, 21–24 February, Baltimore, MD, USA (2018)
7.
Zurück zum Zitat Herres, B., Oechsle, R., Schuster, D.: Der Grader ASB. In: Herausgeber Oliver, J. et al. Automatisierte Bewertung in der Programmierausbildung, pp. 255–271. Waxmann-Verlag (2017) Herres, B., Oechsle, R., Schuster, D.: Der Grader ASB. In: Herausgeber Oliver, J. et al. Automatisierte Bewertung in der Programmierausbildung, pp. 255–271. Waxmann-Verlag (2017)
8.
Zurück zum Zitat Schuster, D., et al.: Automatische Bewertung von JavaFX-Anwendungen. In: Proceedings of the 3rd Workshop Automatische Bewertung von Programmieraufgaben (2017) Schuster, D., et al.: Automatische Bewertung von JavaFX-Anwendungen. In: Proceedings of the 3rd Workshop Automatische Bewertung von Programmieraufgaben (2017)
9.
Zurück zum Zitat Knudsen, K.: Java Cryptography. O’Reilly, Sebastopol (1998)MATH Knudsen, K.: Java Cryptography. O’Reilly, Sebastopol (1998)MATH
10.
Zurück zum Zitat Weiss, J.: Java Cryptography Extensions, 1st edn. Morgan Kaufmann, Burlington (2004)MATH Weiss, J.: Java Cryptography Extensions, 1st edn. Morgan Kaufmann, Burlington (2004)MATH
12.
Zurück zum Zitat Lazar, D., et al.: Why does cryptographic software fail? A case study and open problems. In: Proceedings of 5th Asia-Pacific Workshop on Systems, pp. 1–7 (2014) Lazar, D., et al.: Why does cryptographic software fail? A case study and open problems. In: Proceedings of 5th Asia-Pacific Workshop on Systems, pp. 1–7 (2014)
13.
Zurück zum Zitat Kahn, D.: The Codebreakers: The Comprehensive History of Secret Communication from Ancient Times to the Internet. Scribner, New York (1996) Kahn, D.: The Codebreakers: The Comprehensive History of Secret Communication from Ancient Times to the Internet. Scribner, New York (1996)
14.
Zurück zum Zitat Stinson, D., Paterson, M.: Cryptography: Theory and Practice, 4th edn. CRC, Boca Raton (2018)CrossRef Stinson, D., Paterson, M.: Cryptography: Theory and Practice, 4th edn. CRC, Boca Raton (2018)CrossRef
15.
Zurück zum Zitat Hook, D.: Beginning Cryptography with Java. Wrox, Birmingham (2005) Hook, D.: Beginning Cryptography with Java. Wrox, Birmingham (2005)
17.
Zurück zum Zitat Long, F., et al.: The CERT Oracle Secure Coding Standard for Java. Addison-Wesley, Boston (2011) Long, F., et al.: The CERT Oracle Secure Coding Standard for Java. Addison-Wesley, Boston (2011)
18.
Zurück zum Zitat McGraw, G.: Software Security – Building Security. Addison-Wesley, Boston (2006)CrossRef McGraw, G.: Software Security – Building Security. Addison-Wesley, Boston (2006)CrossRef
19.
Zurück zum Zitat Desai, C., Janzen, D.: Savage, K: A survey of evidence for test-driven development in academia. ACM SIGCSE Bull. 40, 97–101 (2008)CrossRef Desai, C., Janzen, D.: Savage, K: A survey of evidence for test-driven development in academia. ACM SIGCSE Bull. 40, 97–101 (2008)CrossRef
20.
Zurück zum Zitat Braga, A., Schwab, D., Vannucci, A.: The use of acceptance test-driven development in the construction of cryptographic software. In: 9th International Conference on Emerging Security Information, Systems and Technologies (2015) Braga, A., Schwab, D., Vannucci, A.: The use of acceptance test-driven development in the construction of cryptographic software. In: 9th International Conference on Emerging Security Information, Systems and Technologies (2015)
21.
Zurück zum Zitat Takanen, A., DeMott, J., Miller, C.: Fuzzing for Software Security Testing and Quality Assurance. Artech House, Norwood (2008)MATH Takanen, A., DeMott, J., Miller, C.: Fuzzing for Software Security Testing and Quality Assurance. Artech House, Norwood (2008)MATH
22.
Zurück zum Zitat Aumasson, J., Romaillerm, Y.: Automated testing of crypto software using differential fuzzing. In: Blackhat Conference, US (2017) Aumasson, J., Romaillerm, Y.: Automated testing of crypto software using differential fuzzing. In: Blackhat Conference, US (2017)
Metadaten
Titel
Learning and Grading Cryptology via Automated Test Driven Software Development
verfasst von
Konstantin Knorr
Copyright-Jahr
2020
DOI
https://doi.org/10.1007/978-3-030-59291-2_1

Premium Partner