<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="cs">
	<id>https://wiki.merenienergie.cz/subdom/wiki/index.php?action=history&amp;feed=atom&amp;title=M2M%3A_S-UDP_protocol%3A_examples</id>
	<title>M2M: S-UDP protocol: examples - Historie editací</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.merenienergie.cz/subdom/wiki/index.php?action=history&amp;feed=atom&amp;title=M2M%3A_S-UDP_protocol%3A_examples"/>
	<link rel="alternate" type="text/html" href="https://wiki.merenienergie.cz/subdom/wiki/index.php?title=M2M:_S-UDP_protocol:_examples&amp;action=history"/>
	<updated>2026-06-13T17:55:37Z</updated>
	<subtitle>Historie editací této stránky</subtitle>
	<generator>MediaWiki 1.35.1</generator>
	<entry>
		<id>https://wiki.merenienergie.cz/subdom/wiki/index.php?title=M2M:_S-UDP_protocol:_examples&amp;diff=345&amp;oldid=prev</id>
		<title>Adamn v 8. 8. 2021, 14:36</title>
		<link rel="alternate" type="text/html" href="https://wiki.merenienergie.cz/subdom/wiki/index.php?title=M2M:_S-UDP_protocol:_examples&amp;diff=345&amp;oldid=prev"/>
		<updated>2021-08-08T14:36:24Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left diff-editfont-monospace&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;cs&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Starší verze&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Verze z 8. 8. 2021, 14:36&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l98&quot; &gt;Řádek 98:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Řádek 98:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&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;534453200210007302000000010000000000000000000000000000001C920F27D85A966CD6DA8D80686A51CFF7FA8F8BFC371DE0CEA8FEE612B9C884120000000000000000000000000000000000000000000000&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&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;534453200210007302000000010000000000000000000000000000001C920F27D85A966CD6DA8D80686A51CFF7FA8F8BFC371DE0CEA8FEE612B9C884120000000000000000000000000000000000000000000000&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&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;/td&gt;&lt;td class='diff-marker'&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;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&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;Hotovo,&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&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;Hotovo, tato data tvoří surový UDP paket, který je zaslán do SDS zařízení.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&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 class=&quot;diffchange diffchange-inline&quot;&gt; &lt;/del&gt;tato data tvoří surový UDP paket, který je zaslán do SDS zařízení.&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot;&gt; &lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&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;/td&gt;&lt;td class='diff-marker'&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;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&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;A zařízení SDS odpoví surovým UDP paketem takto:&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&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;A zařízení SDS odpoví surovým UDP paketem takto:&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Adamn</name></author>
	</entry>
	<entry>
		<id>https://wiki.merenienergie.cz/subdom/wiki/index.php?title=M2M:_S-UDP_protocol:_examples&amp;diff=344&amp;oldid=prev</id>
		<title>Adamn v 8. 8. 2021, 14:35</title>
		<link rel="alternate" type="text/html" href="https://wiki.merenienergie.cz/subdom/wiki/index.php?title=M2M:_S-UDP_protocol:_examples&amp;diff=344&amp;oldid=prev"/>
		<updated>2021-08-08T14:35:05Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left diff-editfont-monospace&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;cs&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Starší verze&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Verze z 8. 8. 2021, 14:35&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l108&quot; &gt;Řádek 108:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Řádek 108:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&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='diff-marker'&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='diff-marker'&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;/td&gt;&lt;td class='diff-marker'&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;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&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;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&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;=== Příklad č. 2 - ODESLÁNÍ &amp;quot;GET GENERAL STATUS&amp;quot; PAKETU ===&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&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 class=&quot;diffchange diffchange-inline&quot;&gt; &lt;/del&gt;Příklad č. 2 - ODESLÁNÍ &amp;quot;GET GENERAL STATUS&amp;quot; PAKETU ===&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot;&gt; &lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&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;/td&gt;&lt;td class='diff-marker'&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;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&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;Náš program vytvořil platný &amp;quot;GET GENERAL STATUS&amp;quot; paket. Tento paket zde rozebereme, ať máte k dispozici praktický skutečný příklad.&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&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;Náš program vytvořil platný &amp;quot;GET GENERAL STATUS&amp;quot; paket. Tento paket zde rozebereme, ať máte k dispozici praktický skutečný příklad.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l119&quot; &gt;Řádek 119:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Řádek 118:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&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;Máme vzorový SUDP paket, který posíláme do SDS. Tento paket si zde rozebereme.&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&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;Máme vzorový SUDP paket, který posíláme do SDS. Tento paket si zde rozebereme.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&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;/td&gt;&lt;td class='diff-marker'&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;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&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;Každý SUDP paket se skládá ze: HLAVIČKY a PAYLOADu. Tyto dvě &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;časti &lt;/del&gt;jsou v paketu vloženy těsně za sebou.&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&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;Každý SUDP paket se skládá ze: HLAVIČKY a PAYLOADu. Tyto dvě &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;části &lt;/ins&gt;jsou v paketu vloženy těsně za sebou.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&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;/td&gt;&lt;td class='diff-marker'&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;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&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;Hlavička SUDP paketu je rozepsána zde:&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&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;Hlavička SUDP paketu je rozepsána zde:&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l181&quot; &gt;Řádek 181:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Řádek 180:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&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;53445320021000D803000000050000000000000000000000000000003F978ED56E61218EE88A67AEC92378E76FB9B3BBE3FE6009FFA509FD80E6500FAE0000000000000000000000000000000000000000000000&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&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;53445320021000D803000000050000000000000000000000000000003F978ED56E61218EE88A67AEC92378E76FB9B3BBE3FE6009FFA509FD80E6500FAE0000000000000000000000000000000000000000000000&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&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;/td&gt;&lt;td class='diff-marker'&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;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&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;Hotovo,&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&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;Hotovo, tato data tvoří surový UDP paket, který je zaslán do SDS zařízení.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&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 class=&quot;diffchange diffchange-inline&quot;&gt; &lt;/del&gt;tato data tvoří surový UDP paket, který je zaslán do SDS zařízení.&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot;&gt; &lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&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;/td&gt;&lt;td class='diff-marker'&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;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&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;A zařízení SDS odpoví surovým UDP paketem například takto:&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&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;A zařízení SDS odpoví surovým UDP paketem například takto:&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l191&quot; &gt;Řádek 191:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Řádek 189:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&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='diff-marker'&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='diff-marker'&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;/td&gt;&lt;td class='diff-marker'&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;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&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;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&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;=== Příklad č. 3 - ODESLÁNÍ &amp;quot;FC-SET&amp;quot; PAKETU (master command 8, sub command 1) ===&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&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 class=&quot;diffchange diffchange-inline&quot;&gt; &lt;/del&gt;Příklad č. 3 - ODESLÁNÍ &amp;quot;FC-SET&amp;quot; PAKETU (master command 8, sub command 1) ===&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot;&gt; &lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&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;/td&gt;&lt;td class='diff-marker'&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;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&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;Třetí vzorový odeslaný paket je rozebrán zde.  &lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&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;Třetí vzorový odeslaný paket je rozebrán zde.  &lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l246&quot; &gt;Řádek 246:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Řádek 243:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&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;E62A30058BF397680D140400FB3E215B010090B108010900D204054031323334350A568B825FB046966E8BB2F418FE6F&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&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;E62A30058BF397680D140400FB3E215B010090B108010900D204054031323334350A568B825FB046966E8BB2F418FE6F&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&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;/td&gt;&lt;td class='diff-marker'&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;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&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;Teď&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&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;Teď se provede šifrování PAYLOAD bloku.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&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 class=&quot;diffchange diffchange-inline&quot;&gt; &lt;/del&gt;se provede šifrování PAYLOAD bloku.&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot;&gt; &lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&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;/td&gt;&lt;td class='diff-marker'&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;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&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;Vstupy do XTEA-ENC jsou:&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&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;Vstupy do XTEA-ENC jsou:&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l261&quot; &gt;Řádek 261:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Řádek 257:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&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;06A8503904AECC372D9968D7D1332B917898EB5DFECF361D28D131B53AFD2622CC6E4E7405A5FAD6456D9CEDFA7AA42A&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&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;06A8503904AECC372D9968D7D1332B917898EB5DFECF361D28D131B53AFD2622CC6E4E7405A5FAD6456D9CEDFA7AA42A&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&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;/td&gt;&lt;td class='diff-marker'&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;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&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;Tímto&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&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;Tímto si můžete ověřit, že vaše implementace XTEA-ENC pracuje stějně jako ta v SDS.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&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 class=&quot;diffchange diffchange-inline&quot;&gt; &lt;/del&gt;si můžete ověřit, že vaše implementace XTEA-ENC pracuje stějně jako ta v&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot;&gt; &lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&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 class=&quot;diffchange diffchange-inline&quot;&gt; &lt;/del&gt;SDS.&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot;&gt; &lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&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;/td&gt;&lt;td class='diff-marker'&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;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&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;Celý paket je tedy sloučením SUDP Hlavičky a šifrovaného SUDP payloadu:&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&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;Celý paket je tedy sloučením SUDP Hlavičky a šifrovaného SUDP payloadu:&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l269&quot; &gt;Řádek 269:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Řádek 263:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&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;534453200310007A040000000900000000000000000000000000000006A8503904AECC372D9968D7D1332B917898EB5DFECF361D28D131B53AFD2622CC6E4E7405A5FAD6456D9CEDFA7AA42A210000000000000000000000000000000000000000000000&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&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;534453200310007A040000000900000000000000000000000000000006A8503904AECC372D9968D7D1332B917898EB5DFECF361D28D131B53AFD2622CC6E4E7405A5FAD6456D9CEDFA7AA42A210000000000000000000000000000000000000000000000&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&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;/td&gt;&lt;td class='diff-marker'&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;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&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;Hotovo,&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&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;Hotovo, tato data tvoří surový UDP paket, který je zaslán do SDS zařízení.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&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 class=&quot;diffchange diffchange-inline&quot;&gt; &lt;/del&gt;tato data tvoří surový UDP paket, který je zaslán do SDS zařízení.&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot;&gt; &lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&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;/td&gt;&lt;td class='diff-marker'&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;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&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;A zařízení SDS odpoví surovým UDP paketem například takto:&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&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;A zařízení SDS odpoví surovým UDP paketem například takto:&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l289&quot; &gt;Řádek 289:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Řádek 282:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&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;Příklad číslo 1:&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&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;Příklad číslo 1:&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&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;/td&gt;&lt;td class='diff-marker'&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;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&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;  complete plaintext payload:  &lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&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;  complete plaintext payload: 1A1F30051315E2A13A03000006FAAB5B010090B100000000E6D5BF5CAAACC71F&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&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;1A1F30051315E2A13A03000006FAAB5B010090B100000000E6D5BF5CAAACC71F&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot;&gt; &lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&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='diff-marker'&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='diff-marker'&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;  crc32: start, output=0xFFFFFFFF&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&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;  crc32: start, output=0xFFFFFFFF&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l311&quot; &gt;Řádek 311:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Řádek 303:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&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;Příklad číslo 2:&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&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;Příklad číslo 2:&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&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;/td&gt;&lt;td class='diff-marker'&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;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&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;  complete plaintext payload:  &lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&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;  complete plaintext payload: 5A243005F712DC60DD3A010056FAAB5B010090B10100000040BD21F282B1929F&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&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;5A243005F712DC60DD3A010056FAAB5B010090B10100000040BD21F282B1929F&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot;&gt; &lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&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='diff-marker'&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='diff-marker'&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;  crc32: start, output=0xFFFFFFFF&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&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;  crc32: start, output=0xFFFFFFFF&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Adamn</name></author>
	</entry>
	<entry>
		<id>https://wiki.merenienergie.cz/subdom/wiki/index.php?title=M2M:_S-UDP_protocol:_examples&amp;diff=343&amp;oldid=prev</id>
		<title>Adamn: Založena nová stránka s textem „== SUDP PROTOKOL - příklady ==  Jsou zde tři příklady, kdy náš program vytvořil SUDP příkaz, a poslal jej UDP protokolem do zařízení SDS.  Tyt…“</title>
		<link rel="alternate" type="text/html" href="https://wiki.merenienergie.cz/subdom/wiki/index.php?title=M2M:_S-UDP_protocol:_examples&amp;diff=343&amp;oldid=prev"/>
		<updated>2021-08-08T14:33:36Z</updated>

		<summary type="html">&lt;p&gt;Založena nová stránka s textem „== SUDP PROTOKOL - příklady ==  Jsou zde tři příklady, kdy náš program vytvořil SUDP příkaz, a poslal jej UDP protokolem do zařízení SDS.  Tyt…“&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Nová stránka&lt;/b&gt;&lt;/p&gt;&lt;div&gt;== SUDP PROTOKOL - příklady ==&lt;br /&gt;
&lt;br /&gt;
Jsou zde tři příklady, kdy náš program vytvořil SUDP příkaz, a poslal jej UDP protokolem do zařízení SDS.&lt;br /&gt;
&lt;br /&gt;
Tyto tři pakety jsou zde rozebrány podle popisu [[M2M:_S-UDP_protocol|SUDP protokolu]].&lt;br /&gt;
&lt;br /&gt;
=== Ptáte se === &lt;br /&gt;
&lt;br /&gt;
'''Dotaz''':&lt;br /&gt;
&lt;br /&gt;
Kde se v těchto příkladech vzali právě ty konkrétní hodnoty a čísla ? &lt;br /&gt;
&lt;br /&gt;
'''Odpověď''': &lt;br /&gt;
&lt;br /&gt;
Některé jsou pevně dané popisem protokolu SUDP, některé jsou zcela náhodné (random) tak jak to SUPD protokol vyžaduje (opět viz [[M2M:_S-UDP_protocol|popis]]), některé jsou odvozeny od stavu (např. aktuální čas) no a nakonec - některé jsou jednoduše zvolené ručně mnou, aby tady vůbec nějaký příklad byl.&lt;br /&gt;
&lt;br /&gt;
'''Dotaz''':&lt;br /&gt;
&lt;br /&gt;
Jak spočítám kolik je hodnota 'R' ?&lt;br /&gt;
&lt;br /&gt;
'''Odpověď''': &lt;br /&gt;
&lt;br /&gt;
Viz popis protokolu, a pokud to stále není jasné, tak viz vzoreček v následujících příkladech (vyjádřete si R ze vzorečku kde se počítá PL, matematika 4. třídy ZŠ).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
=== Příklad č. 1 - ODESLÁNÍ &amp;quot;NOP&amp;quot; PAKETU ===&lt;br /&gt;
&lt;br /&gt;
Náš program vytvořil platný &amp;quot;NOP&amp;quot; paket. Tento paket zde rozebereme, ať máte k dispozici praktický skutečný příklad.&lt;br /&gt;
&lt;br /&gt;
Hodnoty jsou tedy zvoleny, a my se na ně podíváme. Váš program je mnohdy bude volit jinak, ale pořád to musí odpovídat intencím zadání protokolu SUDP, jinak to SDS odmítne.&lt;br /&gt;
&lt;br /&gt;
'''Takže:'''&lt;br /&gt;
&lt;br /&gt;
Máme vzorový SUDP paket, který posíláme do SDS. Tento paket si zde rozebereme.&lt;br /&gt;
&lt;br /&gt;
Každý SUDP paket se skládá ze: HLAVIČKY a PAYLOADu. Tyto dvě časti jsou v paketu vloženy těsně za sebou.&lt;br /&gt;
&lt;br /&gt;
Hlavička SUDP paketu je rozepsána zde:&lt;br /&gt;
 SDS_header[0]  = 83 dec     (konstanta)&lt;br /&gt;
 SDS_header[1]  = 68 dec     (konstanta)&lt;br /&gt;
 SDS_header[2]  = 83 dec     (konstanta)&lt;br /&gt;
 version        = 32 dec     (konstanta)&lt;br /&gt;
 PL             = 2 dec      (určeno výpočtem)&lt;br /&gt;
 enc_flag       = 16 dec     (konstanta)&lt;br /&gt;
 rsvd           = 0 dec      (konstanta)&lt;br /&gt;
 CK1            = 115 dec    (určeno výpočtem)&lt;br /&gt;
 user_corid     = 2 dec      (zvoleno vámi)&lt;br /&gt;
 ctr_block[0]   = 1 dec      (zvoleno vámi)&lt;br /&gt;
 ctr_block[1]   = 0 dec      (zvoleno vámi)&lt;br /&gt;
 ctr_block[2]   = 0 dec      (zvoleno vámi)&lt;br /&gt;
 ctr_block[3]   = 0 dec      (zvoleno vámi)&lt;br /&gt;
&lt;br /&gt;
Celá bajtová reprezentace SUDP Hlavičky je tedy taková:&lt;br /&gt;
 53445320021000730200000001000000000000000000000000000000&lt;br /&gt;
&lt;br /&gt;
Payload SUDP paketu je rozepsán zde:&lt;br /&gt;
 random         = 6 dec              (náhodné číslo)&lt;br /&gt;
 ck2            = 31 dec             (určeno výpočtem)&lt;br /&gt;
 XR_MTU         = 1328 dec           (obvykle určeno systémem)&lt;br /&gt;
 crc32          = 2039090611 dec     (určeno výpočtem)&lt;br /&gt;
 ic.uptime      = 827 dec            (stavová hodnota)&lt;br /&gt;
 ic.time        = 1528904578 dec     (stavová hodnota)&lt;br /&gt;
 ic.sds_device  = 2979004417 dec     (určeno vámi podle cílového SDS)&lt;br /&gt;
 ic.master_cmd  = 0 dec              (zvoleno vámi)&lt;br /&gt;
 ic.sub_cmd     = 0 dec              (zvoleno vámi) &lt;br /&gt;
 ic.XL          = 0 dec              (zvoleno vámi - délka aplikačních dat)&lt;br /&gt;
 ic.payload     =                    (vaše aplikační data - zde nejsou takže prázdno) &lt;br /&gt;
 ic.randompay   = 0xC6 0x7F 0x1A 0x3E 0xE3 0x67 0x2C 0x2C   (náhodná čísla o počtu R)&lt;br /&gt;
&lt;br /&gt;
Všimněte si, že v tomto paketu nejsou neseny vlastní aplikační data (XL je nula), a je zde tedy pouze vidět &amp;quot;randompay&amp;quot; což je doplnění náhodných čísel (ať tam nejsou jen nuly) do bloku pro zarovnání délky na násobek 16.&lt;br /&gt;
 &lt;br /&gt;
Výpočet je:&lt;br /&gt;
 PL = ( XL + R + 24 ) / 16&lt;br /&gt;
  2 = ( 0  + 8 + 24 ) / 16&lt;br /&gt;
&lt;br /&gt;
Takže tedy náš kompletní PAYLOAD před šifrováním (tj. plain-text), tedy to co následně dáváme jako celý blok do funkce XTEA-ENC, je takovýto:&lt;br /&gt;
 061F3005B30D8A793B030000823B215B010090B100000000C67F1A3EE3672C2C&lt;br /&gt;
&lt;br /&gt;
Teď se provede šifrování PAYLOAD bloku.&lt;br /&gt;
&lt;br /&gt;
Vstupy do XTEA-ENC jsou:&lt;br /&gt;
&lt;br /&gt;
XTEA-ENC: CounterBlock (POZOR, tisknuto jako čísla formátu UINT32 v reprezentaci Little Endian): &lt;br /&gt;
 [0] = 0x00000001 [1] = 0x00000000 &lt;br /&gt;
&lt;br /&gt;
XTEA-ENC: EncKey (POZOR, tisknuto jako čísla formátu UINT32 v reprezentaci Little Endian): &lt;br /&gt;
 [0] = 0x0002FFFF [1] = 0x1E002A00 [2] = 0x0F473332 [3] = 0x34303833 &lt;br /&gt;
&lt;br /&gt;
Takže, kompletní PAYLOAD '''po šifrování''' s výše uvedenými parametry vypadá takto:&lt;br /&gt;
 1C920F27D85A966CD6DA8D80686A51CFF7FA8F8BFC371DE0CEA8FEE612B9C884&lt;br /&gt;
&lt;br /&gt;
Tímto si můžete ověřit, že vaše implementace XTEA-ENC pracuje stejně jako ta v SDS.&lt;br /&gt;
&lt;br /&gt;
Celý paket je tedy sloučením SUDP Hlavičky a šifrovaného SUDP payloadu:&lt;br /&gt;
 &lt;br /&gt;
534453200210007302000000010000000000000000000000000000001C920F27D85A966CD6DA8D80686A51CFF7FA8F8BFC371DE0CEA8FEE612B9C884120000000000000000000000000000000000000000000000&lt;br /&gt;
&lt;br /&gt;
Hotovo,&lt;br /&gt;
 tato data tvoří surový UDP paket, který je zaslán do SDS zařízení.&lt;br /&gt;
&lt;br /&gt;
A zařízení SDS odpoví surovým UDP paketem takto:&lt;br /&gt;
 &lt;br /&gt;
534453200210009F02000000C103000000000000000000000000000094D1D2C7095D09AA4171F0C0D2B8790EBD7F688364CC2ABB7F52EA185DF69B1812000000000000000000000000000000358B7B722F4C8DFA&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
===&lt;br /&gt;
 Příklad č. 2 - ODESLÁNÍ &amp;quot;GET GENERAL STATUS&amp;quot; PAKETU ===&lt;br /&gt;
&lt;br /&gt;
Náš program vytvořil platný &amp;quot;GET GENERAL STATUS&amp;quot; paket. Tento paket zde rozebereme, ať máte k dispozici praktický skutečný příklad.&lt;br /&gt;
&lt;br /&gt;
Hodnoty jsou tedy zvoleny, a my se na ně podíváme. Váš program je mnohdy bude volit jinak, ale pořád to musí odpovídat intencím zadání protokolu SUDP, jinak to SDS odmítne.&lt;br /&gt;
&lt;br /&gt;
'''Takže:'''&lt;br /&gt;
&lt;br /&gt;
Máme vzorový SUDP paket, který posíláme do SDS. Tento paket si zde rozebereme.&lt;br /&gt;
&lt;br /&gt;
Každý SUDP paket se skládá ze: HLAVIČKY a PAYLOADu. Tyto dvě časti jsou v paketu vloženy těsně za sebou.&lt;br /&gt;
&lt;br /&gt;
Hlavička SUDP paketu je rozepsána zde:&lt;br /&gt;
 SDS_header[0]  = 83 dec&lt;br /&gt;
 SDS_header[1]  = 68 dec&lt;br /&gt;
 SDS_header[2]  = 83 dec&lt;br /&gt;
 version        = 32 dec&lt;br /&gt;
 PL             = 2 dec&lt;br /&gt;
 enc_flag       = 16 dec&lt;br /&gt;
 rsvd           = 0 dec&lt;br /&gt;
 CK1            = 216 dec&lt;br /&gt;
 user_corid     = 3 dec&lt;br /&gt;
 ctr_block[0]   = 5 dec&lt;br /&gt;
 ctr_block[1]   = 0 dec&lt;br /&gt;
 ctr_block[2]   = 0 dec&lt;br /&gt;
 ctr_block[3]   = 0 dec&lt;br /&gt;
&lt;br /&gt;
Celá bajtová reprezentace SUDP Hlavičky je tedy taková:&lt;br /&gt;
 53445320021000D80300000005000000000000000000000000000000&lt;br /&gt;
&lt;br /&gt;
Payload SUDP paketu je rozepsán zde:&lt;br /&gt;
 random         = 5 dec&lt;br /&gt;
 ck2            = 36 dec&lt;br /&gt;
 XR_MTU         = 1328 dec&lt;br /&gt;
 crc32          = 2653010472 dec&lt;br /&gt;
 ic.uptime      = 10452 dec&lt;br /&gt;
 ic.time        = 1528905210 dec&lt;br /&gt;
 ic.sds_device  = 2979004417 dec&lt;br /&gt;
 ic.master_cmd  = 1 dec&lt;br /&gt;
 ic.sub_cmd     = 0 dec&lt;br /&gt;
 ic.XL          = 0 dec&lt;br /&gt;
 ic.payload     = &lt;br /&gt;
 ic.randompay   = 0x87 0x99 0xA4 0x15 0x23 0xDE 0xB0 0x6C &lt;br /&gt;
&lt;br /&gt;
Všimněte si, že v tomto paketu nejsou neseny vlastní aplikační data (XL je nula), a je zde tedy pouze vidět &amp;quot;randompay&amp;quot; což je doplnění náhodných čísel (ať tam nejsou jen nuly) do bloku pro zarovnání délky na násobek 16.&lt;br /&gt;
&lt;br /&gt;
Výpočet je:&lt;br /&gt;
 PL = ( XL + R + 24 ) / 16&lt;br /&gt;
  2 = ( 0  + 8 + 24 ) / 16&lt;br /&gt;
&lt;br /&gt;
Takže tedy náš kompletní PAYLOAD před šifrováním (tj. plain-text), tedy to co následně dáváme jako celý blok do funkce XTEA-ENC, je takovýto:&lt;br /&gt;
 0524300528BA219ED4280000FA3D215B010090B1010000008799A41523DEB06C&lt;br /&gt;
&lt;br /&gt;
Teď se provede šifrování PAYLOAD bloku.&lt;br /&gt;
&lt;br /&gt;
Vstupy do XTEA-ENC jsou:&lt;br /&gt;
&lt;br /&gt;
XTEA-ENC: CounterBlock (POZOR, tisknuto jako čísla formátu UINT32 v reprezentaci Little Endian): &lt;br /&gt;
 [0] = 0x00000005 [1] = 0x00000000 &lt;br /&gt;
&lt;br /&gt;
XTEA-ENC: EncKey (POZOR, tisknuto jako čísla formátu UINT32 v reprezentaci Little Endian): &lt;br /&gt;
 [0] = 0x0002FFFF [1] = 0x1E002A00 [2] = 0x0F473332 [3] = 0x34303833 &lt;br /&gt;
&lt;br /&gt;
Takže, kompletní PAYLOAD '''po šifrování''' s výše uvedenými parametry vypadá takto:&lt;br /&gt;
 3F978ED56E61218EE88A67AEC92378E76FB9B3BBE3FE6009FFA509FD80E6500F&lt;br /&gt;
&lt;br /&gt;
Tímto si můžete ověřit, že vaše implementace XTEA-ENC pracuje stejně jako ta v SDS.&lt;br /&gt;
&lt;br /&gt;
Celý paket je tedy sloučením SUDP Hlavičky a šifrovaného SUDP payloadu:&lt;br /&gt;
 &lt;br /&gt;
53445320021000D803000000050000000000000000000000000000003F978ED56E61218EE88A67AEC92378E76FB9B3BBE3FE6009FFA509FD80E6500FAE0000000000000000000000000000000000000000000000&lt;br /&gt;
&lt;br /&gt;
Hotovo,&lt;br /&gt;
 tato data tvoří surový UDP paket, který je zaslán do SDS zařízení.&lt;br /&gt;
&lt;br /&gt;
A zařízení SDS odpoví surovým UDP paketem například takto:&lt;br /&gt;
 &lt;br /&gt;
534453201D10003A03000000C90300000000000000000000000000006F7CB8670960B64EEA040F1E49C61B2540A463E73F4DCEE9D58DD83DF748DB76C62A212AD2FFBFF9717C9F6B76C54B84978BAE11F838658743B4679D9F89255950CCBEAACB9FBF1E097EA916A393A0F883072FDE2D66BCA40B9E85A51FF2A7EB54D87D8AEC71D1AB76BD7B17FF79BC871D207D5C8BB10CCE624B5AABF1D4F19A3622299055076B414723D47971A5053E3BDCAB37960068DBA0225362224C0E40E950586D54943396CCCE9A4A6EB8247BF5FA50F680A1309D3AFA7D9D227A9D2141249A962949468A240EF8E6A66036437C32B2BFF60BB6EBCEB93B35D79FB24288EB7CB985AFB91D50CDCCDCC7C240FE4235F6BAD4746A0E344107A4DD6E1C0319E533ED4BDE6D8CF04B270A0A68D860082671EF0FF52BEE99593EB25754E5FE6AAD437CD5ECD81913D049EBFAFBDE9659C1C2C6D05CF2ABB71586658404766C6F623CD4D7AF04A64D9CF9709010238732D60EE6D1A545884C5E2CDB3476C8836C4AB1AF401C9B4DBB69FF2F40BC0EA7DF84456FCEB46C3CC82E09DF27EEC7B224B9042B2EB16833FD8571160F2BC55ECEA39BC8D28679A2463D3425DCFBCE607E314B9BCDCC0B9750750FADCF280374511CF56315D90441F0ACBD977310739A5FCC7E1F9148E6684C4DB53E0DE92B3B37FFF51C94691C0BC24246A460DEC9A972967453D57101A6&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
===&lt;br /&gt;
 Příklad č. 3 - ODESLÁNÍ &amp;quot;FC-SET&amp;quot; PAKETU (master command 8, sub command 1) ===&lt;br /&gt;
&lt;br /&gt;
Třetí vzorový odeslaný paket je rozebrán zde. &lt;br /&gt;
&lt;br /&gt;
Tento paket už nese aplikační data (v našem případě zápis FC-SET do indexu 1234 typem TEXT o délce 5).&lt;br /&gt;
&lt;br /&gt;
Každý SUDP paket se skládá ze: HLAVIČKY a PAYLOADu. Tyto dvě části jsou v paketu vloženy těsně za sebou.&lt;br /&gt;
&lt;br /&gt;
Hlavička SUDP paketu je rozepsána zde:&lt;br /&gt;
 SDS_header[0]  = 83 dec&lt;br /&gt;
 SDS_header[1]  = 68 dec&lt;br /&gt;
 SDS_header[2]  = 83 dec&lt;br /&gt;
 version        = 32 dec&lt;br /&gt;
 PL             = 3 dec&lt;br /&gt;
 enc_flag       = 16 dec&lt;br /&gt;
 rsvd           = 0 dec&lt;br /&gt;
 CK1            = 122 dec&lt;br /&gt;
 user_corid     = 4 dec&lt;br /&gt;
 ctr_block[0]   = 9 dec&lt;br /&gt;
 ctr_block[1]   = 0 dec&lt;br /&gt;
 ctr_block[2]   = 0 dec&lt;br /&gt;
 ctr_block[3]   = 0 dec&lt;br /&gt;
&lt;br /&gt;
Celá bajtová reprezentace SUDP Hlavičky je tedy taková:&lt;br /&gt;
 534453200310007A0400000009000000000000000000000000000000&lt;br /&gt;
&lt;br /&gt;
Payload SUDP paketu je rozepsán zde:&lt;br /&gt;
 random         = 230 dec&lt;br /&gt;
 ck2            = 42 dec&lt;br /&gt;
 XR_MTU         = 1328 dec&lt;br /&gt;
 crc32          = 1754788747 dec&lt;br /&gt;
 ic.uptime      = 267277 dec&lt;br /&gt;
 ic.time        = 1528905467 dec&lt;br /&gt;
 ic.sds_device  = 2979004417 dec&lt;br /&gt;
 ic.master_cmd  = 8 dec&lt;br /&gt;
 ic.sub_cmd     = 1 dec&lt;br /&gt;
 ic.XL          = 9 dec&lt;br /&gt;
 ic.payload     = 0xD2 0x04 0x05 0x40 0x31 0x32 0x33 0x34 0x35 &lt;br /&gt;
 ic.randompay   = 0x0A 0x56 0x8B 0x82 0x5F 0xB0 0x46 0x96 0x6E 0x8B 0xB2&lt;br /&gt;
 0xF4 0x18 0xFE 0x6F &lt;br /&gt;
&lt;br /&gt;
Délka 'ic.payload' je právě 'ic.XL' bajtů, a délka 'ic.randompay' je právě 'R' bajtů.&lt;br /&gt;
&lt;br /&gt;
Výpočet je:&lt;br /&gt;
 PL = ( XL + R  + 24 ) / 16&lt;br /&gt;
  3 = ( 9  + 15 + 24 ) / 16&lt;br /&gt;
&lt;br /&gt;
Pro jistotu je zde i pohled na výpočet R:&lt;br /&gt;
 15 = 3*16 - 9 - 24&lt;br /&gt;
&lt;br /&gt;
Takže tedy náš kompletní PAYLOAD před šifrováním (tj. plain-text), tedy to co následně dáváme jako celý blok do funkce XTEA-ENC, je takovýto:&lt;br /&gt;
 &lt;br /&gt;
E62A30058BF397680D140400FB3E215B010090B108010900D204054031323334350A568B825FB046966E8BB2F418FE6F&lt;br /&gt;
&lt;br /&gt;
Teď&lt;br /&gt;
 se provede šifrování PAYLOAD bloku.&lt;br /&gt;
&lt;br /&gt;
Vstupy do XTEA-ENC jsou:&lt;br /&gt;
&lt;br /&gt;
XTEA-ENC: CounterBlock (POZOR, tisknuto jako čísla formátu UINT32 v reprezentaci Little Endian): &lt;br /&gt;
 [0] = 0x00000009 [1] = 0x00000000 &lt;br /&gt;
&lt;br /&gt;
XTEA-ENC: EncKey (POZOR, tisknuto jako čísla formátu UINT32 v reprezentaci Little Endian): &lt;br /&gt;
 [0] = 0x0002FFFF [1] = 0x1E002A00 [2] = 0x0F473332 [3] = 0x34303833 &lt;br /&gt;
&lt;br /&gt;
Takže, kompletní PAYLOAD '''po šifrování''' s výše uvedenými parametry vypadá takto:&lt;br /&gt;
 &lt;br /&gt;
06A8503904AECC372D9968D7D1332B917898EB5DFECF361D28D131B53AFD2622CC6E4E7405A5FAD6456D9CEDFA7AA42A&lt;br /&gt;
&lt;br /&gt;
Tímto&lt;br /&gt;
 si můžete ověřit, že vaše implementace XTEA-ENC pracuje stějně jako ta v&lt;br /&gt;
 SDS.&lt;br /&gt;
&lt;br /&gt;
Celý paket je tedy sloučením SUDP Hlavičky a šifrovaného SUDP payloadu:&lt;br /&gt;
 &lt;br /&gt;
534453200310007A040000000900000000000000000000000000000006A8503904AECC372D9968D7D1332B917898EB5DFECF361D28D131B53AFD2622CC6E4E7405A5FAD6456D9CEDFA7AA42A210000000000000000000000000000000000000000000000&lt;br /&gt;
&lt;br /&gt;
Hotovo,&lt;br /&gt;
 tato data tvoří surový UDP paket, který je zaslán do SDS zařízení.&lt;br /&gt;
&lt;br /&gt;
A zařízení SDS odpoví surovým UDP paketem například takto:&lt;br /&gt;
 &lt;br /&gt;
53445320031000EF0400000003040000000000000000000000000000E55553636B788B2A8B2B92AC67E7F8D1EEE9EC9E7AB5800BE87C598B2F0743AD6449CDEC60D3AEC1DC47398E375372E52100000000000000003B5FAB2C7DF1B212F0F62D497F5310&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Vzorové výpočty CRC32 ==&lt;br /&gt;
&lt;br /&gt;
Pro ověření funkce vaší implementace výpočtu CRC32 jsou zde ukázány tři příklady toho, jak se to pro S-UDP počítá.&lt;br /&gt;
&lt;br /&gt;
Algoritmus výpočtu pracuje vždy s 32bit krokem. Na začátku je crc32 nastaveno na 0xFFFFFFFF a pak se postupně přepočítává, vždys 32bit slovo za slovem.&lt;br /&gt;
&lt;br /&gt;
Polynom je 0x04C11DB7.&lt;br /&gt;
&lt;br /&gt;
Vyzkoušet si to můžete online, např. na stránce: https://crccalc.com/?crc=00000915+&amp;amp;method=hex - výsledky jsou v řádku označeném jako &amp;quot;CRC-32/MPEG-2&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
Příklad číslo 1:&lt;br /&gt;
&lt;br /&gt;
 complete plaintext payload: &lt;br /&gt;
1A1F30051315E2A13A03000006FAAB5B010090B100000000E6D5BF5CAAACC71F&lt;br /&gt;
 &lt;br /&gt;
 crc32: start, output=0xFFFFFFFF&lt;br /&gt;
 crc32: input=0000033A output=0x4E5739EE&lt;br /&gt;
 crc32: input=5BABFA06 output=0xB0493723&lt;br /&gt;
 crc32: input=B1900001 output=0xC21BA6F9&lt;br /&gt;
 crc32: input=00000000 output=0x3641804E&lt;br /&gt;
 crc32: input=5CBFD5E6 output=0xD9F37F11&lt;br /&gt;
 crc32: input=1FC7ACAA output=0xA1E21513&lt;br /&gt;
 crc32: DONE, final hex-output=0xA1E21513 / dec-output=2715948307&lt;br /&gt;
&lt;br /&gt;
Všimněte si kritické vlastnosti výpočtu crc32 z původního payloadu - jak jsou jednotlivé bajty přerovnány. Je to dáno tím, že procesor je v režimu LITTLE ENDIAN, tedy že má &amp;quot;LSB na kraji vlevo a MSB na kraji vpravo&amp;quot;. Pěkně to jde vidět hned na prvním řádku výpočtu:&lt;br /&gt;
&lt;br /&gt;
 přímá bajtová reprezentace plaintext payload v RAM - (hex): . . . 3A030000 . . .&lt;br /&gt;
 &lt;br /&gt;
 crc32: input = 0000033A (hex)&lt;br /&gt;
&lt;br /&gt;
Protože crc32 výpočet se provádí vždy nad celým 32bit slovem, musí se správně dané slovo z paměti přečíst. Jinak řečeno: výpočet crc32 se nekrmí po bajtech, ale po celých 32bit slovech, a tento výpočet pracuje nad hodnotami, nikoliv nad bajtovou reprezentací.&lt;br /&gt;
&lt;br /&gt;
Příklad číslo 2:&lt;br /&gt;
&lt;br /&gt;
 complete plaintext payload: &lt;br /&gt;
5A243005F712DC60DD3A010056FAAB5B010090B10100000040BD21F282B1929F&lt;br /&gt;
 &lt;br /&gt;
 crc32: start, output=0xFFFFFFFF&lt;br /&gt;
 crc32: input=00013ADD output=0xFCC2CCAE&lt;br /&gt;
 crc32: input=5BABFA56 output=0x683AFE3A&lt;br /&gt;
 crc32: input=B1900001 output=0x1C8E2FE4&lt;br /&gt;
 crc32: input=00000001 output=0xDB03731A&lt;br /&gt;
 crc32: input=F221BD40 output=0x0C83B853&lt;br /&gt;
 crc32: input=9F92B182 output=0x60DC12F7&lt;br /&gt;
 crc32: DONE, final hex-output=0x60DC12F7 / dec-output=1625035511&lt;br /&gt;
&lt;br /&gt;
Příklad číslo 3:&lt;br /&gt;
&lt;br /&gt;
 crc32: start, output=0xFFFFFFFF&lt;br /&gt;
 crc32: input=00000915 output=0xC481EFEE&lt;br /&gt;
 crc32: input=5BABF5F3 output=0xC5CCC0E4&lt;br /&gt;
 crc32: input=B1900001 output=0xC3BB7150&lt;br /&gt;
 crc32: input=00000001 output=0x0E1C2392&lt;br /&gt;
 crc32: input=3573A2F1 output=0x33E32AB1&lt;br /&gt;
 crc32: input=F6E5E9B8 output=0x40568BE0&lt;br /&gt;
 crc32: DONE, final hex-output=0x40568BE0 / dec-output=1079413728&lt;br /&gt;
&lt;br /&gt;
Příklad číslo 4:&lt;br /&gt;
&lt;br /&gt;
 crc32: start, output=0xFFFFFFFF&lt;br /&gt;
 crc32: input=000104E0 output=0x4651762C&lt;br /&gt;
 crc32: input=5BABF633 output=0xE922DAA8&lt;br /&gt;
 crc32: input=B1900001 output=0x3C523379&lt;br /&gt;
 crc32: input=00000102 output=0xAB0DEA5F&lt;br /&gt;
 crc32: input=6106EAC7 output=0x3DBC5A0C&lt;br /&gt;
 crc32: input=1338A018 output=0xBE4F22AB&lt;br /&gt;
 crc32: DONE, final hex-output=0xBE4F22AB / dec-output=3192857259&lt;br /&gt;
&lt;br /&gt;
Příklad číslo 5:&lt;br /&gt;
&lt;br /&gt;
 crc32: start, output=0xFFFFFFFF&lt;br /&gt;
 crc32: input=000176C5 output=0x18F1F4D1&lt;br /&gt;
 crc32: input=5BABF650 output=0x1A8E95EB&lt;br /&gt;
 crc32: input=B1900001 output=0x2DCD4583&lt;br /&gt;
 crc32: input=00080104 output=0x5C75899C&lt;br /&gt;
 crc32: input=00040008 output=0x1EB0AB7A&lt;br /&gt;
 crc32: input=00000008 output=0xB7621ED3&lt;br /&gt;
 crc32: DONE, final hex-output=0xB7621ED3 / dec-output=3076660947&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Vzorový kód pro výpočet crc32 ==&lt;br /&gt;
&lt;br /&gt;
Kód v jazyce C:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
 // Nibble lookup table for 0x04C11DB7 polynomial&lt;br /&gt;
 const uint32_t CrcTable[16] = &lt;br /&gt;
  {  &lt;br /&gt;
    0x00000000,0x04C11DB7,0x09823B6E,0x0D4326D9,0x130476DC,0x17C56B6B,0x1A864DB2,0x1E475005, &lt;br /&gt;
    0x2608EDB8,0x22C9F00F,0x2F8AD6D6,0x2B4BCB61,0x350C9B64,0x31CD86D3,0x3C8EA00A,0x384FBDBD&lt;br /&gt;
  };&lt;br /&gt;
 &lt;br /&gt;
 uint32_t Crc32Fast(uint32_t Crc; const uint32_t Data)&lt;br /&gt;
 {&lt;br /&gt;
  Crc = Crc ^ Data; // Apply all 32-bits&lt;br /&gt;
 &lt;br /&gt;
  // Process 32-bits, 4 at a time, or 8 rounds&lt;br /&gt;
 &lt;br /&gt;
  Crc = (Crc &amp;lt;&amp;lt; 4) ^ CrcTable[Crc &amp;gt;&amp;gt; 28]; // Assumes 32-bit reg, masking index to 4-bits&lt;br /&gt;
  Crc = (Crc &amp;lt;&amp;lt; 4) ^ CrcTable[Crc &amp;gt;&amp;gt; 28]; // 0x04C11DB7 Polynomial&lt;br /&gt;
  Crc = (Crc &amp;lt;&amp;lt; 4) ^ CrcTable[Crc &amp;gt;&amp;gt; 28];&lt;br /&gt;
  Crc = (Crc &amp;lt;&amp;lt; 4) ^ CrcTable[Crc &amp;gt;&amp;gt; 28];&lt;br /&gt;
  Crc = (Crc &amp;lt;&amp;lt; 4) ^ CrcTable[Crc &amp;gt;&amp;gt; 28];&lt;br /&gt;
  Crc = (Crc &amp;lt;&amp;lt; 4) ^ CrcTable[Crc &amp;gt;&amp;gt; 28];&lt;br /&gt;
  Crc = (Crc &amp;lt;&amp;lt; 4) ^ CrcTable[Crc &amp;gt;&amp;gt; 28];&lt;br /&gt;
  Crc = (Crc &amp;lt;&amp;lt; 4) ^ CrcTable[Crc &amp;gt;&amp;gt; 28];&lt;br /&gt;
 &lt;br /&gt;
  return Crc;&lt;br /&gt;
 }&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Jak lze vidět, funkce se krmí po 32bit slovech.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
 volatile uint32_t crc32;&lt;br /&gt;
 volatile uint32_t * dword_data;&lt;br /&gt;
 &lt;br /&gt;
 // odkud bereme data (položky v rámci bloku &amp;quot;ic&amp;quot; viz příklady výše)&lt;br /&gt;
 dword_data = (uint32_t *)&amp;amp;sudp.header.ic;&lt;br /&gt;
 &lt;br /&gt;
 // vypocet crc32 zacina zde &lt;br /&gt;
 crc32 = 0xFFFFFFFF; &lt;br /&gt;
 for (i = 0; i &amp;lt; ((sudp_packet.header.PL*16-8)/4), i++)&lt;br /&gt;
 {&lt;br /&gt;
   crc32 = Crc32Fast(crc32, dword_data[i]);&lt;br /&gt;
 }&lt;br /&gt;
 &lt;br /&gt;
 // hotovo...&lt;br /&gt;
 printf(&amp;quot;output crc32 is : 0x%08x \n&amp;quot;, crc32);&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Toto byl celý příklad, jak lze vidět, je to jednoduchá záležitost.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Konec stránky ==&lt;br /&gt;
&lt;br /&gt;
Potřebujete více příkladů ? získejte si data sami pomocí našeho EXE (vzorový komunikační program), které je volně k dispozici.&lt;br /&gt;
&lt;br /&gt;
__NOTOC__&lt;/div&gt;</summary>
		<author><name>Adamn</name></author>
	</entry>
</feed>