Skip to content

Commit ac56533

Browse files
authored
Merge pull request #14 from AAU-Dat/Related-work
Related work
2 parents 0f626a9 + 6be25fb commit ac56533

File tree

3 files changed

+40
-10
lines changed

3 files changed

+40
-10
lines changed

report/src/bib/main.bib

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -139,4 +139,29 @@ @inproceedings{10.1145/3419614.3423258
139139
keywords = {Secret Leader Election, Proof of Stake, Blockchain},
140140
location = {New York, NY, USA},
141141
series = {AFT '20}
142+
}
143+
144+
@article{haastad2006square,
145+
title={The square lattice shuffle},
146+
author={H{\aa}stad, Johan},
147+
journal={Random Structures and Algorithms},
148+
volume={29},
149+
number={4},
150+
pages={466--474},
151+
year={2006},
152+
publisher={New York: J. Wiley, c1990-}
153+
}
154+
155+
@article{Feistle,
156+
title = {Privacy Analysis of Whisk},
157+
author = {The Ethereum Foundation Cryptography Research Team},
158+
note = {Accessed: 15-05-2025},
159+
url = {https://github.com/khovratovich/whisk-analysis/blob/ba6a4b1374efe56ebbde692c7fc3b549d1eb0133/WhiskAnalysis.pdf}
160+
}
161+
162+
@article{safrole,
163+
title = {-safrole},
164+
author = {Polkadot Web3 Foundation},
165+
note = {Accessed: 16-05-2025},
166+
url = {https://wiki.polkadot.network/learn/learn-safrole/}
142167
}

report/src/sections/01-introduction.tex

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,5 +3,4 @@
33
\section{Introduction}\label{sec:introduction}
44
This is the introduction
55

6-
\subsection*{Related Work}\label{subsec:related-work}
7-
This is related work
6+

report/src/sections/02-related-work.tex

Lines changed: 14 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -4,21 +4,27 @@ \section{Related Work}\label{sec:related-work}
44

55

66
\subsection{Single Secret Leader Election}\label{sec:related-work-SSLE}
7+
A~\gls{ssle} is a protocol where a group of participants randomly elects only one leader from the group.
8+
The identity of the leader is kept secret from all other participants so only the leader themselves know that they have been chosen.
9+
The elected leader can then later publicly prove that they have been elected~\cite{10.1145/3419614.3423258}.
10+
One of the use cases of~\gls{ssle} is to make~\gls{pos} cryptocurrencies more secure due to the added privacy that the proposer has.
711

12+
One~\gls{pos} cryptocurrency that uses an~\gls{ssle} is Polkadot which uses Safrole as their~\gls{ssle} protocol~\cite{safrole}.
813

914

1015

1116
\subsection{Shuffling algorithm}\label{sec:related-work-Shuffling-algorithm}
12-
The shuffling algorithm used in curdleproofs has gone though many iterations and improvements in order to increase speed and reduce the size the proof.
13-
This is because the proposer has a limited amount of time to propose a block in each slot, and the addition of the proof to the protocol increases the size of the block the proposers have to create.
14-
This is the reason why the current implementation of curdleproofs has chosen the shuffling algorithm~\cite{cryptoeprint:2022/560} proposed by Larsen et al.
1517

16-
The way the shuffle works is by selecting 2 days' worth of proposers, and then shuffling the proposers over one day's worth of slots to create a new list of proposers for the following day.
17-
In each slot a subset of the proposers are shuffled, and the rest are left unchanged.
18+
The Håstad square shuffle~\cite{haastad2006square} is one of the proposed ways of integrating an~\gls{ssle}.
19+
The Håstad square shuffle is a shuffling algorithm that shuffles a $n$ long vector with a shuffle size of $\sqrt {n}$.
20+
The algorithm works by splitting the vector into $\sqrt {n}$ times $\sqrt {n}$ square matrix and for each step in the algorithm it switches between shuffling a row and a column.
21+
The Håstad shuffle is more rigid than the shuffling algorithm used in curdleproofs~\cite{cryptoeprint:2022/560} because of the fixed size of the shuffle being $\sqrt {n}$.
22+
23+
The Feistel shuffle~\cite{Feistle} is the previous shuffle method used in the Whisk protocol~\cite{Whisk2024}.
24+
The Feistel shuffle is a shuffling algorithm that works by taking $n$ number of trackers and arranging them in a $k$ times $k$ matrix.
25+
Each round the $i$-th proposer selects the $i$-th row of the created matrix and shuffles it in the form $F(x,y)=(y,x+y^3 mod k)$.
26+
The Feistel shuffle was then later replaced by the shuffle proposed be Larsen et al.~\cite{cryptoeprint:2022/560} because of the Feistel shuffle being too slow to shuffle the list of proposers.
1827

19-
Though experiments Larsen et al. has shown that after enough shuffles becomes secrue even in adversarial environments.
20-
They also surgests that their may be room to lower the size of the subsets chosen in each lot without losing the security of the shuffle.
21-
Thereby increasing the speed of the shuffle and reducing the size of the proof being added to the blockchain.
2228

2329
\subsection{Bulletproofs}\label{sec:related-work-bulletproofs}
2430
A big inspiration for the curdleproofs protocol is the use of bulletproofs~\cite{bunz2018bulletproofs}.

0 commit comments

Comments
 (0)