[ / / / / / / / / / / / / / ] [ dir / agatha2 / ausneets / chemo / dempart / doomer / film / general / vtest ][Options][ watchlist ]

/tech/ - Technology

You can now write text to your AI-generated image at https://aiproto.com It is currently free to use for Proto members.
Email
Comment *
File
Select/drop/paste files here
Password (Randomized for file and post deletion; you may also set your own.)
* = required field[▶ Show post options & limits]
Confused? See the FAQ.
Expand all images

[–]

 No.1033787>>1033790 >>1033794 >>1033831 >>1033976 [Watch Thread][Show All Posts]

So TCP is using a 16-bit checksum which only detects honest transmission error caused by noise in the transmission. However, one can easily swap two 16-bit words in a message, which has a 100% probability of being undetected. For stronger integrity checks, such as whether a man in the middle attacker actively changed the message, it is recommended to perform those checks at the application level.

But to the application, the TCP connection looks just like a stream of bytes, and at some point, the application may (or may not) detect that modified values were received (the modified message might still seem valid). How would a programmer handle this optimally?

I have the suspicion that this is not even possible without implementing your own packets on top of TCP, and then request the other party to re-send those higher-level packets. But if we go that far, why not directly use UDP and implement those higher-level packets with resend-requests in UDP? The only thing you'd still have to do in UDP would be the manual ordering of packets, but that seems comparatively easy. Also, UDP is faster than TCP, and you could directly use authenticated encryption on the protocol level, so instead of a 16-bit checksum, you'd have strong cryptographic guarantees about the integrity of the channel.

TL;DR: TCP makes it fucking hard to handle undetected transmission errors

Questioning validity of TCP

P.S.: Sorry if this is a double post, 8ch seems to have some problems right now.

 No.1033790>>1033794 >>1033795

>>1033787 (OP)

Any recommendations for network monitoring tools (Windows)?


 No.1033794>>1033802

>>1033787 (OP)

You are correct but the checksum doesn't really matter because anyone who can intercept and retransmit packets can do the whole TCP connection and either side will be none the wiser, Real validity checks occur in the protocol usually. How new do you think tcp is?

>>1033790

Wireshark


 No.1033795

I just looked into DTLS (https://en.wikipedia.org/wiki/Datagram_Transport_Layer_Security), but it seems that even this is not entirely secure, as you can recover the plaintext when using the CBC mode of operation. But it seems like a good step in the right direction. But UDP does not have the nice features of TCP where it automatically detects network congestion, and adapts to it (AIMD). So I'd litterally have to build a TCP clone with authenticated encryption on top of UDP…

>>1033790

Sorry, I don't use Windows. You'll have to look that up yourself.


 No.1033802>>1033803

>>1033794

The only assumption that leads to a scenario where I can do anything here is that the key exchange was not compromised.

So to write a secure networked application, you'd have to use authenticated encryption, and manually buffer recently sent cipherexts, and wait for requests that ask me to re-send them? Why is this not part of the OS's socket library?


 No.1033803

>>1033802

>mixing you and me

I should go to bed


 No.1033812>>1033814

>>1133803 Can I join in your rape party? The threesome sounds very interesting!


 No.1033814>>1033817

>>1033812

I am a virgin, and I plan to stay virgin until I can have kids with artificial wombs. So: no, thank you.


 No.1033817>>1033819

>>1033814 Rapes always occur against your WILL!


 No.1033819

>>1033817

Why ask, then?


 No.1033831

>>1033787 (OP)

>retard doesn't grok the difference between a checksum and a MAC

>what is tls

great thread


 No.1033853

ITT: morons who don't understand the OSI model.


 No.1033971

OP here, I am retard.


 No.1033976

>>1033787 (OP)

>TCP makes it fucking hard to handle undetected transmission errors

>handle undetected errors

Literally how is that supposed to be possible?

You can't handle something you do not know about.

TCP serves its purpose well, UDP is a viable alternative for many use cases (even when it means rolling your own pseudo-TCP protocol), and OP is a faggot.




[Return][Go to top][Catalog][Screencap][Nerve Center][Cancer][Update] ( Scroll to new posts) ( Auto) 5
13 replies | 0 images | Page ?
[Post a Reply]
[ / / / / / / / / / / / / / ] [ dir / agatha2 / ausneets / chemo / dempart / doomer / film / general / vtest ][ watchlist ]