5 ms·
Off-topic but what do you think they used here to render the UI. Qt?
by nothasan 4y ago
Off-topic but what do you think they used here to render the UI. Qt?
- popol12 4y agohome made framework like the previous devices, I'd say. The UI is running directly in the secure element (~1.5MB flash, ~50kb ram) so it's very memory constrained.
- lxgr 4y agoI'd be really surprised if they can pull that off. My guess is on a two-chip architecture [1] like for the original Nano S (non-plus). [1] https://developers.ledger.com/docs/nano-app/bolos-hardware-architecture/ https://developers.ledger.com/docs/nano-app/bolos-hardware-a...
- popol12 4y agoThey already pulled it off for their previous device, the Nano X (and S+, which shares the same secure element with the new Stax device)
- lxgr 4y agoThe Nano X has a minimal user interface and two buttons. I really doubt the Stax can be driven by only a secure element like that.
- popol12 4y agoI just asked a guy working there, he confirmed that the screen and the touch inputs are solely driven by the SE. Basically the OS only stores a few fonts and all the graphical shapes are rebuild at runtime, it's a time for space trade-off.
- lxgr 4y agoWow, and all that runs on the SE? That would be really impressive! It's still not ideal though, given that every additional feature or library blows up the trusted code base and increases the scope of any audit as a result. Well, I just hope the existing wallets will remain supported going forward.
- popol12 4y agoThey have a modular approach where the OS is not updated very often, and over it are running userland applets that define their own UI and features and can be audited separately. These applets are built using Ledger's SDK which make use of the security features of the OS through a bunch of scrutinized syscalls.
- the__alchemist 4y agoThe correct play is writing to the display buffer directly using a thin wrapper that has fonts, drawing primitives etc. I hope they don't have a GPOS and Qt on this.