gnunet-svn
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[taler-marketing] branch master updated: add Anastasis slides


From: gnunet
Subject: [taler-marketing] branch master updated: add Anastasis slides
Date: Tue, 23 Aug 2022 11:06:47 +0200

This is an automated email from the git hooks/post-receive script.

grothoff pushed a commit to branch master
in repository marketing.

The following commit(s) were added to refs/heads/master by this push:
     new 1954178  add Anastasis slides
1954178 is described below

commit 195417840aada878aa249f4db2fa3e17ed71bf7d
Author: Christian Grothoff <christian@grothoff.org>
AuthorDate: Tue Aug 23 11:06:39 2022 +0200

    add Anastasis slides
---
 2022-nullcon/adversary.odg               | Bin 0 -> 24160 bytes
 2022-nullcon/adversary.pdf               | Bin 0 -> 54144 bytes
 2022-nullcon/anastasis-presentation.pptx | Bin 0 -> 9891200 bytes
 2022-nullcon/ashoka.png                  | Bin 0 -> 20663 bytes
 2022-nullcon/backup.mp4                  | Bin 0 -> 3364637 bytes
 2022-nullcon/bandiera_stelle.png         | Bin 0 -> 2519 bytes
 2022-nullcon/bfh.png                     | Bin 0 -> 6797 bytes
 2022-nullcon/bootcamp.pdf                | Bin 0 -> 122017 bytes
 2022-nullcon/bootcamp.tex                | 233 ++++++++++++++
 2022-nullcon/compare.pdf                 | Bin 0 -> 32922 bytes
 2022-nullcon/compare.tex                 | 125 ++++++++
 2022-nullcon/gantt.tex                   |  39 +++
 2022-nullcon/identity.odg                | Bin 0 -> 14194 bytes
 2022-nullcon/identity.pdf                | Bin 0 -> 26694 bytes
 2022-nullcon/logo.png                    | Bin 0 -> 1915 bytes
 2022-nullcon/motivation.pdf              | Bin 0 -> 1758822 bytes
 2022-nullcon/mvp.pdf                     | Bin 0 -> 2401839 bytes
 2022-nullcon/mvp.tex                     | 242 +++++++++++++++
 2022-nullcon/ngi_ledger.pdf              | Bin 0 -> 18574 bytes
 2022-nullcon/nullcon.pdf                 | Bin 0 -> 3664492 bytes
 2022-nullcon/nullcon.tex                 | 513 +++++++++++++++++++++++++++++++
 2022-nullcon/overview.odg                | Bin 0 -> 15857 bytes
 2022-nullcon/overview.pdf                | Bin 0 -> 27585 bytes
 2022-nullcon/polynominal.png             | Bin 0 -> 14879 bytes
 2022-nullcon/recovery.mp4                | Bin 0 -> 2019726 bytes
 2022-nullcon/roadmap.pdf                 | Bin 0 -> 23611 bytes
 2022-nullcon/roadmap.tex                 | 115 +++++++
 2022-nullcon/simplifications.odg         | Bin 0 -> 29138 bytes
 2022-nullcon/simplifications.pdf         | Bin 0 -> 23381 bytes
 2022-nullcon/step1.odg                   | Bin 0 -> 234640 bytes
 2022-nullcon/step1.pdf                   | Bin 0 -> 65727 bytes
 2022-nullcon/step11.odg                  | Bin 0 -> 245959 bytes
 2022-nullcon/step11.pdf                  | Bin 0 -> 89670 bytes
 2022-nullcon/step12.odg                  | Bin 0 -> 247111 bytes
 2022-nullcon/step12.pdf                  | Bin 0 -> 93287 bytes
 2022-nullcon/step13.odg                  | Bin 0 -> 245117 bytes
 2022-nullcon/step13.pdf                  | Bin 0 -> 81641 bytes
 2022-nullcon/step14.odg                  | Bin 0 -> 242957 bytes
 2022-nullcon/step14.pdf                  | Bin 0 -> 81449 bytes
 2022-nullcon/step15.odg                  | Bin 0 -> 242449 bytes
 2022-nullcon/step15.pdf                  | Bin 0 -> 96116 bytes
 2022-nullcon/step16.odg                  | Bin 0 -> 238416 bytes
 2022-nullcon/step16.pdf                  | Bin 0 -> 67053 bytes
 2022-nullcon/step2.odg                   | Bin 0 -> 235134 bytes
 2022-nullcon/step2.pdf                   | Bin 0 -> 65792 bytes
 2022-nullcon/step3.odg                   | Bin 0 -> 15257 bytes
 2022-nullcon/step3.pdf                   | Bin 0 -> 27284 bytes
 2022-nullcon/step4.odg                   | Bin 0 -> 13355 bytes
 2022-nullcon/step4.pdf                   | Bin 0 -> 15229 bytes
 2022-nullcon/step5.odg                   | Bin 0 -> 238628 bytes
 2022-nullcon/step5.pdf                   | Bin 0 -> 72759 bytes
 2022-nullcon/step6.odg                   | Bin 0 -> 238338 bytes
 2022-nullcon/step6.pdf                   | Bin 0 -> 80770 bytes
 2022-nullcon/step7.odg                   | Bin 0 -> 241010 bytes
 2022-nullcon/step7.pdf                   | Bin 0 -> 89793 bytes
 2022-nullcon/step8.odg                   | Bin 0 -> 243445 bytes
 2022-nullcon/step8.pdf                   | Bin 0 -> 90350 bytes
 2022-nullcon/technically.pdf             | Bin 0 -> 194476 bytes
 2022-nullcon/what.pdf                    | Bin 0 -> 335680 bytes
 2022-nullcon/white.png                   | Bin 0 -> 200 bytes
 60 files changed, 1267 insertions(+)

diff --git a/2022-nullcon/adversary.odg b/2022-nullcon/adversary.odg
new file mode 100644
index 0000000..13ed93e
Binary files /dev/null and b/2022-nullcon/adversary.odg differ
diff --git a/2022-nullcon/adversary.pdf b/2022-nullcon/adversary.pdf
new file mode 100644
index 0000000..8c39af2
Binary files /dev/null and b/2022-nullcon/adversary.pdf differ
diff --git a/2022-nullcon/anastasis-presentation.pptx 
b/2022-nullcon/anastasis-presentation.pptx
new file mode 100644
index 0000000..1acd581
Binary files /dev/null and b/2022-nullcon/anastasis-presentation.pptx differ
diff --git a/2022-nullcon/ashoka.png b/2022-nullcon/ashoka.png
new file mode 100644
index 0000000..e5bbfb7
Binary files /dev/null and b/2022-nullcon/ashoka.png differ
diff --git a/2022-nullcon/backup.mp4 b/2022-nullcon/backup.mp4
new file mode 100644
index 0000000..dfbae1c
Binary files /dev/null and b/2022-nullcon/backup.mp4 differ
diff --git a/2022-nullcon/bandiera_stelle.png b/2022-nullcon/bandiera_stelle.png
new file mode 100644
index 0000000..dfb0583
Binary files /dev/null and b/2022-nullcon/bandiera_stelle.png differ
diff --git a/2022-nullcon/bfh.png b/2022-nullcon/bfh.png
new file mode 100644
index 0000000..6262040
Binary files /dev/null and b/2022-nullcon/bfh.png differ
diff --git a/2022-nullcon/bootcamp.pdf b/2022-nullcon/bootcamp.pdf
new file mode 100644
index 0000000..03954d7
Binary files /dev/null and b/2022-nullcon/bootcamp.pdf differ
diff --git a/2022-nullcon/bootcamp.tex b/2022-nullcon/bootcamp.tex
new file mode 100644
index 0000000..02df167
--- /dev/null
+++ b/2022-nullcon/bootcamp.tex
@@ -0,0 +1,233 @@
+\pdfminorversion=3
+\documentclass[fleqn,xcolor={usenames,dvipsnames,table}]{beamer}
+\usepackage{amsmath}
+\usepackage{multimedia}
+\usepackage[utf8]{inputenc}
+\usepackage{framed,color,ragged2e}
+\usepackage[absolute,overlay]{textpos}
+\definecolor{shadecolor}{rgb}{0.8,0.8,0.8}
+\usetheme{boxes}
+\setbeamertemplate{navigation symbols}{}
+\usepackage{graphicx}
+\usepackage{listings}
+\usepackage{tikz}
+\usetikzlibrary[positioning]
+\usetikzlibrary{patterns}
+\usetikzlibrary{arrows,decorations.markings,fit}
+\usetikzlibrary{shapes}
+\usepackage{eurosym}
+\usepackage[normalem]{ulem}
+\usepackage{listings}
+\usepackage{adjustbox}
+
+% CSS
+\lstdefinelanguage{CSS}{
+  basicstyle=\ttfamily\scriptsize,
+  
keywords={color,background-image:,margin,padding,font,weight,display,position,top,left,right,bottom,list,style,border,size,white,space,min,width,
 transition:, transform:, transition-property, transition-duration, 
transition-timing-function},
+  sensitive=true,
+  morecomment=[l]{//},
+  morecomment=[s]{/*}{*/},
+  morestring=[b]',
+  morestring=[b]",
+  alsoletter={:},
+  alsodigit={-}
+}
+
+% JavaScript
+\lstdefinelanguage{JavaScript}{
+  basicstyle=\ttfamily\scriptsize,
+  morekeywords={typeof, new, true, false, catch, function, return, null, 
catch, switch, var, if, in, while, do, else, case, break},
+  morecomment=[s]{/*}{*/},
+  morecomment=[l]//,
+  morestring=[b]",
+  morestring=[b]'
+}
+
+\lstdefinelanguage{HTML5}{
+  basicstyle=\ttfamily\scriptsize,
+  language=html,
+  sensitive=true,
+  alsoletter={<>=-},
+  morecomment=[s]{<!-}{-->},
+  tag=[s],
+  otherkeywords={
+  % General
+  >,
+  % Standard tags
+       <!DOCTYPE,
+  </html, <html, <head, <title, </title, <style, </style, <link, </head, 
<meta, />,
+       % body
+       </body, <body,
+       % Divs
+       </div, <div, </div>,
+       % Paragraphs
+       </p, <p, </p>,
+       % scripts
+       </script, <script,
+  % More tags...
+  <canvas, /canvas>, <svg, <rect, <animateTransform, </rect>, </svg>, <video, 
<source, <iframe, </iframe>, </video>, <image, </image>
+  },
+  ndkeywords={
+  % General
+  =,
+  % HTML attributes
+  charset=, src=, id=, width=, height=, style=, type=, rel=, href=,
+  % SVG attributes
+  fill=, attributeName=, begin=, dur=, from=, to=, poster=, controls=, x=, y=, 
repeatCount=, xlink:href=,
+  % CSS properties
+  margin:, padding:, background-image:, border:, top:, left:, position:, 
width:, height:,
+       % CSS3 properties
+  transform:, -moz-transform:, -webkit-transform:,
+  animation:, -webkit-animation:,
+  transition:,  transition-duration:, transition-property:, 
transition-timing-function:,
+  }
+}
+
+\lstdefinelanguage{JavaScript}{
+  basicstyle=\ttfamily\scriptsize,
+  keywords={typeof, new, true, false, catch, function, return, null, catch, 
switch, var, if, in, while, do, else, case, break, for},
+  keywordstyle=\color{blue}\bfseries,
+  ndkeywords={class, export, boolean, throw, implements, import, this},
+  ndkeywordstyle=\color{darkgray}\bfseries,
+  identifierstyle=\color{black},
+  sensitive=false,
+  comment=[l]{//},
+  morecomment=[s]{/*}{*/},
+  commentstyle=\color{purple}\ttfamily,
+  stringstyle=\color{red}\ttfamily,
+  morestring=[b]',
+  morestring=[b]"
+}
+
+\usetikzlibrary{shapes,arrows}
+\usetikzlibrary{positioning}
+\usetikzlibrary{calc}
+
+\title{Anastasis}
+\subtitle{Key backup and recovery}
+
+\setbeamertemplate{navigation symbols}{\includegraphics[width=2.3cm]{bfh.png} 
\includegraphics[width=0.4cm]{ashoka.png}}
+%\setbeamercovered{transparent=1}
+
+\author[C. Grothoff]{B. Alp, V. Mohan, C. Grothoff, B. Pena, F. Dold}
+\date{\today}
+\institute{Anastasis SARL}
+
+
+\begin{document}
+
+\justifying
+
+\begin{frame}
+  \begin{center}
+    \LARGE {\bf Anastasis}
+
+    \vfill
+%    \includegraphics[width=0.66\textwidth]{logo-2017-fr.pdf}
+%    \includegraphics[width=0.66\textwidth]{logo.png}
+
+    \vfill
+  \end{center}
+\begin{textblock*}{6cm}(.5cm,7.7cm) % {block width} (coords)
+    {\Large {\bf \href{https://anastasis.lu/}{anastasis.lu}}} \\
+    \href{https://twitter.com/anastasis-sarl}{anastasis-sarl@twitter}
+\end{textblock*}
+
+% Substitute based on who is giving the talk!
+ \begin{textblock*}{6cm}(6.7cm,7.7cm) % {block width} (coords)
+   {\hfill {\Large {\bf Vaishnavi Mohan \&} \\
+    \hfill {\bf Christian Grothoff}} \\
+    \hfill \{mohan,grothoff\}@anastasis.lu }
+\end{textblock*}
+
+\end{frame}
+
+\section{Introduction}
+
+\begin{frame}{Main Points}
+  \framesubtitle{https://anastasis.lu/}
+  \begin{center}
+    \movie[%scale=0.6,
+           autostart,
+           poster]
+           {
+               
\includegraphics[height=0.6\textwidth,width=0.8\textwidth]{white.png}
+           }
+          {backup.mp4}
+
+  {\tiny Backup}
+  \end{center}
+\end{frame}
+
+
+\begin{frame}{Main Points}
+  \framesubtitle{https://anastasis.lu/}
+\begin{center}
+    \movie[%scale=0.6,
+           autostart,
+           poster]
+           {
+               
\includegraphics[height=0.6\textwidth,width=0.8\textwidth]{white.png}
+           }
+          {recovery.mp4}
+
+  {\tiny Recovery}
+\end{center}
+\end{frame}
+
+
+\begin{frame}{Human planning}
+\begin{description}
+\item[Belen] UX design
+\item[Vaishnavi] Backend
+\item[Florian] Android Frontend
+\item[Christian] Gtk+ Frontend \& Crypto
+\item[Dennis] REST frontend
+\item[Dominik] REST backend
+\item[Berna] Business
+\end{description}
+\end{frame}
+
+
+\begin{frame}{Timeline}
+\begin{center}
+\small
+\input{gantt.tex}
+\end{center}
+\end{frame}
+
+
+\begin{frame}{Challenges}
+  \begin{itemize}
+  \item Collecting payments:
+  \begin{itemize}
+  \item integration with Stripe
+  \item integration with PayPal
+  \item integration with Blockchain
+  \end{itemize}
+  \item Localization (need advice from residents in each EU country \& 
translations) -- {\bf dyne?}
+%  \item Business model (pricing, fee structure) -- {\bf bluemorpho?}
+  \item Customer acquisition -- {\bf you?}
+  \end{itemize}
+\end{frame}
+
+
+\begin{frame}
+\frametitle{Do you have any questions?}
+\vfill
+References:
+  \begin{enumerate}
+ \item{Dennis Neufeld and Dominik Meister.
+       {\em Anastasis: Password-less key recovery via multi-factormulti-party 
authentication}.
+       {\bf BFH, 2020}.}
+ \item{Christian Grothoff, Bart Polot and Carlo von Loesch.
+       {\em The Internet is broken: Idealistic Ideas for Building a GNU 
Network}.
+       {\bf W3C/IAB Workshop on Strengthening the Internet Against Pervasive 
Monitoring (STRINT)}, 2014.}
+  \item{Phillip Rogaway.
+       {\em The Moral Character of Cryptographic Work}.
+       {\bf Asiacrypt}, 2015.} \label{bib:rogaway}
+\end{enumerate}
+\end{frame}
+
+
+\end{document}
diff --git a/2022-nullcon/compare.pdf b/2022-nullcon/compare.pdf
new file mode 100644
index 0000000..209e18c
Binary files /dev/null and b/2022-nullcon/compare.pdf differ
diff --git a/2022-nullcon/compare.tex b/2022-nullcon/compare.tex
new file mode 100644
index 0000000..1e26016
--- /dev/null
+++ b/2022-nullcon/compare.tex
@@ -0,0 +1,125 @@
+\pdfminorversion=3
+\documentclass[fleqn,xcolor={usenames,dvipsnames,table}]{beamer}
+\usepackage{amsmath}
+\usepackage{multimedia}
+\usepackage[utf8]{inputenc}
+\usepackage{framed,color,ragged2e}
+\usepackage[absolute,overlay]{textpos}
+\definecolor{shadecolor}{rgb}{0.8,0.8,0.8}
+\usetheme{boxes}
+\setbeamertemplate{navigation symbols}{}
+\usepackage{graphicx}
+\usepackage{listings}
+\usepackage{tikz}
+\usetikzlibrary[positioning]
+\usetikzlibrary{patterns}
+\usetikzlibrary{arrows,decorations.markings,fit}
+\usetikzlibrary{shapes}
+\usepackage{eurosym}
+\usepackage{url}
+\usepackage[normalem]{ulem}
+\usepackage{listings}
+\usepackage{adjustbox}
+
+% CSS
+\lstdefinelanguage{CSS}{
+  basicstyle=\ttfamily\scriptsize,
+  
keywords={color,background-image:,margin,padding,font,weight,display,position,top,left,right,bottom,list,style,border,size,white,space,min,width,
 transition:, transform:, transition-property, transition-duration, 
transition-timing-function},
+  sensitive=true,
+  morecomment=[l]{//},
+  morecomment=[s]{/*}{*/},
+  morestring=[b]',
+  morestring=[b]",
+  alsoletter={:},
+  alsodigit={-}
+}
+
+% JavaScript
+\lstdefinelanguage{JavaScript}{
+  basicstyle=\ttfamily\scriptsize,
+  morekeywords={typeof, new, true, false, catch, function, return, null, 
catch, switch, var, if, in, while, do, else, case, break},
+  morecomment=[s]{/*}{*/},
+  morecomment=[l]//,
+  morestring=[b]",
+  morestring=[b]'
+}
+
+\lstdefinelanguage{HTML5}{
+  basicstyle=\ttfamily\scriptsize,
+  language=html,
+  sensitive=true,
+  alsoletter={<>=-},
+  morecomment=[s]{<!-}{-->},
+  tag=[s],
+  otherkeywords={
+  % General
+  >,
+  % Standard tags
+       <!DOCTYPE,
+  </html, <html, <head, <title, </title, <style, </style, <link, </head, 
<meta, />,
+       % body
+       </body, <body,
+       % Divs
+       </div, <div, </div>,
+       % Paragraphs
+       </p, <p, </p>,
+       % scripts
+       </script, <script,
+  % More tags...
+  <canvas, /canvas>, <svg, <rect, <animateTransform, </rect>, </svg>, <video, 
<source, <iframe, </iframe>, </video>, <image, </image>
+  },
+  ndkeywords={
+  % General
+  =,
+  % HTML attributes
+  charset=, src=, id=, width=, height=, style=, type=, rel=, href=,
+  % SVG attributes
+  fill=, attributeName=, begin=, dur=, from=, to=, poster=, controls=, x=, y=, 
repeatCount=, xlink:href=,
+  % CSS properties
+  margin:, padding:, background-image:, border:, top:, left:, position:, 
width:, height:,
+       % CSS3 properties
+  transform:, -moz-transform:, -webkit-transform:,
+  animation:, -webkit-animation:,
+  transition:,  transition-duration:, transition-property:, 
transition-timing-function:,
+  }
+}
+
+\lstdefinelanguage{JavaScript}{
+  basicstyle=\ttfamily\scriptsize,
+  keywords={typeof, new, true, false, catch, function, return, null, catch, 
switch, var, if, in, while, do, else, case, break, for},
+  keywordstyle=\color{blue}\bfseries,
+  ndkeywords={class, export, boolean, throw, implements, import, this},
+  ndkeywordstyle=\color{darkgray}\bfseries,
+  identifierstyle=\color{black},
+  sensitive=false,
+  comment=[l]{//},
+  morecomment=[s]{/*}{*/},
+  commentstyle=\color{purple}\ttfamily,
+  stringstyle=\color{red}\ttfamily,
+  morestring=[b]',
+  morestring=[b]"
+}
+
+\begin{document}
+
+
+
+\section{Competitor comparison}
+\begin{frame}{Competitor comparison}
+  \begin{center} \tiny
+    \begin{tabular}{l||c|c|c|c|c|c}
+                & Libre    &Distributed&UD-Policy &Authentication& Privacy & 
Use-cases     \\ \hline \hline
+    Anastasis   &  +++     &  open     &   yes    & 6 methods    &   +++   & 
sign, encrypt \\ \hline
+    Dark Crystal&  +++     &  social   &    no    & social-only  &    +    & 
sign, encrypt \\ \hline
+    Argent      & $-$$-$   &  open     &   yes    & 4 methods    &    +    & 
sign  \\ \hline
+    Jump Cloud  &$-$$-$$-$ &    no     &    no    & 3 methods    &$-$$-$$-$& 
sign, encrypt \\ \hline
+    Vault 12    & $-$$-$   &  social   &    no    & social-only  &    +    & 
sign, encrypt \\ \hline \hline
+    FireBlocks  &$-$$-$$-$ &   ???     &    ???   &    ???       &$-$$-$$-$& 
sign  \\ \hline
+    Curv        &$-$$-$$-$ & 2nd party &    no    &    ???       &$-$$-$$-$& 
sign  \\ \hline
+    MetaCo      &$-$$-$$-$ &  closed   &    ???   &    ???       &$-$$-$$-$& 
sign  \\ %\hline
+  \end{tabular}
+  \end{center}
+\end{frame}
+
+
+\end{document}
diff --git a/2022-nullcon/gantt.tex b/2022-nullcon/gantt.tex
new file mode 100644
index 0000000..a8ab395
--- /dev/null
+++ b/2022-nullcon/gantt.tex
@@ -0,0 +1,39 @@
+% \subsubsection{Timing of the different WPs and their components}
+
+\begin{figure}[h]
+\hrule
+% \def\gantt#1#2#3#4{WP#1 M#2--M#3: #4\par}
+\newcount\ganttcount
+\def\gantt#1#2#3#4{\hbox to\hsize{\ganttcount=#2
+  #4\hfil M#2--M#3\quad
+  \vrule height 12pt depth 3pt
+  \hskip \the\ganttcount pt
+  \hskip \the\ganttcount pt
+  \hskip \the\ganttcount pt
+  \hskip \the\ganttcount pt
+  \ganttcount=#3\advance\ganttcount-#2
+  \vrule height 9pt depth 0pt width \the\ganttcount pt
+  \vrule height 9pt depth 0pt width \the\ganttcount pt
+  \vrule height 9pt depth 0pt width \the\ganttcount pt
+  \vrule height 9pt depth 0pt width \the\ganttcount pt
+  \ganttcount=6\advance\ganttcount-#3
+  \hskip \the\ganttcount pt
+  \hskip \the\ganttcount pt
+  \hskip \the\ganttcount pt
+  \hskip \the\ganttcount pt
+  \vrule height 12pt depth 3pt
+  }}
+
+\gantt{\numetoe}{0}{2}{1. Implement core logic (backend\&frontend)}
+\gantt{\numetoe}{0}{2}{2. Deploy 1st backend (security-question only)}
+\gantt{\numetoe}{1}{4}{3. Write Gtk+ GUI (stand-alone App for demonstration)}
+\gantt{\numetoe}{2}{4}{4. Deploy 2nd backend (SMS + E-mail authentication)}
+\gantt{\numetoe}{3}{5}{5. Integrate with Taler wallet (backup \& recovery)}
+\gantt{\numetoe}{4}{6}{6. Integrate payment support}
+\gantt{\numdiss}{0}{6}{7. Business development (clients, partnerships, ...)}
+%%%
+
+\hrule
+\caption{Gantt chart.}
+\label{fig:gantt}
+\end{figure}
diff --git a/2022-nullcon/identity.odg b/2022-nullcon/identity.odg
new file mode 100644
index 0000000..a592688
Binary files /dev/null and b/2022-nullcon/identity.odg differ
diff --git a/2022-nullcon/identity.pdf b/2022-nullcon/identity.pdf
new file mode 100644
index 0000000..cab2a26
Binary files /dev/null and b/2022-nullcon/identity.pdf differ
diff --git a/2022-nullcon/logo.png b/2022-nullcon/logo.png
new file mode 100644
index 0000000..008546f
Binary files /dev/null and b/2022-nullcon/logo.png differ
diff --git a/2022-nullcon/motivation.pdf b/2022-nullcon/motivation.pdf
new file mode 100644
index 0000000..7c063ab
Binary files /dev/null and b/2022-nullcon/motivation.pdf differ
diff --git a/2022-nullcon/mvp.pdf b/2022-nullcon/mvp.pdf
new file mode 100644
index 0000000..9923ee5
Binary files /dev/null and b/2022-nullcon/mvp.pdf differ
diff --git a/2022-nullcon/mvp.tex b/2022-nullcon/mvp.tex
new file mode 100644
index 0000000..0aa8668
--- /dev/null
+++ b/2022-nullcon/mvp.tex
@@ -0,0 +1,242 @@
+\pdfminorversion=3
+\documentclass[fleqn,xcolor={usenames,dvipsnames,table}]{beamer}
+\usepackage{amsmath}
+\usepackage{multimedia}
+\usepackage[utf8]{inputenc}
+\usepackage{framed,color,ragged2e}
+\usepackage[absolute,overlay]{textpos}
+\definecolor{shadecolor}{rgb}{0.8,0.8,0.8}
+\usetheme{boxes}
+\setbeamertemplate{navigation symbols}{}
+\usepackage{graphicx}
+\usepackage{listings}
+\usepackage{tikz}
+\usetikzlibrary[positioning]
+\usetikzlibrary{patterns}
+\usetikzlibrary{arrows,decorations.markings,fit}
+\usetikzlibrary{shapes}
+\usepackage{eurosym}
+\usepackage{url}
+\usepackage[normalem]{ulem}
+\usepackage{listings}
+\usepackage{adjustbox}
+
+% CSS
+\lstdefinelanguage{CSS}{
+  basicstyle=\ttfamily\scriptsize,
+  
keywords={color,background-image:,margin,padding,font,weight,display,position,top,left,right,bottom,list,style,border,size,white,space,min,width,
 transition:, transform:, transition-property, transition-duration, 
transition-timing-function},
+  sensitive=true,
+  morecomment=[l]{//},
+  morecomment=[s]{/*}{*/},
+  morestring=[b]',
+  morestring=[b]",
+  alsoletter={:},
+  alsodigit={-}
+}
+
+% JavaScript
+\lstdefinelanguage{JavaScript}{
+  basicstyle=\ttfamily\scriptsize,
+  morekeywords={typeof, new, true, false, catch, function, return, null, 
catch, switch, var, if, in, while, do, else, case, break},
+  morecomment=[s]{/*}{*/},
+  morecomment=[l]//,
+  morestring=[b]",
+  morestring=[b]'
+}
+
+\lstdefinelanguage{HTML5}{
+  basicstyle=\ttfamily\scriptsize,
+  language=html,
+  sensitive=true,
+  alsoletter={<>=-},
+  morecomment=[s]{<!-}{-->},
+  tag=[s],
+  otherkeywords={
+  % General
+  >,
+  % Standard tags
+       <!DOCTYPE,
+  </html, <html, <head, <title, </title, <style, </style, <link, </head, 
<meta, />,
+       % body
+       </body, <body,
+       % Divs
+       </div, <div, </div>,
+       % Paragraphs
+       </p, <p, </p>,
+       % scripts
+       </script, <script,
+  % More tags...
+  <canvas, /canvas>, <svg, <rect, <animateTransform, </rect>, </svg>, <video, 
<source, <iframe, </iframe>, </video>, <image, </image>
+  },
+  ndkeywords={
+  % General
+  =,
+  % HTML attributes
+  charset=, src=, id=, width=, height=, style=, type=, rel=, href=,
+  % SVG attributes
+  fill=, attributeName=, begin=, dur=, from=, to=, poster=, controls=, x=, y=, 
repeatCount=, xlink:href=,
+  % CSS properties
+  margin:, padding:, background-image:, border:, top:, left:, position:, 
width:, height:,
+       % CSS3 properties
+  transform:, -moz-transform:, -webkit-transform:,
+  animation:, -webkit-animation:,
+  transition:,  transition-duration:, transition-property:, 
transition-timing-function:,
+  }
+}
+
+\lstdefinelanguage{JavaScript}{
+  basicstyle=\ttfamily\scriptsize,
+  keywords={typeof, new, true, false, catch, function, return, null, catch, 
switch, var, if, in, while, do, else, case, break, for},
+  keywordstyle=\color{blue}\bfseries,
+  ndkeywords={class, export, boolean, throw, implements, import, this},
+  ndkeywordstyle=\color{darkgray}\bfseries,
+  identifierstyle=\color{black},
+  sensitive=false,
+  comment=[l]{//},
+  morecomment=[s]{/*}{*/},
+  commentstyle=\color{purple}\ttfamily,
+  stringstyle=\color{red}\ttfamily,
+  morestring=[b]',
+  morestring=[b]"
+}
+
+\usetikzlibrary{shapes,arrows}
+\usetikzlibrary{positioning}
+\usetikzlibrary{calc}
+
+\title{GNU Anastasis}
+\subtitle{Privacy-preserving Distributed Key backup and recovery}
+
+\author[C. Grothoff]{B. Alp, V. Mohan, C. Grothoff, B. Pena, F. Dold}
+\date{8.9.2021}
+\institute{Anastasis SARL}
+
+
+\begin{document}
+
+\justifying
+
+\begin{frame}
+  \begin{center}
+    \LARGE {\bf GNU}
+%    \includegraphics[width=0.66\textwidth]{logo-2017-fr.pdf}
+    \includegraphics[scale=0.5]{logo.png}
+
+    \vfill
+    {\small MVP Demonstration}
+
+    \vspace{1cm}
+    {\small funded by}
+    \includegraphics[height=0.3cm]{ngi_ledger.pdf}
+    \includegraphics[height=0.3cm]{bandiera_stelle.png}
+    \vfill
+  \end{center}
+\begin{textblock*}{6cm}(.5cm,7.7cm) % {block width} (coords)
+    {\Large {\bf \href{https://anastasis.lu/}{anastasis.lu}}} \\
+    \href{https://twitter.com/anastasis-sarl}{anastasis-sarl@twitter}
+\end{textblock*}
+
+% Substitute based on who is giving the talk!
+ \begin{textblock*}{6cm}(6.7cm,7.7cm) % {block width} (coords)
+   {\hfill {\Large {\bf Florian Dold \&} \\
+    \hfill {\bf Christian Grothoff}} \\
+    \hfill \{dold,grothoff\}@anastasis.lu }
+\end{textblock*}
+
+\end{frame}
+
+\section{Introduction}
+
+\begin{frame}{The Problem Illustrated}
+  \begin{center}
+  \includegraphics[width=0.9\textwidth]{motivation.pdf}
+  \end{center}
+\end{frame}
+
+\begin{frame}{}
+  \begin{center}
+  \includegraphics[width=1\textwidth]{technically.pdf}
+  \end{center}
+\end{frame}
+
+\begin{frame}{}
+  \begin{center}
+  \includegraphics[width=1\textwidth]{what.pdf}
+  \end{center}
+\end{frame}
+
+
+\section{Architecture}
+
+\begin{frame}{Software architecture overview}
+\framesubtitle{\url{https://github.com/LedgerProject/Anastasis}}
+\noindent
+\begin{center}
+{\bf Anastasis is a protocol.}
+\end{center}
+
+The software consists of three components:
+\begin{description}
+\item[anastasis] Backend and client libraries (C)
+\item[anastasis-gtk] Gtk+ front-end (C)
+\item[anastasis-ts] Alternative front-end (TS) [WiP]
+\end{description}
+Major dependencies include:
+\begin{description}
+\item[GNU Taler] Privacy-preserving payments (C/TS)
+\item[Postgres] Backend database (C)
+\item[libeufin] Alternative access to banking infrastructure (Kotlin)
+\item[GNUnet] Various utility functions (C)
+\item[GNU MHD] HTTP server library (C)
+\end{description}
+\end{frame}
+
+
+\section{Installation}
+
+\begin{frame}[fragile]{Binary installation instructions}
+\framesubtitle{\url{https://docs.anastasis.lu/}}
+Debian 11:
+{\small
+\begin{verbatim}
+# echo 'deb https://deb.taler.net/apt/debian/ bullseye main'\
+  > /etc/apt/sources.list/taler.list
+# wget -O - https://taler.net/taler-systems.gpg.key |\
+  apt-key add -
+# apt update
+# apt install anastasis-gtk
+\end{verbatim}
+}
+Ubuntu 20.04:
+{\small
+\begin{verbatim}
+# echo 'deb https://deb.taler.net/apt/ubuntu/ focal-fossa main'\
+  > /etc/apt/sources.list/taler.list
+# wget -O - https://taler.net/taler-systems.gpg.key |\
+  apt-key add -
+# apt update
+# apt install anastasis-gtk
+\end{verbatim}
+}
+\end{frame}
+
+
+\begin{frame}{Do you have any questions?}
+\framesubtitle{\url{https://anastasis.lu/}}
+\vfill
+References:
+  \begin{enumerate}
+ \item{Dennis Neufeld and Dominik Meister.
+       {\em Anastasis: Password-less key recovery via multi-factormulti-party 
authentication}.
+       {\bf BFH, 2020}.}
+ \item{David Chaum, Christian Grothoff and Thomas Moser.
+       {\em How to Issue a Central Bank Digital Currency}.
+       {\bf Swiss National Bank Working Papers, 3/2021}}
+ \item{Florian Dold.
+       {\em The GNU Taler System: Practical and Provably Secure Electronic 
Payments}.
+       {\bf University of Rennes 1}, 2019.}
+\end{enumerate}
+\end{frame}
+
+
+\end{document}
diff --git a/2022-nullcon/ngi_ledger.pdf b/2022-nullcon/ngi_ledger.pdf
new file mode 100644
index 0000000..93612c4
Binary files /dev/null and b/2022-nullcon/ngi_ledger.pdf differ
diff --git a/2022-nullcon/nullcon.pdf b/2022-nullcon/nullcon.pdf
new file mode 100644
index 0000000..279f0ec
Binary files /dev/null and b/2022-nullcon/nullcon.pdf differ
diff --git a/2022-nullcon/nullcon.tex b/2022-nullcon/nullcon.tex
new file mode 100644
index 0000000..ac0c464
--- /dev/null
+++ b/2022-nullcon/nullcon.tex
@@ -0,0 +1,513 @@
+\pdfminorversion=3
+\documentclass[fleqn,xcolor={usenames,dvipsnames,table}]{beamer}
+\usepackage{amsmath}
+\usepackage{multimedia}
+\usepackage[utf8]{inputenc}
+\usepackage{framed,color,ragged2e}
+\usepackage[absolute,overlay]{textpos}
+\definecolor{shadecolor}{rgb}{0.8,0.8,0.8}
+\usetheme{boxes}
+\setbeamertemplate{navigation symbols}{}
+\usepackage{graphicx}
+\usepackage{listings}
+\usepackage{tikz}
+\usetikzlibrary[positioning]
+\usetikzlibrary{patterns}
+\usetikzlibrary{arrows,decorations.markings,fit}
+\usetikzlibrary{shapes}
+\usepackage{eurosym}
+\usepackage{url}
+\usepackage[normalem]{ulem}
+\usepackage{listings}
+\usepackage{adjustbox}
+
+% CSS
+\lstdefinelanguage{CSS}{
+  basicstyle=\ttfamily\scriptsize,
+  
keywords={color,background-image:,margin,padding,font,weight,display,position,top,left,right,bottom,list,style,border,size,white,space,min,width,
 transition:, transform:, transition-property, transition-duration, 
transition-timing-function},
+  sensitive=true,
+  morecomment=[l]{//},
+  morecomment=[s]{/*}{*/},
+  morestring=[b]',
+  morestring=[b]",
+  alsoletter={:},
+  alsodigit={-}
+}
+
+% JavaScript
+\lstdefinelanguage{JavaScript}{
+  basicstyle=\ttfamily\scriptsize,
+  morekeywords={typeof, new, true, false, catch, function, return, null, 
catch, switch, var, if, in, while, do, else, case, break},
+  morecomment=[s]{/*}{*/},
+  morecomment=[l]//,
+  morestring=[b]",
+  morestring=[b]'
+}
+
+\lstdefinelanguage{HTML5}{
+  basicstyle=\ttfamily\scriptsize,
+  language=html,
+  sensitive=true,
+  alsoletter={<>=-},
+  morecomment=[s]{<!-}{-->},
+  tag=[s],
+  otherkeywords={
+  % General
+  >,
+  % Standard tags
+       <!DOCTYPE,
+  </html, <html, <head, <title, </title, <style, </style, <link, </head, 
<meta, />,
+       % body
+       </body, <body,
+       % Divs
+       </div, <div, </div>,
+       % Paragraphs
+       </p, <p, </p>,
+       % scripts
+       </script, <script,
+  % More tags...
+  <canvas, /canvas>, <svg, <rect, <animateTransform, </rect>, </svg>, <video, 
<source, <iframe, </iframe>, </video>, <image, </image>
+  },
+  ndkeywords={
+  % General
+  =,
+  % HTML attributes
+  charset=, src=, id=, width=, height=, style=, type=, rel=, href=,
+  % SVG attributes
+  fill=, attributeName=, begin=, dur=, from=, to=, poster=, controls=, x=, y=, 
repeatCount=, xlink:href=,
+  % CSS properties
+  margin:, padding:, background-image:, border:, top:, left:, position:, 
width:, height:,
+       % CSS3 properties
+  transform:, -moz-transform:, -webkit-transform:,
+  animation:, -webkit-animation:,
+  transition:,  transition-duration:, transition-property:, 
transition-timing-function:,
+  }
+}
+
+\lstdefinelanguage{JavaScript}{
+  basicstyle=\ttfamily\scriptsize,
+  keywords={typeof, new, true, false, catch, function, return, null, catch, 
switch, var, if, in, while, do, else, case, break, for},
+  keywordstyle=\color{blue}\bfseries,
+  ndkeywords={class, export, boolean, throw, implements, import, this},
+  ndkeywordstyle=\color{darkgray}\bfseries,
+  identifierstyle=\color{black},
+  sensitive=false,
+  comment=[l]{//},
+  morecomment=[s]{/*}{*/},
+  commentstyle=\color{purple}\ttfamily,
+  stringstyle=\color{red}\ttfamily,
+  morestring=[b]',
+  morestring=[b]"
+}
+
+\usetikzlibrary{shapes,arrows}
+\usetikzlibrary{positioning}
+\usetikzlibrary{calc}
+
+\title{GNU Anastasis}
+\subtitle{Privacy-preserving Distributed Key backup and recovery}
+
+\author[C. Grothoff]{B. Alp, V. Mohan, C. Grothoff, B. Pena, F. Dold}
+\date{8.4.2022}
+\institute{Anastasis SARL}
+
+
+\begin{document}
+
+\justifying
+
+\begin{frame}
+  \begin{center}
+    \LARGE {\bf GNU}
+%    \includegraphics[width=0.66\textwidth]{logo-2017-fr.pdf}
+    \includegraphics[scale=0.5]{logo.png}
+
+    \vfill
+    {\small Nullcon 2022, Berlin}
+
+    \vspace{1cm}
+    {\small funded by}
+    \includegraphics[height=0.3cm]{ngi_ledger.pdf}
+    \includegraphics[height=0.3cm]{bandiera_stelle.png}
+    \vfill
+  \end{center}
+\begin{textblock*}{6cm}(.5cm,7.7cm) % {block width} (coords)
+    {\Large {\bf \href{https://anastasis.lu/}{anastasis.lu}}} \\
+    \href{https://twitter.com/anastasis-sarl}{anastasis-sarl@twitter}
+\end{textblock*}
+
+% Substitute based on who is giving the talk!
+ \begin{textblock*}{6cm}(6.7cm,7.7cm) % {block width} (coords)
+   {\hfill %{\Large {\bf Florian Dold \&} \\
+    \hfill {\bf Christian Grothoff} \\
+    \hfill grothoff@anastasis.lu }
+\end{textblock*}
+
+\end{frame}
+
+\section{Introduction}
+
+\begin{frame}{The Problem Illustrated}
+  \begin{center}
+  \includegraphics[width=0.9\textwidth]{motivation.pdf}
+  \end{center}
+\end{frame}
+
+\section{Shamir}
+
+\begin{frame}{Problem: Availability (1/3)}
+\vfill
+  \begin{center}
+    If you give one person a secret, it may get lost.
+  \end{center}
+ \vfill \pause
+  \begin{center}
+    $\Rightarrow$ So give it to more than one person!
+  \end{center}
+\vfill
+\end{frame}
+
+\begin{frame}{Problem: Confidentiality (2/3)}
+\vfill
+  \begin{center}
+    If you give many entities a secret, it may get disclosed.
+  \end{center}
+  \vfill \pause
+ \begin{center}
+    $\Rightarrow$ So give them only a key share!
+  \end{center}
+\vfill
+\end{frame}
+
+\begin{frame}{Problem: Scalability (3/3)}
+\vfill
+    If you want $k$ out of $n$ entities to coordinate to
+    recover a secret, there are
+    \begin{equation}
+      \left( {n \atop k} \right) = \frac{n!}{k!(n-k)!}
+    \end{equation}
+    combinations to consider.
+ \vfill \pause
+ \begin{center}
+    $\Rightarrow$ Use polynominals!
+  \end{center}
+\vfill
+\end{frame}
+
+
+\begin{frame}{Polynominals}
+\vfill
+\begin{minipage}{7cm}
+A polynominal of degree $k$ is fully determined by $k+1$ data points
+\begin{equation*}
+  (x_{0},y_{0}),\ldots ,(x_{j},y_{j}),\ldots ,(x_{k},y_{k}),
+\end{equation*}
+where no two $x_j$ may be identical.
+\end{minipage}
+\begin{minipage}{5cm}
+  \includegraphics[width=4cm]{polynominal.png}
+\end{minipage}
+\vfill
+\end{frame}
+
+
+\begin{frame}{Lagrange Interpolation}
+\vfill
+The interpolation polynominal in the Lagrange form is:
+\begin{equation*}
+    L(x):=\sum _{j=0}^{k}y_{j}\ell_{j}(x)
+\end{equation*}
+where
+\begin{equation}
+ \ell_{j}(x):=\prod _{\begin{smallmatrix}0\leq m\leq k\\m\neq 
j\end{smallmatrix}}{\frac {x-x_{m}}{x_{j}-x_{m}}}={\frac 
{(x-x_{0})}{(x_{j}-x_{0})}}\cdots {\frac {(x-x_{j-1})}{(x_{j}-x_{j-1})}}{\frac 
{(x-x_{j+1})}{(x_{j}-x_{j+1})}}\cdots {\frac {(x-x_{k})}{(x_{j}-x_{k})}}
+\end{equation}
+for $0 \leq j \leq k$.
+\vfill
+\end{frame}
+
+
+\begin{frame}{Practical Considerations}
+  \begin{itemize}
+  \item Our secrets will typically be integers. Calculations with floating 
points are {\em messy}.
+  \item[$\Rightarrow$] Use finite field arithmetic, not $\mathbb R$.
+  \end{itemize}
+\end{frame}
+
+
+
+\begin{frame}{Real world scalability}
+\vfill
+  \begin{center}
+    \begin{tabular}{l||r|r|r|r|r|r}
+      n / k &   1   &  2   &  3   & 4  & 5   &   6  \\ \hline \hline
+      1     &   1   &  2   &  3   & 4  & 5   &   6  \\
+      2     &       &  1   &  3   & 6  & 10  &  15  \\
+      3     &       &      &  1   & 4  & 10  &  20  \\
+      4     &       &      &      & 1  & 5   &  15  \\
+      5     &       &      &      &    & 1   &   6  \\
+      6     &       &      &      &    &     &   1  \\
+    \end{tabular}
+ \end{center}
+  Other values: \\
+  \begin{itemize}
+   \item $\left( {10 \atop 5   } \right) = 252$
+   \item $\left( {20 \atop 10  } \right) = 184756$
+   \item $\left( {30 \atop 15  } \right) = 155117520$
+   \item $\left( {100 \atop 50 } \right) \approx 10^{29}$
+  \end{itemize}
+\vfill
+\end{frame}
+
+
+\begin{frame}{Scalability Problem?}
+\vfill
+  \begin{center}
+    How many people do you have to share your secrets with?
+  \end{center}
+\vfill
+  \begin{center}
+    How many people realistically participate in recovery?
+  \end{center}
+\vfill
+\end{frame}
+
+
+\section{Anastasis}
+
+\begin{frame}{}
+  \begin{center}
+  \includegraphics[width=1\textwidth]{technically.pdf}
+  \end{center}
+\end{frame}
+
+\begin{frame}{}
+  \begin{center}
+  \includegraphics[width=1\textwidth]{what.pdf}
+  \end{center}
+\end{frame}
+
+\section{Design}
+
+\begin{frame}{Preliminaries}
+  \begin{center}
+  \includegraphics[width=1\textwidth]{identity.pdf}
+  \end{center}
+\end{frame}
+
+
+\begin{frame}{Adversary Model}
+  \begin{center}
+  \includegraphics[width=1\textwidth]{adversary.pdf}
+  \end{center}
+\end{frame}
+
+
+\begin{frame}{Overview}
+  \begin{center}
+  \includegraphics[width=1\textwidth]{overview.pdf}
+  \end{center}
+\end{frame}
+
+
+\begin{frame}{Simplified Process Flow}
+\framesubtitle{Step 1: Core Secret}
+  \begin{center}
+  \includegraphics[width=1\textwidth]{step1.pdf}
+  \end{center}
+\end{frame}
+
+\begin{frame}{Simplified Process Flow}
+\framesubtitle{Step 2: Split Core Secret}
+  \begin{center}
+  \includegraphics[width=1\textwidth]{step2.pdf}
+  \end{center}
+\end{frame}
+
+\begin{frame}{Simplified Process Flow}
+\framesubtitle{Step 3: User Identification}
+  \begin{center}
+  \includegraphics[width=1\textwidth]{step3.pdf}
+  \end{center}
+\end{frame}
+
+\begin{frame}{Simplified Process Flow}
+\framesubtitle{Step 4: Key Derivation}
+  \begin{center}
+  \includegraphics[width=1\textwidth]{step4.pdf}
+  \end{center}
+\end{frame}
+
+\begin{frame}{Simplified Process Flow}
+\framesubtitle{Step 5: Encrypt Parts}
+  \begin{center}
+  \includegraphics[width=1\textwidth]{step5.pdf}
+  \end{center}
+\end{frame}
+
+\begin{frame}{Simplified Process Flow}
+\framesubtitle{Step 6: Add Truth}
+  \begin{center}
+  \includegraphics[width=1\textwidth]{step6.pdf}
+  \end{center}
+\end{frame}
+
+\begin{frame}{Simplified Process Flow}
+\framesubtitle{Step 7: Encrypt Truth}
+  \begin{center}
+  \includegraphics[width=1\textwidth]{step7.pdf}
+  \end{center}
+\end{frame}
+
+\begin{frame}{Simplified Process Flow}
+\framesubtitle{Step 8: Store Data}
+  \begin{center}
+  \includegraphics[width=1\textwidth]{step8.pdf}
+  \end{center}
+\end{frame}
+
+
+\begin{frame}{Simplified Process Flow}
+\framesubtitle{Step 9: User Identification}
+  \begin{center}
+  \includegraphics[width=1\textwidth]{step3.pdf}
+  \end{center}
+\end{frame}
+
+\begin{frame}{Simplified Process Flow}
+\framesubtitle{Step 10: Key Derivation}
+  \begin{center}
+  \includegraphics[width=1\textwidth]{step4.pdf}
+  \end{center}
+\end{frame}
+
+\begin{frame}{Simplified Process Flow}
+\framesubtitle{Step 11: Provide Key}
+  \begin{center}
+  \includegraphics[width=1\textwidth]{step11.pdf}
+  \end{center}
+\end{frame}
+
+\begin{frame}{Simplified Process Flow}
+\framesubtitle{Step 12: Decrypt Truth}
+  \begin{center}
+  \includegraphics[width=1\textwidth]{step12.pdf}
+  \end{center}
+\end{frame}
+
+\begin{frame}{Simplified Process Flow}
+\framesubtitle{Step 13: Authentication}
+  \begin{center}
+  \includegraphics[width=1\textwidth]{step13.pdf}
+  \end{center}
+\end{frame}
+
+\begin{frame}{Simplified Process Flow}
+\framesubtitle{Step 14: Receive Parts}
+  \begin{center}
+  \includegraphics[width=1\textwidth]{step14.pdf}
+  \end{center}
+\end{frame}
+
+\begin{frame}{Simplified Process Flow}
+\framesubtitle{Step 15: Decrypt Parts}
+  \begin{center}
+  \includegraphics[width=1\textwidth]{step15.pdf}
+  \end{center}
+\end{frame}
+
+\begin{frame}{Simplified Process Flow}
+\framesubtitle{Step 16: Reassembly}
+  \begin{center}
+  \includegraphics[width=1\textwidth]{step16.pdf}
+  \end{center}
+\end{frame}
+
+\begin{frame}{Simplifications}
+\framesubtitle{The previous illustrations make various simplifications}
+\begin{center}
+  \includegraphics[width=1\textwidth]{simplifications.pdf}
+  \end{center}
+\end{frame}
+
+\section{Demonstration}
+
+\begin{frame}{Demonstration}
+\begin{center}
+  Demo.
+\end{center}
+\end{frame}
+
+\section{Architecture}
+
+\begin{frame}{Software architecture overview}
+\framesubtitle{\url{https://git.taler.net/anastasis.git}}
+\noindent
+\begin{center}
+{\bf Anastasis is a protocol.}
+\end{center}
+
+The software consists of three components:
+\begin{description}
+\item[anastasis] Backend and client libraries (C)
+\item[anastasis-gtk] Gtk+ front-end (C)
+\item[anastasis-ts] Alternative front-end (TS)
+\end{description}
+Major dependencies include:
+\begin{description}
+\item[GNU Taler] Privacy-preserving payments (C/TS)
+\item[Postgres] Backend database (C)
+\item[libeufin] Alternative access to banking infrastructure (Kotlin)
+\item[GNUnet] Various utility functions (C)
+\item[GNU MHD] HTTP server library (C)
+\end{description}
+\end{frame}
+
+
+\section{Installation}
+
+\begin{frame}[fragile]{Binary installation instructions}
+\framesubtitle{\url{https://docs.anastasis.lu/}}
+Debian 11:
+{\small
+\begin{verbatim}
+# echo 'deb https://deb.taler.net/apt/debian/ bullseye main'\
+  > /etc/apt/sources.list/taler.list
+# wget -O - https://taler.net/taler-systems.gpg.key |\
+  apt-key add -
+# apt update
+# apt install anastasis-gtk
+\end{verbatim}
+}
+Ubuntu 20.04:
+{\small
+\begin{verbatim}
+# echo 'deb https://deb.taler.net/apt/ubuntu/ focal-fossa main'\
+  > /etc/apt/sources.list/taler.list
+# wget -O - https://taler.net/taler-systems.gpg.key |\
+  apt-key add -
+# apt update
+# apt install anastasis-gtk
+\end{verbatim}
+}
+\end{frame}
+
+
+\begin{frame}{Do you have any questions?}
+\framesubtitle{\url{https://anastasis.lu/}}
+\vfill
+References:
+  \begin{enumerate}
+ \item{Dennis Neufeld and Dominik Meister.
+       {\em Anastasis: Password-less key recovery via multi-factormulti-party 
authentication}.
+       {\bf BFH, 2020}.}
+ \item{David Chaum, Christian Grothoff and Thomas Moser.
+       {\em How to Issue a Central Bank Digital Currency}.
+       {\bf Swiss National Bank Working Papers, 3/2021}}
+ \item{Florian Dold.
+       {\em The GNU Taler System: Practical and Provably Secure Electronic 
Payments}.
+       {\bf University of Rennes 1}, 2019.}
+\end{enumerate}
+\end{frame}
+
+
+\end{document}
diff --git a/2022-nullcon/overview.odg b/2022-nullcon/overview.odg
new file mode 100644
index 0000000..d189377
Binary files /dev/null and b/2022-nullcon/overview.odg differ
diff --git a/2022-nullcon/overview.pdf b/2022-nullcon/overview.pdf
new file mode 100644
index 0000000..132ee2f
Binary files /dev/null and b/2022-nullcon/overview.pdf differ
diff --git a/2022-nullcon/polynominal.png b/2022-nullcon/polynominal.png
new file mode 100644
index 0000000..2e71684
Binary files /dev/null and b/2022-nullcon/polynominal.png differ
diff --git a/2022-nullcon/recovery.mp4 b/2022-nullcon/recovery.mp4
new file mode 100644
index 0000000..467147f
Binary files /dev/null and b/2022-nullcon/recovery.mp4 differ
diff --git a/2022-nullcon/roadmap.pdf b/2022-nullcon/roadmap.pdf
new file mode 100644
index 0000000..7b87dff
Binary files /dev/null and b/2022-nullcon/roadmap.pdf differ
diff --git a/2022-nullcon/roadmap.tex b/2022-nullcon/roadmap.tex
new file mode 100644
index 0000000..1b38d09
--- /dev/null
+++ b/2022-nullcon/roadmap.tex
@@ -0,0 +1,115 @@
+\pdfminorversion=3
+\documentclass[fleqn,xcolor={usenames,dvipsnames,table}]{beamer}
+\usepackage{amsmath}
+\usepackage{multimedia}
+\usepackage[utf8]{inputenc}
+\usepackage{framed,color,ragged2e}
+\usepackage[absolute,overlay]{textpos}
+\definecolor{shadecolor}{rgb}{0.8,0.8,0.8}
+\usetheme{boxes}
+\setbeamertemplate{navigation symbols}{}
+\usepackage{graphicx}
+\usepackage{listings}
+\usepackage{tikz}
+\usetikzlibrary[positioning]
+\usetikzlibrary{patterns}
+\usetikzlibrary{arrows,decorations.markings,fit}
+\usetikzlibrary{shapes}
+\usepackage{eurosym}
+\usepackage{url}
+\usepackage[normalem]{ulem}
+\usepackage{listings}
+\usepackage{adjustbox}
+
+% CSS
+\lstdefinelanguage{CSS}{
+  basicstyle=\ttfamily\scriptsize,
+  
keywords={color,background-image:,margin,padding,font,weight,display,position,top,left,right,bottom,list,style,border,size,white,space,min,width,
 transition:, transform:, transition-property, transition-duration, 
transition-timing-function},
+  sensitive=true,
+  morecomment=[l]{//},
+  morecomment=[s]{/*}{*/},
+  morestring=[b]',
+  morestring=[b]",
+  alsoletter={:},
+  alsodigit={-}
+}
+
+% JavaScript
+\lstdefinelanguage{JavaScript}{
+  basicstyle=\ttfamily\scriptsize,
+  morekeywords={typeof, new, true, false, catch, function, return, null, 
catch, switch, var, if, in, while, do, else, case, break},
+  morecomment=[s]{/*}{*/},
+  morecomment=[l]//,
+  morestring=[b]",
+  morestring=[b]'
+}
+
+\lstdefinelanguage{HTML5}{
+  basicstyle=\ttfamily\scriptsize,
+  language=html,
+  sensitive=true,
+  alsoletter={<>=-},
+  morecomment=[s]{<!-}{-->},
+  tag=[s],
+  otherkeywords={
+  % General
+  >,
+  % Standard tags
+       <!DOCTYPE,
+  </html, <html, <head, <title, </title, <style, </style, <link, </head, 
<meta, />,
+       % body
+       </body, <body,
+       % Divs
+       </div, <div, </div>,
+       % Paragraphs
+       </p, <p, </p>,
+       % scripts
+       </script, <script,
+  % More tags...
+  <canvas, /canvas>, <svg, <rect, <animateTransform, </rect>, </svg>, <video, 
<source, <iframe, </iframe>, </video>, <image, </image>
+  },
+  ndkeywords={
+  % General
+  =,
+  % HTML attributes
+  charset=, src=, id=, width=, height=, style=, type=, rel=, href=,
+  % SVG attributes
+  fill=, attributeName=, begin=, dur=, from=, to=, poster=, controls=, x=, y=, 
repeatCount=, xlink:href=,
+  % CSS properties
+  margin:, padding:, background-image:, border:, top:, left:, position:, 
width:, height:,
+       % CSS3 properties
+  transform:, -moz-transform:, -webkit-transform:,
+  animation:, -webkit-animation:,
+  transition:,  transition-duration:, transition-property:, 
transition-timing-function:,
+  }
+}
+
+\lstdefinelanguage{JavaScript}{
+  basicstyle=\ttfamily\scriptsize,
+  keywords={typeof, new, true, false, catch, function, return, null, catch, 
switch, var, if, in, while, do, else, case, break, for},
+  keywordstyle=\color{blue}\bfseries,
+  ndkeywords={class, export, boolean, throw, implements, import, this},
+  ndkeywordstyle=\color{darkgray}\bfseries,
+  identifierstyle=\color{black},
+  sensitive=false,
+  comment=[l]{//},
+  morecomment=[s]{/*}{*/},
+  commentstyle=\color{purple}\ttfamily,
+  stringstyle=\color{red}\ttfamily,
+  morestring=[b]',
+  morestring=[b]"
+}
+
+\begin{document}
+\begin{frame}{Roadmap}
+\begin{description}
+\item[Q4'2021]{Web-based Anastasis client}
+\item[Q1'2022]{Anastasis-Taler integration, 2nd provider deployed}
+\item[Q2'2022]{3nd provider deployed, presentation at developer-focused 
conferences}
+\item[Q3'2022]{6 different authentication factors supported in production,
+               localization support for all major European countries}
+\item[Q4'2022]{Integration in additional 3rd party products (beyond Taler)}
+\end{description}
+\end{frame}
+
+\end{document}
diff --git a/2022-nullcon/simplifications.odg b/2022-nullcon/simplifications.odg
new file mode 100644
index 0000000..9429c62
Binary files /dev/null and b/2022-nullcon/simplifications.odg differ
diff --git a/2022-nullcon/simplifications.pdf b/2022-nullcon/simplifications.pdf
new file mode 100644
index 0000000..62ac891
Binary files /dev/null and b/2022-nullcon/simplifications.pdf differ
diff --git a/2022-nullcon/step1.odg b/2022-nullcon/step1.odg
new file mode 100644
index 0000000..65b89a6
Binary files /dev/null and b/2022-nullcon/step1.odg differ
diff --git a/2022-nullcon/step1.pdf b/2022-nullcon/step1.pdf
new file mode 100644
index 0000000..a8850dd
Binary files /dev/null and b/2022-nullcon/step1.pdf differ
diff --git a/2022-nullcon/step11.odg b/2022-nullcon/step11.odg
new file mode 100644
index 0000000..be9c1f3
Binary files /dev/null and b/2022-nullcon/step11.odg differ
diff --git a/2022-nullcon/step11.pdf b/2022-nullcon/step11.pdf
new file mode 100644
index 0000000..1cba56c
Binary files /dev/null and b/2022-nullcon/step11.pdf differ
diff --git a/2022-nullcon/step12.odg b/2022-nullcon/step12.odg
new file mode 100644
index 0000000..e2aab72
Binary files /dev/null and b/2022-nullcon/step12.odg differ
diff --git a/2022-nullcon/step12.pdf b/2022-nullcon/step12.pdf
new file mode 100644
index 0000000..f5bdfa7
Binary files /dev/null and b/2022-nullcon/step12.pdf differ
diff --git a/2022-nullcon/step13.odg b/2022-nullcon/step13.odg
new file mode 100644
index 0000000..9dad846
Binary files /dev/null and b/2022-nullcon/step13.odg differ
diff --git a/2022-nullcon/step13.pdf b/2022-nullcon/step13.pdf
new file mode 100644
index 0000000..d9d2ffe
Binary files /dev/null and b/2022-nullcon/step13.pdf differ
diff --git a/2022-nullcon/step14.odg b/2022-nullcon/step14.odg
new file mode 100644
index 0000000..e2c27ac
Binary files /dev/null and b/2022-nullcon/step14.odg differ
diff --git a/2022-nullcon/step14.pdf b/2022-nullcon/step14.pdf
new file mode 100644
index 0000000..5b0f861
Binary files /dev/null and b/2022-nullcon/step14.pdf differ
diff --git a/2022-nullcon/step15.odg b/2022-nullcon/step15.odg
new file mode 100644
index 0000000..2797f46
Binary files /dev/null and b/2022-nullcon/step15.odg differ
diff --git a/2022-nullcon/step15.pdf b/2022-nullcon/step15.pdf
new file mode 100644
index 0000000..8986920
Binary files /dev/null and b/2022-nullcon/step15.pdf differ
diff --git a/2022-nullcon/step16.odg b/2022-nullcon/step16.odg
new file mode 100644
index 0000000..f9295b7
Binary files /dev/null and b/2022-nullcon/step16.odg differ
diff --git a/2022-nullcon/step16.pdf b/2022-nullcon/step16.pdf
new file mode 100644
index 0000000..c34e317
Binary files /dev/null and b/2022-nullcon/step16.pdf differ
diff --git a/2022-nullcon/step2.odg b/2022-nullcon/step2.odg
new file mode 100644
index 0000000..d01aaef
Binary files /dev/null and b/2022-nullcon/step2.odg differ
diff --git a/2022-nullcon/step2.pdf b/2022-nullcon/step2.pdf
new file mode 100644
index 0000000..3b67c00
Binary files /dev/null and b/2022-nullcon/step2.pdf differ
diff --git a/2022-nullcon/step3.odg b/2022-nullcon/step3.odg
new file mode 100644
index 0000000..ca1b022
Binary files /dev/null and b/2022-nullcon/step3.odg differ
diff --git a/2022-nullcon/step3.pdf b/2022-nullcon/step3.pdf
new file mode 100644
index 0000000..9243e67
Binary files /dev/null and b/2022-nullcon/step3.pdf differ
diff --git a/2022-nullcon/step4.odg b/2022-nullcon/step4.odg
new file mode 100644
index 0000000..6f9a78c
Binary files /dev/null and b/2022-nullcon/step4.odg differ
diff --git a/2022-nullcon/step4.pdf b/2022-nullcon/step4.pdf
new file mode 100644
index 0000000..20795b0
Binary files /dev/null and b/2022-nullcon/step4.pdf differ
diff --git a/2022-nullcon/step5.odg b/2022-nullcon/step5.odg
new file mode 100644
index 0000000..dce88fb
Binary files /dev/null and b/2022-nullcon/step5.odg differ
diff --git a/2022-nullcon/step5.pdf b/2022-nullcon/step5.pdf
new file mode 100644
index 0000000..abee6ea
Binary files /dev/null and b/2022-nullcon/step5.pdf differ
diff --git a/2022-nullcon/step6.odg b/2022-nullcon/step6.odg
new file mode 100644
index 0000000..47dde62
Binary files /dev/null and b/2022-nullcon/step6.odg differ
diff --git a/2022-nullcon/step6.pdf b/2022-nullcon/step6.pdf
new file mode 100644
index 0000000..11566fd
Binary files /dev/null and b/2022-nullcon/step6.pdf differ
diff --git a/2022-nullcon/step7.odg b/2022-nullcon/step7.odg
new file mode 100644
index 0000000..3768134
Binary files /dev/null and b/2022-nullcon/step7.odg differ
diff --git a/2022-nullcon/step7.pdf b/2022-nullcon/step7.pdf
new file mode 100644
index 0000000..81f65f2
Binary files /dev/null and b/2022-nullcon/step7.pdf differ
diff --git a/2022-nullcon/step8.odg b/2022-nullcon/step8.odg
new file mode 100644
index 0000000..6253245
Binary files /dev/null and b/2022-nullcon/step8.odg differ
diff --git a/2022-nullcon/step8.pdf b/2022-nullcon/step8.pdf
new file mode 100644
index 0000000..a4bb9b7
Binary files /dev/null and b/2022-nullcon/step8.pdf differ
diff --git a/2022-nullcon/technically.pdf b/2022-nullcon/technically.pdf
new file mode 100644
index 0000000..9675ab7
Binary files /dev/null and b/2022-nullcon/technically.pdf differ
diff --git a/2022-nullcon/what.pdf b/2022-nullcon/what.pdf
new file mode 100644
index 0000000..8d3c6cc
Binary files /dev/null and b/2022-nullcon/what.pdf differ
diff --git a/2022-nullcon/white.png b/2022-nullcon/white.png
new file mode 100644
index 0000000..af97576
Binary files /dev/null and b/2022-nullcon/white.png differ

-- 
To stop receiving notification emails like this one, please contact
gnunet@gnunet.org.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]