<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[Winsock Übertragungsproblem]]></title><description><![CDATA[<p>Hallo,<br />
ich würde gerne über Winsock verschlüsselte Daten verschicken. Ich habe daher fürs erste eine simple XOR Verschlüsselung gebaut. Die Funtkion gibt als Rückgabewert einen std::string zurück. Den versende ich nun über die Leitung. In den meisten Fällen geht alles gut, aber ab und zu kommt es vor das der verschlüsselte String ein \n enthält und damit den Nachrichtenaufbau zerstört. Man sagte mir daraufhin ich soll BYTEs versenden und das geht mit unsigned char. Allerdings verstehe ich da den Zusammenhang nicht... Könnte mir daher jemand ein Beispiel machen wie ich die Daten nun korrekt versende, so das sie richtig ankommen. Und das einzigste Steuerzeichen mein eigenes ist. Und zwar zum Schluss: &quot;DER_VERSCHÜSSELTE_TEXT\n&quot;</p>
<p>Ich hoffe mein Problem ist ersichtlich:</p>
<pre><code class="language-cpp">std::string Beispiel()
{
    return &quot;\n\t\n\n\n\t\n&quot;;
}

send( Socket, Beispiel.c_str(), Beispiel.length(), 0 ); // Wie versende ich das nun richtig?
</code></pre>
<p>Vielen Dank im Voraus!</p>
<p>Gruß<br />
DerArmeRitter</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/184811/winsock-übertragungsproblem</link><generator>RSS for Node</generator><lastBuildDate>Thu, 24 Sep 2026 01:18:10 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/184811.rss" rel="self" type="application/rss+xml"/><pubDate>Tue, 19 Jun 2007 12:13:09 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Winsock Übertragungsproblem on Tue, 19 Jun 2007 12:13:09 GMT]]></title><description><![CDATA[<p>Hallo,<br />
ich würde gerne über Winsock verschlüsselte Daten verschicken. Ich habe daher fürs erste eine simple XOR Verschlüsselung gebaut. Die Funtkion gibt als Rückgabewert einen std::string zurück. Den versende ich nun über die Leitung. In den meisten Fällen geht alles gut, aber ab und zu kommt es vor das der verschlüsselte String ein \n enthält und damit den Nachrichtenaufbau zerstört. Man sagte mir daraufhin ich soll BYTEs versenden und das geht mit unsigned char. Allerdings verstehe ich da den Zusammenhang nicht... Könnte mir daher jemand ein Beispiel machen wie ich die Daten nun korrekt versende, so das sie richtig ankommen. Und das einzigste Steuerzeichen mein eigenes ist. Und zwar zum Schluss: &quot;DER_VERSCHÜSSELTE_TEXT\n&quot;</p>
<p>Ich hoffe mein Problem ist ersichtlich:</p>
<pre><code class="language-cpp">std::string Beispiel()
{
    return &quot;\n\t\n\n\n\t\n&quot;;
}

send( Socket, Beispiel.c_str(), Beispiel.length(), 0 ); // Wie versende ich das nun richtig?
</code></pre>
<p>Vielen Dank im Voraus!</p>
<p>Gruß<br />
DerArmeRitter</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1309082</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1309082</guid><dc:creator><![CDATA[DerArmeRitter]]></dc:creator><pubDate>Tue, 19 Jun 2007 12:13:09 GMT</pubDate></item><item><title><![CDATA[Reply to Winsock Übertragungsproblem on Tue, 19 Jun 2007 12:32:33 GMT]]></title><description><![CDATA[<p>Beispiel ist eine Funktion, also musst du sie auch aufrufen:</p>
<pre><code class="language-cpp">send( Socket, Beispiel().c_str(), Beispiel().length(), 0 );
</code></pre>
<p>wobei das 2 funktionsaufrufe sind, besser waere ein:</p>
<pre><code class="language-cpp">string s=Beispiel();
send( Socket, s.c_str(), s.length(), 0 );
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1309099</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1309099</guid><dc:creator><![CDATA[Shade Of Mine]]></dc:creator><pubDate>Tue, 19 Jun 2007 12:32:33 GMT</pubDate></item><item><title><![CDATA[Reply to Winsock Übertragungsproblem on Tue, 19 Jun 2007 12:55:40 GMT]]></title><description><![CDATA[<p>Shade Of Mine schrieb:</p>
<blockquote>
<p>Beispiel ist eine Funktion, also musst du sie auch aufrufen:</p>
<pre><code class="language-cpp">send( Socket, Beispiel().c_str(), Beispiel().length(), 0 );
</code></pre>
<p>wobei das 2 funktionsaufrufe sind, besser waere ein:</p>
<pre><code class="language-cpp">string s=Beispiel();
send( Socket, s.c_str(), s.length(), 0 );
</code></pre>
</blockquote>
<p>Danke, du hast Recht, das ist mir wohl beim Schreiben passiert <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f642.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--slightly_smiling_face"
      title=":)"
      alt="🙂"
    /> Aber zu meiner Problemlösung trägt es leider nicht bei. Also nochmal: Ich möchte gerne über Sockets etwas versenden... Klappt auch! Aber wenn ich nun einen Text habe z.B. &quot;Bla\nBla\t\tBlub&quot; dann würde ich diesen gerne erst in eine anderes Format bringen in dem die Steuerzeichen nicht mehr ausgeführt werden also etwas a la:</p>
<pre><code class="language-cpp">std::string Text = &quot;Bla\nBla\t\tBlub&quot;;
std::string Sende = Verschluessel( Text, &quot;KEYBLABLABLA&quot; ) + &quot;\n&quot;;
send( Socket, Sende.c_str(), Sende.length(), 0 );
</code></pre>
<p>Auf der anderen Seite empfange ich das wieder und habe dann wieder in einer Varible &quot;Bla\nBla\t\tBlub&quot; stehen (ohne &quot;\n&quot;, das dient nur zur Trennung). Und der Datenfluss wurde durch diese Steuerzeichen nicht gestört, da diese &quot;unschädlich&quot; gemacht wurden. Man sagte mir ich sollte hierfür unsigned char oder so nehmen, aber das scheint mir Schwachsinnig.</p>
<p>Meine Frage: Wie versende ich das also nun? D<br />
as Sendeformat soll sein &quot;VERSCHLUESSELTE_NACHRICHT\n&quot;... siehe Beispiel</p>
<p>Danke im Voraus</p>
<p>Gruß<br />
DerArmeRitter</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1309133</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1309133</guid><dc:creator><![CDATA[DerArmeRitter]]></dc:creator><pubDate>Tue, 19 Jun 2007 12:55:40 GMT</pubDate></item><item><title><![CDATA[Reply to Winsock Übertragungsproblem on Tue, 19 Jun 2007 12:59:04 GMT]]></title><description><![CDATA[<p>Hya !</p>
<p>DerArmeRitter schrieb:</p>
<blockquote>
<p>...<br />
In den meisten Fällen geht alles gut, aber ab und zu kommt es vor das der verschlüsselte String ein \n enthält und damit den Nachrichtenaufbau zerstört.<br />
...</p>
</blockquote>
<p>Dann stimmt etwas mit deinem Programm nicht.</p>
<p>DerArmeRitter schrieb:</p>
<blockquote>
<p>...<br />
Und das einzigste Steuerzeichen mein eigenes ist. Und zwar zum Schluss: &quot;DER_VERSCHÜSSELTE_TEXT\n&quot;<br />
...</p>
</blockquote>
<p>Das ist kein Steuerzeichen, sondern eine Folge von Bytes.<br />
Es ist natürlich machbar, jedoch halte ich das für ungeeignet.</p>
<p>Du könntest dir z.B. ein eigenes Protokoll definieren.<br />
Oft wird für solche Zwecke als erstes ein Header übertragen, in dem<br />
der eigentliche Inhalt beschrieben ist( Länge der Daten in Byte, Datentypen, etc.)<br />
Für deine Verschlüsselte-Daten-Sektionen könntest du dir z.B.<br />
ein ASCII Steuerzeichen umdefinieren.</p>
<p>Genaueres zu Headern( 6.5. Son of Data Encapsulation )<br />
und vieles mehr findest du hier:<br />
<a href="http://beej.us/guide/bgnet/output/print/bgnet_USLetter.pdf" rel="nofollow">http://beej.us/guide/bgnet/output/print/bgnet_USLetter.pdf</a></p>
<p><img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f642.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--slightly_smiling_face"
      title=":)"
      alt="🙂"
    /><br />
Gruß, p.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1309137</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1309137</guid><dc:creator><![CDATA[proggingmania]]></dc:creator><pubDate>Tue, 19 Jun 2007 12:59:04 GMT</pubDate></item><item><title><![CDATA[Reply to Winsock Übertragungsproblem on Tue, 19 Jun 2007 17:51:07 GMT]]></title><description><![CDATA[<p>proggingmania schrieb:</p>
<blockquote>
<p>DerArmeRitter schrieb:</p>
<blockquote>
<p>...<br />
Und das einzigste Steuerzeichen mein eigenes ist. Und zwar zum Schluss: &quot;DER_VERSCHÜSSELTE_TEXT\n&quot;<br />
...</p>
</blockquote>
<p>Das ist kein Steuerzeichen, sondern eine Folge von Bytes.<br />
Es ist natürlich machbar, jedoch halte ich das für ungeeignet.</p>
</blockquote>
<p>Es geht um das '\n' und das ist ein Steuerzeichen! Kannst du nochmal etwas genauer sagen wie ich nun weiter vorgehen soll? Ich komme leider nicht weiter <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f61e.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--disappointed_face"
      title=":("
      alt="😞"
    /></p>
<p>Danke</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1309311</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1309311</guid><dc:creator><![CDATA[bbbbb]]></dc:creator><pubDate>Tue, 19 Jun 2007 17:51:07 GMT</pubDate></item><item><title><![CDATA[Reply to Winsock Übertragungsproblem on Tue, 19 Jun 2007 18:34:13 GMT]]></title><description><![CDATA[<p>Inwiefern zerstört das '\n'<br />
den Nachrichtenaufbau ?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1309341</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1309341</guid><dc:creator><![CDATA[proggingmania]]></dc:creator><pubDate>Tue, 19 Jun 2007 18:34:13 GMT</pubDate></item><item><title><![CDATA[Reply to Winsock Übertragungsproblem on Tue, 19 Jun 2007 19:10:50 GMT]]></title><description><![CDATA[<p>Ich habe mir das so gedacht:</p>
<p>BEFEHL PARAMTER</p>
<p>Das verschlüssel ich nun und kriege als Beispiel:</p>
<p>bsdad\nsdajddas</p>
<p>Und hänge nun noch ein \n als Trennung an und erhalte:</p>
<p>bsdad\nsdajddas\n</p>
<p>Nun empfange ich bis zum \n da dies als Trennung gilt</p>
<p>Und er behandelt beides als einzelne Befehle, weil \n als Trennung da ist</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1309369</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1309369</guid><dc:creator><![CDATA[bbbbb]]></dc:creator><pubDate>Tue, 19 Jun 2007 19:10:50 GMT</pubDate></item><item><title><![CDATA[Reply to Winsock Übertragungsproblem on Tue, 19 Jun 2007 20:48:08 GMT]]></title><description><![CDATA[<p>Brauchst du ja eigentlich bei der Verschlüsselung nur den Fall '\n' abzufragen und abzufangen. Dafür kannst du ein anderes Zeichen spendieren und statt dessen einfügen. <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f609.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--winking_face"
      title=";)"
      alt="😉"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1309432</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1309432</guid><dc:creator><![CDATA[proggingmania]]></dc:creator><pubDate>Tue, 19 Jun 2007 20:48:08 GMT</pubDate></item><item><title><![CDATA[Reply to Winsock Übertragungsproblem on Tue, 19 Jun 2007 20:52:26 GMT]]></title><description><![CDATA[<p>Dann bekomme ich bei dem Zeichen evtl. eine Kollision <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f61e.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--disappointed_face"
      title=":("
      alt="😞"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1309437</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1309437</guid><dc:creator><![CDATA[bbbbb]]></dc:creator><pubDate>Tue, 19 Jun 2007 20:52:26 GMT</pubDate></item><item><title><![CDATA[Reply to Winsock Übertragungsproblem on Tue, 19 Jun 2007 21:59:22 GMT]]></title><description><![CDATA[<p>Kollision ? Mit was denn ?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1309478</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1309478</guid><dc:creator><![CDATA[proggingm@nia]]></dc:creator><pubDate>Tue, 19 Jun 2007 21:59:22 GMT</pubDate></item><item><title><![CDATA[Reply to Winsock Übertragungsproblem on Wed, 20 Jun 2007 16:35:05 GMT]]></title><description><![CDATA[<blockquote>
<p>Für deine Verschlüsselte-Daten-Sektionen könntest du dir z.B.<br />
ein ASCII Steuerzeichen umdefinieren.</p>
</blockquote>
<p>Tschuldigung das ich mich einmische, aber wie geht das? <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f615.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--confused_face"
      title=":confused:"
      alt="😕"
    /><br />
danke schonmal</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1310088</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1310088</guid><dc:creator><![CDATA[Fencer]]></dc:creator><pubDate>Wed, 20 Jun 2007 16:35:05 GMT</pubDate></item><item><title><![CDATA[Reply to Winsock Übertragungsproblem on Wed, 20 Jun 2007 20:01:58 GMT]]></title><description><![CDATA[<p>Fencer schrieb:</p>
<blockquote>
<p>Tschuldigung das ich mich einmische, aber wie geht das? <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f615.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--confused_face"
      title=":confused:"
      alt="😕"
    /><br />
danke schonmal</p>
</blockquote>
<p>Einfach ein Steuerzeichen auswählen, welches das Ende der verschlüsslten Daten markiert.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1310206</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1310206</guid><dc:creator><![CDATA[proggingmania]]></dc:creator><pubDate>Wed, 20 Jun 2007 20:01:58 GMT</pubDate></item><item><title><![CDATA[Reply to Winsock Übertragungsproblem on Thu, 21 Jun 2007 14:31:55 GMT]]></title><description><![CDATA[<p>danke</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1310754</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1310754</guid><dc:creator><![CDATA[Fencer]]></dc:creator><pubDate>Thu, 21 Jun 2007 14:31:55 GMT</pubDate></item></channel></rss>