(blobs []kzg4844.Blob)
| 223 | } |
| 224 | |
| 225 | func ComputeBlobs(blobs []kzg4844.Blob) ([]kzg4844.Commitment, []kzg4844.Proof, []common.Hash, error) { |
| 226 | var ( |
| 227 | commits []kzg4844.Commitment |
| 228 | proofs []kzg4844.Proof |
| 229 | versionedHashes []common.Hash |
| 230 | ) |
| 231 | for _, blob := range blobs { |
| 232 | commit, err := kzg4844.BlobToCommitment(&blob) |
| 233 | if err != nil { |
| 234 | return nil, nil, nil, err |
| 235 | } |
| 236 | commits = append(commits, commit) |
| 237 | |
| 238 | // Version1: Use cell proofs for Fusaka compatibility |
| 239 | cellProofs, err := kzg4844.ComputeCellProofs(&blob) |
| 240 | if err != nil { |
| 241 | return nil, nil, nil, fmt.Errorf("cannot compute KZG cell proofs for blob in tx candidate: %w", err) |
| 242 | } |
| 243 | proofs = append(proofs, cellProofs...) |
| 244 | |
| 245 | versionedHashes = append(versionedHashes, kZGToVersionedHash(commit)) |
| 246 | } |
| 247 | return commits, proofs, versionedHashes, nil |
| 248 | } |
| 249 | |
| 250 | var blobCommitmentVersionKZG uint8 = 0x01 |
| 251 |
no test coverage detected