% ====================
% Preamble
% ====================
\documentclass[
  10pt,
  %% -- feed over latexmk see readme
  english,
]{bfhbeamer}

% Include Packages
\usepackage[french,german,english]{babel}  % https://www.namsu.de/Extra/pa

\useoutertheme{BFH-sidebar}

% Der folgende Block ist nur bei pdfTeX auf Versionen vor April 2018 notwendig
\usepackage{iftex}

%checklist
\usepackage{pifont}
\newcommand{\cmark}{\ding{51}}%
\newcommand{\xmark}{\ding{55}}%
\newcommand{\done}{\rlap{$\square$}{\raisebox{2pt}{\large\hspace{1pt}\cmark}}%
\hspace{-2.5pt}}
\newcommand{\wontfix}{\rlap{$\square$}{\large\hspace{1pt}\xmark}}

\ifPDFTeX
\usepackage[utf8]{inputenc} %kompatibilität mit TeX Versionen vor April 2018
\fi

%Activate the output of a frame number:
\setbeamertemplate{page number in head/foot}[framenumber]
\setbeamertemplate{section page}[true]
\setbeamertemplate{lecture page}[true]


%% %---------------------------------------------------------------------------
%% % Documents paths
%% %---------------------------------------------------------------------------
%% \makeatletter
%% \def\input@path{{lectures/}}
%% %or: \def\input@path{{/path/to/folder/}{/path/to/other/folder/}}
%% \makeatother
%---------------------------------------------------------------------------
% Graphics paths
%---------------------------------------------------------------------------
\graphicspath{{lectures/}{pictures/}{images/}}
%---------------------------------------------------------------------------

\LoadBFHModule{tabular,rules}

\usepackage{caption}

\usepackage{variables}

\usepackage{datetime}
\newdate{date}{21}{06}{2024}
\date{\displaydate{date}}
%---------------------------------------------------------------------------
\subtitle{By Johannes Casaburi, Lukas Matyja
\\ Advisors: Prof. Dr. Christian Grothoff, Prof. Dr. Emmanuel Benoist}

\lecture[SAMPLE]{\LaTeX Sample Lecture}{sample-lecture-label}

\version{1.0.0}

% ====================
% Body
% ====================

\begin{document}

%%%---------------------------------------
\begin{frame}[plain]
  \maketitle
\end{frame}
%%%---------------------------------------
\begin{frame}\frametitle{The other Donau  }
  \center
  \includegraphics[width=0.8\textwidth]{Donau_flood};
\end{frame}
%%%---------------------------------------
\begin{frame}\frametitle{Actors and their Requirements}
  \center
  \resizebox{250pt}{120pt}{%
  \begin{tikzpicture}
    \node (image) at (0,0) {\includegraphics[width=0.1\textwidth]{stickman}};
    \node at (0,-1.8) {Donor};
    %arrow
    \draw [-latex] (1,0) -- (7,0);
    %charity
    \node (image) at (8.5,0) {\includegraphics[width=0.15\textwidth]{charity}};
    \node at (8.5,-1.2) {Charity};
    %arrow
    \draw [-latex] (7,-1) -- (5,-2.5);
    %server
    \node (image) at (4,-3) {
    \includegraphics[width=0.12\textwidth]{tax-authority}};
    \node at (4,-4.1) {Tax Authority};
    %arrow
    \draw [-latex] (1,-1) -- (3,-2.5);
  \end{tikzpicture}\vspace{0.8cm}
  }
  \begin{columns}
    \begin{column}{0.5\textwidth}
      \begin{itemize}
        \item Donor:
        \begin{itemize}
          \item [$\square$]privacy preserving
          \item [$\square$]deduct donations from taxes easily
        \end{itemize}
        \item Charity:
        \begin{itemize}
          \item [$\square$]cheap to operate
        \end{itemize}
      \end{itemize}
    \end{column}
    \begin{column}{0.5\textwidth}
      \begin{itemize}
        \item Tax authority:
        \begin{itemize}
          \item [$\square$]validate donation receipts easily and quickly
          \item [$\square$]prevent donation fraud
        \end{itemize}
      \end{itemize}
    \end{column}
  \end{columns}
\end{frame}
%%%---------------------------------------
\begin{frame}\frametitle{Current Situation}
  \begin{itemize}
    \item Donation receipts are verified by hand.
    \item Donation fraud does not seem to be a problem.
    \item More attention is paid to unusually high donation amounts.
    \item The donor is required to provide proof.
  \end{itemize}
\end{frame}
%%%---------------------------------------
\begin{frame}\frametitle{Concept of Blind Signing}
  \center
  \begin{tikzpicture}
    \node (image) at (0,0) {\includegraphics[width=0.1\textwidth]{stickman}};
    \node[rectangle, text width=1.5cm, align=center,font=\tiny, draw=black!80, thick, inner sep=2pt] at (1.7,0) {AHVN13: 7560001010000};
    \node (image) at (8.5,0) {
    \includegraphics[width=0.12\textwidth]{servers}};
    \node at (8.5,-1.2) {Server};
  \end{tikzpicture}
\end{frame}
%%%---------------------------------------
\begin{frame}\frametitle{Concept of Blind Signing}
  \center
  \begin{tikzpicture}
    \node (image) at (0,0) {\includegraphics[width=0.1\textwidth]{stickman}};
    \node (image) at (1.5,0) {\includegraphics[width=0.08\textwidth]{letter}};
    \draw [-latex] (2.5,0) -- (7,0);
    \node (image) at (8.5,0) {
    \includegraphics[width=0.12\textwidth]{servers}};
    \node at (8.5,-1.2) {Server};
  \end{tikzpicture} \vspace{0.8cm}
   \begin{itemize}
    \item The user blinds the message with a private factor.
    \item The user sends the blinded message.
   \end{itemize}
\end{frame}
%%%---------------------------------------
\begin{frame}\frametitle{Concept of Blind Signing}
  \center
  \begin{tikzpicture}
    \node (image) at (0,0) {\includegraphics[width=0.1\textwidth]{stickman}};
    \draw [-latex] (5.7,0) -- (1.2,0);
    \node (image) at (6.8,0) {\includegraphics[width=0.08\textwidth]{letter}};
    \node (image) at (6.8,0) {\includegraphics[width=0.04\textwidth]{red_wax}};
    \node (image) at (8.5,0) {
    \includegraphics[width=0.12\textwidth]{servers}};
    \node at (8.5,-1.2) {Server};
  \end{tikzpicture} \vspace{0.8cm}
   \begin{itemize}
    \item Der Server signs the blinded message.
    \item Der Server sends back the created signature.
   \end{itemize}
\end{frame}
%%%---------------------------------------
\begin{frame}\frametitle{Concept of Blind Signing}
  \center
  \begin{tikzpicture}
    \node (image) at (0,0) {\includegraphics[width=0.1\textwidth]{stickman}};
    \node[rectangle, text width=1.5cm, align=center,font=\tiny, draw=black!80, thick, inner sep=2pt] at (1.7,0) {AHVN13: 7560001010000};
    \node (image) at (1.7,0) {\includegraphics[width=0.04\textwidth]{red_wax}};
    \node (image) at (8.5,0) {
    \includegraphics[width=0.12\textwidth]{servers}};
    \node at (8.5,-1.2) {Server};
  \end{tikzpicture}\vspace{0.8cm}
  \begin{itemize}
    \item The user makes the signature valid for the actual message by unblinding the received signature. For unblinding, the user needs the private factor used for blinding.
  \end{itemize}
\end{frame}
%%%---------------------------------------
\begin{frame}\frametitle{Issue Donation Receipts}
  \begin{tikzpicture}
    \node (image) at (0,0) {\includegraphics[width=0.1\textwidth]{stickman}};
    \draw [-latex] (1,0) -- (4,0);
    \node (image) at (2,0.5) {\includegraphics[width=0.08\textwidth]{letter}};
    \node at (2,0.5) {\Large{5}};
    \node (image) at (3.2,0.4) {\includegraphics[width=0.05\textwidth]{coins}};
    \node (image) at (5.3,0) {\includegraphics[width=0.15\textwidth]{charity}};
    \draw [-latex] (6.5,0) -- (9.5,0);
    \node (image) at (8,0.5) {\includegraphics[width=0.08\textwidth]{letter}};
    \node (image) at (8,0.5) {\includegraphics[width=0.05\textwidth]{blue_wax}};
    \node at (8,0.5) {\Large{5}};
    \node (image) at (11,0) {
    \includegraphics[width=0.12\textwidth]{servers}};
    \node at (11,-1.2) {Donau};
  \end{tikzpicture} \vspace{0.4cm}
   \begin{itemize}
    \item The donor blinds the donation receipt template and sends the donation of 5 CHF and the donation receipt request to the charity.
    \item The charity accepts the donation receipt request by signing the donation receipt template of the donor.
   \end{itemize}
\end{frame}
%%%---------------------------------------
\begin{frame}\frametitle{Issue Donation Receipts}
  \begin{tikzpicture}
    \node (image) at (0,0) {\includegraphics[width=0.1\textwidth]{stickman}};
    \draw [-latex] (1,0) -- (4,0);
    \node (image) at (1.2,0.4) {\includegraphics[width=0.04\textwidth]{letter}};
    \node at (1.2,0.4) {\Large{2}};
    \node (image) at (1.9,0.4)
    {\includegraphics[width=0.04\textwidth]{letter}};
    \node at (1.9,0.4) {\Large{2}};
    \node (image) at (2.6,0.4)
    {\includegraphics[width=0.04\textwidth]{letter}};
    \node at (2.6,0.4) {\Large{1}};
    \node (image) at (3.4,0.4)
    {\includegraphics[width=0.05\textwidth]{coins}};
    \node (image) at (5.3,0) {\includegraphics[width=0.15\textwidth]{charity}};
    \draw [-latex] (6.5,0) -- (9.5,0);
    \node (image) at (6.9,0.4) {\includegraphics[width=0.04\textwidth]{letter}};
    \node at (6.9,0.4) {\Large{2}};
    \node (image) at (7.6,0.4)
    {\includegraphics[width=0.04\textwidth]{letter}};
    \node at (7.6,0.4) {\Large{2}};
    \node (image) at (8.3,0.4)
    {\includegraphics[width=0.04\textwidth]{letter}};
    \node at (8.3,0.4) {\Large{1}};
    \node (image) at (9,0.4) {\includegraphics[width=0.05\textwidth]{blue_wax}};
    \node (image) at (11,0) {
    \includegraphics[width=0.12\textwidth]{servers}};
    \node at (11,-1.2) {Donau};
  \end{tikzpicture} \vspace{0.4cm}
  \begin{itemize}
    \item The hash of the donation unit public keys representing the value.
    \item The blinded donation receipt templates (BUDIs) contain all the same besides the random nonce and the donation unit.
    \begin{align*}
         BUDI :=  blinded(H(\texttt{taxid, salt}), nonce)
    \end{align*}
    \item The charity signs with an EdDSA key.
  \end{itemize}
\end{frame}
%%%---------------------------------------
\begin{frame}\frametitle{Issue Donation Receipts}
  \begin{tikzpicture}
    \node (image) at (0,0) {\includegraphics[width=0.1\textwidth]{stickman}};
    \draw [-latex] (4,0) -- (1,0);
    \node (image) at (1.8,-0.4) {\includegraphics[width=0.04\textwidth]{letter}};
    \node (image) at (1.8,-0.4) {\includegraphics[width=0.03\textwidth]{red_wax}};
    \node at (1.8,-0.4) {\large{2}};
    \node (image) at (2.5,-0.4)
    {\includegraphics[width=0.04\textwidth]{letter}};
    \node (image) at (2.5,-0.4)
    {\includegraphics[width=0.03\textwidth]{red_wax}};
    \node at (2.5,-0.4) {\large{2}};
    \node (image) at (3.2,-0.4)
    {\includegraphics[width=0.04\textwidth]{letter}};
    \node (image) at (3.2,-0.4)
    {\includegraphics[width=0.03\textwidth]{red_wax}};
    \node at (3.2,-0.4) {\large{1}};
    \node (image) at (5.3,0) {\includegraphics[width=0.15\textwidth]{charity}};
    \draw [-latex] (9.5,0) -- (6.5,0);
    \node (image) at (7.4,-0.4) {\includegraphics[width=0.04\textwidth]{letter}};
    \node (image) at (7.4,-0.4) {\includegraphics[width=0.03\textwidth]{red_wax}};
    \node at (7.4,-0.4) {\large{2}};
    \node (image) at (8.1,-0.4)
    {\includegraphics[width=0.04\textwidth]{letter}};
    \node (image) at (8.1,-0.4)
    {\includegraphics[width=0.03\textwidth]{red_wax}};
    \node at (8.1,-0.4) {\large{2}};
    \node (image) at (8.8,-0.4)
    {\includegraphics[width=0.04\textwidth]{letter}};
    \node (image) at (8.8,-0.4)
    {\includegraphics[width=0.03\textwidth]{red_wax}};
    \node at (8.8,-0.4) {\large{1}};
    \node (image) at (11,0) {
    \includegraphics[width=0.12\textwidth]{servers}};
    \node at (11,-1.2) {Donau};
  \end{tikzpicture} \vspace{0.4cm}
  \begin{itemize}
    \item Donau creates the donation receipts by blindly signing the donation receipt templates.
    \item Donau sends the blind signatures via charity back to the donor.
  \end{itemize}
\end{frame}
\note{
Show Donau overview.
}
%%%---------------------------------------
\begin{frame}\frametitle{Submit Donation Receipts}
  \center
  \begin{tikzpicture}
    \node (image) at (0,0) {\includegraphics[width=0.1\textwidth]{stickman}};
    %receipt
    \node[rectangle, text width=1cm, align=center,font=\tiny, draw=black!80, thick, inner sep=2pt, fill=white] at (2,1) {H(\texttt{taxid, salt}), nonce};
    \node (image) at (2,1) {\includegraphics[width=0.04\textwidth]{red_wax}};
    \node at (2,1) {\small{1}};
    %receipt
    \node[rectangle, text width=1cm, align=center,font=\tiny, draw=black!80, thick, inner sep=2pt, fill=white] at (3,0.9) {H(\texttt{taxid, salt}), nonce};
    \node (image) at (3,0.9) {\includegraphics[width=0.04\textwidth]{red_wax}};
    \node at (3,0.9) {\small{1}};
    %receipt
    \node[rectangle, text width=1cm, align=center,font=\tiny, draw=black!80, thick, inner
    sep=2pt, fill=white] at (4,0.8) {H(\texttt{taxid, salt}), nonce};
    \node (image) at (4,0.8) {\includegraphics[width=0.04\textwidth]{red_wax}};
    \node at (4,0.8) {\small{2}};
    %receipt
    \node[rectangle, text width=1cm, align=center,font=\tiny, draw=black!80, thick, inner
    sep=2pt, fill=white] at (5,0.7) {H(\texttt{taxid, salt}), nonce};
    \node (image) at (5,0.7) {\includegraphics[width=0.04\textwidth]{red_wax}};
    \node at (5,0.7) {\small{2}};
    %receipt
    \node[rectangle, text width=1cm, align=center,font=\tiny, draw=black!80, thick, inner
    sep=2pt, fill=white] at (6,0.6) {H(\texttt{taxid, salt}), nonce};
    \node (image) at (6,0.6) {\includegraphics[width=0.04\textwidth]{red_wax}};
    \node at (6,0.6) {\small{10}};
    %arrows
    \draw [-latex] (1,0.2) -- (7,0.2);
    \draw [-latex] (7,-0.2) -- (1,-0.2);
    %server
    \node (image) at (8.5,0) {
    \includegraphics[width=0.12\textwidth]{servers}};
    \node at (8.5,-1.2) {Donau};
    %donation statement
    \node (image) at (4,-1) {\includegraphics[width=0.1\textwidth]{gold_wax}};
    \node at (4,-1) {\large{16}};
  \end{tikzpicture}\vspace{0.4cm}
  \begin{itemize}
    \item The donor submits the signed donation receipts once a year.
    \begin{align*}
      donation\ receipt &= \langle H(\texttt{taxid, salt}), nonce, signature,  H(K_x^{pub}) \rangle
    \end{align*}
    \item Donau automatically checks the donation receipts and summarizes them to a donation statement. This and the sum of all donation receipts submitted are sent back.
  \end{itemize}
\end{frame}
%%%---------------------------------------
\begin{frame}\frametitle{Validation}
  \center
  \begin{tikzpicture}
    \node (image) at (0,0) {\includegraphics[width=0.1\textwidth]{stickman}};
    \node at (0,-1.8) {Donor};
    %arrow
    \draw [-latex] (1,-0.5) -- (7,-0.5);
    %QR-Code
    \draw (2.7,2.5) -- (3.4,0.9);
    \draw (4.9,2.5) -- (4.2,0.9);
    \node (image) at (3.8,2) {\includegraphics[width=0.05\textwidth]{gold_wax}};
    \node at (3.8,2) {\small{16}};
    \node at (3.8,2.5) {\tiny{7560001010000}};
    \node at (3.8,1.3) {\small{2024}};
    \node (image) at (3.8,0.2) {\includegraphics[width=0.1\textwidth]{qr-donau}};
    %server
    \node (image) at (8.5,0) {
    \includegraphics[width=0.1\textwidth]{stickman}};
    \node at (8.5,-1.8) {Tax Auditor};
  \end{tikzpicture}\vspace{0.4cm}
  \begin{itemize}
    \item The donor creates a QR code which contains the  total amount donated, the corresponding year, the tax id number and the donation statement signature.
    \item The tax auditor is able to view the data and  automatically check the signature using the provided smartphone app.
  \end{itemize}
\end{frame}
%%%---------------------------------------
\begin{frame}
  \center
  \includegraphics[width=1\textwidth]{donau_flow_register_charity}
  \\1. Donau registers a charity
\end{frame}
%%%---------------------------------------
\begin{frame}
  \center
  \includegraphics[width=1\textwidth]{issue-p1}
  \\2. Donor wants to donate to a charity
\end{frame}
%%%---------------------------------------
\begin{frame}
  \center
  \includegraphics[width=1\textwidth]{issue-p2}
  \\3. Donor sends donation
\end{frame}
%%%---------------------------------------
\begin{frame}
  \center
  \includegraphics[width=1\textwidth]{issue-p3}
  \\4. Donor unblinds donation receipts
\end{frame}
%%%---------------------------------------
\begin{frame}
  \center
  \includegraphics[width=1\textwidth]{donau_flow_submit_receipt}
  \\5. Donor requests donation statement
\end{frame}
%%%---------------------------------------
\begin{frame}\frametitle{Demonstration}
  \center
  \includegraphics[width=0.4\textwidth]{qr-valid-example}
  \\donation statement as QR code
\end{frame}
%%%---------------------------------------
\begin{frame}\frametitle{Architecture}
  \center
  \includegraphics[width=1\textwidth]{donau_system_arch}
\end{frame}
%%%---------------------------------------
\begin{frame}\frametitle{Database}
  \center
  \includegraphics[width=0.95\textwidth]{db_physical_model}
\end{frame}
%%%---------------------------------------
\begin{frame}\frametitle{Conclusion}
  \center
  \resizebox{250pt}{120pt}{%
  \begin{tikzpicture}
    \node (image) at (0,0) {\includegraphics[width=0.1\textwidth]{stickman}};
    \node at (0,-1.8) {Donor};
    %arrow
    \draw [-latex] (1,0) -- (7,0);
    %charity
    \node (image) at (8.5,0) {\includegraphics[width=0.15\textwidth]{charity}};
    \node at (8.5,-1.2) {Charity};
    %arrow
    \draw [-latex] (7,-1) -- (5,-2.5);
    %server
    \node (image) at (4,-3) {
    \includegraphics[width=0.12\textwidth]{tax-authority}};
    \node at (4,-4.1) {Tax Authority};
    %arrow
    \draw [-latex] (1,-1) -- (3,-2.5);
  \end{tikzpicture}\vspace{0.8cm}
  }
  \begin{columns}
    \begin{column}{0.5\textwidth}
      \begin{itemize}
        \item Donor:
        \begin{itemize}
          \item [\done]privacy preserving
          \item [\done]deduct donations from taxes easily
        \end{itemize}
        \item Charity:
        \begin{itemize}
          \item [\done]cheap to operate
        \end{itemize}
      \end{itemize}
    \end{column}
    \begin{column}{0.5\textwidth}
      \begin{itemize}
        \item Tax authority:
        \begin{itemize}
          \item [\done]validate donation receipts easily and quickly
          \item [\done]prevent donation fraud
        \end{itemize}
      \end{itemize}
    \end{column}
  \end{columns}
\end{frame}
%%%---------------------------------------
\begin{frame}{Acknowledgements}

  \begin{minipage}{0.45\textwidth} \ \\
    {\tiny Funded by the European Union (Project 101135475).}

    \begin{center}
      \includegraphics[width=0.5\textwidth]{../bandera.jpg}
    \end{center}
  \end{minipage}
  \hfill
  \begin{minipage}{0.45\textwidth}
    {\tiny Funded by SERI (HEU-Projekt 101135475-TALER).}

    \begin{center}
      \includegraphics[width=0.65\textwidth]{../sbfi.jpg}
    \end{center}
  \end{minipage}

  \vfill

  {\tiny Views and opinions expressed are however those of the author(s) only
    and do not necessarily reflect those of the European Union. Neither the
    European Union nor the granting authority can be held responsible for
    them.}
\end{frame}

\end{document}
