You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
When we consider to build a smart contract VM (like Ethereum Virtual Machine) with SP1 zkVM, there are two theoretical ways:
Compiling smart contract as a program being run in zkVM
Compiling smart contract as conventional ways and compiling smart contract VM as a program being run in zkVM
To keep the consistency with conventional smart contract compiler ecosystem, the 2nd would be better. (There is also a possibility of the 1st being better than 2nd due to the proof sizes.)
However, in either ways, there is a requirement to access database and storage.
If we implement database and storage stuff in zkVM, the proof size would be significantly large, so I think it would be better to add a feature to add syscall precompiles for stuff like database/storage access. The diff of the storage can be input/output of the proof.
Additional context
No response
The text was updated successfully, but these errors were encountered:
Component
sp1-sdk, sp1-zkvm
Describe the feature you would like
When we consider to build a smart contract VM (like Ethereum Virtual Machine) with SP1 zkVM, there are two theoretical ways:
To keep the consistency with conventional smart contract compiler ecosystem, the 2nd would be better. (There is also a possibility of the 1st being better than 2nd due to the proof sizes.)
However, in either ways, there is a requirement to access database and storage.
If we implement database and storage stuff in zkVM, the proof size would be significantly large, so I think it would be better to add a feature to add syscall precompiles for stuff like database/storage access. The diff of the storage can be input/output of the proof.
Additional context
No response
The text was updated successfully, but these errors were encountered: