Entwicklung sicherer Software SS 2016 Prof. Dr. holger.schmidt[at]hs-duesseldorf.de Hochschule Düsseldorf Fachbereich Medien Professur für Informatik, insb. IT-Sicherheit http://medien.hs-duesseldorf.de/schmidt 1/ 15
Informatik, insb. IT-Sicherheit 2/ 15
Professur für Informatik, insb. IT-Sicherheit Personal: Prof. Dr. M.Sc. Peter Haufs-Brusberg Studentische Hilfskräfte Lehre im BMI: IT-Sicherheit (6. Sem.) Entwicklung sicherer Software (WPF, 4. und 6. Sem.) Informatikprojekte, z. B. Virtuelles Hacking Labor (WPF, 2. und 3. Sem.) Mathematik 1 (1. Sem.) Rechnerarchitekturen (3. Sem.) Lehre im MMI: Faktor Mensch in der Informationssicherheit (WPF) Theoretische Informatik (1. Sem.) 3/ 15
4/ 15
Modulhandbuch BMI v1.4 Titel Praktische Medieninformatik A/B Kennnummer BMI 20/27 Credits 5 CP bzw. 150h Workload (dabei 60h Kontaktzeit und 90h Selbststudium) Lehrform 2 SWS Vorlesung und 2 SWS Übung Dauer 1 Semester Prüfungsform Mündliche Prüfung 5/ 15
Inhalt I 6/ 15 Kurzeinführung IT-Sicherheit Legion of the Bouncy Castle 1 Java cryptography APIs Java Cryptography Architecture 2 (JCA) Symmetrische Verschlüsselungsverfahren Advanced Encryption Standard (AES) Padding Cipher Modes Stream Ciphers Random Keys Password-Based Encryption 1 https://www.bouncycastle.org, 02.02.2016 2 http://docs.oracle.com/javase/8/docs/technotes/guides/security/crypto/ CryptoSpec.html, 02.02.2016
Inhalt II Message Digests, MACs und HMACs Message Digests HMACs Cipher-Based MACs Asymmetrische Verschlüsselungsverfahren Rivest-Shamir-Adleman (RSA) Algorithmus Secret Key Exchange Diffie-Hellman Algorithmus El-Gamal Algorithmus Digitale Signaturen 7/ 15
Lernziele Grundlagen der IT-Sicherheit kennen und verstehen Grundlagen der Kryptographie kennen und verstehen Kryptographische Verfahren in Java-Programmen anwenden Study und Soft Skills: Kommunikation, Selbstorgansisation und Autodidaktisches Lernen 8/ 15
Primär: Beginning Cryptography with Java von Hook [2005] http://bibl.eblib.com/patron/fullrecord.aspx?p=290512 (04.02.2016) Crypto Workshop Guide http://www.cryptoworkshop.com/guide/ (02.02.2016) The Legion of the Bouncy Castle Documentation: https://www.bouncycastle.org/documentation.html (02.02.2016) Ergänzend: Java Security von Oaks [2010] UML2 für Studenten von Störrle [2005] UML 2.5: Das umfassende Handbuch von Kecher and Salvanos [2015] Die Hochschulbibliothek bietet im Rahmen der Lehrbuchbibliothek an. 9/ 15
Organisatorisches 10/ 15
Vorlesung Wochentag Wöchentlich Dienstag Uhrzeit 13:00 14:30 Raum 1.002 Pause Keine Konzept: Autodidaktische Vorbereitung der Vorlesung Vorlesung in Form eines Fachgesprächs geführt durch Fragen- und Themenkatalog Fragen und Diskussion erwünscht Videoprojektor, White Board, Labor-Rechner Wiederholung zu Beginn jeder Vorlesung (durch Student) 11/ 15
Übung Konzept Wöchentlich nach der Vorlesung wird ein Aufgabenblatt veröffentlicht. Dieses Aufgabenblatt sollen Übungsteilnehmer für die darauffolgende Woche vorbereiten. Übungsablauf: Vorlesungswiederholung durch Fragen Aufgabenblatt zusammen ansehen Hilfestellung beim Lösen der Übungsaufgaben Übung ohne Anwesenheitspflicht Veröffentlichung des ersten Aufgabenblatts: 05.04.2016 12/ 15
Übung Material Verwaltung von Material via Fronter (https://fronter.com/estudy-fhd/main.phtml) Bereitstellung von Vorlesungsmaterial im Ordner Vorlesung SS16 Bereitstellung von Aufgabenblättern im Ordner Übung SS16 13/ 15
Übung Übungsgruppe Es gibt 1 Übungsgruppe wöchentlich Dienstag, 15:00 16:30 Uhr, 2.014 (IT-Sicherheitslabor) Übungsgruppenleiter ist Prof. Dr. Studierende sind selbst dafür verantwortlich Vorlesungs- und Übungsmaterial bereitzuhalten. Keine Anmeldung notwendig Der Betrieb der Übungsgruppe beginnt am 12.04.2016. 14/ 15
David Hook. Beginning Cryptography with Java. John Wiley & Sons, 2005. Christoph Kecher and Alexander Salvanos. UML 2.5: Das umfassende Handbuch. Rheinwerk Computing, 2015. Scott Oaks. Java Security, volume 2. O Reilly, 2010. Harald Störrle. UML2 für Studenten. Pearson Studium, 2005. 15/ 15