Top
BlobCommitment represents commitment of a specific blob, containing its
KZG commitment, degree proof, the actual degree, and data length in number of symbols.
Field Type Label Description
commitment bytes A commitment to the blob data.
length_commitment bytes A commitment to the blob data with G2 SRS, used to work with length_proof such that the claimed length below is verifiable.
length_proof bytes A proof that the degree of the polynomial used to generate the blob commitment is valid. It is computed such that the coefficient of the polynomial is committing with the G2 SRS at the end of the highest order.
length uint32 The length specifies the degree of the polynomial used to generate the blob commitment. The length must equal to the degree + 1, and it must be a power of 2.
A KZG commitment
Field Type Label Description
x bytes The X coordinate of the KZG commitment. This is the raw byte representation of the field element.
y bytes The Y coordinate of the KZG commitment. This is the raw byte representation of the field element.
.proto Type Notes C++ Java Python Go C# PHP Ruby
doubledouble double float float64 double float Float
floatfloat float float float32 float float Float
int32Uses variable-length encoding. Inefficient for encoding negative numbers – if your field is likely to have negative values, use sint32 instead. int32 int int int32 int integer Bignum or Fixnum (as required)
int64Uses variable-length encoding. Inefficient for encoding negative numbers – if your field is likely to have negative values, use sint64 instead. int64 long int/long int64 long integer/string Bignum
uint32Uses variable-length encoding. uint32 int int/long uint32 uint integer Bignum or Fixnum (as required)
uint64Uses variable-length encoding. uint64 long int/long uint64 ulong integer/string Bignum or Fixnum (as required)
sint32Uses variable-length encoding. Signed int value. These more efficiently encode negative numbers than regular int32s. int32 int int int32 int integer Bignum or Fixnum (as required)
sint64Uses variable-length encoding. Signed int value. These more efficiently encode negative numbers than regular int64s. int64 long int/long int64 long integer/string Bignum
fixed32Always four bytes. More efficient than uint32 if values are often greater than 2^28. uint32 int int uint32 uint integer Bignum or Fixnum (as required)
fixed64Always eight bytes. More efficient than uint64 if values are often greater than 2^56. uint64 long int/long uint64 ulong integer/string Bignum
sfixed32Always four bytes. int32 int int int32 int integer Bignum or Fixnum (as required)
sfixed64Always eight bytes. int64 long int/long int64 long integer/string Bignum
boolbool boolean boolean bool bool boolean TrueClass/FalseClass
stringA string must always contain UTF-8 encoded or 7-bit ASCII text. string String str/unicode string string string String (UTF-8)
bytesMay contain any arbitrary sequence of bytes. string ByteString str []byte ByteString string String (ASCII-8BIT)