gnunet-svn
[Top][All Lists]
Advanced

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

[taler-donau] branch master updated: [doc] change terms


From: gnunet
Subject: [taler-donau] branch master updated: [doc] change terms
Date: Tue, 03 Oct 2023 00:11:46 +0200

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

lukas-matyja pushed a commit to branch master
in repository donau.

The following commit(s) were added to refs/heads/master by this push:
     new 32b0e93  [doc] change terms
32b0e93 is described below

commit 32b0e9314fd72490f21fae6cc0b2366314476fd4
Author: Matyja Lukas Adam <lukas.matyja@students.bfh.ch>
AuthorDate: Tue Oct 3 00:11:32 2023 +0200

    [doc] change terms
---
 doc/flows/main.tex | 74 ++++++++++++++++++++++++++++--------------------------
 1 file changed, 38 insertions(+), 36 deletions(-)

diff --git a/doc/flows/main.tex b/doc/flows/main.tex
index 5c5dc18..50811bc 100644
--- a/doc/flows/main.tex
+++ b/doc/flows/main.tex
@@ -21,20 +21,21 @@
 
 \section{Definitions}
 \begin{itemize}
-  \item $m :=$ \textbf{receipt} = smallest structure representing a donation 
confirmation unit, e.g. receipt for CHF1, CHF2. Equivalent in Taler is "coin".
-  \item BDR := blinded donation receipt (collection of blinded receipts)
-  \item $b :=$ Blinding factor
-  \item $H :=$ Cryptographic hash function
-  \item $statement_{year} :=$ sum of donations (receipts) for one specific 
year and specific donor
-  \item $m' :=$ Blinded receipt
-  \item $s :=$ Signed receipt
-  \item $s' :=$ Blind signed receipt
-  \item $mi, si, mi'...$ := number receipts/signatures if there are more than 
one eg. m1,m2...
-  \item $m_{kj}$ or $mi_{kj} \Rightarrow kj$ := specific DONAU public key used 
to attribute a specific value to a receipt, e.g. k1 gives the receipt a value 
of 1, k2 a value of 2...
+  \item $DU :=$ \textbf{donation unit} = Smallest structure representing a 
donation confirmation unit, e.g. receipt for CHF1, CHF2. Equivalent in Taler is 
"coin".
+  \item $BDU :=$ blinded DU
+  \item $DR :=$ \textbf{donation receipt} = collection of DUs for one donation
+  \item $BDR :=$ collection of BDUs
+  \item $DS_{year} :=$ \textbf{donation statement} = sum of DRs for one 
specific year and specific donor
+  \item $b :=$ blinding factor
+  \item $H :=$ cryptographic hash function
+  \item $S_{sk} :=$ DU signature made with a donation unit secret key (from 
DONAU)
+  \item $BS_{pk} :=$ BDU signature with a donation unit secret key or public 
key
+  \item $DUi, Si, DRi...$ := number entities if there are more than one eg. 
DU1,DU2...
+  \item $BS_{pk/kj}$ or $BS_{sk/kj}$ or $S_{sk/kj} \Rightarrow kj$ := specific 
DONAU public key used to attribute a specific value to a DU, e.g. k1 gives the 
DU a value of 1, k2 a value of 2...
 \end{itemize}
 
-\subsection{Receipt}
-The NONCE is used to uniquely distinguish receipts of the same value ("create 
a fresh receipt"). Otherwise the DONAU would refuse receipts containing 
donations of equal amount to the same charity, since this would be seen as 
"double spending". To simplify the thought process, the NONCE can be thought of 
as a "receipt ID".
+\subsection{Donation Unit (DU)}
+The NONCE is used to uniquely distinguish DU of the same value ("create a 
fresh DU"). Otherwise the DONAU would refuse DUs containing donations of equal 
amount to the same charity, since this would be seen as "double spending". To 
simplify the thought process, the NONCE can be thought of as a "DU ID".
 
 \begin{align}
   m := \langle H(TAXID, SALT), NONCE \rangle
@@ -53,68 +54,68 @@ The NONCE is used to uniquely distinguish receipts of the 
same value ("create a
 
 \subsection{Step 1: Donor donates to charity}
 \begin{enumerate}
-  \item The donor downloads the donation unit/receipt public keys for the 
corresponding year from the DONAU.
+  \item The donor downloads the DU public keys for the corresponding year from 
the DONAU.
 
-  \item To donate 5 Euros the donor has to generate 2 receipts (a 1 Euro and 4 
Euro receipt). The donor generates receipts $m1$ and $m2$ which include a 
salted hash of the tax number (here TAXID) and a NONCE.
+  \item To donate 5 Euros the donor has to generate 2 DUs (a 1 Euro and 4 Euro 
DU). The donor generates DUs $DU1$ and $DU2$ which include a salted hash of the 
tax number (here TAXID) and a NONCE.
 
   \begin{align}
-    m1 = \langle H(TAXID, SALT), NONCE_1 \rangle \\
-    m2 = \langle H(TAXID, SALT), NONCE_2 \rangle
+    DU1 = \langle H(TAXID, SALT), NONCE_1 \rangle \\
+    DU2 = \langle H(TAXID, SALT), NONCE_2 \rangle
   \end{align}
 
-  \item The donor blinds the receipts using two different blinding factors 
$b_1, b_2$.
+  \item The donor blinds the DUs using two different blinding factors $b_1, 
b_2$.
   \begin{align}
-    m1' = m1 \cdot b_1^{e_{1EUR}} \mod n_{1EUR} \\
-    m2' = m2 \cdot b_2^{e_{4EUR}} \mod n_{4EUR}
+    BDU1 = BDU1 \cdot b_1^{e_{1EUR}} \mod n_{1EUR} \\
+    BDU2 = BDU2 \cdot b_2^{e_{4EUR}} \mod n_{4EUR}
   \end{align}
 
-  \item The Donor signs the receipts using the correct DONAU public keys. This 
gives the receipts their respective value.
+  \item The Donor signs the DUs using the correct DONAU public keys. This 
gives the DUs their respective value.
   \begin{align}
-    m1'_{k1} = sign_{k1}(m1') \\
-    m2'_{k4} = sign_{k4}(m2')
+    BS1_{pk/k1} = sign_{pk/k1}(BDU1) \\
+    BS2_{pk/k4} = sign_{pk/k4}(BDU2)
   \end{align}
 
-  \item The donor sends the blinded receipts (BDR) $m1'$ and $m2'$ as well as 
the signatures $m1'$ and $m2'$ to the charity in addition to the payment of 3 
Euros.
+  \item The donor sends the blinded DUs (BDR) $BDU1$ and $BDU2$ as well as the 
signatures $BS1_{pk/k1}$ and $BS2_{pk/k4}$ to the charity in addition to the 
payment of 5 Euros.
 \end{enumerate}
 
-\subsection{Step 2: Charity sends signed receipt to DONAU}
+\subsection{Step 2: Charity sends signed DUs to DONAU}
 \begin{enumerate}
   \item The charity verifies that the amount requested for signing is lower or 
equal to the effective amount of the donation.
-  \item The charity signs (using EdDSA) a structure containing all unsigned 
receipts coming from the donor.
+  \item The charity signs (using EdDSA) a structure containing all unsigned 
DUs coming from the donor.
   \item The charity sends this structure and the signature to the DONAU.
 \end{enumerate}
 
-\subsection{Step 3: DONAU sends back blind signed receipt to charity}
+\subsection{Step 3: DONAU sends back blind signed DUs to charity}
 \begin{enumerate}
   \item The DONAU:
     \begin{enumerate}
       \item verifies the charity Signature on the structure.
-      \item verifies the signature of every receipt with it's private keys.
-      \item increments the current year amount of the charity by the total 
amount of the receipts, if the increment does not exceed the annual limit.
-      \item blind signs (using RSA/Schnorr) all the receipts
+      \item verifies the signature of every DU with it's private keys.
+      \item increments the current year amount of the charity by the total 
amount of the BDR, if the increment does not exceed the annual limit.
+      \item blind signs (using RSA/Schnorr) all the DUs
         \begin{align}
           s_1' = m_1'^{(d_{E1})} \emph{mod ?}  \\
           s_2' = m_2'^{(d_{E2})} \emph{mod ?}
         \end{align}
-      \item sends back the blind signed receipts to the charity
+      \item sends back the blind signed DUs to the charity
     \end{enumerate}
-  \item The charity transmits the blind signed receipts to the donor.
-  \item The donor unblinds the receipts.
+  \item The charity transmits the blind signed DUs to the donor.
+  \item The donor unblinds the signatures.
   \begin{align}
     s_1 = s_1' \cdot b^{-1} \mod n_1 \\
     s_2 = s_2' \cdot b^{-1} \mod n_2
   \end{align}
 \end{enumerate}
 
-\subsection{Step 4: Donor sends receipts to DONAU, DONAU sends back statement}
+\subsection{Step 4: Donor sends DR to DONAU, DONAU sends back donation 
statement (DS)}
 \begin{enumerate}
-  \item The donor sends the collection of all $(mi, si, kj)$ to the DONAU. The 
donation receipts are always sent to the DONAU right after the donor has 
unblinded the receipts. The corresponding year is sent with.
+  \item The donor sends the collection of all $(mi, si, kj)$ to the DONAU. The 
DR is always sent to the DONAU right after the donor has unblinded the DUs. The 
corresponding year is sent with.
   \item For each $(mi, si, kj)$ The DONAU...
 
   \begin{itemize}
     \item verifies that $kj$ is one of the valid public keys corresponding to 
the year indicated.
     \item verifies if $si$ is a correct signature with the corresponding 
secret key.
-    \item verifies that the hash of the TAXID and the salt is the same as in 
other receipts (how to solve the problem with multiple wallets?)
+    \item verifies that the hash of the TAXID and the salt is the same as in 
other DUs (how to solve the problem with multiple wallets?)
     \item verifies that the nonce is different from each ever used nonce of 
this donor for the corresponding year.
     \item if all of this is the case, it adds the amount corresponding to the 
public key to the total donation amount for the year.
   \end{itemize}
@@ -139,7 +140,8 @@ The NONCE is used to uniquely distinguish receipts of the 
same value ("create a
     \item version of the protocol(one byte)
   \end{itemize}
 
-  \item The validator scans the QR code and validates that the signature 
corresponds to the current DONAU statement signing key.
+  \item The validator scans the QR code and validates that the signature 
corresponds to the current DONAU DS signing key.
 \end{enumerate}
 
 \end{document}
+

-- 
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]