Research Article
RIPTE: Runtime Integrity Protection Based on Trusted Execution for IoT Device
Algorithm 1
Measurement algorithm of software codes.
| Input: code blocks of software: , | | Output: measurement results and log: , | (1) | The code blocks are loaded into memory with each block’s virtual address ranged from to ; | (2) | Device measures SW at runtime. | (3) | (1) Initialize SW measurement log as {}, aggregated measurement fingerprint as ; | (4) | 2) The first function: . Device reads | and measures it, , ; | (5) | (3) The measurement is recursively triggered with function calling. And its algorithm | (6) | for in do | (7) | (a) Reads code block of function , , measures it and obtain fingerprint ; | (8) | b) Record measurement log for , , where is the description information of code block, e.g. function name, type; | (9) | (c) Aggregate fingerprints for SW, ; | (10) | (d) ; | (11) | end | (12) | (4) Device stores of every code block execution for future attestation. | (13) | return, |
|