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.[1] 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.[1]
Applications utilizing client-side encryption are sometimes marketed under the misleading or incorrect term "zero-knowledge",[2] but this is a misnomer, as the term zero-knowledge describes something entirely different in the context of cryptography.