donau

Donation authority for GNU Taler (experimental)
Log | Files | Refs | Submodules | README | LICENSE

commit dea13e91d211f1f74aa2720d90e0c10c1e77713f
parent 5b03e45bcd4e7411a4d1efdef4310803ab079edd
Author: Pius Loosli <pius.loosli@students.bfh.ch>
Date:   Fri, 19 Jan 2024 18:10:11 +0100

[doc] diagrams 2&3

Diffstat:
Mdoc/flows/diagrams/02-donate-light.plantuml | 4++--
Mdoc/flows/diagrams/02-donate-light.png | 0
Mdoc/flows/diagrams/02-donate.plantuml | 27++++++++++++++-------------
Mdoc/flows/diagrams/02-donate.png | 0
Adoc/flows/diagrams/03-donation-statement.plantuml | 26++++++++++++++++++++++++++
Adoc/flows/diagrams/03-donation-statement.png | 0
Mdoc/flows/main.tex | 11++++++++---
7 files changed, 50 insertions(+), 18 deletions(-)

diff --git a/doc/flows/diagrams/02-donate-light.plantuml b/doc/flows/diagrams/02-donate-light.plantuml @@ -11,8 +11,8 @@ card Donor as donor card Charity as charity card Donau as donau -donor "<latex>$\text{1. donation money,}$\\$\text{\bigl[ \bigr] blinded(donor id+nonce)}$</latex>" -> charity -charity "<latex>$\text{ 2.}$\\$\text{ \bigl[ \bigr] blinded(donor id + nonce)}$</latex>" --> donau +donor "<latex>$\text{1. donation money,}$\\$\text{\bigl[ \bigr] \langle}\text{blinded(donor id + nonce),} K_x^{pub} \rangle$</latex>" -> charity +charity "<latex>$\text{ 2.}$\\$\text{ \bigl[ \bigr] \langle}\text{blinded(donor id + nonce),} K_x^{pub} \rangle$\\$\text{ charity signature}$</latex>" --> donau donau --> charity : <latex>$\text{3. \bigl[ \bigr] blind signatures^*}$</latex> charity --> donor : <latex>$\text{4. \bigl[ \bigr] blind signatures^*}$</latex> diff --git a/doc/flows/diagrams/02-donate-light.png b/doc/flows/diagrams/02-donate-light.png Binary files differ. diff --git a/doc/flows/diagrams/02-donate.plantuml b/doc/flows/diagrams/02-donate.plantuml @@ -1,25 +1,26 @@ @startuml -left to right direction +'left to right direction ' scale elements so that latex becomes proportionally smaller -skinparam CardFontSize 20 +skinparam CardFontSize 25 skinparam ArrowThickness 2 - -note as leg -<latex>$\overline{b} = blinded ...$</latex> -<latex>$\mu = \langle \overline{b}, H(K^{pub}_x) \rangle$</latex> -<latex>$\overline{\beta} = \text{blind signature}$</latex> -end note +' rectangular shaped arrow lines +skinparam linetype ortho card Donor as donor card Charity as charity card Donau as donau -donor --> charity : <latex>$\text{donation money} + \vec{\mu}$</latex> -charity --> donau : <latex>$\vec{\mu}_s$</latex> - -donau --> charity : <latex>$\overline{\beta}_1,..., \overline{\beta}_n$</latex> -charity --> donor : <latex>$\overline{\beta}_1,..., \overline{\beta}_n$</latex> +donor "<latex>$\text{ 1. }\vec\mu,$\\$\text{ donation money}$</latex>" -> charity +charity "<latex>$\text{2. }\sigma_c\text{ }$$</latex>" -> donau +donau --> charity : <latex>$\text{3. }\overline\beta_1, ..., \overline\beta_n$</latex> +charity --> donor : <latex>$\text{4. }\overline\beta_1, ..., \overline\beta_n$</latex> +note as leg #white +<latex>$\overline{u} = \text{blinded unique donor identifiers}$</latex> +<latex>$\mu = \langle \overline{u}, H(K^{pub}_x) \rangle$</latex> +<latex>$\sigma_c = \text{sign(\vec{\mu}, C^{priv})}$</latex> +<latex>$\overline{\beta} = \text{blind signature}$</latex> +end note @enduml diff --git a/doc/flows/diagrams/02-donate.png b/doc/flows/diagrams/02-donate.png Binary files differ. diff --git a/doc/flows/diagrams/03-donation-statement.plantuml b/doc/flows/diagrams/03-donation-statement.plantuml @@ -0,0 +1,26 @@ +@startuml +'left to right direction + +' scale elements so that latex becomes proportionally smaller +skinparam CardFontSize 25 +skinparam ArrowThickness 2 +' rectangular shaped arrow lines +skinparam linetype ortho + +card "Validator(Tax office)" as validator +card Donor as donor +card Donau as donau + +donor "<latex>$\text{ 1. }\vec{r}\text{, year}$</latex>" -> donau +donau --> donor : <latex>$\text{2. }\sigma_s$</latex> +donor -> validator : <latex>$\text{3. }QR$</latex> + +note as leg #white +<latex>r = \text{donation receipt}</latex> +<latex>$s = \text{random salt}$</latex> +<latex>$i := H(\texttt{taxid}, s)$</latex> +<latex>\sigma_s = sign(\langle i, \texttt{amount}_{Total}, \texttt{year}) \rangle, D^{priv})</latex> +<latex>\texttt{QR} = \langle \texttt{taxid}, \texttt{salt}, \texttt{year}, \texttt{amount}, \text{$\sigma_s$} \rangle</latex> +end note + +@enduml diff --git a/doc/flows/diagrams/03-donation-statement.png b/doc/flows/diagrams/03-donation-statement.png Binary files differ. diff --git a/doc/flows/main.tex b/doc/flows/main.tex @@ -6,7 +6,7 @@ \usepackage{parskip} \usepackage{graphicx} -\graphicspath{ {./images/} } +\graphicspath{ {./diagrams/} } % Margins \usepackage[top=3cm, left=3cm, right=3cm, bottom=3cm]{geometry} @@ -28,7 +28,12 @@ \input{definitions.tex} \section{Overview} -\includegraphics[width=\textwidth]{overview} +\subsection{Donation: spend and get donation receipt} +\includegraphics[width=10cm]{02-donate} + +\subsection{Get donation statement for taxes after tax period} +\includegraphics[width=10cm]{03-donation-statement} + %\input{diagrams.tex} @@ -45,7 +50,7 @@ \subsubsection{Charity setup (Charity side and Donau side)} \begin{enumerate} - \item The \textbf{charity} generates the key pair $(C^{pub}, C^{priv})$ and downloads the \emph{donation unit public keys} from the donau. + \item The \textbf{charity} generates the key pair $(C^{pub}, C^{priv})$ and downloads the \emph{donation unit public keys} from the donau.\text \item The \textbf{charity} transmits $C^{pub}$ and the desired yearly donation limit to the party responsible for Donau administration using a \textbf{secure channel}.