A side information leakage detection method based on heterogeneous computing
Through the side information leakage detection method based on heterogeneous calculation, the problems of high detection delay and missed rate in the prior art are solved, and efficient and accurate side information leakage detection is achieved.
Patent Information
- Application Number
- CN202411754792.1
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2024-12-03
- Publication Date
- 2025-03-07
- Estimated Expiration
- 2044-12-03
AI Technical Summary
In the prior art, side information leakage detection is difficult to efficiently process large-scale data, resulting in high detection delays and missed rates.
Using a side information leakage detection method based on heterogeneous calculation, the side information leakage detection is realized by identifying the sample to be tested, collecting initial side channel information, performing data processing to obtain side channel analysis data, and heterogeneous calculation data allocation is performed through resource scheduling information to realize side information leakage detection.
It improves the pertinence and effectiveness of detection, ensures the accuracy and reliability of data, achieves fast, accurate and intuitive detection results, and reduces detection delay and missed rate.
Smart Images

Figure CN119227153B_ABST
Abstract
Description
Technical Field
[0001] This application belongs to the field of chip testing technology, and in particular relates to a side information leakage detection method based on heterogeneous computing. Background Technology
[0002] With the rapid development of information technology, data security and privacy protection have become increasingly important issues. In computer systems, side-channel information leakage (SCL) is a potential security threat, referring to attackers inferring sensitive information by observing indirect outputs during system execution (such as power consumption, electromagnetic radiation, and execution time). This type of leakage is difficult to detect or defend against using traditional security measures; therefore, effective SCL detection methods are particularly important.
[0003] In existing technologies, side information leakage detection mainly relies on a single processor for data processing and analysis. With the explosive growth of data volume and the increasing complexity of computing tasks, it is difficult to efficiently process large-scale data, resulting in high detection latency and false negative rates. Summary of the Invention
[0004] This application provides a side information leakage detection method based on heterogeneous computing, which can solve the problem in the prior art that it is difficult to efficiently process large-scale data due to the explosive growth of data volume and the complexity of computing tasks, resulting in high detection delay and false negative rate.
[0005] In a first aspect, embodiments of this application provide a side information leakage detection method based on heterogeneous computing, including:
[0006] Identify the sample to be tested and control the data acquisition device to acquire data from the sample to obtain the initial side channel information of the sample;
[0007] The initial side-channel information of the sample under test is processed to obtain the side-channel analysis data of the sample under test.
[0008] The system receives input information, performs data segmentation on the side-channel analysis data of the sample under test based on the input information, and determines resource scheduling information for the side-channel analysis data; wherein, the resource scheduling information is used for data allocation for heterogeneous computing of the side-channel analysis data;
[0009] Based on the resource scheduling information of the side channel analysis data, side information leakage detection is performed on the side channel analysis data to determine the side information leakage detection result of the sample under test.
[0010] The technical solutions described in this application embodiment have at least the following technical effects:
[0011] The side-channel information leakage detection method based on heterogeneous computing provided in this application identifies the sample under test and controls a data acquisition device to collect data from the sample, obtaining the initial side-channel information of the sample, thus improving the targeting and effectiveness of the detection. The initial side-channel information of the sample under test is processed to obtain the side-channel analysis data of the sample under test, ensuring the accuracy and reliability of the data. Input information is received, and the side-channel analysis data of the sample under test is segmented according to the input information. Resource scheduling information for heterogeneous computing on the side-channel analysis data is determined to optimize overall performance. Based on the resource scheduling information of the side-channel analysis data, side-channel information leakage detection is performed on the side-channel analysis data to determine the side-channel information leakage detection result of the sample under test, achieving a fast, accurate, and intuitive determination of the detection result.
[0012] Secondly, embodiments of this application provide a side information leakage detection system based on heterogeneous computing, including:
[0013] The identification unit is used to identify the sample to be tested and control the data acquisition device to acquire data from the sample to obtain the initial side channel information of the sample to be tested.
[0014] The processing unit performs data processing on the initial side channel information of the sample under test to obtain the side channel analysis data of the sample under test.
[0015] The scheduling unit receives input information and performs data segmentation on the side-channel analysis data of the sample under test based on the input information to determine resource scheduling information for the side-channel analysis data; wherein, the resource scheduling information is used for data allocation for heterogeneous computing of the side-channel analysis data;
[0016] The result unit uses the resource scheduling information based on the side channel analysis data to perform side information leakage detection on the side channel analysis data, and determines the side information leakage detection result of the sample under test.
[0017] Thirdly, embodiments of this application provide a side information leakage detection device based on heterogeneous computing, including a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor executes the computer program to implement the method as described in any of the above aspects.
[0018] Fourthly, embodiments of this application provide a computer program product that, when run on a terminal device, causes the terminal device to execute the method described in any of the above aspects.
[0019] It is understood that the beneficial effects of the second to fourth aspects mentioned above can be found in the relevant descriptions in the above aspects, and will not be repeated here. Attached Figure Description
[0020] To more clearly illustrate the technical solutions in the embodiments of this application, the drawings used in the description of the embodiments or the prior art will be briefly introduced below. Obviously, the drawings described below are only some embodiments of this application. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.
[0021] Figure 1 This is a flowchart illustrating a side information leakage detection method based on heterogeneous computing provided in an embodiment of this application;
[0022] Figure 2 This is a schematic diagram of the operation flow of a side information leakage detection method based on heterogeneous computing provided in an embodiment of this application;
[0023] Figure 3 This is a step-by-step diagram illustrating the side information leakage detection method based on heterogeneous computing provided in an embodiment of this application;
[0024] Figure 4 This is a step-by-step illustration of a side information leakage detection method based on heterogeneous computing provided in an embodiment of this application;
[0025] Figure 5 This is a step-by-step illustration of a side information leakage detection method based on heterogeneous computing provided in an embodiment of this application;
[0026] Figure 6 This is a step-by-step illustration of a side information leakage detection method based on heterogeneous computing provided in an embodiment of this application;
[0027] Figure 7 This is a schematic diagram of the structure of a side information leakage detection system based on heterogeneous computing provided in an embodiment of this application;
[0028] Figure 8 This is a schematic diagram of the structure of a side information leakage detection device based on heterogeneous computing provided in an embodiment of this application. Detailed Implementation
[0029] In the following description, specific details such as particular system architectures and techniques are set forth for illustrative purposes and not for limitation, in order to provide a thorough understanding of the embodiments of this application. However, those skilled in the art will understand that this application may also be implemented in other embodiments without these specific details. In other instances, detailed descriptions of well-known systems, apparatuses, circuits, and methods have been omitted so as not to obscure the description of this application with unnecessary detail.
[0030] It should be understood that, when used in this application specification and the appended claims, the term "comprising" indicates the presence of the described features, integrals, steps, operations, elements and / or components, but does not exclude the presence or addition of one or more other features, integrals, steps, operations, elements, components and / or a collection thereof.
[0031] It should also be understood that the term “and / or” as used in this application specification and the appended claims means any combination of one or more of the associated listed items and all possible combinations, and includes such combinations.
[0032] As used in this application specification and the appended claims, the term "if" may be interpreted, depending on the context, as "when," "once," "in response to determination," or "in response to detection." Similarly, the phrases "if determination" or "if the described condition or event is detected" may be interpreted, depending on the context, as "once determination," "in response to determination," "once the described condition or event is detected," or "in response to the detection of the described condition or event."
[0033] Furthermore, in the description of this application and the appended claims, the terms "first," "second," "third," etc., are used only to distinguish descriptions and should not be construed as indicating or implying relative importance.
[0034] References to "one embodiment" or "some embodiments" as described in this specification mean that one or more embodiments of this application include a specific feature, structure, or characteristic described in connection with that embodiment. Therefore, the phrases "in one embodiment," "in some embodiments," "in other embodiments," "in still other embodiments," etc., appearing in different parts of this specification do not necessarily refer to the same embodiment, but rather mean "one or more, but not all, embodiments," unless otherwise specifically emphasized. The terms "comprising," "including," "having," and variations thereof mean "including but not limited to," unless otherwise specifically emphasized.
[0035] Heterogeneous computing, as an emerging computing paradigm, optimizes the execution efficiency and performance of computing tasks by combining different types of processors (such as CPUs and GPUs). CPUs excel at handling logically complex and control-intensive tasks, while GPUs are adept at handling massively parallel computing tasks. In the field of data security, leveraging the heterogeneous characteristics of data between CPUs and GPUs can lead to the design of more efficient and covert methods for detecting side-information leaks. Currently, various side-information leak detection methods exist, but most rely primarily on a single type of processor (such as using only CPUs) for data processing and analysis. These methods have certain limitations in terms of detection efficiency and accuracy. For example, CPU-based pure software detection methods may struggle to process large-scale data in real time due to limited computing resources, resulting in high detection latency and false negative rates. Furthermore, some research has attempted to introduce GPUs into side-information leak detection, utilizing their parallel processing capabilities to accelerate data processing. However, most of these studies remain at the theoretical exploration stage, failing to fully utilize the heterogeneous characteristics of data between CPUs and GPUs to achieve efficient collaborative work.
[0036] In existing technologies, the positioning of IoT terminals lacks a personalized processing mechanism for positioning requests. All devices, regardless of their specific needs, are allocated the same level of positioning resources and services, ignoring the different requirements of different IoT terminals for positioning accuracy and frequency. This results in positioning services failing to accurately match actual needs and low positioning flexibility.
[0037] To address the aforementioned issues, this application provides a side-channel information leakage detection method based on heterogeneous computing. This method identifies the sample to be tested and controls a data acquisition device to collect data from it, obtaining initial side-channel information and improving the targeting and effectiveness of the detection. The initial side-channel information is processed to obtain side-channel analysis data, ensuring data accuracy and reliability. Input information is received, and the side-channel analysis data is segmented based on this information. Resource scheduling information for heterogeneous computing on the side-channel analysis data is determined, optimizing overall performance. Based on the resource scheduling information, side-channel information leakage detection is performed, and the detection result is determined, enabling rapid, accurate, and intuitive determination of the detection result.
[0038] The side information leakage detection method based on heterogeneous computing provided in this application embodiment can be applied to terminal devices. In this case, the terminal device is the execution subject of the side information leakage detection method based on heterogeneous computing provided in this application embodiment. This application embodiment does not impose any restrictions on the specific type of terminal device.
[0039] For example, terminal devices can be ultra-mobile personal computers (UMPCs), netbooks, personal digital assistants (PDAs), desktop computers, computers, laptops, communication equipment, computing devices, satellite wireless equipment, etc.
[0040] To better understand the side information leakage detection method based on heterogeneous computing provided in the embodiments of this application, the specific implementation process of the side information leakage detection method based on heterogeneous computing provided in the embodiments of this application will be described by way of example below.
[0041] Figure 1 A schematic flowchart of the side information leakage detection method based on heterogeneous computing provided in an embodiment of this application is shown. Figure 2 This paper illustrates an operational flowchart of a side-channel information leakage detection method based on heterogeneous computing provided in an embodiment of this application. The side-channel information leakage detection method based on heterogeneous computing includes:
[0042] S100 identifies the sample to be tested, controls the data acquisition device and acquires data from the sample to obtain the initial side-channel information of the sample.
[0043] It is understood that the sample under test (DUT) represents the actual system or device requiring side-channel information leakage detection, such as encryption chips, security processors, and smart devices. Possible forms of DUTs include IP cores, ASICs, FPGAs, and MCUs. While performing its normal functions, the DUT may leak sensitive information through physical side channels (such as power consumption, electromagnetic radiation, and current). The purpose of identifying the DUT is to determine its type, state, and possible side-channel characteristics. Data acquisition can capture side-channel information from the DUT. Communication with the data acquisition device can be achieved through a control interface. Communication can use standard protocols such as USB, RS-232, or TCP / IP. Data acquisition devices (such as dedicated power consumption acquisition devices, dedicated current acquisition devices, and electromagnetic probes) are used to capture minute physical changes generated when the device performs different operations. The raw data acquired by the data acquisition device constitutes the initial side-channel information, which forms the basis for subsequent analysis and detection.
[0044] Before data acquisition from the sample to be tested, the method also includes:
[0045] S110, receive sampling configuration information of the sample to be tested; wherein, the sampling configuration information is used to determine the parameters for data acquisition of the sample to be tested.
[0046] It is understandable that sampling configuration information can include various key parameters, such as sampling frequency, sampling duration, signal type, and environmental conditions. Sampling frequency refers to the frequency at which data is acquired, usually expressed in Hertz (Hz). It directly affects the data resolution; the higher the frequency, the more signal details can be captured. For example, when processing high-frequency signals, a higher sampling frequency needs to be set to avoid aliasing, which can lead to data distortion. Furthermore, sampling duration determines the total amount and continuity of acquired data; too short a duration may result in incomplete data. Determining the signal type is equally important. Different samples may involve different types of signals, such as current, power, or voltage signals. The appropriate signal type can be selected for acquisition based on the characteristics of the sample and the analytical requirements. This configuration information can be received through a Human-Machine Interface (HMI) or an API.
[0047] S120 sets the data acquisition parameters for the sample based on the sampling configuration information of the sample to be tested.
[0048] It's understandable that sampling configuration information can be applied to data acquisition settings. The sampling frequency determines the data acquisition rate, and this information can be used in the data acquisition settings. The acquisition window can be configured based on the sampling duration. Appropriate signal conditioning devices, such as amplifiers and filters, can be configured based on the selected signal type to ensure the signal remains within an appropriate range during acquisition, avoiding overload or signal loss. The configured acquisition parameters can be saved, and corresponding configuration files can be generated for subsequent automated data acquisition processes, ensuring the continuity and consistency of the acquisition process.
[0049] In one possible implementation, S100 involves identifying the sample to be tested, controlling the data acquisition device, and acquiring data from the sample to obtain initial side-channel information of the sample, including:
[0050] S130: Identify the sample to be tested, control the data acquisition device according to the data acquisition parameters of the sample to be tested, and acquire data from the sample to obtain the initial side channel information of the sample to be tested.
[0051] It is understandable that the identification of the sample under test can be achieved through various methods, such as reading the USB descriptor to obtain the device's manufacturer information and product ID; protocol parsing utilizes the device's communication protocol (such as USB HID) to understand the device's status; software drivers can also interact with the device to achieve the identification of the sample under test. In some cases, image recognition technology may also be used to analyze the device's appearance, thereby automatically identifying the device type. After completing the sample identification, data acquisition can be performed according to the set data acquisition parameters. Parameters such as sampling frequency, duration, and signal type can be configured by calling the data acquisition module. Communication with the data acquisition device can be achieved through the control interface. Communication can use standard protocols such as USB, RS-232, or TCP / IP, using data acquisition devices (such as dedicated power consumption acquisition devices, dedicated current acquisition devices, electromagnetic probes, etc.) to capture the minute physical changes generated by the device when performing different operations. The data acquisition device (such as a data acquisition card or oscilloscope) then begins to collect relevant signals (see [link to relevant documentation]). Figure 3 The quality of the acquired signals is monitored in real time, and the acquired signals are recorded as time series data to form the initial side channel information of the sample under test.
[0052] S200 processes the initial side-channel information of the sample under test to obtain the side-channel analysis data of the sample under test.
[0053] Data processing involves extracting valuable data features from initial side-channel information to support subsequent analysis. Initial side-channel information may be affected by noise and other interference, thus requiring effective filtering techniques. The choice of filtering algorithm depends on the noise characteristics and can include Kalman filtering, median filtering, and adaptive filtering. Kalman filtering can dynamically adjust its parameters to adapt to signal changes, making it suitable for real-time data processing; median filtering effectively removes impulse noise, while adaptive filtering automatically adjusts its characteristics according to changes in the input signal. After filtering, the data can be statically aligned, allowing comparison of data from different acquisition times on the same time base. Following static alignment, feature extraction can be performed to extract key features from the processed side-channel information. Feature extraction methods can include Principal Component Analysis (PCA) and Linear Discriminant Analysis (LDA). These methods aim to improve data analyzability and detection efficiency, effectively reducing dimensionality by mapping high-dimensional data to a low-dimensional space while retaining the main information in the data for easier subsequent analysis.
[0054] In one possible implementation, S200, the initial side-channel information of the sample under test is processed to obtain side-channel analysis data of the sample under test, including:
[0055] S210, the initial side-channel information of the sample under test is filtered to obtain the first side-channel analysis data of the sample under test.
[0056] It is understandable that the initial side-channel information of the sample under test can be filtered to remove noise and unnecessary signal interference. The purpose of filtering is to improve signal quality and ensure the accuracy of subsequent analysis. Filtering techniques can include low-pass filtering, high-pass filtering, or band-pass filtering, depending on the characteristics of the signal under test and the frequency range to be analyzed. By filtering the signal, the filtered data becomes the first side-channel analysis data of the sample under test, highlighting its data characteristics and reducing interference.
[0057] S220, statically align the first side channel analysis data of the sample under test to obtain the second side channel analysis data of the sample under test.
[0058] It is understandable that static alignment can align signals from different operations or sample measurements in time (see [link]). Figure 4 This allows data to be compared on the same time base. The start and end points of a signal can be determined by analyzing the acquired signal waveform. Feature points, such as rising or falling edges of the signal, can be identified; these feature points are often associated with the operational events of the sample under test. By detecting these feature points, the start and end positions of each signal can be accurately located. Different signals can be shifted to align the start point of each signal to a common time base. Assuming the sample under test generates multiple signals when performing different operations, the start times of these signals can be adjusted to the same moment, thus achieving temporal consistency. For example, if the start time of one signal is T1 and the start time of another signal is T2, the time difference between T1 and T2 can be applied to the signal shift to make their start times the same. After shifting, the signal can be scaled to ensure consistent proportions in the time dimension. This can be achieved by adjusting the sampling rate or interpolation method, especially when the sampling frequencies of different signals are inconsistent. Through interpolation, new data points can be inserted into the signal so that both signals have the same number of data points within the same time period, thereby improving the accuracy of the analysis. After translation and scaling, the generated second-side channel analysis data of the sample under test will be time-aligned, ensuring comparability between different measurements and enabling effective comparison and judgment in subsequent analysis.
[0059] S230, based on the second side channel analysis data of the sample under test, obtain the side channel analysis data of the sample under test.
[0060] It is understandable that in-depth analysis of second-side-channel analysis data can extract features related to information leakage, supporting subsequent security assessments and detection, and yielding side-channel analysis data for the sample under test. Side-channel analysis data not only contains information from the original signal but also incorporates the results of feature extraction and pattern recognition, providing a reliable data foundation for subsequent steps. Various signal processing techniques, such as time series analysis and frequency domain analysis, can be employed. By analyzing the statistical characteristics (such as mean, standard deviation, and peak value) and frequency domain characteristics (such as frequency spectrum) of the second-side-channel analysis data, specific patterns or abnormal signals can be identified, which may indicate potential information leakage risks. Such analysis can reveal potential vulnerabilities in the equipment during operation, thus providing crucial information for subsequent security testing.
[0061] Optionally, in step S230, based on the second side-channel analysis data of the sample under test, side-channel analysis data of the sample under test is obtained, including:
[0062] S231, resample based on the second side channel analysis data of the sample under test to obtain the third side channel analysis data of the sample under test.
[0063] It's understandable that the second-side channel analysis data of the sample under test can be resampled to obtain the third-side channel analysis data. The main purpose of resampling is to optimize the data sampling rate to meet the needs of subsequent analysis. Resampling can be achieved through upsampling or downsampling. Upsampling involves interpolation, inserting new data points between existing data points to improve time resolution and capture subtle changes in the signal. Downsampling, on the other hand, reduces the amount of data, thereby reducing storage requirements and computational burden.
[0064] S232, perform data format conversion on the third side channel analysis data of the sample under test to obtain the side channel analysis data of the sample under test.
[0065] It is understandable that the purpose of data format conversion for the third-side channel analysis data of the sample under test is to transform the data into a format suitable for subsequent analysis, thereby facilitating more efficient processing and analysis. Data format conversion can include various operations, such as converting time-domain data to frequency-domain data, using algorithms such as Fast Fourier Transform (FFT) to extract frequency-domain features. Data format conversion can also include reorganizing the data structure, such as organizing the data into matrix or array form, to improve the effectiveness and compatibility of the side-channel analysis data, thus making the subsequent analysis and detection process smoother.
[0066] S300 receives input information, performs data segmentation on the side-channel analysis data of the sample under test based on the input information, and determines the resource scheduling information of the side-channel analysis data; wherein, the resource scheduling information is used for data allocation for heterogeneous computing of the side-channel analysis data.
[0067] It is understandable that relevant parameters and instructions can be received from users or external devices, parsed, and stored; the parsed and stored data constitutes the input information. Based on the parameters in the input information, the side-channel analysis data can be segmented to delineate the effective data region for subsequent processing. Based on the characteristics of the segmented data and available resources, a resource allocation strategy is formulated for the side-channel analysis data, enabling each task to execute efficiently under reasonable resource configuration. Computational resources and tasks are rationally allocated according to the current task requirements and the system's hardware resource status (CPU and GPU). In heterogeneous computing environments, resource allocation is particularly important, ensuring that computational tasks execute efficiently on the most suitable hardware. The resource scheduling process comprehensively considers the task's real-time performance, computational complexity, and hardware resource availability to optimize overall performance, fully utilizing the heterogeneous data characteristics between CPUs and GPUs to achieve efficient collaborative work and improve the efficiency and accuracy of side-channel information leakage detection.
[0068] In one possible implementation, S300 receives input information, performs data segmentation on the side-channel analysis data of the sample under test based on the input information, and determines the resource scheduling information of the side-channel analysis data, including:
[0069] S310 receives input information, divides the side-channel analysis data of the sample under test according to the input information, and determines the start and end positions of the side-channel analysis data curve.
[0070] It is understandable that relevant parameters and instructions received from users or external devices can be parsed to determine the start and end points required for signal analysis. Based on the thresholds and conditions set in the input information, the side-channel signals are processed to determine the precise start and end positions. The curve start and end positions refer to the beginning and end points of the signal in the side-channel analysis data, determining the specific range of data segmentation.
[0071] S320, based on the start and end positions of the curves in the side-channel analysis data, performs data segmentation on the side-channel analysis data of the sample under test to obtain multiple side-channel sub-analysis data.
[0072] Understandably, based on defined start and end positions, the side-channel analysis data of the sample under test can be segmented into multiple subsets, resulting in multiple side-channel sub-analysis data sets. Each subset contains signal data for a specific time period, facilitating subsequent feature extraction and complexity analysis.
[0073] S330 calculates the data characteristics for each side channel sub-analysis data and determines the computational complexity of each side channel sub-analysis data.
[0074] As we understand it, side channel sub-analysis data consists of individual datasets obtained from the previous data segmentation process. These datasets contain signal information extracted from the test samples for subsequent analysis. Detailed statistical analysis can be performed on each side channel sub-analysis dataset, including calculating its mean, variance, and standard deviation. The mean reflects the central tendency of the dataset, while the variance and standard deviation provide measures of data volatility, helping to analyze the stability and degree of change of the signal. Other statistical characteristics, such as maximum, minimum, skewness, and kurtosis, can also be calculated to comprehensively understand the distribution characteristics of the data. The computational complexity of each side channel sub-analysis dataset can be evaluated based on these statistical characteristics, analyzing the time and resources required during computation, especially the complexity of the signal processing algorithm used. For example, the calculation of the mean and standard deviation is usually linear, while more complex statistical feature calculations may require higher computational costs. The computational complexity information of each side channel sub-analysis dataset can be recorded to provide a basis for subsequent resource scheduling and task allocation, ensuring the efficiency of the entire analysis process. For example, calculating the mean and standard deviation is typically linear, so its computational complexity can be considered as O(n), where n is the number of data points. However, for more complex statistical feature calculations, such as skewness and kurtosis, more computational resources may be required, and the computational complexity may be nlogn or O(n^2).
[0075] Optionally, S330, calculates data features for each side channel sub-analysis data and determines the computational complexity of each side channel sub-analysis data, including:
[0076] S331, calculate the fractal dimension for each side channel sub-analysis data, and determine the computational complexity of each side channel sub-analysis data based on the fractal dimension.
[0077] It is understandable that the complexity of the signal data can be described by the fractal dimension for each side channel analysis data. The fractal dimension can be calculated using the box-counting method. The data is considered as a set of points in a dimensional space. These points are covered with boxes of different sizes, and the number of boxes required, N(ϵ), is recorded, where ϵ is the side length of the box. By changing the value of ϵ, a logarithmic plot of N(ϵ) versus ϵ is plotted. The fractal dimension D can be calculated using the following formula: The higher the fractal dimension, the greater the complexity of the data, because it represents the level of detail in which the data fills space. The fractal dimension can be directly used as the computational complexity of side channel quantum analysis data: C(X)=D. If the fractal dimension of a side channel quantum analysis data is high, its computational complexity is also high because it contains more detail and variations.
[0078] S340 determines the resource scheduling information for the side-channel analysis data based on the computational complexity of each side-channel sub-analysis data.
[0079] Understandably, assessing computational complexity provides a basis for the effective allocation of resources, ensuring that different computational tasks can be completed efficiently in an appropriate resource environment. Computational complexity reflects the amount of resources required for side-channel subanalysis data processing, including time and space complexity. Based on computational complexity, appropriate computational resources can be allocated to each side-channel subanalysis dataset. Resource scheduling information can include specifying the type of computing unit used (such as GPU or CPU), the amount of memory required, and pre-calculation of execution time, ensuring that high-complexity tasks receive sufficient computational power under limited resource conditions, thereby avoiding performance bottlenecks caused by insufficient resources.
[0080] Optionally, S340, based on the computational complexity of each side-channel sub-analysis data, determines the resource scheduling information for the side-channel analysis data, including:
[0081] S341, Based on the computational complexity of each side channel sub-analysis data, determine the resource requirement information for each side channel sub-analysis data.
[0082] Resource requirement information refers to a detailed description and quantifiable metrics of the various resources needed to ensure the smooth execution of a computational or data processing task. Based on the computational complexity of each side channel sub-analysis data point, various allocation methods can be employed to determine the resource requirement information for each side channel sub-analysis data point, aiming to optimize resource utilization and improve computational efficiency. These methods may include static allocation methods, dynamic allocation methods, priority scheduling methods, etc.
[0083] For example, static allocation is a direct resource allocation method. In static allocation, a fixed number of resources are allocated before the task begins, based on the estimated computational complexity of each side channel sub-analysis data. Each task receives a certain number of computing cores and memory based on its complexity. For instance, if a sub-analysis data has higher complexity, more GPU cores and memory are allocated to it.
[0084] Dynamic resource allocation methods monitor resource usage in real time during computation and adjust resource allocation dynamically based on actual needs. For example, if a side channel sub-analysis data exhibits high computational demands during execution, its allocated resources can be automatically increased. Dynamic allocation relies on real-time monitoring and scheduling algorithms, enabling it to more effectively respond to changes in computational load.
[0085] Priority scheduling methods allocate resources based on the computational complexity of each side channel sub-analysis data, assigning a positive correlation between the computational priority and importance. Higher-priority tasks receive resources first, ensuring that critical analyses can be completed within the specified time. Priority scheduling methods are often used in conjunction with dynamic allocation to ensure that important tasks still receive sufficient computational resources under heavy loads.
[0086] Load balancing methods analyze the load of each computing unit and distribute tasks evenly across multiple units, preventing one unit from being overloaded while another is idle. Load balancing can be achieved using scheduling algorithms (such as round-robin scheduling, least connections scheduling, etc.) to ensure that the resources of each computing unit are used efficiently.
[0087] S342, based on the resource requirement information of each side channel sub-analysis data, allocates a preset heterogeneous computing unit to the resource requirement information of each side channel sub-analysis data to obtain the resource matching information of each side channel sub-analysis data; wherein, the heterogeneous computing unit includes GPU.
[0088] Heterogeneous computing units refer to different types of processing units, including central processing units (CPUs), graphics processing units (GPUs), digital signal processors (DSPs), and other dedicated hardware units. Each computing unit has different architectures and performance characteristics, suitable for specific types of tasks. For example, GPUs excel at handling massive parallel computations, making them particularly suitable for complex mathematical operations and data parallel processing, while CPUs are better suited for executing control logic and serial computation tasks. Based on the resource requirements of each side-channel subanalysis data point, including computing power, memory requirements, storage requirements, and bandwidth requirements, the available heterogeneous computing units can be identified to meet these needs. For example, if a side-channel subanalysis data point requires high computing power and parallel processing capabilities, a GPU might be prioritized; if a task requires complex control logic, a CPU might be prioritized. Based on the resource requirements and available heterogeneous computing units, each side-channel subanalysis data point is assigned to a suitable computing unit, generating resource matching information for each side-channel subanalysis data point, specifying the specific computing unit and its configuration used for each task.
[0089] S343, summarize the resource matching information of all side channel sub-analysis data, and determine the resource scheduling information of the side channel analysis data.
[0090] Resource matching information refers to the computing units allocated to each side-channel subanalysis dataset, the required computing resources, and related configuration parameters. This information can include not only the type of computing unit used (e.g., CPU or GPU) but also specific resource allocations such as memory size, number of processing cores, and computing frequency. During the aggregation process, the resource matching information for each side-channel subanalysis dataset can be integrated, collecting all individual resource allocation details to form a comprehensive resource scheduling table. This table details the computing unit allocation, expected computation time, required storage space, and other resource requirements for each side-channel subanalysis dataset. Aggregating resource matching information allows for the identification of overall resource utilization, ensuring that all computing units are used efficiently while avoiding resource conflicts and redundant allocations. For example, if multiple subanalysis datasets are allocated to the same GPU with limited computing power, it may lead to performance bottlenecks. Therefore, aggregating this information can help adjust resource allocation strategies, optimize the load on each computing unit, and ensure efficient computation.
[0091] S400 uses resource scheduling information based on side channel analysis data to perform side information leakage detection on the side channel analysis data and determines the side information leakage detection result of the sample under test.
[0092] It is understandable that by obtaining resource scheduling information, computing resources can be rationally allocated and utilized to perform efficient side-channel information leakage detection. During side-channel information leakage detection, specific detection algorithms can be applied to identify possible leakage patterns based on the characteristics of each side-channel sub-analysis data. This may include correlation analysis, statistical testing, etc., to assess whether there are features related to sensitive information in the side-channel data. By combining different analysis techniques, the information that the sample under test may leak during operation can be comprehensively evaluated. A holistic detection result is formed by comprehensively analyzing the detection results executed by various heterogeneous computing units. By optimizing task allocation and data transmission mechanisms, the detection results of the sample under test can be determined quickly, accurately, and intuitively, thus improving detection efficiency.
[0093] In one possible implementation, S400, based on resource scheduling information from the side-channel analysis data, performs side-information leakage detection on the side-channel analysis data to determine the side-information leakage detection result of the sample under test, including:
[0094] S410, based on the resource scheduling information of the side channel analysis data, allocates each side channel sub-analysis data to a preset heterogeneous computing unit.
[0095] It is understandable that resource scheduling information can include a mapping table or decision rules to quickly determine which computing unit each sub-analysis data should be allocated to, ensuring that each sub-analysis data can complete its analysis task in the best computing environment, thereby improving the overall detection performance and response speed.
[0096] S420 performs side information leakage detection on the allocated side channel sub-analysis data on each preset heterogeneous computing platform to obtain the heterogeneous computing results corresponding to each preset heterogeneous computing unit.
[0097] It is understandable that heterogeneous computing platforms typically consist of different types of computing units, such as CPUs, GPUs, and FPGAs, each with different computing capabilities and characteristics. By utilizing these heterogeneous computing resources, complex datasets can be processed more efficiently. Each side-channel sub-analysis data can be fed into its corresponding computing unit, where optimized computation is performed based on the unit's processing capabilities and characteristics. Each computing unit independently executes side-channel leakage detection algorithms, employing techniques such as statistical analysis, pattern recognition, and correlation calculation to identify potential side-channel leaks. The computing units process data in parallel, significantly improving processing efficiency and reducing overall computation time. The heterogeneous computing results for each preset heterogeneous computing unit are output in data form. These results provide the foundational data for subsequent aggregation and decision-making, facilitating a comprehensive assessment of the safety and potential risks of the tested samples.
[0098] Optionally, in step S420, side information leakage detection is performed on the allocated side channel sub-analysis data on each preset heterogeneous computing platform to obtain the heterogeneous computing results corresponding to each preset heterogeneous computing unit, including:
[0099] S421, perform correlation calculation on the allocated side channel sub-analysis data on each preset heterogeneous computing platform to determine the correlation data of the side channel sub-analysis data allocated on each preset heterogeneous computing platform.
[0100] It is understandable that the main purpose of correlation calculation is to analyze the relationships between side-channel sub-analysis data allocated to each pre-defined heterogeneous computing platform. This is achieved by calculating correlations (see [link to relevant documentation]). Figure 5 This method can determine how different side-channel quantum analysis data influence or correlate with each other, thereby identifying potential information leakage paths. Statistical methods, such as Pearson correlation coefficient and Spearman rank correlation coefficient, can be used to quantify the correlation between different datasets. When calculating correlation, statistical software or programming tools (such as Python, R, etc.) can be used to perform correlation analysis and generate a correlation matrix, showing the relationships between different data. High correlation values usually indicate a strong dependency between data, which may suggest potential security vulnerabilities.
[0101] S422, perform statistical tests on the correlation data of the side channel sub-analysis data allocated to each preset heterogeneous computing platform to obtain the heterogeneous computing results corresponding to each preset heterogeneous computing unit.
[0102] It is understandable that statistical tests are performed on the correlation data of the side-channel quantum analysis data allocated to each pre-defined heterogeneous computing platform to verify the significance of the correlation calculation results. Hypothesis testing methods, such as t-tests and analysis of variance (ANOVA), can be used to determine whether the correlation is statistically significant, thereby ensuring the reliability of the detection results. Through statistical tests, it is possible to identify which correlations are accidental and which are of practical significance.
[0103] S430 summarizes the heterogeneous computing results corresponding to each preset heterogeneous computing unit to determine the side information leakage detection result of the sample under test.
[0104] It is understandable that the computation results returned by each heterogeneous computing unit (such as GPU, FPGA, etc.) can be aggregated and centralized, including different detection indicators, such as the correlation of side-channel data, leakage probability assessment, and statistical test results. The heterogeneous computation results corresponding to each preset heterogeneous computing unit are organized in a unified format to ensure effective integration of data between different computing units. After aggregating the heterogeneous computation results corresponding to the heterogeneous computing units, the aggregated results can be comprehensively analyzed to generate the side-channel information leakage detection results of the sample under test.
[0105] Optionally, S430, the heterogeneous computing results corresponding to each preset heterogeneous computing unit are summarized to determine the side information leakage detection results of the sample under test, including:
[0106] S431, receive the heterogeneous calculation results corresponding to each preset heterogeneous calculation unit, and summarize all heterogeneous calculation results to obtain the summary heterogeneous calculation results of the sample to be tested.
[0107] It is understandable that each pre-defined heterogeneous computing unit, after determining the corresponding heterogeneous computing result, can transmit the data back to the CPU. The CPU can receive the computing results from each heterogeneous computing unit, which may include correlation analysis of side-channel data, probability assessment of leakage, etc., and generate and store these summarized results in a centralized data structure to facilitate subsequent decision support and report generation.
[0108] S432, perform threshold detection on the heterogeneous calculation summary results of the sample to be tested to determine the leakage locations of all side information corresponding to the heterogeneous calculation summary results.
[0109] It is understandable that threshold detection can set a predefined threshold (see [link]). Figure 6This threshold is used to determine whether the correlation in the heterogeneous computing aggregation results exceeds a certain critical point. By comparing each data point in the heterogeneous computing aggregation results with the threshold, locations considered to be sources of information leakage are identified. These leakage locations may point to potential sources of sensitive information, thus providing important clues for subsequent security analysis.
[0110] S433, based on all side information leakage locations corresponding to the heterogeneous computing summary results, determine the side information leakage detection results of the sample to be tested.
[0111] Understandably, based on the leakage locations identified in the heterogeneous computing summary results, in-depth analysis can be conducted to determine which locations actually contain side information leaks. According to the analysis results, the side information leakage detection results of the tested samples can be categorized into different risk levels. These levels can be high, medium, or low risk, or specific numerical scores, which helps to quickly assess the safety status of the samples.
[0112] For example, S433, based on all side information leakage locations corresponding to the heterogeneous computing summary results, the side information leakage detection results of the sample to be tested are determined, including:
[0113] S4331, based on all side information leakage locations corresponding to the heterogeneous calculation summary results, determine the side information leakage risk assessment value of the sample to be tested.
[0114] It is understandable that in determining the risk assessment value of side information leakage based on the number of leakage locations, the number of all identified leakage locations can be counted, denoted as N. Then, several thresholds are set to classify the risk level: no leakage locations are considered low risk (risk assessment value 0), A to B leakage locations are considered medium risk (risk assessment value 1), and B or more leakage locations are considered high risk (risk assessment value 2). Through statistical analysis, the risk assessment of the sample under test can be quickly obtained, which is helpful in judging its safety and taking corresponding safety measures.
[0115] S4332, based on the side information leakage risk assessment value of the sample to be tested, obtain the side information leakage risk detection level of the sample to be tested, and determine the side information leakage risk detection level as the side information leakage detection result of the sample to be tested.
[0116] It is understandable that a definite risk assessment value for side information leakage is used to determine the risk detection level of the sample under test. Risk detection levels can be divided into several grades, such as low, medium, high, and extremely high. For example, a risk assessment value of 0 might indicate low risk; 1 indicates medium risk; and 2 or higher indicates high or extremely high risk. After determining the risk detection level, the side information leakage risk detection level is output along with the test data as the final test result for the sample, resulting in a simplified and easily understandable risk level. By optimizing task allocation and data transmission mechanisms, the test results for the sample can be determined quickly, accurately, and intuitively, improving testing efficiency.
[0117] Corresponding to the heterogeneous computing-based side information leakage detection method in the above embodiments, this application also provides a heterogeneous computing-based side information leakage detection system, in which each unit can implement each step of the heterogeneous computing-based side information leakage detection method. Figure 7 The diagram shows a structural block diagram of a side information leakage detection system based on heterogeneous computing provided in an embodiment of this application. For ease of explanation, only the parts related to the embodiments of this application are shown.
[0118] Reference Figure 7 The side information leakage detection system based on heterogeneous computing includes:
[0119] The identification unit is used to identify the sample to be tested and control the data acquisition device to acquire data from the sample to obtain the initial side channel information of the sample to be tested.
[0120] The processing unit performs data processing on the initial side channel information of the sample under test to obtain the side channel analysis data of the sample under test.
[0121] The scheduling unit receives input information and performs data segmentation on the side-channel analysis data of the sample under test based on the input information to determine resource scheduling information for the side-channel analysis data; wherein, the resource scheduling information is used for data allocation for heterogeneous computing of the side-channel analysis data;
[0122] The result unit uses the resource scheduling information based on the side channel analysis data to perform side information leakage detection on the side channel analysis data, and determines the side information leakage detection result of the sample under test.
[0123] It should be noted that the information interaction and execution process between the above systems / units are based on the same concept as the method embodiments of this application. For details on their specific functions and technical effects, please refer to the method embodiments section, and they will not be repeated here.
[0124] Those skilled in the art will clearly understand that, for the sake of convenience and brevity, the above-described division of functional units and modules is merely an example. In practical applications, the above functions can be assigned to different functional units and modules as needed, that is, the internal structure of the system can be divided into different functional units or modules to complete all or part of the functions described above. The functional units and modules in the embodiments can be integrated into one processing unit, or each unit module can exist physically separately, or two or more unit modules can be integrated into one unit. The integrated unit can be implemented in hardware or as a software functional unit. Furthermore, the specific names of the functional units and modules are only for easy differentiation and are not intended to limit the scope of protection of this application. The specific working process of the units and modules in the above system can be referred to the corresponding process in the foregoing method embodiments, and will not be repeated here.
[0125] This application also provides a side information leakage detection device based on heterogeneous computing. Figure 8 This is a schematic diagram of the structure of a side information leakage detection device based on heterogeneous computing, provided as an embodiment of this application. Figure 8 As shown, the heterogeneous computing-based side information leakage detection device 6 of this embodiment includes: at least one processor 60 ( Figure 8 Only one is shown in the image), at least one memory 61 ( Figure 8 (Only one is shown in the image) and a computer program 62 stored in the at least one memory 61 and executable on the at least one processor 60. When the processor 60 executes the computer program 62, it causes the heterogeneous computing-based side information leakage detection device 6 to implement the steps in any of the above-described heterogeneous computing-based side information leakage detection method embodiments, or causes the heterogeneous computing-based side information leakage detection device 6 to implement the functions of each unit in the above-described system embodiments.
[0126] For example, the computer program 62 may be divided into one or more units, which are stored in the memory 61 and executed by the processor 60 to complete this application. The one or more units may be a series of computer program instruction segments capable of performing a specific function, which describe the execution process of the computer program 62 in the heterogeneous computing-based side information leakage detection 6.
[0127] The heterogeneous computing-based side-channel information leakage detection device 6 can be a computing device or terminal device such as a desktop computer, laptop, handheld computer, or cloud server. This heterogeneous computing-based side-channel information leakage detection device may include, but is not limited to, a processor 60 and a memory 61. Those skilled in the art will understand that... Figure 8This is merely an example of a heterogeneous computing-based side information leakage detection device 6 and does not constitute a limitation on the heterogeneous computing-based side information leakage detection device 6. It may include more or fewer components than shown in the figure, or combine certain components, or different components, such as input / output devices, network access devices, buses, etc.
[0128] The processor 60 can be a Central Processing Unit (CPU), or it can be other general-purpose processors, digital signal processors (DSPs), application-specific integrated circuits (ASICs), field-programmable gate arrays (FPGAs), or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc. The general-purpose processor can be a microprocessor or any conventional processor.
[0129] In some embodiments, the memory 61 may be an internal storage unit of the heterogeneous computing-based side-channel leakage detection device 6, such as a hard disk or memory. In other embodiments, the memory 61 may be an external storage device of the heterogeneous computing-based side-channel leakage detection device 6, such as a plug-in hard disk, SmartMedia Card (SMC), Secure Digital (SD) card, or Flash Card equipped on the heterogeneous computing-based side-channel leakage detection device 6. Furthermore, the memory 61 may include both internal storage units and external storage devices. The memory 61 is used to store operating systems, applications, bootloaders, data, and other programs, such as the program code of computer programs. The memory 61 can also be used to temporarily store data that has been output or will be output.
[0130] This application also provides a computer-readable storage medium storing a computer program that, when executed by a processor, implements the steps in any of the above method embodiments.
[0131] This application provides a computer program product that, when run on a heterogeneous computing-based side information leakage detection device, enables the heterogeneous computing-based side information leakage detection device to implement the steps in any of the above method embodiments.
[0132] If the integrated unit is implemented as a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, all or part of the processes in the methods of the above embodiments of this application can be implemented by a computer program instructing related hardware. The computer program can be stored in a computer-readable storage medium, and when executed by a processor, it can implement the steps of the various method embodiments described above. The computer program includes computer program code, which can be in the form of source code, object code, executable files, or certain intermediate forms. The computer-readable medium can include at least: any entity or device capable of carrying computer program code to a heterogeneous computing-based side-channel information leakage detection device, a recording medium, a computer memory, a read-only memory (ROM), a random access memory (RAM), an electrical carrier signal, a telecommunication signal, and a software distribution medium. Examples include USB flash drives, portable hard drives, magnetic disks, or optical disks. In some jurisdictions, according to legislation and patent practice, computer-readable media cannot be electrical carrier signals or telecommunication signals.
[0133] In the above embodiments, the descriptions of each embodiment have different focuses. For parts that are not described in detail or recorded in a certain embodiment, please refer to the relevant descriptions of other embodiments.
[0134] Those skilled in the art will recognize that the units and algorithm steps of the various examples described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, or a combination of computer software and electronic hardware. Whether these functions are implemented in hardware or software depends on the specific application and design constraints of the technical solution. Those skilled in the art can use different methods to implement the described functions for each specific application, but such implementation should not be considered beyond the scope of this application.
[0135] In the embodiments provided in this application, it should be understood that the disclosed heterogeneous computing-based side-channel information leakage detection system / device and method can be implemented in other ways. For example, the embodiments of the heterogeneous computing-based side-channel information leakage detection system / device described above are merely illustrative. For instance, the division of units is only a logical functional division, and in actual implementation, there may be other division methods. For example, multiple units or components may be combined or integrated into another system, or some features may be ignored or not executed. Furthermore, the displayed or discussed mutual coupling or direct coupling or communication connection may be an indirect coupling or communication connection through some interfaces, devices, or units, and may be electrical, mechanical, or other forms.
[0136] The units described as separate components may or may not be physically separate. The components shown as units may or may not be physical units; that is, they may be located in one place or distributed across multiple network units. Some or all of the units can be selected to achieve the purpose of this embodiment according to actual needs.
[0137] The above-described embodiments are only used to illustrate the technical solutions of this application, and are not intended to limit them. Although this application has been described in detail with reference to the foregoing embodiments, those skilled in the art should understand that modifications can still be made to the technical solutions described in the foregoing embodiments, or equivalent substitutions can be made to some of the technical features. Such modifications or substitutions do not cause the essence of the corresponding technical solutions to deviate from the spirit and scope of the technical solutions of the embodiments of this application, and should all be included within the protection scope of this application.
Claims
1. A side information leakage detection method based on heterogeneous computing, characterized in that: include: Identify the sample to be tested, and control the data acquisition device to collect data on the sample to be tested, so as to obtain initial side channel information of the sample to be tested; Performing data processing on the initial side channel information of the sample to be tested to obtain side channel analysis data of the sample to be tested; receiving input information, performing data segmentation on the side channel analysis data of the sample to be tested according to the input information, and determining resource scheduling information of the side channel analysis data; wherein the resource scheduling information is used for data allocation for heterogeneous computing of the side channel analysis data; Based on the resource scheduling information of the side channel analysis data, performing side information leakage detection on the side channel analysis data to determine a side information leakage detection result of the sample to be tested; The receiving of input information, performing data segmentation on the side channel analysis data of the sample to be tested according to the input information, and determining resource scheduling information of the side channel analysis data include: receiving input information, dividing the side channel analysis data of the sample to be tested according to the input information, and determining the starting and ending positions of a curve of the side channel analysis data; Based on the start and end positions of the curve of the side channel analysis data, segmenting the side channel analysis data of the sample to be tested to obtain a plurality of side channel sub-analysis data; Calculating data features for each of the side channel sub-analysis data, and determining the computational complexity of each of the side channel sub-analysis data; Determining resource scheduling information of the side channel analysis data according to the computational complexity of each of the side channel sub-analysis data; Calculating data features for each of the side channel sub-analysis data and determining the computational complexity of each of the side channel sub-analysis data includes: A fractal dimension is calculated for each side channel sub-analysis data, and the fractal dimension is determined as the computational complexity of each side channel sub-analysis data.
2. The side information leakage detection method based on heterogeneous computing according to claim 1, characterized in that: Before collecting data on the sample to be tested, the method further includes: Receive sampling configuration information of the sample to be tested; wherein the sampling configuration information is used to determine parameters for data collection of the sample to be tested; Based on the sampling configuration information of the sample to be tested, setting the data acquisition parameters of the sample to be tested; The step of identifying the sample to be tested and controlling a data acquisition device to collect data on the sample to be tested to obtain initial side channel information of the sample to be tested includes: Identify the sample to be tested, and control the data acquisition device to collect data on the sample to be tested according to the data acquisition parameters of the sample to be tested to obtain initial side channel information of the sample to be tested.
3. The side information leakage detection method based on heterogeneous computing according to claim 1, characterized in that: The performing data processing on the initial side channel information of the sample to be tested to obtain the side channel analysis data of the sample to be tested includes: filtering the initial side channel information of the sample to be tested to obtain first side channel analysis data of the sample to be tested; Static alignment is performed on the first side channel analysis data of the sample to be tested to obtain second side channel analysis data of the sample to be tested; Based on the second side channel analysis data of the sample to be tested, the side channel analysis data of the sample to be tested is obtained.
4. The side information leakage detection method based on heterogeneous computing according to claim 3 is characterized in that: The obtaining the side channel analysis data of the sample to be tested based on the second side channel analysis data of the sample to be tested comprises: Resampling based on the second side channel analysis data of the sample to be tested to obtain third side channel analysis data of the sample to be tested; The third side channel analysis data of the sample to be tested is converted into a data format to obtain the side channel analysis data of the sample to be tested.
5. The side information leakage detection method based on heterogeneous computing according to claim 1, characterized in that: The determining, according to the computational complexity of each of the side channel sub-analysis data, resource scheduling information of the side channel analysis data comprises: Determining resource requirement information of each of the side channel sub-analysis data according to the computational complexity of each of the side channel sub-analysis data; Based on the resource requirement information of each of the side channel sub-analysis data, a preset heterogeneous computing unit is allocated to the resource requirement information of each of the side channel sub-analysis data to obtain resource matching information of each of the side channel sub-analysis data; wherein the heterogeneous computing unit includes a GPU; The resource matching information of all the side channel sub-analysis data is aggregated to determine the resource scheduling information of the side channel analysis data.
6. The side information leakage detection method based on heterogeneous computing according to claim 5, characterized in that: The performing side information leakage detection on the side channel analysis data based on the resource scheduling information of the side channel analysis data to determine the side information leakage detection result of the sample to be tested includes: Based on the resource scheduling information of the side channel analysis data, each of the side channel sub-analysis data is allocated to a preset heterogeneous computing unit; Performing side information leakage detection on the allocated side channel sub-analysis data on each preset heterogeneous computing platform to obtain a heterogeneous computing result corresponding to each preset heterogeneous computing unit; The heterogeneous computing results corresponding to each preset heterogeneous computing unit are summarized to determine the side information leakage detection result of the sample to be tested.
7. The side information leakage detection method based on heterogeneous computing according to claim 6 is characterized in that: The performing side information leakage detection on the allocated side channel sub-analysis data on each preset heterogeneous computing platform to obtain a heterogeneous computing result corresponding to each preset heterogeneous computing unit includes: Performing correlation calculation on the allocated side channel sub-analysis data on each preset heterogeneous computing platform to determine correlation data of the side channel sub-analysis data allocated by each preset heterogeneous computing platform; A statistical test is performed on the correlation data of the side channel sub-analysis data allocated to each preset heterogeneous computing platform to obtain a heterogeneous computing result corresponding to each preset heterogeneous computing unit.
8. The side information leakage detection method based on heterogeneous computing according to claim 7 is characterized in that: The step of aggregating the heterogeneous computing results corresponding to each preset heterogeneous computing unit to determine the side information leakage detection result of the sample to be tested includes: Receiving the heterogeneous computing result corresponding to each preset heterogeneous computing unit, and summarizing all the heterogeneous computing results to obtain the heterogeneous computing summary result of the sample to be tested; Performing threshold detection on the heterogeneous computing summary result of the sample to be tested, and determining all side information leakage locations corresponding to the heterogeneous computing summary result; Based on all the side information leakage locations corresponding to the heterogeneous computing summary results, the side information leakage detection result of the sample to be tested is determined.
9. The side information leakage detection method based on heterogeneous computing according to claim 8, characterized in that: The determining the side information leakage detection result of the sample to be tested based on all the side information leakage positions corresponding to the heterogeneous computing summary result includes: Determine a side information leakage risk assessment value of the sample to be tested based on all side information leakage locations corresponding to the heterogeneous computing summary result; According to the side information leakage risk evaluation value of the sample to be tested, the side information leakage risk detection level of the sample to be tested is obtained, and the side information leakage risk detection level is determined as the side information leakage detection result of the sample to be tested.
Citation Information
Patent Citations
SGX side channel attack defense method and system, medium, program and application
CN111865909A
Chip electromagnetic side channel analysis method and system and storage medium
CN116260565A