presentations

Presentations
Log | Files | Refs

commit c3a7c2bb41326e2cdeb06229ab032a895de22a03
parent cb113106ae8ef0aa308d8034851ed687a69e01a2
Author: Martin Schanzenbach <mschanzenbach@posteo.de>
Date:   Wed, 12 May 2021 14:00:19 +0200

add datenspuren

Diffstat:
Adatenspuren2019/Reclaim-2.png | 0
Adatenspuren2019/Reclaim-3.png | 0
Adatenspuren2019/Reclaim-4.png | 0
Adatenspuren2019/Reclaim-5.png | 0
Adatenspuren2019/Reclaim-6.png | 0
Adatenspuren2019/Reclaim.png | 0
Adatenspuren2019/aisec_logo.pdf | 0
Adatenspuren2019/attr_perf_plot_100.pdf | 0
Adatenspuren2019/attr_perf_plot_100.png | 0
Adatenspuren2019/beamercolorthememetropolis-highcontrast.sty | 39+++++++++++++++++++++++++++++++++++++++
Adatenspuren2019/beamercolorthememetropolis.sty | 138+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Adatenspuren2019/beamerfontthememetropolis.sty | 325+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Adatenspuren2019/beamerinnerthememetropolis.sty | 293+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Adatenspuren2019/beamerouterthememetropolis.sty | 137+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Adatenspuren2019/beamerthememetropolis.sty | 107+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Adatenspuren2019/datenspuren2019.pdf | 0
Adatenspuren2019/directories.png | 0
Adatenspuren2019/facebook_analytica.png | 0
Adatenspuren2019/gnunet.png | 0
Adatenspuren2019/handshake.png | 0
Adatenspuren2019/idp_gnuid.pdf | 0
Adatenspuren2019/idp_info.png | 0
Adatenspuren2019/idp_nameid.pdf | 0
Adatenspuren2019/idp_traditional.pdf | 0
Adatenspuren2019/iu.jpg | 0
Adatenspuren2019/motiv.pdf | 0
Adatenspuren2019/nameid.png | 0
Adatenspuren2019/nsa.jpg | 0
Adatenspuren2019/perf_attrs.png | 0
Adatenspuren2019/pgfplotsthemetol.sty | 123+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Adatenspuren2019/reclaim.nav | 95+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Adatenspuren2019/reclaim.snm | 0
Adatenspuren2019/reclaim.tex | 495+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Adatenspuren2019/reclaim_small.png | 0
Adatenspuren2019/yahoo_breach.png | 0
35 files changed, 1752 insertions(+), 0 deletions(-)

diff --git a/datenspuren2019/Reclaim-2.png b/datenspuren2019/Reclaim-2.png Binary files differ. diff --git a/datenspuren2019/Reclaim-3.png b/datenspuren2019/Reclaim-3.png Binary files differ. diff --git a/datenspuren2019/Reclaim-4.png b/datenspuren2019/Reclaim-4.png Binary files differ. diff --git a/datenspuren2019/Reclaim-5.png b/datenspuren2019/Reclaim-5.png Binary files differ. diff --git a/datenspuren2019/Reclaim-6.png b/datenspuren2019/Reclaim-6.png Binary files differ. diff --git a/datenspuren2019/Reclaim.png b/datenspuren2019/Reclaim.png Binary files differ. diff --git a/datenspuren2019/aisec_logo.pdf b/datenspuren2019/aisec_logo.pdf Binary files differ. diff --git a/datenspuren2019/attr_perf_plot_100.pdf b/datenspuren2019/attr_perf_plot_100.pdf Binary files differ. diff --git a/datenspuren2019/attr_perf_plot_100.png b/datenspuren2019/attr_perf_plot_100.png Binary files differ. diff --git a/datenspuren2019/beamercolorthememetropolis-highcontrast.sty b/datenspuren2019/beamercolorthememetropolis-highcontrast.sty @@ -0,0 +1,39 @@ +%% +%% This is file `beamercolorthememetropolis-highcontrast.sty', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% beamercolorthememetropolis-highcontrast.dtx (with options: `package') +%% --------------------------------------------------------------------------- +%% Copyright 2015 Matthias Vogelgesang and the LaTeX community. A full list of +%% contributors can be found at +%% +%% https://github.com/matze/mtheme/graphs/contributors +%% +%% and the original template was based on the HSRM theme by Benjamin Weiss. +%% +%% This work is licensed under a Creative Commons Attribution-ShareAlike 4.0 +%% International License (https://creativecommons.org/licenses/by-sa/4.0/). +%% --------------------------------------------------------------------------- +\NeedsTeXFormat{LaTeX2e} +\ProvidesPackage{beamercolorthememetropolis-highcontrast}[2017/01/23 Metropolis color theme] +\usecolortheme{metropolis} + +\definecolor{mAlert}{HTML}{AD003D} +\definecolor{mExample}{HTML}{005580} + +\setbeamercolor{normal text}{% + fg=black, + bg=white +} +\setbeamercolor{alerted text}{% + fg=mAlert, +} +\setbeamercolor{example text}{% + fg=mExample, +} +\mode<all> +\endinput +%% +%% End of file `beamercolorthememetropolis-highcontrast.sty'. diff --git a/datenspuren2019/beamercolorthememetropolis.sty b/datenspuren2019/beamercolorthememetropolis.sty @@ -0,0 +1,138 @@ +%% +%% This is file `beamercolorthememetropolis.sty', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% beamercolorthememetropolis.dtx (with options: `package') +%% --------------------------------------------------------------------------- +%% Copyright 2015 Matthias Vogelgesang and the LaTeX community. A full list of +%% contributors can be found at +%% +%% https://github.com/matze/mtheme/graphs/contributors +%% +%% and the original template was based on the HSRM theme by Benjamin Weiss. +%% +%% This work is licensed under a Creative Commons Attribution-ShareAlike 4.0 +%% International License (https://creativecommons.org/licenses/by-sa/4.0/). +%% --------------------------------------------------------------------------- +\NeedsTeXFormat{LaTeX2e} +\ProvidesPackage{beamercolorthememetropolis}[2017/01/23 Metropolis color theme] +\RequirePackage{pgfopts} +\pgfkeys{ + /metropolis/color/block/.cd, + .is choice, + transparent/.code=\metropolis@block@transparent, + fill/.code=\metropolis@block@fill, +} +\pgfkeys{ + /metropolis/color/background/.cd, + .is choice, + dark/.code=\metropolis@colors@dark, + light/.code=\metropolis@colors@light, +} +\newcommand{\metropolis@color@setdefaults}{ + \pgfkeys{/metropolis/color/.cd, + background=light, + block=transparent, + } +} +\definecolor{mDarkBrown}{HTML}{604c38} +\definecolor{mDarkTeal}{HTML}{23373b} +\definecolor{mLightBrown}{HTML}{EB811B} +\definecolor{mLightGreen}{HTML}{14B03D} +\newcommand{\metropolis@colors@dark}{ + \setbeamercolor{normal text}{% + fg=black!2, + bg=mDarkTeal + } + \usebeamercolor[fg]{normal text} +} +\newcommand{\metropolis@colors@light}{ + \setbeamercolor{normal text}{% + fg=mDarkTeal, + bg=black!2 + } +} +\setbeamercolor{alerted text}{% + fg=mLightBrown +} +\setbeamercolor{example text}{% + fg=mLightGreen +} +\setbeamercolor{titlelike}{use=normal text, parent=normal text} +\setbeamercolor{author}{use=normal text, parent=normal text} +\setbeamercolor{date}{use=normal text, parent=normal text} +\setbeamercolor{institute}{use=normal text, parent=normal text} +\setbeamercolor{structure}{use=normal text, fg=normal text.fg} +\setbeamercolor{palette primary}{% + use=normal text, + fg=normal text.bg, + bg=normal text.fg +} +\setbeamercolor{frametitle}{% + use=palette primary, + parent=palette primary +} +\setbeamercolor{progress bar}{% + use=alerted text, + fg=alerted text.fg, + bg=alerted text.fg!50!black!30 +} +\setbeamercolor{title separator}{ + use=progress bar, + parent=progress bar +} +\setbeamercolor{progress bar in head/foot}{% + use=progress bar, + parent=progress bar +} +\setbeamercolor{progress bar in section page}{ + use=progress bar, + parent=progress bar +} +\newcommand{\metropolis@block@transparent}{ + \setbeamercolor{block title}{% + use=normal text, + fg=normal text.fg, + bg= + } + \setbeamercolor{block body}{ + bg= + } +} +\newcommand{\metropolis@block@fill}{ + \setbeamercolor{block title}{% + use=normal text, + fg=normal text.fg, + bg=normal text.bg!80!fg + } + \setbeamercolor{block body}{ + use={block title, normal text}, + bg=block title.bg!50!normal text.bg + } +} +\setbeamercolor{block title alerted}{% + use={block title, alerted text}, + bg=block title.bg, + fg=alerted text.fg +} +\setbeamercolor{block title example}{% + use={block title, example text}, + bg=block title.bg, + fg=example text.fg +} +\setbeamercolor{block body alerted}{use=block body, parent=block body} +\setbeamercolor{block body example}{use=block body, parent=block body} +\setbeamercolor{footnote}{fg=normal text.fg!90} +\setbeamercolor{footnote mark}{fg=.} +\setbeamercolor{bibliography entry author}{fg=, bg=} +\setbeamercolor{bibliography entry title}{fg=, bg=} +\setbeamercolor{bibliography entry location}{fg=, bg=} +\setbeamercolor{bibliography entry note}{fg=, bg=} +\metropolis@color@setdefaults +\ProcessPgfPackageOptions{/metropolis/color} +\mode<all> +\endinput +%% +%% End of file `beamercolorthememetropolis.sty'. diff --git a/datenspuren2019/beamerfontthememetropolis.sty b/datenspuren2019/beamerfontthememetropolis.sty @@ -0,0 +1,325 @@ +%% +%% This is file `beamerfontthememetropolis.sty', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% beamerfontthememetropolis.dtx (with options: `package') +%% --------------------------------------------------------------------------- +%% Copyright 2015 Matthias Vogelgesang and the LaTeX community. A full list of +%% contributors can be found at +%% +%% https://github.com/matze/mtheme/graphs/contributors +%% +%% and the original template was based on the HSRM theme by Benjamin Weiss. +%% +%% This work is licensed under a Creative Commons Attribution-ShareAlike 4.0 +%% International License (https://creativecommons.org/licenses/by-sa/4.0/). +%% --------------------------------------------------------------------------- +\NeedsTeXFormat{LaTeX2e} +\ProvidesPackage{beamerfontthememetropolis}[2017/01/23 Metropolis font theme] +\RequirePackage{etoolbox} +\RequirePackage{ifxetex} +\RequirePackage{ifluatex} +\RequirePackage{pgfopts} +\ifboolexpr{bool {xetex} or bool {luatex}}{ + \@ifpackageloaded{fontspec}{ + \PassOptionsToPackage{no-math}{fontspec} + }{ + \RequirePackage[no-math]{fontspec} + } + \newcounter{fontsnotfound} + \newcommand{\checkfont}[1]{% + \suppressfontnotfounderror=1% + \font\x = "#1" at 10pt + \selectfont + \ifx\x\nullfont% + \stepcounter{fontsnotfound}% + \fi% + \suppressfontnotfounderror=0% + } + + \newcommand{\iffontsavailable}[3]{% + \setcounter{fontsnotfound}{0}% + \expandafter\forcsvlist\expandafter% + \checkfont\expandafter{#1}% + \ifnum\value{fontsnotfound}=0% + #2% + \else% + #3% + \fi% + } + \iffontsavailable{Fira Sans Light,% + Fira Sans Light Italic,% + Fira Sans,% + Fira Sans Italic}% + {% + \setsansfont[ItalicFont={Fira Sans Light Italic},% + BoldFont={Fira Sans},% + BoldItalicFont={Fira Sans Italic}]% + {Fira Sans Light}% + }{% + \iffontsavailable{Fira Sans Light OT,% + Fira Sans Light Italic OT,% + Fira Sans OT,% + Fira Sans Italic OT}% + {% + \setsansfont[ItalicFont={Fira Sans Light Italic OT},% + BoldFont={Fira Sans OT},% + BoldItalicFont={Fira Sans Italic OT}]% + {Fira Sans Light OT}% + }{% + \PackageWarning{beamerthememetropolis}{% + Could not find Fira Sans fonts% + } + } + } + \iffontsavailable{Fira Mono, Fira Mono Bold}{% + \setmonofont[BoldFont={Fira Mono Medium}]{Fira Mono}% + }{% + \iffontsavailable{Fira Mono OT, Fira Mono Bold OT}{% + \setmonofont[BoldFont={Fira Mono Medium OT}]{Fira Mono OT}% + }{% + \PackageWarning{beamerthememetropolis}{% + Could not find Fira Mono fonts% + } + } + } + \AtBeginEnvironment{tabular}{% + \addfontfeature{Numbers={Monospaced}}% + } +}{% + \PackageWarning{beamerthememetropolis}{% + You need to compile with XeLaTeX or LuaLaTeX to use the Fira fonts% + } +} +\setbeamerfont{title}{size=\Large,% + series=\bfseries} +\setbeamerfont{author}{size=\small} +\setbeamerfont{date}{size=\small} +\setbeamerfont{section title}{size=\Large,% + series=\bfseries} +\setbeamerfont{block title}{size=\normalsize,% + series=\bfseries} +\setbeamerfont{block title alerted}{size=\normalsize,% + series=\bfseries} +\setbeamerfont*{subtitle}{size=\large} +\setbeamerfont{frametitle}{size=\large,% + series=\bfseries} +\setbeamerfont{caption}{size=\small} +\setbeamerfont{caption name}{series=\bfseries} +\setbeamerfont{description item}{series=\bfseries} +\setbeamerfont{page number in head/foot}{size=\scriptsize} +\setbeamerfont{bibliography entry author}{size=\normalsize,% + series=\normalfont} +\setbeamerfont{bibliography entry title}{size=\normalsize,% + series=\bfseries} +\setbeamerfont{bibliography entry location}{size=\normalsize,% + series=\normalfont} +\setbeamerfont{bibliography entry note}{size=\small,% + series=\normalfont} +\setbeamerfont{standout}{size=\Large,% + series=\bfseries} +\pgfkeys{ + /metropolis/font/titleformat title/.cd, + .is choice, + regular/.code={% + \let\metropolis@titleformat\@empty% + \setbeamerfont{title}{shape=\normalfont}% + }, + smallcaps/.code={% + \let\metropolis@titleformat\@empty% + \setbeamerfont{title}{shape=\scshape}% + }, + allsmallcaps/.code={% + \let\metropolis@titleformat\lowercase% + \setbeamerfont{title}{shape=\scshape}% + \PackageWarning{beamerthememetropolis}{% + Be aware that titleformat title=allsmallcaps can lead to problems% + } + }, + allcaps/.code={% + \let\metropolis@titleformat\uppercase% + \setbeamerfont{title}{shape=\normalfont} + \PackageWarning{beamerthememetropolis}{% + Be aware that titleformat title=allcaps can lead to problems% + } + }, +} +\pgfkeys{ + /metropolis/font/titleformat subtitle/.cd, + .is choice, + regular/.code={% + \let\metropolis@subtitleformat\@empty% + \setbeamerfont{subtitle}{shape=\normalfont}% + }, + smallcaps/.code={% + \let\metropolis@subtitleformat\@empty% + \setbeamerfont{subtitle}{shape=\scshape}% + }, + allsmallcaps/.code={% + \let\metropolis@subtitleformat\lowercase% + \setbeamerfont{subtitle}{shape=\scshape}% + \PackageWarning{beamerthememetropolis}{% + Be aware that titleformat subtitle=allsmallcaps can lead to problems% + } + }, + allcaps/.code={% + \let\metropolis@subtitleformat\uppercase% + \setbeamerfont{subtitle}{shape=\normalfont}% + \PackageWarning{beamerthememetropolis}{% + Be aware that titleformat subtitle=allcaps can lead to problems% + } + }, +} +\pgfkeys{ + /metropolis/font/titleformat section/.cd, + .is choice, + regular/.code={% + \let\metropolis@sectiontitleformat\@empty% + \setbeamerfont{section title}{shape=\normalfont}% + }, + smallcaps/.code={% + \let\metropolis@sectiontitleformat\@empty% + \setbeamerfont{section title}{shape=\scshape}% + }, + allsmallcaps/.code={% + \let\metropolis@sectiontitleformat\MakeLowercase% + \setbeamerfont{section title}{shape=\scshape}% + \PackageWarning{beamerthememetropolis}{% + Be aware that titleformat section=allsmallcaps can lead to problems% + } + }, + allcaps/.code={% + \let\metropolis@sectiontitleformat\MakeUppercase% + \setbeamerfont{section title}{shape=\normalfont}% + \PackageWarning{beamerthememetropolis}{% + Be aware that titleformat section=allcaps can lead to problems% + } + }, +} +\pgfkeys{ + /metropolis/font/titleformat frame/.cd, + .is choice, + regular/.code={% + \let\metropolis@frametitleformat\@empty% + \setbeamerfont{frametitle}{shape=\normalfont}% + }, + smallcaps/.code={% + \let\metropolis@frametitleformat\@empty% + \setbeamerfont{frametitle}{shape=\scshape}% + }, + allsmallcaps/.code={% + \let\metropolis@frametitleformat\MakeLowercase% + \setbeamerfont{frametitle}{shape=\scshape}% + \PackageWarning{beamerthememetropolis}{% + Be aware that titleformat frame=allsmallcaps can lead to problems% + } + }, + allcaps/.code={% + \let\metropolis@frametitleformat\MakeUppercase% + \setbeamerfont{frametitle}{shape=\normalfont} + \PackageWarning{beamerthememetropolis}{% + Be aware that titleformat frame=allcaps can lead to problems% + } + }, +} +\pgfkeys{ + /metropolis/font/.cd, + titleformattitle/.code=\pgfkeysalso{titleformat title=#1}, + titleformatsubtitle/.code=\pgfkeysalso{titleformat subtitle=#1}, + titleformatsection/.code=\pgfkeysalso{titleformat section=#1}, + titleformatframe/.code=\pgfkeysalso{titleformat frame=#1}, +} +\newcommand{\metropolis@font@setdefaults}{ + \pgfkeys{/metropolis/font/.cd, + titleformat title=regular, + titleformat subtitle=regular, + titleformat section=regular, + titleformat frame=regular, + } +} +\def\metropolis@titleformat#1{#1} +\def\metropolis@subtitleformat#1{#1} +\def\metropolis@sectiontitleformat#1{#1} +\def\metropolis@frametitleformat#1{#1} +\patchcmd{\beamer@title}% + {\def\inserttitle{#2}}% + {\def\inserttitle{\metropolis@titleformat{#2}}}% + {}% + {\PackageError{beamerfontthememetropolis}{Patching title failed}\@ehc} +\patchcmd{\beamer@subtitle}% + {\def\insertsubtitle{#2}}% + {\def\insertsubtitle{\metropolis@subtitleformat{#2}}}% + {}% + {\PackageError{beamerfontthememetropolis}{Patching subtitle failed}\@ehc} +\patchcmd{\sectionentry} + {\def\insertsectionhead{#2}} + {\def\insertsectionhead{\metropolis@sectiontitleformat{#2}}} + {} + {\PackageError{beamerfontthememetropolis}{Patching section title failed}\@ehc} +\@tempswafalse +\patchcmd{\beamer@section} + {\edef\insertsectionhead{\noexpand\hyperlink{Navigation\the\c@page}{\unexpanded{#1}}}} + {\edef\insertsectionhead{\noexpand\hyperlink{Navigation\the\c@page}{% + \noexpand\metropolis@sectiontitleformat{\unexpanded{#1}}}}} + {\@tempswatrue} + {} +\patchcmd{\beamer@section} + {\def\insertsectionhead{\hyperlink{Navigation\the\c@page}{#1}}} + {\def\insertsectionhead{\hyperlink{Navigation\the\c@page}{% + \metropolis@sectiontitleformat{#1}}}} + {\@tempswatrue} + {} +\patchcmd{\beamer@section} + {\protected@edef\insertsectionhead{\noexpand\hyperlink{Navigation\the\c@page}{#1}}} + {\protected@edef\insertsectionhead{\noexpand\hyperlink{Navigation\the\c@page}{% + \noexpand\metropolis@sectiontitleformat{#1}}}} + {\@tempswatrue} + {} +\if@tempswa\else + \PackageError{beamerfontthememetropolis}{Patching section title failed}\@ehc +\fi +\@tempswafalse +\patchcmd{\beamer@subsection} + {\edef\insertsubsectionhead{\noexpand\hyperlink{Navigation\the\c@page}{\unexpanded{#1}}}} + {\edef\insertsubsectionhead{\noexpand\hyperlink{Navigation\the\c@page}{% + \noexpand\metropolis@sectiontitleformat{\unexpanded{#1}}}}} + {\@tempswatrue} + {} +\patchcmd{\beamer@subsection} + {\def\insertsubsectionhead{\hyperlink{Navigation\the\c@page}{#1}}} + {\def\insertsubsectionhead{\hyperlink{Navigation\the\c@page}{% + \metropolis@sectiontitleformat{#1}}}} + {\@tempswatrue} + {} +\patchcmd{\beamer@subsection} + {\protected@edef\insertsubsectionhead{\noexpand\hyperlink{Navigation\the\c@page}{#1}}} + {\protected@edef\insertsubsectionhead{\noexpand\hyperlink{Navigation\the\c@page}{% + \noexpand\metropolis@sectiontitleformat{#1}}}} + {\@tempswatrue} + {} +\if@tempswa\else + \PackageError{beamerfontthememetropolis}{Patching section title failed}\@ehc +\fi +\patchcmd{\beamer@@frametitle} + {{% + \gdef\insertframetitle{{#2\ifnum\beamer@autobreakcount>0\relax{}\space% + \usebeamertemplate*{frametitle continuation}\fi}}% + \gdef\beamer@frametitle{#2}% + \gdef\beamer@shortframetitle{#1}% + }} + {{% + \gdef\insertframetitle{{\metropolis@frametitleformat{#2}\ifnum% + \beamer@autobreakcount>0\relax{}\space% + \usebeamertemplate*{frametitle continuation}\fi}}% + \gdef\beamer@frametitle{#2}% + \gdef\beamer@shortframetitle{#1}% + }} + {} + {\PackageError{beamerfontthememetropolis}{Patching frame title failed}\@ehc} +\metropolis@font@setdefaults +\ProcessPgfPackageOptions{/metropolis/font} +\endinput +%% +%% End of file `beamerfontthememetropolis.sty'. diff --git a/datenspuren2019/beamerinnerthememetropolis.sty b/datenspuren2019/beamerinnerthememetropolis.sty @@ -0,0 +1,293 @@ +%% +%% This is file `beamerinnerthememetropolis.sty', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% beamerinnerthememetropolis.dtx (with options: `package') +%% --------------------------------------------------------------------------- +%% Copyright 2015 Matthias Vogelgesang and the LaTeX community. A full list of +%% contributors can be found at +%% +%% https://github.com/matze/mtheme/graphs/contributors +%% +%% and the original template was based on the HSRM theme by Benjamin Weiss. +%% +%% This work is licensed under a Creative Commons Attribution-ShareAlike 4.0 +%% International License (https://creativecommons.org/licenses/by-sa/4.0/). +%% --------------------------------------------------------------------------- +\NeedsTeXFormat{LaTeX2e} +\ProvidesPackage{beamerinnerthememetropolis}[2017/01/23 Metropolis inner theme] +\RequirePackage{etoolbox} +\RequirePackage{keyval} +\RequirePackage{calc} +\RequirePackage{pgfopts} +\RequirePackage{tikz} +\pgfkeys{ + /metropolis/inner/sectionpage/.cd, + .is choice, + none/.code=\metropolis@disablesectionpage, + simple/.code={\metropolis@enablesectionpage + \setbeamertemplate{section page}[simple]}, + progressbar/.code={\metropolis@enablesectionpage + \setbeamertemplate{section page}[progressbar]}, +} +\pgfkeys{ + /metropolis/inner/subsectionpage/.cd, + .is choice, + none/.code=\metropolis@disablesubsectionpage, + simple/.code={\metropolis@enablesubsectionpage + \setbeamertemplate{section page}[simple]}, + progressbar/.code={\metropolis@enablesubsectionpage + \setbeamertemplate{section page}[progressbar]}, +} +\newcommand{\metropolis@inner@setdefaults}{ + \pgfkeys{/metropolis/inner/.cd, + sectionpage=progressbar, + subsectionpage=none + } +} +\setbeamertemplate{title page}{ + \begin{minipage}[b][\paperheight]{\textwidth} + \ifx\inserttitlegraphic\@empty\else\usebeamertemplate*{title graphic}\fi + \vfill% + \ifx\inserttitle\@empty\else\usebeamertemplate*{title}\fi + \ifx\insertsubtitle\@empty\else\usebeamertemplate*{subtitle}\fi + \usebeamertemplate*{title separator} + \ifx\beamer@shortauthor\@empty\else\usebeamertemplate*{author}\fi + \ifx\insertdate\@empty\else\usebeamertemplate*{date}\fi + \ifx\insertinstitute\@empty\else\usebeamertemplate*{institute}\fi + \vfill + \vspace*{1mm} + \end{minipage} +} +\def\maketitle{% + \ifbeamer@inframe + \titlepage + \else + \frame[plain,noframenumbering]{\titlepage} + \fi +} +\def\titlepage{% + \usebeamertemplate{title page} +} +\setbeamertemplate{title graphic}{ + \vbox to 0pt { + \vspace*{2em} + \inserttitlegraphic% + }% + \nointerlineskip% +} +\setbeamertemplate{title}{ + \raggedright% + \linespread{1.0}% + \inserttitle% + \par% + \vspace*{0.5em} +} +\setbeamertemplate{subtitle}{ + \raggedright% + \insertsubtitle% + \par% + \vspace*{0.5em} +} +\newlength{\metropolis@titleseparator@linewidth} +\setlength{\metropolis@titleseparator@linewidth}{0.4pt} +\setbeamertemplate{title separator}{ + \tikzexternaldisable% + \begin{tikzpicture} + \fill[fg] (0,0) rectangle (\textwidth, \metropolis@titleseparator@linewidth); + \end{tikzpicture}% + \tikzexternalenable% + \par% +} +\setbeamertemplate{author}{ + \vspace*{2em} + \insertauthor% + \par% + \vspace*{0.25em} +} +\setbeamertemplate{date}{ + \insertdate% + \par% +} +\setbeamertemplate{institute}{ + \vspace*{3mm} + \insertinstitute% + \par% +} +\defbeamertemplate{section page}{simple}{ + \begin{center} + \usebeamercolor[fg]{section title} + \usebeamerfont{section title} + \insertsectionhead\par + \ifx\insertsubsectionhead\@empty\else + \usebeamercolor[fg]{subsection title} + \usebeamerfont{subsection title} + \insertsubsectionhead + \fi + \end{center} +} +\defbeamertemplate{section page}{progressbar}{ + \centering + \begin{minipage}{22em} + \raggedright + \usebeamercolor[fg]{section title} + \usebeamerfont{section title} + \insertsectionhead\\[-1ex] + \usebeamertemplate*{progress bar in section page} + \par + \ifx\insertsubsectionhead\@empty\else% + \usebeamercolor[fg]{subsection title}% + \usebeamerfont{subsection title}% + \insertsubsectionhead + \fi + \end{minipage} + \par + \vspace{\baselineskip} +} +\newcommand{\metropolis@disablesectionpage}{ + \AtBeginSection{ + % intentionally empty + } +} +\newcommand{\metropolis@enablesectionpage}{ + \AtBeginSection{ + \ifbeamer@inframe + \sectionpage + \else + \frame[plain,c,noframenumbering]{\sectionpage} + \fi + } +} +\setbeamertemplate{subsection page}{% + \usebeamertemplate*{section page} +} +\newcommand{\metropolis@disablesubsectionpage}{ + \AtBeginSubsection{ + % intentionally empty + } +} +\newcommand{\metropolis@enablesubsectionpage}{ + \AtBeginSubsection{ + \ifbeamer@inframe + \subsectionpage + \else + \frame[plain,c,noframenumbering]{\subsectionpage} + \fi + } +} +\newlength{\metropolis@progressonsectionpage} +\newlength{\metropolis@progressonsectionpage@linewidth} +\setlength{\metropolis@progressonsectionpage@linewidth}{0.4pt} +\setbeamertemplate{progress bar in section page}{ + \setlength{\metropolis@progressonsectionpage}{% + \textwidth * \ratio{\insertframenumber pt}{\inserttotalframenumber pt}% + }% + \tikzexternaldisable% + \begin{tikzpicture} + \fill[bg] (0,0) rectangle (\textwidth, \metropolis@progressonsectionpage@linewidth); + \fill[fg] (0,0) rectangle (\metropolis@progressonsectionpage, \metropolis@progressonsectionpage@linewidth); + \end{tikzpicture}% + \tikzexternalenable% +} +\def\inserttotalframenumber{100} +\newlength{\metropolis@blocksep} +\newlength{\metropolis@blockadjust} +\setlength{\metropolis@blocksep}{0.75ex} +\setlength{\metropolis@blockadjust}{0.25ex} +\providecommand{\metropolis@strut}{% + \vphantom{ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz()}% +} +\newcommand{\metropolis@block}[1]{ + \par\vskip\medskipamount% + \setlength{\parskip}{0pt} + \ifbeamercolorempty[bg]{block title#1}{% + \begin{beamercolorbox}[rightskip=0pt plus 4em]{block title#1}}{% + \ifbeamercolorempty[bg]{block title}{% + \begin{beamercolorbox}[rightskip=0pt plus 4em]{block title#1}% + }% + {% + \begin{beamercolorbox}[ + sep=\dimexpr\metropolis@blocksep-\metropolis@blockadjust\relax, + leftskip=\metropolis@blockadjust, + rightskip=\dimexpr\metropolis@blockadjust plus 4em\relax + ]{block title#1}% + }}% + \usebeamerfont*{block title#1}% + \metropolis@strut% + \insertblocktitle% + \metropolis@strut% + \end{beamercolorbox}% + \nointerlineskip% + \ifbeamercolorempty[bg]{block body#1}{% + \begin{beamercolorbox}[vmode]{block body#1}}{ + \ifbeamercolorempty[bg]{block body}{% + \begin{beamercolorbox}[vmode]{block body#1}% + }{% + \begin{beamercolorbox}[sep=\metropolis@blocksep, vmode]{block body#1}% + \vspace{-\metropolis@parskip} + }}% + \usebeamerfont{block body#1}% + \setlength{\parskip}{\metropolis@parskip}% +} +\setbeamertemplate{block begin}{\metropolis@block{}} +\setbeamertemplate{block alerted begin}{\metropolis@block{ alerted}} +\setbeamertemplate{block example begin}{\metropolis@block{ example}} +\setbeamertemplate{block end}{\end{beamercolorbox}\vspace*{0.2ex}} +\setbeamertemplate{block alerted end}{\end{beamercolorbox}\vspace*{0.2ex}} +\setbeamertemplate{block example end}{\end{beamercolorbox}\vspace*{0.2ex}} +\setbeamertemplate{itemize items}{\textbullet} +\setbeamertemplate{caption label separator}{: } +\setbeamertemplate{caption}[numbered] +\setbeamertemplate{footnote}{% + \parindent 0em\noindent% + \raggedright + \usebeamercolor{footnote}\hbox to 0.8em{\hfil\insertfootnotemark}\insertfootnotetext\par% +} +\newlength{\metropolis@parskip} +\setlength{\metropolis@parskip}{0.5em} +\setlength{\parskip}{\metropolis@parskip} +\linespread{1.15} +\define@key{beamerframe}{c}[true]{% centered + \beamer@frametopskip=0pt plus 1fill\relax% + \beamer@framebottomskip=0pt plus 1fill\relax% + \beamer@frametopskipautobreak=0pt plus .4\paperheight\relax% + \beamer@framebottomskipautobreak=0pt plus .6\paperheight\relax% + \def\beamer@initfirstlineunskip{}% +} +\providebool{metropolis@standout} +\define@key{beamerframe}{standout}[true]{% + \booltrue{metropolis@standout} + \begingroup + \setkeys{beamerframe}{c} + \setkeys{beamerframe}{noframenumbering} + \ifbeamercolorempty[bg]{palette primary}{ + \setbeamercolor{background canvas}{ + use=palette primary, + bg=-palette primary.fg + } + }{ + \setbeamercolor{background canvas}{ + use=palette primary, + bg=palette primary.bg + } + } + \setbeamercolor{local structure}{ + fg=palette primary.fg + } + \centering + \usebeamercolor[fg]{palette primary} + \usebeamerfont{standout} +} + \apptocmd{\beamer@reseteecodes}{% + \ifbool{metropolis@standout}{ + \endgroup + \boolfalse{metropolis@standout} + }{} + }{}{} +\metropolis@inner@setdefaults +\ProcessPgfPackageOptions{/metropolis/inner} +\endinput +%% +%% End of file `beamerinnerthememetropolis.sty'. diff --git a/datenspuren2019/beamerouterthememetropolis.sty b/datenspuren2019/beamerouterthememetropolis.sty @@ -0,0 +1,137 @@ +%% +%% This is file `beamerouterthememetropolis.sty', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% beamerouterthememetropolis.dtx (with options: `package') +%% --------------------------------------------------------------------------- +%% Copyright 2015 Matthias Vogelgesang and the LaTeX community. A full list of +%% contributors can be found at +%% +%% https://github.com/matze/mtheme/graphs/contributors +%% +%% and the original template was based on the HSRM theme by Benjamin Weiss. +%% +%% This work is licensed under a Creative Commons Attribution-ShareAlike 4.0 +%% International License (https://creativecommons.org/licenses/by-sa/4.0/). +%% --------------------------------------------------------------------------- +\NeedsTeXFormat{LaTeX2e} +\ProvidesPackage{beamerouterthememetropolis}[2017/01/23 Metropolis outer theme] +\RequirePackage{etoolbox} +\RequirePackage{calc} +\RequirePackage{pgfopts} +\pgfkeys{ + /metropolis/outer/numbering/.cd, + .is choice, + none/.code=\setbeamertemplate{frame numbering}[none], + counter/.code=\setbeamertemplate{frame numbering}[counter], + fraction/.code=\setbeamertemplate{frame numbering}[fraction], +} +\pgfkeys{ + /metropolis/outer/progressbar/.cd, + .is choice, + none/.code={% + \setbeamertemplate{headline}[plain] + \setbeamertemplate{frametitle}[plain] + \setbeamertemplate{footline}[plain] + }, + head/.code={\pgfkeys{/metropolis/outer/progressbar=none} + \addtobeamertemplate{headline}{}{% + \usebeamertemplate*{progress bar in head/foot} + } + }, + frametitle/.code={\pgfkeys{/metropolis/outer/progressbar=none} + \addtobeamertemplate{frametitle}{}{% + \usebeamertemplate*{progress bar in head/foot} + } + }, + foot/.code={\pgfkeys{/metropolis/outer/progressbar=none} + \addtobeamertemplate{footline}{}{% + \usebeamertemplate*{progress bar in head/foot}% + } + }, +} +\newcommand{\metropolis@outer@setdefaults}{ + \pgfkeys{/metropolis/outer/.cd, + numbering=counter, + progressbar=none, + } +} +\setbeamertemplate{navigation symbols}{} +\defbeamertemplate{frame footer}{none}{} +\defbeamertemplate{frame footer}{custom}[1]{ #1 } +\defbeamertemplate{frame numbering}{none}{} +\defbeamertemplate{frame numbering}{counter}{\insertframenumber} +\defbeamertemplate{frame numbering}{fraction}{ + \insertframenumber/\inserttotalframenumber +} +\defbeamertemplate{headline}{plain}{} +\defbeamertemplate{footline}{plain}{% + \begin{beamercolorbox}[wd=\textwidth, sep=3ex]{footline}% + \usebeamerfont{page number in head/foot}% + \usebeamertemplate*{frame footer} + \hfill% + \usebeamertemplate*{frame numbering} + \end{beamercolorbox}% +} +\newlength{\metropolis@frametitle@padding} +\setlength{\metropolis@frametitle@padding}{2.2ex} +\newcommand{\metropolis@frametitlestrut@start}{ + \rule{0pt}{\metropolis@frametitle@padding +% + \totalheightof{% + \ifcsdef{metropolis@frametitleformat}{\metropolis@frametitleformat X}{X}% + }% + }% +} +\newcommand{\metropolis@frametitlestrut@end}{ + \rule[-\metropolis@frametitle@padding]{0pt}{\metropolis@frametitle@padding} +} +\defbeamertemplate{frametitle}{plain}{% + \nointerlineskip% + \begin{beamercolorbox}[% + wd=\paperwidth,% + sep=0pt,% + leftskip=\metropolis@frametitle@padding,% + rightskip=\metropolis@frametitle@padding,% + ]{frametitle}% + \metropolis@frametitlestrut@start% + \insertframetitle% + \nolinebreak% + \metropolis@frametitlestrut@end% + \end{beamercolorbox}% +} +\setbeamertemplate{frametitle continuation}{% + \usebeamerfont{frametitle} + \romannumeral \insertcontinuationcount +} +\newlength{\metropolis@progressinheadfoot} +\newlength{\metropolis@progressinheadfoot@linewidth} +\setlength{\metropolis@progressinheadfoot@linewidth}{0.4pt} +\setbeamertemplate{progress bar in head/foot}{ + \nointerlineskip + \setlength{\metropolis@progressinheadfoot}{% + \paperwidth * \ratio{\insertframenumber pt}{\inserttotalframenumber pt}% + }% + \begin{beamercolorbox}[wd=\paperwidth]{progress bar in head/foot} + \tikzexternaldisable% + \begin{tikzpicture} + \fill[bg] (0,0) rectangle (\paperwidth, \metropolis@progressinheadfoot@linewidth); + \fill[fg] (0,0) rectangle (\metropolis@progressinheadfoot, \metropolis@progressinheadfoot@linewidth); + \end{tikzpicture}% + \tikzexternalenable% + \end{beamercolorbox} +} +\AtBeginDocument{% + \apptocmd{\appendix}{% + \pgfkeys{% + /metropolis/outer/.cd, + numbering=none, + progressbar=none} + }{}{} +} +\metropolis@outer@setdefaults +\ProcessPgfPackageOptions{/metropolis/outer} +\endinput +%% +%% End of file `beamerouterthememetropolis.sty'. diff --git a/datenspuren2019/beamerthememetropolis.sty b/datenspuren2019/beamerthememetropolis.sty @@ -0,0 +1,107 @@ +%% +%% This is file `beamerthememetropolis.sty', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% beamerthememetropolis.dtx (with options: `package') +%% --------------------------------------------------------------------------- +%% Copyright 2015 Matthias Vogelgesang and the LaTeX community. A full list of +%% contributors can be found at +%% +%% https://github.com/matze/mtheme/graphs/contributors +%% +%% and the original template was based on the HSRM theme by Benjamin Weiss. +%% +%% This work is licensed under a Creative Commons Attribution-ShareAlike 4.0 +%% International License (https://creativecommons.org/licenses/by-sa/4.0/). +%% --------------------------------------------------------------------------- +\NeedsTeXFormat{LaTeX2e} +\ProvidesPackage{beamerthememetropolis} + [2017/01/23 v1.2 Metropolis Beamer theme] +\RequirePackage{etoolbox} +\RequirePackage{pgfopts} +\pgfkeys{/metropolis/.cd, + .search also={ + /metropolis/inner, + /metropolis/outer, + /metropolis/color, + /metropolis/font, + } +} +\pgfkeys{ + /metropolis/titleformat plain/.cd, + .is choice, + regular/.code={% + \let\metropolis@plaintitleformat\@empty% + \setbeamerfont{standout}{shape=\normalfont}% + }, + smallcaps/.code={% + \let\metropolis@plaintitleformat\@empty% + \setbeamerfont{standout}{shape=\scshape}% + }, + allsmallcaps/.code={% + \let\metropolis@plaintitleformat\MakeLowercase% + \setbeamerfont{standout}{shape=\scshape}% + \PackageWarning{beamerthememetropolis}{% + Be aware that titleformat plain=allsmallcaps can lead to problems% + } + }, + allcaps/.code={% + \let\metropolis@plaintitleformat\MakeUppercase% + \setbeamerfont{standout}{shape=\normalfont}% + \PackageWarning{beamerthememetropolis}{% + Be aware that titleformat plain=allcaps can lead to problems% + } + }, +} +\pgfkeys{ + /metropolis/titleformat/.code=\pgfkeysalso{ + font/titleformat title=#1, + font/titleformat subtitle=#1, + font/titleformat section=#1, + font/titleformat frame=#1, + titleformat plain=#1, + } +} +\pgfkeys{/metropolis/.cd, + usetitleprogressbar/.code=\pgfkeysalso{outer/progressbar=frametitle}, + noslidenumbers/.code=\pgfkeysalso{outer/numbering=none}, + usetotalslideindicator/.code=\pgfkeysalso{outer/numbering=fraction}, + nosectionslide/.code=\pgfkeysalso{inner/sectionpage=none}, + darkcolors/.code=\pgfkeysalso{color/background=dark}, + blockbg/.code=\pgfkeysalso{color/block=fill, inner/block=fill}, +} +\newcommand{\metropolis@setdefaults}{ + \pgfkeys{/metropolis/.cd, + titleformat plain=regular, + } +} +\providecommand{\tikzexternalenable}{} +\providecommand{\tikzexternaldisable}{} +\useinnertheme{metropolis} +\useoutertheme{metropolis} +\usecolortheme{metropolis} +\usefonttheme{metropolis} +\AtEndPreamble{% + \@ifpackageloaded{pgfplots}{% + \RequirePackage{pgfplotsthemetol} + }{} +} +\newcommand{\metroset}[1]{\pgfkeys{/metropolis/.cd,#1}} +\def\metropolis@plaintitleformat#1{#1} +\newcommand{\plain}[2][]{% + \PackageWarning{beamerthememetropolis}{% + The syntax `\plain' may be deprecated in a future version of Metropolis. + Please use a frame with [standout] instead. + } + \begin{frame}[standout]{#1} + \metropolis@plaintitleformat{#2} + \end{frame} +} +\newcommand{\mreducelistspacing}{\vspace{-\topsep}} +\metropolis@setdefaults +\ProcessPgfOptions{/metropolis} +\endinput +%% +%% End of file `beamerthememetropolis.sty'. diff --git a/datenspuren2019/datenspuren2019.pdf b/datenspuren2019/datenspuren2019.pdf Binary files differ. diff --git a/datenspuren2019/directories.png b/datenspuren2019/directories.png Binary files differ. diff --git a/datenspuren2019/facebook_analytica.png b/datenspuren2019/facebook_analytica.png Binary files differ. diff --git a/datenspuren2019/gnunet.png b/datenspuren2019/gnunet.png Binary files differ. diff --git a/datenspuren2019/handshake.png b/datenspuren2019/handshake.png Binary files differ. diff --git a/datenspuren2019/idp_gnuid.pdf b/datenspuren2019/idp_gnuid.pdf Binary files differ. diff --git a/datenspuren2019/idp_info.png b/datenspuren2019/idp_info.png Binary files differ. diff --git a/datenspuren2019/idp_nameid.pdf b/datenspuren2019/idp_nameid.pdf Binary files differ. diff --git a/datenspuren2019/idp_traditional.pdf b/datenspuren2019/idp_traditional.pdf Binary files differ. diff --git a/datenspuren2019/iu.jpg b/datenspuren2019/iu.jpg Binary files differ. diff --git a/datenspuren2019/motiv.pdf b/datenspuren2019/motiv.pdf Binary files differ. diff --git a/datenspuren2019/nameid.png b/datenspuren2019/nameid.png Binary files differ. diff --git a/datenspuren2019/nsa.jpg b/datenspuren2019/nsa.jpg Binary files differ. diff --git a/datenspuren2019/perf_attrs.png b/datenspuren2019/perf_attrs.png Binary files differ. diff --git a/datenspuren2019/pgfplotsthemetol.sty b/datenspuren2019/pgfplotsthemetol.sty @@ -0,0 +1,123 @@ +%% +%% This is file `pgfplotsthemetol.sty', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% pgfplotsthemetol.dtx (with options: `package') +%% --------------------------------------------------------------------------- +%% Copyright 2015 Matthias Vogelgesang and the LaTeX community. A full list of +%% contributors can be found at +%% +%% https://github.com/matze/mtheme/graphs/contributors +%% +%% and the original template was based on the HSRM theme by Benjamin Weiss. +%% +%% This work is licensed under a Creative Commons Attribution-ShareAlike 4.0 +%% International License (https://creativecommons.org/licenses/by-sa/4.0/). +%% --------------------------------------------------------------------------- +\NeedsTeXFormat{LaTeX2e} +\ProvidesPackage{pgfplotsthemetol} + [2017/01/23 PGFplots colors based on Paul Tol's SRON technical note] +\definecolor{TolDarkPurple}{HTML}{332288} +\definecolor{TolDarkBlue}{HTML}{6699CC} +\definecolor{TolLightBlue}{HTML}{88CCEE} +\definecolor{TolLightGreen}{HTML}{44AA99} +\definecolor{TolDarkGreen}{HTML}{117733} +\definecolor{TolDarkBrown}{HTML}{999933} +\definecolor{TolLightBrown}{HTML}{DDCC77} +\definecolor{TolDarkRed}{HTML}{661100} +\definecolor{TolLightRed}{HTML}{CC6677} +\definecolor{TolLightPink}{HTML}{AA4466} +\definecolor{TolDarkPink}{HTML}{882255} +\definecolor{TolLightPurple}{HTML}{AA4499} +\pgfplotscreateplotcyclelist{mbarplot cycle}{% + {draw=TolDarkBlue, fill=TolDarkBlue!70}, + {draw=TolLightBrown, fill=TolLightBrown!70}, + {draw=TolLightGreen, fill=TolLightGreen!70}, + {draw=TolDarkPink, fill=TolDarkPink!70}, + {draw=TolDarkPurple, fill=TolDarkPurple!70}, + {draw=TolDarkRed, fill=TolDarkRed!70}, + {draw=TolDarkBrown, fill=TolDarkBrown!70}, + {draw=TolLightRed, fill=TolLightRed!70}, + {draw=TolLightPink, fill=TolLightPink!70}, + {draw=TolLightPurple, fill=TolLightPurple!70}, + {draw=TolLightBlue, fill=TolLightBlue!70}, + {draw=TolDarkGreen, fill=TolDarkGreen!70}, +} +\pgfplotscreateplotcyclelist{mlineplot cycle}{% + {TolDarkBlue, mark=*, mark size=1.5pt}, + {TolLightBrown, mark=square*, mark size=1.3pt}, + {TolLightGreen, mark=triangle*, mark size=1.5pt}, + {TolDarkBrown, mark=diamond*, mark size=1.5pt}, +} +\pgfplotsset{ + compat=1.9, + mlineplot/.style={ + mbaseplot, + xmajorgrids=true, + ymajorgrids=true, + major grid style={dotted}, + axis x line=bottom, + axis y line=left, + legend style={ + cells={anchor=west}, + draw=none + }, + cycle list name=mlineplot cycle, + }, + mbarplot base/.style={ + mbaseplot, + bar width=6pt, + axis y line*=none, + }, + mbarplot/.style={ + mbarplot base, + ybar, + xmajorgrids=false, + ymajorgrids=true, + area legend, + legend image code/.code={% + \draw[#1] (0cm,-0.1cm) rectangle (0.15cm,0.1cm); + }, + cycle list name=mbarplot cycle, + }, + horizontal mbarplot/.style={ + mbarplot base, + xmajorgrids=true, + ymajorgrids=false, + xbar stacked, + area legend, + legend image code/.code={% + \draw[#1] (0cm,-0.1cm) rectangle (0.15cm,0.1cm); + }, + cycle list name=mbarplot cycle, + }, + mbaseplot/.style={ + legend style={ + draw=none, + fill=none, + cells={anchor=west}, + }, + x tick label style={ + font=\footnotesize + }, + y tick label style={ + font=\footnotesize + }, + legend style={ + font=\footnotesize + }, + major grid style={ + dotted, + }, + axis x line*=bottom, + }, + disable thousands separator/.style={ + /pgf/number format/.cd, + 1000 sep={} + }, +} +\endinput +%% +%% End of file `pgfplotsthemetol.sty'. diff --git a/datenspuren2019/reclaim.nav b/datenspuren2019/reclaim.nav @@ -0,0 +1,95 @@ +\headcommand {\slideentry {0}{0}{1}{1/1}{}{0}} +\headcommand {\beamer@framepages {1}{1}} +\headcommand {\beamer@sectionpages {1}{1}} +\headcommand {\beamer@subsectionpages {1}{1}} +\headcommand {\sectionentry {1}{Motivation}{2}{Motivation}{0}} +\headcommand {\slideentry {1}{0}{1}{2/2}{}{0}} +\headcommand {\beamer@framepages {2}{2}} +\headcommand {\slideentry {1}{0}{2}{3/3}{}{0}} +\headcommand {\beamer@framepages {3}{3}} +\headcommand {\slideentry {1}{0}{3}{4/6}{}{0}} +\headcommand {\beamer@framepages {4}{6}} +\headcommand {\slideentry {1}{0}{4}{7/11}{}{0}} +\headcommand {\beamer@framepages {7}{11}} +\headcommand {\slideentry {1}{0}{5}{12/14}{}{0}} +\headcommand {\beamer@framepages {12}{14}} +\headcommand {\beamer@sectionpages {2}{14}} +\headcommand {\beamer@subsectionpages {2}{14}} +\headcommand {\sectionentry {2}{Introducing \includegraphics [trim={6cm 8.2cm 6cm 7cm},clip,width=.4\textwidth ]{reclaim_small}}{15}{Introducing \includegraphics [trim={6cm 8.2cm 6cm 7cm},clip,width=.4\textwidth ]{reclaim_small}}{0}} +\headcommand {\slideentry {2}{0}{1}{15/15}{}{0}} +\headcommand {\beamer@framepages {15}{15}} +\headcommand {\slideentry {2}{0}{2}{16/20}{}{0}} +\headcommand {\beamer@framepages {16}{20}} +\headcommand {\slideentry {2}{0}{3}{21/21}{}{0}} +\headcommand {\beamer@framepages {21}{21}} +\headcommand {\slideentry {2}{0}{4}{22/22}{}{0}} +\headcommand {\beamer@framepages {22}{22}} +\headcommand {\slideentry {2}{0}{5}{23/24}{}{0}} +\headcommand {\beamer@framepages {23}{24}} +\headcommand {\beamer@sectionpages {15}{24}} +\headcommand {\beamer@subsectionpages {15}{24}} +\headcommand {\sectionentry {3}{How does it work}{25}{How does it work}{0}} +\headcommand {\slideentry {3}{0}{1}{25/25}{}{0}} +\headcommand {\beamer@framepages {25}{25}} +\headcommand {\slideentry {3}{0}{2}{26/26}{}{0}} +\headcommand {\beamer@framepages {26}{26}} +\headcommand {\slideentry {3}{0}{3}{27/32}{}{0}} +\headcommand {\beamer@framepages {27}{32}} +\headcommand {\slideentry {3}{0}{4}{33/33}{}{0}} +\headcommand {\beamer@framepages {33}{33}} +\headcommand {\slideentry {3}{0}{5}{34/37}{}{0}} +\headcommand {\beamer@framepages {34}{37}} +\headcommand {\slideentry {3}{0}{6}{38/38}{}{0}} +\headcommand {\beamer@framepages {38}{38}} +\headcommand {\slideentry {3}{0}{7}{39/40}{}{0}} +\headcommand {\beamer@framepages {39}{40}} +\headcommand {\slideentry {3}{0}{8}{41/41}{}{0}} +\headcommand {\beamer@framepages {41}{41}} +\headcommand {\slideentry {3}{0}{9}{42/44}{}{0}} +\headcommand {\beamer@framepages {42}{44}} +\headcommand {\slideentry {3}{0}{10}{45/45}{}{0}} +\headcommand {\beamer@framepages {45}{45}} +\headcommand {\slideentry {3}{0}{11}{46/46}{}{0}} +\headcommand {\beamer@framepages {46}{46}} +\headcommand {\beamer@sectionpages {25}{46}} +\headcommand {\beamer@subsectionpages {25}{46}} +\headcommand {\sectionentry {4}{Who sais that, anyway?}{47}{Who sais that, anyway?}{0}} +\headcommand {\slideentry {4}{0}{1}{47/47}{}{0}} +\headcommand {\beamer@framepages {47}{47}} +\headcommand {\slideentry {4}{0}{2}{48/50}{}{0}} +\headcommand {\beamer@framepages {48}{50}} +\headcommand {\slideentry {4}{0}{3}{51/55}{}{0}} +\headcommand {\beamer@framepages {51}{55}} +\headcommand {\beamer@sectionpages {47}{55}} +\headcommand {\beamer@subsectionpages {47}{55}} +\headcommand {\sectionentry {5}{Using re:claimID}{56}{Using re:claimID}{0}} +\headcommand {\slideentry {5}{0}{1}{56/56}{}{0}} +\headcommand {\beamer@framepages {56}{56}} +\headcommand {\slideentry {5}{0}{2}{57/58}{}{0}} +\headcommand {\beamer@framepages {57}{58}} +\headcommand {\slideentry {5}{0}{3}{59/59}{}{0}} +\headcommand {\beamer@framepages {59}{59}} +\headcommand {\beamer@sectionpages {56}{59}} +\headcommand {\beamer@subsectionpages {56}{59}} +\headcommand {\sectionentry {6}{Summary}{60}{Summary}{0}} +\headcommand {\slideentry {6}{0}{1}{60/60}{}{0}} +\headcommand {\beamer@framepages {60}{60}} +\headcommand {\slideentry {6}{0}{2}{61/61}{}{0}} +\headcommand {\beamer@framepages {61}{61}} +\headcommand {\slideentry {6}{0}{3}{62/62}{}{0}} +\headcommand {\beamer@framepages {62}{62}} +\headcommand {\gdef \insertmainframenumber {24}} +\headcommand {\partentry {\translate {Appendix}}{1}} +\headcommand {\beamer@partpages {1}{62}} +\headcommand {\beamer@sectionpages {60}{62}} +\headcommand {\beamer@subsectionpages {60}{62}} +\headcommand {\beamer@appendixpages {63}} +\headcommand {\slideentry {6}{0}{4}{63/63}{}{1}} +\headcommand {\beamer@framepages {63}{63}} +\headcommand {\beamer@partpages {63}{63}} +\headcommand {\beamer@subsectionpages {63}{63}} +\headcommand {\beamer@sectionpages {63}{63}} +\headcommand {\beamer@documentpages {63}} +\headcommand {\gdef \inserttotalframenumber {1}} +\headcommand {\gdef \inserttotalframenumber {24}} +\headcommand {\gdef \appendixtotalframenumber {1}} diff --git a/datenspuren2019/reclaim.snm b/datenspuren2019/reclaim.snm diff --git a/datenspuren2019/reclaim.tex b/datenspuren2019/reclaim.tex @@ -0,0 +1,495 @@ +\documentclass[aspectratio=169]{beamer} +\usepackage{appendixnumberbeamer} +\usetheme{metropolis} % Use metropolis theme +\definecolor{fhggreen}{RGB}{23,156,125} +\let\oldemph\textbf +\renewcommand{\textbf}[1]{{\color{mLightBrown}\oldemph{#1}}} + +\usepackage{blkarray} +\usepackage{amsmath} +\usepackage{multirow} +\title{\includegraphics[trim={6cm 7cm 6cm 7cm},clip,width=0.5\textwidth]{reclaim_small}\\\small{Datenspuren 2019}} +\date{21.9.2019} +\author{Martin Schanzenbach} +\institute{\includegraphics[width=.25\textwidth]{aisec_logo.pdf} \hfill \large{GNUnet} \includegraphics[trim={0cm 1.5cm 0cm 0cm},clip,width=5em]{gnunet}} +\begin{document} + \metroset{block=fill,sectionpage=progressbar,numbering=counter} + \maketitle + \section{Motivation} + +\begin{frame}{Motivation} + Identity Provider Market: + \begin{center} + \includegraphics[width=0.9\textwidth]{idp_info} + \end{center} + \begin{tiny} + Source: \url{http://www.gigya.com/blog/the-landscape-of-customer-identity-q2-2015/} + \end{tiny} +\end{frame} + \begin{frame}{Motivation} + Issues: + \begin{enumerate} + \item \textbf{Privacy} concerns: + \begin{itemize} + \item Targeted advertisement, opinion shaping. + \item ``Public safety'': Mass surveillance and data collection. + \end{itemize} + \pause + \item \textbf{Liability} risks: + \begin{itemize} + \item Data loss through leaks or hacks may result in existential legal implications (GDPR). + \end{itemize} + \pause + \item \textbf{Oligopoly}: + \begin{itemize} + \item ``There can be only one (two)''. + \item IdP market tends to degenerate. + \item Federation not widely used. + \end{itemize} + \end{enumerate} + \end{frame} + +\begin{frame}{Approach} + \textbf{Primary objective}: We must enable users to exercise their right to digital self-determination: + \begin{enumerate} + \pause + \item Avoid third party services for identity management and data sharing. + \pause + \item Open, free and decentralized service which is not under the control of a single organization, consortium or business. + \pause + \item Free software. + \end{enumerate} + \pause + $\Rightarrow$ Empower users to \textbf{reclaim} control over their digital identities. + \end{frame} + + + \begin{frame}{What does an IdP do?} + \begin{enumerate} + \item Identity provisioning and access control + \begin{itemize} + \item Allow management of identities and personal data. + \item Facilitate sharing of identity data with third parties. + \item Provide up-to-date information accessible even if user is offline. + \item Enforce authorization decisions of user. + \uncover<3->{\item[$\Rightarrow$] \textbf {re:claimID}} + \end{itemize} + \pause + {\color<3->{gray} + \item Identity information verification and attestation: + \begin{itemize} + {\color<3->{gray} + \item ``this is Alice's email address'': Email provider. + \item ``this person is living in Germany'': Sovereign state. + \uncover<3->{\item[$\Rightarrow$] \textbf {Not our department!*}} + } + \end{itemize} + \uncover<3->{\tiny{*We will revisit this further on.}} + } + \end{enumerate} + %\begin{enumerate} + % \item Identities and attributes must be shared over a secure, decentralized storage to allow access even of user is offline + % \item Access control on data without trusted entity that enforces authorization decisions by user of he is offline + %\end{enumerate} + \end{frame} + + + +\section{Introducing \includegraphics[trim={6cm 8.2cm 6cm 7cm},clip,width=.4\textwidth]{reclaim_small}} + +\begin{frame} + \begin{itemize} + \item re:claimID is a \textbf{self-sovereign} personal data sharing system. + \item Other self-sovereign identity systems you may have head about: + \begin{itemize} + \item Sovrin (Hyperledger)\uncover<2->{$\Leftarrow$ \textbf{Permissioned blockchain}} + \item uPort (Ethereum)\uncover<3->{$\Leftarrow$ \textbf{Data shared off-chain: If user is offline data not accessible}}. + \item NameID (Namecoin) \uncover<4->{$\Leftarrow$ \textbf{Access control through central server (wat?)}} + + \end{itemize} + \uncover<5->{\item[!] re:claimID does \textbf{not} require a blockchain, is fully decentralized and allows asynchronuous data access.} + \end{itemize} +\end{frame} + + + +\begin{frame}{In a nutshell} + \begin{minipage}[m]{0.40\textwidth} + \centering + \centering + \includegraphics[trim={6cm 7cm 6cm 7cm},clip,width=1\textwidth]{reclaim_small} + \end{minipage} + \begin{minipage}[m]{0.2\textwidth} + \centering + \Huge {\color{black} =} + \end{minipage} + \begin{minipage}[m]{0.25\textwidth} + \centering + {\large \textbf{Decentralized directory service}}\\ + \vspace{1em} + {\Huge \color{black} +}\\ + \vspace{1em} + {\large \textbf{Cryptographic access control}} + \end{minipage} +\end{frame} + +\begin{frame}{Directory services?} + \begin{center} + \includegraphics[width=1\textwidth]{directories} + \end{center} +\end{frame} + + +\begin{frame}{In a nutshell} + \begin{itemize} + \item Decentralized directory service + \begin{itemize} + \item Secure \textbf{name system} with open name registration. + \item Idea ``borrowed'' from NameID. + \item Example: nslookup email.bob.org $\Rightarrow$ ``bob@example.com'' + \item Our implementation uses the \textbf{GNU Name System (GNS)} + \end{itemize} + \pause + \item Cryptographic access control layer + \begin{itemize} + \item Provided by GNS through encrypted and signed resource records. + \item Protects identity data from unwanted disclosure and allows users to enforce access control. + \end{itemize} + \end{itemize} + %\begin{enumerate} + % \item Identities and attributes must be shared over a secure, decentralized storage to allow access even of user is offline + % \item Access control on data without trusted entity that enforces authorization decisions by user of he is offline + %\end{enumerate} +\end{frame} + +%\begin{frame}{Centralized Storage, centralized IdP} +% \includegraphics[width=1\textwidth]{idp_traditional} +%\end{frame} +%\begin{frame}{Decentralized Storage, centralized IdP} +% \includegraphics[width=1\textwidth]{idp_nameid} +%\end{frame} +%\begin{frame}{reclaimID} +% \includegraphics[width=1\textwidth]{idp_gnuid} +%\end{frame} +% + + +\section{How does it work} + +\begin{frame}{Managing and publishing identity information} + \centering + \includegraphics[width=1\textwidth]{Reclaim-2} +\end{frame} + +\begin{frame}{The GNU Name System} + \begin{itemize} + \item In GNS, a namespace is defined by a public/private EC key pair: + \begin{itemize} + \item $x$: Private key + \item $P$: Public key + \item $G$: Generator of the curve + \item $n$: Group order + \end{itemize} + \pause + \item Records are encrypted and signed using keys derived from $(x,P)$. + \pause + \item Encrypted records are published in a distributed hash table (under key $q$). + \pause + \item Any peer is able to verify the signature as the corresponding derived public key is also published. + \pause + \item Records can only be resolved and decrypted if the true identity and the label is known. + \pause + \item[$\Rightarrow$] Namespaces \textbf{cannot} be enumerated and queries/responses \textbf{cannot}* be observed. + \end{itemize} + \tiny{*Unless label and identity are known.} +\end{frame} + +\begin{frame}{Identity attributes in GNS} + Users may create a namespace $(x,P)$ and use it as a digital identity containing personal information: + \begin{table}[h] + \begin{tabular}{|c|c|c|} + \hline + Label & Record Type & Value \\\hline\hline + $l_{email}$ & \texttt{ATTR} & ``email=alice@example.com''\\\hline + $l_{name}$ & \texttt{ATTR} & ``name=Alice Doe''\\\hline + $l_{dob}$ & \texttt{ATTR} & ``dob=1.3.1987'' \\\hline + \end{tabular} + \end{table} + where the labels are \textbf{random secret values} with high entropy. +\end{frame} + + +\begin{frame}{Publishing information} + Given a namespace $(x,P)$, we can treat labels as shared secrets in order to selectively disclose information. + + %\setlength{\jot}{4.5pt} + \[ + \def\arraystretch{1.1} + \begin{blockarray}{r@{\;}l} + \begin{block}{r@{\;}l} + h &:= Hash(l_{attr},P) \\[\jot] + \end{block} + \pause + \\ + \begin{block}{\Left{\textbf{DHT key }}{\{}r@{\;}l} + q &:= H(hP) \\ + \end{block} + \pause + \\ + \begin{block}{\Left{\textbf{Encryption }}{\{}r@{\;}l} + k &:= HKDF(l_{attr},P) \\[\jot] + Record &:= Enc_k(Data) \\[\jot] + \end{block} + \pause + \\ + \begin{block}{\Left{\textbf{Signature }}{\{}r@{\;}l} + d &:= h\cdot x~mod~n \\[\jot] + Signature &= Sig_d(Record) \\[\jot] + \end{block} + \end{blockarray} + \] +\end{frame} + +\begin{frame}{Authorizing access} + \centering + \includegraphics[width=1\textwidth]{Reclaim-3} +\end{frame} + + +\begin{frame}{Authorizing access} + \begin{table}[h] + \begin{tabular}{|c|c|c|} + \hline + Label & Record Type & Value \\\hline\hline + $l_{email}$ & \texttt{ATTR} & ``email=alice@doe.com''\\\hline + $l_{name}$ & \texttt{ATTR} & ``name=Alice Doe''\\\hline + $l_{dob}$ & \texttt{ATTR} & ``dob=1.3.1987'' \\\hline\pause + \multirow{2}{*}{\textbf{$l_{ticket}$}} & \texttt{ATTR\_REF} & $l_{email}$\\\cline{2-3} + & \texttt{ATTR\_REF} & $l_{dob}$\\\hline + \end{tabular} + \end{table} + \begin{itemize} + \item For each authorized party, the user publishes reference records under the secret label \textbf{$l_{ticket}$} + \item \textbf{$l_{ticket}$} can be shared with a third party in order to authorize access to email and dob. + \item Indirection enables us to revoke tickets. + \end{itemize} +\end{frame} + + +%\begin{frame}{Transfer keys} +% \centering +% \includegraphics[width=1\textwidth]{Reclaim-3} +%\end{frame} + + +\begin{frame}{Retrieve and decrypt attributes} + \centering + \includegraphics[width=1\textwidth]{Reclaim-4} +\end{frame} + +\begin{frame}{Retrieving information} + Given an identity with public key $P$, we can retrieve references using \textbf{$l_{ticket}$} and subsequently identity info from GNS. + + %\setlength{\jot}{4.5pt} + \[ + \def\arraystretch{1.1} + \begin{blockarray}{r@{\;}l} + \begin{block}{r@{\;}l} + h &:= Hash(l_{ticket},P) \\[\jot] + \end{block} + \pause + \\ + \begin{block}{\Left{\textbf{DHT key }}{\{}r@{\;}l} + q &:= H(hP) \\[\jot] + \end{block} + \pause + \\ + \begin{block}{\Left{\textbf{Record decryption }}{\{}r@{\;}l} + k &:= HKDF(l_{ticket},P) \\[\jot] + Data &:= Dec_k(Record) \\[\jot] + \end{block} + \end{blockarray} + \] +\end{frame} + +\begin{frame}{Integration} + \begin{itemize} + \item re:claimID implements the OpenID Connect protocol. + \item For websites, it is just like integrating any other IdP (e.g. Google) + \item For users, the authorization flow looks just like with anny other OpenID Connect IdP. + \end{itemize} +\end{frame} + +\begin{frame}{} + \centering + Demo +\end{frame} + + +\section{Who sais that, anyway?} + +\begin{frame}{Attestations} + \centering + \begin{itemize} + \item Sometimes we need third party assurances to establish trust in identities. + \pause + \item Currently, IdPs such as Facebook/Google implicitly provide this assurance (i.e. vouch for the truthfulness and correctness). + \pause + \item Claim: Those parties are not actually the authorities over (most of) your personal data! Examples: + \begin{itemize} + \item Real name (State/Self-asserted/Other organization) + \item Phone number (Provider) + \item Address (State/Self-asserted) + \item Citizenship (State) + \item Age (State) + \item Email address (Mail provider) + \end{itemize} + \end{itemize} +\end{frame} + +\begin{frame}{Attestations} + \centering + \begin{itemize} + \item What users actually need is a \textbf{collection of credentials}. + \pause + \item Those credentials are issued by a \textbf{variety of different entities}, including the user. + \pause + \item Credentials are ideally \textbf{preserving the privacy} of the individual, e.g. using zero-knowledge proofs. + \pause + \item Those ideas are already finding their way into standards: + \begin{itemize} + \item W3C: ``Verifiable Credentials'' + \item OpenID Connect: ``Aggregated Claims'' \uncover<5->{$\Leftarrow$ \textbf{working on it}.} + \end{itemize} + \end{itemize} +\end{frame} + + +%\begin{frame}{Authorization protocol and key transfer} +% \centering +% \begin{center} +% \begin{minipage}[m]{0.8\textwidth} +% \centering +% \includegraphics[trim={6cm 6.5cm 6cm 7cm},clip,width=0.5\textwidth]{reclaim_small} +% \vspace{0.5cm} +% \end{minipage} +% +% \begin{minipage}[m]{0.8\textwidth} +% \centering +% %{\Huge \color{fhggreen} $\heartsuit$} +% \includegraphics[clip,width=1.5cm]{handshake} +% \end{minipage} +% +% \begin{minipage}[m]{0.7\textwidth} +% \centering +% \vspace{0.5cm} +% %\includegraphics[width=0.2\textwidth]{openid_logo} +% \huge{OpenID Connect} +% \end{minipage} +% \end{center} +%\end{frame} + +\section{Using re:claimID} +\begin{frame}{Installing re:claimID} + \begin{enumerate} + \item Install the webextension: \url{https://addons.mozilla.org/firefox/addon/reclaimid/} + \item \uncover<2->{Install \textbf{GNUnet} $>=0.11.6$} + \end{enumerate} + \pause + \uncover<1-2>{ + \begin{center} + \includegraphics[height=0.4\textwidth]{iu.jpg} + \end{center} + } +\end{frame} + +\begin{frame}{Installing re:claimID} + Get help installing GNUnet and/or re:claimID at our workshop today! + \begin{itemize} + \item Right after this. + \item Time: 12:15 PM -- 15:00 PM + \item Location: Seminarraum + \end{itemize} +\end{frame} + + +\section{Summary} + +\begin{frame}{Status} + \begin{itemize} + \item Get it at \url{https://reclaim-identity.io}. + \item Demo websites exist: + \begin{itemize} + \item \url{https://demo.reclaim-identity.io} + \item \url{https://eusec.clouditor.io} + \end{itemize} + \item Roadmap: + \begin{itemize} + \item User-friendly packaging (of GNUnet) + \item Ship GNUnet inside browser plugin (yes, that might even work). + \item ``1.0'' by end of 2019 + \end{itemize} + \end{itemize} + \begin{center} + \end{center} +\end{frame} + + +\begin{frame} + \begin{center} + Questions?\\ + \vspace{2cm} + \url{https://reclaim-identity.io}\\ + \url{https://gnunet.org}\\ + \vspace{1em} + {\tiny + \texttt{schanzen@aisec.fraunhofer.de}\\ + \texttt{6665~201E~A925~7CC6~8FDE~77E8~8433~5131~EA3D~ABF0}\\ + -- or --\\ + \texttt{schanzen@gnunet.org}\\ + \texttt{3D11~063C~10F9~8D14~BD24~D147~0B09~98EF~86F5~9B6A}\\ + } + \end{center} +\end{frame} + +\appendix + +\begin{frame}{References} + \centering + {\small + \begin{enumerate} + \item {Matthias Wachs, Martin Schanzenbach and Christian Grothoff. {\em A Censorship-Resistant, Privacy-Enhancing and Fully Decentralized Name System}. {\bf 13th Intern + ational Conference on Cryptology and Network Security}, 2014.} + \item {Martin Schanzenbach, Georg Bramm, Julian Schütte. {\em reclaimID: Secure, Self-Sovereign Identities Using Name Systems and Attribute-Based Encryption}. {\bf 17th + IEEE International Conference On Trust, Security And Privacy In Computing And Communications (TrustCom)}, 2018} + \end{enumerate} + } +\end{frame} + + + +%\begin{frame}{NameID} +% NameID: +% \begin{center} +% \includegraphics[width=1\textwidth]{nameid} +% \end{center} +%\end{frame} +% +%\begin{frame}{Performance} +% Impact of name system caches on successive attribute resolution. +% \begin{center} +% \includegraphics[width=0.7\textwidth]{attr_perf_plot_100} +% \end{center} +% +%\end{frame} +% +%\begin{frame}{Performance} +% Attribute resolution performance depending on network size. +% \begin{center} +% \includegraphics[width=0.8\textwidth]{perf_attrs.png} +% \end{center} +% +%\end{frame} +% + +\end{document} diff --git a/datenspuren2019/reclaim_small.png b/datenspuren2019/reclaim_small.png Binary files differ. diff --git a/datenspuren2019/yahoo_breach.png b/datenspuren2019/yahoo_breach.png Binary files differ.