<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="de">
	<id>https://wiki-de.moshellshocker.dns64.de/index.php?action=history&amp;feed=atom&amp;title=Entartung_%28Informatik%29</id>
	<title>Entartung (Informatik) - Versionsgeschichte</title>
	<link rel="self" type="application/atom+xml" href="https://wiki-de.moshellshocker.dns64.de/index.php?action=history&amp;feed=atom&amp;title=Entartung_%28Informatik%29"/>
	<link rel="alternate" type="text/html" href="https://wiki-de.moshellshocker.dns64.de/index.php?title=Entartung_(Informatik)&amp;action=history"/>
	<updated>2026-06-06T14:10:34Z</updated>
	<subtitle>Versionsgeschichte dieser Seite in Wikipedia (Deutsch) – Lokale Kopie</subtitle>
	<generator>MediaWiki 1.43.8</generator>
	<entry>
		<id>https://wiki-de.moshellshocker.dns64.de/index.php?title=Entartung_(Informatik)&amp;diff=995483&amp;oldid=prev</id>
		<title>77.1.137.138: in der -&gt; in dem</title>
		<link rel="alternate" type="text/html" href="https://wiki-de.moshellshocker.dns64.de/index.php?title=Entartung_(Informatik)&amp;diff=995483&amp;oldid=prev"/>
		<updated>2024-01-28T00:32:08Z</updated>

		<summary type="html">&lt;p&gt;in der -&amp;gt; in dem&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Neue Seite&lt;/b&gt;&lt;/p&gt;&lt;div&gt;{{Belege fehlen}}&lt;br /&gt;
&lt;br /&gt;
Eine [[Datenstruktur]] wird als &amp;#039;&amp;#039;&amp;#039;entartet&amp;#039;&amp;#039;&amp;#039; bezeichnet, wenn sie final einen Zustand angenommen hat, in dem sie anders als vor der Entartung nachteilig wirkt. Dies kann aufgrund ungünstiger Eingabedaten geschehen.&lt;br /&gt;
&lt;br /&gt;
== Beispiel ==&lt;br /&gt;
&lt;br /&gt;
Eine grundlegende Datenstruktur sind sortierte [[Binärbaum|Binärbäume]]. Diese bestehen aus Knoten mit jeweils zwei Nachfolgerknoten, wobei alle Knoten des linken Teilbaumes (= linker Nachfolgerknoten und dessen Nachfolger, auch die indirekten) kleiner und alle Knoten des rechten Teilbaumes größer als dieser sind:&lt;br /&gt;
&lt;br /&gt;
        [7]&lt;br /&gt;
       /   \&lt;br /&gt;
    [3]     [12]&lt;br /&gt;
    / \     /  \&lt;br /&gt;
  [1] [4] [9]  [15]&lt;br /&gt;
&lt;br /&gt;
Was solche binären Bäume auszeichnet, ist, dass der Baum stets sortiert ist. Das Einfügen neuer Knoten hat die [[Komplexitätstheorie|Komplexität]] O(log(N)), im Gegensatz zu O(N) bei einer sortierten [[Liste (Datenstruktur)|Liste]].&lt;br /&gt;
&lt;br /&gt;
Kommen die Knoten beim Erstellen des Baumes jedoch in ungünstiger Reihenfolge, so kann eine Entartung des Baumes die Folge sein:&lt;br /&gt;
&lt;br /&gt;
 [1]&lt;br /&gt;
   \&lt;br /&gt;
   [3]&lt;br /&gt;
     \&lt;br /&gt;
     [4]&lt;br /&gt;
       \&lt;br /&gt;
       [7]&lt;br /&gt;
         \&lt;br /&gt;
         [9]&lt;br /&gt;
           \&lt;br /&gt;
           [12]&lt;br /&gt;
              \&lt;br /&gt;
              [15]&lt;br /&gt;
&lt;br /&gt;
Jetzt ist der Baum zwar immer noch sortiert, der Aufwand des Einfügens neuer Knoten ist jedoch O(N), da er praktisch eine sortierte Liste ist.&lt;br /&gt;
&lt;br /&gt;
== Anfälligkeit ==&lt;br /&gt;
&lt;br /&gt;
Viele gebräuchliche Datenstrukturen sind für Entartung anfällig, Beispiele hierfür sind der oben erwähnte sortierte binäre Baum und viele Implementierungen von [[Hash-Tabelle]]n ohne Feedback.&lt;br /&gt;
&lt;br /&gt;
Je nach Datenstruktur ist die Anfälligkeit gegen Entartung verschieden. Bei obigem binären Baum reicht es aus, dass die Eingabedaten sortiert sind; bei determiniert oder stochastisch konfigurierten Hashtabellen und &amp;#039;&amp;#039;vernünftigen&amp;#039;&amp;#039; Hashfunktionen ist eine Entartung aber sehr unwahrscheinlich und wird deshalb meist vernachlässigt.&lt;br /&gt;
&lt;br /&gt;
Es gibt aber auch Datenstrukturen, die durch spezielle Maßnahmen gegen Entartung immun sind, z.&amp;amp;nbsp;B. [[Rot-Schwarz-Baum|Rot-Schwarz-Bäume]]. Die Absicherung kostet in der Regel etwas Effizienz, erhöht dafür aber die [[Worst-Case]]-Effizienz erheblich.&lt;br /&gt;
&lt;br /&gt;
== Sicherheitsaspekte ==&lt;br /&gt;
&lt;br /&gt;
Der Einsatz von Datenstrukturen, die entarten können, macht das betreffende Programm anfällig für [[Denial of Service|Denial-of-Service]]-Attacken. Dazu kann ein Angreifer das Programm so mit Eingabedaten füttern, dass die internen Datenstrukturen des Programms entarten und das Programm dadurch erheblich mehr Rechenzeit als üblich benötigt – im Extremfall so viel, dass das Programm seinen Zweck nicht mehr erfüllen kann.&lt;br /&gt;
&lt;br /&gt;
Als Gegenmaßnahmen wurde in die Hashtabellen der auf vielen Webservern verwendeten Programmiersprache [[Perl (Programmiersprache)|Perl]] eine Zufallskomponente eingebaut, die bei jedem Programmstart für eine neue interne Verteilung zu speichernder Werte in die Hashtabelle sorgt und einen DoS-Angriff durch absichtliche Entartung damit erheblich erschwert.&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:Datenstruktur]]&lt;/div&gt;</summary>
		<author><name>77.1.137.138</name></author>
	</entry>
</feed>