mirror of
https://github.com/scroll-tech/scroll.git
synced 2026-04-23 03:00:50 -04:00
init
This commit is contained in:
@@ -1,6 +1,6 @@
|
||||
//go:build mock_prover
|
||||
|
||||
package prover
|
||||
package core
|
||||
|
||||
import (
|
||||
"math/big"
|
||||
@@ -13,18 +13,18 @@ import (
|
||||
"scroll-tech/roller/config"
|
||||
)
|
||||
|
||||
// Prover sends block-traces to rust-prover through socket and get back the zk-proof.
|
||||
type Prover struct {
|
||||
// ProverCore sends block-traces to rust-prover through socket and get back the zk-proof.
|
||||
type ProverCore struct {
|
||||
cfg *config.ProverConfig
|
||||
}
|
||||
|
||||
// NewProver inits a Prover object.
|
||||
func NewProver(cfg *config.ProverConfig) (*Prover, error) {
|
||||
return &Prover{cfg: cfg}, nil
|
||||
// NewProver inits a ProverCore object.
|
||||
func NewProver(cfg *config.ProverConfig) (*ProverCore, error) {
|
||||
return &ProverCore{cfg: cfg}, nil
|
||||
}
|
||||
|
||||
// Prove call rust ffi to generate proof, if first failed, try again.
|
||||
func (p *Prover) Prove(taskID string, traces []*types.BlockTrace) (*message.AggProof, error) {
|
||||
func (p *ProverCore) Prove(taskID string, traces []*types.BlockTrace) (*message.AggProof, error) {
|
||||
_empty := common.BigToHash(big.NewInt(0))
|
||||
return &message.AggProof{
|
||||
Proof: _empty[:],
|
||||
@@ -1,6 +1,6 @@
|
||||
//go:build !mock_prover
|
||||
|
||||
package prover
|
||||
package core
|
||||
|
||||
/*
|
||||
#cgo LDFLAGS: -lzkp -lm -ldl -lzktrie -L${SRCDIR}/lib/ -Wl,-rpath=${SRCDIR}/lib
|
||||
@@ -24,13 +24,13 @@ import (
|
||||
"scroll-tech/roller/config"
|
||||
)
|
||||
|
||||
// Prover sends block-traces to rust-prover through ffi and get back the zk-proof.
|
||||
type Prover struct {
|
||||
// ProverCore sends block-traces to rust-prover through ffi and get back the zk-proof.
|
||||
type ProverCore struct {
|
||||
cfg *config.ProverConfig
|
||||
}
|
||||
|
||||
// NewProver inits a Prover object.
|
||||
func NewProver(cfg *config.ProverConfig) (*Prover, error) {
|
||||
// NewProverCore inits a Prover object.
|
||||
func NewProverCore(cfg *config.ProverConfig) (*ProverCore, error) {
|
||||
paramsPathStr := C.CString(cfg.ParamsPath)
|
||||
seedPathStr := C.CString(cfg.SeedPath)
|
||||
defer func() {
|
||||
@@ -51,7 +51,7 @@ func NewProver(cfg *config.ProverConfig) (*Prover, error) {
|
||||
}
|
||||
|
||||
// Prove call rust ffi to generate proof, if first failed, try again.
|
||||
func (p *Prover) Prove(taskID string, traces []*types.BlockTrace) (*message.AggProof, error) {
|
||||
func (p *ProverCore) Prove(taskID string, traces []*types.BlockTrace) (*message.AggProof, error) {
|
||||
var proofByt []byte
|
||||
if p.cfg.ProofType == message.ProofTypeChunk {
|
||||
tracesByt, err := json.Marshal(traces)
|
||||
@@ -74,7 +74,7 @@ func (p *Prover) Prove(taskID string, traces []*types.BlockTrace) (*message.AggP
|
||||
}
|
||||
|
||||
// Call cgo to generate proof.
|
||||
func (p *Prover) prove(tracesByt []byte) []byte {
|
||||
func (p *ProverCore) prove(tracesByt []byte) []byte {
|
||||
tracesStr := C.CString(string(tracesByt))
|
||||
|
||||
defer func() {
|
||||
@@ -89,7 +89,7 @@ func (p *Prover) prove(tracesByt []byte) []byte {
|
||||
return []byte(proof)
|
||||
}
|
||||
|
||||
func (p *Prover) dumpProof(id string, proofByt []byte) error {
|
||||
func (p *ProverCore) dumpProof(id string, proofByt []byte) error {
|
||||
if p.cfg.DumpDir == "" {
|
||||
return nil
|
||||
}
|
||||
@@ -1,6 +1,6 @@
|
||||
//go:build ffi
|
||||
|
||||
package prover_test
|
||||
package core_test
|
||||
|
||||
import (
|
||||
"encoding/json"
|
||||
Reference in New Issue
Block a user