marketing

Marketing materials (presentations, posters, flyers)
Log | Files | Refs

commit 0aa5191a8c9d75ad1a6a0ea938acbf56a2c27408
parent 67eda62bad31fd331af76db9afd61f7d58042a46
Author: Christian Grothoff <grothoff@gnunet.org>
Date:   Fri, 15 Dec 2023 12:19:28 +0800

update cbt slides

Diffstat:
Mpresentations/comprehensive/cbt.tex | 374++++++++-----------------------------------------------------------------------
1 file changed, 36 insertions(+), 338 deletions(-)

diff --git a/presentations/comprehensive/cbt.tex b/presentations/comprehensive/cbt.tex @@ -204,7 +204,24 @@ \title{GNU Taler} %\subtitle{} -\setbeamertemplate{navigation symbols}{ \includegraphics[width=1cm]{tud-logo.pdf} \includegraphics[width=0.4cm]{logo-esen.pdf} \includegraphics[width=1cm]{logo-GlsBank.pdf} \includegraphics[width=0.6cm]{logo-MagNetBank.pdf} \includegraphics[width=0.4cm]{logo-ps.pdf} \includegraphics[width=0.4cm]{logo-nlnet.pdf} \includegraphics[width=0.4cm]{logo-HomoDigitalis.pdf} \includegraphics[width=0.4cm]{logo-codeblau.pdf} \includegraphics[width=1.4cm]{logo-tue.pdf} \includegraphics[width=0.6cm]{logo-visualvest.pdf} \includegraphics[width=1cm]{inria.pdf} \includegraphics[width=0.4cm]{logo-bfh.pdf} \includegraphics[width=1.6cm]{fub.pdf} \includegraphics[width=0.4cm]{ashoka.png} \includegraphics[width=0.4cm]{gnu.png} \includegraphics[width=1cm]{taler-logo-2021-inkscape.pdf} \hfill} +\setbeamertemplate{navigation symbols}{ + \includegraphics[width=0.4cm]{logo-bfh.pdf} + \includegraphics[width=1.6cm]{fub.pdf} + \includegraphics[width=1cm]{tud-logo.pdf} + \includegraphics[width=1.4cm]{logo-tue.pdf} + \includegraphics[width=1cm]{inria.pdf} + \includegraphics[width=1cm]{logo-GlsBank.pdf} + \includegraphics[width=0.6cm]{logo-MagNetBank.pdf} \ + \includegraphics[width=0.6cm]{logo-visualvest.pdf} + \includegraphics[width=0.4cm]{ashoka.png} + \includegraphics[width=0.4cm]{logo-esen.pdf} + \includegraphics[width=0.4cm]{gnu.png} + \includegraphics[width=0.4cm]{logo-HomoDigitalis.pdf} + \includegraphics[width=0.4cm]{logo-nlnet.pdf} + \includegraphics[width=0.4cm]{logo-codeblau.pdf} + \includegraphics[width=0.4cm]{logo-ps.pdf} + \includegraphics[width=1cm]{taler-logo-2021-inkscape.pdf} + \hfill} %\setbeamercovered{transparent=1} \author[C. Grothoff]{J. Burdges, F. Dold, {\bf C. Grothoff}, M. Stanisci} @@ -251,34 +268,6 @@ \section{GNU Taler: Introduction} -\begin{frame} - \vfill - \begin{center} - {\bf GNU Taler: Introduction} - \end{center} - \vfill -\end{frame} - - -\begin{frame}{GNU Taler} - \vfill - \begin{center} - {\huge {\bf Digital} cash, made \textbf{socially responsible}.} - \end{center} - \vfill - \begin{center} - \includegraphics[scale=0.3]{taler-logo-2021-inkscape.pdf} - \end{center} - \vfill - \begin{center} - Privacy-Preserving, Practical, Taxable, Free Software, Efficient - \end{center} - \vfill - \vfill -\ % -\end{frame} - - \begin{frame}{What is Taler?} \framesubtitle{\url{https://taler.net/en/features.html}} \noindent Taler is @@ -396,6 +385,20 @@ positives in fraud detection \vfill \end{frame} + +\begin{frame}{A Bachelor's Thesis Video} + \begin{center} + \movie[%scale=0.6, + autostart, + poster] + { + \includegraphics[height=0.6\textwidth,width=0.8\textwidth]{white.png} + } + {cs-movie.mp4} + \end{center} +\end{frame} + + \begin{frame}{How does it work?} We use a few ancient constructions: \begin{itemize} @@ -409,238 +412,7 @@ But of course we use modern instantiations. \end{frame} -\begin{frame}{Exchange setup: Create a denomination key (RSA)} - \begin{minipage}{6cm} - \begin{enumerate} - \item Pick random primes $p,q$. - \item Compute $n := pq$, $\phi(n) = (p-1)(q-1)$ - \item Pick small $e < \phi(n)$ such that - $d := e^{-1} \mod \phi(n)$ exists. - \item Publish public key $(e,n)$. - \end{enumerate} - \end{minipage} - \begin{minipage}{6cm} - \begin{tikzpicture} - \tikzstyle{def} = [node distance=1em and 1em, inner sep=0em, outer sep=.3em]; - \node (origin) at (0,0) {\includegraphics[width=0.2\textwidth]{dice.pdf}}; - \node (primes) [draw=none, below = of origin] at (0,0) {$(p, q)$}; - \node (seal) [def, draw=none, below left=of primes]{\includegraphics[width=0.15\textwidth]{seal.pdf}}; - \node (hammer) [def, draw=none, below right=of primes]{\includegraphics[width=0.15\textwidth]{hammer.pdf}}; - - \tikzstyle{C} = [color=black, line width=1pt] - - \draw [<-, C] (primes) -- (origin) node [midway, above, sloped] (TextNode) {}; - \draw [<-, C] (seal) -- (primes) node [midway, above, sloped] (TextNode) {}; - \draw [<-, C] (hammer) -- (primes) node [midway, above, sloped] (TextNode) {}; - \end{tikzpicture} -% \includegraphics[width=0.4\textwidth]{seal.pdf} - \end{minipage} -\end{frame} - - -\begin{frame}{Merchant: Create a signing key (EdDSA)} - \begin{minipage}{6cm} - \begin{itemize} - \item pick random $m \mod o$ as private key - \item $M = mG$ public key - \end{itemize} - \end{minipage} - \begin{minipage}{6cm} - \begin{tikzpicture} - \tikzstyle{def} = [node distance= 1em and 1em, inner sep=0em, outer sep=.3em]; - \node (origin) at (0,0) {\includegraphics[width=0.2\textwidth]{dice.pdf}}; - \node (m) [draw=none, below = of origin] at (0,0) {$m$}; - \node (seal) [draw=none, below=of m]{M}; - \tikzstyle{C} = [color=black, line width=1pt] - - \draw [<-, C] (m) -- (origin) node [midway, above, sloped] (TextNode) {}; - \draw [<-, C] (seal) -- (primes) node [midway, above, sloped] (TextNode) {}; - \end{tikzpicture} - \end{minipage} - \parbox[t]{3cm}{{\bf Capability:} $m \Rightarrow$ } - \raisebox{\dimexpr-\height+\baselineskip}{\includegraphics[width=0.1\textwidth]{merchant-sign.pdf}} -\end{frame} - - -\begin{frame}{Customer: Create a planchet (EdDSA)} - \begin{minipage}{8cm} - \begin{itemize} - \item Pick random $c \mod o$ private key - \item $C = cG$ public key - \end{itemize} - \end{minipage} - \begin{minipage}{4cm} - \begin{tikzpicture} - \tikzstyle{def} = [node distance= 1em and 1em, inner sep=0em, outer sep=.3em]; - \node (origin) at (0,0) {\includegraphics[width=0.2\textwidth]{dice.pdf}}; - \node (c) [draw=none, below = of origin] at (0,0) {$c$}; - \node (planchet) [draw=none, below=of c]{\includegraphics[width=0.4\textwidth]{planchet.pdf}}; - \tikzstyle{C} = [color=black, line width=1pt] - - \draw [<-, C] (c) -- (origin) node [midway, above, sloped] (TextNode) {}; - \draw [<-, C] (planchet) -- (c) node [midway, above, sloped] (TextNode) {}; - \end{tikzpicture} - \end{minipage} - \parbox[t]{3cm}{{\bf Capability:} $c \Rightarrow$ } - \raisebox{\dimexpr-\height+\baselineskip}{\includegraphics[width=0.1\textwidth]{planchet-sign.pdf}} -\end{frame} - - -\begin{frame}{Customer: Blind planchet (RSA)} - \begin{minipage}{6cm} - \begin{enumerate} - \item Obtain public key $(e,n)$ - \item Compute $f := FDH(C)$, $f < n$. - \item Pick blinding factor $b \in \mathbb Z_n$ - \item Transmit $f' := f b^e \mod n$ - \end{enumerate} - \end{minipage} - \begin{minipage}{6cm} - \begin{tikzpicture} - \tikzstyle{def} = [node distance= 2em and 0.5em, inner sep=0em, outer sep=.3em]; - \node (origin) at (0,0) {\includegraphics[width=0.2\textwidth]{dice.pdf}}; - \node (b) [def, draw=none, below = of origin] at (0,-0.2) {$b$}; - \node (blinded) [def, draw=none, below right=of b]{\includegraphics[width=0.2\textwidth]{blinded.pdf}}; - \node (planchet) [def, draw=none, above right=of blinded]{\includegraphics[width=0.15\textwidth]{planchet.pdf}}; - \node (exchange) [node distance=4em and 0.5em, draw, below =of blinded]{Exchange}; - \tikzstyle{C} = [color=black, line width=1pt] - - \draw [<-, C] (b) -- (origin) node [midway, above, sloped] (TextNode) {}; - \draw [<-, C] (blinded) -- (planchet) node [midway, above, sloped] (TextNode) {}; - \draw [<-, C] (blinded) -- (b) node [midway, above, sloped] (TextNode) {}; - \draw [<-, C] (exchange) -- (blinded) node [midway, above, sloped] (TextNode) {{\small transmit}}; - \end{tikzpicture} - \end{minipage} -\end{frame} - - -\begin{frame}{Exchange: Blind sign (RSA)} - \begin{minipage}{6cm} - \begin{enumerate} - \item Receive $f'$. - \item Compute $s' := f'^d \mod n$. - \item Send signature $s'$. - \end{enumerate} - \end{minipage} - \begin{minipage}{6cm} - \begin{tikzpicture} - \tikzstyle{def} = [node distance= 2em and 0.5em, inner sep=0em, outer sep=.3em]; - \node (hammer) [def, draw=none] at (0,0) {\includegraphics[width=0.15\textwidth]{hammer.pdf}}; - \node (signed) [def, draw=none, below left=of hammer]{\includegraphics[width=0.2\textwidth]{sign.pdf}}; - \node (blinded) [def, draw=none, above left=of signed]{\includegraphics[width=0.15\textwidth]{blinded.pdf}}; - \node (customer) [node distance=4em and 0.5em, draw, below =of signed]{Customer}; - \tikzstyle{C} = [color=black, line width=1pt] - - \draw [<-, C] (signed) -- (hammer) node [midway, above, sloped] (TextNode) {}; - \draw [<-, C] (signed) -- (blinded) node [midway, above, sloped] (TextNode) {}; - \draw [<-, C] (customer) -- (signed) node [midway, above, sloped] (TextNode) {{\small transmit}}; - \end{tikzpicture} - \end{minipage} -\end{frame} - - -\begin{frame}{Customer: Unblind coin (RSA)} - \begin{minipage}{6cm} - \begin{enumerate} - \item Receive $s'$. - \item Compute $s := s' b^{-1} \mod n$ % \\ - % ($(f')^d = (f b^e)^d = f^d b$). - \end{enumerate} - \end{minipage} - \begin{minipage}{6cm} - \begin{tikzpicture} - \tikzstyle{def} = [node distance= 2em and 0.5em, inner sep=0em, outer sep=.3em]; - \node (b) [def, draw=none] at (0,0) {$b$}; - \node (coin) [def, draw=none, below left=of b]{\includegraphics[width=0.2\textwidth]{coin.pdf}}; - \node (signed) [def, draw=none, above left=of coin]{\includegraphics[width=0.15\textwidth]{sign.pdf}}; - \tikzstyle{C} = [color=black, line width=1pt] - - \draw [<-, C] (coin) -- (b) node [midway, above, sloped] (TextNode) {}; - \draw [<-, C] (coin) -- (signed) node [midway, above, sloped] (TextNode) {}; - \end{tikzpicture} - \end{minipage} -\end{frame} - - -\begin{frame}{Customer: Build shopping cart} - \begin{center} - \begin{tikzpicture} - \tikzstyle{def} = [node distance= 1em and 1em, inner sep=0em, outer sep=.3em]; - \node (origin) [draw=none] at (0,0) {\includegraphics[width=0.2\textwidth]{cart.pdf}}; - \node (merchant) [node distance=4em and 0.5em, draw, below =of origin]{\includegraphics[width=0.2\textwidth]{shop.pdf}}; - \tikzstyle{C} = [color=black, line width=1pt]; - \draw [<-, C] (merchant) -- (origin) node [midway, above, sloped] (TextNode) {{\small transmit}}; - \end{tikzpicture} - \end{center} -\end{frame} - - -\begin{frame}{Merchant: Propose contract (EdDSA)} - \begin{minipage}{6cm} - \begin{enumerate} - \item Complete proposal $D$. - \item Send $D$, $EdDSA_m(D)$ - \end{enumerate} - \end{minipage} - \begin{minipage}{6cm} - \begin{tikzpicture} - \tikzstyle{def} = [node distance=2em and 0.5em, inner sep=0em, outer sep=.3em]; - \node (cart) [def, draw=none] at (0,0) {\includegraphics[width=0.15\textwidth]{cart.pdf}}; - \node (proposal) [def, draw=none, below right=of cart]{\includegraphics[width=0.5\textwidth]{merchant_propose.pdf}}; - \node (customer) [node distance=4em and 0.5em, draw, below =of proposal]{Customer}; - \tikzstyle{C} = [color=black, line width=1pt]; - \node (sign) [def, draw=none, above right=of proposal] {$m$}; - \tikzstyle{C} = [color=black, line width=1pt] - - \draw [<-, C] (proposal) -- (sign) node [midway, above, sloped] (TextNode) {}; - \draw [<-, C] (proposal) -- (cart) node [midway, above, sloped] (TextNode) {}; - \draw [<-, C] (customer) -- (proposal) node [midway, above, sloped] (TextNode) {{\small transmit}}; - \end{tikzpicture} - \end{minipage} -\end{frame} - - -\begin{frame}{Customer: Spend coin (EdDSA)} - \begin{minipage}{6cm} - \begin{enumerate} - \item Receive proposal $D$, $EdDSA_m(D)$. - \item Send $s$, $C$, $EdDSA_c(D)$ - \end{enumerate} - \end{minipage} - \begin{minipage}{6cm} - \begin{tikzpicture} - \tikzstyle{def} = [node distance=2em and 0.4em, inner sep=0em, outer sep=.3em]; - \node (proposal) [def, draw=none] at (0,0) {\includegraphics[width=0.15\textwidth]{merchant_propose.pdf}}; - \node (contract) [def, draw=none, below right=of cart]{\includegraphics[width=0.3\textwidth]{contract.pdf}}; - \node (c) [def, draw=none, above=of contract] {$c$}; - \node (merchant) [node distance=4em and 0.5em, draw, below=of contract]{Merchant}; - \node (coin) [def, draw=none, right=of contract]{\includegraphics[width=0.2\textwidth]{coin.pdf}}; - \tikzstyle{C} = [color=black, line width=1pt] - - \draw [<-, C] (contract) -- (c) node [midway, above, sloped] (TextNode) {}; - \draw [<-, C] (contract) -- (proposal) node [midway, above, sloped] (TextNode) {}; - \draw [<-, C] (merchant) -- (contract) node [midway, above, sloped] (TextNode) {{\small transmit}}; - \draw [<-, C] (merchant) -- (coin) node [midway, below, sloped] (TextNode) {{\small transmit}}; - \end{tikzpicture} - \end{minipage} -\end{frame} - - -\begin{frame}{Merchant and Exchange: Verify coin (RSA)} - \begin{minipage}{6cm} - \begin{equation*} - s^e \stackrel{?}{\equiv} FDH(C) \mod n - \end{equation*} - \end{minipage} - \begin{minipage}{6cm} - \begin{minipage}{0.2\textwidth} - \includegraphics[width=\textwidth]{coin.pdf} - \end{minipage} - $\stackrel{?}{\Leftrightarrow}$ - \begin{minipage}{0.2\textwidth} - \includegraphics[width=\textwidth]{seal.pdf} - \end{minipage} - \end{minipage} +\begin{frame}{Double Spending} \vfill The exchange does not only verify the signature, but also checks that the coin was not double-spent. @@ -655,15 +427,6 @@ But of course we use modern instantiations. \section{Offline payments} -\begin{frame} - \vfill - \begin{center} - {\bf Offline payments} - \end{center} - \vfill -\end{frame} - - \begin{frame}{Requirements: Online vs. Offline Digital Currencies} \framesubtitle{\url{https://taler.net/papers/euro-bearer-online-2021.pdf}} \begin{itemize} @@ -682,22 +445,7 @@ But of course we use modern instantiations. \end{frame} -\begin{frame}{Fully Offline Payments {\bf (WiP)}} -\framesubtitle{\url{https://docs.taler.net/design-documents/030-offline-payments.html}} -Many central banks today demand offline capabilities for digital payment solutions. -\vfill -\noindent -Three possible approaches: -\begin{enumerate} - \item Trust-based offline payments (has counterparty and/or privacy risks) - \item Full HSM Taler wallet (has hardware costs) - \item Light-weight HSM balance register -\end{enumerate} -\vfill -\end{frame} - - -\begin{frame}{Partially Offline Payments with GNU Taler\footnote{Joint work with Emmanuel Benoist, Priscilla Huang and Sebastian Marchano}} +\begin{frame}{Partially Offline Payments with GNU Taler} \begin{center} \resizebox{8cm}{7cm}{ @@ -902,28 +650,6 @@ Designed and implemented an age restriction scheme with the following goals: \end{frame} -\begin{frame}{Joomla! Taler payment plugin} -\begin{minipage}{6cm} - \begin{itemize} - \item Joomla! is an e-commerce platform - \item Joomla! payment plugin enables payments via GNU Taler - \item Features include: - \begin{itemize} - \item Trivial configuration - \item Support for refunds - \item Full internationalization - \end{itemize} - \item Joomla! and its plugins are implemented in PHP - \end{itemize} -\end{minipage} -% FIXME: add screenshots -%\begin{minipage}{5cm} -% \includegraphics[width=4cm]{screenshots/woocommerce-cart.png} -% \includegraphics[width=4cm]{screenshots/woocommerce-settings.png} -% \end{minipage} -\end{frame} - - \begin{frame}{Point-of-Sale App for Android} \begin{minipage}{7cm} @@ -990,29 +716,13 @@ Designed and implemented an age restriction scheme with the following goals: \end{frame} -\begin{frame}{Depolymerization} - Depolymerization is a bridge between GNU Taler and blockchains, - making Taler a layer 2 system for crypto-currencies (like Lightning). - - \begin{itemize} - \item Currently implemented for Bitcoin and Ethereum - crypto-currencies, with the DLTs as the ``RTGS'' - \item Provides same API to Exchange as LibEuFin -% \item Transaction rate and speed limited by the underlying blockchain - \item Implemented in Rust - \end{itemize} - \begin{center} - \url{https://bitcoin.ice.bfh.ch/} - \end{center} -\end{frame} - \section{Performance Experiments} \begin{frame} \vfill \begin{center} - {\bf Performance}\footnote{Joint work with Marco Boss} + {\bf Performance} \end{center} \vfill \end{frame} @@ -1035,17 +745,6 @@ Designed and implemented an age restriction scheme with the following goals: \end{frame} -\begin{frame}{A Bachelor's Thesis Video} - \begin{center} - \movie[%scale=0.6, - autostart, - poster] - { - \includegraphics[height=0.6\textwidth,width=0.8\textwidth]{white.png} - } - {cs-movie.mp4} - \end{center} -\end{frame} \section{Future Work \& Conclusion} @@ -1096,6 +795,7 @@ Designed and implemented an age restriction scheme with the following goals: \item {\bf The GNU Project}: \\ Integration into FLOSS software \item {\bf Anastasis SARL}: \\ Distributed key escrow for backups \item {\bf Fraunhofer Gesellschaft}: \\ Identity management \& SSI \& wallet-to-wallet communication + \item {\bf Chelpis (Ming Chih)}: Regional support partner for Taiwan ({\bf new}, \url{https://www.taiwannews.com.tw/en/news/4958467}) % \item {\bf Fiscaltrust GmbH}: \\ Point-of-sale integration ({\bf new}) \end{description} \end{frame} @@ -1136,8 +836,6 @@ Designed and implemented an age restriction scheme with the following goals: \item Parallel verification of RSA signatures on GPUs \item Tax-deductable receipts for donations to charities \item Unlinkable anonymous subscriptions and discount tokens - \item Support for illiterate and innumerate users\footnote{Background: \url{https://myoralvillage.org/}} - (not yet funded) \end{itemize} \end{frame}