Abstract
With the development of the Internet of Things, smart devices are widely used. Hardware security is one key issue in the security of the Internet of Things. As the core component of the hardware, the integrated circuit must be taken seriously with its security. The pre-silicon detection methods do not require gold chips, are not affected by process noise, and are suitable for the safe detection of a very large-scale integration. Therefore, more and more researchers are paying attention to the pre-silicon detection method. In this study, we propose a machine-learning-based hardware-Trojan detection method at the gate level. First, we put forward new Trojan-net features. After that, we use the scoring mechanism of the eXtreme Gradient Boosting to set up a new effective feature set of 49 out of 56 features. Finally, the hardware-Trojan classifier was trained and detected based on the new feature set by the eXtreme Gradient Boosting algorithm, respectively. The experimental results show that the proposed method can obtain 89.84% average Recall, 86.75% average F-measure, and 99.83% average Accuracy, which is the best detection result among existing machine-learning-based hardware-Trojan detection methods.
Introduction
The Internet of Things (IoT) is a huge network that combines everything with the Internet through a variety of information sensing devices, such as radio frequency identification devices, infrared sensors, and global positioning systems. The IoT is called the third wave of the world information industry after computers and the Internet. With the development of the IoT technology, its related applications have become more and more diversified, such as the Internet of Vehicles, 1 smart medical, 2 and smart home, 3 as shown in Figure 1, making our life more convenient and intelligent. However, a large amount of user sensitive information is stored and processed in a smart device. If it is exploited by an attacker, it may seriously damage or endanger the privacy of the user, and even threaten the life safety of users.

The model of the IoT.
The logical architecture of the IoT is divided into the sensing layer, the transport layer, and the application layer. In the past few years, some researchers have conducted related research on different layers of security in the IoT logical architecture. For the security of the sensing layer, the previous literature 4 established a lightweight trusted execution environment in embedded systems to protect system security. For the security of the transport layer, the previous literature5–7 defended against sensor network attacks by lightweighting cryptographic algorithms and protocols. For the security of the application layer, the previous literature8,9 protected sensitive data in the application program by designing multiple access control models.
However, the hardware is the foundation of the IoT, and the core device of the hardware is the integrated circuits (ICs), or called chips. Obviously, the security of the ICs is the key issue of the IoTs’ security. Nowadays, as the amount of data processed increases, the equipment of each layer needs more complex chips to enhance the processing power. Therefore, the integration of IoT chips is getting higher and higher, while it is very difficult to ensure the security of the very large-scale integration (VLSI).
Hardware Trojans refer to a special module that is intentionally implanted in the ICs or a defective module that the designer has no intention of leaving during the IC design process. Under special conditions, the module can be exploited by an attacker to achieve destructive functions. The typical hardware Trojans consists of Trojan trigger and Trojan payload. Trojan trigger monitors the rare signals from normal circuits and converts the rare signals into the effective trigger signal to Trojan payload. Trojan payload performs specific functions of the hardware Trojans. Hardware Trojans can cause many serious risks which include, but are no limit to, leakage of information, alteration of the functionality of a device, and denial-of-service (DoS). Hardware Trojans are extremely concealed and normally do not work. They are usually only activated when triggered by rare signals. Therefore, the detection of hardware Trojans is very difficult.
Currently, most of the researches on hardware-Trojan detection methods are reverse engineering,10,11 logic testing,12–14 and side-channel signal analysis,15–18 which called post-silicon detection methods. However, due to the difficulty of the acquisition of golden chips, influenced by noise easily, high cost, the requirement of special equipment, and other reasons, the post-silicon detection methods are not effective in practical applications. Especially in VLSI, the Trojan circuits are extremely smaller than normal circuits. Thus, it is very hard to find the hardware Trojans by the post-silicon detection methods. The pre-silicon detection methods do not have the limitation compared with the post-silicon detection methods, and these are the effective detection methods for very large-scale ICs.
In this study, we focus on hardware-Trojan detection using machine learning in gate-level netlists. Based on the 51 existing Trojan-net features, 19 we analyze the features of Trojan circuits and propose new hardware-Trojan features. In order to remove some features which are less relevant, we use the scoring mechanism of the eXtreme Gradient Boosting (XGBoost) to further extract the effective set of 49 Trojan-net features out of 56 features and use XGBoost to detect hardware Trojans for the first time.
We summarize the main contributions of this study as follows:
By further analyzing the existing 51 Trojan circuit features, we propose 5 new features. In addition, the appropriate number of features is a prerequisite for effective training of classifiers, so we use the scoring mechanism of the XGBoost algorithm to extract 49 effective features out of 56 features.
In the process of hardware-Trojan detection, the Trojan net should be detected as much as possible. Therefore, we aim to maximize Recall and use the XGBoost algorithm to train the hardware-Trojan classifier.
The comparison experiment shows that the XGBoost algorithm is more suitable for hardware-Trojan detection, and also shows that our proposed features can further improve the hardware-Trojan detection effect. In the process of detecting the Trojan-free netlists, we can achieve perfect detection results without any mistakes. For the Trojan-inserted netlists, we also can obtain 89.84% average Recall, 86.75% average F-measure, and 99.83% average Accuracy.
The rest of this study is organized as follows. The necessary preliminaries are introduced in section “Preliminaries.” We give the detection model and the design goals in section “Problem formulation.” The introduction and selection of Trojan-net features is in section “Trojan-net features.” Then, we propose the detail of our method in section “The XGBoost-based hardware-Trojan detection method.” We give the experiments and analysis in section “Experiments and analysis.” Finally, we introduce the related work in section “Related work” and conclude our work in section “Conclusion.”
Preliminaries
In this section, we introduce the necessary preliminaries, including the hardware-Trojan features of the gate-level netlists and the XGBoost algorithm.
Gate-level netlists
The gate-level netlists are written in Verilog-HDL (hardware description language) to describe the connections between circuit components, which are shown in Netlist 1. The gate-level netlists start with
Figure 2 lists the relevant gate-level netlists used in the experiments in this study, which are provided by the Trust-Hub. 20 At the same time, according to the data information provided by the platform, we also counted the Trojan nets and normal nets in different netlists. It should be noted that in this study, we consider that the nets inside the Trojan circuits can represent Trojans. Therefore, the number of Trojan nets in the statistical process is counted according to the number of nets inside the Trojan circuits.

Statistical results of the normal nets and the Trojan nets in the Trojan-included netlists.
XGBoost
The XGBoost is one of the supervised machine-learning methods. It optimizes the boosting algorithm based on the traditional gradient-boosted decision trees (GBDTs). Due to its fast speed, good classification results, ability to handle large-scale data, support for multiple languages, and so on, it is popular in domestic and foreign data competition platforms such as Kaggle, DataCastle, and Kesci.
The XGBoost is made up of several classification and regression trees (CARTs). Since the value corresponding to the leaf node of CART is a score, not a certain class, the final predicted value of XGBoost is the sum of the predicted scores for each CART. The mathematical model of XGBoost is defined as
where
The objective function of XGBoost can be defined as
The first half of the objective function
where
According to Taylor’s theory, the new objective function is shown as equation (4), where
The regularization term is very important to XGBoost, here we define the tree as
where
where
Problem formulation
In this section, we describe the hardware-Trojan detection model based on machine learning. At the same time, we also introduced the design goals of this method proposed in this study.
Detection model
We use
Design goals
Our goal is to design a machine-learning-based hardware-Trojan detection model with higher detection accuracy in gate-level netlists. Specifically, we have the following goals:
Trojan-net features
In this section, in order to more clearly describe the features of the Trojan net, we introduce the existing Trojan-net features by way of examples. At the same time, by analyzing the features of the existing Trojan and circuit structures, we propose a new Trojan-net feature.
Existing Trojan-net features
Fifty-one hardware-Trojan features have been proposed by Hasegawa et al., 19 which are listed in Table 1. This study gives a brief example of the existing 51 Trojan-net features.
The extracted features from a netlist (1≤x≤5).
As shown in Figures 3 and 4, the target Trojan net is the net

The introduction of hardware-Trojan features (A).

The introduction of hardware-Trojan features (B).
In Figure 4,
Logic-gate
Dataset and features determine the upper limit of a machine-learning method. Therefore, extracting the effective features of the Trojan net can further improve the hardware-Trojan detection effect.
The feature

The score of different features.

The example of Trojan-net features for logic-gate.
According to the discussion above, we extract the numbers of logic-gate x-level away from the net n as Trojan-net features which are named
Selecting Trojan-net features using XGBoost
According to the introduction of XGBoost, the XGBoost is a gradient boosting algorithm. One advantage of using the gradient boosting algorithm is that after the CARTs are created, the importance score for each feature can be obtained directly. In general, the higher the importance score, the more importance the feature. In a single CART, the closer a feature is to the root node, the greater the weight of the feature. The more the feature is selected by the CARTs, the more important it is. Finally, the results of a feature in all CARTs are weighted and then averaged to get the importance score.
Using the built-in scoring function of XGBoost, we can obtain the scores of 56 features which are list in Table 1 for every classifier. We summarize the feature scores of different classifiers for Trojan-included netlists, which is shown in Figure 7. Among the 56 Trojan-net features, 16 Trojan-net features can get more than 10,000 score and f46 (out_nearest_pout) gets the highest score. The scores of f53 (in_gate_3), f55 (in_gate_5), f54 (in_gate_4), and f52 (in_gate_2) which are proposed in this study are in the top 15. The results prove that the new Trojan-net features proposed in this study are effective.

The example of Trojan-net features for logic-gate fan-ins.
According to the statistical results, f25 (in_loop_1), f30 (out_loop_1), and f40–f44 (out_const_x) still get 0 score, meaning that these features do not work for XGBoost-based hardware-Trojan detection method. Although the scores of features such as f34, f15, and f16 are very low compared to the scores of other features, these scores are all non-zero, meaning that they are useful for the training of the classifier. Therefore, we believe that these low score features are also effective. As a result, we select the best set of 56 Trojan-net features, which contains 49 features except for f25, f30, and f40–f44.
The XGBoost-based hardware-Trojan detection method
In this section, we introduce the hardware-Trojan detection method based on the XGBoost algorithm for gate-level netlist, including the entire hardware-Trojan detection process and related evaluation indexes. At the same time, we also summarize the experimental results of some existing related methods.
Hardware-Trojan detection process for gate-level netlist
This study first uses XGBoost to detect the hardware Trojans. The process of hardware-Trojan detection based on the XGBoost algorithm for gate-level netlists is shown in Figure 8. The hardware-Trojan detection process is as following four steps:

The process of hardware-Trojan detection based on the XGBoost algorithm for gate-level netlists.
Experimental results of existing machine-learning-based hardware-Trojan detection methods
So far, some existing machine-learning hardware-Trojan detection methods are as follows: support vector machine (SVM)-based hardware-Trojan detection method, 22 neural network (NN)-based hardware-Trojan detection method, 23 random forest (RF)-based hardware-Trojan detection method, 24 and multi-layer neural network (MNN)-based hardware-Trojan detection method. 25 The true positive rate (TPR) and the true negative rate (TNR) are used by Hasegawa et al. 22 and Inoue et al. 26 to evaluate the detection results. In addition to the TPR and the TNR, Hasegawa et al. 24 also used the Accuracy, the Precision, and the F-measure to evaluate the detection results and proposed that the F-measure is the best to measure the results very well. In order to further improve the TPR and the TNR, Hasegawa et al. 25 used the MNN to detect hardware Trojans on the basis of the 11 Trojan-net features which are proposed by Hasegawa et al. 24 For better comparison, we have compiled the experimental results of these related methods. The experimental results of above methods are shown in Tables 2 and 3.
Experimental results of the existing machine-learning-based methods (A).
SVM: support vector machine; NN: neural network.
Experimental results of the existing machine-learning-based methods (B).
RF: random forest; MNN: multi-layer neural network.
In Tables 2 and 3, SVM-5 represents hardware-Trojan detection method using the SVM based on 5 Trojan-net features, NN-5 represents hardware-Trojan detection method using NN based on 5 Trojan-net features, SVM-11 represents hardware-Trojan detection method using SVM based on 11 Trojan-net features, RF-11 represents hardware-Trojan detection method using RF based on 11 Trojan-net features, and MNN-11 represents hardware-Trojan detection method using a multi-layer NN based on 11 Trojan-net features.
In Table 2, the experimental results of NN-5 23 are better than SVM-5 22 in terms of the average Recall, the average F-measure, the average Precision, and the average Accuracy. This comparison shows that the detection effect of hardware Trojans can be improved by selecting the appropriate machine-learning method based on the same Trojan-net features. Then, we compare the experimental results of SVM-5 22 and SVM-11. 24 The average F-measure, the average Precision, and the average Accuracy of SVM-11 24 are better than the results of SVM-5. 22 And the average Accuracy of SVM-11 24 is the best. According to the comparison results, the detection effect can be improved by extracting the effective Trojan-net features based on the same machine-learning method.
According to the experimental results of RF-11 24 and MNN-11 25 which are shown in Table 2, the F-measure, the Precision, and the Accuracy of RF-11 24 are better than the results of MNN-11. 25 The F-measure of RF-11 24 is the best among existing methods, and MNN-11 25 can obtain the best Recall. Therefore, this study is mainly compared with RF-11 24 and MNN-11. 25
Summarizing the experimental results of the above existing machine-learning-based methods, the best average Recall is 88.08%, the best average F-measure is 79.78%, the best average Precision is 96.28%, and the best average Accuracy is 99.04%. Although the existing machine-learning-based methods for hardware-Trojan detection in gate-level netlists can reach a good Precision and Accuracy, the F-measure and the Recall are not very satisfied. We consider that for ensuring the IC security, it is the most important to detect the Trojan nets as much as possible. Therefore, the Recall and the F-measure are more important than the Precision and the Accuracy. Therefore, when training the XGBoost classifier in this study, it mainly adjusts the parameters by measuring the two indicators of Recall and F-measure.
Evaluation indexes of machine learning for hardware-Trojan detection
There are four values to evaluate the machine-learning-based hardware-Trojan detection results: the true positive (TP) value indicates the number of Trojan nets identified to Trojan nets; the false negative (FN) value indicates the number of Trojan nets identified to normal nets mistakenly; the false positive (FP) value indicates the number of normal nets identified to Trojan nets mistakenly; and the true negative (TN) value indicates the number of normal nets identified to normal nets. In addition, there are five more evaluation values to evaluate the experimental results: the TPR which is known to be the Recall (R), the TNR, the Precision (P), the F-measure, and the Accuracy. TPR indicates the probability that all Trojan nets in the netlist are correctly detected as Trojan nets by the classifier, that is, the prediction accuracy of the Trojan net. The calculation formula is as follows
TNR indicates the probability that the normal nets in the netlist are correctly detected as normal nets by the classifier, that is, the prediction accuracy rate of the normal net. The calculation formula is as follows
Precision indicates the proportion of the actually Trojan nets in the nets of the Trojan nets predicted by the classifier. The calculation formula is as follows
F-measure, also known as F-score, represents the weighted harmonic average of Precision and Recall. The calculation formula is as follows
Accuracy represents the proportion of correctly detected nets among all predictions output by the classifier. The calculation formula is as follows
All of the evaluation values above are important. Figure 2 shows the statistics of the normal net and Trojan nets for some netlists, which are provided by Trust-Hub. 20 According to the number of normal nets and Trojan nets in Figure 2, we can see that the number of normal nets is far more than the number of Trojan nets. So, it is unreasonable to evaluate the detection effect of machine-learning-based method only by the Precision and Accuracy while the F-measure is suitable. Furthermore, when detecting the hardware Trojans, we should pay more attention to detect all Trojan nets. Even if a few normal nets are mistakenly detected as Trojan nets, it is better than the security problem caused by the omission of the Trojan nets. Therefore, it is also reasonable to use Recall to evaluate the detection effect of hardware Trojans. In this study, we focus on F-measure and Recall to evaluate the detection results.
Experiments and analysis
In this section, first, we use XGBoost for experiments based on 51 Trojan-net features to prove that the XGBoost-based hardware-Trojan detection method is more suitable than existing machine-learning-based hardware-Trojan detection methods. Second, based on the best Trojan-net features, we use XGBoost for experiments to prove that the features proposed in this study can further improve the detection effect of hardware Trojans. Third, in order to better explain that the proposed method can further improve the detection effect, we compare it with some related methods. Finally, in order to prove the practicality of the proposed method, we explain the time-consuming situation.
Experiments based on existing Trojan-net features
In this section, we give 51 Trojan-net features 19 to XGBoost for experiments to prove that the XGBoost is effective for the detection of hardware Trojans. Tables 4 and 5 show the experimental results with 51 Trojan-net features.
The experimental results based on 51 Trojan-net features (A).
TN: true negative; FP: false positive; FN: false negative; TP: true positive; TNR: true negative rate.
The experimental results based on 51 Trojan-net features (B).
TN: true negative; FP: false positive; FN: false negative; TP: true positive; TNR: true negative rate.
Table 4 shows the detection results of Trojan-included netlists. We can obtain 100.00% TPR in RS232-T1100, RS232-T1200, RS232-T1300, RS232-T1400, and RS232-T1500; all the Trojan nets in these netlists are correctly identified to be Trojan nets. Because the FP values in all the netlists are less than 10, so the normal nets are also correctly identified, the average TNR of the proposed method is 99.68%. The average F-measure of our proposed method is 81.94%, and the best F-measure of existing methods is 79.78%. The average Precision of ours is 86.28%, which is also the best. In terms of Accuracy, almost all netlists obtain more than 99.00% or more. This means that most nets can be correctly identified to Trojan nets and normal nets.
We can see that s35932-T200 has the smallest TP value. Although the detection result of s35932-T200 is relatively poor compared to other netlists, this result also proves that our proposed method is effective for the detection of hardware Trojans, which achieves our goal 1.
The detection results of Trojan-free netlists, which are shown in Table 5, the TNR, and the Accuracy can reach 98.00%, which are good detection results. The FP values of free-s15850, free-s35932, free-s38417, and free-38584 are 0, and this means that the proposed method is effective for the detection of Trojan-free netlists.
Experiments based on 49 Trojan-net features
According to the above discussion, we use the 49 effective Trojan-net features for XGBoost-based experiments to prove that the detection effect can be improved by the proposed Trojan-net features. Tables 6 and 7 show the experimental results with 49 Trojan-net features.
The experimental results based on 49 Trojan-net features (A).
TN: true negative; FP: false positive; FN: false negative; TP: true positive; TNR: true negative rate.
The experimental results based on 49 Trojan-net features (B).
TN: true negative; FP: false positive; FN: false negative; TP: true positive; TNR: true negative rate.
First, we analyze the detection results of Trojan-inserted netlists, which are shown in Table 6. The FP values in almost all netlists become less than 3, and more than half of netlists can get 100.00% TNR. This means that almost all normal nets can be identified correctly. We can obtain 100.00% Recall in RS232-T200, RS232-T300, RS232-T400, RS232-T600, s35932-T100, s35932-T200, and s38417-T200, which is more than half of netlists, and the FN values of almost all netlists are less than 2. The results mean that the Trojan nets can be identified to be Trojan nets correctly. We can obtain 100.00% Precision in more than half of netlists, which means that all the nets identified to be Trojan nets are actually Trojan nets in these netlists.
In terms of F-measure, most netlists achieve more than 90.00%, and 100.00% can be obtained in RS232-T1200, RS232-T1300, RS232-T1400, and RS232-T1600. The average F-measure is 87.75%. The Accuracy of all netlists is more than 99.00% or more, and the average Accuracy can get 99.83%. The average F-measure and the average Precision of our proposed method are quite good results in hardware-Trojan detection.
Table 7 shows the detection results of Trojan-free netlists. The FP values in all netlists are 0, which means that all the normal nets can be identified to be normal nets correctly. This means that our proposed method can achieve excellent detection results for the Trojan-free netlists.
Comparison of experimental results
In order to prove that the XGBoost algorithm and the proposed Trojan-net features are more suitable for hardware-Trojan detection, we first use the XGBoost algorithm to train the classifier based on the existing features, labeled XGBoost-51. Second, combined with the features proposed in this study, the feature set of the feature selection is used to train the corresponding XGBoost classifier, labeled XGBoost-49. According to the analysis in the previous sections, we know that the best Recall indicator can be obtained using the MNN-11 25 method. Therefore, in terms of the Recall indicators comparison, we compare to the detection effect of the MNN-11 25 method. As for the comparison of F-measure, Accuracy, and Precision indicators, the comparison of the previous sections shows that the best results can be obtained using RF-11. 24 Therefore, this study mainly compares these three indicators with the RF-11 25 method. Since the 11 Trojan-net features used in the RF-11 method are further extracted based on 51 features, XGBoost-51 is comparable with RF-11 24 and MNN-11. 25
First, compare the experimental results of Recall indicators, as shown in Figure 9. We can see that the RS232-T1100, RS232-T1200, RS232-T1300, RS232-T1400, RS232-T1500, and s35932-T100 netlists use the XGBoost-51 method, which is better than the MNN-11 25 detection effect in the Recall indicators. Although the average Recall of XGBoost-51 is lower than that of MNN-11, 25 it is also a good result. While using the XGBoost-49 method for the netlists in the experiment, 66.7% of the netlists were better than MNN-11. 25 Furthermore, on the average Recall, XGBoost-49 has achieved the current best Recall, which means that the method proposed in this study can further improve the detection effect of the hardware-Trojan net.

The comparison in terms of Recall.
Second, a comparison of the F-measure indicators is shown in Figure 10. We can see that the average F-measure obtained using the XGBoost-51 method is better than that obtained by the RF-11 24 method. It can be seen that the XGBoost algorithm is more suitable for the detection of hardware Trojans of gate-level netlists. Moreover, with XGBoost-49, 75% of the netlists are superior to RF-11 24 in F-measure indicators. They are RS232-T1100, RS232-T1200, RS232-T1300, RS232-T1400, RS232-T1600, s35932-T100, s35932-T200, s38417-T100, and s38417-T200. At the same time, the average F-measure of XGBoost-49 is the best.

The comparison in terms of F-measure.
Third, a comparison of Accuracy indicators. From the average Accuracy comparison in the last column of Figure 11, we can see that the average Accuracy obtained by the XGBoost-51 method is better than that obtained by the RF-11 24 method. This shows that the XGBoost algorithm is more suitable than the RF algorithm in hardware-Trojan detection. Furthermore, using the XGBoost-49 method, the Accuracy indicators of all netlists in the experiment are superior to the RF-11 method, 24 which is a good illustration of the superiority of the proposed method.

The comparison in terms of Accuracy.
Finally, compare the Precision indicator. As can be seen from the comparison of the last column of Figure 12, the proposed method is not as good as RF-11 in the Precision indicator. However, using the XGBoost-51 method, the Precision of 58.3% netlists is no lower than that using the RF-11 24 method. And using the XGBoost-49 method, there are 66.79% netlists can obtain better Precision.

The comparison in terms of Precision.
In summary, using the XGBoost-49 method proposed in this study can further improve the detection effect of hardware Trojans in the gate-level netlist.
Comparison of time-consuming
We know that under the same conditions, the method that takes less time will be an excellent method. To prove that the XGBoost algorithm is also very time-consuming, we compare it to the NNs, RF, and SVM methods.
The comparison experiment is performed on the Win7 server with an Intel i5-6500 central processing unit (CPU), running at 3.20 GHz and 4 GB memory. The experiment was carried out with the training set and testing set corresponding to the RS232-T1000 netlist. The program is written in Python 2.7 using scikit-learn 27 as a machine-learning library. During the experiment, the classifiers were trained using the default parameters. As we know, the efficiency of a machine-learning-based approach depends on its training phase. Therefore, we only count the training time of different classifiers. At the same time, in order to avoid random interference, we run each method 10 times under the same conditions and then record the average time as the time consumption of the method. The experiment results are shown in Table 8.
The time-consuming of different methods.
NN: neural network; RF: random forest; SVM: support vector machine.
We can see that under the same conditions, the RF method takes the least time, and the average time is only 0.39 s. Furthermore, under the default parameters, the RF method can get the best Recall and F-measure. The SVM method takes the most time, and the average time is as much as 150.1 s. The average time of the XGBoost method costs 5.51 s, which is also a very good result. The XGBoost method performs worse in terms of time-consuming, Recall, and F-measure than the RF method. However, the XGBoost method is more stable than the RF method, as shown in Figure 13. We can see that the XGBoost method is very stable during the 10 training sessions, and the results are the same every time. The RF method is not stable, and sometimes, the detection results are better, but sometimes, the detection results are not very good. Therefore, we believe that the XGBoost method is more suitable for the training of hardware-Trojan classifiers.

The comparison of the random forest and XGBoost methods.
At the same time, in order to illustrate the time-consuming effects of features on classifier training, we compare the time spent on classifier training for 49 features and 51 feature data sets. As shown in Table 8, the XGBoost-based classifier trained with 49 features took less time and obtained the same detection effect.
Related work
At present, machine learning can achieve excellent results in pre-silicon detection. It is an excellent technical method, while few researchers have applied machine-learning methods to the detection of hardware Trojans in gate-level netlists.
Hasegawa et al. 22 extracted five Trojan-net features from the netlist and then used the SVM to classify the normal nets and the Trojan nets. The experimental results show that using the SVM can achieve 100% TPR in some cases. Inoue et al. 26 designed three hardware Trojans, and then the Trojans were inserted into the netlist. The experimental results show that the SVM-based hardware-Trojan detection method is effective. Hasegawa et al. 23 used the NN to identify the hardware Trojans on the basis of five hardware-Trojan features. This method can obtain 81% of the average TPR and 69% of the TNR. Hasegawa et al. 19 proposed 51 Trojan-net features and used the RF classifier to extract 11 features that can effectively detect and maximize the F-measure. Hasegawa et al. 24 used the RF classifier with 11 Trojan-net features to classify the normal nets and the Trojan nets, and obtained 94.9% the average Precision, 79.3% the average F-measure, and 99.2% the average Accuracy. Hasegawa et al. 25 extracted 11 Trojan-net features from the netlist and detected the Trojan nets using MNNs. Using this method can obtain 85% of the average TPR and 70% of the average TNR.
Conclusion
The security of the ICs is the key issue in the security of the IoT. In this study, we propose a machine-learning-based hardware-Trojan detection method for hardware Trojans in gate-level netlists. We propose new Trojan-net features based on the existing 51 Trojan-net features. 19 To remove some less important features, we use the scoring mechanism of the XGBoost algorithm to further extract the effective set of 49 Trojan-net features out of 56 features. After that, the hardware-Trojan classifier was trained based on 49 features combined with the XGBoost algorithm. The experimental results show that the proposed method can obtain the best Recall, F-measure, and Accuracy. Furthermore, through the comparison experiments, it is proved that the XGBoost algorithm and the features proposed in this study can further improve the detection effect of hardware Trojans. In future, we will further study the structure of gate-level Trojans and extract new Trojan-net features to get a better Trojan detection result.
Footnotes
Handling Editor: Jianting Ning
Declaration of conflicting interests
The author(s) declared no potential conflicts of interest with respect to the research, authorship, and/or publication of this article.
Funding
The author(s) disclosed receipt of the following financial support for the research, authorship, and/or publication of this article: This work was supported by the following—The National Natural Science Foundation of China (no.: 61672159, no.: 61872091, no.: U18042631, no.: 61702105), the Science Foundation of the Fujian Province, China (no.: 2018J01793, no.: 2018J01800), and the Foundation of the Education Department of Fujian Province, China (no.: JAT170099).
