Patent ID: 7877597

Claim:
A method of transmitting packets, the method comprising: receiving a packet transmitted between a requesting host and a responding host in a network, wherein the transmitting includes transmitting via a sequence of intermediate hosts between the requesting and responding hosts, whereby intermediate hosts have respective immediately preceding and succeeding hosts in the sequence, wherein a header of the packet contains encrypted addresses for the respective hosts in the sequence, the address for each host being encrypted by a public key of an immediately preceding host in the sequence; decrypting, by the host receiving the packet, the address in the packet header for a succeeding host in the sequence, wherein the decrypting uses a private key of the receiving host; and forwarding the received packet to the succeeding host in the sequence at the decrypted address, wherein the received packet includes a validation flag encrypted with a public key of the responding host and an offset value, and wherein if the host receiving the packet is the responding host, the method includes: decrypting the validation flag with the receiving hosts private key; inserting in a response packet a value determined by the decrypting of the validation flag at a certain location in the response packet, the certain location being determined responsive to the offset value; and forwarding the response packet.