From e7f19e68faf2595c0e7f247be6679d47cb5e4265 Mon Sep 17 00:00:00 2001 From: Michael Czechowski Date: Thu, 14 May 2026 12:08:50 +0200 Subject: [PATCH] =?UTF-8?q?223015b=20phase=204:=20kap5=20slide-MD=20(filen?= =?UTF-8?q?ame=20misleading:=2005-vertiefung-offene-fragen.md=20h=C3=A4lt?= =?UTF-8?q?=20jetzt=20'distribution=20und=20metadaten').=2020=20slides=20n?= =?UTF-8?q?ach=20bogen=20(etwas=20gek=C3=BCrzt=20von=2025)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit struktur: - 2 intro: kapitel-lead, kap05-eroeffner als advance organizer (foto stuttgart→tokyo mit inhalt+gepäck+weg) - 8 DISTRIBUTION: lead, CDN-prinzip mit netflix open connect (~15% globaler internet-traffic), wie-im-devtools (selbstlernen), lead REST-APIs, was-ist-API mit schema-diagramm, klausur REST-methods-tabelle (GET/POST/PUT/PATCH/DELETE + CRUD), selbstlernen JSONPlaceholder, JSON-syntax als beispiel - 7 METADATEN: lead 'was dateien über sich verraten', EXIF-tabelle mit konkreten feldern (kamera/linse/belichtung/GPS/software), klausur mcafee-GPS-fall (festnahme via EXIF in vice-foto 2012), social-media-stripping-übersicht (insta/facebook/whatsapp/email), ID3-tags MP3 mit beispiel hotel-california, klausur tony-blair-fall (PDF-revisionsverlauf 2003 plagiat), lead vendor-lockin, proprietäre-formate (PSD/INDD/.pages/.numbers/DOC), klausur vendor-lockin-risiko-szenario - 2 selbstlernen + summary: exiftool-aufgabe (GPS am eigenen foto), zusammenfassung distribution+metadaten=inhalt+gepäck+weg reuse-demos: kap05-eroeffner (zentral) no neu-demos für kap5 (alle 8 NEU-demos aus bogen durch inline-content ersetzt — CDN als prosa, REST/JSON als code-block, EXIF/ID3/vendor-lockin als tabellen) klausur-marker (5): REST-methods (10), mcafee-GPS-fall (15), tony-blair-fall (18), vendor-lockin-risiko (20) streichungen vs altem 04-distribution-apis-zukunft.md (1871 zeilen): - BitTorrent/P2P-details: eingedampft auf hinweis (klausurirrelevant) - IPFS: raus (nicht klausurthema, kein berührungspunkt) - WebSockets, gRPC, GraphQL: raus (zu speziell, gehört in internettechnik 223015c) - gesamte zukunfts-sektion (AI-kompression, JPEG XL, DNA-storage, 8K-VR, web3, sustainability): raus per D2-lock - AWS-snowball / sneakernet: raus (klausurirrelevant) build geht durch --- slides/223015b/05-vertiefung-offene-fragen.md | 643 +++++++++++++++--- 1 file changed, 565 insertions(+), 78 deletions(-) diff --git a/slides/223015b/05-vertiefung-offene-fragen.md b/slides/223015b/05-vertiefung-offene-fragen.md index d53003f..237f58e 100644 --- a/slides/223015b/05-vertiefung-offene-fragen.md +++ b/slides/223015b/05-vertiefung-offene-fragen.md @@ -5,7 +5,7 @@ paginate: true backgroundColor: #fff header: "Dateiformate, Schnittstellen, Speichermedien & Distributionswege (223015b)" footer: "Michael Czechowski – HdM Stuttgart – SoSe 2026" -title: Dateiformate, Schnittstellen, Speichermedien & Distributionswege +title: Distribution und Metadaten --- - - - - - -![bg cover opacity:0.2](./assets/radek-grzybowski-eBRTYyjwpRY-unsplash.jpg) - -# Dateiformate, Schnittstellen, Speichermedien & Distributionswege - -**223015b** · Modul "Technik 1" · 1. Semester -Digital- und Medienwirtschaft -Hochschule der Medien Stuttgart - -**Sommersemester 2026** - -[https://librete.ch/hdm/223015b/](https://librete.ch/hdm/223015b/) - ---- - - - - -![bg fit](./assets/qr/slides-223015b.png) - ---- - -# Kapitel 5 – TBA -## Vertiefung & Offene Fragen +# Kapitel 5 +## Distribution und Metadaten + + --- -# Ersatztermin + + -**Dieser Termin wird noch bekannt gegeben.** - -Mögliche Inhalte: -- Vertiefung von Themen nach Wunsch -- Praxisübungen & Hands-On -- Offene Fragen & Diskussion -- Prüfungsvorbereitung +![bg fit](./assets/demos/kap05-eroeffner.png) --- -# Fragen & Diskussion +# Sub-Sektion A: Distribution — wie reist die Datei? -**Kontakt:** lb-czechowski@hdm-stuttgart.de -**Folien:** Online verfügbar unter https://librete.ch/hdm/223015b + --- -# Lizenz & Attribution +# CDN — Content Delivery Network -Diese Präsentation ist lizenziert unter **Creative Commons Attribution-ShareAlike 4.0 International (CC BY-SA 4.0)** +**Idee:** Daten dort speichern, wo die Nutzer:innen sind. -- Erlaubt Teilen & Anpassen mit Namensnennung -- Adaptionen müssen unter gleicher Lizenz geteilt werden +Statt von **einem zentralen Server** in Kalifornien wird die Datei von einem **Edge-Server** in eurer Nähe geliefert. -Vollständige Lizenz: https://creativecommons.org/licenses/by-sa/4.0/ +Beispiel: Netflix nutzt **Open Connect** — eigene Server in 1.000+ ISP-Rechenzentren weltweit. ~15 % des globalen Internet-Verkehrs. +**Latenz** von Stuttgart zu Stuttgart: ~5 ms. +**Latenz** von Stuttgart nach Kalifornien: ~150 ms. + + + +--- + +# Wie sieht das im DevTools aus? + +DevTools (F12) → Tab **Network** → reload eine Seite + +Was ihr seht: +- **DNS-Lookup:** ~30 ms (oder gecacht: 0) +- **TLS-Handshake:** ~50 ms +- **TTFB** (Time to First Byte): ~80 ms wenn CDN, sonst 300+ +- **Cache-Status:** Header `x-cache: HIT` oder `cf-cache-status: HIT` + +→ **Selbstlernen:** öffnet eine populäre Seite, schaut die Response-Header an. + + + +--- + + + +# REST-APIs — wie Apps Daten austauschen + + + +--- + +# Was ist eine API? + +**Application Programming Interface.** Eine standardisierte Stelle, an der zwei Programme Daten austauschen. + +``` + HTTP-Request (GET /aktuell?ort=stuttgart) + ┌─────────────────────────────────────────────────┐ + │ ▼ +[App auf dem Handy] [API-Server] + ▲ │ + │ JSON-Response │ + └─────────────────────────────────────────────────┘ + { "temperatur": 14, "regen": false, ... } +``` + +**Beispiele:** Wetter, Maps, Banking, Twitter, jede Spotify-Anfrage. + + + +--- + + + +# REST: GET · POST · PUT · DELETE + +| Methode | Was tut sie | URL-Beispiel | +|---------|-------------|--------------| +| **GET** | lesen | `GET /users/42` (User mit ID 42 abfragen) | +| **POST** | neu erstellen | `POST /users` mit Daten als Body | +| **PUT** | überschreiben | `PUT /users/42` mit kompletten neuen Daten | +| **PATCH** | teilweise ändern | `PATCH /users/42` mit Änderungen | +| **DELETE** | löschen | `DELETE /users/42` | + +CRUD = **C**reate · **R**ead · **U**pdate · **D**elete. + + + +--- + + + +# Selbstlernen — eine API im Browser anfragen + +JSONPlaceholder ist eine kostenlose Fake-API zum Üben: + +``` +https://jsonplaceholder.typicode.com/users +https://jsonplaceholder.typicode.com/posts/1 +https://jsonplaceholder.typicode.com/posts?userId=2 +``` + +**Aufgabe:** Im Browser öffnen. Was kommt zurück? Welcher Content-Type-Header? + +Bonus: mit `curl https://api.github.com/users/torvalds` in der Konsole. + + + +--- + +# JSON — das Standard-Datenformat + +```json +{ + "name": "Torvalds", + "alter": 56, + "projekte": [ + { "name": "Linux", "stars": 180000 }, + { "name": "Git", "stars": 50000 } + ], + "aktiv": true +} +``` + +- **Objekte** (`{ ... }`), **Listen** (`[ ... ]`), **Strings** (`"..."`), **Zahlen**, `true`/`false`, `null` +- Universell: jede Programmiersprache hat JSON-Support +- Lesbar: Mensch + Maschine + + + +--- + + + +# Sub-Sektion B: Metadaten — was Dateien über sich verraten + + + +--- + +# EXIF — was ein Foto über sich verrät + +**Exchangeable Image File Format.** Standard seit 1995, in JPEG/HEIC/TIFF. + +Typische EXIF-Daten in einem Smartphone-Foto: + +| Feld | Beispiel | +|------|----------| +| Kamera-Hersteller | Apple | +| Kamera-Modell | iPhone 15 Pro | +| Linse, Brennweite | 24 mm, ƒ/1.78 | +| Belichtung, ISO | 1/250 s, ISO 100 | +| **Aufnahme-Zeitstempel** | 2026-04-12 18:47:12 +02:00 | +| **GPS-Koordinaten** | 48.7847°N 9.1825°E (Stuttgart, Königstraße) | +| Software-Version | iOS 18.4.1 | +| Bearbeitungs-Spuren | Photoshop CC 2025 | + + + +--- + + + +# Der John-McAfee-GPS-Fall + +**Dezember 2012.** John McAfee (Antivirus-Erfinder) flieht aus Belize, wo er als Mordverdächtiger gesucht wird. + +**Vice Magazine** veröffentlicht ein Interview mit einem Foto: McAfee im T-Shirt, scheinbar in einer geheimen Location. + +**EXIF-Koordinaten im Foto:** `15.6541° N, 88.9939° W` → **Hotel Nana Lodge, Guatemala.** Bekannt. + +McAfee wird 36 Stunden später festgenommen. + + + +--- + +# Social-Media-EXIF-Stripping (Übersicht) + +| Plattform | Stripped EXIF? | Vorbehalte | +|-----------|----------------|------------| +| **Instagram** | Ja | (komplett entfernt + neu komprimiert) | +| **Facebook** | Ja | | +| **Twitter / X** | Ja | nur bei Foto-Upload, nicht bei Direktnachricht | +| **WhatsApp** | Ja, *wenn als Foto* gesendet | NEIN bei "Dokument senden" | +| **iMessage** | Ja | | +| **E-Mail (Outlook, GMail)** | Nein | Original-Datei bleibt original | +| **Slack / Discord** | Nein bzw. teilweise | Original-Datei bleibt original | + +**Faustregel:** Plattform-Upload = wahrscheinlich Stripped. Datei direkt teilen = unsicher. + + + +--- + +# ID3 — Metadaten in MP3-Dateien + +``` +ID3v2.4 Header: +Titel: "Hotel California" +Artist: "Eagles" +Album: "Hotel California" +Jahr: 1976 +Genre: Rock +Cover-Art: [JPEG embedded, 250 × 250 px] +``` + +Plus: Lyrics, Komponist, Track-Nr, ReplayGain, manchmal **ganze Lyric-Videos als Embedded-Bilder.** + +→ Daher ist eine 4-Min MP3 manchmal **5 MB groß** statt 3 MB. + + + +--- + + + +# Der Tony-Blair-Fall (PDF-Metadaten) + +**Februar 2003.** Britische Regierung veröffentlicht PDF-Dokument zur Begründung des Irakkriegs. + +Ein britischer Akademiker findet im **PDF-Revisionsverlauf**: das Dokument wurde aus einer studentischen Doktorarbeit von 1991 kopiert. + +**Plagiats-Skandal.** Plus Hinweise auf welche Mitarbeiter:innen welche Sätze überarbeitet hatten. + +→ **PDF-Metadaten** verraten oft mehr als der Inhalt. + + + +--- + + + +# Vendor-Lockin — wenn das Format zum Käfig wird + + + +--- + +# Beispiele: proprietäre Formate + +| Format | Hersteller | Was nervt | +|--------|-----------|-----------| +| **PSD** (Photoshop) | Adobe | nur Photoshop liest Layer-Daten voll. Abo-Pflicht. | +| **INDD** (InDesign) | Adobe | gleiches Problem | +| **.pages** | Apple | nur in Apple-Apps voll editierbar | +| **.numbers** | Apple | gleiches | +| **DOC** (alt) | Microsoft | bis 2007 closed-source | +| **PSP, AI** | Adobe | proprietäre Editor-Formate | + +→ **Offene Alternativen:** PNG, TIFF, ODT (LibreOffice), HTML/Markdown, SVG. + + + +--- + + + +# Vendor-Lockin als Risiko + +**Szenario:** Du arbeitest 5 Jahre lang mit Adobe InDesign. Dann steigt der Abo-Preis um 200 % oder Adobe ändert das Format. + +**Konsequenz:** +- Bestehende INDD-Dateien öffnen sich noch — aber nur in Adobe-Produkten +- Migration zu Affinity Publisher / Scribus: Daten müssen konvertiert werden, manche Details gehen verloren +- Bei einigen Formaten gibt es keine Konverter — Vendor entscheidet komplett + +**Schutz:** Wichtige Daten in **offenen Formaten** parallel speichern. + + + +--- + + + +# Selbstlernen — exiftool auf eigene Fotos + +**Installation:** +- macOS: `brew install exiftool` +- Linux: `sudo apt install libimage-exiftool-perl` +- Windows: [exiftool.org](https://exiftool.org) + +**Aufgabe:** +```sh +exiftool DEIN_FOTO.jpg +``` + +Schaut, was alles drin steht. **Findet ihr GPS-Koordinaten?** Bonus: in [maps.google.com](https://maps.google.com) eintippen. + +**Optional:** EXIF entfernen mit `exiftool -all= DEIN_FOTO.jpg`. + + + +--- + +# Zusammenfassung + +**Distribution — wie reist die Datei:** +CDN bringt sie zur Edge. REST-API liefert Daten on-demand. JSON ist die Sprache. + +**Metadaten — was bringt die Datei mit:** +EXIF (Fotos), ID3 (Audio), PDF-Meta (Dokumente). GPS + Zeitstempel + Software. + +**Privacy:** EXIF kann Aufenthaltsort verraten. PDF kann Revision-History verraten. + +**Vendor-Lockin:** proprietäre Formate als Käfig. Offene Alternativen wo möglich. + +→ Eine Datei ist nie nur Inhalt. **Inhalt + Gepäck + Weg.** + +