Biometric information systems and software security ( javawebbio | 35 hours )

Overview:

The course introduces security components of Standard Java Edition, which is preceded with the foundations of cryptography, providing a common baseline for understanding the purpose and the operation of the applicable components. The use of all components is presented through practical exercises, where participants can try out the discussed APIs and tools for themselves.

Finally, the course explains the most frequent and severe programming flaws of the Java language and platform. Besides the typical bugs committed by Java programmers, the introduced security vulnerabilities cover both language-specific issues and problems stemming from the runtime environment. All vulnerabilities and the relevant attacks are demonstrated through easy-to-understand exercises, followed by the recommended coding guidelines and the possible mitigation techniques.

Spring Boot is a Java framework for building RESTful APIs and microservices. React is a Javascript library that provides flexibility in integrating with other frameworks for sharing features. Redux is a JavaScript library for managing application states and building interfaces. With Spring Boot, React, and Redux, the user will have the toolkit required to build functional front-end and back-end web applications.

The last part of the course presents an introduction to biometrics, the study of recognizing individuals based on their unique physical or behavioral traits related to computer and information security. Authentication, authorization, identification, and access control through a biometric perspective are emphasized. The course orients practical applications of biometrics in the real world, providing a realistic view of the use of biometrics within the emerging threats in information security.

Course Outline:
  • IT security and secure coding
  • Web application security
  • Client-side security
  • Foundations of Java security
  • Practical cryptography
  • Java security services
  • XML security
  • Common coding errors and vulnerabilities
  • Principles of security and secure coding
  • Knowledge sources
  • Spring Boot, React, and Redux
  • Fullstack application architecture
  •  RESTful APIs and Microservices overview
  • Front-end vs back-end development
  • Preparing the Development Environment
  • Installing and configuring Spring Boot
  • Installing and configuring React
  • Installing and configuring Redux
  • React and Redux
  • Importing React app
  • Working with React structures, components, and JSX
  • Refactoring components
  • Creating modules
  • Handling events
  • Adding state to a component
  • Using routing for components
  • Styling components
  • React to Spring Boot
  • Applying authentication
  • Handling errors
  • Securing with authenticated routes
  • Refactoring React code to JavaScript modules
  • Creating a Spring Boot service
  • Returning a bean
  • Using path variables
  • Connecting front-end with RESTful API
  • Using variable paths for services and APIs
  • Applying form validation
  • Spring Security
  • Setting up Spring security
  • Configuring Spring Security
  • Importing JWS framework
  • Working with JWS resources
  • JPA and Hibernate
  • Populating data
  • Connecting to a JPA repository
  • Deployment
  • Connecting Spring Boot API
  • Deploying back-end to Heroku
  • Deploying React build
  • Basic definitions and the scope of “biometrics” as automated human recognition technologies
  • Statistical Measures And Descriptions Of Data
  • Varying applications: “Verification”, “Identification”, “Clustering”, “Watch-listing”
  • A short history of methods and the evolution of key concepts
  • Understanding technical performance metrics
  • What to consider in implementing Biometrics
  • Technical, human factors, privacy & good practice, security, vulnerability, accuracy & bias
  • Why passwords will always be with us
  • What systems are available 
  • Fingerprint
  • Face (including latest debates/issues)
  •  Iris
  • Artificial intelligence and biometrics
  • Creating robust systems
  • The three pillars of system performance: Human factors, human factors, and human factors
  • Case studies