Comments (3)
We could also put the actual "unhashing" of note details here instead of the prologue. It is not clear to me yet which approach is better.
If a transaction should fail when there's an issue with a note that it's attempting to consume (e.g. unhashing fails or the note has already been consumed), then it seems better to do the unhashing in the prologue so that the transaction fails sooner & therefore more cheaply, since the additional execution won't have been done yet. (Otherwise, in the case where we consume 10 notes and unhashing fails for the last one, we have already executed the note setup and note script for notes 0-8)
from miden-base.
I actually think this shouldn't be an issue because the prover will verify that they can "unhash" the inputs before they start executing a transactions. In fact, they'll probably get a list of raw inputs, and one of the first steps would be to hash them to build public inputs for the VM.
from miden-base.
closed by: #63
from miden-base.
Related Issues (20)
- Using hmerge to hash 9 or more stack elements HOT 16
- Add CI job for `doc` + make sure that Miden base passes `make doc` HOT 1
- winter_rand_utils Compiled Under Testing Feature Breaks for WASM Builds HOT 1
- Refactor `apply_delta` for Storage Maps HOT 3
- Allow increasing an account's nonce without changing its state HOT 1
- Add `create_wallet_with_custom_code` wallet helper function in miden-lib HOT 5
- Refactor transaction kernel events and errors HOT 1
- Make memory setters consistent HOT 1
- Checking that a transaction does not consume two identical notes
- Update names used for input/output notes HOT 4
- Refactor batch/block note tree structure
- Refactor `NoteOrigin` / `NoteInclusionProof` structs HOT 3
- Fix the stack management for account procedures HOT 7
- Allow setting block timestamp and block number when using TransactionContextBuilder HOT 3
- Refactor delta's vault and storage to use maps HOT 2
- feat: add a procedure for basic wallets that creates notes with 0 or more assets HOT 1
- Refactor account storage to use sequential hash rather than a Merkle tree
- Make `miden_lib::notes::build_swap_tag()` public HOT 1
- Creation of privacy optimized P2ID note HOT 6
- Remove `send_asset` procedure from the basic wallet. HOT 6
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from miden-base.