Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add Bitcoin application slides #50

Open
wants to merge 10 commits into
base: main
Choose a base branch
from
Open

Add Bitcoin application slides #50

wants to merge 10 commits into from

Conversation

Rothj
Copy link
Contributor

@Rothj Rothj commented May 13, 2021

Description

  • Created the Bitcoin application slides
  • Added tex files to the config folder containing the color coding of JSON and solidity listings
  • Added three packages to the config filder which are used in the context of listings. All are available under the LateX Project Public License.
  • Added the definition of the Bitcoin Symbol in a tex file in the config folder. It implements the command \BTC.
  • Added multiple images needed for the slides

Type of Change

  • Major feature (New files or assets, large changes to files)

Checklist:

  • I have performed a self-review of my own changes
  • I have made sure that any changed LaTeX files compile properly
  • I have assigned at least one reviewer

Rothj added 8 commits April 28, 2021 18:13
I created a first draft of the slides about some applications of bitcoin. I added many icons which I use in the slides . I also added two additional tex files specifying the color scheme for the languages json and solidity in Latex.
Added the definition of the Bitcoin Symbol in an independent file
Added the definition of the JSON color coding in an independent file
Continued the slides on the Bitcoin applications
Renamed the file to make it consistent with the title
Added the package "adjustbox" which can be used to scale listings.
Added the DeFi-Paper of Fabian to the reference list
Finished first version of bitcoin application slides
@Rothj Rothj requested review from schaer-unibas and golmit May 13, 2021 12:54
Copy link
Contributor

@golmit golmit left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@Rothj, great slide deck! I added a few comments and suggestions, but no major changes are required in my opinion.

\begin{itemize}[<+->]
\item Example: Tracking ownership of a parcel
\item On-Chain representation of parcel with unique token
\item Reproducible crypto-anker (e.g.~QR-code) is problematic
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
\item Reproducible crypto-anker (e.g.~QR-code) is problematic
\item Reproducible crypto anchor (e.g.~QR-code) is problematic

\vspace{0.2cm}
\item<4->[3.] More than one oracle and use m-of-n multisig transaction.
\begin{itemize}
\item<4-> Agents hold $\frac{m}{2}$ keys and m-1 oracles hold one key each.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Agents "each" hold m/2 keys?

E.g. m = 4

  • each agent holds 2 keys (2*2)
  • each oracle holds 1 key (3*1)
  • total of 7 keys
  • 4-of-7 multisig

Comment on lines 140 to 163
\textbf{\large{Verification:}}
\begin{columns}
\begin{column}{0.3\textwidth}
\centering
\includegraphics[width=1.5cm]{../assets/images/receive_diploma.png}\\
Potential employer receives diploma
\end{column}
\begin{column}{0.05\textwidth}
\includegraphics[width=0.75cm]{../assets/images/big_arrow.png}
\end{column}
\begin{column}{0.3\textwidth}
\centering
\includegraphics[width=1.5cm]{../assets/images/fingerprint.png}\\
Computes hash value of diploma
\end{column}
\begin{column}{0.05\textwidth}
\includegraphics[width=0.75cm]{../assets/images/big_arrow.png}
\end{column}
\begin{column}{0.3\textwidth}
\centering
\includegraphics[width=1.5cm]{../assets/images/verify_onchain.png}\\
Compares with on-chain hash value
\end{column}
\end{columns}
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggestion: uncover verification part on new slide

Suggested change
\textbf{\large{Verification:}}
\begin{columns}
\begin{column}{0.3\textwidth}
\centering
\includegraphics[width=1.5cm]{../assets/images/receive_diploma.png}\\
Potential employer receives diploma
\end{column}
\begin{column}{0.05\textwidth}
\includegraphics[width=0.75cm]{../assets/images/big_arrow.png}
\end{column}
\begin{column}{0.3\textwidth}
\centering
\includegraphics[width=1.5cm]{../assets/images/fingerprint.png}\\
Computes hash value of diploma
\end{column}
\begin{column}{0.05\textwidth}
\includegraphics[width=0.75cm]{../assets/images/big_arrow.png}
\end{column}
\begin{column}{0.3\textwidth}
\centering
\includegraphics[width=1.5cm]{../assets/images/verify_onchain.png}\\
Compares with on-chain hash value
\end{column}
\end{columns}
\uncover<2->{
\textbf{\large{Verification:}}
\begin{columns}
\begin{column}{0.3\textwidth}
\centering
\includegraphics[width=1.5cm]{../assets/images/receive_diploma.png}\\
Potential employer receives diploma
\end{column}
\begin{column}{0.05\textwidth}
\includegraphics[width=0.75cm]{../assets/images/big_arrow.png}
\end{column}
\begin{column}{0.3\textwidth}
\centering
\includegraphics[width=1.5cm]{../assets/images/fingerprint.png}\\
Computes hash value of diploma
\end{column}
\begin{column}{0.05\textwidth}
\includegraphics[width=0.75cm]{../assets/images/big_arrow.png}
\end{column}
\begin{column}{0.3\textwidth}
\centering
\includegraphics[width=1.5cm]{../assets/images/verify_onchain.png}\\
Compares with on-chain hash value
\end{column}
\end{columns}
}

Comment on lines +189 to +203
\begin{frame}{Commit-Reveal}
\begin{itemize}
\item<1 -> Long known cryptographic primitive
\item<2 -> First, commitment to a choice, without revealing it.
\item<3 -> In second phase, choice is revealed.
\item<4 -> Important: Commitment is secret and binding.\vspace{0.5cm}
\item<5 -> Example:
\begin{itemize}
\item<5 -> Alice and Bob want to play rock-paper-scissors
\item<6 -> Playing at the exact same time is difficult on blockchains
\item<7 -> Solution: To commit to their choices, they hash them (salted) and save the hash value on-chain
\item<8 -> Revealing their choices and the salts they can then determine the winner in a second step
\end{itemize}
\end{itemize}
\end{frame}
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Do students already understand what a "salt" is? Maybe this example should be more in-depth.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I thought that this could be explained in this example, as it is shown in the JSON passport and in the merkle tree.

\end{columns}
\vspace{0.5cm}
\uncover<2 ->{
Vending Maschine:
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
Vending Maschine:
Vending Machine:

Rothj added 2 commits May 14, 2021 17:06
Forgot to switch back to beamer handout before
Included the review of @golmit. Thank you very much!
@Rothj
Copy link
Contributor Author

Rothj commented May 18, 2021

Thank you @golmit for your review and for finding these quite embarassing typos!

@chainomics Please check the definition of smart contracts I used. I took the first sentence of the definition in the DeFi paper, but the definition there goes on for a couple of sentences. Maybe you know a short definition which fits on this slide?

For the vending machine example on slide 14 I relied heavily on the smart contracts lecture slides, but was not sure if I understood the storyline correctly. You might want to adapt the two bullet points on this slide.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants