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.
Advanced Encryption Standard
The key size used for an AES cipher specifies the number of transformation rounds that convert the input, called the plaintext, into the final output, called the ciphertext. The number of rounds are as follows:Each round consists of several processing steps, including one that depends on the encryption key itself. A set of reverse rounds are applied to transform ciphertext back into the original plaintext using the same encryption key.In the SubBytes step, each byte formula_3 in the "state" array is replaced with a SubByte formula_4 using an 8-bit substitution box. This operation provides the non-linearity in the cipher. The S-box used is derived from the multiplicative inverse over , known to have good non-linearity properties. To avoid attacks based on simple algebraic properties, the S-box is constructed by combining the inverse function with an invertible affine transformation. The S-box is also chosen to avoid any fixed points (and so is a derangement), i.e., formula_5, and also any opposite fixed points, i.e., formula_6.
While performing the decryption, the InvSubBytes step (the inverse of SubBytes) is used, which requires first taking the inverse of the affine transformation and then finding the multiplicative inverse.