scramble: add dummy scramble operations
[transsip-mirror.git] / Documentation / talk / iet-patw-2011 / main.tex
blob9fc242f64be4eea095a619c742c8b0d9a18c92ca
1 \documentclass[black,white]{beamer}
3 \usepackage{beamerthemesplit}
4 \usepackage{epstopdf}
5 \usepackage{graphicx}
6 \usepackage{subfigure}
7 \usepackage{hyperref}
8 \usepackage[utf8]{inputenc}
9 \usepackage[english]{babel}
10 \usepackage{listings}
11 \usepackage{array}
12 \usepackage{color}
13 \usepackage{colortbl}
15 \usefonttheme{professionalfonts}
16 \usecolortheme{dove}
17 \useoutertheme{infolines}
18 \useinnertheme{rectangles}
20 \setlength{\parindent}{0pt}
21 \newcommand*\sfb[1]{\textbf{#1}}
22 \definecolor{red2}{rgb}{.7,0,.39}
23 \definecolor{grey}{rgb}{0.5,0.5,0.5}
24 \setbeamercolor{title}{fg=white}
25 \setbeamercolor{frametitle}{fg=white}
26 \setbeamercolor{framesubtitle}{fg=white}
27 \setbeamercolor{normal text}{fg=white}
28 \setbeamercolor{itemize item}{fg=white}
29 \setbeamercolor{itemize subitem}{parent=itemize item}
30 \usebackgroundtemplate{
31 \includegraphics[width=\paperwidth,height=\paperheight]{img/bg.jpg}
33 \setbeamertemplate{footline}%{infolines theme}
35 \leavevmode%
36 \hbox{%
37 \begin{beamercolorbox}[wd=.333333\paperwidth,ht=2.25ex,dp=1ex,center]{author in head/foot}%
38 \usebeamerfont{author in head/foot}\insertshortauthor%~~(\insertshortinstitute)
39 \end{beamercolorbox}%
40 \begin{beamercolorbox}[wd=.333333\paperwidth,ht=2.25ex,dp=1ex,center]{title in head/foot}%
41 \usebeamerfont{title in head/foot}\insertshorttitle
42 \end{beamercolorbox}%
43 \begin{beamercolorbox}[wd=.333333\paperwidth,ht=2.25ex,dp=1ex,right]{date in head/foot}%
44 \usebeamerfont{date in head/foot}\insertshortdate{}\hspace*{2em}
45 \insertframenumber{} / \inserttotalframenumber\hspace*{2ex}
46 \end{beamercolorbox}}%
47 \vskip0pt%
50 \begin{document}
52 \title[On creating a novel telephony network]{\huge{On creating a novel global telephony network}}
53 \author[Daniel Borkmann] {
54 \vspace*{-20pt}
55 \newline
56 Daniel Borkmann \texttt{<dborkma@tik.ee.ethz.ch>}\\
57 \texttt{http://gnumaniacs.org}\\\bigskip
58 IET PATW 2011, Switzerland
60 \date[\today]{}
62 \frame {
63 \titlepage
66 \frame {
67 \frametitle{Some notes about myself}
68 \begin{itemize}
69 \item 2006-2009: Technical Computer Science, B. Sc., HTWK Leipzig\medskip
70 \item Since 2009: Computer Science, M. Sc., HTWK Leipzig\medskip
71 \item Since 2009: Scholarship from the German National Merit Foundation\medskip
72 \item Since 2011: Master thesis, ETH Zurich\medskip
73 \item Software development as a student worker and in my spare time\medskip
74 \begin{itemize}
75 \item Siemens, Max Planck Society, ipoque\medskip
76 \item RoboCup, several Open Source projects
77 \end{itemize}
78 \end{itemize}
81 \frame {
82 \frametitle{Situation among todays telecommunications industry}
83 \begin{itemize}
84 \item Oligopoly, i.e. approx 10 providers in Switzerland [1]\medskip
85 \item Cost issues especially on international calls\medskip
86 \item Proprietary legacy systems with security flaws [2]\medskip
87 \item Privacy issues, i.e. wiretapping, censorship [3]\medskip
88 \item Sparsely in focus of university research
89 \end{itemize}
92 \frame {
93 \frametitle{\textcolor{grey}{How others tried to challenge this:} \\ 1) Skype}
94 \begin{itemize}
95 \item Implements VoIP, looks as an alternative on the first hand, but ...\medskip
96 \item Almost everything is obfuscated, many antidebugging tricks, much ciphered code (Is there something to hide ?) [4]\medskip
97 \item Impossible to scan for trojan/backdoor/malware inclusion [4]\medskip
98 \item RC4 is used for obfuscation not for privacy [4]\medskip
99 \item Counter-productiveness to its user base [5] [10]\
100 \end{itemize}
103 \frame {
104 \frametitle{\textcolor{grey}{How others tried to challenge this:} \\ 2) GoogleTalk/GoogleVoice}
105 \begin{itemize}
106 \item Also implements VoIP, proprietary like Skype\medskip
107 \item No end-to-end encryption [6]\medskip
108 \item Not usable by hardware phones\medskip
109 \item Google seems to save your human voice for other purposes [7]\medskip
110 \item Needs Adobe Flash Player (''Symantec recently highlighted Flash for having one of the worst security records in 2009.'') [8]
111 \end{itemize}
114 \frame {
115 \frametitle{\textcolor{grey}{How we can challenge this:} \\ Basic requirements for a new global telephony network}
116 \begin{itemize}
117 \item Use of a robust underlying and widespread network \textcolor{green}{$\rightarrow$ VoIP, Internet}\medskip
118 \item Compatibility with hardware phones \textcolor{green}{$\rightarrow$ SIP}\medskip
119 \item Openness/transparency of the system \textcolor{green}{$\rightarrow$ Open Source}\medskip
120 \item No call fees/charges \textcolor{green}{$\rightarrow$ Only for Internet access}\medskip
121 \item Strong cryptography between endpoints \textcolor{green}{$\rightarrow$ i.e. ECC, McEliece}\medskip
122 \item Control by users instead of companies \textcolor{green}{$\rightarrow$ Open Source Community}\medskip
123 \end{itemize}
126 \frame {
127 \frametitle{Design of the telephony network architecture}
128 \begin{itemize}
129 \item Software should run on an \textbf{embedded system} and consists of 4 parts\medskip
130 \begin{itemize}
131 \item \textbf{SIP server} for communication with trusted phones in LAN\medskip
132 \item \textbf{D}istributed \textbf{H}ash \textbf{T}able for global participant retrieval\medskip
133 \item \textbf{Client/Server} for voice transmission via Internet\medskip
134 \item Internal \textbf{address book} for participant namespace translations
135 \end{itemize}
136 \end{itemize}
137 \hspace*{15pt}
138 \includegraphics[width=0.9\textwidth]{img/scheme.png}
141 \frame {
142 \frametitle{Design of the telephony network architecture}
143 \begin{itemize}
144 \item \textbf{Distributed Hash Table} (DHT, i.e. Kademlia [9]): \\\medskip $f(\text{User}):=[\text{IP}_{\text{public}}, \text{Port}_{\text{public}}]$, \textit{where} $\text{User}:=SHA_{256}(\text{Key}_{\text{public}})$\medskip
145 \item Internal \textbf{address book}: \\\medskip $g(\text{PhoneNumber}):=\text{Username}$ \textit{and} $h(\text{Username}):=\text{Key}_{\text{public}}$\medskip
146 \item \textbf{Connection endpoint}: \\\medskip $f(SHA_{256}(h(g(\text{PhoneNumber}))))$\medskip
147 \item Voice information is then \textbf{encrypted} with $\text{Key}_{\text{public}}$\medskip
148 \item Ideally, the client/server protocol cannot be recognized by ISPs DPIs\medskip
149 \item ($\text{IP}_{\text{public}}, \text{Port}_{\text{public}}$ obtained via STUN)
150 \end{itemize}
153 \frame {
154 \frametitle{Scenario: Bob calls Alice}
155 \begin{enumerate}
156 \item Both parties have exchanged their $\text{Key}_{\text{public}}$ (once)\medskip
157 \item Bob calls i.e. $1234$ from his SIP phone, where $g(1234)$:=\texttt{Alice}\medskip
158 \item Since \texttt{Alice} has a registered public key, $h(\text{\texttt{Alice}}):=\text{Key}_{\text{Alice,public}}$\medskip
159 \item Bob looks up $SHA_{256}(\text{Key}_{\text{Alice,public}})$ by applying to $f$ in the DHT\medskip
160 \item Bob receives $[\text{IP}_{\text{Alice,public}}, \text{Port}_{\text{Alice,public}}]$\medskip
161 \item Bob opens a direct and $\text{Key}_{\text{Alice,public}}$-encrypted connection to Alice\medskip
162 \item Alice accepts the connection from Bob, delivers a notification to her SIP phones and both parties transfer their encrypted voice data
163 \end{enumerate}
166 \frame {
167 \frametitle{Conclusion}
168 \begin{itemize}
169 \item By the distributed manner, the network is more stable towards outages\medskip
170 \item Through openness of the system, wide range of research and audits can be performed\medskip
171 \item System is privacy-enhanced and "resistant" against wiretapping\medskip
172 \item Compatiblity to a wide range of SIP hardware phones for easy usage
173 \end{itemize}
176 \frame {
177 \frametitle{}
178 \bigskip
179 \bigskip
180 \begin{center}
181 \Large{Thanks for your attention! Questions?}\\
182 \bigskip
183 \bigskip
184 \bigskip
185 \bigskip
186 \texttt{dborkma@tik.ee.ethz.ch}\\
187 \medskip
188 \texttt{http://gnumaniacs.org}
189 \end{center}
192 \frame {
193 \frametitle{References, 24.05.2011}
194 \begin{itemize}
195 \item [1] \url{http://www.telecomrating.ch/ratingaktuell.html}
196 \item [2] \url{http://events.ccc.de/congress/2010/Fahrplan/events/4208.en.html}
197 \item [3] \url{http://www.zdnetasia.com/beware-govts-are-tapping-your-3g-calls-62201577.htm}
198 \item [4] \url{http://www.blackhat.com/presentations/bh-europe-06/bh-eu-06-biondi/bh-eu-06-biondi-up.pdf}
199 \item [5] \url{http://www.nartv.org/mirror/breachingtrust.pdf}
200 \item [6] \url{http://tinyurl.com/3l9pzrf}
201 \item [7] \url{http://cartesianproduct.wordpress.com/2011/05/02/google-wants-your-voice/}
202 \item [8] \url{http://www.apple.com/hotnews/thoughts-on-flash/}
203 \item [9] \url{http://www.gnumaniacs.org/kademlia.pdf}
204 \item [10] \url{http://slashdot.org/story/11/05/24/2010222/Microsoft-Kills-Skype-For-Asterisk}
205 \end{itemize}
208 \end{document}