-
Notifications
You must be signed in to change notification settings - Fork 493
New issue
Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? # to your account
AVM: Adding sumhash and falcon_verify #5599
Conversation
ac0b426
to
7817578
Compare
Codecov ReportAttention:
Additional details and impacted files@@ Coverage Diff @@
## master #5599 +/- ##
==========================================
- Coverage 55.95% 55.92% -0.03%
==========================================
Files 477 477
Lines 67436 67455 +19
==========================================
- Hits 37736 37727 -9
- Misses 27149 27168 +19
- Partials 2551 2560 +9 ☔ View full report in Codecov by Sentry. |
25f1155
to
62f4349
Compare
2e0607a
to
9892c58
Compare
It is likely that a state proof checking AVM contract would also need access to this:
as an opcode. |
Out of curiosity would this enable:
|
The intention was to allow 1. But this is a low priority thing I did for fun one day. We'd need someone to put in the effort to show it could be done before pushing this into mainnet. I don't think it gives you 2, unless you implement fast catch-up by going through state proofs in an AVM contract. Maybe? |
9892c58
to
b39a610
Compare
b39a610
to
ca021c0
Compare
ca021c0
to
a2b23cb
Compare
This should allow the AVM to check state proofs
a2b23cb
to
b0c449d
Compare
This should allow the AVM to check state proofs and/or create PQ safe Algorand accounts
AVM state proof checking would still be a lot of work. State proofs are really big, so the verification would have to be incremental, by feeding in parts of the proof a little at a time.
It should be possible to create PQ safe accounts today with
falcon_verify
by creating a logicsig that approves if the logicsig args conatin a falcon signature of the transaction. An extra precaution would be to ensure that the logicsig address (formed by hash of program) is an invalid ed25519 public key.There is at least a little interest in
sumhash512
on its own as well, since it is a zk friendly hash.These opcodes would be kept "experimental" (always one version beyond mainnet) until they are proven sufficient for something useful.