diff options
author | Florian Dold <florian.dold@gmail.com> | 2019-02-22 13:35:40 +0100 |
---|---|---|
committer | Florian Dold <florian.dold@gmail.com> | 2019-02-22 13:35:40 +0100 |
commit | b988c1896edd6572c7742a0a46ab9a62f5272b83 (patch) | |
tree | c58a64d97c037fb1626db29e7fb68625acb2b5f5 | |
parent | 09e34d99633ad9fc31dda101fb7fb94d4c6cabe3 (diff) | |
download | dold-thesis-phd-b988c1896edd6572c7742a0a46ab9a62f5272b83.tar.gz dold-thesis-phd-b988c1896edd6572c7742a0a46ab9a62f5272b83.tar.bz2 dold-thesis-phd-b988c1896edd6572c7742a0a46ab9a62f5272b83.zip |
slides
-rw-r--r-- | presentation/slides.tex | 77 |
1 files changed, 71 insertions, 6 deletions
diff --git a/presentation/slides.tex b/presentation/slides.tex index 269927a..4fe658a 100644 --- a/presentation/slides.tex +++ b/presentation/slides.tex @@ -269,13 +269,52 @@ Byzantine \emph{Set-Union} Consensus %---------------------------- \begin{frame} -\frametitle{How does a payment work?} +\frametitle{What is happening under the hood?} + Setup / Reserve Creation \begin{enumerate} - \item Customer creates reserve key pair + \item Customer has list of trusted exchange / auditor (= exchange CA) public keys + \item Customer downloads latest key material (response signing / denominations) and wire information from exchange + \item Customer creates reserve key pair (ephemeral) \item Customer sends transaction with reserve public key in payment instructions to the exchange \end{enumerate} \end{frame} +\begin{frame} +\frametitle{What is happening under the hood?} + Withdrawal + \begin{enumerate} + \item Customer creates coin key pair (public key is coin identity, private key used to authorize operations with coin) + \item Customer blinds coin public key, sends withdraw request (signed with reserve pub) to exchange + \item Exchange signs blinded coin + \item Customer unblinds the signature + \end{enumerate} +\end{frame} + +\begin{frame} +\frametitle{What is happening under the hood?} + Spending + \begin{enumerate} + \item Merchant sends signed \emph{contract terms} to customer + \item Customer signs contract terms with the private key(s) of the coins used to pay. + In each signature, the fraction of the coin spent is specified. + \item Merchant receives these signatures in \emph{deposit permissions}, + with also include the exchange's signatures on the coins and a hash of the contract terms + \item Merchant sends deposit permissions to the exchange + \item Exchange marks coins as (partially) spent + \item Exchange aggregates deposit permissions for some time + \item Exchange sends payment (e.g. bank money) to merchant + \end{enumerate} +\end{frame} + +\begin{frame} +\frametitle{What is happening under the hood?} + Getting anonymous change + \begin{enumerate} + \item Customer obtains anonymous coins as change for partially spent coins + \item More on details later ... + \end{enumerate} +\end{frame} + %---------------------------- \begin{frame} @@ -402,15 +441,24 @@ $\Rightarrow$ Naive refresh protocol enables tax evasion \item exchange's bank transactions \item merchant's deposit (probabilistic selection) \end{itemize} + + \vfill + Compromise Scenarios (simplified): \begin{itemize} - \item + \item Exchage's signing key compromised $\Rightarrow$ + \item Exchage's denomination compromised $\Rightarrow$ \end{itemize} \end{frame} \begin{frame} \frametitle{Denomination Key Revocation} + \begin{itemize} + \item + \end{itemize} + + $\Rightarrow$ Financial loss of the exchange limited to ??? \end{frame} %---------------------------- @@ -438,10 +486,22 @@ $\Rightarrow$ Naive refresh protocol enables tax evasion %---------------------------- -\begin{frame}{Taler Protocols} +\begin{frame}{Taler Cryptography} + We use a few ancient constructions: + \begin{itemize} + \item Cryptographic hash function (1989) + \item Blind signature (1983) + \item Schnorr signature (1989) + \item Diffie-Hellman key exchange (1976) + \item Cut-and-choose zero-knowledge proof (1985) + \end{itemize} + But of course we use modern instantiations. \end{frame} -\begin{frame}{Refresh details} +\begin{frame}{Refresh Protocol} + \begin{itemize} + \item Use key exchange + \end{itemize} \end{frame} %---------------------------- @@ -508,7 +568,12 @@ Additional features (tipping, ...) \begin{frame} \frametitle{Alternatives?} -Talk about web payments. +W3C Web Payments? No, only concerned with showing payment request in browser UI. + +Proprietary Systems? + +Blockchain? + \end{frame} %---------------------------- |