14
W I S S E N ! T E C H N I K ! L E I D E N S C H A F T ! www.tugraz.at Einführung in die Programmierung DI Dr. Christian Safran, IICM DI Michael Steurer, IICM Univ.-Prof. DI Dr. techn. Frank Kappe, IICM

Einführung in die Programmierung, Gruppenassignment

Embed Size (px)

Citation preview

Page 1: Einführung in die Programmierung, Gruppenassignment

1

Einführung in die Programmierung – Gruppenbeispiel (Ass1)

W I S S E N ! T E C H N I K ! L E I D E N S C H A F T

! www.tugraz.at

Einführung in die Programmierung DI Dr. Christian Safran, IICM DI Michael Steurer, IICM Univ.-Prof. DI Dr. techn. Frank Kappe, IICM

Page 2: Einführung in die Programmierung, Gruppenassignment

2

Einführung in die Programmierung – Gruppenbeispiel (Ass1)

2 Gruppenbeispiel (Ass1)

Organisatorisches

Aufgabenstellung

Michael Steurer, Lukas Eberhart

Page 3: Einführung in die Programmierung, Gruppenassignment

3

Einführung in die Programmierung – Gruppenbeispiel (Ass1)

3 Organisatorisches

4er Gruppe "  Mitglieder ausschließlich aus der gleichen Tutoriumsgruppe "  Anmeldung war bis heute 19 Uhr möglich (Palme) "  Noch ohne Gruppe? # Gruppenzuweisung unsererseits

Deadline "  Abgabe: Sa. 21.12.2013 19:00:00 (Palme) "  Spätabgabe: bis 48h danach; -25% der erreichten Punkte "  Knapp 3 Wochen Zeit "  Tipp: rechtzeitig beginnen!

Michael Steurer, Lukas Eberhart

Page 4: Einführung in die Programmierung, Gruppenassignment

4

Einführung in die Programmierung – Gruppenbeispiel (Ass1)

4 Organisatorisches

Bewertung "  20 Punkte

"  Tests: 8 "  Doku & Stil: 3 "  Struktur: 5 "  Korrektheit: 4

Ausbesserungsmöglichkeit "  14.1. - 2.2.2014 "  nur bei weniger als 10

Punkten

Allgemeine Kriterien "  Eigene Arbeit "  Pünktliche Abgabe "  Fertige Abgabe "  Spezifikationstreue "  Richtige

Programmiersprache

Todsünden "  Fehlende Abgaben "  Plagiate

Michael Steurer, Lukas Eberhart

Page 5: Einführung in die Programmierung, Gruppenassignment

5

Einführung in die Programmierung – Gruppenbeispiel (Ass1)

5 Aufgabenstellung

Source: http://www.fruchtwein.at/pix/bilder_original/gluehwein.jpg

Michael Steurer, Lukas Eberhart

Page 6: Einführung in die Programmierung, Gruppenassignment

6

Einführung in die Programmierung – Gruppenbeispiel (Ass1)

6 Allgemeiner Bildaufbau

…….

1. Pixel

2. Pixel

3. Pixel

…….Header

Michael Steurer, Lukas Eberhart

Page 7: Einführung in die Programmierung, Gruppenassignment

7

Einführung in die Programmierung – Gruppenbeispiel (Ass1)

7 Aufgabenstellung Beispiel: "  Buchstabe ‘t‘ soll in Bild versteckt werden "  ASCII-Wert von ‘t‘: dezimal: 116 / binär: 01110100

"  Niederwertigstes Bit löschen für Byte 1, 5, 7 und 8 "  Niederwertigstes Bit setzen für Byte 2, 3, 4 und 6

"  Erstes Pixel:

0 1 1

Original Bild

Modifiziertes Bild

Michael Steurer, Lukas Eberhart

Page 8: Einführung in die Programmierung, Gruppenassignment

8

Einführung in die Programmierung – Gruppenbeispiel (Ass1)

8 Aufgabenstellung Verschlüsselung:

"  Text vor dem Verstecken bzw. nach dem Extrahieren XOR verschlüsseln

"  Passwort wiederholen bis es die gleiche Länge wie der Text hat "  Buchstabe für Buchstabe mit Exklusiv-Oder verknüpfen

Beispiel: Text: Hallo EP!, Key: Geheim

Michael Steurer, Lukas Eberhart

Page 9: Einführung in die Programmierung, Gruppenassignment

9

Einführung in die Programmierung – Gruppenbeispiel (Ass1)

9 Aufgabenstellung Stenographie-Tool Text in Bild verstecken: "  Prüfen, ob unkomprimierte 24bit Bitmap-Datei (Header auslesen) "  Identifier “EP13“ und Länge des Texts dem zu versteckenden Text

voranstellen (und ebenfalls mitverschlüsseln) Folgende Struktur in Bild einbetten: "  “EP13“ (4 Byte) "  Länge des Texts (Integer: 4 Byte) "  (verschlüsselter) Text (beliebige Länge)

Michael Steurer, Lukas Eberhart

Page 10: Einführung in die Programmierung, Gruppenassignment

10

Einführung in die Programmierung – Gruppenbeispiel (Ass1)

10 Aufgabenstellung Stenographie-Tool Text aus Bild extrahieren: "  Zu Beginn auf Identifier “EP13“ prüfen "  Bei Fehler: Fehlermeldung ausgeben # siehe Wiki "  Im Erfolgsfall: versteckten Text ausgeben/speichern (ohne “EP13“)

Michael Steurer, Lukas Eberhart

Page 11: Einführung in die Programmierung, Gruppenassignment

11

Einführung in die Programmierung – Gruppenbeispiel (Ass1)

11 Aufgabenstellung Stenographie-Tool Programmaufruf - Kommandozeilenparameter:

-m Der Modus, gefolgt von entweder 'hide' oder 'show' -img Die Bilddatei

-text Die Textdatei -p Passwort -v Versionsinfo

optional:

obligatorisch:

Michael Steurer, Lukas Eberhart

Page 12: Einführung in die Programmierung, Gruppenassignment

12

Einführung in die Programmierung – Gruppenbeispiel (Ass1)

12 Aufgabenstellung Stenographie-Tool Programmaufruf - Beispiele: "  Datei secret.txt mit dem Passwort GEHEIM verschlüsseln und in der

Datei cat.jpg verstecken ./ass1 -m hide -img cat.bmp -text secret.txt -p GEHEIM

"  Den Inhalt der Datei cat.jpg mit dem Passwort GEHEIM entschlüseln

und auf der Konsole anzeigen ./ass1 -m show -img cat.bmp -p GEHEIM

"  Text von der Konsole einlesen und unverschlüsselt in der Datei

message.jpg verstecken ./ass1 -m hide -img message.bmp

Michael Steurer, Lukas Eberhart

Page 13: Einführung in die Programmierung, Gruppenassignment

13

Einführung in die Programmierung – Gruppenbeispiel (Ass1)

13 Zusammenfassung

Aufgabenstellung im Wiki "  Details zu Datenstruktur/Rückgabewerte/Fehlermeldungen/Spezifikation "  Halten Sie sich genau an die Anforderungen! "  Ihre Abgabe wird automatisiert getestet "  Feedback

"  Anzahl der bestandenen Testfälle "  Abgabegespräche

Fragen von allgemeinem Interesse "  Newsgroup tu-graz.lv.ep "  Zuerst lesen, dann posten

Michael Steurer, Lukas Eberhart

Page 14: Einführung in die Programmierung, Gruppenassignment

14

Einführung in die Programmierung – Gruppenbeispiel (Ass1)

W I S S E N ! T E C H N I K ! L E I D E N S C H A F T

! www.tugraz.at

Einführung in die Programmierung DI Dr. Christian Safran, IICM DI Michael Steurer, IICM Univ.-Prof. DI Dr. techn. Frank Kappe, IICM