Está en la página 1de 21

FACULTAD DE INGENIIERIA Y SISTEMAS

EJERCICIOS
CICLO 01-2023
UNIDAD 4

Asignatura: CRIPTOGRAFIA Y Día y hora: LUNES Y MIERCOLES DE Grupo: 01


SEGURIDAD EN REDES 6:30 p.m. – 8:10 p.m.

Docente: Ing. Elmer Elias Chanchan, MIR E-mail: echanchan@ufg.edu.sv Aula:

Estudiante:

Apellidos Nombres Firma

Carrera: Carné: Fecha:

Indicaciones
➢ Se muestran ejemplos de ejercicios sobre los temas de Conjuntos,
Probabilidades, Binarios, Cifradores de bloque y Cifradores en Flujo, como
ejemplos de ejercicios a evaluarse durante el parcial.

➢ Como verán en el desarrollo del documento es muy extenso, pero esto se


debe a la descripción de cada paso, el desarrollo de los ejercicios será mucho
más corto.

➢ Al final de cada ejemplo hay un ejercicio que ustedes pueden resolver


siguiendo los ejemplos, estos no son evaluados, pero de estos se derivaran
los ejercicios del parcial.
FACULTAD DE INGENIIERIA Y SISTEMAS
EJERCICIOS
CICLO 01-2023
UNIDAD 4

Conjuntos
1- Sea U= {-4, -3, -2, -1, 0, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12},
sea A = { -1, -2, -2, -4, 0, 6, 7} y
sea B = {7, 6, 9, 10,11,0}
a. Encontrar A⋃B
- Primero debemos entender el símbolo, ⋃ indica la unión de los conjuntos, es
decir que los conjuntos formaran un nuevo conjunto con los elementos de
ambos conjuntos, por lo que el conjunto resultante quedará como:
A = { -1, -2, -2, -4, 0, 6, 7}
B = {7, 6, 9, 10,11,0}
A⋃B = { -1, -2, -4, 7, 6, 9, 10,11,0}, eliminamos del conjunto final
los elementos del conjunto que están repetidos.

b. Encontrar A∩B
- Primero debemos entender el símbolo, ∩ indica la intersección de los
conjuntos, es decir, el conjunto resultante deberá contener únicamente los
elementos que se encuentren en ambos conjuntos, por lo que el conjunto
resultante quedará como:
A = { -1, -2, -2, -4, 0, 6, 7}
B = {7, 6, 9, 10,11,0}
A∩B = {0, 6, 7}

c. Encontrar A’ y B’
- Primero debemos entender que el apostrofe indica complemento, es decir, el
conjunto resultante deberá contener los elementos que le faltan al conjunto
para ser el conjunto Universo, el conjunto resultante quedara de la siguiente
manera:
U= {-4, -3, -2, -1, 0, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12}
A = { -1, -2, -2, -4, 0, 6, 7}
A’ = {-3, 2, 3, 4, 5, 8, 9, 10, 11, 12}

U= {-4, -3, -2, -1, 0, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12}


B = {7, 6, 9, 10,11,0}
B’ = {-4, -3, -2, -1, 0, 2, 3, 4, 5, 8, 12}

d. Encontrar A⊕B
- Primero debemos saber que el símbolo, ⊕ indica o-exclusiva, lo que traduce
que una suma lógica con exclusividad, es decir la exclusividad del conjunto
FACULTAD DE INGENIIERIA Y SISTEMAS
EJERCICIOS
CICLO 01-2023
UNIDAD 4

se aplica encontrando UNICAMENTE los elementos del conjunto A que no


forman parte del conjunto B, y los elementos del conjunto B que no forman
parte del conjunto A, el conjunto resultante quedara de la siguiente manera:
A = { -1, -2, -2, -4, 0, 6, 7}
B = {7, 6, 9, 10,11,0}
A⊕B = {-1, -2, -4, 9, 10,11}

Durante el examen pueden existir ejercicios individuales, es decir, realizar un


ejercicio como los anteriores siendo cada literal un ejercicio diferente, o bien un solo
ejercicio donde se solicite emparejar los conjuntos resultantes con su simbología.

Ejercicio a resolver:
Sea U= {-4, -3, -2, -1, 0, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12}
A = {-1, -1, 4, 9, 10, 10, 8}
B = {2, 4, 6, 8, 10}
a. Encontrar A⋃B
b. Encontrar A∩B
c. Encontrar A’ y B’
d. Encontrar A⊕B
FACULTAD DE INGENIIERIA Y SISTEMAS
EJERCICIOS
CICLO 01-2023
UNIDAD 4

Probabilidad
1- Se depositan en una bolsa un grupo de pelotas de colores, siendo estas 3
amarillas, 2 rojas, 2 verdes y 1 azul, con estos datos encontrar lo siguiente:
a. Al introducir la mano a la bolsa y sacar una pelota, ¿Cuál es la
probabilidad que la pelota extraída sea una amarilla?
- Lo primero que debemos hacer es conocer todas las posibilidades de
resultado (posibilidad de resultado no es la probabilidad del mismo, sino la
cantidad de resultados diferentes que se puedan obtener en un evento).
o Definimos el número de probabilidades igualmente posibles como:
▪ , en números 8 posibles
resultados
- Lo segundo que se debe hacer es saber cuántos resultados de los resultados
posibles cumplen la condición solicitada:
o Definimos los resultados que cumplen la condición que “la pelota
extraída sea amarilla”.
▪ en números 3 posibles resultados
- Al final teniendo los datos anteriores podemos escribir la ecuación de
# 𝑑𝑒 𝑝𝑜𝑠𝑖𝑏𝑖𝑙𝑖𝑑𝑎𝑑𝑒𝑠 𝑞𝑢𝑒 𝑠𝑒 𝑐𝑢𝑚𝑝𝑙𝑎 𝑙𝑎 𝑐𝑜𝑛𝑑𝑖𝑐𝑖𝑜𝑛
probabilidad 𝑃(𝐴) = # 𝑑𝑒 𝑝𝑜𝑠𝑖𝑏𝑖𝑙𝑖𝑑𝑎𝑑𝑒𝑠, 𝑖𝑔𝑢𝑎𝑙𝑚𝑒𝑛𝑡𝑒 𝑝𝑟𝑜𝑏𝑎𝑏𝑙𝑒𝑠 , siendo A la
condición a cumplirse, quedando lo siguiente:
# 𝑑𝑒 𝑝𝑜𝑠𝑖𝑏𝑖𝑙𝑖𝑑𝑎𝑑𝑒𝑠 𝑞𝑢𝑒 𝑠𝑒 𝑐𝑢𝑚𝑝𝑙𝑎 𝑙𝑎 𝑐𝑜𝑛𝑑𝑖𝑐𝑖𝑜𝑛 3
o 𝑃(𝐴) = # 𝑑𝑒 𝑝𝑜𝑠𝑖𝑏𝑖𝑙𝑖𝑑𝑎𝑑𝑒𝑠, 𝑖𝑔𝑢𝑎𝑙𝑚𝑒𝑛𝑡𝑒 𝑝𝑟𝑜𝑏𝑎𝑏𝑙𝑒𝑠 = =8

▪ 𝑃(𝐴) = 3⁄8
▪ 𝑃(𝐴) = 37.5% de probabilidad que la pelota extraída sea
amarilla

b. Al extraer una pelota de la bolsa, ¿Cuál es la probabilidad que la pelota


NO sea de color azul?
- Para una segunda parte del mismo ejercicio, ya tenemos la primera parte
hecha:
o Definimos el número de probabilidades igualmente posibles como:
▪ en números 8 posibles
resultados
- Definimos nuevamente los resultados que cumplan la condición:
o Definimos los resultados que cumplen la condición que “la pelota
extraída NO sea azul”.
▪ en números 7 posibles
resultados
- Al final teniendo los datos anteriores podemos escribir la ecuación de
# 𝑑𝑒 𝑝𝑜𝑠𝑖𝑏𝑖𝑙𝑖𝑑𝑎𝑑𝑒𝑠 𝑞𝑢𝑒 𝑠𝑒 𝑐𝑢𝑚𝑝𝑙𝑎 𝑙𝑎 𝑐𝑜𝑛𝑑𝑖𝑐𝑖𝑜𝑛
probabilidad 𝑃(𝐴) = # 𝑑𝑒 𝑝𝑜𝑠𝑖𝑏𝑖𝑙𝑖𝑑𝑎𝑑𝑒𝑠, 𝑖𝑔𝑢𝑎𝑙𝑚𝑒𝑛𝑡𝑒 𝑝𝑟𝑜𝑏𝑎𝑏𝑙𝑒𝑠 , siendo A la
condición a cumplirse, quedando lo siguiente:
FACULTAD DE INGENIIERIA Y SISTEMAS
EJERCICIOS
CICLO 01-2023
UNIDAD 4

# 𝑑𝑒 𝑝𝑜𝑠𝑖𝑏𝑖𝑙𝑖𝑑𝑎𝑑𝑒𝑠 𝑞𝑢𝑒 𝑠𝑒 𝑐𝑢𝑚𝑝𝑙𝑎 𝑙𝑎 𝑐𝑜𝑛𝑑𝑖𝑐𝑖𝑜𝑛 7


o 𝑃(𝐴) = = =8
# 𝑑𝑒 𝑝𝑜𝑠𝑖𝑏𝑖𝑙𝑖𝑑𝑎𝑑𝑒𝑠, 𝑖𝑔𝑢𝑎𝑙𝑚𝑒𝑛𝑡𝑒 𝑝𝑟𝑜𝑏𝑎𝑏𝑙𝑒𝑠
▪ 𝑃(𝐴) = 7⁄8
▪ 𝑃(𝐴) = 87.5% de probabilidad que la pelota extraída NO sea
azul

2- Si un numero de la siguiente lista se elige aleatoriamente, ¿Cuál es la


probabilidad que ese número sea múltiplo de 5?
a. {32, 49, 55, 30, 56, 28, 50, 40, 40, 45, 3, 25}
- Lo primero que debemos hacer es conocer todas las posibilidades de
resultado.
o La lista contiene 12 números, es decir, 12 el número de probabilidades
igualmente posibles
- Lo segundo que se debe hacer es saber cuántos resultados de los resultados
posibles cumplen la condición solicitada:
o Definimos los resultados que cumplen la condición que “sean múltiplos
de 5”.
▪ Sabes que en matemática los numero terminados en “0” o “5”,
son múltiplos de 5
▪ {32, 49, 55, 30, 56, 28, 50, 40, 40, 45, 3, 25}
▪ {55, 30, 50, 40, 40, 45, 25}, en números tenemos 7 resultados
que cumplen la condición.
- Al final teniendo los datos anteriores podemos escribir la ecuación de
# 𝑑𝑒 𝑝𝑜𝑠𝑖𝑏𝑖𝑙𝑖𝑑𝑎𝑑𝑒𝑠 𝑞𝑢𝑒 𝑠𝑒 𝑐𝑢𝑚𝑝𝑙𝑎 𝑙𝑎 𝑐𝑜𝑛𝑑𝑖𝑐𝑖𝑜𝑛
probabilidad 𝑃(𝐴) = # 𝑑𝑒 𝑝𝑜𝑠𝑖𝑏𝑖𝑙𝑖𝑑𝑎𝑑𝑒𝑠, 𝑖𝑔𝑢𝑎𝑙𝑚𝑒𝑛𝑡𝑒 𝑝𝑟𝑜𝑏𝑎𝑏𝑙𝑒𝑠 , siendo A la
condición a cumplirse, quedando lo siguiente:
# 𝑑𝑒 𝑝𝑜𝑠𝑖𝑏𝑖𝑙𝑖𝑑𝑎𝑑𝑒𝑠 𝑞𝑢𝑒 𝑠𝑒 𝑐𝑢𝑚𝑝𝑙𝑎 𝑙𝑎 𝑐𝑜𝑛𝑑𝑖𝑐𝑖𝑜𝑛 7
o 𝑃(𝐴) = # 𝑑𝑒 𝑝𝑜𝑠𝑖𝑏𝑖𝑙𝑖𝑑𝑎𝑑𝑒𝑠, 𝑖𝑔𝑢𝑎𝑙𝑚𝑒𝑛𝑡𝑒 𝑝𝑟𝑜𝑏𝑎𝑏𝑙𝑒𝑠 = 12
▪ 𝑃(𝐴) = 7⁄12
▪ 𝑃(𝐴) = 58.33% de probabilidad al seleccionar un numero
aleatoriamente este sea múltiplo de 5

3- ¿Cuál es la probabilidad de al elegir un punto al azar en el circulo grande,


que este punto también se encuentre dentro del circulo pequeño?

- Lo primero que haremos en este caso, es emparejar los datos a una misma
unidad, en este caso conocemos la circunferencia de un circulo y el área de
otro, por lo que debemos poner ambos términos en área o en circunferencia.
FACULTAD DE INGENIIERIA Y SISTEMAS
EJERCICIOS
CICLO 01-2023
UNIDAD 4

*tamaños no a escala

Área circulo
pequeño = 16π

Circunferencia
circulo grande = 36π

o En este caso y dado que la condición hace referencia implícita al área


de los círculos, ya que indica “un punto en el circulo grande” y dentro
del circulo pequeño”, por lo que debemos dejar ambos términos en
términos del área de los círculos.
o En matemática existe una relación entre circunferencia y área, definida
por la siguiente formula:
▪ 𝐶 = 2𝜋𝑟, siendo C circunferencia, y r radio
▪ 𝐴 = 𝜋𝑟 2
▪ Circulo grande 𝐶 = 36𝜋
▪ Igualamos los términos C y C del circulo grande
• 36𝜋 = 2𝜋𝑟
▪ Despejamos r, ya que lo necesitamos para saber el área
36𝜋 36
• 𝑟 = 2𝜋 = 2
• 𝑟 = 18
▪ Ahora calculamos el área del circulo grande
• 𝐴 = 𝜋𝑟 2
• 𝐴 = 𝜋(18)2 = 324𝜋
o Ahora ya tenemos los datos para definir la probabilidad.
- Definimos el número de probabilidades igualmente posibles como:
o En este ejemplo el área del circulo grande será la totalidad de los
posibles resultados, ya que el circulo pequeño está dentro del circulo
grande, de aquí tenemos que:
▪ Las probabilidades igualmente posibles son 324π
- Definimos el número de posibles resultados
o En este ejemplo los posibles resultados serán el área del circulo
pequeño, por estar dentro del área del circulo grande, de lo anterior
tenemos que:
▪ Los posibles resultados que cumplen la condición son 16π
FACULTAD DE INGENIIERIA Y SISTEMAS
EJERCICIOS
CICLO 01-2023
UNIDAD 4

- Al final teniendo los datos anteriores podemos escribir la ecuación de


# 𝑑𝑒 𝑝𝑜𝑠𝑖𝑏𝑖𝑙𝑖𝑑𝑎𝑑𝑒𝑠 𝑞𝑢𝑒 𝑠𝑒 𝑐𝑢𝑚𝑝𝑙𝑎 𝑙𝑎 𝑐𝑜𝑛𝑑𝑖𝑐𝑖𝑜𝑛
probabilidad 𝑃(𝐴) = # 𝑑𝑒 𝑝𝑜𝑠𝑖𝑏𝑖𝑙𝑖𝑑𝑎𝑑𝑒𝑠, 𝑖𝑔𝑢𝑎𝑙𝑚𝑒𝑛𝑡𝑒 𝑝𝑟𝑜𝑏𝑎𝑏𝑙𝑒𝑠 , siendo A la
condición a cumplirse, quedando lo siguiente:
# 𝑑𝑒 𝑝𝑜𝑠𝑖𝑏𝑖𝑙𝑖𝑑𝑎𝑑𝑒𝑠 𝑞𝑢𝑒 𝑠𝑒 𝑐𝑢𝑚𝑝𝑙𝑎 𝑙𝑎 𝑐𝑜𝑛𝑑𝑖𝑐𝑖𝑜𝑛 16𝜋
o 𝑃(𝐴) = # 𝑑𝑒 𝑝𝑜𝑠𝑖𝑏𝑖𝑙𝑖𝑑𝑎𝑑𝑒𝑠, 𝑖𝑔𝑢𝑎𝑙𝑚𝑒𝑛𝑡𝑒 𝑝𝑟𝑜𝑏𝑎𝑏𝑙𝑒𝑠 = 324𝜋
▪ 𝑃(𝐴) = 16⁄324 = 4⁄81
▪ 𝑃(𝐴) = 4.94% ≅ 5% de probabilidad al seleccionar punto al
azar en el circulo grande que este punto también este dentro
del circulo pequeño.
Ejercicio a resolver:
Una urna tiene ocho bolas rojas, 5 amarilla y siete verdes. Encontrar las
probabilidades de los siguientes eventos:
a. Al sacar una bola a ciegas la bola es roja
b. Al sacar una bola a ciegas la bola es verde
c. Al sacar una bola a ciegas la bola es amarilla
d. Al sacar una bola a ciegas la bola no es roja
e. Al sacar una bola a ciegas la bola no es amarilla
FACULTAD DE INGENIIERIA Y SISTEMAS
EJERCICIOS
CICLO 01-2023
UNIDAD 4

Binarios
1- En el siguiente DWORD, realizar las siguientes conversiones
01001000 01101111 01101100 01100001

a. Convertir el Byte menos significativo a HEXADECIMAL


- Para convertir binarios a HEXADECIMAL debemos saber cuántos bits tiene
un HEXADECIMAL, para el caso sabemos que un HEXADECIMAL se forma
con 4 bits, en teoría de binarios este arreglo es conocido como NIBBLE, por
lo que un Byte tiene 2 NIBBLE’s, por consiguiente 2 HEXADECIMAL.
- Definimos según su posición en el DWORD cual Byte es el menos
significativo
4 3 2 1
01001000 01101111 01101100 01100001
msB tercer Byte segundo Byte lsB
lsb = less significative bit
msb = most significative bit
lsB = less significative Byte
msB = most significative Byte

de lo anterior definimos que el lsB es 01100001

- Ahora debemos separa el Byte en NIBBLE, para definir cada HEXADECIMAL


o 01100001
o 0110 0001

- Teniendo cada NIBBLE, lo convertimos a HEXADECIMAL, para esto usamos


la posición de cada bit y le asignamos un valor basados en una potencia base
2.
msb 3 2 lsb
bit x 23 bit x 22 bit x 21 bit x 20
0 0 0 1
0 x 23 0 x 22 0 x 21 1 x 20
0x8 0x4 0x2 1x1
0 0 0 1
Sumamos los resultados anteriores y tenemos:
0 + 0 + 0 + 1 = 110 esto es uno en decimal, que sabemos que uno en
decimal es lo mismo que uno en HEXADECIMAL por lo que el primer
HEXADECIMAL es 116
FACULTAD DE INGENIIERIA Y SISTEMAS
EJERCICIOS
CICLO 01-2023
UNIDAD 4

Aplicamos el mismo proceso al segundo NIBBLE


msb 3 2 lsb
bit x 2 3 bit x 2 2 bit x 2 1 bit x 20
0 1 1 0
0x2 3 1x2 2 1x2 1 0 x 20
0x8 1x4 1x2 0x1
0 4 2 0
Sumamos los resultados anteriores y tenemos:
0 + 4 + 2 + 0 = 610 esto es seis en decimal, que sabemos que seis en
decimal es lo mismo que seis en HEXADECIMAL por lo que el
segundo HEXADECIMAL es 616

- De aquí tenemos que el HEXADECIMAL de 011000012 es 6116

b. Convertir el Byte más significativo a OCTAL


- Para convertir binarios a OCTAL debemos saber cuántos bits tiene un
OCTAL, para el caso sabemos que los OCTAL se forman con 3 bits, y dado
que nuestro Byte únicamente tiene 8 bits, deberemos complementar con
ceros los bits que hagan falta para lograr el número en OCTAL.
- Separamos de 3 en 3 bits el byte empezando desde el lsb y finalizando en el
msb y complementando con ceros donde sea necesario
4 3 2 1
01001000 01101111 01101100 01100001
msB tercer Byte segundo Byte lsB
o 01001000
o 01001000
o 001 001 000
▪ A este arreglo de bits le agregamos un cero a la izquierda para
complementar los 3 bits necesarios para el Octal
- Teniendo cada arreglo de bits, lo convertimos a OCTAL, para esto usamos
la posición de cada bit y le asignamos un valor basados en una potencia base
2.
o Comenzamos con el primer trio de bits 000
msb 2 lsb
bit x 2 2 bit x 2 1 bit x 20
0 0 0
0 x 22 0 x 21 0 x 20
0x4 0x2 0x1
0 0 0
FACULTAD DE INGENIIERIA Y SISTEMAS
EJERCICIOS
CICLO 01-2023
UNIDAD 4

Sumamos los resultados anteriores y tenemos:


0 + 0 + 0 = 08 esto es cero en decimal, que sabemos que cero en
decimal es lo mismo que cero en OCTAL por lo que el primer OCTAL
es 08

o Repetimos el proceso para los dos tríos faltantes y tendremos:


001
msb 2 lsb
bit x 22 bit x 21 bit x 20
0 0 1
0x2 2 0x2 1 1 x 20
0x4 0x2 1x1
0 0 1
Sumamos los resultados anteriores y tenemos:
0 + 0 + 1 = 18 esto es uno en decimal, que sabemos que uno en
decimal es lo mismo que uno en OCTAL por lo que el segundo OCTAL
es 18

001
msb 2 lsb
bit x 2 2 bit x 2 1 bit x 20
0 0 1
0x2 2 0x2 1 1 x 20
0x4 0x2 1x1
0 0 1
Sumamos los resultados anteriores y tenemos:
0 + 0 + 1 = 18 esto es uno en decimal, que sabemos que uno en
decimal es lo mismo que uno en OCTAL por lo que el tercer OCTAL
es 18
- De aquí tenemos que el OCTAL de 010010002 es 1108

c. Convertir el segundo Byte menos significativo a complemento a 1

- Para convertir binarios a complemento a 1, simplemente debemos invertir los


bits, es decir convertir los 0’s en 1’s y los 1’s en 0’s.

- Tomamos el Byte indicado para comenzar a trabajarlo

4 3 2 1
01001000 01101111 01101100 01100001
msB tercer Byte segundo Byte lsB
FACULTAD DE INGENIIERIA Y SISTEMAS
EJERCICIOS
CICLO 01-2023
UNIDAD 4

- 01101100
- Invertimos los bits para obtener el complemento a 1.
o 01101100 → 10010011
- Si convertimos ambos binarios a decimal para ver mejor el cambio hecho
01101100
msb 7 6 5 4 3 2 lsb
bit x 2 7 bit x 2 6 bit x 2 5 bit x 2 4 bit x 2 3 bit x 2 2 bit x 2 1 bit x 20
0 1 1 0 1 1 0 0
0 x 27 1 x 26 1 x 25 0 x 24 1 x 23 1 x 22 0 x 21 0 x 20
0 x 128 1 x 64 1 x 32 0 x 16 1x8 1x4 0x2 0x1
0 64 32 0 8 4 0 0
Sumamos los resultados anteriores y tenemos:
0 + 64 + 32 + 0 + 8 + 4 + 0 + 0 = 10810 esto es uno en decimal
10010011
msb 7 6 5 4 3 2 lsb
bit x 2 7 bit x 2 6 bit x 2 5 bit x 2 4 bit x 2 3 bit x 2 2 bit x 2 1 bit x 20
1 0 0 1 0 0 1 1
1 x 27 0 x 26 0 x 25 1 x 24 0 x 23 0 x 22 1 x 21 1 x 20
1 x 128 0 x 64 0 x 32 1 x 16 0x8 0x4 1x2 1x1
128 0 0 16 0 0 2 1
Sumamos los resultados anteriores y tenemos:
128 + 0 + 0 + 16 + 0 + 0 + 2 + 1 = 14710 esto es uno en decimal

d. Convertir el tercer Byte a complemento a 2


- Para poder realizar el complemento a 2, debemos primero seguir los pasos
para el complemento a 1 del ítem anterior (usaremos datos diferentes por lo
que se hará todo el proceso de nuevo), una vez tengamos el complemento a
uno, únicamente debemos sumar (suma binaria) 1 al resultado de
complemento a uno.

- Tomamos el Byte indicado para comenzar a trabajarlo

4 3 2 1
01001000 01101111 01101100 01100001
msB tercer Byte segundo Byte lsB

- 01101111
- Invertimos los bits para obtener el complemento a 1.
o 01101111 → 10010000
- Al resultado le sumamos uno en binario
FACULTAD DE INGENIIERIA Y SISTEMAS
EJERCICIOS
CICLO 01-2023
UNIDAD 4

10010000 + 1
Lo colocamos en términos de suma
10010000 +
00000001=
10010001
- De aquí sabemos que el complemento a 2 de 01101111 es 10010001

e. Sumar el Byte menos significativo al Byte más significativo


- Para este ítem debemos primero saber cómo aplicar la suma binaria, la cual
se ejecuta bit a bit, solo aplicamos lo visto en esta tabla:

Tenemos el lsb y el msb


4 3 2 1
01001000 01101111 01101100 01100001
msB tercer Byte segundo Byte lsB
FACULTAD DE INGENIIERIA Y SISTEMAS
EJERCICIOS
CICLO 01-2023
UNIDAD 4

Los acomodamos para realizar la suma

Suma del primer bit

0 1 1 0 0 0 0 1
0 1 0 0 1 0 0 0
1

Suma del segundo bit

0 1 1 0 0 0 0 1
0 1 0 0 1 0 0 0
0 1
Suma del tercer bit

0 1 1 0 0 0 0 1
0 1 0 0 1 0 0 0
0 0 1
FACULTAD DE INGENIIERIA Y SISTEMAS
EJERCICIOS
CICLO 01-2023
UNIDAD 4

Suma del cuarto bit

0 1 1 0 0 0 0 1
0 1 0 0 1 0 0 0
1 0 0 1

Suma del quinto bit

0 1 1 0 0 0 0 1
0 1 0 0 1 0 0 0
0 1 0 0 1

Suma del sexto bit

0 1 1 0 0 0 0 1
0 1 0 0 1 0 0 0
1 0 1 0 0 1
FACULTAD DE INGENIIERIA Y SISTEMAS
EJERCICIOS
CICLO 01-2023
UNIDAD 4

Suma del séptimo bit

Este es el acarreo

1
0 1 1 0 0 0 0 1
0 1 0 0 1 0 0 0
0 1 0 1 0 0 1

Suma del octavo bit

Sumando el acarreo al octavo bit

1
0 1 1 0 0 0 0 1
0 1 0 0 1 0 0 0
1 0 1 0 1 0 0 1

- Con esto el resultado es:


o 01100001 + 01001000 = 10101001
o 97 + 72 = 169

f. Multiplicar el segundo Byte menos significativo con el tercer Byte


(menos significativo)
FACULTAD DE INGENIIERIA Y SISTEMAS
EJERCICIOS
CICLO 01-2023
UNIDAD 4

- Para realizar la multiplicación de binarios seguimos los mismos pasos que en


la multiplicación en decimal, cuando tenemos cantidades superiores a 9, es
decir el multiplicando se opera por cara bit del multiplicador y luego sumamos
los resultados, a continuación, haremos paso a paso este producto:
o Tenemos el lsb y el msb
4 3 2 1
01001000 01101111 01101100 01100001
msB tercer Byte segundo Byte lsB
Con esto tendremos que:
01101100 x 01101111
o Multiplicamos por el lsb del multiplicador
▪ 01101100 x 01101111
▪ 01101100 x 1 = 01101100
o Multiplicamos por el segundo bit del multiplicador, pero agregamos un
cero como lsb de esta respuesta
▪ 01101100 x 01101111
▪ 01101100 x 1 = 011011000
o Sumamos las respuestas
▪ 01101100 + 011011000 =101000100

01101100+
011011000=
101000100
o Multiplicamos por el tercer bit del multiplicador, pero agregamos dos
cero como lsb a la respuesta y esto se debe sumar al resultado de la
suma anterior
▪ 01101100 x 01101111
▪ 01101100 x 1 = 0110110000
▪ 101000100 + 0110110000
101000100+
0110110000=
1011110100
o Multiplicamos por el cuarto bit del multiplicador, pero agregamos tres
cero como lsb a la respuesta y esto se debe sumar al resultado de la
suma anterior
▪ 01101100 x 01101111
▪ 01101100 x 1 = 01101100000
▪ 1011110100+ 01101100000

1011110100+
01101100000=
11001010100
FACULTAD DE INGENIIERIA Y SISTEMAS
EJERCICIOS
CICLO 01-2023
UNIDAD 4

o Multiplicamos por el quinto bit del multiplicador, pero agregamos cuatro


cero como lsb a la respuesta y esto se debe sumar al resultado de la
suma anterior
▪ 01101100 x 01101111
▪ 01101100 x 0 = 000000000000
▪ 11001010100 + 000000000000

11001010100 +
000000000000=
011001010100

o Multiplicamos por el sexto bit del multiplicador, pero agregamos cinco


cero como lsb a la respuesta y esto se debe sumar al resultado de la
suma anterior
▪ 01101100 x 01101111
▪ 01101100 x 1 = 0110110000000
▪ 011001010100 + 0110110000000

011001010100+
0110110000000=
1001111010100

o Multiplicamos por el séptimo bit del multiplicador, pero agregamos seis


cero como lsb a la respuesta y esto se debe sumar al resultado de la
suma anterior
▪ 01101100 x 01101111
▪ 01101100 x 1 = 01101100000000
▪ 1001111010100 + 01101100000000

1001111010100+
01101100000000=
10111011010100

o Multiplicamos por el octavo bit del multiplicador, pero agregamos siete


cero como lsb a la respuesta y esto se debe sumar al resultado de la
suma anterior
▪ 01101100 x 01101111
▪ 01101100 x 1 = 000000000000000
▪ 10111011010100 + 000000000000000

10111011010100 +
000000000000000=
FACULTAD DE INGENIIERIA Y SISTEMAS
EJERCICIOS
CICLO 01-2023
UNIDAD 4

010111011010100
- Con el resultado tenemos un cero como msb, por lo que lo podemos eliminar
y podemos tener como respuesta de la multiplicación
o 01101100 x 01101111 = 010111011010100

Ejercicio a resolver:
En el siguiente DWORD, realizar las siguientes conversiones
100000 1001101
a. Convertir cada Byte a HEXADECIMAL
b. Convertir cada Byte a OCTAL
c. Sumar cada Byte
d. Complementar a 1 cada Byte
e. Complementar a 2 cada Byte

Block Cipher
En este ejemplo veremos un cifrador de bloque no estándar, es decir, se ha creado
para el propósito de mostrar de manera sencilla como funciona el cifrador.

En el siguiente diagrama tomamos un texto plano de 32 bits, lo separamos en


bloques de 4 bits, y una llave de 8 bits que separamos en bloques de 2 bits.
FACULTAD DE INGENIIERIA Y SISTEMAS
EJERCICIOS
CICLO 01-2023
UNIDAD 4

Plain text 32
Key 8 bits
bits

Separa el plain text en Separar key en parejas


NIMBLES (4bits) de bits (2bits), k0 – k4

Separa cada NIMBLE en R


parte izquierda (L) y F (R, k#) = R + k#
derecha (R)

L F

Cipher text
FACULTAD DE INGENIIERIA Y SISTEMAS
EJERCICIOS
CICLO 01-2023
UNIDAD 4

Plain text 32
Key 8 bits
bits

Separa el plain text en Separar key en parejas


NIMBLES (4bits) de bits (2bits), k0 – k4

Separa cada NIMBLE en L


parte izquierda (L) y F (R, k#) = L + k#
derecha (R)

R F

Cipher text

Cada bloque texto plano se separa en su parte izquierda y su parte derecha, la parte
derecha son entrada de una función que ejecuta una suma con el bloque de la llave
que ira cambiando en secuencia con cada bloque evaluado, el resultado de esta
función se le aplica una XOR con la parte izquierda del bloque. Luego se repite el
mismo proceso con invirtiendo las entradas de la función y la XOR para completar
el NIMBLE.

Para mostrar mejor este evento usaremos los siguientes datos:

Key = 01101110
Plain text = 01001000 01101111 01101100 01100001

- Usaremos el primer byte del PT


o 01100001
o Lo separamos en NIMBLE
▪ 0110 0001
o Separamos el NIMBLE menos significativo en partes izquierda y
derecha
FACULTAD DE INGENIIERIA Y SISTEMAS
EJERCICIOS
CICLO 01-2023
UNIDAD 4

▪ L = 00
▪ R = 01
- Tomamos la llave y la separamos en bloques de 2 bits
o Key = 01101110
▪ K0 = 10
▪ K1 = 11
▪ K2 = 10
▪ K3 = 01
- Aplicamos la función F (R, k#) = R + k#, el resultado es sin acarreo
o F (R, k0) = R + k0
o F (R, k0) = 01 + 10
o F (R, k0) = 11
- Aplicamos XOR al resultado y tendremos
o L⊕F = cL
o 00⊕11 = 11
- Aplicamos el proceso para obtener el lado izquierdo del texto cifrado
o Separamos el NIMBLE menos significativo en partes izquierda y
derecha
▪ L = 00
▪ R = 01
- Tomamos la llave y la separamos en bloques de 2 bits
o Key = 01101110
▪ K0 = 10
▪ K1 = 11
▪ K2 = 10
▪ K3 = 01
- Aplicamos la función F (L, k#) = L + k#, el resultado es sin acarreo
o F (L, k0) = L + k0
o F (L, k0) = 00 + 10
o F (L, k0) = 10
- Aplicamos XOR al resultado y tendremos
o R⊕F = cR
o 01⊕10 = 11
- Con estos resultados podemos tener el primero NIMBLE cifrado de PT
o cR + cL = c
o 1111 = c
▪ PT = 0001, sin cifra
▪ CT = 1111, cifrado

Ejercicios:
- Siguiendo el encriptado del primer NIMBLE, encriptar el NIMBLE y los Byte
restantes.

También podría gustarte