Oblivious transfer & Garbled circuits
Imagine Alice has $n$ values $m_i$, and she wants to share one of these values with Bob. Note that Bob does not want to
reveal exactly which value he has selected. The solution to this problem is called “oblivious transfer.” There exists a
well-known protocol that leverages an encryption scheme $E,D$ that has a commutative property:
\[\forall k...
Singular curves
The Weierstrass normal form of elliptic curves (in fields with characteristic != 2 and != 3) $y^2 = x^3 + ax + b$
over the $Z_p$ field has found many applications in cryptography. But this curve form also has two types: non-singular
(which can be used in crypto) and singular (which can’t). Let’s take a look at why singular curves cause problems ...
Launching Linea stack
Recently, my team has been working mainly on launching the Linea L2 stack. It has been a long journey, starting with
investigating the prover code with the aim of improving its performance and ending with launching the whole system.
Here is a docker-compose example that can help any team
launch their own L2. It also contains a brief overview of...
Elliptic Curves
Definition 1
The set of all lines in three-dimensional space that pass through the origin is called the projective plane. Any
line that passes through the origin and does not lie in the $XOY$ plane (i.e., $z \neq 0$) can be associated
with a point $(x, y, 1)$. For a vector $l$ with coordinates $(X, Y, Z)$ where $Z \neq 0$, the corresponding
poi...
Block cipher mode of operation
A block cipher is an algorithm that performs encryption and decryption of plaintext in blocks (for example, 128-bit
blocks). It’s obvious that to encode plaintext with a length different from the block size, we need a separate high-level module that
will perform split and append operations on the plaintext, coupled with some other transformation...
21 post articles, 3 pages.