0 00:00:00,000 --> 00:00:08,000 ¿Qué pasa, chicos? A ver, en este vídeo os voy a explicar un poquillo cómo funciona el cifrado asimétrico. 1 00:00:08,000 --> 00:00:17,000 Vale, como sabéis, cada persona tiene un par de claves. Una clave pública y una clave privada. 2 00:00:17,000 --> 00:00:25,000 Esa clave pública se puede mover a todo el mundo, como os decía en clase, como si la dais en una tarjeta por la calle, 3 00:00:25,000 --> 00:00:28,000 pero la clave privada no se debe compartir con nadie. 4 00:00:28,000 --> 00:00:39,000 Es decir, por ejemplo, si yo quiero enviar un archivo cifrado a María, tendré que cifrar ese fichero con la clave pública de María 5 00:00:39,000 --> 00:00:44,000 y María, en destino, ya descifrará ese fichero con su clave privada. 6 00:00:44,000 --> 00:00:52,000 Bueno, yo tengo dos máquinas. Una que es Calilinux y otra que es 1.14. 7 00:00:53,000 --> 00:01:03,000 Lo primero que voy a hacer en el Calilinux es crear el par de claves pública y privada que tiene la persona que va a estar aquí. 8 00:01:03,000 --> 00:01:05,000 En este caso, Luis, soy yo. 9 00:01:05,000 --> 00:01:14,000 Para crear ese par de claves pública y privada podemos utilizar el comando gpg, evidentemente, con el parámetro genkey. 10 00:01:15,000 --> 00:01:18,000 En este caso nos pide nombre y apellidos. 11 00:01:25,000 --> 00:01:35,000 Genera entropía al generar la clave, es decir, que va a tener en cuenta los procesos que se están ejecutando en el ordenador para generar esa clave. 12 00:01:35,000 --> 00:01:40,000 Yo voy a poner una contraseña, aconsejable que sea de mínimo ocho caracteres. 13 00:01:45,000 --> 00:01:57,000 Aceptamos, esperamos unos segundos y ya vemos como si hago gpg-k, que es para consultar las claves públicas de mi anillo de claves. 14 00:01:57,000 --> 00:02:00,000 Vemos, ahí está, la clave de Lusbon. 15 00:02:00,000 --> 00:02:09,000 Y si hago un gpg-k, sale la misma clave, pero haciendo referencia a la parte privada, a la clave privada. 16 00:02:10,000 --> 00:02:18,000 Como veis, en este comando no nos ha preguntado ni el algoritmo utilizado, ni el tamaño de la clave, etc. 17 00:02:18,000 --> 00:02:25,000 Entonces, lo que vamos a hacer es utilizar gpg-fullgenerate-k, que nos da muchas más opciones a la hora de generar nuestro par de claves. 18 00:02:25,000 --> 00:02:32,000 Lo primero que vamos a hacer, entonces, es eliminar el par de claves pública-privada que hemos creado. 19 00:02:32,000 --> 00:02:42,000 Muy importante, con gpg-deletekeys nos permite borrar las claves públicas. 20 00:02:42,000 --> 00:02:47,000 Voy a intentar borrar la clave pública asociada a Lusbon. 21 00:02:47,000 --> 00:02:52,000 Me dice que primero tengo que borrar la clave privada. 22 00:02:52,000 --> 00:03:02,000 En este caso, lo voy a identificar con el nombre de usuario que he puesto. 23 00:03:02,000 --> 00:03:05,000 Como hay un espacio, por eso lo pongo entre comillas. 24 00:03:05,000 --> 00:03:09,000 ¿Deseas eliminar esta clave del anillo? Sí. 25 00:03:09,000 --> 00:03:13,000 Me pide multitud de confirmaciones. 26 00:03:13,000 --> 00:03:18,000 Y si yo hago un gpg-k para ver las claves privadas, vemos que no hay nada. 27 00:03:19,000 --> 00:03:24,000 Y ahora sí, si hago un gpg-k, la clave pública se mantiene. 28 00:03:24,000 --> 00:03:27,000 Voy a borrar esa clave pública. 29 00:03:27,000 --> 00:03:31,000 Ahora, por ejemplo, la voy a mencionar por el identificador. 30 00:03:31,000 --> 00:03:34,000 Copiar. Pegar. 31 00:03:34,000 --> 00:03:37,000 Borrarla, sí. Hago un gpg-k. 32 00:03:37,000 --> 00:03:39,000 Y ya no tenemos nada. 33 00:03:40,000 --> 00:03:45,000 Para ver las claves privadas, no hay nada. 34 00:03:45,000 --> 00:03:49,000 Ahora la voy a crear con fullgeneratekey. 35 00:03:49,000 --> 00:03:52,000 Siempre utiliza el tabulador que os permite completar los comandos. 36 00:03:52,000 --> 00:03:59,000 Y así os será mucho más fácil utilizar gpg. 37 00:03:59,000 --> 00:04:04,000 Con fullgeneratekey nos va a dar muchas más opciones a la hora de crear las claves. 38 00:04:04,000 --> 00:04:07,000 En este caso, nos está diciendo el algoritmo. 39 00:04:07,000 --> 00:04:09,000 Por defecto es rsa y rsa. 40 00:04:09,000 --> 00:04:12,000 Pero yo voy a utilizar la 2. 41 00:04:12,000 --> 00:04:14,000 Luego nos pregunta el tamaño de la clave. 42 00:04:14,000 --> 00:04:17,000 Yo voy a poner 1024. 43 00:04:17,000 --> 00:04:19,000 Y aquí tenemos la caducidad. 44 00:04:19,000 --> 00:04:21,000 Si ponemos un 0, no caduca nunca. 45 00:04:21,000 --> 00:04:25,000 Si yo, por ejemplo, pongo un 8 y un w, caduca en 8 semanas. 46 00:04:25,000 --> 00:04:27,000 Por ejemplo, yo voy a poner que caduca en 7 años. 47 00:04:27,000 --> 00:04:31,000 7 y la y de years, como me ha indicado más arriba. 48 00:04:31,000 --> 00:04:33,000 ¿Es correcto? 49 00:04:33,000 --> 00:04:35,000 ¿Que caduca en 2027? Sí. 50 00:04:35,000 --> 00:04:38,000 Nombre y apellidos. Como es mía, luisbueno. 51 00:04:38,000 --> 00:04:42,000 Dirección de correo, luis.gmail.com 52 00:04:42,000 --> 00:04:47,000 También nos permite un comentario. Por ejemplo, clave luis. 53 00:04:47,000 --> 00:04:49,000 Todo correcto. 54 00:04:49,000 --> 00:04:51,000 Genera entropía. 55 00:04:54,000 --> 00:04:56,000 Una vez hemos introducido la clave. 56 00:04:59,000 --> 00:05:01,000 Y ya la tenemos creada. 57 00:05:01,000 --> 00:05:06,000 Hago un clear y veo gpg-k y gpg-k. 58 00:05:06,000 --> 00:05:10,000 Y ya tenemos nuestro par de claves. 59 00:05:10,000 --> 00:05:13,000 Pública y privada. 60 00:05:13,000 --> 00:05:15,000 Ahora voy a destino. 61 00:05:15,000 --> 00:05:17,000 Aquí trabaja María. 62 00:05:17,000 --> 00:05:20,000 Vemos que no tiene clave pública ni clave privada. 63 00:05:20,000 --> 00:05:23,000 Voy a hacer un gpg-genkey. 64 00:05:24,000 --> 00:05:31,000 En ubuntu con genkey nos da todas las opciones posibles. 65 00:05:31,000 --> 00:05:33,000 Voy a ir al 2. 66 00:05:33,000 --> 00:05:35,000 2024. 67 00:05:35,000 --> 00:05:37,000 7 años también. 68 00:05:37,000 --> 00:05:39,000 Si es correcto. 69 00:05:39,000 --> 00:05:41,000 María. 70 00:05:43,000 --> 00:05:46,000 Voy a poner sin tilde por si nos da algún tipo de error. 71 00:05:46,000 --> 00:05:48,000 María.gmail.com 72 00:05:48,000 --> 00:05:50,000 Comentario. 73 00:05:50,000 --> 00:05:52,000 Clave. María. 74 00:05:53,000 --> 00:05:55,000 Vale. 75 00:06:00,000 --> 00:06:04,000 Acordaos de la clave que metéis, porque si no, mal asunto. 76 00:06:04,000 --> 00:06:07,000 Genera esa entropía para generar las claves. 77 00:06:10,000 --> 00:06:14,000 Nos dice que hagamos algún otro trabajo para generar una entropía. 78 00:06:14,000 --> 00:06:17,000 Por ejemplo, yo voy a actualizar el correo. 79 00:06:23,000 --> 00:06:25,000 Ya viene un libreoffice. 80 00:06:36,000 --> 00:06:40,000 Necesita 186 bits más para generar la clave. 81 00:06:45,000 --> 00:06:48,000 A ver si de esta manera ya nos ha generado la clave. 82 00:06:48,000 --> 00:06:52,000 Pero bueno, en Kali-Ninus esto nos debería pasar. 83 00:06:53,000 --> 00:06:55,000 Vamos a ver. 84 00:07:08,000 --> 00:07:10,000 Vale. 85 00:07:10,000 --> 00:07:12,000 Pues mira, ya ha generado otra vía. 86 00:07:12,000 --> 00:07:17,000 Es decir, procesos que se juntan en el ordenador que ayudan a generar esa clave. 87 00:07:18,000 --> 00:07:20,000 Voy a cerrar. 88 00:07:27,000 --> 00:07:31,000 Ya nos ha generado ese par de claves. 89 00:07:31,000 --> 00:07:33,000 Pública y privada. 90 00:07:33,000 --> 00:07:35,000 Hacemos un clear y vemos. 91 00:07:40,000 --> 00:07:42,000 Ya tenemos la clave de María. 92 00:07:42,000 --> 00:07:44,000 Como os he dicho antes, 93 00:07:44,000 --> 00:07:47,000 yo, Luis, quiero enviar un fichero a María. 94 00:07:47,000 --> 00:07:51,000 Es decir, necesitaría la clave pública de María. 95 00:07:51,000 --> 00:07:55,000 En este caso, María tiene que compartir su clave pública con todo el mundo. 96 00:07:55,000 --> 00:07:58,000 Lo primero que tenemos que hacer es exportar esa clave de María. 97 00:08:00,000 --> 00:08:03,000 gpg-output 98 00:08:03,000 --> 00:08:09,000 Es decir, estamos diciendo dónde queremos guardar la clave de María. 99 00:08:10,000 --> 00:08:14,000 Y, en este caso, decimos qué clave. 100 00:08:14,000 --> 00:08:17,000 Oye, yo quiero clave María. 101 00:08:17,000 --> 00:08:21,000 Como vamos a exportarlo en la privada, nunca se envía. 102 00:08:21,000 --> 00:08:28,000 La herramienta es inteligente y va a coger la clave pública. 103 00:08:28,000 --> 00:08:31,000 Yo he puesto gpg, porque ahora mismo está en formato binario. 104 00:08:31,000 --> 00:08:35,000 Pero si yo pusiera aquí delante, --armor 105 00:08:36,000 --> 00:08:39,000 y aquí pondría ASC 106 00:08:41,000 --> 00:08:45,000 la clave me la exporta en modo AXI. 107 00:08:45,000 --> 00:08:48,000 Si hago un cat clave María, ahí la tenemos. 108 00:08:48,000 --> 00:08:50,000 Esta es la clave de María. 109 00:08:50,000 --> 00:08:56,000 Entonces, como Luis necesita esta clave pública de María para cifrar el fichero, 110 00:08:56,000 --> 00:08:58,000 pues se lo vamos a enviar. 111 00:08:58,000 --> 00:09:01,000 Podemos utilizar servidores de claves. 112 00:09:01,000 --> 00:09:03,000 Siempre medios seguros. 113 00:09:03,000 --> 00:09:08,000 Como estamos haciendo una práctica, nosotros vamos a utilizar el correo electrónico. 114 00:09:08,000 --> 00:09:17,000 Me lo envío a mí mismo para pasarme los datos entre máquinas virtuales. 115 00:09:21,000 --> 00:09:26,000 Ahora yo voy a mi Kalilinux. 116 00:09:26,000 --> 00:09:28,000 Actualizo. 117 00:09:29,000 --> 00:09:33,000 Y aquí la tenemos. 118 00:09:33,000 --> 00:09:35,000 La descarga. 119 00:09:38,000 --> 00:09:41,000 Estamos en descargas y ahí tenemos clave María. 120 00:09:41,000 --> 00:09:46,000 Como hemos dicho antes, yo como Luis no me he comunicado con nadie todavía. 121 00:09:46,000 --> 00:09:52,000 Y en mi anillo de claves solo tengo mi clave propia. 122 00:09:52,000 --> 00:09:55,000 Entonces lo que voy a hacer es importar. 123 00:09:55,000 --> 00:09:59,000 Voy a añadir la clave de María a mi anillo de claves. 124 00:09:59,000 --> 00:10:01,000 A mi Kalilinux, que también se llama. 125 00:10:01,000 --> 00:10:04,000 Entonces, gpgimport y clavemaria.sc. 126 00:10:04,000 --> 00:10:06,000 Esto es muy fácil. 127 00:10:06,000 --> 00:10:10,000 Ya me dice que ha procesado una clave y ha importado otra. 128 00:10:10,000 --> 00:10:12,000 Ha importado la misma. 129 00:10:12,000 --> 00:10:17,000 Fijaros, ahora hago gpg-k, pues ahí tenemos las dos claves públicas. 130 00:10:17,000 --> 00:10:20,000 La de Luis y la de María. 131 00:10:20,000 --> 00:10:25,000 Si hago un gpg-k, que son las privadas, solo me aparece la de Luis. 132 00:10:28,000 --> 00:10:30,000 Ahora yo lo que voy a hacer es generar un fichero elco. 133 00:10:30,000 --> 00:10:38,000 Y voy a poner, por ejemplo, esta información es confidencial. 134 00:10:40,000 --> 00:10:45,000 Y lo guardo en un fichero, yo que sé, info.txt. 135 00:10:45,000 --> 00:10:50,000 Y ya sabéis, si hacéis un cat, por favor, ecocat ls cd. 136 00:10:50,000 --> 00:10:52,000 Que quede claro cómo se utilizan estos comandos. 137 00:10:52,000 --> 00:10:54,000 Ahí tenemos el fichero. 138 00:10:54,000 --> 00:11:00,000 Yo ahora lo que voy a hacer es cifrar esta información con la clave pública de María. 139 00:11:00,000 --> 00:11:07,000 Tengo que hacer un gpg, como lo que quiero hacer es encriptar. 140 00:11:07,000 --> 00:11:13,000 Un encrypt, menos menos recipient. 141 00:11:14,000 --> 00:11:17,000 Ahora lo que tengo que decir es qué clave voy a utilizar. 142 00:11:17,000 --> 00:11:22,000 Puedo poner clave María o el correo o el identificador, lo que queramos. 143 00:11:22,000 --> 00:11:26,000 En este caso yo voy a poner el correo, maria.gmail.com. 144 00:11:26,000 --> 00:11:31,000 Y por último tengo que decir el fichero que quiero encriptar. 145 00:11:31,000 --> 00:11:33,000 En este caso, info.txt. 146 00:11:33,000 --> 00:11:37,000 Si lo dejamos así, nos haría un encriptado en binario. 147 00:11:37,000 --> 00:11:40,000 Pero si pusiéramos aquí adelante, menos menos armor. 148 00:11:41,000 --> 00:11:43,000 Fijaros, lo voy a hacer primero en binario. 149 00:11:47,000 --> 00:11:53,000 Y me dice usar esta clave, nos dice que tengamos en cuenta la seguridad. 150 00:11:59,000 --> 00:12:02,000 Tenemos el fichero info.txt.gpg. 151 00:12:03,000 --> 00:12:05,000 ¿Lo veis? La información en binario. 152 00:12:06,000 --> 00:12:11,000 Pero si yo hago gpg menos menos armor. 153 00:12:15,000 --> 00:12:17,000 Y luego encript que estamos encriptando. 154 00:12:17,000 --> 00:12:21,000 El recipient, indicamos la clave pública que utilizamos. 155 00:12:21,000 --> 00:12:22,000 Y por último el fichero. 156 00:12:22,000 --> 00:12:29,000 Lo que le estamos diciendo es que el fichero encriptado o cifrado lo generé en formato ASCII. 157 00:12:30,000 --> 00:12:32,000 Y ahora vais a ver cómo. 158 00:12:32,000 --> 00:12:33,000 Ahí tenemos. 159 00:12:33,000 --> 00:12:39,000 Info.txt.ascii.asc o info.txt.gpg en binario. 160 00:12:41,000 --> 00:12:44,000 Como esta información es la que queremos hacer llegar a María. 161 00:12:44,000 --> 00:12:47,000 Que está cifrada con su clave pública. 162 00:12:47,000 --> 00:12:49,000 Pues la hacemos llegar por correo. 163 00:12:54,000 --> 00:12:55,000 Envío a los dos. 164 00:12:59,000 --> 00:13:07,000 Voy a Ubuntu, es decir al ordenador de María. 165 00:13:19,000 --> 00:13:20,000 Y los descargo. 166 00:13:25,000 --> 00:13:26,000 Save file. 167 00:13:30,000 --> 00:13:31,000 Vale. 168 00:13:31,000 --> 00:13:32,000 Vuelvo al terminal. 169 00:13:35,000 --> 00:13:36,000 Aquí en descargas voy a hacer un clear. 170 00:13:36,000 --> 00:13:39,000 Aquí en descargas ya vemos que tenemos la clave de antes de María. 171 00:13:39,000 --> 00:13:43,000 Y los dos ficheros que me ha enviado Luis. 172 00:13:43,000 --> 00:13:45,000 Pues yo voy a coger uno de ellos. 173 00:13:45,000 --> 00:13:47,000 Y le voy a descifrar por ejemplo el ASCII. 174 00:13:47,000 --> 00:13:49,000 Entonces es igual que en el modo simmetrio. 175 00:13:49,000 --> 00:13:53,000 gpg menos de info.txt.asc. 176 00:13:55,000 --> 00:13:56,000 Fijaros. 177 00:13:56,000 --> 00:13:57,000 Me pide la clave. 178 00:13:57,000 --> 00:13:58,000 Para mayor seguridad. 179 00:13:58,000 --> 00:14:00,000 Es decir, la clave privada de María. 180 00:14:00,000 --> 00:14:02,000 Y ese par de claves de María. 181 00:14:02,000 --> 00:14:03,000 ¿Qué clave tiene? 182 00:14:03,000 --> 00:14:04,000 Entonces yo la introduzco. 183 00:14:12,000 --> 00:14:13,000 Y ya me sale. 184 00:14:14,000 --> 00:14:15,000 Que esta información. 185 00:14:17,000 --> 00:14:18,000 Aquí me sale. 186 00:14:18,000 --> 00:14:20,000 Esta información es confidencial. 187 00:14:21,000 --> 00:14:24,000 Entonces lo que tengo que hacer sería, como siempre os digo. 188 00:14:24,000 --> 00:14:25,000 Llevarlo a un fichero. 189 00:14:25,000 --> 00:14:27,000 Fichero final.txt. 190 00:14:28,000 --> 00:14:29,000 Que si yo le abro. 191 00:14:31,000 --> 00:14:32,000 Ahí está. 192 00:14:32,000 --> 00:14:33,000 Esta información es confidencial. 193 00:14:34,000 --> 00:14:35,000 Vale. 194 00:14:35,000 --> 00:14:36,000 Y esto sería todo chicos. 195 00:14:36,000 --> 00:14:38,000 Os voy a enseñar una cosilla más. 196 00:14:39,000 --> 00:14:40,000 Que es. 197 00:14:40,000 --> 00:14:41,000 Si por ejemplo. 198 00:14:41,000 --> 00:14:43,000 Este fichero lo recibe. 199 00:14:43,000 --> 00:14:44,000 Una persona. 200 00:14:45,000 --> 00:14:46,000 Que no. 201 00:14:46,000 --> 00:14:47,000 Que no es María. 202 00:14:47,000 --> 00:14:49,000 Entonces lo primero que voy a hacer es. 203 00:14:49,000 --> 00:14:50,000 Borrar las claves. 204 00:14:51,000 --> 00:14:52,000 De María. 205 00:14:52,000 --> 00:14:54,000 Voy a hacer un gpg menos de info.txt. 206 00:14:54,000 --> 00:14:57,000 Voy a hacer un gpg menos menos de letex.txt. 207 00:14:58,000 --> 00:14:59,000 Por ejemplo el comentario. 208 00:15:00,000 --> 00:15:01,000 Clave María. 209 00:15:02,000 --> 00:15:03,000 Así. 210 00:15:03,000 --> 00:15:04,000 Así. 211 00:15:05,000 --> 00:15:07,000 Y gpg menos menos de letex.txt. 212 00:15:07,000 --> 00:15:08,000 Para borrar la pública. 213 00:15:11,000 --> 00:15:12,000 Clave María. 214 00:15:12,000 --> 00:15:13,000 Bueno venga María. 215 00:15:14,000 --> 00:15:15,000 Vale. 216 00:15:15,000 --> 00:15:16,000 Entonces yo hago un gpg menos k. 217 00:15:16,000 --> 00:15:17,000 No hay claves públicas. 218 00:15:17,000 --> 00:15:18,000 Y gpg menos k mayúscula. 219 00:15:19,000 --> 00:15:20,000 No hay claves privadas. 220 00:15:20,000 --> 00:15:21,000 Entonces. 221 00:15:21,000 --> 00:15:22,000 Yo ahora si llego. 222 00:15:23,000 --> 00:15:24,000 Intento descifrar. 223 00:15:24,000 --> 00:15:25,000 Por ejemplo el fichero. 224 00:15:29,000 --> 00:15:30,000 Encriptado en el modo binario. 225 00:15:31,000 --> 00:15:32,000 Gpg menos de. 226 00:15:33,000 --> 00:15:34,000 Info.txt.gpg. 227 00:15:36,000 --> 00:15:37,000 Oye. 228 00:15:37,000 --> 00:15:38,000 Me está diciendo. 229 00:15:39,000 --> 00:15:41,000 Que el descifrado ha fallado. 230 00:15:42,000 --> 00:15:43,000 Que la clave secreta no está disponible. 231 00:15:44,000 --> 00:15:45,000 Esto en el caso de que reciba el fichero. 232 00:15:45,000 --> 00:15:46,000 Otra persona. 233 00:15:47,000 --> 00:15:48,000 Que no sea el destinatario. 234 00:15:48,000 --> 00:15:49,000 Y por seguridad. 235 00:15:49,000 --> 00:15:50,000 No va a poder verlo. 236 00:15:50,000 --> 00:15:51,000 Vale chicos. 237 00:15:51,000 --> 00:15:52,000 Pues esto sería un poco. 238 00:15:54,000 --> 00:15:55,000 Los pasos básicos. 239 00:15:56,000 --> 00:15:57,000 Básicos. 240 00:15:57,000 --> 00:15:58,000 Y bueno. 241 00:15:58,000 --> 00:15:59,000 Y todos los que tenéis que seguir. 242 00:15:59,000 --> 00:16:00,000 Para el cifrado asimétrico. 243 00:16:01,000 --> 00:16:02,000 Vale. 244 00:16:02,000 --> 00:16:03,000 Repasadlo. 245 00:16:03,000 --> 00:16:04,000 Miradlo. 246 00:16:04,000 --> 00:16:05,000 Y cualquier cosilla me decís. 247 00:16:05,000 --> 00:16:06,000 Venga. 248 00:16:06,000 --> 00:16:07,000 Hasta luego.