Mercurial > lilug > gpg
view handout.tex @ 11:4a04a5a3f451
random
author | Josef 'Jeff' Sipek <jeffpc@josefsipek.net> |
---|---|
date | Sun, 15 Mar 2009 18:44:46 -0400 |
parents | 431e14ce74f8 |
children |
line wrap: on
line source
% two sided printing \documentclass[letterpaper,12pt]{article} \usepackage[reset,margin=1in]{geometry} \usepackage{url} \usepackage{epsfig} \title{\huge GPG\normalsize} \author{Josef ``Jeff'' Sipek $<$jeffpc@josefsipek.net$>$} \date{} \twocolumn \begin{document} \maketitle \vspace{0.75cm} \noindent\fbox{ \begin{minipage}{0.9\linewidth} {\bf Cryptography}, n. The science which studies methods for encoding messages so that they can be read only by a person who knows the secret information required for decoding, called the key \end{minipage} } \section{History} \begin{itemize} \item Caesar cipher -- used by Julius Caesar to deliver messages to his generals. A simple substitution cipher which relied on the illiteracy of majority of people. \item ROT13 -- ``modern'' version of the Caesar cipher. It shifts all characters by 13 instead of 3. Since there are only 26 letters in the english alphabet, an interesting effect occurs: encryption and decryption are one and the same operation! \end{itemize} \subsection{Symmetric ciphers} Both Caesar and ROT13 are \emph{symmetric} ciphers. That means that the same key is used during both encryption and decryption. Some modern symmetric ciphers include \emph{AES} and \emph{Blowfish}. Both of these ciphers, with a good key are \emph{effectively} unbreakable with today's technology \& mathematics. The only problem with symmetric ciphers is the fact that the key has to be agreed upon over a secure channel -- in-person meeting, trusted courier, etc. \section{Asymmetric ciphers} The solution to the problem is ``simple'' --- it is called \emph{asymetric} ciphers. Asymmetric ciphers consist of 2 keys. One \emph{private} and the other \emph{public}. The public key is exactly that, public. You can post it on your website and not worry about a thing. The private key should be kept secure at all times. The private key allows you to do all the cool things. :) \subsection{Generating a key-pair} Large random numbers are the basis of modern cryptography. \noindent \begin{minipage}{0.5\linewidth} \begin{center} \epsfig{file=Public_key_making.eps, scale=0.45} \end{center} \end{minipage} \newpage \subsection{Uses} Such key-pair can be used to: \begin{itemize} \item Sign/Verify signature \begin{itemize} \item Sign with private key \item Verify with public key \end{itemize} \end{itemize} \noindent \begin{minipage}{0.5\linewidth} \begin{center} \epsfig{file=Public_key_signing.eps, scale=0.45} \end{center} \end{minipage} \begin{itemize} \item Encrypt/Decrypt \begin{itemize} \item Encrypt with public key \item Decrypt with private key \end{itemize} \end{itemize} \noindent \begin{minipage}{0.5\linewidth} \begin{center} \epsfig{file=Public_key_encryption.eps, scale=0.45} \end{center} \end{minipage} \section{GPG commands} \noindent{\bf Generate a new key-pair}:\\ \noindent{\texttt gpg --gen-key}\\ \noindent{\bf Sign a file}:\\ \noindent{\texttt gpg --clearsign \emph{filename}}\\ \noindent{\texttt gpg -a --sign \emph{filename}}\\ \noindent{\bf Verify a signature on a file}:\\ \noindent{\texttt gpg --verify \emph{filename}}\\ \noindent{\bf Encrypt a file}:\\ \noindent{\texttt gpg --encrypt \emph{filename}}\\ \noindent{\texttt gpg -a --encrypt \emph{filename}}\\ \noindent{\bf Decrypt a file}:\\ \noindent{\texttt gpg --decrypt \emph{filename}}\\ \subsection{Nasty, eh?} Since using GPG directly is rather nasty, people have developed many GUI/console frontends, as well as integrated GPG functionality right into their applications. For example, Kmail, mutt, both integrate with GPG very nicely. \section{Resources} Images shamelessly stolen from Wikipedia. \begin{itemize} \item Wikipedia \\ \url{http://en.wikipedia.org/wiki/Asymmetric_key_algorithm} \item GNU Privacy Guard \\ \url{http://www.gnupg.org} \item OpenPGP Message Format \\ \url{http://www.ietf.org/rfc/rfc2440.txt} \end{itemize} \end{document}