Praktikable Einigungsalgorithmen
|
|
|
- Adolf Berg
- vor 8 Jahren
- Abrufe
Transkript
1 Praktikable Einigungsalgorithmen Algorithmen für synchrone Systeme Atomarer Broadcast: siehe Aufgabe 4.4 Burns/Neiger Lamport/Shostak/Pease: Oral Messages; Signed Messages Algorithmen für asynchrone Systeme (mit Einschränkungen) Einigung bei perfekter Ausfallerkennung Paxos (Fail-Stop-Ausfälle) Castro-Algorithmus bzw. Byzantine Paxos Randomisierte Algorithmen (probabilistische Terminierung) Ben Or (Fail-Stop-Ausfälle) Ben Or (Byzantinische Fehler) ABBA Verteilte Algorithmen (VA), WS 2003/04 30 Algorithmen für synchrone Systeme Algorithmus wird in allen Knoten simultan gestartet Maximale Nachrichtenlaufzeit T ist bekannt Damit kann der Algorithmus in expliziten Runden ablaufen: Jeder Knoten wartet nach Start / nach jeder Runde die Zeit T ab (dann sind alle möglichen Nachrichten angekommen), verarbeitet diese und beginnt ggf. eine neue Runde Verteilte Algorithmen (VA), WS 2003/04 3
2 Algorithmus von Burns/Neiger Fast and Simple Distributed Consensus Synchrones Systemmodell Byzantinische fehlerhafte Knoten N M M + Die N Knoten werden in M+ Gruppen eingeteilt: Gruppe : 2 M + Knoten Gruppe 2: 2 M + Knoten Gruppe 3: 2 M - Knoten... Gruppe M+: 3 Knoten Verteilte Algorithmen (VA), WS 2003/04 32 Algorithmus von Burns/Neiger Beschreibung des Algorithmus Jeder Knoten besitzt einen Wert, der mit dem Vorschlagswert des Knoten initalisiert wird In jeder Runde r senden die Knoten der Gruppe r ihren Wert an alle anderen Am Rundenende ermittelt jeder Knoten seinen Wert durch Mehrheitsbildung über die empfangenen Nachrichten. Für ausgebliebene Nachrichten wird der eigene Wert benutzt Wenn ein Knoten von allen Knoten der Gruppe r den gleichen Wert erhält, entscheidet er sich für diesen Wert Knoten, die sich bis zum Ende der (M+)-ten Runde noch nicht entschieden haben, entscheiden sich für ihren Wert zu diesem Zeitpunkt Verteilte Algorithmen (VA), WS 2003/04 33
3 Algorithmus von Burns/Neiger Überlegungen zur Korrektheit Wenn zwei Runden ausgeführt wurden, in denen alle Gruppenmitglieder korrekt sind, terminiert der Algorithmus In der ersten Runde treffen alle die gleiche Mehrheitsentscheidung Da (siehe unten) in jeder Gruppe die Mehrheit korrekt ist, können nachfolgende Runden mit fehlerhaften Gruppenmitgliedern diesen Wert nicht verändern In einer zweiten Runde mit nur korrekten Gruppenmitglieder erhalten alle einen Vektor aus identischen Werten Verteilte Algorithmen (VA), WS 2003/04 34 Algorithmus von Burns/Neiger Überlegungen zur Korrektheit (2) In jeder aktiven Gruppe ist die Mehrheit der Gruppenmitglieder korrekt In den ersten beiden Gruppen ist das offensichtlich (2 M + Mitglieder) Wenn die ersten beiden Gruppen nur korrekte Mitglieder hatten, terminiert der Algorithmus. Wenn die dritte Gruppe aktiv wird, kann es also nur noch M- fehlerhafte Knoten geben, damit ist bei 2 M - Knoten die Mehrheit korrekt, usw. Nach M+ Runden gabe es mindestens eine mit nur korrekten Mitgliedern Verteilte Algorithmen (VA), WS 2003/04 35
4 Algorithmus von Burns/Neiger Fazit Einigungsproblem lösbar in einem synchronen Modell sogar mit byzantinischen Fehlern falls nur wenige Knoten fehlerhaft sind (N M M + ) Deterministischer Algorithmus, der sicher innerhalb von M+ Runden terminiert Weitere positive Eigenschaft: Je weniger Fehler, desto schneller terminiert der Algorithmus Was ist mit der "Lücke" zwischen M M + > N > 3 M Beispiel M=: Ist das Problem mit einem fehlerhaften Knoten lösbar, falls N=4 oder N=5? Verteilte Algorithmen (VA), WS 2003/04 36 OM-Algorithmus von Lamport/Shostak/Pease Modell Synchrones Systemmodell, Byzantinische Fehler N > 3 M Betrachtet wird das Verständigungsproblem: Ein Anführer gibt einen Wert vor, alle korrekten Knoten sollen sich auf einen Wert einigen, der bei korrektem Anführer dessen Wert entsprechen muss Zunächst soll der einfachste Fall betrachtet werde: M =, N = 4 Verteilte Algorithmen (VA), WS 2003/04 37
5 OM-Algorithmus von Lamport/Shostak/Pease OM für 4 Knoten Der Anführer sendet seinen Wert (0, ) in der ersten Runde an alle anderen In einer zweiten Runde senden alle den erhaltenen Wert (oder 0, falls kein Wert erhalten) an alle anderen (ausgenommen den Anführer) Jeder der 4 Knoten trifft eine Mehrheitsentscheidung Verteilte Algorithmen (VA), WS 2003/04 38 OM-Algorithmus von Lamport/Shostak/Pease Fall : Anführer fehlerhaft: Jeder Knoten erhält die Werte {,, 0} und entscheidet sich für Verteilte Algorithmen (VA), WS 2003/04 39
6 OM-Algorithmus von Lamport/Shostak/Pease Fall 2: anderer Knoten fehlerhaft 0 0 Jeder Knoten erhält mindestens 2x den Wert (Anführer und weiterer korrekter Knoten), damit fällt die Entscheidung sicher für den Wert Praktikable Einigungsalgorithmen Verteilte Algorithmen (VA), WS 2003/04 40 OM-Algorithmus von Lamport/Shostak/Pease OM für beliebig viele Knoten Algorithmus OM(0): Der Anführer sendet seinen Wert an alle anderen beteiligten Knoten Jeder Knoten verwendet dieses Wert, oder, falls er keinen Wert empfängt, den Wert 0 Algorithmus OM(m), m> Der Anführer sendet seinen Wert an alle anderen beteiligten Knoten Sei v i der Wert, den Knoten i im Schritt () erhalten hat, oder 0, falls er keinen Wert erhalten hat. Knoten i führt dann Algorithmus OM(m-) mit allen beteiligten Knoten außer dem Anführer durch, wobei er v i als Wert verwendet Verteilte Algorithmen (VA), WS 2003/04 4
7 OM-Algorithmus von Lamport/Shostak/Pease Ablauf: Sei v j (j i) der Wert, den der Knoten i im Schritt (2) vom Knoten j (durch den Algorithmus OM(m-)) erhalten hat, oder 0. Knoten i trifft eine Mehrheitsentscheidung über alle v x (einschliesslich v i ), und verwendet diesen als Ergebnis des Algorithmus OM(m) OM(m) startet n- Ausführung von OM(m-) jede dieser startet n-2 Ausführungen von OM(m-2) usw... Verteilte Algorithmen (VA), WS 2003/04 42 OM-Algorithmus von Lamport/Shostak/Pease Hinweise Um unterscheiden zu können, zu welcher Ausführung welche Nachrichten gehören, muss bei allen Nachrichten eine Pfadinformation mitgeschickt werden Bei Nancy Lynch ( Distributed Algorithms ) ist ein entsprechender Algorithmus als EIG: "Exponential Information Gathering" beschrieben Verteilte Algorithmen (VA), WS 2003/04 43
8 OM-Algorithmus von Lamport/Shostak/Pease Beispiel mit M=2, N=7 OM(2) Rückzug / Angriff OM() Rückzug & Angriff Rückzug OM(0) Verteilte Algorithmen (VA), WS 2003/04 44 OM-Algorithmus von Lamport/Shostak/Pease OM(0) : R : A : A : A OM() 3-er Pfade 0--2: R OM() OM(2) OM(2) Ergebnis 0-: Angriff Knoten 2 betrachtet! : R : A : A : A : A : R : R : R : A : R : R : R 0-3-2: A 0-4-2: R 0-5-2: R 0-3: Angriff 0-4: Rückzug 0-5: Rückzug 0-2: A Rückzug : A : R : R : R 0-6-2: R 0-6: Rückzug Verteilte Algorithmen (VA), WS 2003/04 45
9 OM-Algorithmus von Lamport/Shostak/Pease Fazit In einem synchronen Modell lässt sich das Einigungsproblem mit byzantinischen Fehlern lösen falls N 3 M + ist (d.h. die Schranke, die durch den Beweis der Unmöglichkeit für N 3 M gesetzt wurde, ist eine "harte" Schranke) allerdings mit einem exponentiellen Nachrichtenaufwand, d.h. für größere M ist der Algorithmus nicht brauchbar Verteilte Algorithmen (VA), WS 2003/04 46 SM-Algorithmus von Lamport/Shostak/Pease Modell Synchrones Systemmodell Byzantinische Fehler Nachrichten können verifizierbar und nicht fälschbar signiert werden Siehe Besprechung der Übungsaufgabe 4 Hier lässt sich das Einigungsproblem sogar dann lösen, wenn beliebig viele Knoten fehlerhaft sind. Verteilte Algorithmen (VA), WS 2003/04 47
10 Algorithmen für asynchrone Systeme In der Literatur findet man viele weitere Algorithmen, die in einem synchronem System das Einigungsproblem lösen Leider hat man in der Praxis nicht immer ein System vorliegen, das die geforderten Synchronitätseigenschaften aufweist Was kann man in nicht synchronen Systemen tun? Wir wollen im Folgenden betrachten Algorithmen in einem (eingeschränkten) asynchronen Modell Paxos, Castro ( Byzantine Paxos ) Probabilistischen Algorithmen Ben Or, ABBA Verteilte Algorithmen (VA), WS 2003/04 48 Algorithmen für asynchrone Systeme Einfache Beispiele: Triviale Lösung wenn keine Fehler toleriert werden sollen Initiator-Knoten sendet seinen Wert an alle Alle übernehmen diesen Wert Funktioniert nicht, wenn Initiator ausfällt Einfache Erweiterung auf Fehler möglich? Verteilte Algorithmen (VA), WS 2003/04 49
11 Algorithmen für asynchrone Systeme Erster Versuch: Annahme: Ausfälle werden zuverlässig erkannt Anführer ist der lebendige Knoten mit kleinster ID. Da jeder Knoten von allen anderen weiss, ob diese ausgefallen sind, weiss jeder, ob er Anführer ist Anführer sendet seinen Wert an alle, jeder Knoten übernimmt diesen Wert Verteilte Algorithmen (VA), WS 2003/04 50 Algorithmen für asynchrone Systeme Erster Versuch: Annahme: Ausfälle werden zuverlässig erkannt Anführer ist derjenige lebendige Knoten mit der kleinsten ID. Da jeder Knoten von allen anderen weiss, ob diese ausgefallen sind, weiss jeder, ob er Anführer ist Anführer sendet seinen Wert an alle, jeder Knoten übernimmt diesen Wert Funktioniert leider nicht, falls Anführer beim Senden seines Wertes ausfällt! Kann man verhindern, dass ein neuer Anführer einen neuen, unterschiedlichen Wert sendet? Verteilte Algorithmen (VA), WS 2003/04 5
12 Algorithmen für asynchrone Systeme Zweiter Versuch: Zwei-Phasen-Protokoll Erst sicherstellen, dass ein Wert der einzig mögliche Entscheidungswert ist: Anführer sendet Wert als Vorschlag an alle. Jeder Knoten übernimmt diesen Wert als eigenen Vorschlagswert, für den Fall dass dieser selbst Anführer werden sollte Anführer wartet auf eine Bestätigung von allen nicht ausgefallenen Knoten Dann Entscheidung für Wert propagieren Falls Anführer beim propagieren seines Werts ausfällt, ist sichergestellt, dass der nächste Anführer den gleichen Wert propagiert, also keine Inkonsistenz entstehen kann Verteilte Algorithmen (VA), WS 2003/04 52 Algorithmen für asynchrone Systeme Zweiter Versuch: Beispielablauf P prepare(a) accept(a) decide(a) X P 2 X P 3 prepare(a) decide(a) P 4 accept(a) Verteilte Algorithmen (VA), WS 2003/04 53
13 Algorithmen für asynchrone Systeme Kritische Betrachtung des zweiten Versuchs Funkioniert gut bei perfekter Ausfallerkennung Probleme bei fehlerhafter Ausfallerkennung: Anführer wartet auf Antwort (accept) von allen nicht ausgefallenen Knoten. Wird ein ausgefallener Knoten nicht als solcher erkannt, wartet der Anführer ewig Wird ein funktionierender Knoten fälschlicherweise als ausgefallen betrachtet, können inkonsistente Entscheidungen entstehen Aktivierung eines neuen Anführers hängt von der exakten Erkennung des Ausfalls des alten Anführers ab Bei fehlerhafter Ausfallerkennung: Mehere Anführer zugleich, oder kein Anführer Verteilte Algorithmen (VA), WS 2003/04 54 Algorithmen für asynchrone Systeme Verbesserung des zweiten Versuchs Anführer wartet nicht auf eine Antwort von allen, sondern auf die Antwort eines Quorums aller Knoten Nicht von Ausfallerkennung abhängig, beleibiges Quorum an Knoten muss antworten (d.h. nicht zu viele Ausfälle) Bei Wechsel des Anführers muss der neue Anführer nun ein Quorum der Knoten befragen, ob es einen Vorschlagswert gab Bestimmung des Anführers Gestaltung des Algorithmus so, dass keine Inkonsistenzen entstehen, falls es mehr als einen Anführer gibt (möglicherweise aber keine gesicherte Terminierung) Verteilte Algorithmen (VA), WS 2003/04 55
14 Algorithmen für asynchrone Systeme Verbesserung des zweiten Versuchs Anführer wartet nicht auf eine Antwort von allen, sondern auf die Antwort eines Quorums aller Knoten Nicht von Ausfallerkennung abhängig, beleibiges Quorum an Knoten muss antworten (d.h. nicht zu viele Ausfälle) Bei Wechsel des Anführers muss der neue Anführer nun ein Quorum der Knoten befragen, ob es einen Vorschlagswert gab Bestimmung des Anführers Gestaltung des Algorithmus so, dass keine Inkonsistenzen entstehen, falls es mehr als einen Anführer gibt (möglicherweise aber keine gesicherte Terminierung) Das ist schon (fast) der komplette Paxos-Algorithmus! Verteilte Algorithmen (VA), WS 2003/04 56 Paxos Literatur zu Paxos Lamport: The Part-Time Parliament. Technical Report, DEC Systems Research Center, Sept. 989; auch in: ACM Transactions on Computer Systems, vol. 6., no. 2, 998 Lampson: How to Build a Highly Available System Using Consensus. Proc. 0th Int. Workshop on Distributed Algorithms (WDAG 96) Roberto De Prisco: Revisiting the PAXOS Algorithm. M.S. thesis, MIT, June 997; in Kurzform veröffentlicht als: R. De Prisco, B. Lampson, N. Lynch: Revisiting the PAXOS Algorithm. Proc. th Int. Workshop on Distributed Algorithms (WDAG 97) Lamport: Paxos Made Simple. ACM SIGACT News (Distributed Computing Column) 32, 4, Dec. 200 Verteilte Algorithmen (VA), WS 2003/04 57
Randomisierte Algorithmen: Ben-Or
Randomisierte Algorithmen: Ben-Or Literatur Michael Ben-Or: Another Advantage of Free Choice: Completely Asynchronous Agreement Protocols. Proc. 2nd ACM Symposium on Principles of Distributed Computing,1983
Wahlalgorithmen auf beliebigen Netzstrukturen. Verteilte Algorithmen (VA), WS 2003/04 43
Wahlalgorithmen Überblick/Problemstellung Wahlalgorithmen auf Ringstrukturen Beispiel TokenRing Wahlalgorithmen auf Baumstrukturen Wahlalgorithmen auf beliebigen Netzstrukturen Verteilte Algorithmen (VA),
Die Byzantinischen Generäle
Die Byzantinischen Generäle Von Doris Reim und Bartek Ochab aus dem Artikel: The Byzantine Generals Problem by Leslie Lamport, Robert Shostak, Marshall Pease Agenda I. Einleitung II. Lösbarkeit? III. OM-Algorithmus
Byzantinische Fehlertoleranz durch Gruppenkommunikation am Beispiel des Rampart-Toolkit Frank Mattauch
1 Hauptseminar: Moderne Konzepte für weitverteilte Systeme: Peer-to-Peer-Netzwerke und fehlertolerante Algorithmen (DOOS) Byzantinische Fehlertoleranz durch Gruppenkommunikation am Beispiel des Rampart-Toolkit
The Byzantine Generals' Problem
Proseminar Technische Informatik The Byzantine Generals' Problem Esra Ünal Gliederung 1.Beispiel: meldeanlage 2.Formalisierung des Problems 3.Definition 4.Ursprung der Namensgebung 5.Voraussetzungen für
Überblick. Zeit Motivation Network Time Protocol (NTP) Logische Uhren. c td VS (SS16) Zeit 9 1
Überblick Zeit Motivation Network Time Protocol (NTP) Logische Uhren c td VS (SS16) Zeit 9 1 Motivation Zeit als Mittel zur Reihenfolgebestimmung (Beispiele) Erkennung von Modifikationen an Dateien (z.
Wechselseitiger Ausschluss in verteilten Systemen / Elektionsalgorithmen. Özden Urganci Ulf Sigmund Ömer Ekinci
Wechselseitiger Ausschluss in verteilten Systemen / Elektionsalgorithmen Özden Urganci Ulf Sigmund Ömer Ekinci Inhaltsangabe 1 Einleitung 2 Prinzipien des verteilten wechselseitigen Ausschlusses 2.1 Anforderungen
Algorithmus von Berkeley (1989)
Annahme: kein UTC Empfänger verfügbar Algorithmus (zentral, intern): Algorithmus von Berkeley (1989) ein Rechneragiert als aktiver Time Server. Der Server fragt periodisch die Zeiten/Unterschiede aller
Verteilte Algorithmen
Verteilte Algorithmen Wechselseitiger Ausschluss PD Dr.-Ing. Gero Mühl Kommunikations- und Betriebssysteme Fakultät für Elektrotechnik u. Informatik Technische Universität Berlin Überblick > Problem des
Motivation für Fehlertoleranz in VS Fehlermodelle Erreichen von Fehlertoleranz. Verteilte Systeme. 7. Fehlertoleranz
7-2 Überblick Verteilte Systeme 7. Fehlertoleranz Sommersemester 2011 Motivation für Fehlertoleranz in VS Fehlermodelle Erreichen von Fehlertoleranz Ausfallsicherheit von Prozessen Zuverlässiger Remote
Aufgabe 2.1: Lamports Uhren
Aufgabe 2.1: Lamports Uhren Die Relation a ereignet sich kausal vor b wird kurz als a b notiert. Von zwei Ereignissen a und b sind logische Zeitstempel nach Lamport, C(a) und C(b), bekannt, und es gilt
Prinzipien der modernen Kryptographie Sicherheit
Prinzipien der modernen Kryptographie Sicherheit Prinzip 1 Sicherheitsmodell Das Sicherheitsmodell (Berechnungsmodell, Angriffstypen, Sicherheitsziele) muss präzise definiert werden. Berechnungsmodell:
Vorlesung "Verteilte Systeme" Sommersemester Verteilte Systeme. 9. Verteilte Algorithmen
Vorlesung "Verteilte Systeme" Sommersemester 999 Verteilte Systeme 9. Verteilte Algorithmen Bereits behandelte Bereiche Logische Uhren Keine globale Uhrensynchronisation möglich (Theorie) Kausalitätserhaltender
Überblick. Zeit Motivation Konvergenz-Algorithmus CNV Network Time Protocol (NTP) Logische Uhren. c td VS (SS17) Zeit 8 1
Überblick Zeit Motivation Konvergenz-Algorithmus CNV Network Time Protocol (NTP) Logische Uhren c td VS (SS17) Zeit 8 1 Motivation Zeit als Mittel zur Reihenfolgebestimmung (Beispiele) Erkennung von Modifikationen
Fehlertolerante, konsistente Replikation mit Hilfe des PAXOS Algorithmus
1 Einfuehrung Fehlertolerante, konsistente Replikation mit Hilfe des PAXOS Algorithmus Michael Meier [email protected] Kurzzusammenfassung Dieses Dokument soll einen Ueberblick ueber die Funktionsweisse
Definition Message Authentication Code (MAC) Ein Message Authentication Code (MAC) bzgl. des Nachrichtenraumen M besteht aus den ppt Alg.
Message Authentication Code (MAC) Szenario: Integrität und Authentizität mittels MACs. Alice und Bob besitzen gemeinsamen Schlüssel k. Alice berechnet für m einen MAC-Tag t als Funktion von m und k. Alice
Fortgeschrittene Netzwerk- und Graph-Algorithmen
Fortgeschrittene Netzwerk- und Graph-Algorithmen Prof. Dr. Hanjo Täubig Lehrstuhl für Effiziente Algorithmen (Prof. Dr. Ernst W. Mayr) Institut für Informatik Technische Universität München Wintersemester
Homomorphe Verschlüsselung
Homomorphe Verschlüsselung Definition Homomorphe Verschlüsselung Sei Π ein Verschlüsselungsverfahren mit Enc : G G für Gruppen G, G. Π heißt homomorph, falls Enc(m 1 ) G Enc(m 2 ) eine gültige Verschlüsselung
Fehlertolerante verteilte Systeme, Peer-To-Peer Netzwerke
Fehlertolerante verteilte Systeme, Peer-To-Peer Netzwerke Hauptseminar im SS 2002 Hans Reiser, Rüdiger Kapitza Lehrstuhl für Informatik 4 Verteilte Systeme und Betriebssysteme Universität Erlangen-Nürnberg
9 Verteilte Verklemmungserkennung
9 Verteilte Verklemmungserkennung 9.1 Grundlagen Für die Existenz einer Verklemmung notwendige Bedingungen Exklusive Betriebsmittelbelegung Betriebsmittel können nachgefordert werden Betriebsmittel können
NP-Vollständigkeit. Krautgartner Martin (9920077) Markgraf Waldomir (9921041) Rattensberger Martin (9921846) Rieder Caroline (0020984)
NP-Vollständigkeit Krautgartner Martin (9920077) Markgraf Waldomir (9921041) Rattensberger Martin (9921846) Rieder Caroline (0020984) 0 Übersicht: Einleitung Einteilung in Klassen Die Klassen P und NP
Asymmetrische Verschlüsselungsverfahren
Asymmetrische Verschlüsselungsverfahren Vorlesung 4 Alexander Koch (Vertretung) FAKULTÄT FÜR INFORMATIK, INSTITUT FÜR THEORETISCHE INFORMATIK 0 KIT 2015-11-12 Universität desalexander Landes Baden-Württemberg
Hybride Verschlüsselungsverfahren
Hybride Verschlüsselungsverfahren Ziel: Flexibilität von asym. Verfahren und Effizienz von sym. Verfahren. Szenario: Sei Π = (Gen, Enc, Dec) ein PK-Verschlüsselungsverfahren und Π = (Gen, Enc, Dec ) ein
Clustering (hierarchische Algorithmen)
Clustering (hierarchische Algorithmen) Hauptseminar Kommunikation in drahtlosen Sensornetzen WS 2006/07 Benjamin Mies 1 Übersicht Clustering Allgemein Clustering in Sensornetzen Clusterheads Cluster basiertes
Das zehnte Hilbertsche Problem. Seminar Arbeit von Jurij Bernhardt ( )
Das zehnte Hilbertsche Problem Seminar Arbeit von Jurij Bernhardt (4004655) (11) In dem 10 en Hilbertschen Problem geht es um Existenz eines Algorithmus oder einer Methode zur Bestimmung ganzzahliger Lösungen
13. Woche: NP-Vollständigkeit Satz von Cook-Levin Anwendungen in der Kryptographie
13 Woche: NP-Vollständigkeit Satz von Cook-Levin Anwendungen in der Kryptographie 13 Woche: NP-Vollständigkeit, Satz von Cook-Levin, Anwendungen 276/ 333 N P-Vollständigkeit Ḋefinition NP-vollständig Sei
Protokoll-Spezifikationen
Protokoll-Spezifikationen Steven Müller 1. Einleitung 2. Protokolle 3. Kompatibilität von Protokollen 4. Subprotokolle 5. Realisierung 6. Zusammenfassung 1. Einleitung Worum geht es in diesem Vortrag?
P, NP und NP -Vollständigkeit
P, NP und NP -Vollständigkeit Mit der Turing-Maschine haben wir einen Formalismus kennengelernt, um über das Berechenbare nachdenken und argumentieren zu können. Wie unsere bisherigen Automatenmodelle
Rekursive Aufzählbarkeit Die Reduktion
Rekursive Aufzählbarkeit Die Reduktion Prof. Dr. Berthold Vöcking Lehrstuhl Informatik 1 Algorithmen und Komplexität RWTH Aachen November 2011 Berthold Vöcking, Informatik 1 () Vorlesung Berechenbarkeit
Prinzipien der modernen Kryptographie Sicherheit
Prinzipien der modernen Kryptographie Sicherheit Prinzip 1 Sicherheitsziel Die Sicherheitsziele müssen präzise definiert werden. Beispiele für ungenügende Definitionen von Sicherheit Kein Angreifer kann
CPA-Sicherheit ist ungenügend
CPA-Sicherheit ist ungenügend Definition CCA CCA (=Chosen Ciphertext Attack) ist ein Angriff, bei dem der Angreifer sich Chiffretext seiner Wahl entschlüsseln lassen kann. Beispiele in denen CPA nicht
Verteilte Kyroptographie
Verteilte Kyroptographie Klassische kryptographische Verfahren Kryptographische Hash-Funktionen Public-Key-Signaturen Verteilte Mechanismen Schwellwert-Signaturen Verteilt generierte Zufallszahlen Verteilte
Sicherheit von ElGamal
Sicherheit von ElGamal Satz CPA-Sicherheit ElGamal ElGamal Π ist CPA-sicher unter der DDH-Annahme. Beweis: Sei A ein Angreifer auf ElGamal Π mit Erfolgsws ɛ(n) := Ws[PubK cpa A,Π (n) = 1]. Wir konstruieren
Zeitkomplexität (1) Proseminar Theoretische Informatik. Proseminar Theoretische Informatik: Lisa Dohrmann 1
Zeitkomplexität (1) Proseminar Theoretische Informatik Proseminar Theoretische Informatik: Lisa Dohrmann 1 Warum Komplexitätsbetrachtung? Ein im Prinzip entscheidbares und berechenbares Problem kann in
Kapitel 12: Schnelles Bestimmen der Frequent Itemsets
Einleitung In welchen Situationen ist Apriori teuer, und warum? Kapitel 12: Schnelles Bestimmen der Frequent Itemsets Data Warehousing und Mining 1 Data Warehousing und Mining 2 Schnelles Identifizieren
Near Field Communication (NFC) in Cell Phones
Near Field Communication (NFC) in Cell Phones Annika Paus 24. Juli 2007 Übersicht Einleitung Technische Eigenschaften Vergleich mit anderen verbindungslosen Technologien Sicherheit Abhören von Daten Modifikation
Randomisierte Algorithmen 2. Erste Beispiele
Randomisierte Algorithmen Randomisierte Algorithmen 2. Erste Beispiele Thomas Worsch Fakultät für Informatik Karlsruher Institut für Technologie Wintersemester 2016/2017 1 / 35 Randomisierter Identitätstest
Atomare Commit-Protokolle. Grundlagen von Datenbanken - SS Prof. Dr. Stefan Böttcher Atomare Commit-Protokolle Folie 1
Atomare Commit-Protokolle Grundlagen von Datenbanken - SS 2010 - Prof. Dr. Stefan Böttcher Atomare Commit-Protokolle Folie 1 Atomares Commit-Protokoll Bisher: Protokolle zur lokalen Transaktionsverwaltung
Berechenbarkeit und Komplexität: Rekursive Aufzählbarkeit und die Technik der Reduktion
Berechenbarkeit und Komplexität: Rekursive Aufzählbarkeit und die Technik der Reduktion Prof. Dr. Berthold Vöcking Lehrstuhl Informatik 1 Algorithmen und Komplexität 26. November 2007 Semi-Entscheidbarkeit
Uhrensynchronisation. Dipl.-Inf. J. Richling Wintersemester 2003/2004
Uhrensynchronisation Dipl.-Inf. J. Richling Wintersemester 2003/2004 Motivation Zeit kann in Anwendungen eine große Rolle spielen, insbesondere bei Echtzeitsystemen Häufig wichtiger noch als korrekte Zeit:
Rechnernetze und verteilte Systeme (BSRvS II)
Rechnernetze und verteilte Systeme (BSRvS II) P1 P2 Pn Datennetz Allgemein Atommodell Echo Vertreterauswahl Maximumsuche Schnappschuss Kausale Abhängigkeit Prof. Dr. Heiko Krumm FB Informatik, LS IV, AG
Hardcore-Prädikat. Definition Hardcore-Prädikat. Ziel: Destilliere Komplexität des Invertierens auf ein Bit.
Hardcore-Prädikat Ziel: Destilliere Komplexität des Invertierens auf ein Bit. Definition Hardcore-Prädikat Sei Π f eine Einwegfunktion. Sei hc ein deterministischer pt Alg mit Ausgabe eines Bits hc(x)
Algorithmen. Von Labyrinthen zu. Gerald Futschek
Von Labyrinthen zu Algorithmen Gerald Futschek Wie kommt man aus einem Labyrinth heraus? Labyrinth (griechisch: Haus der Doppelaxt, wahrscheinlich Knossos auf Kreta) Labrys Grundriss des Palastes von Knossos
Das System funktioniert, wenn A UND B gleichzeitig funktionieren. A: Komponente A funktioniert. A : B :
Ein System, das aus einer Serien-Schaltung mit zwei Komponenten besteht, funktioniert dann, wenn beide einzelnen Komponenten gleichzeitig funktionieren. Die Komponenten bzw. seien unabhängig von einander,
7.2 Conjoining Specifications
Seminar: Spezifikation und Verifikation verteilter Systeme 7.2 Conjoining Specifications Teil 2: Das Kompositions-Theorem Dirk Fahland 1 TLA & Komposition in TLA Jede TLA-Formel Mi lässt sich in eine äquivalente
Algorithmen und Datenstrukturen Heapsort
Algorithmen und Datenstrukturen 2 5 Heapsort In diesem Kapitel wird Heapsort, ein weiterer Sortieralgorithmus, vorgestellt. Dieser besitzt wie MERGE-SORT eine Laufzeit von O(n log n), sortiert jedoch das
Vortrag 20: Kurze Vektoren in Gittern
Seminar: Wie genau ist ungefähr Vortrag 20: Kurze Vektoren in Gittern Kerstin Bauer Sommerakademie Görlitz, 2007 Definition und Problembeschreibung Definition: Gitter Seien b 1,,b k Q n. Dann heißt die
Berechenbarkeitstheorie 19. Vorlesung
1 Berechenbarkeitstheorie Dr. Institut für Mathematische Logik und Grundlagenforschung WWU Münster WS 15/16 Alle Folien unter Creative Commons Attribution-NonCommercial 3.0 Unported Lizenz. Erinnerung:
Das Halteproblem. H = { M w M hält auf w}.
Das Halteproblem Beim Halteproblem geht es darum, zu entscheiden, ob ein Programm auf einer bestimmten Eingabe terminiert. In der Notation der TM ergibt sich die folgende formale Problemdefinition. H =
Algorithmen und Datenstrukturen SS09. Foliensatz 15. Michael Brinkmeier. Technische Universität Ilmenau Institut für Theoretische Informatik
Foliensatz 15 Michael Brinkmeier Technische Universität Ilmenau Institut für Theoretische Informatik Sommersemester 2009 TU Ilmenau Seite 1 / 16 Untere Schranken für das Vergleichsbasierte Sortieren TU
Überblick. Kap. 1.4: Minimum Weight Perfect Matching. 1.3 Blüten-Schrumpf Algorithmus für Maximum Matching
Kap. 1.4: Minimum Weight Professor Dr. Petra Mutzel Lehrstuhl für Algorithm Engineering, LS11 4. VO 6. November 2006 Überblick kurze Wiederholung: 1.2 Blüten-Schrumpf-Algorithmus für Perfektes Matching
Bitte verwenden Sie nur dokumentenechtes Schreibmaterial!
VO 182.713 Prüfung Echtzeitsysteme 27. März 2015 KNr. MNr. Zuname, Vorname Ges.)(100) 1.)(35) 2.)(25) 3.)(15) 4.)(25) Zusatzblätter: Bitte verwenden Sie nur dokumentenechtes Schreibmaterial! 1 Grundlagen
Verteilte Systeme SS 2015. Universität Siegen [email protected] Tel.: 0271/740-4050, Büro: H-B 8404. Stand: 7.
Verteilte Systeme SS 2015 Universität Siegen [email protected] Tel.: 0271/740-4050, Büro: H-B 8404 Stand: 7. Juli 2015 Betriebssysteme / verteilte Systeme Verteilte Systeme (1/13) i
Parallele Prozesse. Prozeß wartet
Parallele Prozesse B-66 Prozeß: Ausführung eines Programmes in seinem Adressraum (zugeordneter Speicher) Parallele Prozesse: gleichzeitig auf mehreren Prozessoren laufende Prozesse p1 p2 verzahnte Prozesse:
Tableaukalkül für Aussagenlogik
Tableaukalkül für Aussagenlogik Tableau: Test einer Formel auf Widersprüchlichkeit Fallunterscheidung baumförmig organisiert Keine Normalisierung, d.h. alle Formeln sind erlaubt Struktur der Formel wird
Grundlagen verteilter Systeme
Universität Augsburg Insitut für Informatik Prof. Dr. Bernhard Bauer Wolf Fischer Christian Saad Wintersemester 08/09 Übungsblatt 5 26.11.08 Grundlagen verteilter Systeme Lösungsvorschlag Aufgabe 1: Erläutern
Ausgewählte Kapitel eingebetteter Systeme
Ausgewählte Kapitel eingebetteter Systeme Echtzeitfähige Ereignisgetriebene Scheduling-Strategien Friedrich-Alexander-Universität Erlangen-Nürnberg 08.06.2005 Übersicht Problemdefinition Scheduling-Strategien
Informatik I: Einführung in die Programmierung
Informatik I: Einführung in die Programmierung 30. Ausblick Albert-Ludwigs-Universität Freiburg Bernhard Nebel 13.02.2016 1 13.02.2016 B. Nebel Info I 3 / 17 Programmieren jedenfalls ein bisschen Python-Programme
Das Quadratische Reste Problem
Das Quadratische Reste Problem Definition Pseudoquadrate Sei N = q mit, q rim. Eine Zahl a heißt Pseudoquadrat bezüglich N, falls ( a ) = 1 und a / QR N. N Wir definieren die Srache QUADRAT:= {a Z N (
Algorithmik WS 07/ Vorlesung, Andreas Jakoby Universität zu Lübeck
Lemma 15 KLP 1 ist genau dann lösbar, wenn das dazugehörige LP KLP 2 eine Lösung mit dem Wert Z = 0 besitzt. Ist Z = 0 für x 0, x 0, dann ist x eine zulässige Lösung von KLP 1. Beweis von Lemma 15: Nach
Fragen 1. Muss eine DTM ein Wort zu Ende gelesen haben, um es zu akzeptieren? a) Ja! b) Nein!
4 Turingmaschinen Eingabeband nicht nur lesen, sondern auch schreiben kann und die zudem mit ihrem Lese-Schreib-Kopf (LSK) nach links und rechts gehen kann. Das Eingabeband ist zudem in beide Richtungen
Verteilte Systeme Jürgen Nehmer, SS 2003
Definitionen Instanz Verteilte Systeme Jürgen Nehmer, SS 2003 Einführung Rechnervernetzung Verteiltes Programm Eine Menge autonomer Softwareinstanzen, die ein gemeinsames Problem bearbeiten und zu diesem
Reduktion / Hilberts 10. Problem
Reduktion / Hilberts 10. Problem Prof. Dr. Berthold Vöcking Lehrstuhl Informatik 1 Algorithmen und Komplexität RWTH Aachen 9. November 2009 Berthold Vöcking, Informatik 1 () Vorlesung Berechenbarkeit und
TCP flow control, congestion avoidance
TCP flow control, congestion Christian Dondrup (cdondrup@techfak...) Tim Nelißen (tnelisse@techfak...) 1 Übersicht Einleitung Sliding Window Delayed Acknowledgements Nagle Algorithm Slow Start Congestion
Proseminar Komplexitätstheorie P versus NP Wintersemester 2006/07. Nichtdeterministische Turingmaschinen und NP
Proseminar Komplexitätstheorie P versus NP Wintersemester 2006/07 Vortrag am 17.11.2006 Nichtdeterministische Turingmaschinen und NP Yves Radunz Inhaltsverzeichnis 1 Wiederholung 3 1.1 Allgemeines........................................
Grundlagen verteilter Systeme
Universität Augsburg Institut für Informatik Prof. Dr. Bernhard Bauer Stephan Roser Viviane Schöbel Wintersemester 07/08 Übungsblatt 5 08.01.08 Grundlagen verteilter Systeme Lösungsvorschlag Aufgabe 1:
2.4 Hash-Prüfsummen Hash-Funktion message digest Fingerprint kollisionsfrei Einweg-Funktion
2.4 Hash-Prüfsummen Mit einer Hash-Funktion wird von einer Nachricht eine Prüfsumme (Hash-Wert oder message digest) erstellt. Diese Prüfsumme besitzt immer die gleiche Länge unabhängig von der Länge der
Randomisierte Algorithmen
Randomisierte Algorithmen Randomisierte Algorithmen 1. Einleitung Thomas Worsch Fakultät für Informatik Karlsruher Institut für Technologie Wintersemester 2016/2017 1 / 20 Organisatorisches Überblick Organisatorisches
Dienstgüte in Mobilen Ad Hoc Netzen
Dienstgüte in Mobilen Ad Hoc Netzen KM-/VS-Seminar Wintersemester 2002/2003 Betreuer: Oliver Wellnitz 1 Was ist Dienstgüte? Einleitung The collective effect of service performance which determine the degree
Algorithmen. Von Labyrinthen zu. Gerald Futschek
Von Labyrinthen zu Algorithmen Gerald Futschek Wie kommt man aus einem Labyrinth (griechisch: Haus der Doppelaxt, wahrscheinlich Knossos auf Kreta) Labyrinth heraus? Labrys Grundriss des Palastes von Knossos
Stromchiffre. Algorithmus Stromchiffre
Stromchiffre Algorithmus Stromchiffre Sei G ein Pseudozufallsgenerator mit Expansionsfaktor l(n). Wir definieren Π s = (Gen, Enc, Dec) mit Sicherheitsparameter n für Nachrichten der Länge l(n). 1 Gen:
Warum Modellierung? OE-Vorlesung 2016 Einführung in Petrinetze. Was ist ein Modell? Und warum Petrinetze? Petrinetze sind ein Modellierungswerkzeug.
Warum Modellierung? OE-Vorlesung 016 Einführung in Petrinetze Dr. Lawrence Cabac [email protected] Folien: Dr. Frank Heitmann Fachbereich Informatik Universität Hamburg Petrinetze sind ein
Algorithmen und Datenstrukturen Tutorium Übungsaufgaben
Algorithmen und Datenstrukturen Tutorium Übungsaufgaben AlgoDat - Übungsaufgaben 1 1 Landau-Notation Aufgabe Lösung 2 Rekurrenzen Aufgabe 3 Algorithmenentwurf und -analyse Aufgabe AlgoDat - Übungsaufgaben
Definition 77 Sei n N. Der Median (das mittlere Element) einer total geordneten Menge von n Elementen ist deren i-kleinstes Element, wobei n i =.
2. Der Blum-Floyd-Pratt-Rivest-Tarjan Selektions-Algorithmus Definition 77 Sei n N. Der Median (das mittlere Element) einer total geordneten Menge von n Elementen ist deren i-kleinstes Element, wobei n
Vorlesung "Verteilte Systeme" Sommersemester 1999. Verteilte Systeme NTP) Verteilte Systeme, Sommersemester 1999 Folie 4.2
Verteilte Systeme 4. Zeit Ansätze Pragmatisch: Uhrensynchronisation Abgleich der lokalen Uhren Beispiele Zeitabgleich nach F. Christian Berkeley-Algorithmus Verteilte Synchronisation Network Time Protocol
Algo&Komp. - Wichtige Begriffe Mattia Bergomi Woche 6 7
1 Kürzeste Pfade Woche 6 7 Hier arbeiten wir mit gewichteten Graphen, d.h. Graphen, deren Kanten mit einer Zahl gewichtet werden. Wir bezeichnen die Gewichtsfunktion mit l : E R. Wir wollen einen kürzesten
