• Keine Ergebnisse gefunden

zunehmende Abstraktion

N/A
N/A
Protected

Academic year: 2021

Aktie "zunehmende Abstraktion"

Copied!
28
0
0

Wird geladen.... (Jetzt Volltext ansehen)

Volltext

(1)

Vert. Sys., F. Ma. 2

Verteilte Systeme

Departement Informatik ETH Zürich

- Rechner, Personen, Prozesse, “Agenten” sind anverschiedenen Orten.

- Autonome Handlungsträger, die jedoch gelegentlichkooperieren (und dazu über Nachrichtenkommunizieren).

Herbstsemester 2009

Departement Informatik

Friedemann Mattern

Institut für Pervasive Computing

Teil 1

Vert. Sys., F. Ma. 3

Wer bin ich? Wer sind wir?

Fachgebiet “Verteilte Systeme” im Departement - 12 Assistent(inn)en

- Sensornetze

- Verteilte Anwendungen und Algorithmen

Informatik, Institut für Pervasive Computing

- Infrastruktur für verteilte Systeme

- Ubiquitous Computing

Mehr zu uns:

www.vs.inf.ethz.ch

- Internet der Dinge

- Forschungsprojekte

(2)

Vert. Sys., F. Ma. 4

Organisatorisches zur Vorlesung

5-stündige Veranstaltung (Vorlesung inkl. Übungen) Sinnvolle Vorkenntnisse (Grundlagen):

- Grundkenntnisse Betriebssysteme (z.B. Prozessbegriff, Synchronisation) - UNIX, Java

- 4 Semester der Bachelorstufe Informatik (inkl. Mathematik-Anteil)

- GelegentlicheDenkaufgabenin der Vorlesung

- GelegentlicheÜbungsstunden (zu den “Vorlesungsterminen”) zur

Mo 8:15 - 11:00, IFW A36 Fr 8:15 - 10:00, IFW A36

- Folienkopien jeweils einige Tage nach der Vorlesung

- im .pdf-Format bei www.vs.inf.ethz.ch/edu

Vorlesung inkl. Übung

- Praktische Übungen korrelieren im Allgemeinen nur schwach mit dem Inhalt der Vorlesung (komplementieren die Vorlesung):

Besprechung der Aufgaben und Vertiefung des Stoffes

Absicht!

- Computernetze

- Vorlesung ab November: Prof. Roger Wattenhofer - Prüfung schriftlich

- bewertete Übungen gehen zu kleinem Teil in die Prüfungsnote ein “Kommunikation mit Nokia N95-Geräten”

- Ansprechperson für organisatorische Aspekte:

- Matthias Kovatsch, kovatsch@inf.ethz.ch

Vert. Sys., F. Ma. 5

Thematisch verwandte Veran-

- Einschlägige Seminare

- Ubiquitous Computing

- Semester- und Masterarbeit

staltungen im Masterstudium

- Principles of Distributed Computing

- Praktikum (“Lab”)

- ...

Verteilte Algorithmen

Verteilte Systeme

konkreter abstrakter

Nicht-leere Schnittmengen!

z.B. Routing

/ vernetzte Systeme

Principles of Distributed Computing

Computernetze

- Enterprise Application Integration - Middleware

- Web Services and Service Oriented Architectures

- Verteilte Algorithmen

(3)

Vert. Sys., F. Ma. 6

Literatur

G. Coulouris, J. Dollimore, T. Kindberg: Distributed Systems:

Concepts and Design (4th ed.). Addison-Wesley, 2005

A. Tanenbaum, M. van Steen: Distributed Systems:

Principles and Paradigm (2nd ed.). Prentice-Hall, 2007 Oliver Haase: Kommunikation in verteilten

Anwendungen (2. Auflage). R. Oldenbourg Verlag, 2008

Vert. Sys., F. Ma. 7

A distributed system is one in which the failure of a computer you didn’t even know existed can render your own computer unusable.

-- Leslie Lamport A distributed computing system consists of multiple autonomous processors that do not share primary memory, but cooperate by sending messages over a communication network.

-- H. Bal

“Verteiltes System” - zwei Definitionen

Kommuni- kationsnetz

- welche Problemaspekte stecken hinter Lamports Charakterisierung?

(4)

Vert. Sys., F. Ma. 8

“Verteiltes System”

Knoten / Prozess Nachricht

Physisch verteiltes System:

Logisch verteiltes System: Prozesse (Objekte, Agenten) - Verteilung des Zustandes (keine globale Sicht) - Keine gemeinsame Zeit (globale, genaue Uhr)

Mehrrechnersystem ... Rechnernetze

Vert. Sys., F. Ma. 9

kommunizierende

Objekte in

Computernetz mit “Rechenknoten”:

Zeit P1

P2 P3

Prozesse, kooper-

Betriebssystemen, Middleware,

Programmiersprachen

“Programmierersicht”

Sichten verteilter Systeme

Algorithmen- und Protokoll- ebene

zunehmende Abstraktion

- Local Area Network - Internet

- Compute-Cluster

ierende Objekte (Client, Server,...)

- Aktionen, Ereignisfolgen - Konsistenz, Korrektheit

Routing, Adressierung,..

(5)

Vert. Sys., F. Ma. 10

Die verteilte Welt

Auch die “reale Welt” ist ein verteiltes System:

- Viele gleichzeitige (“parallele”) Aktivitäten - Exakte globale Zeit nicht erfahrbar / vorhanden - Keine konsistente Sicht des Gesamtzustandes - Kooperation durch explizite Kommunikation

- Ursache und Wirkung zeitlich (und räumlich) getrennt

Vert. Sys., F. Ma. 11

- Es gibt inhärent geographisch verteilte Systeme

- Electronic commerce

- Mensch-Mensch-Telekommunikation

→ z.B. Zweigstellennetz einer Bank; Steuerung einer Fabrik

(z.B. Reisebüros, Kreditkarten,...)

→kooperative Informationsverarbeitung räumlich getrennter Institutionen (Zusammenführen / Verteilen von Information)

- E-Mail, Diskussionsforen, Blogs, digitale soz. Netze, IP-Telefonie,...

Warum verteilte Systeme?

- Globalisierung von Diensten

- Skaleneffekte, Outsourcing,...

- Wirtschaftliche Aspekte

- Cluster von einfachen Computern oder Netz von PCs manchmal besseres Preis-Leistungsverhältnis als Grosscomputer

- Outsourcing von Diensten manchmal wirtschaftlicher

- vgl.: Virtualisierung, dynamische Lastverteilung, Cloud Computing

(6)

Vert. Sys., F. Ma. 12

Verteilte Systeme als “Verbunde”

- Funktionsverbund

- Kooperation bzgl. Nutzung jeweils spezifischer Eigenschaften

- Lastverbund

- Zusammenfassung der Kapazitäten

- Datenverbund

- allgemeine Bereitstellung von Daten

- Überlebensverbund

- Verteilte Systeme verbinden räumlich (oder logisch)

- gemeinsame Nutzung von Betriebsmitteln, Geräten,....

- einfache inkrementelle Erweiterbarkeit

- dann i.Allg. nur Ausfall von Teilfunktionalität - Redundanz durch Replikation

getrennte Komponenten zu einem bestimmten Zweck - Systemverbund

Vert. Sys., F. Ma. 13

Historische Entwicklung (“Systeme”)

Rechner-zu-Rechner-Kommunikation

- Zugriff auf entfernte Daten (“Datenfernübertragung”, DFÜ) - dezentrale Informationsverarbeitung war zunächst ökonomisch nicht sinnvoll (zu teuer, Fachpersonal nötig)

→ Master-Slave-Beziehung (“Remote Job Entry”, Terminals)

ARPA-Netz (Prototyp des Internet)

- “symmetrische” Kommunikationsbeziehung (“peer to peer”) - Internet-Protokollfamilie (TCP/IP,...)

- file transfer (ftp), remote login, E-Mail

Workstation-Netze (LAN)

- bahnbrechende, frühe Ideen bei XEROX-PARC

(XEROX-Star als erste Workstation, Desktop-Benutzerinterface, Ethernet, RPC, verteilte Dateisysteme,...)

Kommerzielle Pionierprojekte als Treiber

- z.B. Reservierungssysteme, Banken, Kreditkarten

WWW (und Internet) als Plattform

- für electronic commerce etc.

- XML, web services, peer to peer,...

- neue, darauf aufbauende Dienste

(7)

Vert. Sys., F. Ma. 14

- Concurrency, Synchronisation,...

- war bereits klassisches Thema bei Datenbanken und Betriebssystemen

- Programmiersprachen

- kommunizierende Objekte

- Physische Parallelität

- Parallele und verteilte Algorithmen - Semantik

- Abstraktionsprinzipien

- Schichten, Dienstprimitive,...

- Verständnis grundlegender Phänomene der Verteiltheit

- Konsistenz, Zeit, Zustand,...

Entwicklung “guter” Konzepte, Modelle, Abstraktionen etc. zum Verständnis der Phänomene dauert oft lange Diese sind jedoch für die Lösung praktischer Probleme hilfreich, oft sogar notwendig!

- mathematische Modelle für Verteiltheit (z.B. CCS, Petri-Netze) - z.B. Multiprozessoren

- notwendige Ordnung und Sichtung des verfügbaren Gedankenguts

Historische Entwicklung (“Konzepte”)

Vert. Sys., F. Ma. 15

Eingebettete Internet-Dienste

Mobiler Internetzugang

WWW E-Mail

Das qualitative Internet-Wachstum

Zeit Menschen mit

Menschen

Menschen mit Maschinen

Maschinen mit Maschinen Menschen mit Dingen

Vernetzung von:

- Computern (ftp) - Dokumenten (WWW)

- Menschen (digitale soziale Netze) - Dingen (“Internet der Dinge”)

(8)

Vert. Sys., F. Ma. 16

Software-Infrastruktur für

- Phänomen: das Internet verbreitet sich immer weiter

- mehr Nutzer, Popularisierung - bis an die Person (Handy)

- immer “exotischere” Endgeräte (TV, Kühlschrank, Chipkarte)

- Es entstehen neue Dienste im Netz - Dienste interagieren miteinander

- Markt erfordert sehr schnelle Reaktion

- schnelle Implementierung neuer Dienste - Update über das Netz

- Kompatibilität, Standards, Protokolle, offene Schnittstellen,...

- Anschluss neuer Geräte muss “von selbst” erfolgen

- Integration in eine Infrastruktur und Umgebung von Ressourcen

Internet-basierte Anwendungen?

- Kann man eine Infrastruktur schaffen, die das unterstützt?

- Mobile Geräte, dynamische Umgebungen

- bald enthalten vielleicht auch viele Supermarktprodukte, Kleidungsstücke etc. kommunikationsfähige Chips - Sensoren

- Welche Systemarchitektur ist hierfür geeignet?

A h it kt t ilt S t A rc hit e kt uren ver te ilt er S ys teme ƒ Zu Anfan g waren Systeme monolithisch

-Mainframes -Nicht verteilt / vernetzt -Terminals (FernschreiberASCII)(Fernschreiber,ASCII)

(9)

Architekturen verteilter Systeme: Peer to Peer Systeme: Peer -to -Peer

ARPANET1969 Jeder Rechner gleichzeitig Informationsanbieter und -konsument Heute wieder aktuell für FilesharingÆOverlay-Netze

Architekturen verteilter Systeme: Client Server Systeme: Client -Server

Client -Einführung von Workstations -WWW-dominiertes Internet

Internet

Server -Serverals Informationsanbieter -Clientals Konsument

(10)

Architekturen verteilter Systeme: Fat undThin Client Systeme: Fat - undThin -Client

PräsentationPräsentationPräsentationPräsentation

Fat-ClientThin-Client PräsentationPräsentationPräsentationPräsentation Applikation ApplikationApplikation ApplikationApplikation Daten DatenDatenDatenDaten

Architekturen verteilter Systeme: 3 Tier Systeme: 3 -Tier

Präsentation VerarbeitungwirdaufmehrereVerarbeitungwirdaufmehrere physikalische Einheiten verteilt Logische Schichten minimieren die Abhängigkeiten ApplikationAbhängigkeiten Leichtere Wartung Einfaches Austauschen Daten

(11)

Architekturen verteilter Systeme: Multi Tier Systeme: Multi -Tier

PräsentationWeitere Schichten sowie mehrere physikalische Einheiten pro Schicht erhöhendieSkalierbarkeitund Webserver Applikation

erhöhendieSkalierbarkeitund Flexibilität Mehrere Webserver ermöglichen z.B. LastverteilungApplikationLastverteilung Verteilte Datenbanken in der

Datenhaltungsschicht bietet Sicherheit

durchReplikationundDaten- verwaltung SicherheitdurchReplikationund hohen Durchsatz

Daten- haltung

Architekturen verteilter Systeme: Si Oi t d Ah it t (SOA) S erv ice- O ri en te d A rc hit ec ture (SOA)

EineUnterteilungder Applikation in einzelne, unabhängige Abläufe innerhalb einesGeschäftsprozesseserhöht die FlexibilitätweiterFlexibilitätweiter Lose Kopplung zwischen Services über Nachrichten und events(statt RPC) Services können bei Änderungen der Prozesse einfach neu zusammengestellt werden („developmentby composition“) Services können auch von externen Anbietern bezogen werden Oft in Zusammenhang mit Web-Services

(12)

Architekturen verteilter Systeme: Cloud Computing Systeme: Cloud -Computing

Massive Bündelung der Rechenleistung an zentraler Stelle Internet als Vermittlungsinstanz

(13)

Motivierender Trend: Stetige Erhö- h dB d b it fü E d t h ung d er B an db re it e fü r E n d nu tze r Hochgeschwindigkeit ins Haus Hochgeschwindigkeit ins Haus

ƒ

Ko n v e rg e n z T V, T e le k o m - munikation und I n ternet

ƒ

Technologiewechsel

Æ

erhebliche Investitionen

ithftlihFktƒwirtschaftlicheFaktoren und Bedingungen ƒ

Telef ondr aht

Æ

Internet

Æ

TV

Æ

Glasf aser (

x1x5x10

?)

ƒ

TV -K abel

Æ

Telefon

Æ

Internet

Æ

Glasf aser „T riplepla y“

(Sprache, Daten, Video)

(

x1

,

x5

,

x10

,… ?)

(14)

Cloud Computing Cloud -Computing Alles ist

E-Mail wir d beim Pr o v ider gespeichert Alles ist „irgendwo“ im Netz Cloud Computing Cloud -Computing Alles ist

Fo to s wer den bei gespeichert Alles ist „irgendwo“ im Netz

(15)

Cloud Computing Cloud -Computing Alles ist

Videos bei Alles ist „irgendwo“ im Netz Cloud Computing Cloud -Computing Alles ist

Priv ate Dokumente wer den bei einem St P id Alles ist „irgendwo“ im Netz

St or age P rov id er abgelegt D Tb h id D as Tage b uc h w ir d öf fe ntlich „im Netz“ als Bl o g geführt

(16)

Cloud Computing Cloud -Computing Alles ist

Inf o rmie re n tut man sich im Netz Alles ist „irgendwo“ im Netz Cloud Computing Cloud -Computing Alles ist

Ve rn e tz e n tut man sich bei „social net - k “d d i it l Alles ist „irgendwo“ im Netz

wor k s“ o d er „ di g it a l communities“ im Netz

(17)

Cloud Computing Cloud -Computing Alles ist

Plat tf ormen im Netz nutzt man zum f Alles ist „irgendwo“ im Netz

-K a u fen - S pielen - K ommunizier en -… Cloud Computing Cloud -Computing Alles ist

Vorteile für Nutzer:

ƒ

v o n übe ra ll z ug re if ba r Alles ist „irgendwo“ im Netz

o ü be a u g e ba

ƒ

keine Datensicherung

ƒ

keine Softwarepflege d Ke in P C , son d ern billiges W e b- Te rminal, Smartphone etc. Wie W a sserleitungen einst den eigenen Brunnen überflüssig machten…

(18)

Cloud Computing Cloud -Computing Alles ist

Voraussetzungen?

ƒ

Übe ra ll Br e itba n d Alles ist „irgendwo“ im Netz

Übe a e tba d

(fest & mobil) ƒ

Netz-Verlässlichkeit

(Versorgungssicherheit, Datenschutz,…) ƒ

Wirtschaftlichkeit Cloud Computing Cloud -Computing Alles ist

Plattformen:

ƒ

W e r bet re ibt si e ? W o ? Alles ist „irgendwo“ im Netz

eb e t e b t s e o

ƒ

Wer verdient daran?

ƒ

Wer bestimmt?

ƒ

Wer kontrolliert?

ƒ

Wer kontrolliert?

ƒ

Welche Nationen profitieren davon?

(19)

Cloud Computing Cloud -Computing Alles ist Alles ist „irgendwo“ im Netz h hl h Au ch gewö h n lic h e Dinge wer den die Dienste in der „cloud“ nutz en „Breitband ist die Elektrizität des 21 Jahrhunderts“ des 21 . Jahrhunderts“ ƒ Wo aber sind dann die „ Kraftwerke “?

(20)

Beispiel: Google Datenzentren Beispiel: Google -Datenzentren ƒ Jedes Datenzentrum hat 10 000 – 100 000 Computer ƒ Kostet über 500 Mio $ (Bau, Infrastruktur, Computer) ƒ Verbraucht 50 100 MW Energie (Strom Kühlung) ƒ Verbraucht 50 – 100 MW Energie (Strom , Kühlung) ƒ Neben Google weitere (z.B. Amazon, Microsoft, Ebay,…) Google Data Center Groningen Google Data Center Groningen

(21)

Google Data Center Columbia River Google Data Center Columbia River Rückansicht: Energiezufuhr Rückansicht: Energiezufuhr

(22)

InnenansichtInnenansicht ƒ Effizient wie Fabriken

ƒ

Produkt: Internet-Dienste Kt t il dh S k l ff k t ƒ K os tenvor te il d urc hS k a lene ff e kt

ƒ

Faktor 5 – 7 gegenüber traditio- nellen „kleinen“ Rechenzentren ƒ Angebot nicht benötigter Leistung auf einem Spot-Markt Das entwick elt sich zum eigentlichen Geschäft! Zk üf ti C t i Dt t Z u kü n fti ge C on ta ine r- D a tenzen tren

ƒ

Hunderte von Containern aus je einigen tausend Compute-Servern

ƒmit Anschlüssen für Strom und Kühlung ƒ

Nahe an Kraftwerken

ƒTransport von Daten billiger als Strom ƒ

Anmerkung zum Thema „ Green IT “:

ƒIT-Infrastruktur verursachte 2007 weltweit ca. 830 Miot CO2(2%) ƒIT-gestütztes Energie-und Gebäudemanagement sollte aber bis zu 4 Mal so viel einsparen

(23)

Cloud-Computing für die Id t i d W i t hf t In d us tr ieu n d Wi rt sc h a ft ƒ Spontanes Outsourcen von IT inklusive Geschäftsprozesse

ƒ

Datenverarbeitung als Commodity Sf t d D t i h l S i

ƒ

S o ft ware un dD a tenspe ic h er a ls S erv ice ƒ Keine Bindung von Eigenkapital

ƒ

Kosten nach Verbrauch “ Kosten nach „ Verbrauch ƒ Elastizität : S o fo rt ig e s Hinzufügen weiterer Ressourcen bei Bedar f Markt für „ utilit y computing “

ƒ

virtualisierte Hardware Markt für „ utilit y computing 2010: ca. 95 Milliar den EUR

Vert. Sys., F. Ma. 18

Charakteristika und “praktische”

- Räumliche Separation, autonome Komponenten

→ Zwang zur Kommunikation per Nachrichtenaustausch

→ neue Probleme:

- partielles Fehlverhalten (statt totaler “Absturz”)

- fehlender globaler Zustand / exakt synchronisierte Zeit

- Heterogenität

- ist in gewachsenen Informationsumgebungen eine Tatsache - findet sich in Hard- und Software

- Dynamik, Offenheit

- Abstraktion als Mittel zur Beherrschung der Komplexität wichtig:

a) Schichten (Kapselung, virtuelle Maschinen) c) “Transparenz”-Prinzip

b) Modularisierung (z.B. Services)

Probleme verteilter Systeme

- Inkonsistenzen, z.B. zwischen Datei und Verzeichnis - konkurrenter Zugriff, Replikate, Cache,...

- Gewährleistung von “Interoperabilität” ist nicht einfach

- Komplexität

- Sicherheit

- Vertraulichkeit, Authenzitität, Integrität, Verfügbarkeit,...

- notwendiger als in klassischen Einzelsystemen

- aber schwieriger zu gewährleisten (mehr Angriffspunkte)

Eingesetzt zur Realisierung von Leistungs- und Ausfalltransparenz

(24)

Vert. Sys., F. Ma. 19

Aspekte verteilter Systeme

im Vergleich zu sequentiellen Systemen:

- Heterogenität - Nebenläufigkeit

- Verständnis der Phänomene schwieriger - Test und Verifikation aufwändiger

- Nichtdeterminismus - Zustandsverteilung

⇒ gute Werkzeuge (“Tools”) und Methoden

⇒ adäquate Modelle, Algorithmen, Konzepte - Grösse und Komplexität

- Programmierung komplexer

- zur Beherrschung der “neuen” Phänomene - z.B. Middleware als Software-Infrastruktur

vieles gleichzeitig morgen anders als heute jede(r) ist anders

niemand weiss alles

Ziel: Verständnis der grundlegenden Phänomene, Kenntnis der geeigneten Konzepte und Verfahren

Vert. Sys., F. Ma. 20

Einige konzeptionelle Probleme und Phänomene verteilter Systeme

1) Schnappschussproblem 2) Phantom-Deadlocks 3) Uhrensynchronisation

4) Kausaltreue Beobachtungen

5) Geheimnisvereinbarung über unsichere Kanäle

- Dies sind einige einfach zu erläuternde Probleme und Phänomene - Es gibt noch viel mehr und viel komplexere Probleme

- konzeptioneller Art - praktischer Art

- Achtung: Manches davon wird nicht hier, sondern in der Vorlesung “Verteilte Algorithmen” eingehender behandelt!

(25)

Vert. Sys., F. Ma. 21

- Anwendung: z.B. verteilte DB-Sicherungspunkte

Ein erstes Beispiel:

Wieviel Geld ist in Umlauf?

- Erschwerte Bedingungen:

- niemand hat eineglobale Sicht

- es gibt keinegemeinsame Zeit (“Stichtag”)

- Modellierung:

- verteilte Geldkonten

-ständige Transfers zwischen den Konten

-konstante Geldmenge, oder

-monotone Inflation (→ Untergrenze)

Beispiel: kommunizierende Banken

Konto $ A

B C D

4.17 17.00 25.87 3.76

Σ = ?

Vert. Sys., F. Ma. 22

Ein zweites Beispiel:

Das Deadlock-Problem

(26)

Vert. Sys., F. Ma. 23

Das Deadlock-Problem

Vert. Sys., F. Ma. 24

Phantom-Deadlocks

A

B C

A

B C

A

B C

⇒ B wartet auf C

⇒ A wartet auf B

⇒ C wartet auf A (C benutzt ein exklu-

sives Betriebsmittel)

Deadlock!

falscher Schluss!

beobachte B:

beobachte A:

beobachte C:

wait-for relation

B C

A

t = 1

t = 2

t = 3

Keine exakte globale Zeit!

(27)

Vert. Sys., F. Ma. 25

Ein drittes Problem:

P1

P2

t1 = 5 t4 = 65

t2 = 70 t3 = 80 wie spät?

so spät Δt ("round trip delay")

- Unsymmetrische Laufzeiten - Wie erfährt man die Laufzeit?

- Lastabhängige Laufzeiten von Nachrichten

P1

P2

(Lokalzeit P1)

(Lokalzeit P2)

- Uhren gehen nicht unbedingt gleich schnell!

(wenigstens “Beschleunigung≈ 0”, d.h. konstanter Drift gerechtfertigt?)

- Wie kann man den Offset der Uhren ermitteln oder zumindest approximieren?

Anfrage erhalten bei t = 70, beantwortet bei t = 80 Inhalt der Nachricht:

Uhrensynchronisation

Vert. Sys., F. Ma. 26

Ein viertes Problem: (nicht)

- Gewünscht: Eine Ursache stets vor ihrer (u.U. indirekter) Wirkung beobachten

kleines Leck

“erhöhe Druck”

Pumpe Druckmesser

Beobachter

Druck-

Druck-

verlust Zeit

v

e

e’ v’

Druck- messer Pumpe

erhöhung (Leitstand)

kausaltreue Beobachtungen

Falsche Schlussfolgerung des Beobachters:

Es erhöhte sich der Druck (aufgrund einer unbegrün-

deten Aktivität der Pumpe), es kam zu einem Leck,

was durch den abfallenden Druck angezeigt wird.

(28)

Vert. Sys., F. Ma. 27

Und noch ein Problem:

A B

?!

- Problem: A und B wollen sich über einen unsicheren Kanal auf ein gemeinsames geheimes Passwort einigen.

a k b

A B

1. A denkt sich Passwort k aus und tut es in die Truhe.

2. A verschliesst die Truhe mit einem Schloss a.

3. A sendet die so verschlossene Truhe an B.

4. B umschliesst das ganze mit seinem Schloss b.

5. B sendet alles doppelt verschlossen an A zurück.

6. A entfernt Schloss a.

7. A sendet die mit b verschlossene Truhe wieder an B.

8. B entfernt sein Schloss b.

- Problem: Lässt sich das so softwaretechnisch realisieren?

- Idee: Vorhängeschlösser um eine sichere Truhe:

a b

Wie wäre es damit?: k sei eine Zahl. “Verschliessen” und “aufschliessen”

eines Schlosses entspricht dem Hinzuaddieren oder Subtrahieren einer beliebig ausgedachten (geheimgehaltenen) Zahl a bzw. b.

“Sesam”!

“Sesam”!

Verteilte Geheimnisvereinbarung

Referenzen

ÄHNLICHE DOKUMENTE

Anforderung 5: Speicherung der Beziehungen zwischen Repository-Objekten Fachliche und technische Artefakte, wie Service- oder Datenobjekte, stehen in direk- ter Beziehung

Mittels Geschäfts- prozess-Controlling werden Prozesse analysiert und durch Geschäftsprozess- Monitoring (GPM) während der Prozessausführung anfallenden Informationen und

On the one hand, as an example, a major business software vendor SAP has defined a set of reusable services (Enterprise Services) and semantic standards within SAP Business

Auf der einen Seite wird SOA, die Service orientierte Architektur von Software Systemen vorangetrieben und auf der anderen Seite erfolgt eine Marktöffnung der Hardware Ressourcen

Wenn Erweiterungen an der Standardsoftware erforderlich werden können, um notwendige Capabilities zu implementieren, müssen auch Vorgaben für die Art der Umsetzung von Services

Ein Baustein wird als JEE-EAR Datei erzeugt und enthält in sich alle Ebenen einer 3- Tier-Architektur: Präsentationsschicht (eine WAR Datei mit JSR-168-Portlets), Logikschicht

Bei einer Softwareproduktlinie handelt es sich hierbei per Definition um eine Gruppe softwareintensiver Systeme, welche eine Menge identischer gemanagter Funktionalitäten

- Mattern (bzw. Widmayer): Verteilte Algorithmen, 3st - Mobile Computing (geplant).. - Ubiquitous Computing