* For stream data, most of the time the witness section is omitted and the evidence is not sent to the blockchain service, unless it is a check point, which is periodically inserted. * There can be multiple <random number, search key> pairs, and data body can produce multiple digests for each section within. algorithm public key algorithm search key readout sporadic data example final digest of readout stream data example sensor/actuator signs identifies sensor/actuator sensory data data body a-past digest previous digest location sensory data time random number K.Saito, et. al., “Proof of authenticity of general IoT information with sensors and blockchain”, Flash Memory Summit 2022 — — 2023-08-09 – p.24/32
* Each data stores the a-past digest, where a = 3 in this case, as well as the previous digest. * This tolerates up to a - 1 consecutive data losses. * If a check point or all it points are lost, we just have to wait for another check point to have recent data verifiable. * To verify authenticity of a readout in a stream: 1) Find the nearest check point that reaches the readout in question in the directed acyclic graph. 2) Verify the evidence of the check point. data data data data data digests This is a straightforward application of a technique introduced in [Golle and Modadugu, 2001]. K.Saito, et. al., “Proof of authenticity of general IoT information with sensors and blockchain”, Flash Memory Summit 2022 — — 2023-08-09 – p.25/32