[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[taler-donau] branch master updated: added refs
From: |
gnunet |
Subject: |
[taler-donau] branch master updated: added refs |
Date: |
Fri, 07 Jun 2024 11:46:44 +0200 |
This is an automated email from the git hooks/post-receive script.
johannes-casaburi pushed a commit to branch master
in repository donau.
The following commit(s) were added to refs/heads/master by this push:
new d56c11a added refs
d56c11a is described below
commit d56c11a51a10390d3f712303e500f3232f707c63
Author: Casaburi Johannes <johannes.casaburi@students.bfh.ch>
AuthorDate: Fri Jun 7 11:46:25 2024 +0200
added refs
---
doc/thesis/chapters/implementation/donau.tex | 22 ++++++++++++++--------
doc/thesis/thesis.pdf | Bin 2160931 -> 2161319 bytes
2 files changed, 14 insertions(+), 8 deletions(-)
diff --git a/doc/thesis/chapters/implementation/donau.tex
b/doc/thesis/chapters/implementation/donau.tex
index c05caba..3552626 100644
--- a/doc/thesis/chapters/implementation/donau.tex
+++ b/doc/thesis/chapters/implementation/donau.tex
@@ -1,4 +1,3 @@
-
\section{Donau}\label{donau}
The Donau is written in C as it reuses parts of the codebase from the exchange
of GNU Taler \ref{taler}. The Donau has a similar architecture and uses
crypographic blinded signatures in a similar way as the exchange does.
@@ -6,7 +5,7 @@ The Donau is written in C as it reuses parts of the codebase
from the exchange o
The detailed REST API specificatoin of the Donau backend is publicy available
at the following url: \url{https://docs.taler.net/core/api-donau.html}. The
following are the main API endpoints:
\subsubsection{\texttt{/keys}}
-The \texttt{GET /keys} request returns all valid donation unit public keys
offered by the Donau, as well as the Donau's current EdDSA public signing key.
Donation units unit keys are used by the Donau to sign blinded messages for an
issue receipt request. The signing key is primarily used to create the donation
statement signature for the donor (see section
\ref{donor_requests_a_donation_statement_from_the_donau}).
+The \texttt{GET /keys} request returns all valid donation unit public keys
offered by the Donau, as well as the Donau's current EdDSA public signing key.
Donation unit keys are used by the Donau to sign blinded messages for an issue
receipt request. The signing key is primarily used to create the donation
statement signature for the donor (see section
\ref{donor_requests_a_donation_statement_from_the_donau}).
%TODO
The following is an example response of a \lstinline{curl 127.0.0.1:8080/keys}
command.
@@ -15,7 +14,9 @@ The following is an example response of a \lstinline{curl
127.0.0.1:8080/keys} c
\end{lstlisting}
\subsubsection{\texttt{/charities}}
-In order for a charity to be able to issue receipts it must be registered by
the Donau. To do so the Donau provides an API to manage charities. It is
recommended that only the Donau admin can update charities while the charity
itself should be able to request their issued donation receipt state to keep
track of the set donation limit. The state includes the maximum donation amount
and the current donated amount for the charity of the current year.
+In order for a charity to be able to issue receipts it must be registered in
the Donau. To do so the Donau provides an API to manage charities. It is
expected that only the Donau administrator can manage the registered charities.
+The charity itself should be able to request their issued donation receipt to
keep track of the set donation limit.
+The response includes the maximum donation amount and the current donated
amount for the charity of the current year.
\begin{figure}[ht]
\includegraphics[width=1\textwidth]{donau_flow_register_charity}
@@ -61,8 +62,10 @@ The response includes the charity ID generated by the
database.
\subsubsection{\texttt{/batch-issue}}
-%TODO describe BUDI, donation unit -> glossary?
-Only recognized charities are allowed to request issue receipts for their
donors (see section \ref{validation}). An post issue receipt request includes
an array of BUDI-Key-Pairs. A BUDI-Key-Pair consists of a BUDI and a hash of a
public donation unit key. The charity also signs the request with an EdDSA
private key. The corresponding public key was given to the Donau at the
registration of the charity. After the Donau checked the signature from the
charity it signs the BUDIs with the co [...]
+Only recognized charities are allowed to issue receipts for their donors (see
section \ref{validation}).
+An \texttt{POST} issue receipt request includes an array of \texttt{BKP}s. A
\texttt{BKP} consists of a \texttt{BUDI} and a hash of a public donation unit
key (see section \ref{notation_and_definitions}).
+The charity also signs the request with its own EdDSA private key. The
corresponding public key was given to the Donau in the registration process of
the charity.
+After the Donau checked the signature from the charity it signs the
\texttt{BUDI}s with the corresponding donation unit private key. Before the
signatures are returned to the charity the Donau saves a hash of the request
and all donation unit signatures to make the request idempotent (see section
\ref{donau_database}).
\begin{figure}[ht]
\includegraphics[width=1\textwidth]{donau_flow_issue_receipt}
@@ -70,7 +73,8 @@ Only recognized charities are allowed to request issue
receipts for their donors
\end{figure}
%TODO
-The following is an example response of a \lstinline{curl -d @issue.json -X
POST http://127.0.0.1:8080/batch-issue} request.
+The following is an example response of a \\
+\lstinline{curl -d @issue.json -X POST http://127.0.0.1:8080/batch-issue}
request.
\begin{lstlisting}[title=issue.json]
json
\end{lstlisting}
@@ -80,8 +84,10 @@ The following is an example response of a \lstinline{curl -d
@issue.json -X POST
\end{lstlisting}
\subsubsection{\texttt{/batch-submit}}
-%TODO describe donation receipt -> glossary?
-The post submit route is used by the donor to summarize his or her donation
receipts into one donation statement EdDSA signature. The request is composed
of the donation receipt, the corresponding year and the hash of the salted tax
id. Processing the request the Donau checks the validity of the donation
receipts and searches after more saved donation receipts made in the requested
year. The EdDSA signature over the total amount of the value of the donation
units of all donation receipts [...]
+The post submit route is used by the donor to summarize his or her donation
receipts into one donation statement EdDSA signature.
+The request is composed of the donation receipt (see section
\ref{notation_and_definitions}), the corresponding year and the hash of the
salted tax ID.
+Processing the request the Donau checks the validity of the donation receipts
and searches after more saved donation receipts made in the requested year.
+The EdDSA signature over the total amount of the value of the donation units
of all donation receipts, the hash of the salted tax id and the year forms the
donation statement. The donation statement and the receipts are stored in the
database (see section \ref{donau_database}).
\subsubsection{\texttt{/donation-statement}}
Even the donation statement will not be returned after a submit request, a
donation statement get request can be made for a specified year and a salted
and hashed tax id.
diff --git a/doc/thesis/thesis.pdf b/doc/thesis/thesis.pdf
index 1e3afe6..05452c1 100644
Binary files a/doc/thesis/thesis.pdf and b/doc/thesis/thesis.pdf differ
--
To stop receiving notification emails like this one, please contact
gnunet@gnunet.org.
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [taler-donau] branch master updated: added refs,
gnunet <=