Hari Kailad

Blog

Check out some of my musings below: mostly me trying to learn a subject / reading a paper / generic thoughts.

MPC in the Head: KKW


Secure multiparty computation is a very new field that has grown very quickly. One of the most interesting things we can currently do with MPC is a paradigm known as MPC in the head. With this, one can construct zero knowledge proofs and signatures from purely symmetric primitives.

Multiparty Computation: Garbled Circuits and Half Gates


Garbled Circuits is a cryptographic protocol that allows two parties to compute a function of their inputs, while keeping their inputs secret. The protocol is quite simple, however some of the optimizations (specifically half gates), are not as intuitive. Here I attempt to describe the half gate optimization.

Measure Theoretic Probability


Normally in statistics, we typically deal with discrete or continuous distributions. However, what if we have a combination of both? What if we want to build a theory on random matrices or lattices?

Measure theoretic foundations of probability allow us to do this. Not only does it generalize the discrete and continuous cases of a probability distribution, it also allows us to construct more arcane distributions.

Random Oracles: Limits to Cryptography and Computation


The random oracle model has been used time and time again in security proofs within cryptography. However, no real implementation of a random oracle exists, and so are modeled by hash functions. Here I illustrate yet another paper, showing that modeling protocols with random oracles has theoretical limitations.

The Number Theoretic Transform


The Number Theoretic Transform is a very important subroutine in many lattice based schemes, such as Kyber and Dilithium. Though a most of these schemes are relatively straightforward, the NTT steps within can be quite opaque.

Lattice reduction: LLL, BKZ and more


Many current cryptographic schemes rely on the security of lattice based assumptions. In addition, attacks on multiple cryptosystems in the past rely on lattice reduction to function.

In quite a few cases (my past posts being a main example), lattice reduction is treated as a black box algorithm that can be run. In this post I plan on detailing the underlying mechanisms a bit more.

MEV, Cryptocurrency, and Verifiable Delay Functions


Time based cryptography such as VDFs and Time Lock Puzzles seem to have interesting applications. One major issue in cryptocurrency is MEV and frontrunning, where people lose money to bots scanning transactions to frontrun. Time based cryptographic primitives could theoretically offer some solutions.

Lattice Estimation with Hints


Fun paper time! Often, we only think about theoretical security guarantees of cryptosystems. For example, Kyber512 offers approximately the same security as AES128. However, in practice with leakage the security can often drop.

Small Buffer Optimization


Small Buffer Optimization is often useful for improving performance of arbitrary sized integers. One case where I ran into this was while writing a disassembler.

Coppersmith's Method


Coppersmith's method is widely used in many modern lattice based attacks in cryptography. Partial factorization, Boneh-Durfee, and low public exponent all rely on this algorithm. This post describes how Coppersmith's method functions.

First Post


Gotta start somewhere.