Dokument se učitava


School of Electrical and Computer Engineering of Applied Studies


Designing Software Security Mechanisms Course code: 317204 | 8 ECTS credits

Basic information
Level of Studies: Master applied studies
Year of Study: 1
Semester: 1
Requirements: Knowledge of the basic concepts of information security and Python programming language.
Goal: Introduction to basic theoretical concepts and practical skills in the field of software security mechanisms development.
Outcome: Students will be able to critically analyze software products from the security point of view, identify vulnerabilities, and design security mechanisms and security attack-resistant software products.
Contents of the course
Theoretical instruction:
  1. Security by design.
  2. Software testing approaches.
  3. Security mechanisms based on applied intelligence and machine learning.
  4. Context-free grammars.
  5. Basic genetic algorithm.
  6. Markov chains.
  7. An approach to fuzzy software testing.
  8. Social network analysis using graph algorithms.
  9. Graph random walk, breadth first search and depth first search.
  10. Blockchain technology.
  11. Spam filtering with Naive Bayes.
  12. Biometric systems, iris recognition, face recognition.
  13. Information theory basics, error correction codes, interleavers.
  14. Cancelable biometrics and biometric template security.
  15. Biometric cryptosystems.
Practical instruction (Problem solving sessions/Lab work/Practical training):
  1. Follows theoretical lessons and takes place in a computer lab.
Textbooks and References
  1. TJ. O’Connor (2013): "Violent Python – A Cookbook for Hackers, Forensic Analysts, Penetration Testers and Security Engineers". Elsevier.
Number of active classes (weekly)
Lectures: 3
Practical classes: 3
Other types of classes: 0
Grading (maximum number of points: 100)
Pre-exam obligations
activities during lectures
activities on practial excersises
seminary work
Final exam
Written exam
Oral exam