Sharding design with tight beacon and shard block integration "Danksharding"

If you take EC and pairings as a given, KZG is pretty simple to understand: it’s just generating a set of points T_0 = G, T_1 = G*s, T_2 = G*s^2T_n = G*s^n with a forgotten secret s as the setup, and then committing to a polynomial P(x) = Σ c_i * x^i (where c_i are the coefficients) by taking Σ c_i * T_i. It’s a “use of existing ingredients” that’s significantly less complicated than many other uses of existing ingredients that Ethereum already has.

EC pairings are definitely highly complicated, but the Ethereum consensus layer depends on them already for BLS signatures and the RANDAO. If we could later remove the pairing dependencies in both of these cases, I would love that, but it will take a while to figure out the right way to do it, and continuing to use pairing-based crypto is far simpler in the meantime.

1 Like