# HTTP I'm aware that HTTP sends plain text over the network which can be sniffed and modified if a [MITM][1] is performed. # HTTPS On the other hand, HTTPS sends encrypted text over the network that can neither be sniffed nor modified. # Other? I'm wondering if there is an in between where the traffic can be sniffed, but not modified. I was thinking the server could just sign every packet using a [CA][2]. I'm also aware of manually verifying hashes of files downloaded, but seeing as those hashes are served over a modifiable means (HTTP), it doesn't seem that this really provides any authenticity as the hash could modified to match the modified file. As @mti2935 suggested, the hash could be sent over HTTPS, but I'm looking for a preexisting protocol to handle all this. # Why I'm sure this question begs the question why. So here are a few example scenarios. 1. A user wants to allow their network security device to scan files downloaded for malware without having to modify their trust store. 2. I'm a ham radio operator and I'd like to stream movies over ham bands, but I'm not allowed to encrypt. I do care about the video maintaining it's integrity, but I don't care about someone else snooping. 3. Sites that only distribute data and don't need encryption but do need data integrity. [1]: https://en.wikipedia.org/wiki/Man-in-the-middle_attack [2]: https://en.wikipedia.org/wiki/Certificate_authority