Аннотация:
The program code controls the operation of FPGA (Field Programmable Gate Arrays) chips.
Through the use of program code it is possible to interfere with the operation of these chips.
Operational monitoring (integrity, authenticity, distribution paths) of program code is one of
the most effective means of preventing illegal interference with FPGA-based systems.
Traditional methods of monitoring program code have the problem of storing control data. A
promising approach is to embed the monitoring data into the FPGA program code in a
steganographic manner. In this case, the fact of the availability of monitoring data and the
fact of monitoring is not obvious to an external observer. There are methods for
steganographic embedding of additional data into the FPGA program code. Methods of this
kind are based on equivalent transformations of the program code. This paper proposes and
experimentally substantiates the presence in the FPGA program code of new resources for
steganographic data embedding. These resources arise in the programming code of FPGA
systems that perform approximate data processing. In the paper, inessential LUT (Look Up
Table) FPGA units are classified as such resources. These units are involved in the
calculation of the least significant (discarded during rounding) bits of the result and do not
participate in the calculation of the most significant (retained) bits. Also inessential bits of the
program code of LUTs are referred to new resources. These bits are bits that are not accessed
during the calculation of the result of the operation. The experiments performed have shown
the possibility of organizing stego containers in the FPGA program code using the identified
additional resources. The volume of such stego containers has been estimated. It is shown
that this volume is sufficient for storing monitoring data, which are used for operational
monitoring of the FPGA program code.