"Seguridad por oscuridad" es una de las frases más utilizadas (a veces mal empleadas) en la industria de la seguridad. La frase se apoya dando ejemplos como, dejando la puerta de atrás de su casa abierta, ya que nadie lo sabe o le gusta guardar la llave de su casa debajo de la alfombrilla de la puerta o en una maceta al lado de la puerta.
Según wikipedia , el origen de la frase se remonta al principio de Kerckhoff, " un sistema debe ser seguro debido a su diseño, no porque el diseño sea desconocido para un adversario ".
Un ejemplo de este tipo que puedo recordar es cifrado y autenticación proceso en Whatsapp Messenger (aunque en el caso de cifrado, podría ser un caso de implementación criptográfica mal informada, pero considerando que es una compañía bien financiada y que aún carece de un aspecto tan importante, me hace pensar en líneas de "seguridad por oscuridad" también ).
Según wikipedia, NIST en su documento " Guía de seguridad general del servidor" habla de este principio de seguridad. Bruce Schneier en este artículo también habla de ello. Hay muchas otras referencias en wikipedia como Peter Swire, Jay Beale, etc.
Esto lleva a la parte importante de la pregunta, ¿demuestra que el código abierto es mejor que el código cerrado? En mi opinión, depende del tamaño del proyecto, la cantidad de desarrolladores que trabajan, los antecedentes de los desarrolladores y el control de calidad practicado. No hay forma de saber cuál es más seguro que el otro, solo mirando el modelo de desarrollo utilizado. Históricamente, ambos campos tienen una historia a cuadros.