gnunet-svn
[Top][All Lists]
Advanced

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

[taler-donau] branch master updated: [doc] work on notation & definition


From: gnunet
Subject: [taler-donau] branch master updated: [doc] work on notation & definitions
Date: Mon, 30 Oct 2023 19:46:21 +0100

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

pius-loosli pushed a commit to branch master
in repository donau.

The following commit(s) were added to refs/heads/master by this push:
     new e019ec8  [doc] work on notation & definitions
e019ec8 is described below

commit e019ec800cb41d7626cf574c74573f78439f19b5
Author: Pius Loosli <loosp2@bfh.ch>
AuthorDate: Mon Oct 30 19:46:39 2023 +0100

    [doc] work on notation & definitions
---
 doc/flows/main.tex | 42 ++++++++++++++++++++++++++++--------------
 1 file changed, 28 insertions(+), 14 deletions(-)

diff --git a/doc/flows/main.tex b/doc/flows/main.tex
index c036a95..fa06efb 100644
--- a/doc/flows/main.tex
+++ b/doc/flows/main.tex
@@ -19,50 +19,64 @@
 \begin{document}
 \maketitle
 
-\section{Definitions}
+\newpage
+\section{Notation \& Definitions }
+\subsection{Notation}
+\begin{itemize}
+ \item $\langle a, b, ... \rangle$ : Pair/tuple
+\end{itemize}
+
+\subsection{Definitions}
 \begin{itemize}
   \item \textbf{Cryptographic Hash Function} $H(m) = h$ where $m$ is a message 
and $h$ the resulting hash.
+  
+  \item \textbf{Blinding function} $blind(m, b)$ where $m$ is the message to 
blind and $b$ the blinding factor to apply. The blinding can be done with 
either the RSA blind signature scheme or the Blinded Clause-Schnorr signature 
scheme.
+  
+  \item \textbf{Keygen} TODO
 
   \item \textbf{Signing}
     \begin{itemize}
       \item \textbf{Classic/lightweight signing (e.g. EdDSA):} 
       \begin{align}
-        \fbox{$\Sigma(m,k) = \sigma$}
+        \fbox{$\sigma := sign(m,k)$}
       \end{align}
       where $m$ is a message and $k$ is the private key used to sign the 
message.\\
       Applications:
       \begin{itemize}
-        \item A charity signs a collection of $BKP$ before transfering them to 
the Donau to issue $Donation Receipt$s
-        \item The Donau computes the \emph{donation statement} signature for a 
donor for a specific year
+        \item A charity signs a collection of \emph{BUDI-key-pair} before 
transfering them to the Donau to issue \emph{Donation Receipts}
+        \item The Donau computes the \emph{donation statement signature} for a 
donor for a specific year
       \end{itemize}
       
       \item \textbf{Blind signing(e.g. RSA/CS):}
       \begin{align}
-        \fbox{${B}(\overline{m},k) = \overline{\beta}$}
+        \fbox{$\overline{\beta} := blind\_sign(\overline{m},k)$}
       \end{align}
       where $\overline{m}$ is a blinded message and $k$ is the private key 
used to blind sign the message.\\
       Application:
       \begin{itemize}
-        \item The Donau blind signs \emph{BUDI}s received from the charity 
with the private key matching the public key in the received \emph{BKP}
+        \item The Donau blind signs \emph{Blinded Unique Donor Identifier}s 
received from the charity with the private key matching the public key in the 
received \emph{BUDI-key-pair}
       \end{itemize}
     \end{itemize}
 
-  \item \textbf{Donation Unit} $DU = (K_x^{pub}, K_x^{priv})$ where $x$ is the 
associated value (e.g. 2EUR):
+  \item \textbf{Donation Unit} $ = (K_x^{pub}, K_x^{priv})$ where $x$ is the 
associated value (e.g. 2EUR):
     Smallest structure representing a donation confirmation unit.
     Consists of a Public key $K_x^{pub}$ and Private key $K_x^{priv}$. 
Equivalent in Taler is "denomination".
 
-  \item \textbf{Unique Donor Identifier} $m := \langle H(\texttt{TAXID}, 
\texttt{SALT}), \texttt{NONCE} \rangle$
+  \item \textbf{Donor Identifier} $i = H(\texttt{taxid}, \texttt{salt})$
+    
+  \item \textbf{Unique Donor Identifier} $u := \langle i, \texttt{nonce} 
\rangle$
+  where \texttt{nonce} ...%TODO
 
-  \item \textbf{Blinded Unique Donor Identifier} $\overline{m} := blind(m)$, 
blinded to protect the privacy of the donor
+  \item \textbf{Blinded Unique Donor Identifier} $\overline{u} := blind(u)$, 
blinded to protect the privacy of the donor
   
   \begin{itemize}
-   \item \textbf{BUDI-key-pair} $\mu := \langle \overline{m}, H(K_x^{pub}) 
\rangle$
+   \item \textbf{BUDI-key-pair} $\mu := \langle \overline{u}, H(K_x^{pub}) 
\rangle$ where $H(K_x^{pub})$ indicates which donation unit key should be used 
by the Donau to sign the resulting donation receipt. Thus, this hash carries 
the information about the exact value the final donation receipt should carry.
   \end{itemize}
 
 
-  \item \textbf{Donation Receipt} $DR = \langle UDI, \beta, H(K_x^{pub}) 
\rangle$ where $\beta$ is the unblinded signature: Sent to the Donau to get the 
donation Statement.
+  \item \textbf{Donation Receipt} $r = \langle u, \beta, H(K_x^{pub}) \rangle$ 
where $\beta$ is the unblinded signature: Sent to the Donau to get the donation 
Statement.
 
-  \item \textbf{Donation Statement} $DS = \Sigma(\langle 
\texttt{AMOUNT}_{Total}, \texttt{YEAR}, H(\texttt{TAXID}, \texttt{SALT}) 
\rangle, D^{priv})$ where $D^{priv}$ is the private key from the Donau: 
Signature to attest the amount donated in a particular year by a specific donor.
+  \item \textbf{Donation Statement} $\sigma_s = sign(\langle i, 
\texttt{amount}_{total}, \texttt{year} \rangle, D^{priv})$ where $D^{priv}$ is 
the private key from the Donau: Signature to attest the amount donated in a 
particular year by a specific donor.
 
 \end{itemize}
 
@@ -73,9 +87,9 @@
 \begin{enumerate}
   \item The Donau generates a public key $D^{pub}$ and private key $D^{priv}$.
 
-  \item The Donau generates the donation units ($DU$'s) consisting of 
$K_x^{pub}$ and $K_x^{priv}$ where $x$ is the associated value.
+  \item The Donau generates the \emph{donation units} consisting of 
$K_x^{pub}$ and $K_x^{priv}$ where $x$ is the associated value.
 
-  \item The charity generates the key pair $(C^{pub}, C^{priv})$ and downloads 
the $DU's$ from the donau.
+  \item The charity generates the key pair $(C^{pub}, C^{priv})$ and downloads 
the \emph{donation units} from the donau.
 
   \item The Donau administrator registers the public key $C_{pub}$ and sets 
the yearly donation limit for the charities.
 \end{enumerate}

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



reply via email to

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