\documentclass[naustrian,notes]{beamer} \input{header} %Titelinformationen \title[Digidow Biometric Sensor]{Digital Shadow: Biometric Sensor} \subtitle{Master's Thesis Seminar} \author[Michael Preisach]{Michael Preisach} \date{November 19, 2019} \institute[INS]{\includegraphics[width=0.1\textwidth]{../../resources/ins}} \begin{document} \begin{frame} \titlepage \end{frame} \begin{frame} \frametitle{Project Overview Digital Shadow} \begin{figure} \centering \includegraphics[width=0.9\textwidth]{../../resources/globalview} \end{figure} \end{frame} \begin{frame} \frametitle{Recap: Trust inside Biometric Sensor} \begin{itemize} \item manufacturer of TPM holds certificate \item TPM holds measurements of boot chain in PCR \begin{itemize} \item CRTM measures BIOS \item BIOS measures MBR/EFI Bootloader \item bootloader measures Kernel (Grub 2.04 supports TPM2) \item Kernel measures libs, executables, \ldots \end{itemize} \item TPM Quote: summarize the PCR state and sign it with TPM Endorsement Key (EK) \end{itemize} \end{frame} \begin{frame} \frametitle{Problem: Create trust beween BS and PA} \begin{itemize} \item network discovery \item \textbf{no Knowledge about BS} \begin{itemize} \item \textbf{Hardware} \item \textbf{Software} \item \textbf{Am I talking to a valid BS} \item Correct client to certify identity for given biometric data \end{itemize} \item \textbf{BS faces same problem with PA} \item establish a secure channel to submit sensitive data \end{itemize} \end{frame} \begin{frame} \frametitle{Solution: Direct Anonymous Attestation (DAA)} \begin{center} \includegraphics[width=0.7\textwidth]{../../resources/daa} \end{center} \begin{itemize} \item based on group signatures \item Zero Knowledge Proof to verify group membership \item defines 3 Parties \begin{itemize} \item \emph{Issuer}: provides public key for a group (e.g. all Biometric Sensors) and manages group memberships \item \emph{Member}: holds a group private key to sign messages (e.g. a Biometric Sensor) \item \emph{Verifier}: knows the group public key and is able to verify correctness of signature (e.g. Personal Agent) \end{itemize} \end{itemize} \end{frame} \begin{frame} \frametitle{DAA Setup: Issuer creates Bilinear Group and Keys} \begin{eqnarray*} q,\mathbb{G}_1, \mathbb{G}_2, \mathbb{G}_T, g_1, g_2, e \end{eqnarray*} \begin{itemize} \item $\mathbb{G}_1, \mathbb{G}_2, \mathbb{G}_T$: groups of prime order $q$ \item $g_1 \in \mathbb{G}_1$, $g_2 \in \mathbb{G}_2$: generator points \item $e$: bilinear map with properties \begin{itemize} \item \emph{Bilinear}: For all $P \in \mathbb{G}_1, Q \in \mathbb{G}_2$, for all $a,b \in \mathbb{Z}$, $ e(P^a,Q^b) = e(P,Q)^{ab}$ \item \emph{Non-degenerate}: There exists some $P \in \mathbb{G}_1, Q \in \mathbb{G}_2$ such that $e(P,Q) \neq 1$, where 1 is the identity of $\mathbb{G}_T$ \item \emph{Efficient}: There exists an efficient algorithm for computing $e$ \end{itemize} \item Choose secret key $x\leftarrow\mathbb{Z}_q$, $y\leftarrow\mathbb{Z}_q$ \item generate public key $X=g_2^x$, $Y=g_2^y$ \end{itemize} \end{frame} \begin{frame} \frametitle{Bilinear Maps} Definition Bilinear Maps: \begin{itemize} \item \emph{Bilinear}: For all $P,Q \in G$, for all $a,b \in \mathbb{Z}$, $e(P^a,Q^b) = e(P,Q)^{ab}$ \item \emph{Non-degenerate}: There exists some $P,Q \in G$ such that $e(P,Q) \not 1$ where 1 is the identity of $\mathrm{G}$ \end{itemize} \end{frame} \begin{frame} \frametitle{Bilinear Maps: Signatures} \begin{itemize} \item given message $m$ and random number $r leftarrow \mathbb{Z}_q$ \end{itemize} \end{frame} \begin{frame} \frametitle{Bilinear Maps: Zero Knowledge Proofs} \begin{itemize} \item Do the same as before, but choose to additional random variables $r$ and $r'$ \end{itemize} \end{frame} \begin{frame} \frametitle{DAA Join: Member joins to Issuer's Group} \begin{center} \begin{footnotesize} \begin{tabular}{|lclcl|}\hline \multicolumn{1}{|c}{TPM}&&\multicolumn{1}{c}{Host}&&\multicolumn{1}{c|}{Issuer}\\\hline &&&$\xrightarrow{\text{JOIN}}$&$n\leftarrow\{0,1\}^{ln}$\\ $gsk\leftarrow\mathbb{Z}$&$\xleftarrow{\makebox[5mm]{n}}$&&$\xleftarrow{\makebox[5mm]{n}}$&\\ $Q\leftarrow g_1^{gsk}$&&&&\\ $\pi_1\rightarrow SPK\{(\alpha):g_1^\alpha\}$&$\xrightarrow{Q,\pi_1}$&&$\xrightarrow{Q,\pi_1}$&verify $\pi_1$\\ &&&&$r\leftarrow\mathbb{Z}_q$\\ &&&&$a\leftarrow g_1^r$\\ &&&&$b\leftarrow a^{x+ym}$\\ &&&&$c\leftarrow a^x\cdot Q^{rxy}$\\ &&&&$d\leftarrow Q^{ry}$\\ &&&&$\pi_2\leftarrow SPK\{(t):$\\ &&$e(a,X)\cdot e(c,Y)$&$\xleftarrow{a,b,c,d,\pi_2}$&$ b=g_1^t \wedge d=Q^t\}$\\ verify $\pi_2$&$\xleftarrow{b,d,\pi_2}$&$\stackrel{?}{=}e(b,g_2)$&&\\ store($gsk, b, d$)&$\xrightarrow{JOINED}$&store($a,b,c,d$)&&\\\hline \end{tabular} \end{footnotesize} \end{center} \end{frame} \end{document}