<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://sarwiki.informatik.hu-berlin.de/index.php?action=history&amp;feed=atom&amp;title=SIKE%3A_Los%2C_Stop%2C_Schade</id>
	<title>SIKE: Los, Stop, Schade - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://sarwiki.informatik.hu-berlin.de/index.php?action=history&amp;feed=atom&amp;title=SIKE%3A_Los%2C_Stop%2C_Schade"/>
	<link rel="alternate" type="text/html" href="https://sarwiki.informatik.hu-berlin.de/index.php?title=SIKE:_Los,_Stop,_Schade&amp;action=history"/>
	<updated>2026-08-01T03:27:11Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.43.9</generator>
	<entry>
		<id>https://sarwiki.informatik.hu-berlin.de/index.php?title=SIKE:_Los,_Stop,_Schade&amp;diff=14169&amp;oldid=prev</id>
		<title>Wolfm: /* Quellen: */</title>
		<link rel="alternate" type="text/html" href="https://sarwiki.informatik.hu-berlin.de/index.php?title=SIKE:_Los,_Stop,_Schade&amp;diff=14169&amp;oldid=prev"/>
		<updated>2023-11-01T08:36:20Z</updated>

		<summary type="html">&lt;p&gt;&lt;span class=&quot;autocomment&quot;&gt;Quellen:&lt;/span&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 08:36, 1 November 2023&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 181:&lt;/td&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 181:&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br /&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br /&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br /&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br /&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;== Quellen&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;:&lt;/del&gt; ==&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;== Quellen ==&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br /&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br /&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* https://sike.org/files/SIDH-spec.pdf&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* https://sike.org/files/SIDH-spec.pdf&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Wolfm</name></author>
	</entry>
	<entry>
		<id>https://sarwiki.informatik.hu-berlin.de/index.php?title=SIKE:_Los,_Stop,_Schade&amp;diff=14168&amp;oldid=prev</id>
		<title>Wolfm: /* Mathematischer Angriff */</title>
		<link rel="alternate" type="text/html" href="https://sarwiki.informatik.hu-berlin.de/index.php?title=SIKE:_Los,_Stop,_Schade&amp;diff=14168&amp;oldid=prev"/>
		<updated>2023-11-01T08:35:25Z</updated>

		<summary type="html">&lt;p&gt;&lt;span class=&quot;autocomment&quot;&gt;Mathematischer Angriff&lt;/span&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 08:35, 1 November 2023&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 47:&lt;/td&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 47:&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Castryck und Decru ziehen sich Kanis Theorem zur Hilfe, was grob besagt, dass wenn wir eine Isogenie haben und zwei Kerne, die bis (bis auf das neutrale Element) disjunkt den Kern der Isogenie aufspannen, die Isogenie reduzierbar ist bzw. wir auf einem Produkt zweier Kurven landen.&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Castryck und Decru ziehen sich Kanis Theorem zur Hilfe, was grob besagt, dass wenn wir eine Isogenie haben und zwei Kerne, die bis (bis auf das neutrale Element) disjunkt den Kern der Isogenie aufspannen, die Isogenie reduzierbar ist bzw. wir auf einem Produkt zweier Kurven landen.&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Die in SIKE von Alice und Bob errechnete Isogenie zusammen mit den Kernen A und B entspricht genau den Bedingungen von Kanis Theorem und bildet somit auf eine Produktkurve ab. Im Angriff betrachten wir Bobs &amp;lt;math&amp;gt;3^f&amp;lt;/math&amp;gt;-Isogenie als Verkettung von f vielen 3-Isogenien, die von Alice Bildkurve auf eine Produktkurve abbilden.&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Die in SIKE von Alice und Bob errechnete Isogenie zusammen mit den Kernen A und B entspricht genau den Bedingungen von Kanis Theorem und bildet somit auf eine Produktkurve ab. Im Angriff betrachten wir Bobs &amp;lt;math&amp;gt;3^f&amp;lt;/math&amp;gt;-Isogenie als Verkettung von f vielen 3-Isogenien, die von Alice Bildkurve auf eine Produktkurve abbilden.&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Für die erste 3-Isogenie haben wir drei Möglichkeiten zu raten. Wir probieren eine und wissen nun, dass wenn wir richtig liegen, wir von der entstehenden Kurve mit einer &amp;lt;math&amp;gt;3^{f-1}&amp;lt;/math&amp;gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt; &lt;/del&gt;Isogenie auf unsere Produktkurve gelangen. Wir konstruieren nun eine &amp;lt;math&amp;gt;2^e-3^{f-1}&amp;lt;/math&amp;gt;-Isogenie, deren Pseudoinverse zusammen mit Bobs übriger &amp;lt;math&amp;gt;3^{f-1}&amp;lt;/math&amp;gt;-Isogenie eine &amp;lt;math&amp;gt;2^e&amp;lt;/math&amp;gt;-Isogenie ergibt, die laut Kanis Theorem wieder reduzierbar ist. Wir erinnern uns, dass es extrem unwahrscheinlich ist, mit solch einer Isogenie, die auch nur die e-fache Verknüpfung von 2-Isogenien ist, auf einer Produktkurve zu landen. Ob wir dies tun lässt sich sehr effizient überprüfen. Wenn die nicht der Fall ist, haben wir die 3-Isogenie auf jeden Fall falsch geraten, wenn doch können wir jedoch mit hoher Sicherheit ausschließen, dass wir falsch geraten haben, da es so unwahrscheinlich ist aus Zufall auf einer Produktkurve gelandet zu sein.&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Für die erste 3-Isogenie haben wir drei Möglichkeiten zu raten. Wir probieren eine und wissen nun, dass wenn wir richtig liegen, wir von der entstehenden Kurve mit einer &amp;lt;math&amp;gt;3^{f-1}&amp;lt;/math&amp;gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;-&lt;/ins&gt;Isogenie auf unsere Produktkurve gelangen. Wir konstruieren nun eine &amp;lt;math&amp;gt;2^e-3^{f-1}&amp;lt;/math&amp;gt;-Isogenie, deren Pseudoinverse zusammen mit Bobs übriger &amp;lt;math&amp;gt;3^{f-1}&amp;lt;/math&amp;gt;-Isogenie eine &amp;lt;math&amp;gt;2^e&amp;lt;/math&amp;gt;-Isogenie ergibt, die laut Kanis Theorem wieder reduzierbar ist. Wir erinnern uns, dass es extrem unwahrscheinlich ist, mit solch einer Isogenie, die auch nur die e-fache Verknüpfung von 2-Isogenien ist, auf einer Produktkurve zu landen. Ob wir dies tun lässt sich sehr effizient überprüfen. Wenn die nicht der Fall ist, haben wir die 3-Isogenie auf jeden Fall falsch geraten, wenn doch können wir jedoch mit hoher Sicherheit ausschließen, dass wir falsch geraten haben, da es so unwahrscheinlich ist aus Zufall auf einer Produktkurve gelandet zu sein.&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;So erraten wir schritt für Schritt Bobs 3^f Isogenie, indem wir immer wieder eine &amp;lt;math&amp;gt;2^e-3^{f-j}&amp;lt;/math&amp;gt;-Isogenie (&amp;lt;math&amp;gt;j \in \{1,\dots,e-1\}&amp;lt;/math&amp;gt;) bauen und überprüfen, ob wir mit der entstehenden &amp;lt;math&amp;gt;2^f&amp;lt;/math&amp;gt; Isogenie auf einer Produktkurve landen. Kanis Theorem liefert uns hier sozusagen ein Entscheidungskriterium.&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;So erraten wir schritt für Schritt Bobs 3^f Isogenie, indem wir immer wieder eine &amp;lt;math&amp;gt;2^e-3^{f-j}&amp;lt;/math&amp;gt;-Isogenie (&amp;lt;math&amp;gt;j \in \{1,\dots,e-1\}&amp;lt;/math&amp;gt;) bauen und überprüfen, ob wir mit der entstehenden &amp;lt;math&amp;gt;2^f&amp;lt;/math&amp;gt; Isogenie auf einer Produktkurve landen. Kanis Theorem liefert uns hier sozusagen ein Entscheidungskriterium.&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br /&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br /&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Wolfm</name></author>
	</entry>
	<entry>
		<id>https://sarwiki.informatik.hu-berlin.de/index.php?title=SIKE:_Los,_Stop,_Schade&amp;diff=14167&amp;oldid=prev</id>
		<title>Wolfm: /* Attack */</title>
		<link rel="alternate" type="text/html" href="https://sarwiki.informatik.hu-berlin.de/index.php?title=SIKE:_Los,_Stop,_Schade&amp;diff=14167&amp;oldid=prev"/>
		<updated>2023-11-01T08:34:21Z</updated>

		<summary type="html">&lt;p&gt;&lt;span class=&quot;autocomment&quot;&gt;Attack&lt;/span&gt;&lt;/p&gt;
&lt;a href=&quot;https://sarwiki.informatik.hu-berlin.de/index.php?title=SIKE:_Los,_Stop,_Schade&amp;amp;diff=14167&amp;amp;oldid=14166&quot;&gt;Show changes&lt;/a&gt;</summary>
		<author><name>Wolfm</name></author>
	</entry>
	<entry>
		<id>https://sarwiki.informatik.hu-berlin.de/index.php?title=SIKE:_Los,_Stop,_Schade&amp;diff=14166&amp;oldid=prev</id>
		<title>Marvey: /* Attack */</title>
		<link rel="alternate" type="text/html" href="https://sarwiki.informatik.hu-berlin.de/index.php?title=SIKE:_Los,_Stop,_Schade&amp;diff=14166&amp;oldid=prev"/>
		<updated>2023-10-31T21:38:09Z</updated>

		<summary type="html">&lt;p&gt;&lt;span class=&quot;autocomment&quot;&gt;Attack&lt;/span&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 21:38, 31 October 2023&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 132:&lt;/td&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 132:&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Die ersten bet1-Ziffern werden für den Angriff berechnet, indem geprüft wird, ob einer der Werte korrekt ist und die Bedingung für das Glue- und Split-Orakel erfüllt. Dies geschieht, um einen bekannten Ausgangspunkt für den Angriff festzulegen und zu beweisen, dass der Angriff Schritte in die richtige Richtung unternimmt.&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Die ersten bet1-Ziffern werden für den Angriff berechnet, indem geprüft wird, ob einer der Werte korrekt ist und die Bedingung für das Glue- und Split-Orakel erfüllt. Dies geschieht, um einen bekannten Ausgangspunkt für den Angriff festzulegen und zu beweisen, dass der Angriff Schritte in die richtige Richtung unternimmt.&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br /&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br /&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Das Klebe- und Teilungsorakel wird verwendet, um zu prüfen, ob ein Schritt in die richtige Richtung gemacht wird, indem die gegebenen Kurven geklebt und geteilt werden: die erste Kurve C und die zweite Kurve EB. Die Kurve C wird durch eine Reihe von Transformationen erzeugt, die auf die Ausgangskurve E_start angewandt werden, geleitet von tauhatkernel_distort, und die Funktion Pushing3Chain spielt eine entscheidende Rolle bei diesem Kurvenerzeugungsprozess. Während EB am Anfang des Codes initialisiert wird. Indem man auch die Punkte der Kurven der Ordnung &amp;lt;math&amp;gt;2^a&amp;lt;/math&amp;gt; und &amp;lt;math&amp;gt;3^b/math&amp;gt; verwendet, kann die Funktion genutzt werden. Die Funktion nutzt die Eigenschaften von Richelot-Isogenien (kein Hinweis), wobei geprüft wird, ob die aus C und der Richelot-Isogenie abgeleitete Kurve in ein Produkt aus sipersingulären elliptischen Kurven zerlegt werden kann. &lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Das Klebe- und Teilungsorakel wird verwendet, um zu prüfen, ob ein Schritt in die richtige Richtung gemacht wird, indem die gegebenen Kurven geklebt und geteilt werden: die erste Kurve C und die zweite Kurve EB. Die Kurve C wird durch eine Reihe von Transformationen erzeugt, die auf die Ausgangskurve E_start angewandt werden, geleitet von tauhatkernel_distort, und die Funktion Pushing3Chain spielt eine entscheidende Rolle bei diesem Kurvenerzeugungsprozess. Während EB am Anfang des Codes initialisiert wird. Indem man auch die Punkte der Kurven der Ordnung &amp;lt;math&amp;gt;2^a&amp;lt;/math&amp;gt; und &amp;lt;math&amp;gt;3^b&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;&lt;/ins&gt;/math&amp;gt; verwendet, kann die Funktion genutzt werden. Die Funktion nutzt die Eigenschaften von Richelot-Isogenien (kein Hinweis), wobei geprüft wird, ob die aus C und der Richelot-Isogenie abgeleitete Kurve in ein Produkt aus sipersingulären elliptischen Kurven zerlegt werden kann. &lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Durch Kleben wird eine neue Isogenie erzeugt, und von dieser Klebekarte werden eine Kurve und ein Paar neuer Punkte durch eine Kette von Isogenien abgebildet.&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Durch Kleben wird eine neue Isogenie erzeugt, und von dieser Klebekarte werden eine Kurve und ein Paar neuer Punkte durch eine Kette von Isogenien abgebildet.&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br /&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br /&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Marvey</name></author>
	</entry>
	<entry>
		<id>https://sarwiki.informatik.hu-berlin.de/index.php?title=SIKE:_Los,_Stop,_Schade&amp;diff=14165&amp;oldid=prev</id>
		<title>Marvey: /* Attack */</title>
		<link rel="alternate" type="text/html" href="https://sarwiki.informatik.hu-berlin.de/index.php?title=SIKE:_Los,_Stop,_Schade&amp;diff=14165&amp;oldid=prev"/>
		<updated>2023-10-31T21:37:44Z</updated>

		<summary type="html">&lt;p&gt;&lt;span class=&quot;autocomment&quot;&gt;Attack&lt;/span&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 21:37, 31 October 2023&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 112:&lt;/td&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 112:&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Nehmen wir die Parameter &amp;lt;math&amp;gt;a=216 &amp;lt;/math&amp;gt; und &amp;lt;math&amp;gt;b=137 &amp;lt;/math&amp;gt;&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Nehmen wir die Parameter &amp;lt;math&amp;gt;a=216 &amp;lt;/math&amp;gt; und &amp;lt;math&amp;gt;b=137 &amp;lt;/math&amp;gt;&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br /&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br /&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Da &amp;lt;math&amp;gt;b&amp;lt;/math&amp;gt; 137 ist, wird &#039;expdata&#039; eine Liste mit &amp;lt;math&amp;gt;134&amp;lt;/math&amp;gt; Unterlisten sein, die jeweils drei Nullen enthalten. Schleife von &amp;lt;math&amp;gt;i&amp;lt;/math&amp;gt; im Bereich von &amp;lt;math&amp;gt; 1 &amp;lt;/math&amp;gt; bis &amp;lt;math&amp;gt; b-2 &amp;lt;/math&amp;gt;, der von &amp;lt;math&amp;gt; 1 &amp;lt;/math&amp;gt; bis &amp;lt;math&amp;gt; 135 &amp;lt;/math&amp;gt; reicht. Prüfe, ob &amp;lt;math&amp;gt; (b - i) % 2 == 1 &amp;lt;/math&amp;gt; für jedes &amp;lt;math&amp;gt; i &amp;lt;/math&amp;gt;. Diese Bedingung prüft, ob &amp;lt;math&amp;gt; b-i &amp;lt;/math&amp;gt; eine ungerade Zahl ist. Wenn &amp;lt;math&amp;gt; b-i &amp;lt;/math&amp;gt; ungerade ist, wird der `Index` als &amp;lt;math&amp;gt; b-i/2 &amp;lt;/math&amp;gt; berechnet. Dieser Index wird für den Zugriff auf Elemente der `uvtable` verwendet.&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Da &amp;lt;math&amp;gt;b&amp;lt;/math&amp;gt; &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;math&amp;gt;&lt;/ins&gt;137&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;/math&amp;gt;&lt;/ins&gt; ist, wird &#039;expdata&#039; eine Liste mit &amp;lt;math&amp;gt;134&amp;lt;/math&amp;gt; Unterlisten sein, die jeweils drei Nullen enthalten. Schleife von &amp;lt;math&amp;gt;i&amp;lt;/math&amp;gt; im Bereich von &amp;lt;math&amp;gt; 1 &amp;lt;/math&amp;gt; bis &amp;lt;math&amp;gt; b-2 &amp;lt;/math&amp;gt;, der von &amp;lt;math&amp;gt; 1 &amp;lt;/math&amp;gt; bis &amp;lt;math&amp;gt; 135 &amp;lt;/math&amp;gt; reicht. Prüfe, ob &amp;lt;math&amp;gt; (b - i) % 2 == 1 &amp;lt;/math&amp;gt; für jedes &amp;lt;math&amp;gt; i &amp;lt;/math&amp;gt;. Diese Bedingung prüft, ob &amp;lt;math&amp;gt; b-i &amp;lt;/math&amp;gt; eine ungerade Zahl ist. Wenn &amp;lt;math&amp;gt; b-i &amp;lt;/math&amp;gt; ungerade ist, wird der `Index` als &amp;lt;math&amp;gt; b-i/2 &amp;lt;/math&amp;gt; berechnet. Dieser Index wird für den Zugriff auf Elemente der `uvtable` verwendet.&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br /&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br /&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;math&amp;gt; b=137 &amp;lt;/math&amp;gt;, also ist expdata eine Liste mit &amp;lt;math&amp;gt; 134 &amp;lt;/math&amp;gt; Unterlisten, gefüllt mit `[0, 0, 0]`.&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;math&amp;gt; b=137 &amp;lt;/math&amp;gt;, also ist expdata eine Liste mit &amp;lt;math&amp;gt; 134 &amp;lt;/math&amp;gt; Unterlisten, gefüllt mit `[0, 0, 0]`.&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 132:&lt;/td&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 132:&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Die ersten bet1-Ziffern werden für den Angriff berechnet, indem geprüft wird, ob einer der Werte korrekt ist und die Bedingung für das Glue- und Split-Orakel erfüllt. Dies geschieht, um einen bekannten Ausgangspunkt für den Angriff festzulegen und zu beweisen, dass der Angriff Schritte in die richtige Richtung unternimmt.&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Die ersten bet1-Ziffern werden für den Angriff berechnet, indem geprüft wird, ob einer der Werte korrekt ist und die Bedingung für das Glue- und Split-Orakel erfüllt. Dies geschieht, um einen bekannten Ausgangspunkt für den Angriff festzulegen und zu beweisen, dass der Angriff Schritte in die richtige Richtung unternimmt.&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br /&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br /&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Das Klebe- und Teilungsorakel wird verwendet, um zu prüfen, ob ein Schritt in die richtige Richtung gemacht wird, indem die gegebenen Kurven geklebt und geteilt werden: die erste Kurve C und die zweite Kurve EB. Die Kurve C wird durch eine Reihe von Transformationen erzeugt, die auf die Ausgangskurve E_start angewandt werden, geleitet von tauhatkernel_distort, und die Funktion Pushing3Chain spielt eine entscheidende Rolle bei diesem Kurvenerzeugungsprozess. Während EB am Anfang des Codes initialisiert wird. Indem man auch die Punkte der Kurven der Ordnung 2^a und 3^b verwendet, kann die Funktion genutzt werden. Die Funktion nutzt die Eigenschaften von Richelot-Isogenien (kein Hinweis), wobei geprüft wird, ob die aus C und der Richelot-Isogenie abgeleitete Kurve in ein Produkt aus sipersingulären elliptischen Kurven zerlegt werden kann. &lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Das Klebe- und Teilungsorakel wird verwendet, um zu prüfen, ob ein Schritt in die richtige Richtung gemacht wird, indem die gegebenen Kurven geklebt und geteilt werden: die erste Kurve C und die zweite Kurve EB. Die Kurve C wird durch eine Reihe von Transformationen erzeugt, die auf die Ausgangskurve E_start angewandt werden, geleitet von tauhatkernel_distort, und die Funktion Pushing3Chain spielt eine entscheidende Rolle bei diesem Kurvenerzeugungsprozess. Während EB am Anfang des Codes initialisiert wird. Indem man auch die Punkte der Kurven der Ordnung &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;math&amp;gt;&lt;/ins&gt;2^a&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;/math&amp;gt;&lt;/ins&gt; und &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;math&amp;gt;&lt;/ins&gt;3^b&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;/math&amp;gt;&lt;/ins&gt; verwendet, kann die Funktion genutzt werden. Die Funktion nutzt die Eigenschaften von Richelot-Isogenien (kein Hinweis), wobei geprüft wird, ob die aus C und der Richelot-Isogenie abgeleitete Kurve in ein Produkt aus sipersingulären elliptischen Kurven zerlegt werden kann. &lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Durch Kleben wird eine neue Isogenie erzeugt, und von dieser Klebekarte werden eine Kurve und ein Paar neuer Punkte durch eine Kette von Isogenien abgebildet.&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Durch Kleben wird eine neue Isogenie erzeugt, und von dieser Klebekarte werden eine Kurve und ein Paar neuer Punkte durch eine Kette von Isogenien abgebildet.&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br /&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br /&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Marvey</name></author>
	</entry>
	<entry>
		<id>https://sarwiki.informatik.hu-berlin.de/index.php?title=SIKE:_Los,_Stop,_Schade&amp;diff=14164&amp;oldid=prev</id>
		<title>Marvey: /* Attack */</title>
		<link rel="alternate" type="text/html" href="https://sarwiki.informatik.hu-berlin.de/index.php?title=SIKE:_Los,_Stop,_Schade&amp;diff=14164&amp;oldid=prev"/>
		<updated>2023-10-31T21:35:22Z</updated>

		<summary type="html">&lt;p&gt;&lt;span class=&quot;autocomment&quot;&gt;Attack&lt;/span&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 21:35, 31 October 2023&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 104:&lt;/td&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 104:&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;skB ist als leere Liste definiert, in die die Werte von Bobs geheimem Schlüssel während des Angriffs nacheinander eingefügt werden. &lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;skB ist als leere Liste definiert, in die die Werte von Bobs geheimem Schlüssel während des Angriffs nacheinander eingefügt werden. &lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br /&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br /&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Der Code durchläuft eine Schleife über i von 1 bis b-2. Für jedes i wird geprüft, ob &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;(&lt;/del&gt;b-i&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;)&lt;/del&gt; ungerade ist, indem die Bedingung (b-i) % 2 == 1 verwendet wird. Ist dies der Fall, wird ein Index berechnet und Daten aus der uvtable auf der Grundlage dieses Index gesammelt.&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Der Code durchläuft eine Schleife über &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;math&amp;gt;&lt;/ins&gt;i&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;/math&amp;gt;&lt;/ins&gt; von&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt; &amp;lt;math&amp;gt;&lt;/ins&gt; 1&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt; &amp;lt;/math&amp;gt;&lt;/ins&gt; bis &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;math&amp;gt; (&lt;/ins&gt;b-2&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;) &amp;lt;/math&amp;gt;&lt;/ins&gt;. Für jedes &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;math&amp;gt;&lt;/ins&gt;i&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;/math&amp;gt;&lt;/ins&gt; wird geprüft, ob &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;math&amp;gt;&lt;/ins&gt;b-i&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;/math&amp;gt;&lt;/ins&gt; ungerade ist, indem die Bedingung &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;math&amp;gt;&lt;/ins&gt;(b-i) % 2 == 1&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;/math&amp;gt;&lt;/ins&gt; verwendet wird. Ist dies der Fall, wird ein Index berechnet und Daten aus der uvtable auf der Grundlage dieses Index gesammelt.&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;index wird berechnet als (b - i + 1) // 2.&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;index wird berechnet als&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt; &amp;lt;math&amp;gt;&lt;/ins&gt; (b - i + 1) // 2&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt; &amp;lt;/math&amp;gt;&lt;/ins&gt;.&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;exp wird aus uvtable[index-1][1] extrahiert.&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;exp wird aus &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&#039;&lt;/ins&gt;uvtable[index-1][1]&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&#039;&lt;/ins&gt; extrahiert.&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Wenn exp kleiner oder gleich a ist, werden auch u und v aus uvtable[index-1][2] bzw. uvtable[index-1][3] abgerufen.&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Wenn &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&#039;&lt;/ins&gt;exp&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&#039;&lt;/ins&gt; kleiner oder gleich &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;math&amp;gt;&lt;/ins&gt;a&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;/math&amp;gt;&lt;/ins&gt; ist, werden auch u und v aus &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&#039;&lt;/ins&gt;uvtable[index-1][2]&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&#039;&lt;/ins&gt; bzw. &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&#039;&lt;/ins&gt;uvtable[index-1][3]&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&#039;&lt;/ins&gt; abgerufen.&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Diese Daten werden in der Liste expdata an der &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;(&lt;/del&gt;i-1&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;)&lt;/del&gt;-ten Position als [exp, u, v] gespeichert.&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Diese Daten werden in der Liste expdata an der &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;math&amp;gt; &lt;/ins&gt;i-1&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt; &amp;lt;/math&amp;gt;&lt;/ins&gt;-ten Position als &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&#039;&lt;/ins&gt;[exp, u, v]&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&#039;&lt;/ins&gt; gespeichert.&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br /&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br /&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Nehmen wir die Parameter a=216 und b=137&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Nehmen wir die Parameter &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;math&amp;gt;&lt;/ins&gt;a=216&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt; &amp;lt;/math&amp;gt;&lt;/ins&gt; und &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;math&amp;gt;&lt;/ins&gt;b=137&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt; &amp;lt;/math&amp;gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br /&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br /&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Da &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;`&lt;/del&gt;b&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;`&lt;/del&gt; 137 ist, wird &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;`&lt;/del&gt;expdata&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;`&lt;/del&gt; eine Liste mit 134 Unterlisten sein, die jeweils drei Nullen enthalten. Schleife von &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;`&lt;/del&gt;i&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;`&lt;/del&gt; im Bereich von 1 bis &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;`b&lt;/del&gt; -&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt; &lt;/del&gt;2&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;`&lt;/del&gt;, der von 1 bis 135 reicht. Prüfe, ob &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;`&lt;/del&gt;(b - i) % 2 == 1 für jedes i. Diese Bedingung prüft, ob &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;b&lt;/del&gt; -&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt; &lt;/del&gt;i eine ungerade Zahl ist. Wenn &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;`(&lt;/del&gt;b&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt; &lt;/del&gt;- &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;i)`&lt;/del&gt; ungerade ist, wird der `Index` als &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;`(&lt;/del&gt;b&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt; &lt;/del&gt;-&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt; &lt;/del&gt;i &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;+ 1) &lt;/del&gt;/&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;/ 2`&lt;/del&gt; berechnet. Dieser Index wird für den Zugriff auf Elemente der `uvtable` verwendet.&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Da &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;math&amp;gt;&lt;/ins&gt;b&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;/math&amp;gt;&lt;/ins&gt; 137 ist, wird &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&#039;&lt;/ins&gt;expdata&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&#039;&lt;/ins&gt; eine Liste mit &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;math&amp;gt;&lt;/ins&gt;134&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;/math&amp;gt;&lt;/ins&gt; Unterlisten sein, die jeweils drei Nullen enthalten. Schleife von &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;math&amp;gt;&lt;/ins&gt;i&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;/math&amp;gt;&lt;/ins&gt; im Bereich von&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt; &amp;lt;math&amp;gt;&lt;/ins&gt; 1&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt; &amp;lt;/math&amp;gt;&lt;/ins&gt; bis &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;math&amp;gt;&lt;/ins&gt; &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;b&lt;/ins&gt;-2&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt; &amp;lt;/math&amp;gt;&lt;/ins&gt;, der von&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt; &amp;lt;math&amp;gt;&lt;/ins&gt; 1&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt; &amp;lt;/math&amp;gt;&lt;/ins&gt; bis&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt; &amp;lt;math&amp;gt;&lt;/ins&gt; 135&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt; &amp;lt;/math&amp;gt;&lt;/ins&gt; reicht. Prüfe, ob &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;math&amp;gt; &lt;/ins&gt;(b - i) % 2 == 1&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt; &amp;lt;/math&amp;gt;&lt;/ins&gt; für jedes&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt; &amp;lt;math&amp;gt;&lt;/ins&gt; i&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt; &amp;lt;/math&amp;gt;&lt;/ins&gt;. Diese Bedingung prüft, ob &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;math&amp;gt;&lt;/ins&gt; &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;b&lt;/ins&gt;-i&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt; &amp;lt;/math&amp;gt;&lt;/ins&gt; eine ungerade Zahl ist. Wenn &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;math&amp;gt; &lt;/ins&gt;b-&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;i&lt;/ins&gt; &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;/math&amp;gt;&lt;/ins&gt; ungerade ist, wird der `Index` als &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;math&amp;gt; &lt;/ins&gt;b-i&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;/2&lt;/ins&gt; &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;&lt;/ins&gt;/&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;math&amp;gt;&lt;/ins&gt; berechnet. Dieser Index wird für den Zugriff auf Elemente der `uvtable` verwendet.&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br /&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br /&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;b&lt;/del&gt; =&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt; &lt;/del&gt;137, also ist expdata eine Liste mit 134 Unterlisten, gefüllt mit `[0, 0, 0]`.&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;math&amp;gt;&lt;/ins&gt; &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;b&lt;/ins&gt;=137&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt; &amp;lt;/math&amp;gt;&lt;/ins&gt;, also ist expdata eine Liste mit&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt; &amp;lt;math&amp;gt;&lt;/ins&gt; 134&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt; &amp;lt;/math&amp;gt;&lt;/ins&gt; Unterlisten, gefüllt mit `[0, 0, 0]`.&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Die Schleife läuft von i = 1 bis i = 135.&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Die Schleife läuft von i = 1 bis i = 135.&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Wenn i = 1 ist, ist (b - i) % 2 == 0, also passiert nichts.&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Wenn&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt; &amp;lt;math&amp;gt;&lt;/ins&gt; i = 1&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt; &amp;lt;/math&amp;gt;&lt;/ins&gt; ist, ist &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;math&amp;gt;&lt;/ins&gt;(b - i) % 2 == 0&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;/math&amp;gt;&lt;/ins&gt;, also passiert nichts.&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Wenn i = 2 ist, ist (b - i) % 2 == 1, so dass der Index als (137 - 2 + 1) &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;/&lt;/del&gt;/ 2 = 68 berechnet wird. Dann holt es exp = 135, u = 68402650496677101758628224525965 und v = 491073477706829402358064079515557 aus uvtable[68] und aktualisiert expdata[1] mit [135, 68402650496677101758628224525965, 491073477706829402358064079515557].&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Wenn&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt; &amp;lt;math&amp;gt;&lt;/ins&gt; i = 2&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt; &amp;lt;/math&amp;gt;&lt;/ins&gt; ist, ist &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;math&amp;gt;&lt;/ins&gt;(b - i) % 2 == 1&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;/math&amp;gt;&lt;/ins&gt;, so dass der Index als &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;math&amp;gt;&lt;/ins&gt;(137 - 2 + 1) / 2 = 68 &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;/math&amp;gt;&lt;/ins&gt;berechnet wird. Dann holt es &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;math&amp;gt;&lt;/ins&gt;exp = 135, u = 68402650496677101758628224525965&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;/math&amp;gt; &lt;/ins&gt; und &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;math&amp;gt;&lt;/ins&gt;v = 491073477706829402358064079515557&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;/math&amp;gt; &lt;/ins&gt; aus uvtable[68] und aktualisiert expdata[1] mit &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;math&amp;gt;&lt;/ins&gt;[135, 68402650496677101758628224525965, 491073477706829402358064079515557]&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;/math&amp;gt;&lt;/ins&gt;.&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Dieser Vorgang wird für alle Werte von `i` fortgesetzt, bis die Schleife beendet ist.&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Dieser Vorgang wird für alle Werte von `i` fortgesetzt, bis die Schleife beendet ist.&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Nach der Schleife wird bet1 inkrementiert, bis es den Wert 2 erreicht (da expdata[2][0] der erste Nicht-Null-Wert ist).&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Nach der Schleife wird bet1 inkrementiert, bis es den Wert &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;math&amp;gt;&lt;/ins&gt;2&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;/math&amp;gt;&lt;/ins&gt; erreicht (da expdata[2][0] der erste Nicht-Null-Wert ist).&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br /&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br /&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Für a = 216 und &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;b&lt;/del&gt; =&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt; &lt;/del&gt;137 ergeben sich mit der uv-Tabelle also folgende Ergebnisse&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Für&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt; &amp;lt;math&amp;gt;&lt;/ins&gt; a = 216&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt; &amp;lt;/math&amp;gt;&lt;/ins&gt; und &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;math&amp;gt;&lt;/ins&gt; &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;b&lt;/ins&gt;=137 &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;/math&amp;gt;&lt;/ins&gt;ergeben sich mit der uv-Tabelle also folgende Ergebnisse&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br /&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br /&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-empty diff-side-deleted&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;math&amp;gt; ai = expdata[2-1][0] = 135  &amp;lt;/math&amp;gt;&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;bet1 = 2&lt;/div&gt;&lt;/td&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-empty diff-side-added&quot;&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;ai&lt;/del&gt; = expdata[2-1][&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;0&lt;/del&gt;] = &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;135&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;math&amp;gt;u&lt;/ins&gt; = expdata[2-1][&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;1&lt;/ins&gt;] = &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;68402650496677101758628224525965 &amp;lt;/math&amp;gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;u&lt;/del&gt; = expdata[2-1][&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;1&lt;/del&gt;] = &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;68402650496677101758628224525965&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;math&amp;gt;v&lt;/ins&gt; = expdata[2-1][&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;2&lt;/ins&gt;] = &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;491073477706829402358064079515557 &amp;lt;/math&amp;gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;v = expdata[2-1][2] = 491073477706829402358064079515557&lt;/div&gt;&lt;/td&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-empty diff-side-added&quot;&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br /&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br /&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br /&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br /&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Marvey</name></author>
	</entry>
	<entry>
		<id>https://sarwiki.informatik.hu-berlin.de/index.php?title=SIKE:_Los,_Stop,_Schade&amp;diff=14163&amp;oldid=prev</id>
		<title>Wolfm at 16:46, 31 October 2023</title>
		<link rel="alternate" type="text/html" href="https://sarwiki.informatik.hu-berlin.de/index.php?title=SIKE:_Los,_Stop,_Schade&amp;diff=14163&amp;oldid=prev"/>
		<updated>2023-10-31T16:46:57Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 16:46, 31 October 2023&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 71:&lt;/td&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 71:&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Die elliptische Kurve E&amp;lt;math&amp;gt;_\mathrm{start}&amp;lt;/math&amp;gt; über einem endlichen Feld &amp;lt;math&amp;gt;\mathbb{F}_{p^2}&amp;lt;/math&amp;gt; wird als Startpunkt für die Challenge definiert.&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Die elliptische Kurve E&amp;lt;math&amp;gt;_\mathrm{start}&amp;lt;/math&amp;gt; über einem endlichen Feld &amp;lt;math&amp;gt;\mathbb{F}_{p^2}&amp;lt;/math&amp;gt; wird als Startpunkt für die Challenge definiert.&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Eine zufällige ganze Zahl Bobskey wird generiert und auf ternäre Ziffern eingestellt.&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Eine zufällige ganze Zahl Bobskey wird generiert und auf ternäre Ziffern eingestellt.&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Zum Abschluss der Challenge wird eine neue elliptische Kurve E&amp;lt;math&amp;gt;_B&amp;lt;/math&amp;gt; erstellt und von E&amp;lt;math&amp;gt;_B&amp;lt;/math&amp;gt; zu E&amp;lt;math&amp;gt;_{B_\mathrm{start}}&amp;lt;/math&amp;gt; eine Isogeniekette erzeugt. Die Isogeniekette wird auf der Grundlage der Punkte &amp;lt;syntaxhighlight &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;enclose=&quot;none&quot;&lt;/del&gt; lang=&quot;python&quot;&amp;gt;P3 + Bobskey *Q3&amp;lt;/syntaxhighlight&amp;gt; erstellt, wobei &amp;lt;syntaxhighlight &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;enclose=&quot;none&quot;&lt;/del&gt; lang=&quot;python&quot;&amp;gt;P3&amp;lt;/syntaxhighlight&amp;gt; und &amp;lt;syntaxhighlight &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;enclose=&quot;none&quot;&lt;/del&gt; lang=&quot;python&quot;&amp;gt;Q3&amp;lt;/syntaxhighlight&amp;gt; Torsionspunkte auf E&amp;lt;math&amp;gt;_\mathrm{start}&amp;lt;/math&amp;gt; sind. Die Länge der Isogeniekette ist gleich dem Parameter b.&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Zum Abschluss der Challenge wird eine neue elliptische Kurve E&amp;lt;math&amp;gt;_B&amp;lt;/math&amp;gt; erstellt und von E&amp;lt;math&amp;gt;_B&amp;lt;/math&amp;gt; zu E&amp;lt;math&amp;gt;_{B_\mathrm{start}}&amp;lt;/math&amp;gt; eine Isogeniekette erzeugt. Die Isogeniekette wird auf der Grundlage der Punkte &amp;lt;syntaxhighlight &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;inline&lt;/ins&gt; lang=&quot;python&quot;&amp;gt;P3 + Bobskey *Q3&amp;lt;/syntaxhighlight&amp;gt; erstellt, wobei &amp;lt;syntaxhighlight &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;inline&lt;/ins&gt; lang=&quot;python&quot;&amp;gt;P3&amp;lt;/syntaxhighlight&amp;gt; und &amp;lt;syntaxhighlight &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;inline&lt;/ins&gt; lang=&quot;python&quot;&amp;gt;Q3&amp;lt;/syntaxhighlight&amp;gt; Torsionspunkte auf E&amp;lt;math&amp;gt;_\mathrm{start}&amp;lt;/math&amp;gt; sind. Die Länge der Isogeniekette ist gleich dem Parameter b.&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Der Aufbau der Challenge besteht im Wesentlichen aus der Wahl der Parameter, der Generierung des privaten Schlüssels &amp;lt;syntaxhighlight &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;enclose=&quot;none&quot;&lt;/del&gt; lang=&quot;python&quot;&amp;gt;Bobskey&amp;lt;/syntaxhighlight&amp;gt; und der Erstellung der Isogenese von der elliptischen Kurve E&amp;lt;math&amp;gt;_\textrm{start}&amp;lt;/math&amp;gt; zur elliptischen Kurve E&amp;lt;math&amp;gt;_B&amp;lt;/math&amp;gt; auf der Basis von &amp;lt;syntaxhighlight &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;enclose=&quot;none&quot;&lt;/del&gt; lang=&quot;python&quot;&amp;gt;Bobskey&amp;lt;/syntaxhighlight&amp;gt; und den angegebenen Parametern.&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Der Aufbau der Challenge besteht im Wesentlichen aus der Wahl der Parameter, der Generierung des privaten Schlüssels &amp;lt;syntaxhighlight &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;inline&lt;/ins&gt; lang=&quot;python&quot;&amp;gt;Bobskey&amp;lt;/syntaxhighlight&amp;gt; und der Erstellung der Isogenese von der elliptischen Kurve E&amp;lt;math&amp;gt;_\textrm{start}&amp;lt;/math&amp;gt; zur elliptischen Kurve E&amp;lt;math&amp;gt;_B&amp;lt;/math&amp;gt; auf der Basis von &amp;lt;syntaxhighlight &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;inline&lt;/ins&gt; lang=&quot;python&quot;&amp;gt;Bobskey&amp;lt;/syntaxhighlight&amp;gt; und den angegebenen Parametern.&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br /&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br /&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Die Codezeile &amp;lt;syntaxhighlight &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;enclose=&quot;none&quot;&lt;/del&gt; lang=&quot;python&quot;&amp;gt;EB, chain = Pushing3Chain(E_start, P3 + Bobskey * Q3, b)&amp;lt;/syntaxhighlight&amp;gt; beinhaltet elliptische Kurvenoperationen und ist Teil des Challenge-Setups im Code.&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Die Codezeile &amp;lt;syntaxhighlight &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;inline&lt;/ins&gt; lang=&quot;python&quot;&amp;gt;EB, chain = Pushing3Chain(E_start, P3 + Bobskey * Q3, b)&amp;lt;/syntaxhighlight&amp;gt; beinhaltet elliptische Kurvenoperationen und ist Teil des Challenge-Setups im Code.&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;	&amp;lt;syntaxhighlight &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;enclose=&quot;none&quot;&lt;/del&gt; lang=&quot;python&quot;&amp;gt;P3&amp;lt;/syntaxhighlight&amp;gt; und &amp;lt;syntaxhighlight &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;enclose=&quot;none&quot;&lt;/del&gt; lang=&quot;python&quot;&amp;gt;Q3&amp;lt;/syntaxhighlight&amp;gt; sind Punkte auf einer elliptischen Kurve E&amp;lt;math&amp;gt;_\mathrm{start}&amp;lt;/math&amp;gt;. Diese Punkte sind Teil des 			Challenge-Setups.&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;	&amp;lt;syntaxhighlight &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;inline&lt;/ins&gt; lang=&quot;python&quot;&amp;gt;P3&amp;lt;/syntaxhighlight&amp;gt; und &amp;lt;syntaxhighlight &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;inline&lt;/ins&gt; lang=&quot;python&quot;&amp;gt;Q3&amp;lt;/syntaxhighlight&amp;gt; sind Punkte auf einer elliptischen Kurve E&amp;lt;math&amp;gt;_\mathrm{start}&amp;lt;/math&amp;gt;. Diese Punkte sind Teil des 			Challenge-Setups.&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;	&amp;lt;syntaxhighlight &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;enclose=&quot;none&quot;&lt;/del&gt; lang=&quot;python&quot;&amp;gt;Bobskey&amp;lt;/syntaxhighlight&amp;gt; ist eine zufällige ganze Zahl aus dem Bereich &amp;lt;math&amp;gt;[0, 3^b)&amp;lt;/math&amp;gt;. Diese ganze Zahl ist Bobs privater Schlüssel in ternärer Darstellung.&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;	&amp;lt;syntaxhighlight &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;inline&lt;/ins&gt; lang=&quot;python&quot;&amp;gt;Bobskey&amp;lt;/syntaxhighlight&amp;gt; ist eine zufällige ganze Zahl aus dem Bereich &amp;lt;math&amp;gt;[0, 3^b)&amp;lt;/math&amp;gt;. Diese ganze Zahl ist Bobs privater Schlüssel in ternärer Darstellung.&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;	&amp;lt;syntaxhighlight &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;enclose=&quot;none&quot;&lt;/del&gt; lang=&quot;python&quot;&amp;gt;Bobskey * Q3&amp;lt;/syntaxhighlight&amp;gt; bedeutet eine skalare Multiplikation des Punktes &amp;lt;syntaxhighlight &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;enclose=&quot;none&quot;&lt;/del&gt; lang=&quot;python&quot;&amp;gt;Q3&amp;lt;/syntaxhighlight&amp;gt; mit der ganzen Zahl &amp;lt;syntaxhighlight &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;enclose=&quot;none&quot;&lt;/del&gt; lang=&quot;python&quot;&amp;gt;Bobskey&amp;lt;/syntaxhighlight&amp;gt;. Diese Operation berechnet &amp;lt;syntaxhighlight &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;enclose=&quot;none&quot;&lt;/del&gt; lang=&quot;python&quot;&amp;gt;Bobskey&amp;lt;/syntaxhighlight&amp;gt; mal den Punkt &amp;lt;syntaxhighlight &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;enclose=&quot;none&quot;&lt;/del&gt; lang=&quot;python&quot;&amp;gt;Q3&amp;lt;/syntaxhighlight&amp;gt; auf der elliptischen Kurve.&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;	&amp;lt;syntaxhighlight &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;inline&lt;/ins&gt; lang=&quot;python&quot;&amp;gt;Bobskey * Q3&amp;lt;/syntaxhighlight&amp;gt; bedeutet eine skalare Multiplikation des Punktes &amp;lt;syntaxhighlight &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;inline&lt;/ins&gt; lang=&quot;python&quot;&amp;gt;Q3&amp;lt;/syntaxhighlight&amp;gt; mit der ganzen Zahl &amp;lt;syntaxhighlight &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;inline&lt;/ins&gt; lang=&quot;python&quot;&amp;gt;Bobskey&amp;lt;/syntaxhighlight&amp;gt;. Diese Operation berechnet &amp;lt;syntaxhighlight &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;inline&lt;/ins&gt; lang=&quot;python&quot;&amp;gt;Bobskey&amp;lt;/syntaxhighlight&amp;gt; mal den Punkt &amp;lt;syntaxhighlight &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;inline&lt;/ins&gt; lang=&quot;python&quot;&amp;gt;Q3&amp;lt;/syntaxhighlight&amp;gt; auf der elliptischen Kurve.&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;	&amp;lt;syntaxhighlight &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;enclose=&quot;none&quot;&lt;/del&gt; lang=&quot;python&quot;&amp;gt;P3 + Bobskey * Q3&amp;lt;/syntaxhighlight&amp;gt; addiert das Ergebnis der skalaren Multiplikation &amp;lt;syntaxhighlight &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;enclose=&quot;none&quot;&lt;/del&gt; lang=&quot;python&quot;&amp;gt;(Bobskey * Q3)&amp;lt;/syntaxhighlight&amp;gt; zu dem Punkt &amp;lt;syntaxhighlight &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;enclose=&quot;none&quot;&lt;/del&gt; lang=&quot;python&quot;&amp;gt;P3&amp;lt;/syntaxhighlight&amp;gt;. Dies ist eine Punktaddition auf der elliptischen Kurve. Das Ergebnis ist ein neuer 	Punkt auf der Kurve.&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;	&amp;lt;syntaxhighlight &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;inline&lt;/ins&gt; lang=&quot;python&quot;&amp;gt;P3 + Bobskey * Q3&amp;lt;/syntaxhighlight&amp;gt; addiert das Ergebnis der skalaren Multiplikation &amp;lt;syntaxhighlight &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;inline&lt;/ins&gt; lang=&quot;python&quot;&amp;gt;(Bobskey * Q3)&amp;lt;/syntaxhighlight&amp;gt; zu dem Punkt &amp;lt;syntaxhighlight &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;inline&lt;/ins&gt; lang=&quot;python&quot;&amp;gt;P3&amp;lt;/syntaxhighlight&amp;gt;. Dies ist eine Punktaddition auf der elliptischen Kurve. Das Ergebnis ist ein neuer 	Punkt auf der Kurve.&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;	&amp;lt;syntaxhighlight &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;enclose=&quot;none&quot;&lt;/del&gt; lang=&quot;python&quot;&amp;gt;Pushing3Chain(E_start, P3 + Bobskey * Q3, b)&amp;lt;/syntaxhighlight&amp;gt; erzeugt eine Isogeniekette (Kette) von der elliptischen Kurve E&amp;lt;math&amp;gt;_\mathrm{start}&amp;lt;/math&amp;gt; zu einer neuen elliptischen Kurve E&amp;lt;math&amp;gt;_B&amp;lt;/math&amp;gt;, die auf den Punkten &amp;lt;syntaxhighlight &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;enclose=&quot;none&quot;&lt;/del&gt; lang=&quot;python&quot;&amp;gt;P3 + 		Bobskey * Q3&amp;lt;/syntaxhighlight&amp;gt; basiert. Der Parameter &amp;lt;math&amp;gt;b&amp;lt;/math&amp;gt; gibt die Länge der Kette an.&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;	&amp;lt;syntaxhighlight &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;inline&lt;/ins&gt; lang=&quot;python&quot;&amp;gt;Pushing3Chain(E_start, P3 + Bobskey * Q3, b)&amp;lt;/syntaxhighlight&amp;gt; erzeugt eine Isogeniekette (Kette) von der elliptischen Kurve E&amp;lt;math&amp;gt;_\mathrm{start}&amp;lt;/math&amp;gt; zu einer neuen elliptischen Kurve E&amp;lt;math&amp;gt;_B&amp;lt;/math&amp;gt;, die auf den Punkten &amp;lt;syntaxhighlight &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;inline&lt;/ins&gt; lang=&quot;python&quot;&amp;gt;P3 + 		Bobskey * Q3&amp;lt;/syntaxhighlight&amp;gt; basiert. Der Parameter &amp;lt;math&amp;gt;b&amp;lt;/math&amp;gt; gibt die Länge der Kette an.&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;	&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;	&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Zusammenfassend lässt sich sagen, dass die Codezeile im Wesentlichen eine Herausforderung für den Angreifer darstellt, indem sie ein Problem der Isogenie elliptischer Kurven aufstellt. Das Ziel des Angreifers ist es, Bobs privaten Schlüssel (&amp;lt;syntaxhighlight &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;enclose=&quot;none&quot;&lt;/del&gt; lang=&quot;python&quot;&amp;gt;Bobskey&amp;lt;/syntaxhighlight&amp;gt;) auf der Grundlage dieser Herausforderung wiederherzustellen, was die Arbeit mit den Operationen der elliptischen Kurve und den Isogenieberechnungen beinhaltet.&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Zusammenfassend lässt sich sagen, dass die Codezeile im Wesentlichen eine Herausforderung für den Angreifer darstellt, indem sie ein Problem der Isogenie elliptischer Kurven aufstellt. Das Ziel des Angreifers ist es, Bobs privaten Schlüssel (&amp;lt;syntaxhighlight &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;inline&lt;/ins&gt; lang=&quot;python&quot;&amp;gt;Bobskey&amp;lt;/syntaxhighlight&amp;gt;) auf der Grundlage dieser Herausforderung wiederherzustellen, was die Arbeit mit den Operationen der elliptischen Kurve und den Isogenieberechnungen beinhaltet.&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br /&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br /&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;syntaxhighlight lang=&quot;python&quot;&amp;gt;&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;syntaxhighlight lang=&quot;python&quot;&amp;gt;&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Wolfm</name></author>
	</entry>
	<entry>
		<id>https://sarwiki.informatik.hu-berlin.de/index.php?title=SIKE:_Los,_Stop,_Schade&amp;diff=14162&amp;oldid=prev</id>
		<title>Wolfm: /* Der angewandte Angriff */</title>
		<link rel="alternate" type="text/html" href="https://sarwiki.informatik.hu-berlin.de/index.php?title=SIKE:_Los,_Stop,_Schade&amp;diff=14162&amp;oldid=prev"/>
		<updated>2023-10-31T16:41:54Z</updated>

		<summary type="html">&lt;p&gt;&lt;span class=&quot;autocomment&quot;&gt;Der angewandte Angriff&lt;/span&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 16:41, 31 October 2023&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 50:&lt;/td&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 50:&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;So erraten wir schritt für Schritt Bobs 3^f Isogenie, indem wir immer wieder eine &amp;lt;math&amp;gt;2^e-3^{f-j}&amp;lt;/math&amp;gt;-Isogenie (&amp;lt;math&amp;gt;j \in \{1,\dots,e-1\}&amp;lt;/math&amp;gt;) bauen und überprüfen, ob wir mit der entstehenden &amp;lt;math&amp;gt;2^f&amp;lt;/math&amp;gt; Isogenie auf einer Produktkurve landen. Kanis Theorem liefert uns hier sozusagen ein Entscheidungskriterium.&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;So erraten wir schritt für Schritt Bobs 3^f Isogenie, indem wir immer wieder eine &amp;lt;math&amp;gt;2^e-3^{f-j}&amp;lt;/math&amp;gt;-Isogenie (&amp;lt;math&amp;gt;j \in \{1,\dots,e-1\}&amp;lt;/math&amp;gt;) bauen und überprüfen, ob wir mit der entstehenden &amp;lt;math&amp;gt;2^f&amp;lt;/math&amp;gt; Isogenie auf einer Produktkurve landen. Kanis Theorem liefert uns hier sozusagen ein Entscheidungskriterium.&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br /&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br /&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;== &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Der angewandte&lt;/del&gt; Angriff ==&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;== &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Angewandter&lt;/ins&gt; Angriff ==&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br /&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br /&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Der Angriff wurde ursprünglich von dem Duo Wouter Castryck und Thomas Decru durchgeführt. In ihrem Beitrag erklärten sie, dass der Angriff mithilfe des Computer-Algebra-Software-Systems namens Magma möglich war. Da Magma nicht quelloffen ist, stand es nicht vielen Menschen zur Verfügung, so dass nicht viele den Angriff selbst testen konnten. Um die Implementierung für die Öffentlichkeit zugänglicher zu machen, implementierten Giacomo Pope und Rémy Oudompheng den ursprünglichen Angriff erneut in einem Softwaresystem namens SageMath. SageMath ist quelloffen, und jeder kann den Angriff herunterladen und auf seinen eigenen Geräten neu implementieren, solange SageMath auf dem jeweiligen Gerät installiert ist.&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Der Angriff wurde ursprünglich von dem Duo Wouter Castryck und Thomas Decru durchgeführt. In ihrem Beitrag erklärten sie, dass der Angriff mithilfe des Computer-Algebra-Software-Systems namens Magma möglich war. Da Magma nicht quelloffen ist, stand es nicht vielen Menschen zur Verfügung, so dass nicht viele den Angriff selbst testen konnten. Um die Implementierung für die Öffentlichkeit zugänglicher zu machen, implementierten Giacomo Pope und Rémy Oudompheng den ursprünglichen Angriff erneut in einem Softwaresystem namens SageMath. SageMath ist quelloffen, und jeder kann den Angriff herunterladen und auf seinen eigenen Geräten neu implementieren, solange SageMath auf dem jeweiligen Gerät installiert ist.&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Wolfm</name></author>
	</entry>
	<entry>
		<id>https://sarwiki.informatik.hu-berlin.de/index.php?title=SIKE:_Los,_Stop,_Schade&amp;diff=14161&amp;oldid=prev</id>
		<title>Wolfm: /* Der mathematische Angriff */</title>
		<link rel="alternate" type="text/html" href="https://sarwiki.informatik.hu-berlin.de/index.php?title=SIKE:_Los,_Stop,_Schade&amp;diff=14161&amp;oldid=prev"/>
		<updated>2023-10-31T16:41:29Z</updated>

		<summary type="html">&lt;p&gt;&lt;span class=&quot;autocomment&quot;&gt;Der mathematische Angriff&lt;/span&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 16:41, 31 October 2023&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 40:&lt;/td&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 40:&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Allerdings können sie nicht einfach die Isogenien bzw. ihre Kerne über den ungesicherten Kanal verschicken. Darum legen sie zwei (öffentliche) jeweils öffentliche Hilfspunktpaare fest, die Punkte &amp;lt;math&amp;gt;\mathrm{P}_A,\mathrm{Q}_A&amp;lt;/math&amp;gt; der Ordnung &amp;lt;math&amp;gt;2^e&amp;lt;/math&amp;gt; für Alice und die Punkte &amp;lt;math&amp;gt;\mathrm{P}_B,\mathrm{Q}_B&amp;lt;/math&amp;gt; der Ordnung &amp;lt;math&amp;gt;3^f&amp;lt;/math&amp;gt; für Bob. Alice denkt sich nun eine geheime ganze Zahl &amp;lt;math&amp;gt;a&amp;lt;/math&amp;gt; aus, und erhält mit &amp;lt;math&amp;gt;A=\langle\mathrm{P}_A+a\cdot\mathrm{Q}_A\rangle&amp;lt;/math&amp;gt; den Kern ihrer Isogenie &amp;lt;math&amp;gt;\varphi_A&amp;lt;/math&amp;gt; der Ordnung &amp;lt;math&amp;gt;2^e&amp;lt;/math&amp;gt;. Bob erhält analog eine Isogenie &amp;lt;math&amp;gt;\varphi_B&amp;lt;/math&amp;gt; der Ordnung &amp;lt;math&amp;gt;3^b&amp;lt;/math&amp;gt;. Nun tauschen sie über den unsicheren Kanal die Bildwerte der Hilfspunkte des jeweils anderen unter der eigenen Isogenie aus, also &amp;lt;math&amp;gt;\varphi_A(\mathrm{P}_B)&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;\varphi_A(\mathrm{Q}_B)&amp;lt;/math&amp;gt; und &amp;lt;math&amp;gt;\varphi_B(\mathrm{P}_A)&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;\varphi_B(\mathrm{Q}_A)&amp;lt;/math&amp;gt; aus. Somit kann der jeweils können sie mit dem eigenen Geheimnis und den Bildwerten der Isogenie des anderen auf einen gemeinsamen Kern und somit auch eine gemeinsame Isogenie kommen, die ein Angreifer ohne eines der privaten Geheimnisse &amp;lt;math&amp;gt;a&amp;lt;/math&amp;gt; oder &amp;lt;math&amp;gt;b&amp;lt;/math&amp;gt; nicht effizient ermitteln kann.&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Allerdings können sie nicht einfach die Isogenien bzw. ihre Kerne über den ungesicherten Kanal verschicken. Darum legen sie zwei (öffentliche) jeweils öffentliche Hilfspunktpaare fest, die Punkte &amp;lt;math&amp;gt;\mathrm{P}_A,\mathrm{Q}_A&amp;lt;/math&amp;gt; der Ordnung &amp;lt;math&amp;gt;2^e&amp;lt;/math&amp;gt; für Alice und die Punkte &amp;lt;math&amp;gt;\mathrm{P}_B,\mathrm{Q}_B&amp;lt;/math&amp;gt; der Ordnung &amp;lt;math&amp;gt;3^f&amp;lt;/math&amp;gt; für Bob. Alice denkt sich nun eine geheime ganze Zahl &amp;lt;math&amp;gt;a&amp;lt;/math&amp;gt; aus, und erhält mit &amp;lt;math&amp;gt;A=\langle\mathrm{P}_A+a\cdot\mathrm{Q}_A\rangle&amp;lt;/math&amp;gt; den Kern ihrer Isogenie &amp;lt;math&amp;gt;\varphi_A&amp;lt;/math&amp;gt; der Ordnung &amp;lt;math&amp;gt;2^e&amp;lt;/math&amp;gt;. Bob erhält analog eine Isogenie &amp;lt;math&amp;gt;\varphi_B&amp;lt;/math&amp;gt; der Ordnung &amp;lt;math&amp;gt;3^b&amp;lt;/math&amp;gt;. Nun tauschen sie über den unsicheren Kanal die Bildwerte der Hilfspunkte des jeweils anderen unter der eigenen Isogenie aus, also &amp;lt;math&amp;gt;\varphi_A(\mathrm{P}_B)&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;\varphi_A(\mathrm{Q}_B)&amp;lt;/math&amp;gt; und &amp;lt;math&amp;gt;\varphi_B(\mathrm{P}_A)&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;\varphi_B(\mathrm{Q}_A)&amp;lt;/math&amp;gt; aus. Somit kann der jeweils können sie mit dem eigenen Geheimnis und den Bildwerten der Isogenie des anderen auf einen gemeinsamen Kern und somit auch eine gemeinsame Isogenie kommen, die ein Angreifer ohne eines der privaten Geheimnisse &amp;lt;math&amp;gt;a&amp;lt;/math&amp;gt; oder &amp;lt;math&amp;gt;b&amp;lt;/math&amp;gt; nicht effizient ermitteln kann.&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br /&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br /&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;== &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Der mathematische&lt;/del&gt; Angriff ==&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;== &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Mathematischer&lt;/ins&gt; Angriff ==&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br /&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br /&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Der Angriff von Castryck und Decru zeigt, wie eine bösartige Alice Bobs geheime Isogenie rekonstruieren kann. Der Grundgedanke dabei ist, dass die gemeinsame Isogenie von Alice und Bob eine besondere Isogenie ist, die wir hier, um mathematische Definitionen und Genauigkeiten zu ersparen, einfach nur reduzierbar nennen. Man kann sich das so vorstellen, dass ihr Bild das Produkt zweier elliptischer Kurven ist.&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Der Angriff von Castryck und Decru zeigt, wie eine bösartige Alice Bobs geheime Isogenie rekonstruieren kann. Der Grundgedanke dabei ist, dass die gemeinsame Isogenie von Alice und Bob eine besondere Isogenie ist, die wir hier, um mathematische Definitionen und Genauigkeiten zu ersparen, einfach nur reduzierbar nennen. Man kann sich das so vorstellen, dass ihr Bild das Produkt zweier elliptischer Kurven ist.&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Wolfm</name></author>
	</entry>
	<entry>
		<id>https://sarwiki.informatik.hu-berlin.de/index.php?title=SIKE:_Los,_Stop,_Schade&amp;diff=14160&amp;oldid=prev</id>
		<title>Wolfm: /* Der SIKE Schlüsselaustausch */</title>
		<link rel="alternate" type="text/html" href="https://sarwiki.informatik.hu-berlin.de/index.php?title=SIKE:_Los,_Stop,_Schade&amp;diff=14160&amp;oldid=prev"/>
		<updated>2023-10-31T16:40:50Z</updated>

		<summary type="html">&lt;p&gt;&lt;span class=&quot;autocomment&quot;&gt;Der SIKE Schlüsselaustausch&lt;/span&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 16:40, 31 October 2023&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 12:&lt;/td&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 12:&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Sike würde es bis in die 4. Runde des NIST-Wettbewerbs für quantensichere Verschlüsselungsprotokolle schaffen. Leider wurde zu der Zeit, als SIKE an Popularität gewann, ein neues Papier veröffentlicht, das sicherstellte, dass SIKE nicht sicher ist und mit einem Single-core Laptop entschlüsselt werden kann. Der Angriff erforderte weder zu viel Rechenleistung noch dauerte er zu lange, um die vom NIST-Wettbewerb vorgegebenen Parameter zu entschlüsseln.&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Sike würde es bis in die 4. Runde des NIST-Wettbewerbs für quantensichere Verschlüsselungsprotokolle schaffen. Leider wurde zu der Zeit, als SIKE an Popularität gewann, ein neues Papier veröffentlicht, das sicherstellte, dass SIKE nicht sicher ist und mit einem Single-core Laptop entschlüsselt werden kann. Der Angriff erforderte weder zu viel Rechenleistung noch dauerte er zu lange, um die vom NIST-Wettbewerb vorgegebenen Parameter zu entschlüsseln.&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br /&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br /&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;==&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt; Der &lt;/del&gt;SIKE Schlüsselaustausch ==&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;==SIKE Schlüsselaustausch ==&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br /&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br /&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Im Folgenden geben wir einen zugegeben sehr groben Überblick, wie ein&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Im Folgenden geben wir einen zugegeben sehr groben Überblick, wie ein&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Wolfm</name></author>
	</entry>
</feed>