[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.
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [taler-marketing] branch master updated: add Anastasis slides,
gnunet <=