\documentclass[10pt,a4paper]{article} % Packages \usepackage{fancyhdr} % For header and footer \usepackage{multicol} % Allows multicols in tables \usepackage{tabularx} % Intelligent column widths \usepackage{tabulary} % Used in header and footer \usepackage{hhline} % Border under tables \usepackage{graphicx} % For images \usepackage{xcolor} % For hex colours %\usepackage[utf8x]{inputenc} % For unicode character support \usepackage[T1]{fontenc} % Without this we get weird character replacements \usepackage{colortbl} % For coloured tables \usepackage{setspace} % For line height \usepackage{lastpage} % Needed for total page number \usepackage{seqsplit} % Splits long words. %\usepackage{opensans} % Can't make this work so far. Shame. Would be lovely. \usepackage[normalem]{ulem} % For underlining links % Most of the following are not required for the majority % of cheat sheets but are needed for some symbol support. \usepackage{amsmath} % Symbols \usepackage{MnSymbol} % Symbols \usepackage{wasysym} % Symbols %\usepackage[english,german,french,spanish,italian]{babel} % Languages % Document Info \author{rschacht} \pdfinfo{ /Title (mobile.pdf) /Creator (Cheatography) /Author (rschacht) /Subject (Mobile Cheat Sheet) } % Lengths and widths \addtolength{\textwidth}{6cm} \addtolength{\textheight}{-1cm} \addtolength{\hoffset}{-3cm} \addtolength{\voffset}{-2cm} \setlength{\tabcolsep}{0.2cm} % Space between columns \setlength{\headsep}{-12pt} % Reduce space between header and content \setlength{\headheight}{85pt} % If less, LaTeX automatically increases it \renewcommand{\footrulewidth}{0pt} % Remove footer line \renewcommand{\headrulewidth}{0pt} % Remove header line \renewcommand{\seqinsert}{\ifmmode\allowbreak\else\-\fi} % Hyphens in seqsplit % This two commands together give roughly % the right line height in the tables \renewcommand{\arraystretch}{1.3} \onehalfspacing % Commands \newcommand{\SetRowColor}[1]{\noalign{\gdef\RowColorName{#1}}\rowcolor{\RowColorName}} % Shortcut for row colour \newcommand{\mymulticolumn}[3]{\multicolumn{#1}{>{\columncolor{\RowColorName}}#2}{#3}} % For coloured multi-cols \newcolumntype{x}[1]{>{\raggedright}p{#1}} % New column types for ragged-right paragraph columns \newcommand{\tn}{\tabularnewline} % Required as custom column type in use % Font and Colours \definecolor{HeadBackground}{HTML}{333333} \definecolor{FootBackground}{HTML}{666666} \definecolor{TextColor}{HTML}{333333} \definecolor{DarkBackground}{HTML}{3D3D3D} \definecolor{LightBackground}{HTML}{F8F8F8} \renewcommand{\familydefault}{\sfdefault} \color{TextColor} % Header and Footer \pagestyle{fancy} \fancyhead{} % Set header to blank \fancyfoot{} % Set footer to blank \fancyhead[L]{ \noindent \begin{multicols}{3} \begin{tabulary}{5.8cm}{C} \SetRowColor{DarkBackground} \vspace{-7pt} {\parbox{\dimexpr\textwidth-2\fboxsep\relax}{\noindent \hspace*{-6pt}\includegraphics[width=5.8cm]{/web/www.cheatography.com/public/images/cheatography_logo.pdf}} } \end{tabulary} \columnbreak \begin{tabulary}{11cm}{L} \vspace{-2pt}\large{\bf{\textcolor{DarkBackground}{\textrm{Mobile Cheat Sheet}}}} \\ \normalsize{by \textcolor{DarkBackground}{rschacht} via \textcolor{DarkBackground}{\uline{cheatography.com/23536/cs/11637/}}} \end{tabulary} \end{multicols}} \fancyfoot[L]{ \footnotesize \noindent \begin{multicols}{3} \begin{tabulary}{5.8cm}{LL} \SetRowColor{FootBackground} \mymulticolumn{2}{p{5.377cm}}{\bf\textcolor{white}{Cheatographer}} \\ \vspace{-2pt}rschacht \\ \uline{cheatography.com/rschacht} \\ \end{tabulary} \vfill \columnbreak \begin{tabulary}{5.8cm}{L} \SetRowColor{FootBackground} \mymulticolumn{1}{p{5.377cm}}{\bf\textcolor{white}{Cheat Sheet}} \\ \vspace{-2pt}Published 29th April, 2017.\\ Updated 1st May, 2017.\\ Page {\thepage} of \pageref{LastPage}. \end{tabulary} \vfill \columnbreak \begin{tabulary}{5.8cm}{L} \SetRowColor{FootBackground} \mymulticolumn{1}{p{5.377cm}}{\bf\textcolor{white}{Sponsor}} \\ \SetRowColor{white} \vspace{-5pt} %\includegraphics[width=48px,height=48px]{dave.jpeg} Measure your website readability!\\ www.readability-score.com \end{tabulary} \end{multicols}} \begin{document} \raggedright \raggedcolumns % Set font size to small. Switch to any value % from this page to resize cheat sheet text: % www.emerson.emory.edu/services/latex/latex_169.html \footnotesize % Small font. \begin{multicols*}{4} \begin{tabularx}{3.833cm}{x{1.61351 cm} x{1.81949 cm} } \SetRowColor{DarkBackground} \mymulticolumn{2}{x{3.833cm}}{\bf\textcolor{white}{Security Basics}} \tn % Row 0 \SetRowColor{LightBackground} Symmetric Key & One key is shared by two users both encryption \& decryption (substiution cipher, aes, des) \tn % Row Count 5 (+ 5) % Row 1 \SetRowColor{white} Assymetric & Public and Private Key \tn % Row Count 7 (+ 2) % Row 2 \SetRowColor{LightBackground} Substitution Ciper & Mono-alphabetic cipher 2\textasciicircum{}n/2 \tn % Row Count 9 (+ 2) % Row 3 \SetRowColor{white} Diffie-Helman Exchange & Exchanging secret keys over insecure medium. Known large prime and base shared and a secret integer \tn % Row Count 14 (+ 5) % Row 4 \SetRowColor{LightBackground} DES & 56-bit symmetric key, 64bit plain text US standard \tn % Row Count 17 (+ 3) % Row 5 \SetRowColor{white} AES & Replaces DES 128 bit \tn % Row Count 18 (+ 1) % Row 6 \SetRowColor{LightBackground} Axor0, AxorA & A, 0 \tn % Row Count 19 (+ 1) % Row 7 \SetRowColor{white} Main Sec. Probs In Mobile? & Config. management, excessive privleges, privacy violations, poor session management \tn % Row Count 23 (+ 4) % Row 8 \SetRowColor{LightBackground} Most problematic part in mobil apps? & Android abstraction layer \tn % Row Count 25 (+ 2) % Row 9 \SetRowColor{white} Preventing replay attacks? & Use a nonce \tn % Row Count 27 (+ 2) % Row 10 \SetRowColor{LightBackground} Pros of Symmetric Keys & No worry of replay or man in the middle attacks \tn % Row Count 30 (+ 3) \end{tabularx} \par\addvspace{1.3em} \vfill \columnbreak \begin{tabularx}{3.833cm}{x{1.61351 cm} x{1.81949 cm} } \SetRowColor{DarkBackground} \mymulticolumn{2}{x{3.833cm}}{\bf\textcolor{white}{Security Basics (cont)}} \tn % Row 11 \SetRowColor{LightBackground} Agreement on shared key & diffie helman or KDC \tn % Row Count 2 (+ 2) % Row 12 \SetRowColor{white} Certificate Auth & Binds pub key to part. entity. E registers with CA. When Alice wants bobs pub key, get the certificate, apply CA pub key and get bobs pub key. \tn % Row Count 9 (+ 7) % Row 13 \SetRowColor{LightBackground} Symmetric and Public Key Problems & Sym: establish shared key? (deffie-helman, KDC), Public Key(Man in middle) use CA \tn % Row Count 13 (+ 4) \hhline{>{\arrayrulecolor{DarkBackground}}--} \end{tabularx} \par\addvspace{1.3em} \begin{tabularx}{3.833cm}{x{1.30454 cm} x{2.12846 cm} } \SetRowColor{DarkBackground} \mymulticolumn{2}{x{3.833cm}}{\bf\textcolor{white}{power/energy}} \tn % Row 0 \SetRowColor{LightBackground} factors that affect power & power affects temp, but energy doesn't \tn % Row Count 2 (+ 2) % Row 1 \SetRowColor{white} equations & power/area proportional to temp \tn % Row Count 4 (+ 2) % Row 2 \SetRowColor{LightBackground} associations & higher current implies high power which increases cpu frequency \tn % Row Count 7 (+ 3) % Row 3 \SetRowColor{white} thermal runaway & power -\textgreater{} temp -\textgreater{} resistance decrease -\textgreater{} current increase I (cycle) \tn % Row Count 10 (+ 3) % Row 4 \SetRowColor{LightBackground} energy & asffects battery life, power * time = E \tn % Row Count 12 (+ 2) % Row 5 \SetRowColor{white} energy harvesting & solar, wind -\textgreater{} high capacity, low leakage (low discharge), low capacity, high leakage (quick discharge), appliance \tn % Row Count 17 (+ 5) \hhline{>{\arrayrulecolor{DarkBackground}}--} \end{tabularx} \par\addvspace{1.3em} \begin{tabularx}{3.833cm}{X} \SetRowColor{DarkBackground} \mymulticolumn{1}{x{3.833cm}}{\bf\textcolor{white}{Certificate Authority}} \tn \SetRowColor{LightBackground} \mymulticolumn{1}{p{3.833cm}}{\vspace{1px}\centerline{\includegraphics[width=5.1cm]{/web/www.cheatography.com/public/uploads/rschacht_1493656915_Screen Shot 2017-05-01 at 9.41.34 AM.png}}} \tn \hhline{>{\arrayrulecolor{DarkBackground}}-} \end{tabularx} \par\addvspace{1.3em} \begin{tabularx}{3.833cm}{x{1.57918 cm} x{1.85382 cm} } \SetRowColor{DarkBackground} \mymulticolumn{2}{x{3.833cm}}{\bf\textcolor{white}{Recent Trends in Security}} \tn % Row 0 \SetRowColor{LightBackground} ID vs Auth & Auth = username + pass, ID = passwd \& something like biometric \tn % Row Count 3 (+ 3) % Row 1 \SetRowColor{white} Data injection & sending false radio signal to pace maker and inducing heart attack \tn % Row Count 7 (+ 4) % Row 2 \SetRowColor{LightBackground} Threat Model/Attack model & What the system thinks about the model. Believes attacker is much more powerful than he actually is. Attack model attacker believes it knows a lot about the system \tn % Row Count 15 (+ 8) % Row 3 \SetRowColor{white} Key establishment in physi. sec. & Done using human body \tn % Row Count 17 (+ 2) % Row 4 \SetRowColor{LightBackground} Ways to fool machine & brute force feature guess, generate signal (generative), evasion, poison \tn % Row Count 21 (+ 4) % Row 5 \SetRowColor{white} Evasion attack & create points to gain access without getting caught, alter features \tn % Row Count 25 (+ 4) % Row 6 \SetRowColor{LightBackground} Poison attack & attacker can see the training set, injects their own data at key points, skews the lines \tn % Row Count 30 (+ 5) \end{tabularx} \par\addvspace{1.3em} \vfill \columnbreak \begin{tabularx}{3.833cm}{x{1.57918 cm} x{1.85382 cm} } \SetRowColor{DarkBackground} \mymulticolumn{2}{x{3.833cm}}{\bf\textcolor{white}{Recent Trends in Security (cont)}} \tn % Row 7 \SetRowColor{LightBackground} Biometric signals & Signals that don't change like fingerprints \tn % Row Count 3 (+ 3) % Row 8 \SetRowColor{white} Physiological signals & hard because constantly changing \tn % Row Count 5 (+ 2) % Row 9 \SetRowColor{LightBackground} Hardening Technique & instead of line, have piecewise curves, or instead of line use polygon(polytope) \tn % Row Count 9 (+ 4) % Row 10 \SetRowColor{white} Internet Control Protocol Messages & agent advertisement, agent solicitation, registration request, registration reply \tn % Row Count 13 (+ 4) % Row 11 \SetRowColor{LightBackground} Foreign Agent & Consumes less ip addresses than mobile host \tn % Row Count 16 (+ 3) % Row 12 \SetRowColor{white} security performance tradeoff & Increase in security strength -\textgreater{} hardening Hardening implies more difficult classification boundaries May increase False positives or negatives How to find a balance between security strength and performance? Multi-objective optimization problem \tn % Row Count 28 (+ 12) \hhline{>{\arrayrulecolor{DarkBackground}}--} \end{tabularx} \par\addvspace{1.3em} \begin{tabularx}{3.833cm}{X} \SetRowColor{DarkBackground} \mymulticolumn{1}{x{3.833cm}}{\bf\textcolor{white}{Hardening Technique}} \tn \SetRowColor{LightBackground} \mymulticolumn{1}{p{3.833cm}}{\vspace{1px}\centerline{\includegraphics[width=5.1cm]{/web/www.cheatography.com/public/uploads/rschacht_1493657229_Screen Shot 2017-05-01 at 9.46.45 AM.png}}} \tn \hhline{>{\arrayrulecolor{DarkBackground}}-} \end{tabularx} \par\addvspace{1.3em} \begin{tabularx}{3.833cm}{x{1.7165 cm} x{1.7165 cm} } \SetRowColor{DarkBackground} \mymulticolumn{2}{x{3.833cm}}{\bf\textcolor{white}{Internet of Things}} \tn % Row 0 \SetRowColor{LightBackground} Challenges of CPS & hard to know how many sensors to use, what data to collect \tn % Row Count 3 (+ 3) % Row 1 \SetRowColor{white} Cyber Physical Systems & embedding sensors into physical devices \tn % Row Count 5 (+ 2) % Row 2 \SetRowColor{LightBackground} Human to Human interaction & person a thinks about a color red and that dot is displayed to another person in another country \tn % Row Count 10 (+ 5) % Row 3 \SetRowColor{white} 3 charactertistics of IOT devices & anytime, anything, any place connetion \tn % Row Count 12 (+ 2) % Row 4 \SetRowColor{LightBackground} USN application layer & where apps are built to perform tasks using the sensors through middleware \tn % Row Count 16 (+ 4) % Row 5 \SetRowColor{white} middleware (Drivers) & allows you to build apps on top of iot sensors \tn % Row Count 19 (+ 3) % Row 6 \SetRowColor{LightBackground} sensor networking layer (bottom) & sensors are launched in environment and report to usn \tn % Row Count 22 (+ 3) % Row 7 \SetRowColor{white} Difference between gps and tower based location management? & gps needs clear line of sight and is more accurate. Tower based management is bad if you're not near tower, accessibility is less than gps. \tn % Row Count 29 (+ 7) % Row 8 \SetRowColor{LightBackground} what is iot & Network of Physical Objects embedded systems with electronics, software, sensors enable objects to exchange data with manufacturer, operator, other devices through network infrastructure allow remote control direct integration computer + physical world Result: automation in all fields \tn % Row Count 44 (+ 15) \hhline{>{\arrayrulecolor{DarkBackground}}--} \end{tabularx} \par\addvspace{1.3em} \begin{tabularx}{3.833cm}{x{1.33887 cm} x{2.09413 cm} } \SetRowColor{DarkBackground} \mymulticolumn{2}{x{3.833cm}}{\bf\textcolor{white}{Challenges in Security}} \tn % Row 0 \SetRowColor{LightBackground} Challenges in medical apps & resource constraints in sensors, poor software dev support, real-time requirements for health apps \tn % Row Count 5 (+ 5) \hhline{>{\arrayrulecolor{DarkBackground}}--} \end{tabularx} \par\addvspace{1.3em} \begin{tabularx}{3.833cm}{X} \SetRowColor{DarkBackground} \mymulticolumn{1}{x{3.833cm}}{\bf\textcolor{white}{Network Sec}} \tn \SetRowColor{LightBackground} \mymulticolumn{1}{p{3.833cm}}{\vspace{1px}\centerline{\includegraphics[width=5.1cm]{/web/www.cheatography.com/public/uploads/rschacht_1493656750_Screen Shot 2017-05-01 at 9.38.38 AM.png}}} \tn \hhline{>{\arrayrulecolor{DarkBackground}}-} \end{tabularx} \par\addvspace{1.3em} \begin{tabularx}{3.833cm}{X} \SetRowColor{DarkBackground} \mymulticolumn{1}{x{3.833cm}}{\bf\textcolor{white}{challenges cps}} \tn \SetRowColor{LightBackground} \mymulticolumn{1}{p{3.833cm}}{\vspace{1px}\centerline{\includegraphics[width=5.1cm]{/web/www.cheatography.com/public/uploads/rschacht_1493657381_Screen Shot 2017-05-01 at 9.49.15 AM.png}}} \tn \hhline{>{\arrayrulecolor{DarkBackground}}-} \end{tabularx} \par\addvspace{1.3em} \begin{tabularx}{3.833cm}{X} \SetRowColor{DarkBackground} \mymulticolumn{1}{x{3.833cm}}{\bf\textcolor{white}{thread indexing}} \tn \SetRowColor{LightBackground} \mymulticolumn{1}{p{3.833cm}}{\vspace{1px}\centerline{\includegraphics[width=5.1cm]{/web/www.cheatography.com/public/uploads/rschacht_1493657540_Screen Shot 2017-05-01 at 9.51.55 AM.png}}} \tn \hhline{>{\arrayrulecolor{DarkBackground}}-} \end{tabularx} \par\addvspace{1.3em} \begin{tabularx}{3.833cm}{X} \SetRowColor{DarkBackground} \mymulticolumn{1}{x{3.833cm}}{\bf\textcolor{white}{RSA Example}} \tn \SetRowColor{LightBackground} \mymulticolumn{1}{p{3.833cm}}{\vspace{1px}\centerline{\includegraphics[width=5.1cm]{/web/www.cheatography.com/public/uploads/rschacht_1493494637_Screen Shot 2017-04-29 at 12.36.59 PM.png}}} \tn \hhline{>{\arrayrulecolor{DarkBackground}}-} \end{tabularx} \par\addvspace{1.3em} \begin{tabularx}{3.833cm}{X} \SetRowColor{DarkBackground} \mymulticolumn{1}{x{3.833cm}}{\bf\textcolor{white}{RSA Continued}} \tn \SetRowColor{LightBackground} \mymulticolumn{1}{p{3.833cm}}{\vspace{1px}\centerline{\includegraphics[width=5.1cm]{/web/www.cheatography.com/public/uploads/rschacht_1493656831_Screen Shot 2017-05-01 at 9.39.55 AM.png}}} \tn \hhline{>{\arrayrulecolor{DarkBackground}}-} \end{tabularx} \par\addvspace{1.3em} \begin{tabularx}{3.833cm}{X} \SetRowColor{DarkBackground} \mymulticolumn{1}{x{3.833cm}}{\bf\textcolor{white}{Diffie-Helman}} \tn \SetRowColor{LightBackground} \mymulticolumn{1}{p{3.833cm}}{\vspace{1px}\centerline{\includegraphics[width=5.1cm]{/web/www.cheatography.com/public/uploads/rschacht_1493656881_Screen Shot 2017-05-01 at 9.40.57 AM.png}}} \tn \hhline{>{\arrayrulecolor{DarkBackground}}-} \end{tabularx} \par\addvspace{1.3em} \begin{tabularx}{3.833cm}{X} \SetRowColor{DarkBackground} \mymulticolumn{1}{x{3.833cm}}{\bf\textcolor{white}{System Model}} \tn \SetRowColor{LightBackground} \mymulticolumn{1}{p{3.833cm}}{\vspace{1px}\centerline{\includegraphics[width=5.1cm]{/web/www.cheatography.com/public/uploads/rschacht_1493656977_Screen Shot 2017-05-01 at 9.42.30 AM.png}}} \tn \hhline{>{\arrayrulecolor{DarkBackground}}-} \end{tabularx} \par\addvspace{1.3em} \begin{tabularx}{3.833cm}{x{1.0299 cm} x{2.4031 cm} } \SetRowColor{DarkBackground} \mymulticolumn{2}{x{3.833cm}}{\bf\textcolor{white}{CUDA}} \tn % Row 0 \SetRowColor{LightBackground} CUDA basics & Terminology  Host – The CPU and its memory (host memory)  Device – The GPU and its memory (device memory \tn % Row Count 5 (+ 5) % Row 1 \SetRowColor{white} \_\_global\_\_ &  As before, \_\_global\_\_ is a CUDA C keyword meaning — add() will execute on the device — add() will be called from the host \tn % Row Count 10 (+ 5) % Row 2 \SetRowColor{LightBackground} memory management & Host and device memory are distinct entities — Device pointers point to GPU memory  May be passed to and from host code  May not be dereferenced from host code — Host pointers point to CPU memory  May be passed to and from device code  May not be dereferenced from device code \tn % Row Count 21 (+ 11) \hhline{>{\arrayrulecolor{DarkBackground}}--} \end{tabularx} \par\addvspace{1.3em} \begin{tabularx}{3.833cm}{X} \SetRowColor{DarkBackground} \mymulticolumn{1}{x{3.833cm}}{\bf\textcolor{white}{Threat Model}} \tn \SetRowColor{LightBackground} \mymulticolumn{1}{p{3.833cm}}{\vspace{1px}\centerline{\includegraphics[width=5.1cm]{/web/www.cheatography.com/public/uploads/rschacht_1493501382_Screen Shot 2017-04-29 at 2.28.37 PM.png}}} \tn \hhline{>{\arrayrulecolor{DarkBackground}}-} \end{tabularx} \par\addvspace{1.3em} % That's all folks \end{multicols*} \end{document}