 Keys also specify transformations in other cryptographic algorithms, such as digital signature schemes and message authentication codes.In designing security systems, it is wise to assume that the details of the cryptographic algorithm are already available to the attacker.This is known as Kerckhoffs' principle — ""only secrecy of the key provides security"", or, reformulated as Shannon's maxim, ""the enemy knows the system"".