In cryptography, snake oil is any cryptographic method or product considered to be bogus or fraudulent. The name derives from snake oil, one type of patent medicine widely available in 19th century United States.
Distinguishing secure cryptography from insecure cryptography can be difficult from the viewpoint of a user. Many cryptographers, such as Bruce Schneier and Phil Zimmermann, undertake to educate the public in how secure cryptography is done, as well as highlighting the misleading marketing of some cryptographic products.
The Snake Oil FAQ describes itself as "a compilation of common habits of snake oil vendors. It cannot be the sole method of rating a security product, since there can be exceptions to most of these rules. [...] But if you're looking at something that exhibits several warning signs, you're probably dealing with snake oil."[1]
This is not an exhaustive list of snake oil signs. A more thorough list is given in the references.
- Secret system
- Some encryption systems will claim to rely on a secret algorithm, technique, or device; this is categorized as security through obscurity.[2] Criticisms of this are twofold. First, a 19th century rule known as Kerckhoffs's principle, later formulated as Shannon's maxim, teaches that "the enemy knows the system" and the secrecy of a cryptosystem algorithm does not provide any advantage. Second, secret methods are not open to public peer review and cryptanalysis, so potential mistakes and insecurities can go unnoticed.[1]
- Technobabble
- Snake oil salespeople may use "technobabble" to sell their product since cryptography is a complicated subject. [2]
- "Unbreakable"
- Claims of a system or cryptographic method being "unbreakable" are always false (or true under some limited set of conditions), and are generally considered a sure sign of snake oil.[1]
- "Military grade"
- There is no accepted standard or criterion for "military grade" ciphers. [1]
- One-time pads
- One-time pads are a popular cryptographic method to invoke in advertising, because it is well known that one-time pads, when implemented correctly, are genuinely unbreakable. The problem comes in implementing one-time pads, which is rarely done correctly. Cryptographic systems that claim to be based on one-time pads are considered suspect, particularly if they do not describe how the one-time pad is implemented, or they describe a flawed implementation.[2]
- Unsubstantiated "bit" claims
- Cryptographic products are often accompanied with claims of using a high number of bits for encryption, apparently referring to the key length used.[2] However key lengths are not directly comparable between symmetric and asymmetric systems.[2] Furthermore, the details of implementation can render the system vulnerable. For example, in 2008 it was revealed that a number of hard drives sold with built-in "128-bit AES encryption" were actually using a simple and easily defeated "XOR" scheme. AES was only used to store the key, which was easy to recover without breaking AES.[3]
Schneier, Bruce (15 February 1999). "Snake Oil". Crypto-Gram.