\documentclass[pdf,contemporain,slideColor,colorBG,accumulate,nototal]{prosper}

%\usepackage{macros-cp}

\title{GPG}
\subtitle{The government is watching you...}
\author{Josef ``Jeff'' Sipek $<$jeffpc@josefsipek.net$>$}
\institution{}
\slideCaption{GPG -- Josef ``Jeff'' Sipek}

\begin{document}
\maketitle

% Intro to public key crypto
%	- what's symmetric cryptography?
%		- caesar cipher example (rot13 variant)
%		- (a) cypher
%		- (b) key
\overlays{1}{
\begin{slide}{What is cryptography?}
	\begin{minipage}{\linewidth}
{\bf Cryptography}, n.

\vspace{0.5in}
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}
\end{slide}}

\overlays{7}{
\begin{slide}{Little History}
	\onlySlide*{1}{
	\begin{center}
		\includegraphics[width=\linewidth]{Roman_empire_395}
	\end{center}}
	
	\begin{itemstep}[2]
		\item Caesar cipher
		\item ROT13
		\item Symmetric cipher
		\begin{itemstep}
			\item Key used to encrypt \& decrypt
			\item AES
			\item Blowfish
		\end{itemstep}
	\end{itemstep}
\end{slide}}

%		- problems
\overlays{1}{
\begin{slide}{Problems with Symmetric Ciphers}
	\begin{itemstep}
		\item ``Pre-shared secret''
		% FIXME: add more
	\end{itemstep}
	% give postal example
\end{slide}}

%	- what's asymmetric crypto?
%		- (a) cypher
%		- (b) 2 keys!
\overlays{4}{
\begin{slide}{Asymmetric Ciphers}
	\begin{itemstep}[2]
		\item 2 keys!
		\begin{itemstep}
			\item Public
			\item Private
		\end{itemstep}
		% give postal example
	\end{itemstep}
\end{slide}}

\overlays{1}{
\begin{slide}{Asymmetric Ciphers}
	\begin{center}
		\includegraphics[width=0.5\linewidth]{Public_key_making}
	\end{center}
\end{slide}}

% Explain the process of public key crypto
%	- explain fingerprint
\overlays{3}{
\begin{slide}{Asymmetric Ciphers}
	\begin{itemstep}
		\item Encrypt/Decrypt
		\begin{itemstep}
			\item Encrypt with public key
			\item Decrypt with private key
		\end{itemstep}
	\end{itemstep}
\end{slide}}

\overlays{1}{
\begin{slide}{Asymmetric Ciphers}
	\begin{center}
		\includegraphics[width=0.5\linewidth]{Public_key_encryption}
	\end{center}
\end{slide}}

\overlays{3}{
\begin{slide}{Asymmetric Ciphers}
	\begin{itemstep}
		\item Sign/Verify signature
		\begin{itemstep}
			\item Sign with private key
			\item Verify with public key
		\end{itemstep}
	\end{itemstep}
\end{slide}}

\overlays{1}{
\begin{slide}{Asymmetric Ciphers}
	\begin{center}
		\includegraphics[width=0.5\linewidth]{Public_key_signing}
	\end{center}
\end{slide}}

% PGP/GPG's role
% 	- why is GPG useful? (for me) / why would I want to use it?
%		- encrypt documents
%		- sign documents
\overlays{6}{
\begin{slide}{What, Why, How?}
	\begin{itemstep}[2]
		\item What? --- GPG
		\item Why?
		\begin{itemstep}
			\item Encrypt/decrypt documents
			\item Sign/verify documents
		\end{itemstep}
		\item How?
	\end{itemstep}
\end{slide}}

% PRE PRESENTATION TODO:
%	- clear the keyring
%	- import my own key
%	- make sure we have:
%		file1.txt
%		file2.txt{,.asc}
%		file3.txt
%
% 	- how do you use it?
%		- DEMO: sign a doc
%		- DEMO: verify sig on a doc
%		- DEMO: encrypt a doc
%		- DEMO: decrypt a doc
%		- There are frontends to make things easier
%
% Packages to remove after demo
%  kmail libkcal2b libkdepim1a libkleopatra1 libkmime2 libkpimidentities1 libksieve0
%  libktnef1 libmimelib1c2a gpgsm libksba8 libpth2
\overlays{7}{
\begin{slide}{Demo Time!}
	\begin{itemstep}[2]
		% gpg --gen-key
		\item Generate a key

		% gpg --clearsign file1.txt
		% gpg -a --sign file1.txt
		\item Sign a file

		% gpg --verify file2.txt.asc
		\item Verify the signature on a file

		% gpg --encrypt file3.txt
		% gpg -a --encrypt file3.txt
		\item Encrypt a file

		% gpg --decrypt file4.txt
		\item Decrypt a file

		\item Nasty, eh?
		% FIXME: pick some frontends to demo
		%	- kgpg
		%	- kmail
		%	- mutt
	\end{itemstep}
\end{slide}}

% what is keysigning?
%	- How do you verify who a key belongs to?
%	- web of trust
%		- alice/bob/etc. web - built one sig at a time
% what will happen next month?
%	- generate keys
%	- send the PUBLIC key to me
%	- I will compile a list of keys
%	- I will put it on the web
%	- you will verify that your key is correct
%		- if it is NOT, let me know ASAP
%	- print a copy & bring it next month
%	- next month, we'll go though each key
%		- the author will read it
%		- the author will present sufficient ID
%		- rest will verify
%	- go home, and for each key which was verified by YOU
%		- sign it
%	- send me the signed public keys
%		- I'll combine them, and create a lilug keyring that
%		everyone can import
\overlays{8}{
\begin{slide}{Before Next Meeting}
	\begin{itemstep}[2]
		\item Generate key pair
		\item Send the \emph{public} key to me
		\item I will compile a list of keys
		\item I will put it on the web
		\item You will verify that your key is correct
		\begin{itemstep}
			\item If it is \emph{NOT}, let me know \emph{ASAP}
		\end{itemstep}
		\item Print a copy \& bring it next month
	\end{itemstep}
\end{slide}}

\overlays{5}{
\begin{slide}{During Next Meeting}
	\begin{itemstep}[2]
		\item We'll go though each key
		\begin{itemstep}
			\item The owner will read it
			\item The owner will present sufficient ID
			\item Rest will verify
		\end{itemstep}
	\end{itemstep}
\end{slide}}

\overlays{5}{
\begin{slide}{After Next Meeting}
	\begin{itemstep}[2]
		\item Go home, and for each key which was verified by \emph{YOU}
		\begin{itemstep}
			\item Sign it
		\end{itemstep}
		\item Send me the signed public keys
		\item I'll combine them, and create a LiLUG keyring that
		everyone can import
	\end{itemstep}
\end{slide}}

% Copyright/references
\overlays{1}{
\begin{slide}{References}
	\begin{itemize}
		\item Images shamelessly stolen from Wikipedia.
		\item Wikipedia \\
			\href{http://en.wikipedia.org/wiki/Asymmetric\_key\_algorithm}{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{slide}}

% Q&A
\overlays{1}{
\begin{slide}{Q\&A}
	\vspace{0.5in}
	\begin{center}
		Questions?

\vspace{0.5in}
\small
Remember: Just because I'm paranoid doesn't mean they aren't out to get me.
\normalsize
	\end{center}
\end{slide}}

%%%%%%% EXTRA SLIDES

% Caesar cipher
\overlays{1}{
\begin{slide}{Caesar Cipher}
	\begin{itemize}
		\item To encrypt: \\
		$e = (c + 3)\, mod\, 26$
		\item To decrypt: \\
		$c = (e - 3)\, mod\, 26$
	\end{itemize}
\end{slide}}

% ROT13
\overlays{1}{
\begin{slide}{ROT13}
	\begin{itemize}
		\item To encrypt: \\
		$e = (c + 13)\, mod\, 26$
		\item To decrypt: \\
		$c = (e - 13)\, mod\, 26 = (e + 13)\, mod\, 26$
	\end{itemize}
\end{slide}}

\end{document}
