Skip to content

Commit 107cab6

Browse files
committed
2 parents 8030d23 + b63f0f3 commit 107cab6

File tree

6 files changed

+35
-23
lines changed

6 files changed

+35
-23
lines changed

.github/workflows/compile_pdf.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -26,9 +26,9 @@ jobs:
2626
steps:
2727
# Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it
2828
- name: Checkout repository
29-
uses: actions/checkout@v3
29+
uses: actions/checkout@v4
3030
- name: Setup Python
31-
uses: actions/setup-python@v4
31+
uses: actions/setup-python@v5
3232
with:
3333
python-version: '3.10'
3434

.github/workflows/qodana-code-quality.yaml

Lines changed: 0 additions & 19 deletions
This file was deleted.

main.pdf

1.68 KB
Binary file not shown.

report/src/sections/00-abstract.tex

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,15 @@
11

22
\begin{abstract}
3-
This is the abstract~\cite{greenwade1993}.
3+
Ethereum is one of the biggest proof-of-stake blockchains.
4+
However, it is still vulnerable to attacks.
5+
One such attack is made possible by Heimbach et al.~where an adversary could de-anonymize validators and then preform a denial-of-service attack on them.
6+
To try and combat this attack, Ethereum has proposed the use of the Whisk protocol.
7+
Whisk is a Single secret leader election protocol that uses a zero-knowledge proof called Curdleproofs that uses inner product arguments to proof the validity of a shuffle of validators.
8+
This paper improves upon Curdleproofs' inner product arguments by introducing CAAUrdleproofs, which is a modified version of Curdleproofs with ideas from Springproofs as to allow for the use of any shuffle size.
9+
We show that CAAUrdleproofs has similar proving and verifying times to Curdleproofs when the shuffle size is a power of two.
10+
We also show that CAAUrdleproofs has a performance advantage for any shuffle size that is not a power of two, and that this advantage grows the lower the shuffle size is below a power of two.
11+
After performing experiments, we also suggest a new shuffle size which is smaller than the current one used in Curdleproofs that would result in a smaller block overhead than the one created by the current Curdleproofs protocol.
12+
413
\end{abstract}
514

615
\begin{IEEEkeywords}

report/src/sections/08-conclusion.tex

Lines changed: 20 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,23 @@
11

22

33
\section{Conclusion}\label{sec:conclusion}
4-
This is the conclusion
4+
After looking into the \glspl{zk} \glspl{ssle} protocol Whisk and the Curdleproofs protocol, we found that there was still was room for improvement in the Curdleproofs protocol.
5+
We saw the strict requirement of the shuffle size being a power of two as a limitation, and we wanted to remove this limitation to try to reduce the block overhead related to the protocol.
6+
7+
To do this, we looked at Springproofs which allows for \glspl{ipa} to be of any size.
8+
Through combining the Curdleproofs protocol with the flexiblility of Springproofs, we made the CAAUrdleproofs protocol.
9+
The implementation of the CAAUrdleproofs protocol, is a modified version of the Curdleproofs protocol that allows for any shuffle size.
10+
11+
Through our experiments, we found that the CAAUrdleproofs protocol has similar proving and verifying times to the Curdleproofs protocol when the shuffle size is a power of two.
12+
But for any shuffle size that is not a power of two, the CAAUrdleproofs protocol has a performance advantage.
13+
An advantage that is bigger the more below a power of two the shuffle size is.
14+
15+
Since CAAUrdleproofs enables the use of any shuffle size, it can be used to reduce the block overhead related to the protocol without having to compromise the security of the protocol.
16+
17+
We have shown the security through an experiment inspired by~\cite{cryptoeprint:2022/560}.
18+
Here we found that the shuffle size could be reduced to 80 and still be secure, also considering the domain in which the protocol is intended.
19+
Using this, we see a block overhead of just 72.33\% the size compared to Curdleproof.
20+
21+
22+
Hence, we have shown CAAUrdleproofs to be an optimized modification of Curdleproofs, as it allows for more flexibility in the choice of shuffle size.
23+
The optimization is based on reduction in size of the block overhead and faster proving and verifying times.

report/src/sections/10-acknowledgements.tex

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,5 +3,8 @@
33
\section{Acknowledgements}\label{sec:acknowledgements}
44
We want to express our sincere gratitude to Daniele Dell'Aglio and Michele Albano for their supervision and guidance throughout this thesis.
55

6+
We also want to thank the authors of Springproofs~\cite{zhang2024springproofs} for supplying their code used which we used for reference when building CAAUrdleproofs in this thesis.
7+
Also we thank the authors of Larsen et al.~\cite{cryptoeprint:2022/560} for being of great help by providing answers to our questions regarding their paper on shuffle security.
8+
69
We also acknowledge the usage of AI tools such as ChatGPT, GitHub Copilot, and Grammarly.
710
These have been used for clarification and implementation purposes.

0 commit comments

Comments
 (0)