Encryption notes:
ALL information (headers + body, in Freenet) should be encrypted before giving to PO
Can use Diffie-Helman key exchange, which allows nodes to agree on a symmetric key over an insecure channel BUT Man-In-The-Middle attacks are possible by the PO. So, to do it right, we should negotiate this key using a different PO (bad two POs might collaborate), or use a public-private key system.