#polynomials #cryptography #commitment

kzg

a simple implementation of the KZG polynomial commitment scheme

35 releases (7 breaking)

0.7.0 Nov 6, 2021
0.5.1 Nov 4, 2021

#234 in Cryptography

MIT license

71KB
2K SLoC

kzg

This code has not beed audited - use it at your own risk.

kzg is a simple implementation of the Kate-Zaverucha-Goldberg polynomial commitment scheme over the zkcrypto ecosystem's primitives, mainly their pairing abstraction.

kzg implements the "simple" variant described in the paper as "DL", including batched openings.

Author's Note

I wrote this mostly to learn and partly because the arkworks-polycommit is hard to use and only implements the pederson variant of KZG, which is unnecessary for many use cases, in particular vector commitment schemes that don't care about the unconditional hiding property the pederson variant of KZG provides like this.

Dependencies

~0.4–1.4MB
~30K SLoC