¿Existen razones válidas para usar un dispositivo de cifrado de hardware (por ejemplo, un dispositivo de almacenamiento / almacenamiento de claves con cifrado USB) sobre el uso de una biblioteca de software?

StackOverflow https://stackoverflow.com/questions/1200319

  •  05-07-2019
  •  | 
  •  

Pregunta

Si su aplicación necesita cifrar / descifrar datos (por varias razones), ¿hay alguna razón por la que usaría un dispositivo de hardware (por ejemplo, un dispositivo de cifrado USB, como un CryptoBox de Marx) en lugar de usar una biblioteca de cifrado de software (como ¿Criptografía .net o escribir la suya propia) y guardar sus claves en un almacén de claves seguro?

Estoy buscando algunas opiniones objetivas sobre este asunto.


Para limitar la pregunta planteada: cuál sería su opinión si el sistema que usó el dispositivo de encriptación USB se alojara en una bóveda de servidores físicamente segura y solo existiera un sistema (es decir, no es un producto de software que se distribuye y ejecuta en muchos escritorios)? En términos muy simplistas, el propósito del sistema anterior es validar (descifrar y comparar) una parte de los datos cifrados entrantes.


¡Gracias hasta ahora por sus excelentes respuestas!

¿Fue útil?

Solución

No se trata de lo que es más seguro porque nada es 100% a prueba de balas. Es una pregunta sobre "cómo hacer que sea lo más difícil posible"

Puede verlo desde este punto: si almacena las claves en la computadora, están allí las 24 horas, los 7 días de la semana. Si mi par de claves está en un dispositivo externo, solo se puede acceder a las claves mientras están conectadas al dispositivo. == > Reduce el plazo en el que alguien más puede copiar sus claves. Es mucho más fácil acceder a algo si no se necesita acceso físico.

Piense en la banca en línea: muchos bancos han agregado "externo" formas de autenticación como Tan / Tac / tanSMS / tokengenerators, etc. Ninguno de los dos es seguro por sí mismo: puedo robar su contraseña de inicio de sesión, puedo robar su teléfono móvil, puedo robar su lista de Tac / Tan, etc. Pero las posibilidades son muy bajas y puedo robar todos los elementos necesarios a la vez = > Todas las piezas del rompecabezas juntas crean una solución bastante segura.

También piense en estos factores:

  • dinero: ¿Realmente necesitas una protección basada en token de 70 $ para tu aplicación de 100 $?
  • tiempo: diría que los sistemas basados ??en software son más rápidos
  • relevancia: ¿Tiene sentido proporcionar a mis aplicaciones un sistema de protección tan complejo?

Otros consejos

Una clave de hardware permite su uso para restringir el uso del software a una máquina donde la clave está conectada.

Con el cifrado de software sería más fácil copiar el software en muchas máquinas y ejecutarlo muchas veces en paralelo.

Sí, los hay.

Por un lado, esto le permite transmitir las claves privadas físicamente a través de canales seguros, en lugar de confiar en una red.

Por otro lado, si tiene que moverse entre muchos sistemas que no están necesariamente conectados a la red, la llave USB es mucho más conveniente. Es por eso que los militares usan un sistema muy parecido a eso ( EKMS ). No usan USB, pero usan pequeños dongles que parecen grandes llaves de plástico. La idea es la misma, pero el USB no existía a principios de los 90 cuando desarrollaban esto.

texto alternativo ??

(nota: da un poco de miedo lo completo que es ese artículo de Wikipedia. Cuando estaba trabajando en el KP me dijeron que se nos permitía poner siglas como FIREFLY en nuestros currículums, pero no se nos permitió decirle a nadie lo que querían decir).

Creo que depende del propósito / uso de su aplicación. Si está desarrollando un producto para una necesidad de alta seguridad, como la banca o el gobierno, una adición de hardware a su solución podría ser completamente apropiada. Debe tener en cuenta los costos adicionales que una solución de hardware agregaría al proyecto. No solo en el desarrollo inicial, sino también en los costos continuos de mantenimiento de hardware que se requerirían una vez que el desarrollo esté completo. Desde mi punto de vista, después de haber trabajado en la banca en el pasado, había muy, muy pocas soluciones en las que creíamos que una solución de hardware valía los costos adicionales que conllevaría.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top