comparación de control de acceso y encriptación

6

Tengo una pregunta muy básica y simple sobre dos conceptos de seguridad.

Tanto el cifrado como el control de acceso se usan para la privacidad y para evitar que usuarios no autorizados accedan a algún objeto (por ejemplo, archivos, procesos, etc.).

¿Cuál es la diferencia en entornos prácticos? ¿Cuándo usamos cifrado y cuándo usamos controles de acceso (por ejemplo, ACL, RBAC, etc.)?

Por ejemplo, puedo cifrar un archivo para evitar el acceso no autorizado, pero también podría usar un método ACL para esto.

    
pregunta b24 15.05.2015 - 17:23
fuente

4 respuestas

6

El cifrado se utiliza para proporcionar la confidencialidad de los datos a los que may o serán accedidos por una entidad no confiable. El control de acceso se usa para limitar o de otro modo controlar el acceso de una entidad a un objeto. Preguntar "cuándo los usamos" es una pregunta abierta.

Los controles de acceso pueden ser desde un candado en una puerta hasta un conjunto de permisos en un sistema de archivos. Pueden ser simples o complejos, pueden controlar diferentes tipos de operaciones de manera independiente (lectura, escritura, eliminación, etc.), pueden incluir registros de auditoría, pero generalmente son limitaciones impuestas de manera artificial. Con eso, quiero decir que no hay nada que le impida físicamente evitarlos, si tiene acceso a todo. Como ejemplo, una DACL del sistema de archivos en Windows se puede omitir simplemente leyendo el disco directamente o cargándolo en un sistema que ignora el control de acceso (por ejemplo, un controlador NTFS de Linux). En el ámbito físico, simplemente puede cortar el candado o la cadena con recortes de pernos, o hacer un agujero en la pared o hacer explotar la puerta con explosivos.

El cifrado tiene como objetivo proporcionar un cierto nivel de confidencialidad basado en un diferencial en la complejidad computacional entre un usuario autorizado (es decir, alguien con la clave correcta) y un usuario no autorizado (es decir, alguien sin la clave correcta). Un usuario con la clave correcta puede gastar una pequeña cantidad de recursos en descifrar los datos y recibir el mensaje. Un usuario sin esa clave debe gastar una cantidad significativamente mayor de recursos computacionales para descifrar el mensaje, generalmente tanto que se vuelve inviable. La diferencia clave aquí es que el cifrado fuerte proporciona un límite real e inevitable de acceso. No se puede simplemente pasar de lado haciendo lecturas directas a un disco o implementando un acceso diferente, o soplando el almacén de datos con explosivos, para el caso.

Los objetivos y usos de estos dos conceptos son diferentes. El cifrado puede proporcionar controles muy sólidos sobre la confidencialidad de los datos, pero es difícil hacerlo bien, puede ser computacionalmente costoso y se vuelve difícil de administrar a escala cuando muchos usuarios necesitan acceso a los mismos datos. El cifrado tampoco es trivialmente aplicable a modelos complejos donde algunos usuarios necesitan poder leer pero no escribir, o escribir pero no leer (por ejemplo, escribir en un archivo de registro pero no poder ver otras entradas del registro). El control de acceso es mucho más flexible y puede ser más fácil de implementar, especialmente en los casos en que existen relaciones complejas entre los usuarios y los datos, pero solo se aplica mediante el código que se ejecuta en el sistema. Como tales, los controles de acceso son mucho más débiles (o incluso inútiles) en los modelos de amenazas donde el acceso local / físico es un potencial (por ejemplo, el robo de un disco duro).

La respuesta real a su pregunta es que se usan siempre que sean apropiadas para la lógica de negocios y el modelo de amenaza en su escenario particular.

    
respondido por el Polynomial 15.05.2015 - 18:02
fuente
3

Encriptación se pueden utilizar mecanismos para lograr resultados específicos:

  • Hacer que algunos datos sean ilegibles, con la capacidad de individuos específicos para volver a transformarlos en un formato legible más adelante: esto se puede usar para implementar confidencialidad dentro de algunas limitaciones técnicas
  • Proporcionar una firma auténtica relacionada con un blob de datos específico: esto se puede utilizar para proporcionar no repudio en algunas arquitecturas (por ejemplo, un servicio de carga de archivos puede requerir una firma mientras se carga, como un significa identificar a la persona que cargó los datos)
  • Las arquitecturas complejas se pueden construir en torno a la criptografía de clave pública y la criptografía de conocimiento cero para implementar todo tipo de aplicaciones como el voto electrónico, la mensajería instantánea segura, la autenticación de sitios web, pero eso no está relacionado con el control de acceso.

Uno de los principales intereses de la criptografía para la seguridad es que puede usar primitivas criptográficas para imponer algunas propiedades en los datos, independientemente de dónde se almacenen. Uno necesita acceso a las claves o la habilidad de realizar matemáticas muy complejas (supuestamente, demasiado complejas para ser lo suficientemente rápidas) para manipular objetos encriptados.

Los mecanismos

Control de acceso implementan principalmente protecciones en la integridad y confidencialidad de los datos. El control de acceso requiere un monitor de referencia confiable que impone una política en los objetos de datos. Las políticas pueden ser discrecionales, en cuyo caso los propietarios de cada elemento de datos (según lo identificado por el monitor de referencia) deciden quién puede acceder a sus datos; obligatorio en cuyo caso los administradores del monitor de referencia deciden quién puede acceder a qué; o una mezcla de los dos.

Lo importante es que los monitores de referencia verifican todos los accesos a los objetos contra la política. Por lo tanto, el control de acceso solo es apropiado dentro de los sistemas que usted controla.

El control de acceso requiere tanto autenticación como autorización . La autenticación le permite proporcionar responsabilidad , lo que significa que usted sabe a qué principal accedió a qué recurso; esto no sería posible si cifrara datos y compartiera una clave secreta entre más de dos personas.

En conclusión, el cifrado y el control de acceso tienen diferentes aplicaciones y aplican diferentes propiedades, con diferentes ámbitos de aplicación. Son tan diferentes que realmente no tiene sentido compararlos ...

A pesar de que tanto el cifrado como el control de acceso podrían imponer la confidencialidad, el cifrado solo lo hará mientras la clave de cifrado que usted utilizó no sea robada, mientras que el control de acceso solo lo hará siempre que los datos se almacenen y se acceda dentro de los límites del monitor de referencia.

Es muy común combinar ambos métodos para el almacenamiento de archivos. Se cifrará una unidad para evitar accesos no autorizados a través del hardware (donde no hay un monitor de referencia disponible), y un sistema operativo actúa como un monitor de referencia para realizar verificaciones de control de acceso que garanticen que los accesos de software respeten una política deseada.

TL-DR: el cifrado produce representaciones de datos que incorporan propiedades donde se almacenan estos datos; mientras que el control de acceso impone propiedades y políticas arbitrariamente complejas, pero solo en los sistemas que se controlan.

    
respondido por el Steve DL 15.05.2015 - 17:44
fuente
1

Estos son dos conceptos separados, e intentaré hacer una analogía.

Imagine que los mecanismos de control de acceso son como cerrar ventanas y puertas en una casa. Debe asegurarse de que todos ellos estén bloqueados para crear una casa segura, pero romperlos todavía es posible para la entrada. Para algunas cosas en la casa, este nivel de seguridad es todo lo que necesita. Pero digamos que usted tiene dinero, pasaportes, joyas familiares o lo que sea que quiera mantener a salvo, independientemente de que se rompa una puerta.

Aquí es donde entra el cifrado. Imagine que el cifrado es seguro. Hay muchas cajas fuertes diferentes (tipos de encriptación) con diferentes niveles de seguridad (DES, 3DES, AES128, AES256, etc.). Ahora incluso pasaron los controles de acceso que el usuario necesita para entrar en algo mucho más seguro. Lo que está protegido por encriptación depende de qué datos considera que necesita esta confidencialidad adicional. Al igual que las cajas fuertes, la capacidad de escala puede ser difícil. Seguro que los bancos pueden permitirse grandes cajas fuertes para grandes cantidades de objetos de valor (Google), pero la mayoría de las personas para uso doméstico solo necesitan algo más pequeño (similar a la navegación web segura, GPG, etc.).

Si desea utilizar el cifrado en su empresa, deberá invertir en infraestructura, y esto realmente depende de su sistema; ¿Qué está tratando de proteger y cuánta protección necesita?

    
respondido por el RoraΖ 15.05.2015 - 18:37
fuente
0

De acuerdo, son diferentes, pero algunas de las respuestas se refieren más a implementaciones típicas que a diferencias básicas.

Me parece que la información de encriptación (algoritmo, clave, etc.) son atributos de datos, los datos claros son solo un caso especial. El control de acceso se ocupa de quién puede hacer qué a algunos datos y sus atributos. Debe tener sentido que el control de acceso diga "el usuario A tiene acceso de lectura a este como datos claros", mientras que "el usuario B tiene acceso solo a la versión cifrada de los mismos datos"; o "este usuario puede volver a cifrar estos datos".

    
respondido por el zoran2 14.07.2016 - 16:07
fuente

Lea otras preguntas en las etiquetas