feat: RP for plugin-tee-verifiable-log-api
Relates to:
- Run verifiable Eliza in the TEE.
- Verifiable log for Eliza in the TEE
- https://github.com/ai16z/eliza/pull/1259
Risks
Low
Background
What does this PR do?
This PR builds upon plugin-tee-verifiable-log by modifying the direct client to add remote attestation and query interfaces for verifiable logs.
To better understand what verifiable logs are and why we implemented this feature, it is necessary to refer to the preceding PR that introduces plugin-tee-verifiable-log and provides the context for its development.
What kind of change is this?
- Feature
- TEE plugin
- Verifiable feature
Documentation changes needed?
Yes, we will add documentation about api detail.
Testing
Where should a reviewer start?
-
Understand the existing
plugin-tee- We rely on Eliza's existing
plugin-teeand use its key derivation interface.
- We rely on Eliza's existing
-
To better understand what verifiable logs are and why we implemented this feature, it is necessary to refer to the preceding PR that introduces
plugin-tee-verifiable-logand provides the context for its development. -
Understand what
plugin-tee-verifiable-logdoes- Derive a key pair for verifiable logs: It uses the TEE to derive a key pair specifically for signing verifiable logs.
- Remote attestation: The public key of verifiable logs is embedded in the remote attestation report, making it accessible for external verification.
- Sign logs: This plugin accepts logs passed in from external modules (e.g., tweets sent and received by a Twitter client, or executed actions), signs them with the TEE-derived key pair, and stores them in the database.
- Verification: External entities can use the remotely attested public key to verify these logs, ensuring that certain actions were indeed performed by TEE Eliza.
Detailed testing steps
It have completed the integration tests and can run the pnpm test file in the test directory.
is this a duplicate of #1259 ?
LGTM, outside of the 1 suggested edit. I can help document tomorrow and run a test to fix any bugs i may encounter
~@odilitime~ @gene-zhan what are the @gene-sf changes? Is that some automation? I'm approving this PR now
~@odilitime~ @gene-zhan what are the @gene-sf changes? Is that some automation? I'm approving this PR now
sorry,I have configured two GitHub accounts locally. The problem with @gene-sf is that I forgot to switch the configuration file when submitting the code.
I have completed the following operations:
- [x] According to your review, I have fixed the code.
- [x] Updated the readme that is easier to understand.
- [x] Merged the latest version of main code.
@shakkernerd I noticed that PRs #1331 and #1333 were reopened and this PR closed, which has left me a bit confused about the current direction. Should I merge my changes into the develop branch, or is there a different branch we should treat as the standard? I’ve submitted #1369. both cpppppp7 and I have been working diligently to make progress on this code contribution. I’d appreciate any clarification to ensure we align our efforts effectively. 😊
Hi @gene-zhan Thanks for bringing this to my attention.
PRs that were closed about 5hours ago were due to develop branch getting accidentally deleted.
And yes, the develop remains the standard to open PRs to.
Good to hear about your active contributions. Apologies for the confusion.
@shakkernerd Thank you for your response! I accidentally submitted duplicate PRs (#1259 #1260 #1331, #1333, and #1369). I recommend prioritizing the merge of #1369, as this branch already includes the latest develop code. The other branches contain the same code but currently have conflicts that need to be resolved. Merging #1369 would help reduce additional workload. Thank you again for your understanding and support! 😊
@shakkernerd @odilitime @HashWarlock How can I help facilitate the merging of this PR?
Hi @gene-zhan which PRs do you need attention on and which ones should be closed?
@shakkernerd
I would like to request the following actions:
- Close the following pull requests (PRs):
- #1259
- #1260
- #1331
- #1333 These PRs are no longer needed, and we can safely close them.
- Merge PR #1369 Please proceed with merging PR #1369 into the develop branch as it contains the necessary updates/fixes we need. Let me know if there are any issues or additional steps required. Thank you!
Okay, thanks for listing them out. I will get to it.
Closing in favor of #1369