Sie sind auf Seite 1von 8

Materia: Seguridad en Redes

Profesora: Verónica E. Bautista López

Integrantes Equipo 6:

Polo Vázquez José Luis


Pastor Hernández Ricardo
Gaspar Morales Dante
Notario Peláez Omar
DIAGRAMA DE TIEMPO DEL PROTOCOLO DE SEGURIDAD DE WHATSAPP

Cliente 1 Servidor de Cliente 2


(Iniciador) Whastapp (Reci piente)

1.- Instalar Whastapp


2.- Generar Ikey
3.- Generar Skey
4.- Generar OTkey
5.- Firmar (Ikey, Skey,
OTkey)
6.- Enviar (Firma (Ikey,
Skey, OTkey))

7.- Almacenar (Firma


(Ikey, Skey OTkey))
8.- Establecer sesión
9.- Solicitud (Cliente 2 (
Ikey, Skey, OTkey))

10.-Enviar (Cliente 2 (
Ikey, Skey, OTkey))

11.- Eiminar (Cliente 2 (


OTKey))
12.- Irecipent =
Cliente 2 (Ikey)

13.- Srecipent =
Cliente 2 (Skey)

14.- Orecipent=Cliente
2 (OTkey)

15.- Generar
Einitiator = Par de
claves efimeras
curve25519
16.-Generar
Iinitiator = Cliente 1
(Ikey)

17.- Calcular
master_secret =
ECDH(Iinitiator ,
Srecipient )
|| ECDH(Einitiator ,
Irecipient )
|| ECDH(Einitiator ,
Srecipient )
|| ECDH(Einitiator ,
Orecipient ).

18.- Generar HKDF


(Rkey, Ckeys)

19.- ICS = Einitiator,


Iinitiator, Cliente 1
(OTkey), Mkey
20.- Enviar (Mensaje (ICS))

21.- Calcular
master_secret2 =
ECDH(Iinitiator ,
Srecipient )
|| ECDH(Einitiator ,
Irecipient )
|| ECDH(Einitiator ,
Srecipient )
|| ECDH(Einitiator ,
Orecipient ).

22.- If
master_secret =
master_secret2
Descifrar (Mensaje)

23.- Eliminar Cliente 1


(OTkey)
24.-Enviar (Respuesta (ICS))
25.- Derivar llaves
HKDF (Rkey, Ckeys)
26.-Sesión Establecida {

27.-While (Mensajes)
{

28.- Message Key =


HMAC-SHA256
(Ckey, 0x01)

29.-Chain Key =
HMAC-SHA256
(Ckey, 0x02).
30.- Enviar (Mensaje (ICS))

31.- Descifrar
ICS((Mensaje))

32.- Message Key =


HMAC-SHA256
(CKey, 0x01)

33.-Chain Key =
HMAC-SHA256
(Ckey, 0x02).
34.- Enviar (Mensaje (ICS))

35.-Descifrar
(ICS((Mensaje))

36.- ephemeral_
secret =ECDH
(Ephemeralsender,
Ephemeralrecipient).

37.- CKey, RKey =


HKDF(Root Key,
ephemeral_secret).

38.- }
39.- While (Media)
{

40.- Generar
ephemeral 32 byte
AES256 key

41.- Generar
ephemeral 32 byte
HMACSHA256
key

42.- Mensajeme =
Encriptar AES256 key
(Media)

43.- Mtextc =
HMACSHA256
key (Mensajeme)

43.- IBS=
Guardar (Media)

44.- EIMensaje=
Encriptar
(Mensajeme, AES256
key, HMACSHA256
Key, IBS, Mtextc)
45.- Enviar (EIMensaje)

46.-Desifrar
(EIMensaje)

47.- Mtextc2 =
HMACSHA256
key (Mensajeme)

48.- If Mtextc =
Mtextc2 {
Desifrar AES256
key (Mensajeme)
}
49.- }
50.- While
(MensajeG) {

51.- Crear || Agregar


Grupo

52.- Generar Ckey 32


Byte

53.- Generar
C522Skey

54.- Sender key =


Ckey + C522Skey

55.- For i=0 to MDG


{Encriptar (Sender
Key)}
56.- Enviar (Sender Key) 57.- Distribuir (Sender
key)

57.- CMG=
Cifrar AES256
(MensajeG)

58.- Firmar C522Skey


(CMG)

59.- Enviar (CMG) 60.- Distribuir (CMG)

61.- }
62.-While (llamadas)
{
63.- Sesión establecida
64.- Generar SRTP
master secret de 32
bytes

65.- Generar SRTP


master secret (MELL)
66.- Enviar (MELL)

67.- Aceptar
(MELL)

68.- Llamada
encriptada
SRTP.

69.- }
70.- }
71.- Verificar Llaves
{
72.- Escanear código QR

73.- Comparar
Llaves
GLOSARIO DE TERMINOS

Criptográfica de obtención de claves


Derivación de una llave adecuada para su uso como entrada para un algoritmo de cifrado.
Normalmente, esto significa tomar una contraseña y ejecución a través de un algoritmo como
PBKDF2HMACo HKDF. Este proceso se conoce normalmente como estiramiento clave .

HKDF (a base de extracto de HMAC-y-Ampliar la función de obtención de claves) es adecuado para


derivar claves de un tamaño fijo utilizado para otras operaciones criptográficas.

BLOB (binary large object)


Un BLOB (objeto binario grande), pronunció BLAHB y a veces escrito en minúsculas, es un gran
archivo , normalmente una imagen o archivo de sonido, que se debe manipular (por ejemplo, cargar,
descargar o almacenar en una base de datos ) de una manera especial debido a su tamaño.

SRTP
define un perfil de RTP (Real-time Transport Protocol), con la intención de proporcionar cifrado,
autenticación del mensaje e integridad, y protección contra reenvíos a los datos RTP en aplicaciones
unicast y multicast.

Curve25519
En la criptografía , Curve25519 es una curva elíptica que ofrece 128 bits de seguridad y diseñado para
su uso con la curva elíptica Diffie-Hellman (ECDH) esquema de acuerdo de claves. Es una de las
curvas de ECC más rápido; que no está cubierta por ninguna de las patentes conocidas, y es menos
susceptible a la debilidad de los generadores de números aleatorios. La implementación de referencia
es software de dominio público .

Curva elíptica Diffie-Hellman ( ECDH )


Es un anónimo de key agreement protocol (acuerdo de claves protocolo) que permite que dos partes,
cada una con un par de claves una curva elíptica pública-privada, para establecer un secreto compartido
sobre un canal inseguro.

Identity Key Pair = Ikey


Signed Pre Key = SKey
One-Time Pre Keys = OTkey
Root Key = Rkey
Chains Keys = Ckeys
Messenge Key = Mkey
Informacíon de configuración de sesión = ICS
Encryptacion de la Información de media = EIMensaje
Indicador del blob store = IBS
Mensaje de media encriptado = Mensajeme
MAC del texto cifrado =Mtextc
Mesnsajes de grupo – MensajeG
Curve25519 Signature key = C522Skey
MDG = Miembros del grupo
Mensaje Encriptado de llamada = MELL