a method of per - packet keying for encrypting and decrypting data transferred between two or more parties , each party having knowledge of a shared key that allows a per - packet key to differ for each packet is provided . avoiding the use of a static session key during encryption offers several advantages over existing encryption methods . for example , rejecting packets received with duplicate sequence numbers , or sequence numbers that are beyond a specified deviation range mitigates replay attacks .