[FEAT] Add on-chain signature verification for decrypt results#42
Merged
roeezolantz merged 16 commits intomasterfrom Feb 25, 2026
Merged
[FEAT] Add on-chain signature verification for decrypt results#42roeezolantz merged 16 commits intomasterfrom
roeezolantz merged 16 commits intomasterfrom
Conversation
liorbond
requested changes
Feb 8, 2026
Contributor
Author
|
@liorbond didn't rebase on the CTA PR yet, but fixed everything else, please re-review :) |
liorbond
approved these changes
Feb 17, 2026
b949fe9 to
4694f33
Compare
Contributor
Author
|
@liorbond I've added some fixes :
|
liorbond
approved these changes
Feb 25, 2026
* Add `allowPublic` alias for `allowGlobal` * Add isPubliclyAllowed and isGloballyAllowed to TaskManager * Add tests for isPubliclyAllowed and isGloballyAllowed * update changelog * add FHE.isPubliclyAllowed, remove from DeterministicTM * remove isGloballyAllowed, keep only isPubliclyAllowed * update changelog --------- Co-authored-by: Roee Zolantz <zolantz.roee@gmail.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Enables SDK/JS users to publish decryption results directly to the TaskManager contract with cryptographic signature verification from the threshold decryption network.
Main Changes
TaskManager.sol:
publishDecryptResult()- publish signed decrypt result to chainpublishDecryptResultBatch()- batch publish for gas efficiencyverifyDecryptResult()- verify signature without publishing (view, reverts on invalid)verifyDecryptResultSafe()- verify signature without publishing (view, returns false on invalid)decryptResultSignerstate variable andsetDecryptResultSigner()admin function, triggering DecryptResultSignerChanged event upon changeICofhe.sol / FHE.sol:
bytes32for ctHash, matching the existing pattern (e.g.getDecryptResult(bytes32))Message Format: result (32 bytes), enc_type (4), chain_id (8), ct_hash (32) = 76 bytes total
Examples