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
[Feature Request] Support for Encrypted Return Values in Generated Solidity Contracts
Description
Currently, the Circom framework has limitations regarding return values in the generated Solidity contracts. This constraint reduces flexibility in many use cases where we need to return encrypted data to be stored on-chain.
Current Behavior
Generated Solidity contracts don't support return values
Limited flexibility in complex scenarios requiring on-chain encrypted data storage
No option to return encrypted computation results
Proposed Enhancement
Add optional support for returning encrypted values that can be stored on-chain. This would:
Allow circuits to return encrypted computation results
Enable more complex use cases while maintaining zero-knowledge properties
Provide more flexibility for projects with advanced requirements
Make the encrypted return values optional (opt-in feature)
Use Cases
Privacy-preserving computations that need to store encrypted results on-chain
Complex ZK applications requiring state updates with encrypted data
Advanced protocols needing to chain multiple ZK proofs with intermediate encrypted results
While I have noticed many other zk-SNARK framework solutions, they are too abstract and unfriendly for developers who aren't deeply versed in ZK (Zero-Knowledge Proofs) technologies. I strongly hope that Circom can add some options to increase its flexibility while maintaining its developer-friendly nature.
The beauty of Circom lies in its relative simplicity and accessibility. Adding these options would bridge the gap between simple use cases and more complex requirements, without forcing developers to switch to more complicated frameworks.
This would be particularly valuable because:
It maintains Circom's user-friendly approach
It provides a growth path for projects as they become more complex
It keeps developers in a familiar environment rather than forcing them to learn entirely new, more abstract frameworks
It serves as a middle ground between simple implementations and highly complex ZK frameworks
This enhancement would help Circom maintain its position as an accessible yet powerful tool in the ZK ecosystem.
[Feature Request] Support for Encrypted Return Values in Generated Solidity Contracts
Description
Currently, the Circom framework has limitations regarding return values in the generated Solidity contracts. This constraint reduces flexibility in many use cases where we need to return encrypted data to be stored on-chain.
Current Behavior
Proposed Enhancement
Add optional support for returning encrypted values that can be stored on-chain. This would:
Use Cases
Benefits
Implementation Suggestions
Questions
Additional Context
This feature would be particularly valuable for projects requiring:
Would love to hear the community's thoughts on this proposal and potential implementation approaches.
The text was updated successfully, but these errors were encountered: