dkales / picnic_m4 Goto Github PK
View Code? Open in Web Editor NEWImplementations of the Picnic Signature algorithm with focus on low-memory footprint for constrained devices
License: Other
Implementations of the Picnic Signature algorithm with focus on low-memory footprint for constrained devices
License: Other
Hello, while I was trying to integrate your version of Picnic3-L1 in a project, using STM32Cube IDE, I noticed a mismatch on the Stack Memory that my IDE reports and the one that is reported on your bencharmks-gregz-may27.md
here. It actually reports the same memory for opt
and for opt-mem
variants.
I found out that on your README.md file you are stating:
opt-mem
: similar to opt, but makes some tradeoffs to reduce memory even further, such as not storing the whole Merkle tree in memory, and recomputing it as needed. Currently, only signing is optimized to use less RAM, verification is the same as opt. None of the changes break compatibility with the Picnic specification.
So it makes sense on the bencharmks-gregz-may27.md
, the Memory Evaluation of opt
and opt-mem
to be the same except the signing operation.
In bencharmks-gregz-may27.md
we see that the Sign operation reports less memory BUT we see the same on the Verify operation too:
Signature Schemes
Scheme Implementation Key Generation [bytes] Sign [bytes] Verify [bytes] picnic3l1 opt 820 69,228 87,812 picnic3l1 opt-mem 828 24,676 32,436
Is this a typo or is there an actual memory optimization on the Verify operation that I am missing?
Thank you in advance,
George
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.