Hopefully this video is a good introduction to anybody who wants to read the full thing in detail
Thank you for this Sebastian. I was struggling with this for a very long time. This was incredibly helpfull to fill the many gaps i had in understanding the wallet.
You did a great job at explaining this. Kudos
For all who are wondering what they can expect in these 2 hours of good information:
PART I
Data type definitions
TransctionIDs / indexes / addresses
[https://youtu.be/-UAfBnBbnBU?t=1m20s]
The UTX model explained
transaction Input and output (unspend)
[https://youtu.be/-UAfBnBbnBU?t=1m53s]
Operations on UTxO
domain restriction / domain exclusion / range restriction
[https://youtu.be/-UAfBnBbnBU?t=9m26s]
The simplest wallet interface you can have
get total / available balance
get all transaction inputs / outputs
[https://youtu.be/-UAfBnBbnBU?t=14m5s]
Practical example for an UTxO
[https://youtu.be/-UAfBnBbnBU?t=19m25s]
How to update the UTxO when a new Block comes in
[https://youtu.be/-UAfBnBbnBU?t=23m50s]
Update a pending set
[https://youtu.be/-UAfBnBbnBU?t=30m20s]
Some auxiliary functions
[https://youtu.be/-UAfBnBbnBU?t=32m12s]
Adding extra features to make the wallet faster
listen to the the presumed declarations …
[https://youtu.be/-UAfBnBbnBU?t=37m20s]
or go directly to: why we need a caching feature
[https://youtu.be/-UAfBnBbnBU?t=46m32s]
and the pre-filtering mechanism
[https://youtu.be/-UAfBnBbnBU?t=54m0s]
The problem of Rollbacks
[https://youtu.be/-UAfBnBbnBU?t=1h25s]