On Wed, Aug 20, 2025 at 03:13:11AM +0300, Jarkko Sakkinen wrote: > I started this project originally in 2024 then I got quickly stuck. > After one year of processing how to do it the result is no_std, zero > dependency crate, which does not require memory allocator. It can > empower both chips, clients, emulators and operating systems. Even tho > most of the code was written in three weeks (11K of 12K for both > protocol and client) the ideas have been developing for a long time.
Also tpm2_protocol byte granular precision in its understanding of the protocol. We don't need to validate anymore just length or trivial metrics like that. The power of Rust here is really that we can structurally say what "is" and what "is not". It's not just a security property. It increases the overall stability of the system. One particular benefit that it gives for kernel hacking is the ability in some cases to differentiate the stimulus of a bug between kernel, hardware and firmware. My crate takes byte granularity seriously. E.g. day ago I noticed that spec had enums with signed discriminants, which I hadn't paid attention but compiler reminded me of that by complaining that building and parsing traits were not available for 'i8' :-) (it event has separate building and parsing traits for u8). BR, Jarkko
