This thesis presents Clouds, a peer-to-peer protocol that guarantees both anonymity and censorship resistance in semantic overlay networks. The design of such a protocol needs to meet a number of challenging goals: allowing for the exchange of encrypted messages without assuming previously shared secrets, avoiding centralised infrastructures, like trusted servers or gateways, and guaranteeing efficiency without establishing direct connections between peers. Anonymity is achieved by cloaking the identity of protocol participants behind groups of semantically close peers. Censorship resistance is guaranteed by a cryptographic protocol securing the anonymous communication between the querying peer and the resource provider. Although we ground our technique on semantic overlay networks to exploit their retrieval capabilities, our framework is general and can be applied to any unstructured overlay network. Different attacks on the system are examined. Experimental results are presented.