Великий голландский криптограф и лингвист Огюст Керкгоффс еще в XIX веке сформулировал важнейшее правило криптографии, которое было названо по его имени — система не должна требовать секретности, безопасность должна держаться на ключе, а не на тайне устройства.
Дело в том, что секретность является основной причиной хрупкости — она может привести к катастрофическому краху системы. И наоборот, открытость обеспечивает силу и гибкость системы. Потом математик Клод Шеннон уточнил это правило: исходи из того, что противник знает о твоем устройстве все и потому всю безопасность вложи в ключ. Для этого есть три причины.
Первое: секретное устройство обязательно «утечет» и его в принципе нельзя удержать в тайне — им пользуется множество людей во множестве мест, его можно захватить, купить, разобрать обратной инженерией, выкрасть. Поэтому безопасность, стоящая на тайне устройства, обязательно рухнет.
Второе: ключ можно держать в тайне и, главное, постоянно его менять — он мал, легко скрываем и легко сменяем и если он взломан, можно просто создать новый. Напомню, что немцы меняли шифр каждый день. Устройство же, единожды созданное и развернутое, сменить очень трудно.
Третье: открытое устройство можно исследовать — если оно обнародовано, его изучают, испытывают, атакуют эксперты всего мира. Они находят и исправляют слабости и открытое, всеми проверенное устройство гораздо прочнее тайного, никем не испытанного, а оттого, с очень большой доли вероятности, таящего скрытые изъяны. Открытость является силой системы, а не ее слабостью. Кроме того, секретность дает ложную уверенность: создатель считает систему надежной потому, что она секретна.
p.s.
Добавлю, что любая система управления, построенная на тайнах и красных папочках, будет уязвима и неэффективна по умолчанию. Любая спецслужба будет фальсифицировать данные и прятать свои ошибки и провалы под толстым слоем секретности, при этом внушая главе государства ложное чувство всезнания и всемогущества



















