Search Results
Search type | Search syntax |
---|---|
Tags | [tag] |
Exact | "words here" |
Author |
user:1234 user:me (yours) |
Score |
score:3 (3+) score:0 (none) |
Answers |
answers:3 (3+) answers:0 (none) isaccepted:yes hasaccepted:no inquestion:1234 |
Views | views:250 |
Code | code:"if (foo != bar)" |
Sections |
title:apples body:"apples oranges" |
URL | url:"*.example.com" |
Saves | in:saves |
Status |
closed:yes duplicate:no migrated:no wiki:no |
Types |
is:question is:answer |
Exclude |
-[tag] -apples |
For more details on advanced search visit our help page |
3
votes
1
answer
160
views
What is the real danger of allowing non-canonical bump PDAs?
How exactly would someone create a fake non-canonical bump PDA if PDAs + their addresses are owned and generated by the program, assuming you're using Anchor's seeds constraint? …
2
votes
1
answer
769
views
Necessary to pass bump for PDA in the instruction data when using Anchor?
I've tried omitting the caller-supplied bump parameter, using just #[account(seeds = [...], bump)] and passing a non-canonical PDA address, and Anchor correctly throws an error Cross-program invocation … So it seems like having the caller-supplied bump makes no difference to checking if the PDA is canonical. Furthermore you can always retrieve the canonical bump via ctx.bumps.get("<account>"). …
6
votes
Accepted
Necessary to pass bump for PDA in the instruction data when using Anchor?
Okay so got an answer from the man/myth/legend Armani:
Never pass bump via instruction data
init should not specify a bump explicitly
Recommended: store bump in PDA
Recommended: subsequent use of seeds …