 However, Kerckhoffs's principle points out that the things kept secret ought to be those least costly to change if inadvertently disclosed.For example, a cryptographic algorithm may be implemented by hardware and software that is widely distributed among users.If security depends on keeping that secret, then disclosure leads to major logistic difficulties in developing, testing, and distributing implementations of a new algorithm – it is "brittle".