Client-side encryption
Client-side encryption is the cryptographic technique of encrypting data on the sender's side, before it is transmitted to a server such as a cloud storage service. Client-side encryption features an encryption key that is not available to the service provider, making it difficult or impossible for service providers to decrypt hosted data. Client-side encryption allows for the creation of applications whose providers cannot access the data its users have stored, thus offering a high level of privacy. Those applications are sometimes marketed under the misleading term "zero-knowledge".

Details
Client-side encryption seeks to eliminate the potential for data to be viewed by service providers (or third parties that compel service providers to deliver access to data), client-side encryption ensures that data and files that are stored in the cloud can only be viewed on the client side of the exchange. By remaining encrypted through each intermediary server, client side encryption ensures that data retains privacy from the origin to the destination server. This prevents data loss and the unauthorized disclosure of private or personal files, providing increased peace of mind for its users.

Current academic scholarship as well as recommendations by industry professionals provide much support for developers to include client-side encryption to protect the confidentiality and integrity of information.

Examples of cloud storage services that provide client-side encryption are Tresorit, MEGA and SpiderOak. As of February 2016, neither Apple iCloud, Google Drive, or Dropbox provide client-side encryption.

See also
 End-to-end encryption – the encryption of data between two different clients that are communicating with each other
 Homomorphic encryption

References

Cryptography
Clients (computing)
Cloud storage