CFCSSControl-Flow Checking by Software Signatures
Copyright 1988-2018, All rights reserved.
References in periodicals archive ?
As shown in Table 2, CFCVE incurs the least memory overhead (2.21%) compared with CFCSS (2.44%) and RSCFC (2.35%).
In CFCSS, each node is assigned a unique signature and has two additional instructions.
Table 2 shows that the detection latency of CFCVE is comparable to RSCFC, but much higher than for CFCSS. The reason is that the number of additional instructions in CFCSS is 2-4, 6 in CFCVE and 7 in RSCFC.
Transient faults injected into the unhardened programs are categorized according to their effects (Table 3) and then compared with the results of injection into the 3 safe versions (CFCSS, RSCFC and CFCVE), as reported in Table 4.
8 was generated based on the WR in Tables 3 and 4 and illustrates the fraction of faults that are not detected for the original programs and the hardened programs with CFCSS, RSCFC and CFCVE under each fault types.
8, the average undetected incorrect outputs for CFCSS, RSCFC and CFCVE are 12.11%, 9.44% and 9.29% respectively.
First, in CFCSS, if multiple nodes are sharing multiple branch-fan-in nodes as their destination nodes, aliasing may occur between legal and illegal branches, and cause an undetectable control flow error.