This document describes and analyzes three protocols for maintaining security in a simple network application between Alice and Bob. The objective is to authenticate that messages are from Alice and correspond to Bob's requests. Protocol 1 uses a shared symmetric key and MAC. Protocol 2 uses digital signatures instead of a shared key. Protocol 3 is also vulnerable to reflection attacks without additional tracking. The document analyzes each protocol's ability to provide data origin authentication, message freshness, and assurance messages correspond to requests, noting advantages and disadvantages of each approach.