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,