Want to create interactive content? It’s easy in Genially!

Reuse this genially

Capítulo 5:El arte de garantizar la integridad

Karol Guzman

Created on March 20, 2023

Start designing with a free template

Discover more than 1500 professional designs like these:

Blackboard Presentation

Genial Storytale Presentation

Historical Presentation

Psychedelic Presentation

Memories Presentation

Animated Chalkboard Presentation

Chalkboard Presentation

Transcript

Capítulo 5

El arte de garantizar la integridad

Comenzar

La integridad garantiza que nada ni nadie modifique los datos y que estos sean confiables durante su ciclo de vida completo

¿Qué es el hash?

Propiedades de hash:

  • Utiliza una función criptográfica de hash para verificar y proteger la integridad de los datos
  • Las funciones de hash son funciones unidireccionales
  • Se le considera unidireccional porque con funciones de hash, es informáticamente inviable que dos conjuntos diferentes de datos tengan la misma compendio o el mismo resultado de hash.
  • Los valores hash criptográficos se conocen a menudos como huellas dactilares digitales
  • La entrada puede ser de cualquier longitud.
  • La salida tiene una longitud fija.

Herramienta que garantiza la integridad de datos al tomar los datos binarios (el mensaje) y generar una representación de longitud fija llamada valor hash o compendio del mensaje

algoritmos de hash

  • El complemento de 2 convierte un sistema binario al valor opuesto y luego agrega uno (un cero se convierte en uno y un uno se convierte en un cero)
  • El último paso es agregar 1 lo que genera un valor hash de 8 bits.
  • Calculadora: http://easyonlineconverter.com/converters/checksum_converter.html

Algoritmo de hash simple (checksum de 8 bits)

  • Es uno de los primeros algoritmos de hash
  • Calcula el hash al convertir el mensaje en números binarios
  • Luego organiza los números binarios en fragmentos de 8 bits.
  • El algoritmo añade los valores de 8 bits y convierte el resultado mediante un proceso llamado el complemento de 2.

Algoritmo checksum de 8 bits

Algoritmos de hash modernos

algoritmos de hash modernos

SHA-2 es un algoritmo más sólido y reemplaza a MD5. SHA-256, SHA-384 y SHA-512 son los algoritmos de próxima generación.

Algoritmo de compendio del mensaje 5 (MD5)

Secuencia compleja de operaciones binarias realizadas en los datos de entrada para generar un compendio del mensaje con hash de 128 bits.

Algoritmo de hash seguro (SHA)

implica un conjunto de dos funciones con tecnologías de 256 bits y 512 bits, respectivamente. Resulta prácticamente imposible intentar hallar una cadena origen que devuelva el mismo contenido, dispone de una gran cantidad de combinaciones posibles que evitan que se puedan dar duplicado de datos

Un delincuente no puede invertir un hash digital para descubrir la entrada original. Si la entrada cambia por completo, puede dar lugar a un hash diferente. Esto funciona para proteger las contraseñas.

Hash de contraseñas

Para proporcionar una prueba de autenticidad cuando se utiliza con una clave de autenticación secreta simétrica, como Seguridad IP (IPsec) o autenticación del protocolo de routing.

aplicaciones

Para proporcionar autenticación al generar respuestas de única vez y unidireccionales a los desafíos que se presentan en los protocolos de autenticación

Para proporcionar una prueba de verificación de la integridad del mensaje, como las utilizadas en los contratos con firma digital y en los certificados de infraestructura de clave pública (PKI)

El hash es vulnerable a los ataques man-in-the-middle y NO proporciona seguridad a los datos transmitidos.

b. Ataque de fuerza bruta: intenta cada combinación posible de caracteres hasta una longitud determinada

Desciframiento de hashes

  1. Para descifrar un hash, un atacante debe adivinar la contraseña
  2. Tipos de ataques:
    1. Ataque de diccionario: utiliza un archivo que contiene los hashes calculados de palabras, frases y contraseñas comunes.

¿Qué es el «salting»?

Un salt, que es una cadena aleatoria de caracteres, es una entrada adicional a la contraseña antes del hash. Esto crea un resultado distinto de hash para las dos contraseñas. Una base de datos almacena el hash y el salt.

TIPOS de ataques

Tablas de búsqueda

Almacena los hashes previamente computados de las contraseñas en un diccionario de contraseñas junto con la contraseña correspondiente

Tablas de búsqueda inversas

Permite que el delincuente cibernético inicie un ataque de diccionario o de fuerza bruta en muchos hashes sin la tabla de búsqueda previamente computada

https://crackstation.net/

Tablas de arcoíris

Sacrifican la velocidad de descifrado de hash para que las tablas de búsqueda sean más pequeñas, significa que la tabla puede almacenar las soluciones para más hashes en la misma cantidad de espacio.

Implementación de la técnica de «salting»

La técnica llamada «alargamiento de claves» también podrá protegerse de los ataques. El alargamiento de claves hace que el hash funcione muy lentamente. Esto impide que el hardware de alto nivel que puede calcular miles de millones de hashes por segundo sea menos eficaz.

Un generador criptográficamente seguro de números pseudoaleatorios (CSPRNG) es la mejor opción para generar un salt.

Pasos a seguir:

  • Utilice el CSPRNG para generar un salt largo y aleatorio.
  • Agregue el salt al comienzo de la contraseña
  • Realice el hash de ésta con SHA-256
  • Guarde el salt y el hash como parte del registro de la base de datos del usuario

Funcionamiento del HMAC

Un emisor desea asegurarse de que un mensaje permanezca sin cambios y en tránsito, y desea proporcionar una manera de que el receptor autentique el origen del mensaje.

tipos de controles de integridad de datos

¿Qué es un HMAC? Un HMAC utiliza un algoritmo específico que combina una función de hash criptográfica con una clave secreta. Sólo el emisor y el receptor conocen la clave secreta y el resultado de la función de hash ahora depende de los datos de entrada y la clave secreta. Esta característica derrota los ataques man-in-the-middle y proporciona autenticación del origen de los datos.

El dispositivo receptor elimina la huella digital del mensaje y utiliza el mensaje de texto simple con su clave secreta como entrada a la misma función de hash. Si el dispositivo receptor calcula una huella digital igual a la huella enviada, el mensaje aún se encontrará en su formato original. Además, el receptor conoce el origen del mensaje porque solo el emisor posee una copia de la clave secreta compartida. La función de HMAC comprobó la autenticación del mensaje.

Aplicación del uso de HMAC

  • Los gateways y los clientes de IPsec utilizan algoritmos de hash, como MD5 y SHA-1 en el modo HMAC, para proporcionar integridad y autenticidad del paquete.
  • Las imágenes del software de Cisco en Cisco.com tienen un checksum basado en MD5 disponible para que los clientes puedan verificar la integridad de las imágenes descargadas.
  • Autenticar un usuario web: Con el HMAC, el usuario envía un identificador de clave privada y un HMAC. El servidor busca la clave privada del usuario y crea un HMAC. El HMAC del usuario debe coincidir con el que calcula el servidor.
  • Las VPN que utilizan IPsec dependen de las funciones de HMAC para autenticar el origen de cada paquete y proporcionar verificación de la integridad de los datos.
  • Los routers de Cisco IOS utilizan el hash con las claves secretas utilizando el HMAC como la manera de agregar información de autenticación a las actualizaciones de protocolo de routing.
  • Es genuina: no es falsificable
  • Es inalterable: después de firmar, no se puede modificar el documento.
  • No es reutilizable: se vuelve parte del documento y no se puede copiar a otro documento
  • Una firma digital garantiza que el emisor firmó electrónicamente el mensaje o documento. Dado que una firma digital es única para las personas que la crean, esa persona no puede negar posteriormente que proporcionó la firma.

¿Que es una firma digital

Es un método matemático utilizado para validar la autenticidad y la integridad de un mensaje, documento digital o software.

uso de firmas digitales

Certificados digitales

firma de código

Se utiliza para verificar la integridad de los archivos ejecutables descargados del sitio web de un proveedor. La firma de códigos también utiliza certificados digitales firmados para autenticar y verificar la identidad del sitio

Se utilizan para verificar la identidad de una organización o de una persona para autenticar el sitio web de un proveedor y para establecer una conexión cifrada a fin de intercambiar datos confidenciales

DSA: utiliza la factorización de números grandes. Los gobiernos utilizan el DSA para las firmas, a fin de crear firmas digitales.

comparación entre algoritmos

ECDSA es el algoritmo de firma digital más nuevo que está reemplazando gradualmente a RSA. La ventaja de este nuevo algoritmo es que puede utilizar tamaños de clave mucho más pequeños para la misma seguridad y requiere menos cómputo que RSA.

Las firmas digitales requieren dos operaciones:1. Generación de claves2. Verificación de claves Ambas operaciones requieren la encriptación y el descifrado de clave

RSA: es el algoritmo más común de la criptografía de clave pública en la actualidad. Depende del cifrado asimétrico. El RSA cubre la firma y también cifra el contenido del mensaje. Es el más adecuado para las aplicaciones que requieren la firma y la verificación de documentos electrónicos y encriptación de mensaje.

¿que es un certificado digital

Es equivalente a un pasaporte electrónico. Permiten a los usuarios, hosts y organizaciones intercambiar información de manera segura a través de Internet.

Autentica y verifica que los usuarios que envían un mensaje sean quienes afirman ser

uso de certificados digitales

Paso 1: Bob examina el sitio web de Alicia. Un navegador designa una conexión segura al mostrar un icono de bloqueo en la barra de estado de seguridad.Paso 2: El servidor web de Alicia envía un certificado digital al navegador de Bob.Paso 3: El navegador de Bob comprueba el certificado almacenado en los ajustes del navegador. Solo los certificados confiables permiten que la transacción siga adelante.Paso 4: El navegador web de Bob crea una clave única de sesión por única vez.Paso 5: El navegador de Bob utiliza la clave pública del servidor web en su certificado para cifrar la sesión.Paso 6: El resultado es que solo el servidor web de Alicia pueda leer las transacciones enviadas desde el navegador de Bob.

En este escenario, Bob confirma un pedido con Alicia. El servidor web de Alicia utiliza un certificado digital para garantizar una transacción segura.

¿qué contiene un certificado digital?

  • El X.509 es un estándar de la infraestructura de clave pública (PKI) para administrar los certificados digitales. La PKI consta de las políticas, las funciones y los procedimientos necesarios para crear, administrar, distribuir, utilizar, almacenar y revocar los certificados digitales.

¿Qué es una autoridad de certificación?

Una autoridad de certificación (CA) funciona de la misma manera que una oficina de otorgamiento de licencias. La CA emite certificados digitales que autentican la identidad de las organizaciones y de los usuarios. Estos certificados también firman mensajes para asegurarse de que nadie los manipuló.

El proceso de validación

El trayecto del certificado Una persona obtiene un certificado para una clave pública de un CA comercial. El certificado pertenece a una cadena de certificados llamada cadena de confianza. El número de certificados en la cadena depende de la estructura jerárquica de la CA.La figura muestra una cadena de certificados para una CA de dos niveles. Existe una CA de raíz sin conexión y una CA subordinada en línea. El motivo de la estructura de dos niveles es que la firma X.509 permite una recuperación más sencilla en caso de riesgo. Si existe una CA sin conexión, puede firmar el nuevo certificado de CA en línea. Si no hay ninguna CA sin conexión, el usuario debe instalar un nuevo certificado de CA de raíz en cada máquina, teléfono o tablet cliente.

Los tres procesos incluyen lo siguiente:

  • La detección de certificados valida el trayecto de certificación al marcar cada certificado desde el comienzo con el certificado de la CA raíz
  • La validación del trayecto selecciona un certificado de la CA de emisión para cada certificado de la cadena
  • La revocación determina si el certificado fue revocado y por qué

Las cuatro reglas o restricciones de integridad de los datos son las siguientes:

  • Integridad de la entidad: filas con una clave principal.
  • Integridad de dominio: formato y defición
  • Integridad referencial: Las relaciones entre tablas deben permanecer congruentes. Un usuario no puede eliminar un registro que se relaciona con otro
  • Integridad definida por el usuario: reglas definidas por un usuario que no pertenece a una de las demás categorías. Por ejemplo, un cliente realiza un pedido nuevo. El usuario primero verifica si este es un cliente nuevo. Si lo es, el usuario agrega al cliente nuevo a la tabla de clientes.

aplicacion de integridad en bd

La integridad de datos se refiere a la precisión, la uniformidad y la confiabilidad de los datos almacenados en una base de datos.

Controles del ingreso de los datos

  • Los rangos de datos garantizan que un usuario ingrese datos dentro de un rango determinado (como una fecha de nacimiento introducida como 01-18-1820, por ejemplo)
  • Aprobación obligatoria de segundas personas (un cajero del banco recibe una solicitud de depósito o de retiro superior al valor especificado lo cual requiere una segunda o tercera aprobación)
  • Activador de modificador de registro máximo (si la cantidad de registros modificados supera un número predeterminado dentro de un período específico bloquea a un usuario hasta que el administrador identifica si las transacciones eran legítimas o no)
  • Indicador de actividad inusual (un sistema se bloquea cuando reconoce actividad inusual)

Configure las reglas para las verificaciones básicas, que incluyen:

  • Entrada obligatoria que garantiza que un campo obligatorio contenga datos
  • Máscaras de entrada que evitan que los usuarios ingresen datos no válidos o ayuden a garantizar que introducen datos constantemente (como un número de teléfono, por ejemplo)
  • Cantidades positivas en dólares

Reglas de validación

Criterios utilizados:

  • Tamaño: Controla la cantidad de caracteres
  • Formato: Controla que los datos se ajusten a un formato específico
  • Coherencia: Controla la coherencia de los códigos en los elementos de datos relacionados
  • Rango: Controla que los datos se encuentran dentro de un valor mínimo y un valor máximo
  • Dígito de control: Proporciona un cálculo adicional para generar un dígito de control para la detección de errores.

  • Verifica que los datos se incluyan en los parámetros definidos por el diseñador de la base de datos.
  • Ayuda a garantizar la integridad, la precisión y la coherencia de los datos.

validación de la base de datos

Validación del tipo de datos: Verifica que un usuario que ingresa datos concuerde con el tipo de caracteres esperados.

Validación de entrada: Datos de entrada modificados que no son validados, por ejemplo, remitente de un correo electrónico.

Verificación de anomalías: identificación de patrones en los datos que no se ajustan al comportamiento esperado. requiere solicitudes o modificaciones de datos de verificación cuando el sistema detecta patrones inusuales o sorpresivos

Ejercicios

Identificar los controles de integridadde la base de datos

Identificar la terminología HASH

https://contenthub.netacad.com/legacy/CyberEss/1.0/es/index.html#5.4.2.5

https://contenthub.netacad.com/legacy/CyberEss/1.0/es/index.html#5.1.1.9

Ordenar los pasos de la certificación digital

https://contenthub.netacad.com/legacy/CyberEss/1.0/es/index.html#5.3.2.4

¡muchas gracias!