Share (P2P)
"Share" uses encryption to hide the identity of who is transferring or what they are transferring. It is non-centralized so it cannot be easily shut down and it supports multiple source "swarm" downloading. All files are transferred encrypted so they must be decrypted upon download completion. In the meantime they are stored in encrypted form in a "Cache" folder. This folder is also used to allow recently downloaded files to be shared among the network based on priorities.
Presentation layer
Encryption is typically done at this level too, although it can be done on the application, session, transport, or network layers, each having its own advantages and disadvantages. Decryption is also handled at the presentation layer. For example, when logging on to bank account sites the presentation layer will decrypt the data as it is received. Another example is representing structure, which is normally standardized at this level, often by using XML. As well as simple pieces of data, like strings, more complicated things are standardized in this layer. Two common examples are 'objects' in object-oriented programming, and the exact way that streaming video is transmitted.