Respuesta de la tarea del curso de seguridad de la información de la Universidad de Xiangtan 5

Respuesta 5 de la tarea de la clase de seguridad de la información de la Universidad de Xiangtan
Profesor: Dean Li Chengqing
resolvió la autoayuda y el amable asistente de enseñanza hermano Shen Ge.

  1. Como se discutió en este capítulo, una función hash criptográfica debe satisfacer todas las siguientes propiedades: compresión unidireccional resistencia a colisiones fuertea colisiones débil
    resistencia
    eficiente Proporcione un escenario de aplicación en el que se pueda usar una función hash criptográfica, pero la función hash que mencionamos aquí no se puede usar. La pregunta b es la misma que a, pero se supone que la función hash tiene todas las demás características excepto las de alta eficiencia. El problema c es el mismo que a, pero se supone que la función hash tiene todas las demás características excepto la característica unidireccional. La pregunta d es la misma que a, pero se supone que la función hash tiene todas las demás características excepto las características anticolisión. Respuesta: una firma digital con tal función hash es inútil, porque todavía tiene que firmar un mensaje grande. b Esto ralentizará el cálculo de la firma digital. El ejemplo de licitación en línea en el libro c fallará. d fallará al usar ese hash en una firma digital. 2. Justifique la siguiente declaración sobre las funciones hash criptográficas. Tener características anti-colisión fuerte debe poder tener características anti-colisión débil. Tener características anticolisión no necesariamente tiene características unidireccionales. Respuesta: Suponga que h satisface el rendimiento anticolisión fuerte, pero no satisface el rendimiento anticolisión débil. Luego, para x_0 y 〖h(x〗_0), podemos encontrar x_1 de modo que 〖h(x〗_0)=〖h(x〗_1). Pero x_0 y x_1 violan la suposición de fuerte resistencia a colisiones. Supongamos que g es una función hash que es muy resistente a las colisiones (y, por lo tanto, débilmente resistente a las colisiones) y que g produce una salida de n bits. Sea (a,b) la concatenación de a y b, y luego defina la función hash h como:


















    h(x)={ █( (1,x) x es la longitud de n@(0,g(x)) else) ┤ Entonces
    h es resistente a colisiones, pero no unidireccional.
    3. Suponga que una función hash criptográfica segura genera un valor hash de longitud binaria de n bits. Explique cómo se puede implementar con éxito un ataque de fuerza bruta y cuál es el costo computacional estimado.
    Respuesta:
    Si desea atacar la fuerte capacidad anticolisión, necesita hash 2^(n/2) entradas aleatorias para poder implementar y encontrar colisiones con éxito.
    4. En las siguientes circunstancias, calcule el número de posibles colisiones.
    Su función hash produce un valor de salida que tiene una longitud de 12 bits y está codificando 1024 mensajes seleccionados al azar.
    Su función hash genera un valor de salida de n bits de largo que usted compara con un mensaje seleccionado al azar.
    Respuesta:
    a. Si hash 2 10 mensajes, entonces alrededor de 2 20 comparaciones. Por cada 2 12 comparaciones, esperas encontrar una colisión, por lo que el número esperado de posibles colisiones es 2 8.
    b.La respuesta es m 2/2 n.
    5. Suponga que force es una función hash segura que genera valores hash largos binarios de n bits.
    a. ¿Estime cuántas operaciones hash se deben realizar para encontrar necesariamente una colisión?
    b) ¿Estime cuántas operaciones hash se realizarán para encontrar necesariamente 10 colisiones? Es decir, se estima cuantas operaciones de hash hay que realizar para encontrar un conjunto de (X, Z,) tal que h(Xi)=máquina Z,), donde i = 0,1,2,.. .,9.
    c. Estime cuántas operaciones hash se realizarán para encontrar m colisiones.
    respuesta:
    a. Necesita realizar 2^(n/2) operaciones hash.
    b. Requiere aproximadamente √10×2 (n/2) operaciones hash. Debido a que este número hash dará como resultado 10 × 2 n comparaciones, y por cada 2 ^ n comparaciones, se encontrará una colisión.
    C. Necesitamos √10×2^(n/2) operaciones hash. Tenga en cuenta que esto significa que se vuelve más fácil encontrar colisiones a medida que aumenta el número de hashes calculados.
  2. Una colisión de k-vías se refiere a un conjunto cuyos valores de elementos son Xo, X1, ···.Xk-1, y los valores generados por estos elementos después del hashing son los mismos, es decir, satisfacen la siguiente fórmula: h(x0) =
    h (x1) = ... = h(xk-I)
    Suponga que h es una función hash segura que genera un valor hash de longitud binaria de n bits.
    a) ¿Estime cuántas operaciones hash se deben realizar para encontrar una colisión de k vías?
    b) Estime cuántas operaciones de Hanch se requieren para encontrar colisiones de dos k-vías.
    c) Estime cuántas operaciones hash se deben realizar para encontrar m colisiones de k vías distintas.
    Respuesta:
    a. unos 2^(n(k-1)/k) cálculos antes de poder encontrar una colisión en k vías b
    . unos 2 (1/k)∙2 (n(k-1)/k) cálculos antes de poder encontrar dos colisiones de k-vías
    c Para valores hash y, hay alrededor de y k comparaciones de k-vías. Por lo tanto, para encontrar m colisiones de k vías, es necesario calcular m (1/k)∙2^(n(k-1)) veces.
  3. Recuerde el ataque de cumpleaños a las firmas digitales discutido en la Sección 5.4. Supongamos que modificamos el diseño de la operación hash de la siguiente manera: dado un mensaje M, Alice quiere firmarlo, primero elige aleatoriamente R y luego calcula la firma, como en la fórmula: S = [h(M, R)] AJice• Envía (M, R, S) a Bob de nuevo. Disculpe, ¿puede esto evitar el ataque anterior? ¿Por qué?
    Respuesta:
    no. Trudy puede simplemente encontrar R' como h(i, R)=h(E, R'), donde I es la información original y E es la información de Trudy. Entonces, en realidad es más fácil para Trudy porque no tiene que inventar un montón de otra información equivalente porque solo está cambiando información aleatoria.
    8. Considere un código de verificación de redundancia cíclica (CRC) calculado con un divisor de 10011. Encuentre las dos colisiones de 10101011. Es decir, busque otros dos valores que puedan generar la misma suma de códigos de verificación conjunta de elementos cíclicos que 10101011.
    Respuesta:
    11100111
    11110000
    9. Considere un código de verificación de redundancia cíclica (CRC) calculado con un divisor de 1001 l Si los datos tienen un valor de 11010110 y Trudy quiere cambiar su valor a 111 No le importan los valores en estos bits unarios, y quiere que la suma de verificación del resultado sea la misma que la suma de verificación de los datos originales. Determine cuántos valores totales Trudy tendrá disponibles y cuáles. Respuesta: 2 11100011 11110000 10
    :
    Para el algoritmo
    de ronda externa del algoritmo hash Tiger que se muestra en la Figura 5-2, complete el valor de cada bit binario en cada fila Respuesta: Las flechas a la derecha (lista de claves) indican el número de 512 bits Las flechas a la izquierda representan 192 bits de (a,b,c), mientras que todos los del medio representan 64 bits.


Sea h la función hash Tiger y sea F la operación de ronda externa del algoritmo hash Tiger que se muestra en la figura 5-2.
a. Para M=(B: B2, B3), donde cada B; tiene una longitud de 512 bits binarios, indique una expresión similar a la fórmula (5.2).
b. Ahora suponga que M=(B1 Be...Bn), donde cada B tiene una longitud de 512 bits binarios, demuestre que h(M)=F(h(B1, B2...B...1), B ,).
Respuesta: a, h(M)=F(F(F(A,B1),B2),B3) =F(F( h(B1),B2),B3) =F(h(B1,B2
)
, B3)
b.En general, la inducción simple se realiza primero.
12.
En el sitio web de este libro, puede encontrar un programa que implementa el llamado algoritmo hash Lynx que el autor diseñó cuidadosamente. Este algoritmo hash es esencialmente una versión reducida del algoritmo Tiger: el algoritmo hash Tiger produce una salida de un valor binario de 192 bits (equivalente a tres longitudes de palabra binaria de 64 bits), mientras que el algoritmo hash Bobcat produce un valor binario de 48 bits. valor de valor binario de bit (equivalente a tres longitudes de palabra binaria de 16 bits).

Respuesta: a) Para la versión binaria de 12 bits del algoritmo hash de Lynx, encuentre una colisión. Aquí, puede obtener un hash binario de 12 bits interceptando el hash binario resultante de 48 bits. Disculpe, ¿cuántas operaciones hash necesita para encontrar la primera colisión binaria de 12 bits?
B. Busque una colisión de la versión binaria completa de 48 bits del algoritmo hash Lynx.
13.
A Alice le gusta usar el algoritmo hash Tiger, que genera un valor hash binario de 192 bits. Sin embargo, para una aplicación específica, Alice solo necesita un hash binario de 64 bits. Por favor, conteste a las siguientes preguntas. Aquí, asumimos que el algoritmo hash de Tiger es seguro.
a. Para Alice, si solo se usa la interceptación del valor de salida de la función hash Tiger, ¿es seguro? O, en otras palabras, para Alice, solo se usa la salida binaria de 192 bits del algoritmo hash Tiger. ¿Está bien para los primeros 64 bits Explique por qué.
b. Para Alice, usar la
salida de la función hash Tiger seleccionando un bit por cada tres bits binarios, ¿vale la pena considerar esta solución? Explique por qué.
c. Para Alice, ¿es seguro usar la función hash Tiger para obtener la salida de tres palabras binarias de 64 bits y luego juntarlas para realizar la operación XOR para obtener la salida final? Explique por qué.
Respuesta:
Sí. Cada posición en el algoritmo hash Tiger es segura, y se utilizan 4 S-boxes en la implementación del algoritmo, y cada uno de estos 4 S-boxes asigna 8 bits binarios a 64 bits.
vale la pena considerarlo. El algoritmo Tiger hash incluye un total de 24 rondas de operaciones. Estas 24 rondas de operaciones pueden considerarse como 3 rondas externas de operaciones, cada una de las cuales incluye 8 rondas internas de operaciones.
Seguridad. Porque el algoritmo hash es un algoritmo seguro en todas las posiciones.
14.
Considere la ecuación (5.3).
a. Demuestre que si las longitudes de K, M y X son todos
múltiplos enteros de la longitud del bloque de la función hash (generalmente, 64 bytes), entonces se mantiene la igualdad.
b. Para valores de K, M y X de otras longitudes, ¿es verdadera esta ecuación?
c. Demuestre que para valores de M, M y K de cualquier longitud, siempre que h(M)=h( M'), se establece la fórmula (5.4).
Respuesta: a. Está claro a partir de la definición de F que esta función se cumple si K, M y X son todos múltiplos. b.
Puede funcionar en cualquier momento (K, M) es un múltiplo de la longitud del bloque.
c. Por determinar
15.
Disculpe, ¿se puede usar el código de autenticación de mensajes MAC como HMAC? Es decir, ¿el código de autenticación de mensajes MAC tiene todas las características que satisface HMAC?
Respuesta: MAC proporcionará la misma protección de integridad que HMAC, pero no son diferencias sutiles entre los dos. Es fácil generar colisiones para MAC si se conoce la clave, pero este no es el caso para HMAC.
16. Suponga que sabe que la salida de un HMAC es X y su clave es K, pero no sabe cuál es el mensaje M. Entonces, ¿puede construir un mensaje M, usando la misma clave K, de modo que el valor HMAC del mensaje sea igual a X? Si es así, proporcione un algoritmo para construir dicho mensaje. Si no, por favor explica por qué. Tenga en cuenta que asumimos que conoce la clave K, y se utiliza la misma clave K para ambos cálculos HMAC (comparar esta pregunta con la pregunta 43 en el Capítulo 3 será instructivo).
Respuesta: No, porque el hashing es unidireccional
17. Recuerde el esquema de licitación en línea que se analiza en la Sección 5.8.1.
a. En este esquema, ¿cuáles son las características de una función hash segura h que se usa para prevenir el fraude
?
b. Si Charlie puede determinar que Alice y Bob presentarán precios de oferta que deben estar entre $10,000 y $20,000
entre. Describa: un ataque de búsqueda directa, de modo que Charlie pueda
usar este método de ataque para determinar el precio de oferta de Alice y Bob en función de sus valores hash respectivos.
c. ¿El ataque descrito en b constituirá un problema de seguridad real?
d. ¿Qué tipo de modificación se debe realizar en este proceso de licitación en línea para evitar el ataque de recuperación hacia adelante similar al descrito en b
?:
a impide que cualquiera determine una oferta basada en en información relevante y resistencia a la colisión (evita que alguien cambie su oferta)
b búsqueda directa - calcula todas las ofertas razonables, luego busca una oferta que dé la misma oferta que las ofertas de Alice o Bob
c can
d Alice puede elegir un valor aleatorio RA y enviar h(A, RA), de manera similar cuando otros postores hacen ofertas, Alice debe enviar la oferta A y llenar RA al azar.
18. Recuerde el esquema de reducción de arrastre de correo no deseado discutido en la Sección 5.8.2.
a. En este esquema, ¿cuáles son las
características de una función hash segura h para reducir el spam?
b. En la sección 5.8.2, hemos dicho que "el mensaje M contiene el remitente y la dirección de correo electrónico del destinatario
, pero no no contener ninguna otra información de dirección adicional". Supongamos que relajamos esta condición para exigir solo que
el mensaje M contenga la dirección de correo electrónico del destinatario previsto. Encuentre un ataque contra este
sistema de reducción de arrastre de spam modificado, es decir, demuestre que bajo este esquema modificado, el spammer
aún puede enviar spam sin hacer demasiado trabajo adicional.
Respuesta:
a. Resistencia al impacto, evitando múltiples correos electrónicos con el mismo hash. Unidireccional, de lo contrario, un mensaje se puede identificar especificando un hash.
b. Un "mensaje" puede contener varias direcciones de correo electrónico, en cuyo caso Trudy solo necesita encontrar una R adecuada para enviar el mensaje a todas las direcciones.
19. Suponga que tiene un esquema de cifrado de bloque seguro, pero no tiene función hash. Además, no hay llaves disponibles.
Para simplificar, suponga que la longitud de la clave y la longitud del bloque de este esquema de cifrado de bloques son iguales a n. a
. Disculpe, si solo necesita realizar una operación hash en un bloque cuya longitud es exactamente n bits, ¿cómo puede
usar este esquema de cifrado de bloques como una función hash criptográfica? ¿ Utiliza este esquema de cifrado de bloques como una función hash criptográfica
cuando hay bloques de longitud binaria de n bits ? Respuesta: A. Defina h(B) = E(X, B), donde X es una constante no secreta (p. ej. , 0), el bloque hash se utilizará como clave. B. Si hay más de un bloque, puede dividir el mensaje en bloques de n bits, donde n es la longitud de la clave de cifrado del bloque, y luego iterar sobre los bloques cifrados. Por ejemplo, supongamos que el mensaje es de 3 bloques: Bo, B1, B2. Luego defina un cifrado con bloques h(Bo, B1, B2) = E(E(E(X, Bo), Br), Br), donde X es una constante no secreta. Esto es seguro porque es difícil determinar la "clave", incluso si el atacante conoce el texto sin formato y el texto cifrado. Como se describe en la parte a, se puede usar cualquier constante inicial. Del mismo modo, el "cifrado" de CBC funcionaría, donde el mensaje se usa como clave y el texto sin formato es una constante. En cualquier caso, el cifrado de bloque debe tener un tamaño de bloque lo suficientemente grande como para que no se pueda realizar un ataque de colisión de fuerza bruta. 20. Suponga que Alice quiere cifrar un mensaje para Bob, que contiene tres paquetes de texto sin formato, Po, P1 y P2. Tanto Alice como Bob tienen acceso a una función hash y una clave simétrica compartida K, pero no hay ningún esquema de cifrado disponible. Entonces, ¿cómo se puede hacer? Alice puede cifrar el mensaje de forma segura y Bob puede descifrarlo sin problemas.






Respuesta:
Método de cifrado: Co= Pθ K, C1 = P1θh(K), C1 = Pθh(h(K)).
Pero esto no es sólido, porque si Trudy conoce Pi, puede decidir fácilmente Pj porque todosj≥
i.21 La computadora de Alice necesita acceso: una clave simétrica K. Considere las siguientes dos partes (i) que generan y almacenan la clave KA
para generar la clave configurando KA = h (contraseña de Alice). La clave no se almacena en la computadora de Alice; en cambio, cuando se necesita usar Kg, Alice ingresa su contraseña y la clave se genera en tiempo real.
(ii) Inicialmente genera aleatoriamente la clave Kx, luego la cifra y almacena el valor E(Kx, K), donde K=h (contraseña de Alice). Cuando se necesita Ka, Alice ingresa su contraseña, que se codifica para generar K, que luego se usa para descifrar la clave K.
Indique una ventaja significativa del esquema (i) sobre el esquema (ii) y mencione una ventaja significativa del esquema (ii) sobre el esquema (i).
Respuesta: El método (i) no requiere almacenar nada. El método (i) cifra los datos con una clave más fuerte, lo que dificulta el ataque directo al texto cifrado. El enfoque (i) también puede ser ventajoso cuando Alice quiere cambiar la contraseña, ya que no hay necesidad de descifrar/volver a cifrar los datos.
Veintidós.
Supongamos que Sally (el nombre de un servidor) necesita acceso a tres claves simétricas: una para Alice, otra para Bob y una tercera para Charlie. Bueno, Sally puede generar claves simétricas KA, Kp y Kc y almacenarlas en una base de datos. Otra opción es la diversificación de claves, es decir, Mr. Sally genera y almacena una única clave Ks. Luego, cuando sea necesario, Sally genera la clave K, calculando Ks = h(Alice, Ks), y las claves Kp y Kc se generan de manera similar a Ks. Señale una ventaja clara y una desventaja significativa de este esquema de descentralización de claves en relación con el almacenamiento de claves en una base de datos.
R: La ventaja obvia de la diversificación clave es que casi no requiere almacenamiento. Una posible ventaja de una base de datos es que no existe un único punto de falla. Sin embargo, si alguien puede recuperar la clave maestra, también podría recuperar la base de datos. Por otro lado, si la base de datos está distribuida (como en GSM), probablemente lo esté. Es mejor usar una base de datos. En algunos casos, puede ser más fácil cambiar la clave de un usuario utilizando una base de datos.
23. Si la función T satisface las siguientes características, llamamos a la función función incremental: si la función T se aplica a M, cuando M cambia, la velocidad de cambio del valor de la función correspondiente es proporcional a la velocidad de cambio de M misma . Supongamos que tenemos una función hash incremental H.
a. Discuta un escenario de aplicación en el que usar la función hash incremental H anterior sería mejor que usar una función hash estándar (no incremental).
b) Suponga que un mensaje M solo puede modificarse agregando bits de relleno, es decir, la modificación M del mensaje puede expresarse como M=(M, x), donde x es un valor definido. Luego, dada una función hash criptográfica h, defina una función hash criptográfica incremental H basada en h.
Respuesta: a. Cuando tenga una gran cantidad de datos, solo ligeramente modificados, se preferirá el hashing incremental. Por ejemplo, suponga que aplica hash a todas las unidades de archivos de su disco duro como método para detectar errores. Supongamos que más tarde desea aplicar el hash a todos los archivos de la misma manera, pero solo un archivo debería haber cambiado. Con el hash no incremental, volver a calcular el hash será tan costoso como calcular el hash original, mientras que el hash incremental solo es tan costoso como calcular el hash del archivo modificado.
b. Suponiendo que el tamaño del bloque sea apropiado, sea H(M') = F(H(M), X) donde Fis codifica la "función redonda" de H.
veinticuatro. Supongamos que Bob y Alice quieren lanzar una moneda al aire a través de la red. Alicia propone el siguiente protocolo:
(i) Alicia elige aleatoriamente un valor XE{0,1}.
(ii) Alice genera una clave simétrica aleatoria binaria K de 256 bits.
(iii) Alice utiliza el esquema de cifrado AES para realizar el cálculo Y=E(X,R,K), donde R contiene 255 bits binarios seleccionados al azar.
(iv) Alice envía Y a Bob.
(v) Bob adivina un valor Z ∈ {0,1} y se lo cuenta a Alicia.
(vi) Alice le da la clave K a Bob, y Bob realiza el cálculo (X,R)=D(Y,K). (vii) Si X=Z, Bob gana, de lo contrario, Alice gana. Este protocolo no es seguro.
a. Explique cómo Alice puede hacer trampa
b. Utilice una función hash encriptada h para modificar este protocolo para que Alice no pueda hacer trampa.
Respuesta: a. Una vez que Alicia conoce la suposición Z de Bob, prueba diferentes teclas "K" hasta que encuentra una en la que el primer dígito de W=D(Y,K') no es Z. Luego envía la "clave" K' a Bob.
b. Alice envía h(K) junto con Y, por lo que no puede cambiar la clave. Es decir, el hash de la clave compromete a Alice con K, y dado que K es aleatorio, no hay un ataque de búsqueda hacia adelante.
25. El algoritmo hash MD5 se considera roto porque se ha encontrado una colisión y, de hecho, el algoritmo hash 25.MD5 se considera roto porque se ha encontrado una colisión y, de hecho, con este algoritmo tarda unos segundos en una PC para construir una colisión (ver Ref. [244]). Encuentre todos los diferentes bits 12 en los dos mensajes a continuación. Verifique que los resultados del hash MD5 de los dos mensajes sean los mismos.
00000000 DL 31 DD 02 C5 E6 EE C4 69 3D 9A 06 98 AF F9 5C
00000000 2F CA B5 87 12 46 7e AB 40 04 58 3E B8 FB 7F 89 00000020 55 AD 34 09 F4 B3 83 E4 83 25
71 41 5A
00000030303030303030 08 51 25 E8 F7 CD C9 9F D9 1D BD F2 80 37 3C 5B
0000000040 96 0B 1D D1 DC 41 7B 9C E4 D8 5A 5A 5A 0000000000 0000000000 39A
C7 F0 EB FD 29 F1 66 D1 09 B1 8F
000060 75 27 7F 79 30 d5 5c eb 22 e8 ad ba 79 cc 15 5c
00000070 ed 74 cb dd 5f c5 d3 6d b1 9b 0a d8 35 cc a7 e3
y
00000000 D1 31 DD 02 C5 E6 EE C4 69 3D 9A 06 98 AF F9 5C
00000010 2F CA B5 071246 7E AB 40 04 58 3E B8 FB 7F 89 000000000000 AD 34 09 F4 B3 83 E4 88
F1 41 5A 00000030
30 08 51 25 E8 F7 CD C9 9F D9 1D BD 72 80 37 3C 5B
00000040 96 0B 1D DL DC 41 7B 9C E4 D8 97 F4 5A 65 55 D5
00000050 35 73 9A 47 F0 EB FD 621 B 0C 8 F 30 6 000060 75 27 79 30 30 30 30 30 30
30 d5 5c eb 22 e8 ad ba 79 4c 15 5c
00000070 ed 74 cb dd 5f c5 d3 6d b1 9b 0a 58 35 cc a7 e3
Respuesta:
1º:
16 dígitos en minúsculas: 7d4746b3c8d09fe3
2º:
61fe3 Bit minúscula
colisión exitosa : 7d3c474
26. La colisión MD5 descrita en la Pregunta 25 a menudo se considera discutible, porque los dos mensajes que chocan parecen ser bits binarios aleatorios, es decir, los dos mensajes no contienen información significativa. Actualmente, con este ataque de colisión MD5, es imposible generar una colisión significativa. Por esta razón, a veces se dice que las colisiones MD5 no son una amenaza grave. El propósito de esta pregunta de pensamiento es hacerte darte cuenta de que este no es el caso. Descargue el archivo MD5_collision.zip del sitio web de este libro.Después de descomprimir el archivo, puede obtener dos archivos de script: rec2.ps y auth2.ps.

aPor favor, abra rec2.ps a través del navegador de secuencias de comandos, ¿qué tipo de mensaje puede ver? A continuación, abra auth2.ps a través del navegador de secuencias de comandos, ¿qué tipo de noticias puede ver?
b Disculpe, ¿cuál es el valor hash MD5 del archivo de secuencia de comandos rec2.ps? ¿Cuál es el valor hash MD5 del archivo de secuencia de comandos auth2.ps? ¿Por qué es un problema de seguridad? Explique lo fácil que es para Trudy lanzar un ataque en este caso particular y explique un esquema de implementación de ataque específico. Sugerencia: considere el caso de las firmas digitales.
c Modifique los archivos de secuencias de comandos rec2.ps y auth2.ps para que parezcan diferentes entre sí en comparación con su estado actual, pero al aplicarles hash se obtiene el mismo resultado. Disculpe, ¿cuál es el valor hash final?
Dado que es imposible generar una colisión MD5 significativa, ¿cómo pueden dos mensajes (significativos) tener el mismo valor hash MD5? Sugerencia, el script contendrá una declaración condicional en la siguiente forma;
( X)(Y)eq{T0}{T1}ifelse
Entre ellos, cuando el texto X e Y son iguales, muestra T0; de lo contrario, muestra T1.
Respuestas:
a. fácil
b. ambos son c321325acff48137d62844e481ab01c5,
suponiendo que firme la recomendación rec2.ps,
Trudy (o cualquier otra persona) puede reemplazar fileauth2.ps con la recomendación y la verificación de la firma aún pasará.
C. Depende del mensaje seleccionado, pero abrir cualquiera de los archivos con un editor de texto debería darle una buena idea de lo que debe hacerse.
d) La idea básica es: Suponga que A y B forman una colisión MD5, es decir, h(A) = h(B). Luego creamos dos archivos Postscript idénticos donde la letra "buena" es T0 y la letra "mala" es T1, y luego en el primer archivo establecemos, digamos en la declaración condicional x - Banda Y = B, tal que To (" se muestra el mensaje OK"). En el segundo archivo dejamos X - A e Y = B para que se muestre el mensaje "malvado". Debido al hecho de que h(A) = h(B), los dos mensajes serán lo mismo y los archivos son idénticos fuera de "(X)(Y)".
27.Suponga que recibe un correo electrónico de alguien que se hace llamar Alice. El correo electrónico incluye un certificado digital con el siguiente contenido:
M=("Alice", la clave pública de Alice) y [h(M)]CA
donde CA es una autoridad certificadora.
Disculpe, ¿cómo verifica esta firma? Proporcione una descripción lo más detallada posible.
¿Por qué se molestaría en verificar la firma
si confía en la CA que firmó el certificado ? Luego, después de verificar la firma, puede estar seguro de que solo Alice posee la clave privada correspondiente a la clave pública contenida en este certificado. Suponiendo que la clave privada de Alice no se haya comprometido ni destruido, ¿por qué su afirmación es válida?
Si confía en la CA que firmó el certificado, después de verificar la firma, no tiene idea de la identidad del remitente del certificado. ¿Qué información puede Respuesta
:
a. Verifique el certificado digital de la CA y configure la verificación de la clave de correo de Alice. Verifique el certificado digital que lleva el correo electrónico a través de la página web para confirmar que el certificado está efectivamente certificado por la CA.
b) La falla en la verificación de la firma significa que la clave privada correspondiente puede ser verificada como perteneciente a cualquier persona. Por ejemplo, Trudy podría simplemente crear un par de claves pública/privada, poner esta clave pública en un certificado que represente a "Alice", firmar ese certificado él mismo y conservar la clave privada. Si un mensaje está cifrado con una clave pública, solo Trudy puede descifrarlo, no Alice.
c. El trabajo de la CA es crear el certificado y asegurarse de que la clave privada pertenezca a Alice (y no a otra persona). Solo una CA puede firmar un certificado, por lo que si la CA ha hecho su trabajo y la clave privada de Alice no se ha visto comprometida, solo Alice tiene la clave privada.
D. nada. El certificado es público, por lo que cualquiera puede tenerlo y enviarlo.
28. Recuerde que usamos un sistema de clave pública y una función hash cuando calculamos una firma digital.
a) Describa detalladamente el proceso de cálculo y verificación de la firma digital.
b. Suponga que el sistema de clave pública utilizado para calcular y verificar la firma no es seguro, pero la función hash
es segura. Demuestra que, en este caso, eres capaz de falsificar la firma.
C. Se supone que la función hash utilizada para calcular y verificar la firma no es segura, pero el sistema de clave pública es seguro. Demuestra que, en este caso, eres capaz de falsificar la firma.
Respuesta:
a.Proceso de cálculo: primero generar el archivo electrónico firmado, luego hacer un resumen digital del archivo electrónico con un algoritmo hash, y luego cifrar asimétricamente el resumen digital con la clave privada de la firma, es decir, hacer una firma digital; después de eso, lo anterior La firma y el texto original del documento electrónico y la clave pública del certificado de firma se empaquetan juntos para formar un resultado de firma y se envían al destinatario para que el destinatario los verifique.
Proceso de verificación: el receptor primero descifra la firma digital con la clave pública del remitente, obtiene el resumen digital y realiza el mismo algoritmo hash en el documento electrónico original para obtener un nuevo resumen digital, compara los valores hash de los dos resúmenes, y descubre que son iguales La firma está verificada, de lo contrario no es válida.
El receptor del mensaje b primero calcula el valor hash del mensaje original recibido y luego usa la clave pública del remitente para descifrar la firma digital adjunta al mensaje. Si los dos valores hash son iguales, el receptor puede confirmar que la firma digital pertenece al remitente. Pero si el sistema de clave pública es inseguro, no hay forma de garantizar que el valor hash sea auténtico, de modo que se pueda falsificar la firma.
El destinatario del mensaje c primero calcula el valor hash del mensaje original recibido y luego usa la clave pública del remitente para descifrar la firma digital adjunta al mensaje. Pero dado que la función hash ya se conoce. Por lo tanto, siempre que los valores hash antes y después del descifrado sean los mismos, la firma se puede falsificar.
29. Esta pregunta es sobre firmas digitales.
a. Explique en detalle cómo se calcula y verifica la firma digital
b. Demuestre que la firma digital puede respaldar la protección de la integridad de los datos.
c. Demuestre que la firma digital puede respaldar la protección de no repudio.
Respuesta:
a) En pocas palabras, la llamada firma digital son algunos datos adjuntos a la unidad de datos, o la transformación criptográfica de la unidad de datos. Estos datos o transformación permiten al destinatario de la unidad de datos confirmar el origen de la unidad de datos y la integridad de la unidad de datos y proteger los datos contra la falsificación por parte de una persona como el destinatario. Es un método de firmar mensajes en forma electrónica para que un mensaje firmado pueda transmitirse a través de una red de comunicación. Las firmas digitales se pueden obtener basadas tanto en criptosistemas de clave pública como en criptosistemas de clave privada, principalmente firmas digitales basadas en criptosistemas de clave pública. Incluye firmas digitales ordinarias y firmas digitales especiales. Los algoritmos de firma digital comunes incluyen RSA, ElGamal, Fiat-Shamir, Guillou-Quis Quarter, Schnorr, el algoritmo de firma digital Ong-Schnorr-Shamir, Des/DSA, el algoritmo de firma digital de curva elíptica y el algoritmo de firma digital de autómata finito, etc. Las firmas digitales especiales incluyen firmas ciegas, firmas de proxy, firmas de grupo, firmas innegables, firmas ciegas justas, firmas de umbral, firmas con funciones de recuperación de mensajes, etc., que están estrechamente relacionadas con el entorno de aplicación específico. b. Supongamos que Alice envía M y s =[
h (M)]aice · Si Bob recibe M'≠M y S,
entonces H(M')≠{S}Alice. Asimismo, si Bob recibe M y S'≠S, entonces h(M)≠{S'}Alice. Si ambos están equivocados, entonces es casi seguro que h(M') ≠ {S'}Alice-.
c.Cifrar los datos con su propia clave privada, porque solo él mismo tiene la clave privada, y nadie más la tiene, por lo que brinda protección de no repudio.
30. Supongamos que Alice quiere firmar un mensaje M y enviárselo a Bob.
a. De acuerdo con nuestra representación estandarizada, ¿qué operaciones debe realizar Alice?
b. ¿Qué información debe enviar Alice a Bob? ¿Cómo verifica Bob la firma?
Respuesta:
Alice calcula S=-[h(M) ]Alice
Alice envía M y S=[h(M)]Alice a Bob. Bob verifica que h(M)={S}Alice
31. En el último capítulo, discutimos las ideas de implementación detrás de los ataques de recuperación directa contra los sistemas de encriptación de clave pública. En algunas aplicaciones específicas, los ataques de recuperación hacia adelante también se pueden usar contra funciones hash.
a. Disculpe, ¿qué es un ataque de recuperación hacia adelante contra un esquema de cifrado de clave pública? ¿Cómo se puede prevenir este tipo de ataque? b
. Describa un escenario de aplicación de la función hash, haciéndolo parecer razonable y factible, pero ocurre Posibilidad de ataque de recuperación hacia adelante.
c. Disculpe, ¿cómo podemos prevenir los ataques de recuperación hacia adelante en las funciones hash?
a. Adivinar posibles mensajes de texto sin formato y luego cifrar cada mensaje con la clave pública. Compare el resultado con el texto cifrado.
b. Problemas de licitación en línea.
C. Relleno aleatorio, la misma solución para la búsqueda previa de clave pública
32.
Supongamos que tenemos un esquema de cifrado de bloques y queremos implementar una función hash usándolo. Sea X una constante específica y sea M un mensaje que contiene un solo bloque cuya longitud es exactamente la longitud de la clave en nuestro esquema de cifrado de bloques. Defina el cálculo hash del mensaje M como y=E(X, M. Tenga en cuenta: cuando usamos este esquema de cifrado de bloques, usamos el mensaje M en lugar de la clave correspondiente.
a. Suponiendo que nuestro esquema básico de cifrado de bloques sea seguro, demuestre que esta función hash satisface las características anticolisión y unidireccionales de las funciones hash cifradas.
b. Amplíe la definición de la función hash para que la operación hash se pueda realizar en mensajes de cualquier longitud. Después de la extensión, ¿satisface esta función hash todas las propiedades que debe tener una función hash criptográfica?
C. Disculpe, para que un esquema de cifrado de bloques se use como una función hash criptográfica, ¿por qué debe ser capaz de resistir el ataque de "clave elegida"? Sugerencia: si esto no es posible, entonces para un mensaje de texto simple P dado, podemos encontrar dos claves K0 y K1 tales que E(P, K0) = E(P, K1). Demostrar que dicho esquema de cifrado de bloques es inseguro cuando se usa como una función hash Solución
:
si nuestro esquema básico de cifrado de bloques es seguro, entonces esta función hash debería satisfacer las propiedades fundamentales de un cifrado seguro, entonces tendrá las propiedades básicas del cifrado función, es decir, características anticolisión y características de un solo elemento. La
función hash expandida satisface todas las características de la función hash de cifrado
. Un esquema de cifrado de bloques de la función hash, luego otros podrán atacarnos construyendo colisiones33
: Considere un esquema de intercambio de secretos de tipo "2 de 3".
a) Supongamos que el secreto compartido de Alice es (4,10/3), el secreto compartido de Bob es (6,2) y el secreto compartido de Charlie es (5,8/3). Disculpe, ¿cuál es el secreto compartido S? ¿Cuál es la expresión de la recta?
b. Supongamos que la operación utilizada es módulo 13, es decir, la expresión de la recta es en forma de ax+by =c( modalidad 13). Si la parte de Alice es (2,2), la parte de Bob es (4,9) y la parte de Charlie es (6,3), ¿cuál es el secreto compartido S? La expresión correspondiente a la línea recta ¿Qué es (forma de cálculo módulo 13)
a) El secreto compartido S es 6 y la expresión lineal es 2x+3y=18.
b.El secreto compartido S es 8, y la expresión de la línea recta correspondiente (forma de operación módulo 13) es 5x+6y=9 mod 13.
34: Recuerde que la definición que dimos anteriormente es: si el ataque conocido más efectivo contra un esquema de encriptación es un ataque de recuperación exhaustiva de claves, entonces el esquema de encriptación puede considerarse seguro. Si un esquema de encriptación es seguro y su espacio de claves es grande, entonces el ataque conocido más eficiente será computacionalmente inviable: la situación ideal para un esquema de encriptación práctico. Sin embargo, siempre existe la posibilidad de que surja un ataque nuevo e inteligente que convierta un esquema de cifrado previamente seguro en uno inseguro. Por el contrario, el sistema de intercambio de secretos basado en polinomios de Shamir es seguro en el sentido de la teoría de la información, lo que significa que no hay posibilidad de ataques directos. En otras palabras, el mecanismo de intercambio de secretos puede garantizar que siempre sea seguro.
a) Supongamos que tenemos un esquema de intercambio de secretos del tipo "2 de 2", en el que Alice y Bob comparten un secreto S. Disculpe, ¿por qué Alice no puede determinar nada sobre el secreto compartido a partir de su propia parte?
b) Supongamos que tenemos un esquema de intercambio de secretos del tipo "m de n". Explique por qué, entonces, cualquier conjunto de participantes m-1 no puede determinar nada sobre el secreto compartido S. Respuesta
:
a) Se requieren dos puntos para determinar la línea. Dado solo un valor de punto, cualquier S posible producirá una línea válida a través del punto de Alice, y no hay información adicional para decidir si la S supuesta es correcta.
b) Requiere m puntos para determinar la expresión de la recta. Dados solo los valores de m-1 puntos, cualquier posible S producirá una línea válida que pase por estos m-1 puntos, y no hay información adicional para decidir si la supuesta S es correcta.
35: Descargue el archivo visual.zip del sitio web del libro y descomprima el archivo descargado.
R. Utilice su navegador favorito para abrir el archivo visual.html y superponga con cuidado las dos copias. ¿Puedo preguntar qué imagen puedes ver?
B. Utilice el programa en un archivo de imagen diferente para crear las partes compartidas. Tenga en cuenta que la imagen seleccionada debe estar en formato de archivo gif. Proporcione imágenes de capturas de pantalla separadas que muestren la imagen original, las partes compartidas y el resultado de superponer las partes compartidas a su vez.
Respuesta:
a. Después de superponer las dos copias, puede ver la imagen de Alicia.
b. Creó las distintas partes modificando el archivo html. Dado que no encontramos el archivo visual.zip en el sitio web oficial, nuestro equipo consideró completar el contenido de esta tarea buscando ayuda de otros recursos en Internet.
36: Recuerde que la definición que dimos anteriormente es: si el ataque conocido más eficaz contra un esquema de cifrado es un ataque de recuperación exhaustiva de claves, entonces el esquema de cifrado puede considerarse seguro. Si un esquema de encriptación es seguro y su espacio de claves es grande, entonces el ataque conocido más eficiente será computacionalmente inviable; para un esquema de encriptación práctico, esta es la situación más Ideal. Sin embargo, siempre existe la posibilidad de que surja un ataque nuevo e inteligente que convierta un esquema de cifrado previamente seguro en uno inseguro. Por el contrario, el sistema visual de intercambio de secretos de Naor y Shamir es seguro en el sentido de la teoría de la información, lo que significa que no hay posibilidad de ataques directos, es decir, se puede garantizar que el sistema de intercambio de secretos siempre estará seguro (de acuerdo con nuestra seguridad por definición).
a) Considere el esquema de intercambio de secretos visuales del tipo “2 de 2” que se analiza en este capítulo. Disculpe, ¿por qué Alice no puede determinar nada sobre el secreto compartido a partir de su propia parte?
b. Disculpe, ¿cómo puede ser eficiente un esquema visual más generalizado de intercambio de secretos tipo "m out of n"?
c. Para A "m out esquema de intercambio de secretos visuales de tipo n". Cuando el valor de m es grande y el valor de n es pequeño, ¿cuál es el contraste de la imagen recuperada de acuerdo con el esquema de intercambio secreto? Cuando el valor de n es grande y el valor de m es pequeño, ¿cómo es el contraste de la imagen obtenida?¿Cuándo?¿Qué sucede cuando los valores de m y n son ambos grandes?
Respuesta
a Suponga que conoce un recurso compartido y considere cualquier píxel dado que se comparte. No tiene información sobre si el píxel original era blanco o negro, ya que ambos son
b. Tres de los tres esquemas se describen en el artículo "(3,3)-Vision Encryption Sharing Scheme for Hiding Three Secret Data" de Tsai y Wang.
c Al menos para los 3/3 formatos mencionados en la solución de la parte b, la resolución de la imagen recuperada tiene una cierta caída37
: suponga que tiene un archivo de texto y planea distribuirlo a varias personas diferentes. Describa un método sencillo de marca de agua no digital que pueda utilizar para colocar marcas de agua digitales distintas e invisibles en cada versión del documento. Tenga en cuenta que "invisible" en este contexto no significa que la marca de agua digital sea verdaderamente invisible, sino que la marca de agua digital no es obvia para el lector del documento.
Solución: cambiar el interlineado, cambiar el salto de línea, cambiar la perforación, etc. La diferencia es que cada línea se vuelve a escribir de una manera ligeramente diferente
38. Suponga que toma un curso de estudio que estipula: Use la versión impresa del manuscrito escrito por el instructor como libro de texto. Para simplificar, los maestros insertan una marca de agua invisible simple en cada versión de su manuscrito. El profesor quiere hacerlo de modo que, dada cualquier versión de su manuscrito, pueda determinar fácilmente quién recibió originalmente esa versión del manuscrito de la conferencia. El maestro planteó las siguientes preguntas a la clase y espero que todos puedan dar las soluciones correspondientes".
(i) Determine el esquema de marca de agua utilizado.
(i) Intente hacer que la marca de agua sea invisible.
Tenga en cuenta que aquí, el significado de " invisible" no significa que la marca de agua correspondiente sea realmente invisible a los ojos, sino que
no es fácil para los lectores de libros de texto ver o leer la marca de agua correspondiente
. que se pueden usar para generar marcas de agua, ¿qué son?
b. Disculpe, ¿cómo planea resolver el problema ()?
c. Suponiendo que haya resuelto el problema (), ¿cómo planea resolver el problema (i)?
d. Si no puede resolver el problema (), ¿qué tipo de método puede usar para resolver el problema (i) cuando el problema (
i) no se ha resuelto?
Respuesta: a. El maestro puede haber reescrito oraciones específicas o varias líneas nuevas variables De hecho, ied es el espaciado entre líneas (o palabras), el cambio de fuentes, la puntuación, etc., el esquema que usan los autores es crear dos versiones ligeramente diferentes de la primera versión de la página de cada capítulo (por ejemplo, usando cursiva o letra cursiva). , para comillas, o para alterar ligeramente la puntuación en la página, etc.). Con 13 capítulos, esto le da al autor la capacidad de crear 213 marcas de agua diferentes. Debido a que los autores eligieron diferentes marcas de agua, 60 manuscritos requerían tantas posiciones de bits como fuera posible. En efecto, este es un código de corrección de errores: bajo un cierto umbral, si una marca está dañada, todavía es posible asignar al estudiante correcto para que la marque. Solo había un par de (excelentes) estudiantes en el trabajo que resolvieron el problema juntos y necesitaban un par de pistas. Sería interesante si tal esquema pudiera aplicarse a los libros de texto reales. En cuanto a los manuscritos, este esquema sería mucho más fuerte para los libros, ya que los ataques mencionados a continuación serían más difíciles. Por supuesto, esto es difícil de aplicar a las ediciones impresas de libros, pero sí a los libros electrónicos. Tenga en cuenta que si hay una marca de agua en el libro de texto, el autor puede determinar quién es el responsable de estas versiones en pdf ilegales del libro que inevitablemente están disponibles a través de BitTorrent. . . .
B. La mejor manera es el ataque de colusión. Es decir, comparar cuidadosamente varias copias del manuscrito en busca de diferencias
C. Debido a que se sabe cómo funciona el esquema, es sencillo intercambiar páginas que contienen manuscritos con información clave de marcas de agua entre diferentes copias.
D. Pase las páginas al azar entre los manuscritos.
39. Al comienzo de este capítulo citamos parte de un poema de Lewis Carroll I.
En la segunda parte de la cita, aunque no se da título al pasaje, generalmente se
cita de la primera línea, "un pequeño bote bajo un cielo soleado".
a. Por favor proporcione el texto completo del poema.
b.El poema contiene un mensaje oculto. ¿Puedo preguntar qué es eso?
Respuesta: a. El barco en julio
está lleno de luz solar
y se aleja hacia el país de los sueños.

Los ojos de los niños cansados ​​e insomnes
saltaron de la cama,
las orejas empujaron la ventana

Escuche las cosas viejas en el día soleado,
el amor que nunca mira hacia atrás,
mire la escarcha otoñal en el rostro de Xia Zhuang.

Todavía persiste en los sueños,
pasando a través de la luz
, solo una sombra que no se toma de la mano.

Niños curiosos,
corazones incontrolables,
inconscientemente durmiendo en paz.

Yacen en el país de las hadas,
chupando el sol y la luna,
recordando el beso de despedida en pleno verano.

Esta búsqueda sin fin
está cubierta con luz dorada,
es la vida solo un sueño

Traducción 3
El sol poniente brilla en el pequeño bote de remos,
a la deriva lentamente, jugando lentamente,
medio día a finales de julio.

Los tres niños están apoyados en la almohada,
sus ojos están dispuestos a
escuchar sus oídos y quieren escuchar historias.

Ese año, el resplandor de la tarde ya se había disipado,
el sonido se volvió borroso y las sombras eran caóticas,
llegó el viento otoñal y la escena cambió.

Pero otro día
Alice, el niño pequeño,
siempre parece estar en mi corazón.

También hay niños que también piensan que
si sus ojos están dispuestos a tener picor de oídos
, deberían apretarlos para escuchar a los demás.

Feliz en los sueños, triste en los sueños,
los años fluyen en los sueños

Sigue el agua que fluye, enamórate de
la puesta de sol y mira la puesta de sol,
la vida es como un sueño no es malo
b, la primera letra de cada línea deletrea el nombre completo de la verdadera Alicia.
40. Esta pregunta examina el contenido del sistema de color RGB.
Demuestre que los siguientes dos colores RGB
(0x7E, 0x52, 0x90) y (0x7E, 0x52, 0x10) tienen
solo una diferencia de bit binario, pero el efecto visual es completamente diferente. Los otros dos colores:
(0xAB, 0x32, 0xF1) y (0xAB, 0x33, 0xF1)
también tienen solo una diferencia de bits binarios, pero es difícil distinguirlos a simple vista. Por favor trate de explicar este fenómeno, ¿por qué es así?
A partir de la disposición de posiciones de los bits binarios, ¿qué posiciones tienen la menor influencia? En otras palabras, ¿en qué posición se puede cambiar fácilmente el valor binario sin producir un cambio de color perceptible? Respuesta: a
:

Aunque hay una diferencia binaria entre los dos, en realidad son muy diferentes.

La diferencia entre los dos también es un bit binario, pero la diferencia en el efecto visual es muy pequeña. La razón principal es si el bit binario de la diferencia es alto o bajo. La diferencia entre el bit alto, como 0x90 y 0x10, causará una cierta diferencia de color debido a la gran diferencia en el valor absoluto.La cantidad de un color tiene una gran desviación, y la diferencia en bits bajos como 0x32 y 0x33, la diferencia del valor absoluto es solo 1, por lo que la diferencia de color es pequeño.
b: Desde la perspectiva de la disposición binaria, el bit inferior de cada canal de color, es decir, el último bit, tiene la menor influencia en el color sin ningún cambio perceptible.
41. Descargue el archivo de imagen alice.bmp del sitio web de este libro y considere las siguientes preguntas.
R. Utilice un editor hexadecimal para ocultar información sobre posibles ataques en el archivo.
b. Proporcione un informe de revisión de edición hexadecimal, que muestre qué bits binarios en el archivo de imagen se han cambiado y cuál es la ubicación específica. Y muestre los bits binarios correspondientes sin cambios.
c. Proporcione una captura de pantalla del archivo de imagen bmp original y una captura de pantalla del archivo de imagen bmp que contiene la información oculta.
Respuesta: Imagen bmp original:

Imágenes que contienen información oculta:

La información que está tratando de escribir en la imagen es un archivo txt, como se muestra en la figura: la
vista hexadecimal es:
dividir el archivo en 6, b, 6, f, 7, 4...
y escribir el bit más bajo de el valor de color de cada canal rgb en la parte de la imagen del archivo de mapa de bits, como se muestra en la figura:

A través de este método, el archivo 1.txt se escribe esteganográficamente en alice1.bmp, y la diferencia con la imagen original no se puede detectar a simple vista.
42.Descargue el archivo stego.zip del sitio web del libro y considere las siguientes preguntas:
a.Utilice el programa stegoRead para extraer los archivos ocultos contenidos en el archivo de imagen aliceStego.bmp.
B. Usando el programa, inserte un archivo en un archivo de imagen diferente (sin comprimir) e intente extraer la información de él nuevamente.
c. Proporcione una captura de pantalla de los archivos de imagen obtenidos en b, incluidos los archivos con información oculta y los archivos sin información oculta.
Respuesta: a. El archivo oculto es un archivo pdf, y el proceso de descifrado es como se muestra en la figura:

La parte de la imagen del pdf está vacía, pero hay una tabla de contenido, como se muestra en la imagen:

b. Cree un archivo que necesite esteganografía, como se muestra en la figura:
escriba:

Releer:

El resultado de la lectura es:

c. Las imágenes que no contienen información esteganográfica son:

Las imágenes que contienen información esteganográfica son:

43.Descargue el archivo stego.zip del sitio web de este libro y considere las siguientes preguntas:
a. Escriba un programa stegoDestroy.c cuya función sea destruir cualquier información oculta en el archivo, suponiendo que el método de ocultación de información adoptado es el método utilizado en el programa stego.c. El programa que escriba debe tomar un archivo bmp como entrada y generar un archivo bmp como salida. Visualmente, el archivo de salida del programa debe ser básicamente el mismo que el archivo de entrada.
B. Utilice el archivo de imagen aliceStego.bmp para probar su programa. Verifique que el archivo de imagen de salida no esté dañado. Disculpe, ¿qué información extrae el programa stegoRead.c de su archivo de salida?
Respuesta: a.Los datos RGB de orden inferior se pueden aleatorizar (o poner a cero). Alternativamente, los datos se pueden reemplazar con otra información seleccionada.
Si estos datos son aleatorios, será inútil.
44.Descargue el archivo stego.zip del sitio web de este libro y considere las siguientes preguntas:
a. Disculpe, ¿cómo el programa stego.c oculta información en el archivo de imagen?
b. Supongamos que usa el método en el programa stego .c para ocultar información, ¿cómo puede destruir la información oculta en un archivo de imagen sin dañar visualmente la imagen
? ¿Puedo preguntar, cómo puede esta tecnología de ocultación de información tener una mayor resistencia a este tipo de ataque de daño?
Respuesta: a. Coloque la información en los datos RGB de orden bajo
b. Aleatorice los bits, haga que los bits sean cero, use otras sustituciones de mensajes , etc. C. Use RGB de alto orden para almacenar imágenes.
45.Descargue el archivo stego.zip del sitio web de este libro y considere las siguientes preguntas:
a. Disculpe, ¿por qué este método de ocultación de información solo está disponible para archivos de imágenes sin comprimir?
b. Explique qué hacer con este método Qué tipo de modificación puede hacer que esté disponible para formatos de imagen comprimida, como archivos de imagen jpg.
Respuesta: a.Si la imagen está comprimida, se generará un nuevo esquema de codificación, por lo que será más difícil modificar los datos.
b.La modificación debe seguir el esquema de codificación de la imagen comprimida, lo que complicará el proceso.
46. ​​​​Escriba un programa que oculte información en un archivo de audio y pueda extraer la información oculta.
a. Describa en detalle su método para ocultar información.
b. Compare un archivo de audio sin información oculta con el mismo archivo, pero con información oculta. ¿Puedes notar la diferencia en la calidad del sonido entre los dos?
c. Discuta cuáles son los posibles métodos de ataque para su sistema de ocultación de información.
Respuesta: a. Los archivos de audio en formato WAV se almacenan como valores de 8 o 16 bits en Windows. Para muestras de 8 bits, esto significa que el rango de valores está entre Entre 0 y 255. Las muestras de 16 bits varían en valor entre 0 y 65535. Cuando S-Tools oculta información en archivos de audio en formato WAV, primero la encripta con una contraseña y luego decide dónde incrustar la información de acuerdo con la contraseña, y usa el método LSB (bits menos significativos) para reemplazar la información secreta con la menos bits importantes del archivo de audio portador Bits.
Por ejemplo, supongamos que un archivo de audio tiene los siguientes 8 bytes de información, que son: 132134137 141 121 101 7438 La representación binaria es: 10000100 10000110 10001001 10001101 01111001
01100101
01001010
00100110 Simplemente reemplace el LSB (bit menos significativo) del archivo de audio para ocultar información. Entonces la secuencia anterior se cambiará a:
133135 136 141 120 10174 39
La representación binaria es:
10000101 10000111 10001000 10001101 01111000 01100101 01001010 00100111
De esta manera, la información secreta se oculta en el archivo de audio portador, y el archivo de audio es casi indistinguible del archivo original en términos de efecto auditivo.
B. En circunstancias normales, no podemos sentir la diferencia entre los dos audios.
C. Los datos aleatorios se pueden insertar aleatoriamente en los datos de audio.
47. Escriba un programa para ocultar información en un archivo de video y poder extraer la información que ha ocultado.
a. Describa en detalle su método para ocultar información.
B. Compare un archivo de video sin información oculta con el mismo archivo pero con información oculta
. ¿Puedes discernir la diferencia en la calidad visual entre los dos?
c. Discuta, ¿cuáles son los posibles ataques a su sistema de ocultación de información?
Respuesta: A. La fisimografía es una nueva tecnología de camuflaje de información desarrollada a partir de la criptografía visual. La idea de la criptografía visual es ocultar la información confidencial a ocultar en dos o más imágenes de subclave a través de un algoritmo. Estas imágenes pueden almacenarse en un disco o imprimirse en transparencias. Hay puntos blancos y negros distribuidos aleatoriamente en cada imagen. Debido a la distribución aleatoria de puntos blancos y negros, sin importar qué método utilice una persona que sostiene una sola imagen, es imposible analizar cualquier información útil. Y si se superponen todas las imágenes, se puede recuperar la información confidencial original. Debido a que el método es simple y efectivo, su recuperación puede reconocerse solo a través del sistema visual humano sin muchos conocimientos de cálculo y criptografía, por lo que se usa más ampliamente. Cada imagen generada por esta tecnología tampoco puede ser una imagen de ruido aleatorio, sino una imagen que la gente común puede entender: hay diferentes textos o imágenes en la imagen, que no son diferentes de los materiales generales, siempre que una cierta cantidad de imágenes se superponen, luego el contenido original de cada imagen desaparecerá y aparecerá el contenido secreto oculto. En cuanto a una sola imagen, ya sea robada o filtrada, no traerá daños catastróficos a la seguridad de la información. Debido a la "legibilidad" de cada imagen, logra un mejor efecto de camuflaje y puede escapar fácilmente del cracking de los interceptores y atacantes. Además, bajo ciertas condiciones, se puede demostrar teóricamente que la tecnología es indescifrable, lo que permite una seguridad óptima.
B. No deberías notar ninguna diferencia, exactamente.
C. Escaneo, monitoreo, olfato.
48. Esta pregunta está dirigida a la aplicación de números aleatorios en la tecnología de encriptación.
a. Disculpe, ¿dónde se utilizan los números aleatorios en la tecnología de cifrado de claves simétricas?
b. Disculpe, ¿dónde se utilizan los números aleatorios en el algoritmo RSA y el sistema de intercambio de claves Difie-Hellman?
Respuesta: a. Claves simétricas e IV.
b.Selección aleatoria de números primos (RSA) y generación de exponentes aleatorios (DH).
49. De acuerdo con nuestra discusión en el artículo, los números aleatorios utilizados en criptografía deben ser impredecibles.
a. Disculpe, para aplicaciones de tecnología de encriptación, ¿por qué números aleatorios estadísticos (este tipo de número aleatorio se usa a menudo para simulación
campo de simulación) no es suficiente?
b. Supongamos que para un flujo de clave generado por un algoritmo de cifrado de flujo, si se proporciona un flujo de clave binaria de n bits
, todas las claves subsiguientes pueden determinarse En este sentido, decimos
que el el flujo de claves es predecible. Disculpe, ¿hay algún problema de seguridad real en esta situación? Explique por qué.
Respuesta:
a) Dada una secuencia de estos números, los números restantes en la secuencia pueden estar acotados. Si se utiliza una secuencia de este tipo como flujo de claves, un ataque de texto sin formato conocido podría ser devastador.
b. Sí, porque el atacante podría conocer algún texto sin formato, en cuyo caso conocería los bits del flujo de clave.

Supongo que te gusta

Origin blog.csdn.net/xuanyulevel6/article/details/126086288
Recomendado
Clasificación