E2EE Actividad3
E2EE Actividad3
E2EE Actividad3
Ilustración 1 E2EE...........................................................................................................................3
Ilustración 2.....................................................................................................................................4
Ilustración 3.....................................................................................................................................5
Ilustración 4.....................................................................................................................................8
Ilustración 5...................................................................................................................................11
Ilustración 6...................................................................................................................................12
Ilustración 7...................................................................................................................................12
¿QUÉ ES LA ENCRIPTACION EXTREMO A EXTREMO?
La encriptación extremo a extremo también conocida en ingles por su siglas E2EE End to End
Encription, es un concepto de comunicación segura donde la información digital (mensaje,
archivo) se codifica desde el momento en que se transmite del punto A hasta llegar al punto B,
haciéndolo ilegible y desencriptable si importar el número de saltos que realice durante su
proceso de transmisión.
Ilustración 1 E2EE
ACTIVIDAD PRACTICA.
Para la siguiente actividad se pretende configurar un socket server con comunicación TLS
usando Linux Centos como Sistema Operativo virtualizado mediante VirtualBox y PHP como
lenguaje de programación.
Una vez descargado el VirtualBox e instalado el Sistema Operativo, se procede con la instalación
del lenguaje de programación PHP, pero para es necesario contar con unos prerequisitos los
cuales se describen a continuación:
Paso 1
Ilustración 2
Paso 2
Ilustración 3
Ya con los prerequisitos cumplidos, se procede con la instalacion del leguaje de programación
PHP
Paso 3
Actualmente contamos con un entorno base, por lo cual procedemos a apagar la maquina virtual
para clonarla y de esta forma simular la comunicación entre usuario A y usuario B donde a
usuario A se le asigna la dirección IP 192.168.1.31 y al usuario B se le asigna la dirección IP
192.168.1.32
Una vez contamos con la llave pública y la llave privada, procedemos a compartir la llave
pública con el usuario B:192.168.1.32
<?php
$address = '192.168.1.31';
$port = 443;
$cert = '/home/ssl/192.168.1.31.cer';
$key = '/home/ssl/private.key';
$context = stream_context_create();
echo "PHP Socket Server started at " . $address . " " . $port . ", at ". date(
'Y-m-d H:i:s' ) ."\n";
// Se crea ciclo para mantener abierto y disponible el socket
while (true) {
/* Accept incoming requests and handle them as child processes */
$client = stream_socket_accept($server);
stream_socket_enable_crypto($client, true,
STREAM_CRYPTO_METHOD_TLS_SERVER);
// Se desbloquea la conexion
stream_set_blocking($client, false);
$new = $input;
fclose($client);
}
<?php
//Definimos la IP, puerto y llave publica del usuario A a quien vamos a enviar
el mensaje
$host = '192.168.1.31';
$port = 443;
$timeout = 30;
$cert = '/home/socket/192.168.1.31.cer';
$context = stream_context_create(
[ 'ssl'=> [ 'local_cert'=> $cert, "crypto_method" =>
STREAM_CRYPTO_METHOD_TLS_CLIENT ] ]
);
fwrite($socket, $mensaje."\n");
echo stream_socket_recvfrom($socket,8192);
fclose($socket);
} else {
echo "ERROR: $errno - $errstr\n";
}
EVIDENCIAS.
Ilustración 5
Se envía el mensaje encriptado "Hola usuario A este es un saludo del usuario B" desde la
maquina que presenta al usuario B::192.168.1.32
Ilustración 6
El usuario usuario A puede leer el mensaje "Hola usuario A este es un saludo del usuario B"
enviado por el usuario B
Ilustración 7
CONCLUSIONES.
Como bien sabemos, la información es el activo mas importante en esta nueva era
llamada la era digital ya sea para una organización sin importar su tamaño o para una
persona natural y cada día son mas las personas que se suman a transaccionar a través de
canales virtuales, y estas transacciones viajan por un medio inseguro que es la Internet; es
por esta razón que cada vez son mas necesarios los controles que ayuden a proteger esta
información haciéndola ilegible durante su proceso de transmisión pero haciéndola
legible hasta el momento en que se garantice llegar a su destinatario.