From 3fe95ca9145193c9eb572f7975fc18e2d60b2c53 Mon Sep 17 00:00:00 2001
From: Holger Dengler <dengler@linutronix.de>
Date: Wed, 23 May 2018 08:17:40 +0200
Subject: misc: Update Slides

- Update Concepts (redundant, rescue)
- Update Processing (swupdate)
- Deployment (Hawkbit)

Signed-off-by: Holger Dengler <dengler@linutronix.de>
---
 misc/frm_update_process.tex | 145 ++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 145 insertions(+)
 create mode 100644 misc/frm_update_process.tex

(limited to 'misc/frm_update_process.tex')

diff --git a/misc/frm_update_process.tex b/misc/frm_update_process.tex
new file mode 100644
index 0000000..e6250f2
--- /dev/null
+++ b/misc/frm_update_process.tex
@@ -0,0 +1,145 @@
+% ----------------------------
+\section{Process Updates}
+\subsection{swupdate}
+
+% ----------------------------
+\begin{frame}{Overview}
+\begin{center}
+\includegraphics[width=8cm]{images/update_swupdate_overview.png}
+\end{center}
+\end{frame}
+
+% ----------------------------
+\begin{frame}{Features I}
+\begin{itemize}
+\item Open-Source (GPLv2)
+\item Bootloader, OS, FPGA images
+\item Streamable Updates
+\item Multi-Target Updates
+\item Powerfail Safe
+\item Crypto Support
+ \begin{itemize}
+ \item Image signing (Integrity)
+ \item Image encryption (Protection)
+ \end{itemize}
+\item Fully Customizable
+\item Extendable
+\end{itemize}
+\end{frame}
+
+% ----------------------------
+\begin{frame}{Features II}
+\begin{itemize}
+\item build-in Handlers
+ \begin{itemize}
+ \item raw
+ \item File-based
+ \item MTD
+ \item UBI
+ \end{itemize}
+\item build-in Deployment Interfaces
+ \begin{itemize}
+ \item Local Files
+ \item Network (pull)
+ \item Web Interface (push)
+ \item hawkbit Deployment Server (push)
+ \end{itemize}
+\end{itemize}
+\end{frame}
+
+% ----------------------------
+\subsection{Streaming}
+
+% ----------------------------
+\begin{frame}{Update Container}
+\begin{itemize}
+\item Update Container Format:
+ \begin{itemize}
+ \item serialized
+ \item streamable
+ \item 1st Element: Description
+ \item 2nd Element: Description Signature
+ \end{itemize}
+\item Description Elements
+ \begin{itemize}
+ \item Image Format
+ \item Image Size
+ \item Image Hash
+ \item Install Target
+ \item Install Handler
+ \end{itemize}
+\end{itemize}
+\end{frame}
+
+% ----------------------------
+\begin{frame}{Update Container Format}
+\begin{columns}[onlytextwidth]
+ \begin{column}{0.45\textwidth}
+ \begin{itemize}
+ \item File Format: cpio
+  \begin{itemize}
+  \item open file format
+  \item widely used
+  \item indexed
+  \item good tooling support
+  \item supports seek (e.g for Streaming)
+  \end{itemize}
+ \end{itemize}
+ \end{column}
+ \begin{column}{0.45\textwidth}
+  \begin{center}
+  \includegraphics[height=0.7\textheight]{images/update_swupdate_format.png}
+  \end{center}
+ \end{column}
+\end{columns}
+\end{frame}
+
+% ----------------------------
+\subsection{Security}
+
+% ----------------------------
+\begin{frame}{Update Verification}
+\begin{itemize}
+\item Update Signature Verification Enforcement
+\item Signature ensures Integrity of Update Description
+ \begin{itemize}
+ \item Integrity Verification early in Update Process
+ \item hash-based Image and Script Validation
+ \item No Image Download on Integrity failures
+ \end{itemize}
+\end{itemize}
+\end{frame}
+
+% ----------------------------
+\begin{frame}[fragile]
+\frametitle{Signed Update Layout}
+\begin{beamerboxesrounded}[shadow=true]{sw-description}
+\begin{scriptsize}
+\begin{verbatim}
+[...]
+stable =
+{
+  sys_a =
+  {
+    images =
+    (
+      {
+        filename = "rfs.ext3.gz";
+        sha256 = "32df9a4057c858abd2ce64b8bffd2722bd2502d257f221b15295bd9fb85c325b";
+        [...]
+      }
+    );
+    scripts =
+    (
+      {
+        filename = "10_markB.sh";
+        sha256 = "cbe23f93b00fb758690fc09867c9758b74a15d10522bcc5a4a51f881d2dde0a6";
+        type = "postinstall";
+      }
+    );
+  };
+[...]
+\end{verbatim}
+\end{scriptsize}
+\end{beamerboxesrounded}
+\end{frame}
-- 
cgit v1.2.3

