Kapitel 8 Technische Informatik Hans-Ulrich Hei§ UniversitŠt Paderborn Das Internet: Geschichte Technische Informatik Hans-Ulrich Hei§ UniversitŠt Paderborn z 1969: ARPANET, das erste Rechernetz entsteht als militŠrisches Projekt, finanziert durch die Advanced Research Project Agency z 1974: TCP/IP wird als neue Kommunikationssoftware entwickelt z 1983: TCP/IP wird als offzielles Protokoll festgelegt Internet z 1984: Die National Science Foundation NSF baut auf der ARPANETTechnologie auf und begrŸndet das NSFNET als zivile Variante des ARPANET fŸr UniversitŠten und Forschungsinstitute z ab 1985: Auf der Grundlage von TCP/IP werden weitere unabhŠngige Rechnernetze zusammengeschaltet. Das Internet unterstŸtzt x Email x News x Remote Login x FTP z 1991 Durch das Hypertext-Protokoll http entsteht das World Wide Web und fŸhrt zu einem exponentiellen Anstieg der Nutzung auch durch Firmen und Privatleute 8-1 Internetwachstum 8-2 Technische Informatik Hans-Ulrich Hei§ UniversitŠt Paderborn 8-3 Internetwachstum Technische Informatik Hans-Ulrich Hei§ UniversitŠt Paderborn 8-4 Internet-Verkehr (visualisiert) ISO-OSI-Referenzmodell Technische Informatik Hans-Ulrich Hei§ UniversitŠt Paderborn Technische Informatik Hans-Ulrich Hei§ UniversitŠt Paderborn z Die ISO (International Standardization Organization) hat die Aufgaben, die beim Transport von Daten zwischen Rechnern anfallen, in einem Schichtenmodell dargestellt z Unter dem Namen OSI (Open System Interconnection) dient es als Referenzmodell fŸr die Datenkommunikation. z Jede Schicht erbringt einen speziellen Dienst, d.h. sie bietet an ihrer Schnittstelle (nach oben) bestimmte Funktionen an. z Zu diesem Zweck kommunizieren Instanzen einer Schicht mit Partnerinstanzen derselben Schicht auf anderen Rechnern. z Die Spielregeln dieser Kommunikation sind in einem Protokoll zusammengefasst. z Um mit den Partnerinstanzen derselben Schicht zu kommunizieren, muss jedoch auf die Funktionen der darunterliegenden Schicht zurŸckgegriffen werden. Schicht i+1 Protokoll Schicht i Schicht i-1 8-5 8-6 Protokollschichten: Analogie Regierungschef Meinungsaustausch Technische Informatik Hans-Ulrich Hei§ UniversitŠt Paderborn Regierungschef Schichten des OSI-Referenzmodells Technische Informatik Hans-Ulrich Hei§ UniversitŠt Paderborn Anwendungsschicht Anwendungsprotokoll Anwendungsschicht Darstellungsschicht Darstellungsprotokoll Darstellungsschicht Sitzungsprotokoll Dolmetscher Sprache A, Sprache B, Sprache X. Dolmetscher Telegramm, Fax, Kurier, etc. Technische Abteilung Sitzungsschicht Transportschicht Technische Abteilung Land B Land A 8-7 Sitzungsschicht Transportprotokoll Transportschicht Vermittlungsschicht Vermittlungsschicht Vermittlungsschicht Sicherungsschicht Sicherungsschicht Sicherungsschicht Sicherungsschicht Bitübertragungsschicht Bitübertragungsschicht Bitübertragungsschicht Bitübertragungsschicht 8-8 Vermittlungsschicht Nachrichtaufbau Technische Informatik Hans-Ulrich Hei§ UniversitŠt Paderborn BitŸbertragungschicht (Schicht 1) Technische Informatik Hans-Ulrich Hei§ UniversitŠt Paderborn z †bertragungsmedium Jede Schicht fügt einen eigenen Kopfeintrag hinzu Nachricht y Elektrische Leitung y FunkŠther y Glasfaser z Parallel/SerienŸbertragung Kopf der Anwendungsschicht z Synchronisation Kopf der Darstellungsschicht z Codierung z †bertragungsverfahren Kopf der Sitzungsschicht y Direkt (Basisband) Kopf der Transportschicht y Moduliert (Frequenz, Amplitude, Phase) z Gemeinsame Nutzung von Medien Kopf der Vermittlungsschicht Kopf der Sicherungsschicht 8-9 y Zeitmultiplex y Frequenzmultiplex 8-10 Rechnerkommunikation Technische Informatik Hans-Ulrich Hei§ UniversitŠt Paderborn Sicherungsschicht (Schicht 2) z Aufbrechen des Bitstroms in ÒHŠppchenÓ (Framing) z ErgŠnzen von PrŸfdaten (Parity-Bits, CRC-PrŸfsummen) D, 3, " auf" z NeuŸbertragung bei Fehler oder Verlust (Quittungen) B A z Umgang mit Verlust von Quittungen z Flusskontrolle (Verhindern von PufferŸberlauf) Q, 2 z Duplexbetrieb (†bertragung in beide Richtungen) Der Mond ist aufgegangen Der Mond ist z Zugangsregelung bei gemeinsamen Medium (z.B. Ethernet, Funknetze) z LŠngere Nachrichten werden in kleinere Pakete zerlegt. z Pakete kšnnen verfŠlscht werden: Verwendung von PrŸfsummen z.B. Die Einsen im Paket werden auf eine gerade Zahl ergŠnzt (ParitŠtsbit) z Pakete kšnnen verloren gehen: FŸr jedes korrekt empfangene Paket wird eine Quittung zurŸckgeschickt 8-11 8-12 Technische Informatik Hans-Ulrich Hei§ UniversitŠt Paderborn Rechnernetze Technische Informatik Hans-Ulrich Hei§ UniversitŠt Paderborn ga" D, "ge 5, C D, 2, Netzwerkschicht (IP, Schicht 3) Technische Informatik Hans-Ulrich Hei§ UniversitŠt Paderborn z Verbindungsart "Mo y Verbindungslos (datagram) nd" x Nachrichtenpakete enthalten Zieladresse und werden unabhŠngig voneinander verschickt D, 4, " ist" D A y Verbindungsorientiert x Eine feste Verbindung vom Sender zum EmpfŠnger wird durchgeschaltet. Der Der Mond ist aufgegangen B y Adaptiv / Nichtadaptiv " 3, D, z Wegewahl (Routing) uf " a y Auf kŸrzesten Wegen / auch auf Umwegen Der Datentransport verlŠuft Ÿber Zwischenknoten, d.h.: z Routing (Wegewahl) z Zwischenknoten mŸssen Pakete zwischenspeichern (Òstore-and-forwardÓ) z Pakete kšnnen unabhŠngig voneinander versendet werden (unterschiedliche Wege) z Pakete kšnnen sich Ÿberholen (Reihenfolge wiederherstellen) z Der EmpfŠnger muss die Pakete in dem Liefertempo auch abnehmen kšnnen (Flusskontrolle) y Verklemmungsfrei / Nicht verklemmungsfrei y Nutzung paralleler Pfade z Verbindung von Teilnetzen (Internetworking) z Staukontrolle 8-13 Schichten 4 (TCP) und 5 Transportschicht (OSI-Schicht 4) 8-14 Technische Informatik Hans-Ulrich Hei§ UniversitŠt Paderborn Schichten 6 + 7 Technische Informatik Hans-Ulrich Hei§ UniversitŠt Paderborn Darstellungsschicht (OSI-Schicht 6) z Struktur der Nachrichten z Verbindungsaufbau/-abbau z Aufbrechen der Nachricht in Datenpakete z Datenformate und -reprŠsentation (ASCII/ EBCDIC, Reihenfolge der Bytes,...) z Wiederherstellen der Paketreihenfolge z Ende-zu-Ende Flusskontrolle z Mehrfachnutzung von Verbindungen Sitzungsschicht (Kommunikationsteuerung) (OSI-Schicht 5) Synchronisation zur Dialogsteuerung 8-15 Anwendungsschicht (OSI-Schicht 7) z Sammlung typischer Anwendungsfunktionen in Netzen, z.B. y World Wide Web y Dateitransfer (FTP) y Remote Login y E-mail y Namens- und Katalogdienste 8-16 †berblick Ÿber gŠngige Protokolle xOSI-Schicht 7 Anwendung 6 Darstellung 5 Sitzung 4 Transport 3 Vermittlung 2 Sicherung 1 BitŸbertragung Beispiel HTTP FTP NNTP Telnet X.400, SMTP X.500 XDR ASN.1 TCP UDP X.25 IP Ethernet Token-Ring FDDI ATM RS-232 ISDN Technische Informatik Hans-Ulrich Hei§ UniversitŠt Paderborn Eigenschaften / Einsatz World Wide Web Dateitransfer News Remote Login E-Mail Katalogdienst Sun-spezifisch Internat. Standard Verbindunsgorientiert Verbindungslos Verbindungsorientiert Verbindungslos 10Mbit/sec 4 / 16 Mbit/sec 100 Mbit/sec Ÿber 100 Mbit/sec serieller Anschluss Telefon / Fax / Daten Internet-Namensstruktur Länderkennungen Top-Level Domains int com ibm watson edu gov stanford mil acm org net ieee fr it uk ... uni-paderborn stargate ikarus y Das Internet benutzt eine hierarchische Namensstruktur zur Kennzeichnung der angeschlossenen Rechner. y Jeder vollstŠndige Name (z.B. ikarus.uni-paderborn.de) besteht aus dem eigentlichen Namen (ikarus) und einer Folge von Domain-Namen abgetrennt durch Punkte (uni-paderborn.de). y Domain-Namen kšnnen kŠuflich erworben werden 8-18 Technische Informatik Hans-Ulrich Hei§ UniversitŠt Paderborn Programmsysteme fŸr E-mail bestehen aus zwei Sorten von Komponenten: y Mail-Client-Software: x Editor zum Schreiben oder Zusammensetzen einer Nachricht x Programm zum Verwalten von ein- und ausgehender Post x Programme zum Senden von Nachrichten und zum Lesen eingegangener Post y de sni cs 8-17 E-mail Technische Informatik Hans-Ulrich Hei§ UniversitŠt Paderborn Mail-Protokolle Technische Informatik Hans-Ulrich Hei§ UniversitŠt Paderborn Mailserver (mail.upb.de) E-Mail an [email protected] SMTP Mail-Server-Software: x zum Empfangen und Weiterleiten von Nachrichten x (Protokoll: SMTP = simple mail transfer protocol) Internet POP3 IMAP4 y Adressiert wird im Internet mit Hilfe der DNS-Adressen von der Art user@host, wobei x user x @ x host der Benutzername (user-id) des Senders oder EmpfŠnger ist ein Sonderzeichen ist, das ÒatÓ bedeutet die Internet-Domain des Rechners ist, Ÿber den der Benutzer seine Email abwickelt x Beispiele: [email protected] [email protected] x Hinter einer Email-Adresse kann sich auch eine ganze Adressliste verbergen, so dass eine Nachricht durch den empfangenden Mail-Server an alle Adressen der Liste verschickt wird. Beispiel: [email protected] 8-19 Absender EmpfŠnger (mac26.upb.de) (z.B.Eudora, Netscape Messenger, MS Outlook) (z.B.Eudora, Netscape Messenger, MS Outlook) 8-20 E-mail Technische Informatik Hans-Ulrich Hei§ UniversitŠt Paderborn Eine Email-Nachricht besteht aus y einem Umschlag (envelope) y einem Kopf (header) y und der eigentlichen Nachricht (body) Technische Informatik Hans-Ulrich Hei§ UniversitŠt Paderborn z Den grš§ten Wachstumsschub erhielt das Internet seit ca. 1994 durch eine weitere Anwendung: Hypertextdokumente, die das World Wide Web bilden. Typische EintrŠge im Kopf: y To: Email-Adresse der EmpfŠngers (kšnnen auch mehrere sein) y Cc: Email-Adressen derjenigen, die eine Kopie der Nachricht erhalten (Carbon copy) y Bcc: Wie Cc, nur dass dieses Feld bei den EmpfŠngern in To: und Cc: leer bleibt (Blind cc) y From: Adresse desjenigen, der die Nachricht erzeugt hat y Sender: Adresse desjenigen, der die Nachricht tatsŠchlich verschickt hat y Received: Je eine Zeile, fŸr jeden Mail-Transfer-Server entlang der Route y Date: Datum und Zeit des Absendens y Subject: Kurze Zusammenfassung des Inhalts (eine Zeile) y Reply-To: Email-Adresse, an die eventuelle Antworten geschickt werden sollen. 8-21 WWW-Browser World Wide Web z Eine Seite besteht aus multimedialen Elementen, d.h. Text, Graphiken, Bildern, Videoclips und sogenannten Links, die durch Anklicken mit der Maus das Beschaffen einer weiteren Seite von irgendwoher auslšsen. z Ein Link enthŠlt einen URL (Universal Resource Locator), der eine weltweit eindeutige Adresse eines Hypertext-Dokuments darstellt. z Beispiel: http://www.uni-paderborn.de/cs/heiss.html Name (Pfad) des Dokuments Adresse des Rechners hypertext transfer protocol 8-22 Technische Informatik Hans-Ulrich Hei§ UniversitŠt Paderborn z Rechner, auf denen Hypertext-Dokumente abgelegt sind, fungieren als Server, d.h. sie stellen Funktionen zur VerfŸgung, die von anderen Rechnern, den Clients, benutzt werden kšnnen. Java Applets im WWW z Der Client-Server-Betrieb mit (statischen) HTML-Dokumenten erlaubt nur umstŠndlich einen Dialog mit dem Benutzer. z Im Falle des WWW handelt es sich im wesentlichen um das ÒHerunterladenÓ (downloading) von Dokumenten. z Die Kommunikation zwischen einem WWW-Server und einem Client muss nach den Regeln des HTTP-Protokolls erfolgen. z Client-Software fŸr das WWW wird auch als Browser bezeichnet. y Ein Browser muss HTTP Òsprechen und verstehenÓ kšnnen. y Er muss au§erdem die Sprache HTML (hypertext mark-up language) interpretieren kšnnen, in der die Hypertext-Dokumente beschrieben sind. y Um auch die diversen Multimedia-Inhalte der Dokumente (Audio, Video) abspielen zu kšnnen, muss er au§erdem die entsprechenden ProgrammzusŠtze (ÒPlug-InsÓ) enthalten. Technische Informatik Hans-Ulrich Hei§ UniversitŠt Paderborn : Server : z Es wŠre wŸnschenswert, Programme vom Server zum Client herunterzuladen, die auf der Client-Maschine Òvor OrtÓ ausgefŸhrt werden kšnnen, um z.B. mit dem Benutzer einen Dialog zu fŸhren z Java erlaubt dies unabhŠngig vom Prozessortyp und Betriebssystem des Clients, weil nur maschinenunabhŠngiger ÒByte-CodeÓ verschickt wird, der von einem Interpretierer als Teil des Browsers ausgefŸhrt werden kann. z Dadurch kšnnen auch die AktivitŠten des Programms kontrolliert und beliebig eingeschrŠnkt werden (Sicherheit) : 8-23 Client 8-24 JavaLaufzeit- Client system Java-Applet (Byte-Code) Server Ergebnisse Sicherheit im Internet Angriffe auf Kommunikation Technische Informatik Hans-Ulrich Hei§ UniversitŠt Paderborn Da das Internet zunehmend fŸr kommerzielle Zwecke (Òelectronic commerceÓ) eingesetzt wird, d.h. zum Kaufen und Verkaufen von Waren und Dienstleistungen, besitzt die Sicherheit des Datenverkehrs einen hohen Stellenwert: y Vertraulichkeit (Confidentiality) x Der Inhalt von Nachrichten soll nur dem Sender und dem EmpfŠnger zugŠnglich sein y AuthentizitŠt (Authentication) x Benutzer und Systeme sollen ihre IdentitŠt/Echtheit beweisen Technische Informatik Hans-Ulrich Hei§ UniversitŠt Paderborn Unterbrechung (Interruption): Die Kommunikation zwischen zwei legitimen Benutzern der Kommunikationsverbindung wird unterbrochen Abfangen, Mithören (Interception, Eavesdropping) Die über eine Kommunikationsverbindung übertragenen Nachrichten werden abgehört y IntegritŠt (Integrity) x Nachrichten oder Teile davon sollen in keiner Weise modifiziert werden kšnnen y Beweisbarkeit stattgefundener Kommunikation (Nonrepudiation) x Weder dem Sender noch dem EmpfŠnger soll es mšglich sein, eine stattgefundene Kommunikation zu leugnen. y Autorisierung und Zugriffskontrolle (Authorization and Access Control) x Zugriff zu Betriebsmitteln im Verteilten System (einschlie§lich Zugang zu einem Rechner Ÿber das Netz) bedarf der Autorisierung und unterliegt der Kontrolle y VerfŸgbarkeit (Availability) x Das Netz und seine Komponenten muss fŸr seine legitimen Benutzer verfŸgbar sein Modifikation (Modification) Die Nachrichten werden verändert • Inhaltsänderung • Reihenfolgeänderung • Verzögerung Einspielen (Fabrication) Eine Nachrichten werden erzeugt und ins Netz eingespielt 8-25 Schutz gegen Angriffe 8-26 VerschlŸsselung Technische Informatik Hans-Ulrich Hei§ UniversitŠt Paderborn z Schutz gegen Unterbrechung y Erfordert physischen Schutz der †bertragungseinrichtungen (Kabel, etc.) y Schwierig zu realisieren y Abhilfe durch Redundanz auf Schicht 1: y Verwendung alternativer physischer †bertragungswege z Schutz gegen Mithšren y VerschlŸsselung (Encryption) y Nachricht kann zwar abgehšrt werden, jedoch gibt sie ihren Informationsgehalt nicht preis Technische Informatik Hans-Ulrich Hei§ UniversitŠt Paderborn z VerschlŸsselung zur Sicherung der Vertraulichkeit einer Nachricht wird bereits seit zwei Jahrtausenden eingesetzt. z Mit Hilfe einer VerschlŸsselungsfunktion V wird der Klartext M als Zeichenkette in eine andere Zeichenkette V(M) transformiert. z Der EmpfŠnger muss die Inverse von V als EntschlŸsselungsfunktion E = V-1 kennen, um aus dem transformierten, also verschlŸsselten Text V(M) den Klartext wiederherzustellen: z E(V(M)) = V-1(V(M)) = M z Schutz gegen Modifikation y Durch VerschlŸsselung und PrŸfsummen kšnnen Modifikationen entdeckt werden. y Verzšgerung als spezielle Variante der Modifikation kann durch Zeitstempel erkannt werden. Klartext M V Verschlüsselter Text V(M) Sender Empfänger z Schutz gegen Einspielen y Erfordert Authentisierung des Senders. 8-27 E 8-28 Klartext M VerschlŸsselung Technische Informatik Hans-Ulrich Hei§ UniversitŠt Paderborn z Mit dem Aufkommen von Rechnern und deren Analysemšglichkeiten sind jedoch die Anforderungen an kryptographische Verfahren extrem gestiegen. z Auch bei Einsatz von Hochleistungsrechnern soll es in akzeptabler Zeit nicht mšglich sein: y bei Kenntnis von V(M) die Nachricht M zu ermitteln y bei Kenntnis einer codierten Nachricht V(M) und des Klartextes M die VerschlŸsselungsfunktion V bzw ihre Inverse E zu ermitteln z Untauglich sind daher z.B. alle Verfahren, die einzelne Zeichen oder Buchstaben verschlŸsseln: Symmetrische VerschlŸsselung z Ein VerschlŸsselungsalgorithmus besteht in der Regel aus einer Familie von VerschlŸsselungsfunktionen, aus denen durch Vorgabe eines speziellen Parameters, des SchlŸssels (key), eine bestimmte ausgewŠhlt wird. z Die Wahl des SchlŸssels sollte erheblichen Einfluss auf die Ausgabe der Funktion VS besitzen. z Der SchlŸssel S muss sowohl Sender wie auch EmpfŠnger bekannt sein. z In der Praxis eingesetzte Verfahren sind so beschaffen, dass V und E bekannt sein dŸrfen und lediglich der SchlŸssel S geheim gehalten werden muss. (Beispiele: DES, IDEA) z Er muss daher auf anderem Wege Sender und EmpfŠnger mitgeteilt werden bzw. zwischen ihnen ausgetauscht werden. S y NatŸrlichsprachige Texte hinreichender LŠnge kšnnen durch HŠufigkeitsanalyse der Buchstaben leicht entschlŸsselt werden. z Das gleiche trifft auch auf Buchstabenpaare (Digramme) oder -tripel (Trigramme) zu. Klartext M S Verschlüsselter Text VS(M) V Sender 8-30 Asymmetrische VerschlŸsselung Technische Informatik Hans-Ulrich Hei§ UniversitŠt Paderborn z Hier wird das Problem des SchlŸsselaustauschs umgangen: z Es werden zwei verschiedene SchlŸssel verwendet: Public-Key-VerschlŸsselung Technische Informatik Hans-Ulrich Hei§ UniversitŠt Paderborn z basiert auf asymmetrischer VerschlŸsselung y C Codierungsfunktion (diesselbe fŸr Ver- und EntschlŸsselung) z jeder Teilnehmer A besitzt ein Paar von SchlŸsseln: y X,Y SchlŸsselpaar (ein SchlŸssel fŸr VerschlŸsselung, der andere fŸr EntschlŸsselung) z …A šffentlicher SchlŸssel z GA geheimer SchlŸssel Es muss gelten CY(CX((M)) = M y CX(CY((M)) = M Liste öffentlicher Schlüssel z Mindestens ein SchlŸssel X oder Y muss geheim sein z (z.B. RSA-Verfahren, verwendet in dem Programmsystem PGP (=pretty good privacy)) X M Y CX(M) C Sender 8-31 Klartext M E Empfänger 8-29 y Technische Informatik Hans-Ulrich Hei§ UniversitŠt Paderborn C Empfänger M ÖB M C : B : : ÖB : C(ÖB,M) Sender A GB C Empfänger B 8-32 M VerschlŸsselung zur Authentisierung Technische Informatik Hans-Ulrich Hei§ UniversitŠt Paderborn Digitale Unterschrift Technische Informatik Hans-Ulrich Hei§ UniversitŠt Paderborn Konventionelle (symmetrische) VerschlŸsselung y Haben A und B bereits einen SchlŸssel S ausgetauscht, so verbŸrgt die erfolgreiche Decodierung einer mit S verschlŸsselten Nachricht die AuthentizitŠt des Senders. Digitale Unterschrift Liste öffentlicher Schlüssel : A : : ÖA : GA Asymmetrische VerschlŸsselung (z.B. RSA) ÖA y Es wird mit dem šffentlichen SchlŸssel des EmpfŠngers codiert. y Dies garantiert die Vertraulichkeit der Nachricht, aber weder ihre Echtheit noch die des Senders. y Um mit RSA die AuthentizitŠt zu gewŠhrleisten, geht man umgekehrt vor und verschlŸsselt mit dem geheimen SchlŸssel des Senders. (Digitale Unterschrift) y Dies sichert die Echtheit des Senders (kein anderer besitzt den geheimen SchlŸssel), sichert aber nicht die Vertraulichkeit der Nachricht (jeder kann mit AÕs šffentlichem SchlŸssel die Nachricht lesen) y Daher kann man zusŠtzlich mit BÕ šffentlichem SchlŸssel codieren, um sowohl Vertraulichkeit, als auch AuthentizitŠt zu garantieren. C M M C Empfänger B Liste öffentlicher Schlüssel Digitale Unterschrift + Vertraulichkeit : A B M GA Ö C C 8-34 : ÖA ÖB G B Sender A 8-33 C(GA,M) Sender A C(ÖB,C(G A,M)) C B Ö A C Empfänger B M