diff options
author | Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org> | 2019-12-08 17:36:20 +0100 |
---|---|---|
committer | Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org> | 2019-12-26 00:52:23 +0100 |
commit | 9daa3beabe139f38265e8f2c7a4a05891e43b862 (patch) | |
tree | 064444ab98d23cf7a823d0bb71217a6ef0969ffc | |
parent | a4abd1eb3c16641f5f66ebd1654c354b65938d1c (diff) | |
download | presentations-9daa3beabe139f38265e8f2c7a4a05891e43b862.tar.gz presentations-9daa3beabe139f38265e8f2c7a4a05891e43b862.tar.bz2 presentations-9daa3beabe139f38265e8f2c7a4a05891e43b862.zip |
Start implementing the new structure.
Signed-off-by: Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
-rw-r--r-- | 36c3/Replicant_sustainability/Makefile | 2 | ||||
-rw-r--r-- | 36c3/Replicant_sustainability/Replicant_sustainability.tex | 793 |
2 files changed, 754 insertions, 41 deletions
diff --git a/36c3/Replicant_sustainability/Makefile b/36c3/Replicant_sustainability/Makefile index 7bc95ec..bdea753 100644 --- a/36c3/Replicant_sustainability/Makefile +++ b/36c3/Replicant_sustainability/Makefile @@ -12,7 +12,7 @@ output: output/$(TITLE).pdf: output $(TITLE).tex $(IMAGES) pdflatex $(TEXFLAGS) '\providecommand\locale{en}\input{$(TITLE).tex}' - # pdflatex $(TEXFLAGS) '\providecommand\locale{en}\input{$(TITLE).tex}' + pdflatex $(TEXFLAGS) '\providecommand\locale{en}\input{$(TITLE).tex}' output/%.png: dot/%.dot output dot -T png $< > $@ diff --git a/36c3/Replicant_sustainability/Replicant_sustainability.tex b/36c3/Replicant_sustainability/Replicant_sustainability.tex index a2152da..e1c269d 100644 --- a/36c3/Replicant_sustainability/Replicant_sustainability.tex +++ b/36c3/Replicant_sustainability/Replicant_sustainability.tex @@ -4,20 +4,20 @@ \usepackage{graphicx} \usepackage{ifthen} \usepackage[utf8]{inputenc} +\usepackage{ulem} \usepackage{listings} -\usepackage{xtab} \usepackage{pdfpages} \usepackage{tikz} +\usepackage{xtab} \newcommand{\outputpicture}[2] { {\includegraphics[scale=#1]{output/#2}} } - \newcommand{\devicepicture}[1] { {\includegraphics[scale=0.5]{../../external_resources/replicant_website/images/supported-devices/#1.png}} } -\usetheme{Singapore} +%% \usetheme{Singapore} \title{Extending the lifetime of smartphones with Replicant, a fully free Android distribution} \author{Denis 'GNUtoo' Carikli and David 'dllud' Ludovino} @@ -30,12 +30,8 @@ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \section{Introduction} -\begin{frame}{TITLE 1} - \begin{tikzpicture} - %% \draw (-1.5,0) -- (1.5,0); - %% \draw (0,-1.5) -- (0,1.5); - \devicepicture{passion} ; - \end{tikzpicture} +\begin{frame} + \center{Introduction} \end{frame} \begin{frame} @@ -158,33 +154,748 @@ %% \end{itemize} %% \end{frame} -\begin{frame}[plain,allowframebreaks]{title} - \begin{xtabular}{ll} - \hline - Device dropping cause & Replicant leverage \\ - \hline - Upstream support & We're working to improve it \\ - \hline - Android RAM consumption & negligeable \\ - %% Most device we want to support have similar-ish RAM size - %% Cannot increase much the device lifetime by choosing devices with bigger RAM size - %% => We have no impact on it and have to endure it - \hline - Lack of removable batteries & don't support devices with non-replacable batteries \\ - \hline - Freedom issues & Conflicting interests \\ - %% Chinese whispers => Better keeping it simple - %% We drop the least free devices - %% Conflicting interest - \hline - \end{xtabular} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\section{Smartphones lifetime} + +\begin{frame} + \center{Part I: Smartphones lifetime} \end{frame} -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\setbeamercolor{background canvas}{bg=black} +\setbeamercolor{normal text}{fg=green} +\usebeamercolor*{normal text} + +{ + \setbeamercolor{normal text}{fg=white} + \usebeamercolor*{normal text} + \begin{frame} + \center { + What I'm about to tell you is subversive... + } + \end{frame} +} + +{ + \setbeamercolor{normal text}{fg=green} + \usebeamercolor*{normal text} + \begin{frame} + \center { + $<$subversive$>$ + } + \end{frame} +} + +{ + \setbeamercolor{normal text}{fg=green} + \usebeamercolor*{normal text} + \begin{frame} + \center { + Once upon a time... + } + \end{frame} +} + \begin{frame} - \frametitle{What I'm about to show you is subversive} + \center { + \large{Dave didn't want to buy a smartphone...} \\ + \bigskip + \small{ + "Nearly all mobile phones Present-day cell phones are Stalin's dream” \\ + Richard Stallman\cite{stalin-dream} + } + } \end{frame} +{ + \setbeamercolor{normal text}{fg=red} + \usebeamercolor*{normal text} + \begin{frame} + \center { + You need to be reachable at all times. + } + \end{frame} +} + +{ + %% TODO: Put Peer Pressure in blue like links + \setbeamercolor{normal text}{fg=red} + \usebeamercolor*{normal text} + \begin{frame} + \center { + Dave $\leftarrow$ [[Peer pressure]] $\leftrightarrow$ Advertizing + } + \end{frame} +} + +{ + \setbeamercolor{normal text}{fg=red} + \usebeamercolor*{normal text} + \begin{frame} + \center { + Dave $\leftarrow$ Dave's employer + } + \end{frame} +} + +{ + \setbeamercolor{normal text}{fg=blue} + \usebeamercolor*{normal text} + \begin{frame} + \center { + Dave: okay okay, I finally bought a smartphone. + } + \end{frame} +} + +{ + \setbeamercolor{normal text}{fg=green} + \usebeamercolor*{normal text} + \begin{frame} + \center { + Dave bought an Android smartphone off the shelf. \\ + The smartphone has a removable battery. + } + \end{frame} +} + +{ + \setbeamercolor{normal text}{fg=red} + \usebeamercolor*{normal text} + \begin{frame} + \center { + This smartphone will self-destruct in 5 years + } + \end{frame} +} + +{ + \setbeamercolor{normal text}{fg=blue} + \usebeamercolor*{normal text} + \begin{frame} + \center { + Dave: Why didn't I know that at the time of buying? + } + \end{frame} +} + +{ + \setbeamercolor{normal text}{fg=green} + \usebeamercolor*{normal text} + \begin{frame} + \center { + Two years later... + } + \end{frame} +} + +{ + \setbeamercolor{normal text}{fg=red} + \usebeamercolor*{normal text} + \begin{frame} + \center { + Hmmm + } + \end{frame} +} + +{ + \setbeamercolor{normal text}{fg=blue} + \usebeamercolor*{normal text} + \begin{frame} + \center { + Dave: What? + } + \end{frame} +} + +{ + \setbeamercolor{normal text}{fg=red} + \usebeamercolor*{normal text} + \begin{frame} + \center { + I'm sorry Dave, your battery ran out. + } + \end{frame} +} + +{ + \setbeamercolor{normal text}{fg=red} + \usebeamercolor*{normal text} + \begin{frame} + \center { + Game Over: Buy a new phone. + } + \end{frame} +} + +{ + \setbeamercolor{normal text}{fg=blue} + \usebeamercolor*{normal text} + \begin{frame} + \center { + Dave: Play again! Insert a new battery to continue! + } + \end{frame} +} + +{ + \setbeamercolor{normal text}{fg=green} + \usebeamercolor*{normal text} + \begin{frame} + \center { + Dave buys a new battery. + } + \end{frame} +} + +{ + \setbeamercolor{normal text}{fg=red} + \usebeamercolor*{normal text} + \begin{frame} + \center { + Uhhh consumers like Dave are tiring me... + } + \end{frame} +} + +{ + \setbeamercolor{normal text}{fg=blue} + \usebeamercolor*{normal text} + \begin{frame} + \center { + Dave: I'm a humain beeing! + } + \end{frame} +} + +{ + \setbeamercolor{normal text}{fg=red} + \usebeamercolor*{normal text} + \begin{frame} + \center { + Uh oh. + } + \end{frame} +} +{ + \setbeamercolor{normal text}{fg=red} + \usebeamercolor*{normal text} + \begin{frame} + \center { + Hmmm + } + \end{frame} +} + +{ + \setbeamercolor{normal text}{fg=blue} + \usebeamercolor*{normal text} + \begin{frame} + \center { + Dave: What now? + } + \end{frame} +} + +{ + \setbeamercolor{normal text}{fg=red} + \usebeamercolor*{normal text} + \begin{frame} + \center { + I'm sorry Dave, your smartphone ran out of software support. + } + \end{frame} +} + +{ + \setbeamercolor{normal text}{fg=blue} + \usebeamercolor*{normal text} + \begin{frame} + \center { + Dave: Shiiit + } + \end{frame} +} + +{ + \setbeamercolor{normal text}{fg=green} + \usebeamercolor*{normal text} + \begin{frame} + \center { + %% TODO: Charlie chaplin like interlude + Dave doesn't want to destroy the planet + } + \end{frame} +} + +{ + \setbeamercolor{normal text}{fg=blue} + \usebeamercolor*{normal text} + \begin{frame} + \center { + Dave: \\ + \sout{No passaran} \\ + \sout{You shall not pass} \\ + I shall not buy a new smartphone. + } + \end{frame} +} + +{ + \setbeamercolor{normal text}{fg=blue} + \usebeamercolor*{normal text} + \begin{frame} + \center { + Dave: I can still run Android apps. + } + \end{frame} +} + +{ + \setbeamercolor{normal text}{fg=red} + \usebeamercolor*{normal text} + \begin{frame} + \center { + Securityyyy.... + } + \end{frame} +} + +{ + \setbeamercolor{normal text}{fg=blue} + \usebeamercolor*{normal text} + \begin{frame} + \center { + Dave: my smartphone is full of backdoors anyway. + } + \end{frame} +} + +{ + \setbeamercolor{normal text}{fg=blue} + \usebeamercolor*{normal text} + \begin{frame} + \center { + Dave: You're part of my threat model. + } + \end{frame} +} + +{ + \setbeamercolor{normal text}{fg=red} + \usebeamercolor*{normal text} + \begin{frame} + \center { + Shit they become more and more clever. + } + \end{frame} +} + +{ + \setbeamercolor{normal text}{fg=red} + \usebeamercolor*{normal text} + \begin{frame} + \center { + Hmmm? + } + \end{frame} +} + +{ + \setbeamercolor{normal text}{fg=red} + \usebeamercolor*{normal text} + \begin{frame} + \center { + I'm sorry Dave, the Android apps don't support your old Android version. + } + \end{frame} +} + +{ + \setbeamercolor{normal text}{fg=blue} + \usebeamercolor*{normal text} + \begin{frame} + \center { + Dave: Shiiit + } + \end{frame} +} + +{ + \setbeamercolor{normal text}{fg=blue} + \usebeamercolor*{normal text} + \begin{frame} + \center { + Dave: Fuck you, I'll install LineageOS. + } + \end{frame} +} + +{ + \setbeamercolor{normal text}{fg=red} + \usebeamercolor*{normal text} + \begin{frame} + \center { + I'm sorry Dave, you will loose your data in the process. + } + \end{frame} +} + +{ + \setbeamercolor{normal text}{fg=blue} + \usebeamercolor*{normal text} + \begin{frame} + \center { + Dave: \\ + I'll migrate the data myself. \\ + DIY is great ! \\ + } + \end{frame} +} + +{ + \setbeamercolor{normal text}{fg=red} + \usebeamercolor*{normal text} + \begin{frame} + \center { + Dave Dave please remain with us... + } + \end{frame} +} + +{ + \setbeamercolor{normal text}{fg=blue} + \usebeamercolor*{normal text} + \begin{frame} + \center { + Dave: + I don't trust you. + Fuck off! \\ + Leave me alone! \\ + } + \end{frame} +} + +{ + \setbeamercolor{normal text}{fg=green} + \usebeamercolor*{normal text} + \begin{frame} + \center { + Two years later... + } + \end{frame} +} + +{ + \setbeamercolor{normal text}{fg=green} + \usebeamercolor*{normal text} + \begin{frame} + \center { + Dave was living happily \sout{ever after} and forgot about his smartphone \\ + (and all the backdoors...). + } + \end{frame} +} + +{ + \setbeamercolor{normal text}{fg=red} + \usebeamercolor*{normal text} + \begin{frame} + \center { + I'm sorry Dave, LineageOS dropped support for your smartphone. + } + \end{frame} +} + +{ + \setbeamercolor{normal text}{fg=green} + \usebeamercolor*{normal text} + \begin{frame} + \center { + Dave faints... + } + \end{frame} +} + +{ + \setbeamercolor{normal text}{fg=blue} + \usebeamercolor*{normal text} + \begin{frame} + \center { + Dave: How is that possible? + } + \end{frame} +} + +{ + \setbeamercolor{normal text}{fg=violet} + \usebeamercolor*{normal text} + \begin{frame} + \center { + Knock Knock Dave... + } + \end{frame} +} + +{ + \setbeamercolor{normal text}{fg=violet} + \usebeamercolor*{normal text} + \begin{frame} + \center { + Do you want the red pill [y/N]? + } + \end{frame} +} + +{ + \setbeamercolor{normal text}{fg=blue} + \usebeamercolor*{normal text} + \begin{frame} + \center { + Dave: Fuck yes I want the red pill! + } + \end{frame} +} + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\section{Replicant} + +{ + \setbeamercolor{background canvas}{bg=white} + \setbeamercolor{normal text}{fg=black} + \usebeamercolor*{normal text} + \begin{frame} + \center { + %% TODO: attack of the clones with Replicant instead + Part II: The counter attack of the \sout{clones} Replicants + } + \end{frame} +} + +{ + \setbeamercolor{normal text}{fg=violet} + \usebeamercolor*{normal text} + \begin{frame} + \center { + Dave, you've been living in a dream... + } + \end{frame} +} + +{ + \setbeamercolor{normal text}{fg=violet} + \usebeamercolor*{normal text} + \begin{frame} + \center { + The linux kernel in your phone... + } + \end{frame} +} + +{ + \setbeamercolor{normal text}{fg=violet} + \usebeamercolor*{normal text} + \begin{frame} + \center { + It's not really Linux... + } + \end{frame} +} + +{ + \setbeamercolor{normal text}{fg=violet} + \usebeamercolor*{normal text} + \begin{frame} + \center { + It's based on Linux... + } + \end{frame} +} + +{ + \setbeamercolor{normal text}{fg=violet} + \usebeamercolor*{normal text} + \begin{frame} + \center { + but it can be very heavily modified... + } + \end{frame} +} + +{ + \setbeamercolor{normal text}{fg=violet} + \usebeamercolor*{normal text} + \begin{frame} + \center { + Our informations are scarse and sometimes outdated... + } + \end{frame} +} + +{ + \setbeamercolor{normal text}{fg=violet} + \usebeamercolor*{normal text} + \begin{frame} + \center { + But we deduced that in 2008 the device and chip manufacturers did that to improve the time to market... + } + \end{frame} +} + +{ + \setbeamercolor{normal text}{fg=violet} + \usebeamercolor*{normal text} + \begin{frame} + \center { + We know that upstreaming a new kernel framework can take years... + } + \end{frame} +} + +{ + \setbeamercolor{normal text}{fg=violet} + \usebeamercolor*{normal text} + \begin{frame} + \center { + So they abstracted the hardware in the Android framework instead... + } + \end{frame} +} + +{ + \setbeamercolor{normal text}{fg=violet} + \usebeamercolor*{normal text} + \begin{frame} + \center { + Enabling everyone to break the API. + } + \end{frame} +} + +{ + \setbeamercolor{normal text}{fg=violet} + \usebeamercolor*{normal text} + \begin{frame} + \center { + The applications would talk to the framework \\ + } + \end{frame} +} + +{ + \setbeamercolor{normal text}{fg=violet} + \usebeamercolor*{normal text} + \begin{frame} + \center { + The framework would interface with HAL (Hardware abstraction libraries) \\ + } + \end{frame} +} + +{ + \setbeamercolor{normal text}{fg=violet} + \usebeamercolor*{normal text} + \begin{frame} + \center { + The Hal would interface with libraries that handle the custom kernel API \\ + } + \end{frame} +} + +{ + \setbeamercolor{normal text}{fg=red} + \usebeamercolor*{normal text} + \begin{frame} + \center { + Someone is calling me? + } + \end{frame} +} + +{ + \setbeamercolor{normal text}{fg=blue} + \usebeamercolor*{normal text} + \begin{frame} + \center { + Dave: + No. \\ + HAL: Return to sleep. \\ + } + \end{frame} +} + +{ + \setbeamercolor{normal text}{fg=violet} + \usebeamercolor*{normal text} + \begin{frame} + \center { + LineageOS kernels are based on the vendor kernels. + } + \end{frame} +} + +{ + \setbeamercolor{normal text}{fg=violet} + \usebeamercolor*{normal text} + \begin{frame} + \center { + LineageOS also uses proprietary libraries. + } + \end{frame} +} + +{ + \setbeamercolor{normal text}{fg=violet} + \usebeamercolor*{normal text} + \begin{frame} + \center { + Like the libril which implements the modem protocol, and a backdoor as well... + } + \end{frame} +} + +{ + \setbeamercolor{normal text}{fg=violet} + \usebeamercolor*{normal text} + \begin{frame} + \center { + Though we don't know if the backdoor is usable by someone on the network. + } + \end{frame} +} + +{ + \setbeamercolor{normal text}{fg=violet} + \usebeamercolor*{normal text} + \begin{frame} + \center { + But we wound't be surprised if it is. + } + \end{frame} +} + +{ + \setbeamercolor{normal text}{fg=violet} + \usebeamercolor*{normal text} + \begin{frame} + \center { + It was found by Paul Kocialkowski while working on Replicant. + } + \end{frame} +} + +{ + \setbeamercolor{normal text}{fg=blue} + \usebeamercolor*{normal text} + \begin{frame} + \center { + What is Replicant? + } + \end{frame} +} + + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% \begin{frame} %% \center{Replicant phase 1: Quick and dirty hacks} @@ -560,14 +1271,16 @@ %% \end{frame} \begin{thebibliography}{99} -\bibitem{freeing-a-phone-from-the-ground-up} - \url{https://code.paulk.fr/article20/a-hacker-s-journey-freeing-a-phone-from-the-ground-up-first-part} - \url{https://code.paulk.fr/article21/a-hacker-s-journey-freeing-a-phone-from-the-ground-up-second-part} - \url{https://code.paulk.fr/article22/a-hacker-s-journey-freeing-a-phone-from-the-ground-up-third-part} - \url{https://code.paulk.fr/article23/a-hacker-s-journey-freeing-a-phone-from-the-ground-up-fourth-part} -\bibitem{last-android-6-update} - \url{https://en.wikipedia.org/wiki/Android Marshmallow} -\bibitem{porting-to-android-9} - \url{https://redmine.replicant.us/projects/replicant/wiki/PortingToAndroid9} +\bibitem{stalin-dream} + \url{https://stallman.org/archives/2011-nov-feb.html} +%% \bibitem{freeing-a-phone-from-the-ground-up} +%% \url{https://code.paulk.fr/article20/a-hacker-s-journey-freeing-a-phone-from-the-ground-up-first-part} +%% \url{https://code.paulk.fr/article21/a-hacker-s-journey-freeing-a-phone-from-the-ground-up-second-part} +%% \url{https://code.paulk.fr/article22/a-hacker-s-journey-freeing-a-phone-from-the-ground-up-third-part} +%% \url{https://code.paulk.fr/article23/a-hacker-s-journey-freeing-a-phone-from-the-ground-up-fourth-part} +%% \bibitem{last-android-6-update} +%% \url{https://en.wikipedia.org/wiki/Android Marshmallow} +%% \bibitem{porting-to-android-9} +%% \url{https://redmine.replicant.us/projects/replicant/wiki/PortingToAndroid9} \end{thebibliography} \end{document} |