Add FH/t6-cifrado-de-información
This commit is contained in:
		
							
								
								
									
										
											BIN
										
									
								
								1/FH/assignments/t6-cifrado-de-información/imgs/cifrado.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								1/FH/assignments/t6-cifrado-de-información/imgs/cifrado.png
									
									
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							| 
		 After Width: | Height: | Size: 99 KiB  | 
							
								
								
									
										
											BIN
										
									
								
								1/FH/assignments/t6-cifrado-de-información/imgs/descifrado.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								1/FH/assignments/t6-cifrado-de-información/imgs/descifrado.png
									
									
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							| 
		 After Width: | Height: | Size: 56 KiB  | 
										
											Binary file not shown.
										
									
								
							@@ -0,0 +1,119 @@
 | 
				
			|||||||
 | 
					\documentclass[12pt,a4paper]{article}
 | 
				
			||||||
 | 
					\usepackage[spanish]{babel}
 | 
				
			||||||
 | 
					\usepackage{hyperref}
 | 
				
			||||||
 | 
					\usepackage{graphicx}
 | 
				
			||||||
 | 
					\usepackage{subcaption}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					\title{Tema VI: Cifrado de Información}
 | 
				
			||||||
 | 
					\author{Nicolás A. Ortega Froysa}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					\begin{document}
 | 
				
			||||||
 | 
					\maketitle
 | 
				
			||||||
 | 
					\pagebreak
 | 
				
			||||||
 | 
					\tableofcontents
 | 
				
			||||||
 | 
					\pagebreak
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					\section{Introducción}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					A menudo es necesario cifrar información para que sólo aquellas personas
 | 
				
			||||||
 | 
					privilegiadas puedan accederla. Para esto, se ha usado históricamente el
 | 
				
			||||||
 | 
					cifrado, y en nuestra época digital tecnológica, esto no ha cambiado, sino que
 | 
				
			||||||
 | 
					se ha visto potenciado aún más, hasta el punto de que hoy día el cifrado de
 | 
				
			||||||
 | 
					información es algo de lo más cotidiano. Simplemente con acceder a una página
 | 
				
			||||||
 | 
					con el protocolo HTTPS ya estás usando cifrado.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					\section{GNU Privacy Guard (GPG)}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					En los sistemas GNU/Linux, la forma más normal de cifrar archivos es usando la
 | 
				
			||||||
 | 
					herramienta de {\em GNU Privacy Guard} (GPG). Esto se usa tanto para cifrado
 | 
				
			||||||
 | 
					simétrico como asimétrico. Vamos a revisar cómo cifrar un archivo usando esta
 | 
				
			||||||
 | 
					herramienta de forma simétrica: es decir, que se usa la misma contraseña para
 | 
				
			||||||
 | 
					cifrar y descifrar.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					\subsection{Cifrado}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					En primer lugar, tendremos que juntar todos los archivos que queremos cifrar en
 | 
				
			||||||
 | 
					un solo archivo. Esto se puede hacer usando cualquier herramienta de compresión
 | 
				
			||||||
 | 
					o unión de archivos. Para nuestro ejemplo, usaremos la herramienta {\tt tar},
 | 
				
			||||||
 | 
					aunque también se podría usar ZIP.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Creamos un directorio con todos los archivos que queremos comprimir, y luego los
 | 
				
			||||||
 | 
					juntamos usando el comando de {\tt tar} siguiente:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					\begin{verbatim}
 | 
				
			||||||
 | 
					$ tar cvf secreto.tar secreto/
 | 
				
			||||||
 | 
					\end{verbatim}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Una vez que tengamos todos los archivos dentro de un mismo archivo, podemos
 | 
				
			||||||
 | 
					cifrarlo usando el comando {\tt gpg} (o en algunos sistemas de GNU/Linux es {\tt
 | 
				
			||||||
 | 
					gnupg}). Usamos el comando siguiente:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					\begin{verbatim}
 | 
				
			||||||
 | 
					$ gpg --symmetric --cipher-algo <cipher> secreto.tar
 | 
				
			||||||
 | 
					\end{verbatim}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					En este caso {\tt \textless{}cipher\textgreater{}} se reemplaza con el tipo de
 | 
				
			||||||
 | 
					cifrado que se quiere hacer. En nuestro caso queremos usar el cifrado {\tt
 | 
				
			||||||
 | 
					AES256}. Pedirá también una contraseña para el cifrado en este paso. Esto
 | 
				
			||||||
 | 
					producirá un archivo denominado {\tt secreto.tar.gpg}. A partir de aquí podemos
 | 
				
			||||||
 | 
					borrar los archivos originales de {\tt secreto.tar} y el contenido del
 | 
				
			||||||
 | 
					directorio {\tt secreto/}. Dicho lo cual, como acabamos de cifrar los archivos
 | 
				
			||||||
 | 
					es más seguro borrarlos usando el comando {\tt shred} de GNU/Linux, que no sólo
 | 
				
			||||||
 | 
					borrará los archivos, sino que antes de borrarlos reemplazará todo su contenido
 | 
				
			||||||
 | 
					con caracteres aleatorios.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					\begin{figure}[!htb]
 | 
				
			||||||
 | 
						\centering
 | 
				
			||||||
 | 
						\includegraphics[width=0.75\linewidth]{imgs/cifrado.png}
 | 
				
			||||||
 | 
						\caption{Cifrado de un archivo con GPG.}
 | 
				
			||||||
 | 
						\label{fig:cifrado}
 | 
				
			||||||
 | 
					\end{figure}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					\subsection{Descifrado}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Para descifrar el mismo archivo, hacemos lo que sería el mismo proceso, pero a
 | 
				
			||||||
 | 
					la inversa. Primero, lo desciframos usando GPG, e introduciendo la contraseña
 | 
				
			||||||
 | 
					establecido anteriormente:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					\begin{verbatim}
 | 
				
			||||||
 | 
					$ gpg -o secreto.tar -d secreto.tar.gpg
 | 
				
			||||||
 | 
					\end{verbatim}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Esto producirá de nuevo nuestro archivo de {\tt secreto.tar}. Posteriormente
 | 
				
			||||||
 | 
					queremos desjuntar los archivos contenidos en ese {\em tarball}. Esto lo hacemos
 | 
				
			||||||
 | 
					igualmente con el comando {\tt tar}:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					\begin{verbatim}
 | 
				
			||||||
 | 
					$ tar xvf secreto.tar
 | 
				
			||||||
 | 
					\end{verbatim}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Esto nos extraerá del archivo el directorio original y los archivos contenidos
 | 
				
			||||||
 | 
					en él. Con esto, ya habremos descifrado y recuperado los datos.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					\begin{figure}[!htb]
 | 
				
			||||||
 | 
						\centering
 | 
				
			||||||
 | 
						\includegraphics[width=0.55\linewidth]{imgs/descifrado.png}
 | 
				
			||||||
 | 
						\caption{Descifrado con GPG.}
 | 
				
			||||||
 | 
						\label{fig:descifrado}
 | 
				
			||||||
 | 
					\end{figure}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					\section{Conclusión}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					El cifrado por línea de comando en GNU/Linux usando la herramienta GPG de GNU es
 | 
				
			||||||
 | 
					una tarea bastante sencilla, aunque se tiene que dividir en sub-pasos si se
 | 
				
			||||||
 | 
					quiere hacer con varios archivos. Mas esto forma parte de lo que sería la
 | 
				
			||||||
 | 
					mentalidad de UNIX -- que cada herramienta haga una sola cosa, y que lo haga
 | 
				
			||||||
 | 
					bien.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					\pagebreak
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					\section{Derechos de Autor y Licencia}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					\noindent
 | 
				
			||||||
 | 
					Copyright \copyright\ \the\year\ Nicolás A. Ortega Froysa
 | 
				
			||||||
 | 
					<nicolas@ortegas.org> \\
 | 
				
			||||||
 | 
					\\
 | 
				
			||||||
 | 
					Este documento se distribuye bajo los términos y condiciones de la licencia
 | 
				
			||||||
 | 
					Creative Commons Attribution No Derivatives 4.0 International.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					\end{document}
 | 
				
			||||||
@@ -0,0 +1,7 @@
 | 
				
			|||||||
 | 
					\babel@toc {spanish}{}\relax 
 | 
				
			||||||
 | 
					\contentsline {section}{\numberline {1}Introducción}{3}{section.1}%
 | 
				
			||||||
 | 
					\contentsline {section}{\numberline {2}GNU Privacy Guard (GPG)}{3}{section.2}%
 | 
				
			||||||
 | 
					\contentsline {subsection}{\numberline {2.1}Cifrado}{3}{subsection.2.1}%
 | 
				
			||||||
 | 
					\contentsline {subsection}{\numberline {2.2}Descifrado}{4}{subsection.2.2}%
 | 
				
			||||||
 | 
					\contentsline {section}{\numberline {3}Conclusión}{5}{section.3}%
 | 
				
			||||||
 | 
					\contentsline {section}{\numberline {4}Derechos de Autor y Licencia}{6}{section.4}%
 | 
				
			||||||
		Reference in New Issue
	
	Block a user