<?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=Exklusiv-Oder-Gatter</id>
	<title>Exklusiv-Oder-Gatter - 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=Exklusiv-Oder-Gatter"/>
	<link rel="alternate" type="text/html" href="https://wiki-de.moshellshocker.dns64.de/index.php?title=Exklusiv-Oder-Gatter&amp;action=history"/>
	<updated>2026-06-24T11:24:03Z</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=Exklusiv-Oder-Gatter&amp;diff=27710&amp;oldid=prev</id>
		<title>imported&gt;Hybridrix: /* Literatur */ Rotlink Beikirch (Artikel in Planung)</title>
		<link rel="alternate" type="text/html" href="https://wiki-de.moshellshocker.dns64.de/index.php?title=Exklusiv-Oder-Gatter&amp;diff=27710&amp;oldid=prev"/>
		<updated>2025-10-15T09:00:30Z</updated>

		<summary type="html">&lt;p&gt;&lt;span class=&quot;autocomment&quot;&gt;Literatur: &lt;/span&gt; Rotlink Beikirch (Artikel in Planung)&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Neue Seite&lt;/b&gt;&lt;/p&gt;&lt;div&gt;{{Gatter}}&lt;br /&gt;
Ein &amp;#039;&amp;#039;&amp;#039;Exklusiv-Oder-Gatter&amp;#039;&amp;#039;&amp;#039;, auch &amp;#039;&amp;#039;&amp;#039;XOR-Gatter&amp;#039;&amp;#039;&amp;#039; (von {{enS|e&amp;#039;&amp;#039;&amp;#039;X&amp;#039;&amp;#039;&amp;#039;clusive &amp;#039;&amp;#039;&amp;#039;OR&amp;#039;&amp;#039;&amp;#039;|de=[[Kontravalenz|exklusives Oder]]}}, „entweder oder“) ist ein [[Logikgatter|Gatter]] (eine elektronische Schaltung) mit zwei&amp;lt;!--mehreren--&amp;gt; Eingängen und einem Ausgang, bei dem der Ausgang [[Logik|logisch]] „1“ ist, wenn an nur einem Eingang „1“ anliegt und an dem anderen&amp;lt;!--den restlichen--&amp;gt; „0“. Die Exklusiv-Oder-Verknüpfung wird auch als Anti- oder [[Kontravalenz]] bezeichnet.&lt;br /&gt;
&lt;br /&gt;
Das&amp;lt;!--Für den einfachen Fall eines Exklusiv-Oder-Gatters mit zwei Eingängen--&amp;gt; bedeutet&amp;lt;!-- das--&amp;gt;, dass das Gatter mit &amp;#039;&amp;#039;verschiedenen&amp;#039;&amp;#039; Eingangspegeln beaufschlagt sein muss, um am Ausgang eine „1“ zu erhalten. &amp;#039;&amp;#039;Entweder&amp;#039;&amp;#039; an dem einen &amp;#039;&amp;#039;oder&amp;#039;&amp;#039; am anderen Eingang muss „1“ anliegen. Im Unterschied zu einer einfachen OR-Verknüpfung gilt die Bedingung als nicht erfüllt, wenn an &amp;#039;&amp;#039;beiden&amp;#039;&amp;#039; Eingängen eine „1“ anliegt. Bei Exklusiv-Oder ist das Ergebnis in diesem Fall eine „0“.&lt;br /&gt;
&lt;br /&gt;
== Symbolik ==&lt;br /&gt;
In der Literatur wird das Exklusiv-Oder mit verschiedenen Symbolen gekennzeichnet. Üblich ist es, den Operator als „XOR“ oder „EOR“ auszuschreiben, z.&amp;amp;nbsp;B. mit dem Ausdruck „A &amp;#039;&amp;#039;XOR&amp;#039;&amp;#039; B“. Bei Verwendung des Symbols „+“ für das [[Disjunktion|logische Oder]] wird das Symbol „&amp;lt;math&amp;gt;\oplus&amp;lt;/math&amp;gt;“ für das Exklusiv-Oder verwendet. Bei der Verwendung von „∨“ für das logische Oder wird hingegen „⊻“ für das Exklusiv-Oder verwendet. Als [[bitweiser Operator]] findet in [[C (Programmiersprache)|C]] (und von ihr abgeleiteten Programmiersprachen) das Zeichen &amp;lt;code&amp;gt;[[^]]&amp;lt;/code&amp;gt; Verwendung.&lt;br /&gt;
&lt;br /&gt;
{{Siehe auch|Kontravalenz#Notation_und_Aussprache|titel1=Notation und Aussprache des Kontravalentors}}&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+ Übersicht&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;2&amp;quot;| Funktion&lt;br /&gt;
! colspan=&amp;quot;3&amp;quot;| Schaltsymbol&lt;br /&gt;
! rowspan=&amp;quot;2&amp;quot;| [[Wahrheitstabelle]]&lt;br /&gt;
! rowspan=&amp;quot;2&amp;quot;| Relais-Logik&lt;br /&gt;
|-&lt;br /&gt;
| IEC 60617-12&lt;br /&gt;
| US [[ANSI]] 91-1984&lt;br /&gt;
| [[DIN]] 40700 (vor 1976)&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;math&amp;gt;Y = A \,\underline{\lor}\, B&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&amp;lt;math&amp;gt;Y = A \oplus B&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&amp;lt;math&amp;gt;Y = A \nleftrightarrow B&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;Y = A\overline{B} + \overline{A}B&amp;lt;/math&amp;gt;&lt;br /&gt;
| [[Datei:IEC XOR label.svg|125px|rahmenlos|alt=|klasse=skin-invert|zentriert]]&lt;br /&gt;
| [[Datei:Xor-gate-en.svg|125px|rahmenlos|alt=|klasse=skin-invert|zentriert]]&lt;br /&gt;
| [[Datei:Logic-gate-xor-de.svg|125px|rahmenlos|alt=|klasse=skin-invert|zentriert]]&amp;lt;br /&amp;gt;oder&amp;lt;br /&amp;gt;[[Datei:Logic-gate-xor-de-2.svg|125px|rahmenlos|alt=|klasse=skin-invert]]&lt;br /&gt;
|&lt;br /&gt;
{| class=&amp;quot;wikitable centered&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! style=&amp;quot;width:33%&amp;quot;|A&lt;br /&gt;
! style=&amp;quot;width:33%&amp;quot;|B&lt;br /&gt;
! Y&amp;amp;nbsp;=&amp;amp;nbsp;A&amp;amp;nbsp;⊻&amp;amp;nbsp;B&lt;br /&gt;
|-&lt;br /&gt;
| {{Nein-Feld|0}} || {{Nein-Feld|0}} || {{Nein-Feld|&amp;#039;&amp;#039;&amp;#039;0&amp;#039;&amp;#039;&amp;#039;}}&lt;br /&gt;
|-&lt;br /&gt;
| {{Nein-Feld|0}} || {{Ja-Feld|1}} || {{Ja-Feld|&amp;#039;&amp;#039;&amp;#039;1&amp;#039;&amp;#039;&amp;#039;}}&lt;br /&gt;
|-&lt;br /&gt;
| {{Ja-Feld|1}} || {{Nein-Feld|0}} || {{Ja-Feld|&amp;#039;&amp;#039;&amp;#039;1&amp;#039;&amp;#039;&amp;#039;}}&lt;br /&gt;
|-&lt;br /&gt;
| {{Ja-Feld|1}} || {{Ja-Feld|1}} || {{Nein-Feld|&amp;#039;&amp;#039;&amp;#039;0&amp;#039;&amp;#039;&amp;#039;}}&lt;br /&gt;
|}&lt;br /&gt;
| [[Datei:Relay xor.svg|200px|rahmenlos|alt=|klasse=skin-invert|zentriert]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Das Gleichheitszeichen = verdeutlicht beim gegenwärtig in Deutschland gültigen Schaltsymbol, dass nur bei &amp;#039;&amp;#039;einer&amp;#039;&amp;#039; „1“ an den Eingängen (High-Pegel, logisch „1“) der Ausgang „1“ ist.&lt;br /&gt;
&lt;br /&gt;
== Synthese ==&lt;br /&gt;
{| class=&amp;quot;wikitable toptextcells&amp;quot;&lt;br /&gt;
|+ Exklusiv-Oder&lt;br /&gt;
|- class=&amp;quot;skin-invert&amp;quot;&lt;br /&gt;
| [[Datei:XOR Aufbau NAND.svg|zentriert]]&lt;br /&gt;
| [[Datei:XOR Aufbau Und-Oder.svg|zentriert]]&lt;br /&gt;
| [[Datei:254px 3gate XOR.jpg|zentriert]]&lt;br /&gt;
| [[Datei:XOR AOI logic gates.svg|zentriert]]&lt;br /&gt;
|-&lt;br /&gt;
| Aufbau eines Exklusiv-Oder-Gatters&amp;lt;br /&amp;gt;aus vier NAND-Gattern&lt;br /&gt;
| Aufbau eines Exklusiv-Oder-Gatters aus Und-,&amp;lt;br /&amp;gt;Oder- und Nicht-Gattern (letztere für die&amp;lt;br /&amp;gt;Negation je eines der Und-Gatter-Eingänge)&lt;br /&gt;
| Aufbau eines Exklusiv-Oder-Gatters&amp;lt;br /&amp;gt;aus Und-, Oder- und NAND-Gattern&lt;br /&gt;
| Aufbau eines Exklusiv-Oder-Gatters aus&amp;lt;br /&amp;gt; einem NOR- und einem [[AND-OR-Invert]]-Gatter&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Die linke Abbildung zeigt den Aufbau eines Exklusiv-Oder-Gatters aus vier [[NAND-Gatter|NAND-Bausteinen]] gemäß der logischen Äquivalenz&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;x \,\underline{\lor}\, y \Leftrightarrow \Big( x \,\overline{\land}\, ( x \,\overline{\land}\, y ) \Big) \,\overline{\land}\, \Big( y \,\overline{\land}\, ( x \,\overline{\land}\, y ) \Big)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Die zweite Abbildung von links zeigt den Aufbau eines Exklusiv-Oder-Gatters aus [[Nicht-Gatter|Nicht-]], [[Und-Gatter|Und-]] und [[Oder-Gatter|Oder-Bausteinen]]. Aufgrund der Vielzahl an unterschiedlichen Komponenten besteht allerdings nur in Ausnahmefällen Relevanz für die Umsetzung in Hardware:&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;x \,\underline{\lor}\, y \Leftrightarrow \Big( \, ( \neg{x} \land  y ) \lor ( x \land \neg{y} ) \, \Big)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Die dritte Abbildung von links zeigt den Aufbau eines Exklusiv-Oder-Gatters aus einem [[NAND-Gatter|NAND-]], einem [[Und-Gatter|Und-]] und einem [[Oder-Gatter]].&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;x \,\underline{\lor}\, y \Leftrightarrow \Big( \, ( x \overline{\land}  y ) \land ( x \lor y ) \, \Big)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Die rechte Abbildung zeigt den Aufbau eines Exklusiv-Oder-Gatters aus einem [[NOR-Gatter|NOR]]- und einem [[AND-OR-Invert]]-Gatter. Umgangssprachlich entspricht diese Formulierung der Aussage, dass weder beide Eingänge beide wahr (d.&amp;amp;nbsp;h. &amp;lt;math&amp;gt; x \land y &amp;lt;/math&amp;gt;) noch beide falsch (d.&amp;amp;nbsp;h. &amp;lt;math&amp;gt; x \overline{\lor} y&amp;lt;/math&amp;gt;) sein dürfen.&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;x \,\underline{\lor}\, y \Leftrightarrow \Big( \, (x \overline{\lor} y) \overline{\lor} (x \land y)  \, \Big)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Mehr als zwei Eingänge ===&lt;br /&gt;
&lt;br /&gt;
Die wörtliche Interpretation des Namens „Exklusiv-Oder“ und auch die Symbolik des rechteckigen IEC Schaltzeichens (mit „=1“) werfen die Frage nach dem korrekten Verhalten bei mehr als 2 Eingängen auf. Wenn ein Logikgatter drei oder mehr Eingänge besitzt und am Ausgang nur dann eine „1“ produziert, wenn genau einer der Eingänge den Wert „1“ hat, dann wäre es eine Art „[[1-aus-n-Code|1-aus-n]]“ Detektor (für 2 Eingänge ist dies auch tatsächlich der Fall).&lt;br /&gt;
&lt;br /&gt;
In der Praxis wird dies allerdings selten so implementiert. Es ist überwiegend üblich, das Verhalten weiterer Eingänge so zu betrachten, als ob eine Kaskade von XOR-Operationen mit jeweils 2 Eingängen aufgebaut würde: Die ersten beiden Signale werden in ein erstes XOR-Gatter eingespeist. Der Ausgang dieses Gatters wird zusammen mit dem dritten Eingangssignal in ein zweites XOR-Gatter eingespeist und so weiter für alle weiteren Eingangssignale. Das Ergebnis ist eine Schaltung, welche „1“ ausgibt, wenn eine ungerade Anzahl Eingänge den Wert „1“ haben -- und „0“ bei gerader Anzahl von Eingängen mit „1“. Dieses Verhalten kann zum Beispiel als Paritätsgenerator oder Modulo-2-Addierer genutzt werden.&lt;br /&gt;
&lt;br /&gt;
Beispiel: Der [[Liste von integrierten Schaltkreisen der 74xx-Familie|74LVC1G386]] Schaltkreis wird als Logikgatter mit 3 Eingängen beworben und implementiert einen Paritätsgenerator.&amp;lt;ref&amp;gt;[https://assets.nexperia.com/documents/data-sheet/74LVC1G386.pdf 74LVC1G386] [[data sheet]]&amp;lt;/ref&amp;gt; Die dazugehörige Wahrheitstabelle sieht wie folgt aus:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! style=&amp;quot;width:25%&amp;quot;|A&lt;br /&gt;
! style=&amp;quot;width:25%&amp;quot;|B&lt;br /&gt;
! style=&amp;quot;width:25%&amp;quot;|C&lt;br /&gt;
! Y&lt;br /&gt;
|-&lt;br /&gt;
| {{Nein-Feld|0}} || {{Nein-Feld|0}} || {{Nein-Feld|0}} || {{Nein-Feld|&amp;#039;&amp;#039;&amp;#039;0&amp;#039;&amp;#039;&amp;#039;}}&lt;br /&gt;
|-&lt;br /&gt;
| {{Nein-Feld|0}} || {{Nein-Feld|0}} || {{Ja-Feld|1}} || {{Ja-Feld|&amp;#039;&amp;#039;&amp;#039;1&amp;#039;&amp;#039;&amp;#039;}}&lt;br /&gt;
|-&lt;br /&gt;
| {{Nein-Feld|0}} || {{Ja-Feld|1}} || {{Nein-Feld|0}} || {{Ja-Feld|&amp;#039;&amp;#039;&amp;#039;1&amp;#039;&amp;#039;&amp;#039;}}&lt;br /&gt;
|-&lt;br /&gt;
| {{Nein-Feld|0}} || {{Ja-Feld|1}} || {{Ja-Feld|1}} || {{Nein-Feld|&amp;#039;&amp;#039;&amp;#039;0&amp;#039;&amp;#039;&amp;#039;}}&lt;br /&gt;
|-&lt;br /&gt;
| {{Ja-Feld|1}} || {{Nein-Feld|0}} || {{Nein-Feld|0}} || {{Ja-Feld|&amp;#039;&amp;#039;&amp;#039;1&amp;#039;&amp;#039;&amp;#039;}}&lt;br /&gt;
|-&lt;br /&gt;
| {{Ja-Feld|1}} || {{Nein-Feld|0}} || {{Ja-Feld|1}} || {{Nein-Feld|&amp;#039;&amp;#039;&amp;#039;0&amp;#039;&amp;#039;&amp;#039;}}&lt;br /&gt;
|-&lt;br /&gt;
| {{Ja-Feld|1}} || {{Ja-Feld|1}} || {{Nein-Feld|0}} || {{Nein-Feld|&amp;#039;&amp;#039;&amp;#039;0&amp;#039;&amp;#039;&amp;#039;}}&lt;br /&gt;
|-&lt;br /&gt;
| {{Ja-Feld|1}} || {{Ja-Feld|1}} || {{Ja-Feld|1}} || {{Ja-Feld|&amp;#039;&amp;#039;&amp;#039;1&amp;#039;&amp;#039;&amp;#039;}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Auch in gängiger Automatisierungssoftware wie beispielsweise [[STEP 7]] ist dieses Verhalten bei XOR-Bitverknüpfungen von mehr als zwei Eingangssignalen so implementiert.&lt;br /&gt;
&lt;br /&gt;
[[Paul Horowitz]] und Winfield Hill gehen im Lehrbuch &amp;#039;&amp;#039;The Art of Electronics&amp;#039;&amp;#039; die Problematik an, indem sie schreiben, ein Exklusiv-Oder-Gatter habe niemals mehr als zwei Eingänge.&amp;lt;ref&amp;gt;[[Paul Horowitz|Horowitz]] &amp;amp; Hill: &amp;#039;&amp;#039;The Art of Electronics&amp;#039;&amp;#039;, Second edition, S. 480 oben links, Zitat: {{&amp;quot; |Sprache=en |Text=it [an exclusive OR gate] never has more than two inputs}}&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Programmierung ==&lt;br /&gt;
&lt;br /&gt;
Die Exklusiv-Oder-Verknüpfung lässt sich auch durch die [[Addition]] zweier [[Bit]]s [[modulo]] 2 berechnen. Dazu berechnet man die einfache Summe der Eingangssignale, dividiert die Summe durch 2 und betrachtet danach den Rest der Division. Ist die Summe eine gerade Zahl, so ist der Rest gleich null, ist sie ungerade, so ist der Rest gleich eins. Weiterhin kann die einfache Exklusiv-Oder-Verknüpfung zweier Eingangssignale auch als Anzeige der Ungleichheit der Eingangsbits angesehen werden. Dieses gilt auch für eine beliebige gerade Anzahl an Eingangssignalen.&lt;br /&gt;
&lt;br /&gt;
== Anwendung ==&lt;br /&gt;
=== Addition von binären Zahlen ===&lt;br /&gt;
Ein Exklusiv-Oder-Gatter kann zur Addition von binären Zahlen eingesetzt werden. Hier wird zusätzlich, zum Beispiel mit Hilfe eines Und-Gatters, beim Zustand x=1 und y=1 ein sogenannter [[Übertrag]] gebildet. Dieser Übertrag ist bei der Addition des nächsthöheren Bits als „1“ zu berücksichtigen. Der [[Addierer]] des Von-Neumann-Addierwerks benutzt diese Logik.&lt;br /&gt;
&lt;br /&gt;
=== Kryptografie ===&lt;br /&gt;
Das nachweislich sichere [[Verschlüsselungsverfahren]] [[One-Time-Pad]] wird meist unter Zuhilfenahme einer Exklusiv-Oder-Verknüpfung implementiert. Die zu verschlüsselnde Nachricht ([[Klartext (Kryptographie)|Klartext]]) wird dazu zuerst als Bitfolge kodiert. Eine zweite zufällige Bitfolge, die genauso lang wie die Nachricht ist, wird als [[Schlüssel (Kryptologie)|Schlüssel]] verwendet. Der [[Geheimtext]] entsteht, indem das erste Bit der Nachricht mit dem ersten Bit des Schlüssels exklusiv-oder-verknüpft wird, das zweite Bit mit dem zweiten und so weiter. Führt man anschließend die gleiche Exklusiv-Oder-Verknüpfung mit dem Geheimtext und dem Schlüssel aus, so erhält man wieder die ursprüngliche Nachricht.&lt;br /&gt;
&lt;br /&gt;
==== Sicherheit ====&lt;br /&gt;
* Fällt einem Angreifer der Klartext und der Geheimtext in die Hand, kann er sehr einfach mittels Exklusiv-Oder-Verknüpfung den Schlüssel herausfinden und diesen bei weiteren Geheimtexten ausprobieren. Die Gewinnung des Schlüssels ist bei anderen Methoden (z.&amp;amp;nbsp;B. [[AES-256|AES]]) kaum möglich. Das spielt beim One-Time-Pad-Verfahren allerdings keine Rolle, da für jede Nachricht voneinander vollständig unabhängige Schlüssel verwendet werden.&lt;br /&gt;
* Angriff auf exklusiv-oder-verschlüsselte Daten, falls die Schlüssellänge kürzer ist als der Geheimtext:&amp;lt;ref&amp;gt;Bruce Schneier: &amp;#039;&amp;#039;Angewandte Kryptographie.&amp;#039;&amp;#039; 2006.&amp;lt;/ref&amp;gt;&lt;br /&gt;
** Mit Exklusiv-Oder-Operationen wird der Geheimtext mit Geheimtext&amp;lt;sub&amp;gt;&amp;#039;&amp;#039;n&amp;#039;&amp;#039;&amp;lt;/sub&amp;gt; verarbeitet, wobei Geheimtext&amp;lt;sub&amp;gt;&amp;#039;&amp;#039;n&amp;#039;&amp;#039;&amp;lt;/sub&amp;gt; dem um &amp;#039;&amp;#039;n&amp;#039;&amp;#039; Bits nach rechts verschobenen Geheimtext entspricht. Wie viele Bits bleiben nach der Exklusiv-Oder-Operation jeweils dieselben? Die Schlüssellänge entspricht der Verschiebung&amp;amp;nbsp;&amp;#039;&amp;#039;n&amp;#039;&amp;#039;, bei der das Resultat von Geheimtext XOR Geheimtext&amp;lt;sub&amp;gt;&amp;#039;&amp;#039;n&amp;#039;&amp;#039;&amp;lt;/sub&amp;gt; am stärksten dem Geheimtext ähnelt.&lt;br /&gt;
** Nun ist die Schlüssellänge &amp;#039;&amp;#039;n&amp;#039;&amp;#039; gefunden. Die Operation Geheimtext XOR Geheimtext&amp;lt;sub&amp;gt;&amp;#039;&amp;#039;n&amp;#039;&amp;#039;&amp;lt;/sub&amp;gt; ergibt dasselbe Resultat wie Klartext XOR Klartext&amp;lt;sub&amp;gt;&amp;#039;&amp;#039;n&amp;#039;&amp;#039;&amp;lt;/sub&amp;gt;. Denn es gilt:&amp;lt;ref name=&amp;quot;KRACK&amp;quot;&amp;gt;{{Internetquelle |autor=Jürgen Schmidt |url=https://www.heise.de/security/artikel/KRACK-so-funktioniert-der-Angriff-auf-WPA2-3865019.html |titel=KRACK – so funktioniert der Angriff auf WPA2 |werk=heise Security |hrsg=Heise Medien GmbH &amp;amp; Co. KG |datum=2017-10-19 |abruf=2017-10-24}}&amp;lt;/ref&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;\text{Geheimtext} \oplus \text{Geheimtext}_n = &lt;br /&gt;
(\text{Klartext} \oplus \text{Schlüssel}) \oplus  (\text{Klartext}_n \oplus \text{Schlüssel}) = (\text{Klartext} \oplus \text{Schlüssel}) \oplus (\text{Schlüssel} \oplus \text{Klartext}_n)&amp;lt;/math&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;= \text{Klartext} \oplus (\text{Schlüssel} \oplus \text{Schlüssel}) \oplus \text{Klartext}_n = \text{Klartext} \oplus \text{Klartext}_n&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt; Es fällt in der Regel genügend Klartext an, um die Nachricht vollends zu entziffern. Denn es gilt:&amp;lt;ref name=&amp;quot;KRACK&amp;quot; /&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;\text{Klartext} \oplus \text{Klartext}_n \oplus \text{Klartext}_n = \text{Klartext}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Weitaus einfacher gestaltet sich die Entschlüsselung, wenn der Schlüssel &amp;#039;&amp;#039;n&amp;#039;&amp;#039; Bits lang ist und im Klartext die gleichen Bits sich &amp;#039;&amp;#039;m&amp;#039;&amp;#039;&amp;amp;nbsp;Mal wiederholen, wobei &amp;#039;&amp;#039;m&amp;#039;&amp;#039; ein Vielfaches von&amp;amp;nbsp;&amp;#039;&amp;#039;n&amp;#039;&amp;#039; darstellt. Hier als Beispiel eine Wiederholung von Nullen; der Schlüssel ist &amp;lt;code&amp;gt;1010&amp;lt;/code&amp;gt;. Da sich im verschlüsselten Text die Sequenz &amp;lt;code&amp;gt;1010&amp;lt;/code&amp;gt; wiederholt, kann der Angreifer vermuten, dass der Klartext an dieser Stelle aus Nullen bestand und der Schlüssel &amp;lt;code&amp;gt;1010&amp;lt;/code&amp;gt; war (oder der Geheimtext aus Einsen, und der Schlüssel war &amp;lt;code&amp;gt;0101&amp;lt;/code&amp;gt;):&lt;br /&gt;
Klartext XOR Schlüssel → Geheimtext&amp;lt;br /&amp;gt;&lt;br /&gt;
11111001&amp;#039;&amp;#039;&amp;#039;000000000000&amp;#039;&amp;#039;&amp;#039; XOR 10101010101010101010 → 01010011&amp;#039;&amp;#039;&amp;#039;101010101010&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Die Exklusiv-Oder-Verschlüsselung lässt sich aber entscheidend verbessern, indem aus einem kurzen Passwort ein genügend langer Schlüssel erzeugt wird. Ein Beispiel dafür ist die Verschlüsselung mittels [[RC4]], die aber mittlerweile als unsicher gilt. Sicherer, aber etwas langsamer ist die Verschlüsselung mit [[RC4#Spritz|Spritz]].&lt;br /&gt;
&lt;br /&gt;
=== Prüfsummenbildung ===&lt;br /&gt;
&amp;lt;div class=&amp;quot;float-right hintergrundfarbe2&amp;quot; style=&amp;quot;margin-top:0; font-family:monospace,monospace; padding:0 .5em;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;span style=&amp;quot;color:#800000&amp;quot;&amp;gt;0101&amp;lt;/span&amp;gt; XOR &amp;lt;span style=&amp;quot;color:#008000&amp;quot;&amp;gt;1011&amp;lt;/span&amp;gt; = &amp;lt;span style=&amp;quot;color:#000080&amp;quot;&amp;gt;1110&amp;lt;/span&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;span style=&amp;quot;color:#000080&amp;quot;&amp;gt;1011&amp;lt;/span&amp;gt; XOR &amp;lt;span style=&amp;quot;color:#008000&amp;quot;&amp;gt;1110&amp;lt;/span&amp;gt; = &amp;lt;span style=&amp;quot;color:#800000&amp;quot;&amp;gt;0101&amp;lt;/span&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;span style=&amp;quot;color:#000080&amp;quot;&amp;gt;0101&amp;lt;/span&amp;gt; XOR &amp;lt;span style=&amp;quot;color:#800000&amp;quot;&amp;gt;1110&amp;lt;/span&amp;gt; = &amp;lt;span style=&amp;quot;color:#008000&amp;quot;&amp;gt;1011&amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
Aus zwei Bitfolgen, angenommen &amp;lt;code&amp;gt;0101&amp;lt;/code&amp;gt; und &amp;lt;code&amp;gt;1011&amp;lt;/code&amp;gt;, wird mittels der Exklusiv-Oder-Verknüpfung die [[Paritätsbit|Parität]] gebildet: &amp;lt;code&amp;gt;1110&amp;lt;/code&amp;gt; (erste Zeile im Beispiel rechts). Diese Parität muss zusammen mit den beiden Bitfolgen übertragen bzw. gespeichert werden. Geht nun die erste Bitfolge (&amp;lt;code&amp;gt;0101&amp;lt;/code&amp;gt;) verloren, so kann sie wiederhergestellt werden, indem die zweite Bitfolge (&amp;lt;code&amp;gt;1011&amp;lt;/code&amp;gt;) mit der Parität exklusiv-oder-verknüpft wird (zweite Zeile). Analog könnte die zweite Bitfolge wiederhergestellt werden (dritte Zeile). Dieser Mechanismus wird unter anderem auch bei [[RAID 5]] verwendet: Je zwei Datenblöcke (aus z.&amp;amp;nbsp;B. 512 Bytes) werden auf je eine Festplatte geschrieben. Auf eine dritte Platte wird die XOR-Verknüpfung der beiden ersten Blöcke geschrieben. Geht jetzt irgendeine der drei Festplatten kaputt, kann die Information vollständig aus den beiden anderen restauriert werden.&lt;br /&gt;
&lt;br /&gt;
=== Frequenzverdopplung ===&lt;br /&gt;
[[Datei:Frequenzverdoppler mit XOR.png|mini|Frequenzverdopplung eines Rechtecksignals]]&lt;br /&gt;
Eine sehr einfache Frequenzverdopplung von [[Rechteckschwingung]]en im Frequenzbereich bis zu einigen 100&amp;amp;nbsp;MHz kann mit einem Exklusiv-Oder-Gatter erzielt werden, wenn ein Eingang unmittelbar und der andere mit einem geringfügig verzögerten Signal (in der Zeichnung durch ein RC-Glied dargestellt, denkbar sind aber auch Schaltungen beispielsweise mit [[Gatterlaufzeit]]en, wie etwa zwei Inverter) gespeist wird. Das Exklusiv-Oder-Gatter schaltet bei steigender und fallender Flanke; die entstehenden Nadelimpulse sind phasengebunden und etwa so kurz wie die eingesetzte Signalverzögerung. Da dieses Verfahren keine Resonanzfilter verwendet, kann das Eingangssignal fast beliebige [[Tastgrad|Tastverhältnisse]] besitzen bzw. stark [[Frequenzmodulation|frequenzmoduliert]] sein, allerdings ist im Allgemeinen kein Tastgrad von 50 % zu erreichen.&lt;br /&gt;
&lt;br /&gt;
=== Schaltbarer Inverter ===&lt;br /&gt;
An einem Eingang liegt ein Signal an, der andere dient als Steuereingang. Liegt der Steuereingang auf logisch „0“, wird das Signal ohne Änderung durchgelassen. Liegt der Steuereingang auf logisch&amp;amp;nbsp;„1“, verhält sich das Gatter wie ein Inverter.&lt;br /&gt;
&lt;br /&gt;
== CMOS-Realisierung ==&lt;br /&gt;
[[Datei:Cmos xor.svg|mini|Schaltbild in CMOS-Technik]]&lt;br /&gt;
Die zuvor gezeigte Realisierung aus Und- und Oder-Gattern benötigt in [[CMOS]]-Technik 16 Transistoren. Eine direkte Umsetzung (rechts) benötigt nur 12 Transistoren und mit Tricks, unter Einbußen bei der Geschwindigkeit, sechs Transistoren bzw. vier Transistoren. Zum Verständnis: T1+T2 und T3+T4 invertieren die Eingangssignale. Bei High-Potential an beiden Eingängen (A+B) leiten T7+T8 und ziehen den Ausgang Y auf Low-Potential. Sind beide Eingänge auf Low-Potential, leiten T11+T12, da vor beiden ein Inverter liegt, der das Eingangssignal umkehrt.&lt;br /&gt;
&lt;br /&gt;
Eine Realisierung mittels [[AND-OR-Invert]]-Logik benötigt 10 Transistoren. Sie wurde beispielsweise beim [[Intel 80386]] verwendet.&amp;lt;ref&amp;gt;{{Cite web|url=http://www.righto.com/2023/12/386-xor-circuits.html|title=Two interesting XOR circuits inside the Intel 386 processor|language=en|author=Ken Shirrif}}&amp;lt;/ref&amp;gt;&lt;br /&gt;
[[Datei:XOR with AOI logic in CMOS.svg|mini|CMOS-Implementierung mittels [[AND-OR-Invert]]-Logik]]&lt;br /&gt;
&lt;br /&gt;
Weiterhin gibt es Implementierungen, die sowohl XOR wie NXOR als Ergebnis zur Verfügung stellen.&lt;br /&gt;
&lt;br /&gt;
== Literatur ==&lt;br /&gt;
* {{BibISBN|3-540-42849-6}}&lt;br /&gt;
* {{Literatur&lt;br /&gt;
   |Autor=Klaus Beuth&lt;br /&gt;
   |Titel=Digitaltechnik&lt;br /&gt;
   |Auflage=10.&lt;br /&gt;
   |Verlag=Vogel&lt;br /&gt;
   |Datum=1998&lt;br /&gt;
   |ISBN=3-8023-1755-6}}&lt;br /&gt;
* {{Literatur&lt;br /&gt;
   |Autor=Manfred Seifart, [[Helmut Beikirch]]&lt;br /&gt;
   |Titel=Digitale Schaltungen&lt;br /&gt;
   |Auflage=5.&lt;br /&gt;
   |Verlag=Technik&lt;br /&gt;
   |Datum=1998&lt;br /&gt;
   |ISBN=3-341-01198-6}}&lt;br /&gt;
&lt;br /&gt;
== Einzelnachweise ==&lt;br /&gt;
&amp;lt;references /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{SORTIERUNG:XORGatter}}&lt;br /&gt;
[[Kategorie:Digitale Schaltungstechnik]]&lt;br /&gt;
[[Kategorie:Schaltalgebra]]&lt;br /&gt;
&lt;br /&gt;
[[sv:Disjunktion (logik)#OR-grind och XOR-grind]]&lt;/div&gt;</summary>
		<author><name>imported&gt;Hybridrix</name></author>
	</entry>
</feed>