Onion network-oriented cross-website-domain small sample website fingerprint identification method
Through the small sample website fingerprint recognition method across website domains, the pre-training strategy of feature alignment and domain adversarial training and the fine-tuning strategy of the dual attention module are utilized to solve the problem of identifying onion websites in cross-domain scenarios, and achieve efficient website fingerprint recognition and cyberspace security protection.
Patent Information
- Application Number
- CN202510970156.0
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-07-15
- Publication Date
- 2025-10-14
AI Technical Summary
Existing small-sample website fingerprint recognition methods face problems such as poor model generalization ability, inability to effectively handle cross-domain differences, and lack of information support for single-dimensional traffic representation in cross-domain scenarios. In particular, it is difficult to adapt to the anonymity and complexity of onion websites.
A pre-training strategy based on feature alignment and domain adversarial training and a fine-tuning strategy based on a dual-attention module are adopted. Through a multi-scale feature extractor and a composite loss function, cross-domain traffic representation and feature alignment are achieved, and fine-tuning is performed in combination with the dual-attention module to improve the model's adaptability.
It achieves accurate recognition of onion websites under cross-domain small sample conditions, improves pre-training efficiency and recognition accuracy after migration, and has good practical application value and robustness.
Smart Images

Figure CN120785604A_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the fields of cyberspace security supervision and governance, and anonymous communication network traffic identification in a big data environment. Specifically, it is applied to website traffic fingerprint identification in anonymous communication networks represented by The Onion Router (Tor), providing a technical basis for governing anonymous communication networks and ensuring cyberspace security. Background Art
[0002] With growing awareness of cybersecurity and the increasing demand for personal privacy, internet users are increasingly adopting anonymous communication tools. The Onion Router (Tor) is the most prominent example of this. According to official data, Tor is currently the world's most popular anonymous communication system, with over 8,000 relay nodes and 700,000 users. Through its unique onion routing technology and a network of relays built by volunteers worldwide, Tor allows users to browse the web anonymously, effectively evading censorship and traffic tracking. Tor's multi-layered encryption and randomized routing strategy significantly obfuscate communication traffic, making it difficult to effectively monitor and review intermediate links. However, while Tor provides anonymous access, it also unfortunately facilitates some illegal activities, posing significant challenges to cybercrime tracing, evidence collection, and law enforcement. In recent years, researchers have begun to delve into Tor's vulnerabilities. While Tor uses multiple layers of encryption to protect the confidentiality of communications, some traffic information, such as timestamps, packet direction, and length, cannot be completely hidden. Therefore, traffic traces generated by visiting the same website will contain similar transmission behavior patterns, allowing valuable information to be analyzed from a side-channel perspective. This is often referred to as website fingerprinting (WF). Website fingerprinting involves regulators monitoring traffic between clients and entry nodes and using a pre-learned knowledge base to infer the content of the websites visited by users. Currently, website fingerprinting of anonymous network traffic is widely recognized by domestic and international industry and academia as a key means of achieving effective governance.
[0003] Traditional website fingerprinting methods focus on improving accuracy. After evolving from machine learning based on manual feature extraction to deep learning, which enables automated feature extraction, traditional website fingerprinting methods have become relatively mature under idealized assumptions. However, traditional website fingerprinting attack methods based on deep learning still face numerous challenges. To effectively identify emerging website categories, models often rely on repetitive training using large, annotated datasets. This not only exponentially increases the time and storage costs of data acquisition, but also exacerbates computational redundancy during model iteration. In recent years, the introduction of small-shot learning methods has somewhat alleviated the reliance of website fingerprinting attacks on large amounts of data. However, existing research generally assumes that the data distribution during pre-training and testing is consistent across the same domain. Crucially, both pre-training and testing datasets are from surface websites, and never from onion sites. In reality, onion sites, as a crucial component of the dark web, are more anonymous and difficult to track, posing a correspondingly greater threat. Furthermore, onion site operators often employ temporary offline strategies to evade detection and law enforcement, further complicating the acquisition of relevant traffic data. In contrast, the traffic data of surface websites is relatively abundant, which further highlights the urgent need for cross-domain learning methods from surface websites to onion websites. Although some results have been achieved in small-sample website fingerprint recognition, there are still three problems: (1) Existing website fingerprint recognition methods have never considered the differences between surface websites and onion websites, and mostly use a single-dimensional traffic representation method. However, the scale of onion websites is usually small, and the single-dimensional traffic representation lacks sufficient information to support cross-domain migration; (2) Existing methods usually only use a single classification loss function for training, lack a special design for the domain shift problem, and cannot effectively handle the distribution difference between the source domain and the target domain, resulting in poor generalization ability of the model during cross-domain migration and a significant decrease in recognition performance; (3) The feature extractors of existing methods all use a single-scale convolutional layer, which cannot adapt to the differences in traffic sequence length caused by cross-domain migration.
[0004] In response to the above challenges, the present invention proposes a cross-domain small sample website fingerprint identification method. This method can realize website fingerprint identification under the condition of cross-domain small samples. It can not only effectively cope with the variability and complexity of anonymous communication networks, but also improve the pre-training efficiency and post-migration accuracy of website fingerprint identification. This method includes a pre-training strategy based on feature alignment and domain adversarial training and a fine-tuning strategy based on a dual attention module. It solves the limitations of traditional single-dimensional traffic representation that cannot fully describe website characteristics, the problem of data distribution differences between source and target domains, and the problem of small sample learning difficulties, thereby achieving continuous adaptation and identification of website fingerprints in the Tor network, providing strong technical support for the governance of anonymous communication networks and the protection of cyberspace security. Summary of the Invention
[0005] This invention aims to solve the problems of existing small sample website fingerprint recognition methods and proposes a cross-domain small sample website fingerprint recognition method to meet the needs of cross-domain scenarios and accurately identify new target websites with a very small number of samples. Figure 1 As shown in the figure, this method is divided into two main steps: designing a pre-training strategy based on feature alignment and domain adversarial training, and designing a fine-tuning strategy based on a dual attention module.
[0006] S1: Design a pre-training strategy based on feature alignment and domain adversarial training. To enable the model to universally recognize traffic data from different domains, pre-training is required. The specific process consists of four steps: cross-domain traffic representation design, multi-scale feature extractor design, composite loss function design, and feature extractor pre-training.
[0007] S11: Cross-domain traffic characterization design. This process is divided into three steps: extracting multi-dimensional packet information, normalizing TCP payload size, and constructing a three-channel matrix structure.
[0008] (1) Extracting multi-dimensional packet information. As shown in Algorithm 1, bidirectional flows are extracted from each PCAP file based on the five-tuple. Each packet in the bidirectional flow is processed in turn to extract the packet direction, TCP payload size, and relative arrival time. The website URL corresponding to the bidirectional flow is also extracted as a label.
[0009] (2) Normalize the TCP payload size. The TCP payload size is much higher than the order of magnitude of the packet direction and relative arrival time, which will cause the model to offset during training. Therefore, it is normalized. As shown in formula (1), mean-variance normalization is used, x i represents the original data point, z i represents the standardized result, μ is the mean value of all data points, and σ is the standard deviation of all data points.
[0010]
[0011] (3) Construct a three-channel matrix structure. The three characteristic sequences mentioned above are stacked to construct a multi-channel traffic matrix (MCTM). Figure 2 As shown in Figure 1, the length of each feature sequence is fixed to L, sequences that are too long are truncated, and sequences that are too short are padded with zeros to make all samples of the same length.
[0012]
[0013]
[0014] S12: Multi-scale feature extractor design. In order to improve the model's ability to perceive traffic features of different granularities, a feature extractor that supports multi-scale feature extraction is designed. Figure 3 As shown in , the feature extractor is based on the Dual-Attention Enhanced Multiscale Convolutional Module (DAMC). Figure 4 As shown in Figure 3, the specific process is divided into three steps: designing an adaptive multi-scale convolution structure, designing a feature map level attention enhancement mechanism, and designing a channel level attention enhancement mechanism.
[0015] (1) Designing an adaptive multi-scale convolutional structure. To support cross-domain migration, the method of the present invention uses adaptive multi-scale feature extraction. The specific process is divided into the following three steps: calculating the dynamic convolution kernel size, designing a parallel convolutional structure, and constructing an auxiliary channel.
[0016] a) Calculate the dynamic convolution kernel size. Based on the length L of the input traffic feature sequence, dynamically set multiple convolution kernels of different sizes to construct N parallel one-dimensional convolution channels. The first convolution kernel size is set to L / 10, and the remaining convolution kernel sizes are reduced by 1 / 2 in sequence.
[0017] b) Design a parallel convolution structure. Construct N parallel convolution layers based on the convolution kernel size calculated in step a), and set the output sequence length of all convolution layers to be constant. Each layer outputs a sequence with C out The feature maps of the channels are generated by N parallel convolutional layers.
[0018] c) Constructing auxiliary channels: A supplementary structure consisting of a pooling layer and a 1×1 convolution is introduced to further generate a feature map, which together with the N feature maps forms a multi-scale feature set to enhance the receptive field and feature diversity.
[0019] (2) Design a feature map-level attention enhancement mechanism. In order to achieve multi-scale feature weighted fusion and selective enhancement of the extracted feature maps, as shown in Algorithm 2, the specific process is divided into the following three steps: feature vectorization, scale attention modeling, and weighted fusion.
[0020] a) Feature vectorization. Use global average pooling operation to vectorize the feature map set F = {f1,…,f N+1} is transformed into a vector set V = {v1,…,v N+1}, which is used for subsequent modeling of weight relationships between scales.
[0021] b) Scale Attention Modeling: A multi-head attention mechanism is used to model the importance of feature maps at each scale, and the weights of feature maps at different scales are automatically learned through multiple parallel attention heads.
[0022] c) Weighted fusion: Use the learned weights to weight the original feature maps, highlight the key feature maps, suppress redundant information, and achieve effective fusion of multi-scale features.
[0023] (3) Design a channel-level attention enhancement mechanism. Dynamically adjust the channel weights of the fused multi-scale feature maps to improve the model's ability to focus on key channels. The specific process is divided into the following four steps: feature splicing, global information aggregation, channel dependency modeling, and weighted reconstruction.
[0024] a) Feature concatenation: All feature maps are concatenated along the channel dimension to form a fused feature matrix.
[0025] b) Global information aggregation: Compress each channel into a single value to achieve global information aggregation for each channel.
[0026] c) Channel dependency modeling: A two-layer fully connected network is used to model the inter-channel dependency relationship, first reducing the dimensionality and then increasing it to implement activation function modeling and generate the channel attention weight vector.
[0027] d) Weighted reconstruction. The attention vector channel weights are applied to the original fusion feature matrix to complete channel weighting, thereby enhancing important channels and suppressing irrelevant channels.
[0028]
[0029] S13: Composite Loss Function Design. To enable the feature extractor to learn domain-invariant feature embeddings during pre-training, a domain-adaptive composite loss function was designed by combining classification loss, feature distribution difference loss, and domain adversarial loss. This process is divided into four steps: calculating the classification loss, calculating the feature distribution difference loss, calculating the domain adversarial loss, and weighted fusion of the losses.
[0030] (1) Calculate the classification loss. Classification loss L class It is used to minimize the classification error of labeled samples in the source domain and ensure the discrimination ability of the model on the source domain data. As shown in formula (2), by compressing the distance between the feature embeddings of samples of the same class and expanding the distance between the feature embeddings of samples of different classes, the compactness of intra-class features and the difference of inter-class features are enhanced. Where |B| represents the batch size, y i represents the true category label of the i-th sample, Represents the feature embedding vector x of the i-th sample i Its true category y i The corresponding weight vector The angle between them, s is the scaling factor, m is the penalty parameter, θ j Represents the angle between the input feature and the category center weight vector.
[0031]
[0032] (2) Calculate the feature distribution difference loss. In order to measure and reduce the distribution difference of sample features between the source domain and the target domain and achieve feature alignment, the maximum mean difference is used to calculate the similarity within the source domain, the similarity within the target domain, and the cross-domain similarity, and construct the feature distribution difference loss L MMD The calculation process is shown in formula (3), where p represents the number of kernel functions, ω p represents the weight of the p-th kernel function, They represent the similarity within the source domain, the similarity within the target domain, and the similarity between the source and target domains, respectively.
[0033]
[0034] (3) Calculate domain adversarial loss. In order to further improve the cross-domain generalization ability of the model, construct domain adversarial loss L DANN By introducing a domain discriminator to constrain the consistency of the source domain and target domain feature distribution, the learning of domain-invariant features is achieved. The calculation process is shown in formula (4), where N s and N t denote the number of samples in the source domain and target domain respectively, f is the feature extractor, and D is the domain discriminator. represents the feature embedding vector of the i-th sample in the source domain, Represents the feature embedding vector of the jth sample in the target domain.
[0035]
[0036] (4) Loss weighted fusion. The three losses act together on the feature extractor to achieve feature alignment between the source domain and the target domain while learning the discriminative features. The calculation process is shown in formula (5), L pretrain is the total loss function of pre-training, θ f is the feature extractor parameter, θ c is the fully connected layer classifier parameter, λ d are the domain discriminator parameters, λ1 and λ2 are the weight coefficients of feature distribution difference loss and domain adversarial loss, respectively.
[0037]
[0038] S14: Feature Extractor Pretraining. To ensure the model has cross-domain discrimination capabilities and domain invariance, a joint pretraining strategy using source domain data and target domain unlabeled data is designed. This process is divided into the following four steps: random hyperparameter selection, parameter initialization, batch training and parameter update, and weight file storage.
[0039] (1) Random hyperparameter selection: Based on the search range of the hyperparameters to be determined given in Table 1, the hyperparameter random selection algorithm is used to determine the hyperparameter values.
[0040] (2) Parameter initialization: All trainable weights and bias items are initialized using the Kaiming initialization algorithm.
[0041] (3) Batch training and parameter update: According to the number of samples B sent to the model training in each batch determined in step (1), the model is trained in batches until the model loss stabilizes and no longer decreases.
[0042] (4) Save weight file. Save all model parameter weights in the feature extractor to a file for subsequent use.
[0043] Table 1 List of pre-training hyperparameters
[0044]
[0045] S2: Design a fine-tuning strategy based on the dual-attention module. This strategy organically integrates the general knowledge learned during pre-training with the unique knowledge of specific tasks to improve the model's transferability. This process is divided into four main steps: random small-sample task sampling, loading and freezing backbone network parameters, fine-tuning the dual-attention module weights, and small-sample task testing.
[0046] S21: Random small-sample task sampling. Sampling small-sample tasks is performed on the target domain test dataset. As shown in Algorithm 3, this process is divided into the following four steps: category sampling, sample sampling, rebuilding the label index, and partitioning the support set and query set.
[0047] (1) Category sampling. Select any onion website dataset as the target dataset, and then sample N from all categories of the target dataset. Way categories.
[0048] (2) Sample sampling: Sample s+q samples for each category from the test dataset.
[0049] (3) Reconstruct the label index. Map the labels of the sampled samples to long integers.
[0050] (4) Divide the support set and query set. After shuffling the samples, take the first s samples as the support set and the last q samples as the query set.
[0051]
[0052] S22: Load and freeze backbone network parameters. Transfer the knowledge learned during pre-training and freeze the backbone network weights. This process is divided into two steps: loading model weights and freezing feature extractor weights.
[0053] (1) Model weight loading. Recreate a feature extractor model instance and load the pre-trained weight file saved in step S14 into the new model instance.
[0054] (2) Freeze the feature extractor weights. Set the feature extractor weights and bias items to be non-updatable.
[0055] S23: Fine-tune the dual-attention module weights. Using the support set from the small-sample task sampled in step S21, fine-tune the parameters related to the attention mechanism in the pre-trained feature extractor to improve the model's adaptability to the target task. This process is divided into three steps: adding a linear classifier, fine-tuning the attention module, calculating the loss, and updating the parameters.
[0056] (1) Add a linear classifier. A linear classifier is added after the feature extractor to classify the support set samples in the small sample task. The classifier weights are randomly initialized from zero, independent of the pre-training process, and are used to adapt to the category distribution of the current fine-tuning task.
[0057] (2) Fine-tune the attention module. Freeze the parameters of the feature extractor module and only fine-tune the feature map-level attention module and channel-level attention. While maintaining the stability of the original features, guide the model to redistribute attention to adapt to the new task. (3) Calculate the loss and parameter update. Use the cross entropy loss function to calculate the fine-tuning loss L for the probability vector and label data. CE , and use the optimizer to backpropagate until the loss stops decreasing, and finally save the fine-tuned model. CE The calculation process is shown in formula (6), where |B| represents the batch size, y i is the true label, q i is the predicted probability.
[0058]
[0059] S24: Small Sample Task Testing. Use the query set from the small sample task sampled in step S21 to perform metric testing. This process is divided into three steps: model weight invocation, test metric selection, and test metric calculation.
[0060] (1) Model weight call: Load the weight file fine-tuned in step S23 so that the model maintains the optimal parameter state learned during training during inference.
[0061] (2) Selection of test indicators. Select appropriate test indicators according to the closed world scenario and the open world scenario. The closed world is the accuracy rate, and the open world is the AUC (Area Under the Curve). AUC is defined as the area under the receiver operating characteristic (ROC) curve. The false positive rate (FPR) and the true positive rate (TPR) correspond to the horizontal axis and vertical axis of the RPC curve, respectively. As shown in formulas (7) and (8), FP represents the total number of samples that belong to the non-target class but are mistakenly predicted as the target class, TN represents the total number of samples that belong to the non-target class and are correctly predicted as the non-target class, TP represents the number of samples that belong to the target class and are predicted as the target class, and FN represents the number of samples that belong to the target class but are mistakenly predicted as the non-target class.
[0062]
[0063] (3) Test indicator calculation. To verify the final effect of the model, multiple different small sample tasks are constructed in closed world scenes and open world scenes to measure the specific values of various indicators selected in step (2). Finally, the average and standard deviation of all results are calculated to evaluate the final effect.
[0064] This paper proposes a cross-domain, small-sample website fingerprinting method for onion networks. Compared with existing methods, this method has the following advantages:
[0065] (1) This method designs a pre-training strategy based on feature alignment and domain adversarial training. First, in step S11, by introducing a multi-channel matrix as a representation of network traffic, a more discriminative traffic description is provided, thereby enhancing the generalizability of the model input. Secondly, in step S12, a feature extractor with a multi-scale convolutional structure and a dual-attention mechanism is designed to support the learning and adaptive weight allocation of features of different granularities, thereby enhancing the model's adaptability to different website sizes and traffic patterns. In addition, in step S13, a pre-training loss function is designed that significantly reduces domain offset. Through the joint optimization of classification loss, feature distribution difference loss, and domain adversarial loss, effective feature alignment between the source domain and the target domain is achieved, significantly reducing domain offset and improving cross-domain generalization capabilities.
[0066] (2) The method designs a fine-tuning strategy based on a double attention module. First, in step S21, random small sample task sampling is performed on the target data set, effectively simulating the situation that the model faces unknown categories in the open world scenario. Secondly, in steps S22 and S23, the pre-trained backbone network weight is loaded and the parameters are frozen, only the attention module and the classifier weight are updated, while keeping the stability of the pre-trained features, greatly simplifying the fine-tuning process, avoiding the complexity and overfitting risk of full model parameter update, effectively improving the rapid adaptation ability of the model to new tasks, with high efficiency and flexibility, which can effectively cope with the variability and complexity of anonymous communication networks. Experimental results show that in the closed world test, the 50-classification accuracy of the method reaches 75.53% under the 5-shot condition, which is better than the existing advanced small sample website fingerprint identification method; in the open world scenario, the AUC value of the method reaches 0.938 under the 5-shot condition, and the AUC value of the 51 classification reaches 0.786, which shows good practical application value and robustness. BRIEF DESCRIPTION OF DRAWINGS
[0067] Figure 1 Overall schematic diagram of the cross-website domain small sample website fingerprint identification method,
[0068] Figure 2 Traffic characterization schematic diagram,
[0069] Figure 3 Overall structure diagram of the feature extractor,
[0070] Figure 4 DAMC module structure schematic diagram,
[0071] Figure 5 Flowchart of traffic characterization based on MCTM,
[0072] Figure 6 Flowchart of feature extractor construction. DETAILED DESCRIPTION
[0073] The technical solutions in the embodiments will be described in detail below with reference to the accompanying drawings of the present application. Obviously, the embodiments described below are only one embodiment of the method of the present application, not all embodiments. Based on the following embodiments, all other embodiments obtained by those skilled in the art without creative labor are within the scope of protection of the present application.
[0074] Example 1: see Figures 1-6 The implementation process of the present application is divided into two main steps: implementing a pre-training strategy based on feature alignment and domain adversarial training, and implementing a fine-tuning strategy based on a double attention module.
[0075] S1: Implementing a pre-training strategy based on feature alignment and domain adversarial training. This implementation process contains 4 steps: implementing cross-domain traffic representation, implementing multi-scale feature extractor, implementing composite loss function, and feature extractor pre-training.
[0076] S11: Implementing cross-domain traffic representation. As shown in Figure 5 , this process specifically includes 3 steps: extracting multi-dimensional packet information, standardizing TCP payload size, and constructing a three-channel matrix structure.
[0077] (1) Extracting multi-dimensional packet information. This embodiment uses Python programming language and its network traffic processing library scapy to extract bidirectional flow according to five-tuple (source IP, destination IP, source port, destination port, protocol) from the PCAP file of the original network traffic of the data set described in Table 2, and then extract multi-dimensional packet information. The specific implementation process includes 3 steps: extracting packet direction information, extracting TCP payload size, and extracting packet timestamp and calculating relative arrival time.
[0078] a) Extracting packet direction information. Write the get_direction_sequence function to obtain the packet sequence by calling the repcap function of the scapy library. If the packet originates from the client to the entry node, it is marked as +1; if it is returned from the entry node to the client, it is marked as -1; generate the packet direction sequence and save it as the dir.npy file.
[0079] b) Extracting TCP payload size. Write the get_packet_lengths function to obtain the packet sequence by calling the rdpcap function of the scapy library, then calculate the byte length of the effective payload of each TCP packet by the len function, and finally save the payload size sequence of the TCP packet as the length.npy file.
[0080] c) Extracting packet timestamp and calculating relative arrival time. Write the get_packet_times function to obtain the packet sequence by calling the rdpcap function of the scapy library, and then extract the timestamp of each packet by the time function. Record the timestamp of each packet, and take the timestamp of the first packet of the flow as the reference point to calculate its relative arrival time. Save the relative arrival time sequence as the time.npy file.
[0081] Table 2 dataset description
[0082]
[0083] (2) Standardization of TCP load size. The implementation process is divided into three steps: load feature preprocessing, building a standardizer, and performing standardization conversion.
[0084] a) Load feature preprocessing. The abs function of the library numpy is called to eliminate outliers in the TCP load size sequence.
[0085] b) Building a standardizer. To perform standard deviation normalization on the load features in the sample, the StandardScaler function in the sklearn.preprocessing library is called to build a standardizer. The standardizer can automatically fit the sample mean and standard deviation, facilitating subsequent conversion operations.
[0086] c) Perform standardization conversion. Apply the standardizer built in step a) to the TCP load size sequence, and call the fit_transform method of the standardizer to perform fitting and conversion operations. After conversion, the TCP load size of all samples is mapped to a standard normal distribution with a mean of 0 and a standard deviation of 1, ensuring that different dimensional features have equivalent influence in subsequent training, improving the stability and generalization ability of the model.
[0087] (3) Build a three-channel matrix structure. Stack the above three feature sequences along the channel dimension (axis = 1) to form a three-channel flow matrix of length L. Truncate long sequences and pad short sequences with zeros. The three-channel matrix structure is directly fed into the multi-scale feature extractor implemented in step S12 to meet the input format requirements of the deep learning model during training and inference.
[0088] S12: Implement a multi-scale feature extractor. This embodiment is based on a Dual-Attention Enhanced Multiscale Convolutional Module (DAMC) that inherits the nn.Module method in the library torch to build a feature extractor with strong generalization ability and scale adaptation ability. As shown in Figure 6 the construction of the feature extractor is specifically divided into the following three steps: implementing an adaptive multi-scale convolution structure, implementing a feature map level attention enhancement mechanism, and implementing a channel level attention enhancement mechanism.
[0089] (1) Implement an adaptive multi-scale convolution structure. To support cross-site domain migration, this embodiment implements an adaptive multi-scale convolution structure. The specific process is divided into three steps: calculating the dynamic kernel size, building a parallel convolution structure, and building an auxiliary channel.
[0090] a) Calculate the dynamic convolution kernel size. Based on the length L of the input traffic feature sequence, we dynamically set multiple convolution kernels of different sizes to construct N parallel one-dimensional convolution channels. The first convolution kernel size is set to L / 10, and the remaining kernel sizes decrease in increments of 1 / 2. This is used to capture features at different scales, from global behavior to local patterns.
[0091] b) Build a parallel convolution structure. Call the Conv1d function to build N parallel one-dimensional convolution layers, and set the number of output channels of each convolution layer to C. out All convolutional layers keep the output length consistent with the input length by setting padding = 'same'. Any i-th convolutional layer outputs a feature map Corresponding to a receptive field scale.
[0092] c) Construct an auxiliary channel. To enhance local context modeling, an auxiliary channel is constructed. Call the MaxPool1d function to construct a maximum pooling layer, and call the Conv1d function to construct a 1×1 convolution layer to aggregate local information and output a feature map f N+1 . N+1 Together with the N feature maps constructed in step b), a multi-scale feature map set F = {f1, ...f N+1}, to enhance the receptive field and feature diversity.
[0093] (2) Implementing a feature map-level attention enhancement mechanism. To address the issue of uneven contributions of features at different scales to the final discriminative ability, this embodiment introduces a multi-head attention mechanism to perform weighted modeling and weighted fusion on multi-scale feature maps. The specific process is divided into three steps: feature vectorization, scale attention modeling, and weighted fusion.
[0094] a) Feature vectorization. Call the AdaptiveAvgPool1d function for each feature map f in the set F i Perform one-dimensional global average pooling and compress it into a feature vector Used for subsequent modeling of weight relationships between scales.
[0095] b) Scale attention modeling. First, use the torch.concat method to concatenate all vectors v obtained in step a) i Splicing into a matrix And input to the multi-head attention module. Then call the rearrange function to reorganize the output into a multi-head format, and then separate the query matrix queries, key matrix keys and value matrix values. Then use the torch.einsum method to implement the dot product attention calculation between the query matrix and the key matrix. Then call the softmax function to normalize the similarity score to a probability distribution and generate the attention weight matrix Attention. Finally, call the torch.mean method to average the output of all attention heads and calculate the final global attention weight matrix A. mean .
[0096] c) Weighted fusion. Based on the learned attention weight matrix A mean , for the original feature map set F={f1,……f N+1} for weighted reconstruction. mean The attention coefficient a in ij Perform weighted summation on each feature map to enhance the importance of effective feature maps and weaken feature maps with low decision relevance. Output the reconstructed feature map set F′={f1′,f2′,……,f′ N+1}, used for subsequent channel modeling.
[0097] (3) Implementing a channel-level attention enhancement mechanism. This embodiment dynamically adjusts the channel weights of the fused multi-scale feature maps to improve the model's ability to focus on key channels. The specific process is divided into four steps: feature splicing, global information aggregation, channel dependency modeling, and weighted reconstruction.
[0098] a) Feature concatenation. After re-weighting the feature maps, the torch.concat method is used to concatenate all feature maps along the channel dimension into a fused feature matrix F. fused .
[0099] b) Global information aggregation. For the fusion feature matrix F fused For each channel of , the AdaptiveAvgPool1d function is called to compress it into a single value, to achieve global information aggregation for each channel, and finally output the global feature vector Z to represent the global statistical information of each channel.
[0100] c) Channel dependency modeling. A fully connected architecture is constructed using the nn.linear method to model inter-channel dependencies. This architecture consists of two fully connected layers, which sequentially perform dimensionality reduction and then dimensionality increase. The first fully connected layer compresses the input global feature vector Z from its original channel dimension and then applies a nonlinear transformation using the ReLU activation function. The second fully connected layer restores the reduced feature vector to its original channel dimension. Finally, a sigmoid activation function is used to map the output values to the interval [0, 1], generating the attention vector S.
[0101] d) Weighted Reconstruction. The original fused feature matrix is channel-weighted using the attention vector S. The feature map of each channel is element-wise multiplied by the corresponding weight value to enhance important channels and suppress irrelevant channels.
[0102] S13: Implementing a composite loss function. This embodiment constructs a composite loss function that combines classification loss, feature distribution difference loss, and domain adversarial loss. This function is used to train the feature extractor, enabling it to learn discriminative and domain-invariant feature representations during the pre-training phase. This process is specifically divided into four steps: calculating the classification loss, calculating the feature distribution difference loss, calculating the domain adversarial loss, and weighted fusion of the losses.
[0103] (1) Calculating the classification loss. To minimize the classification error of labeled source domain samples and ensure the model's discriminative ability on source domain data, this embodiment introduces the additive angle margin loss function to calculate the classification loss. The specific process is divided into four steps: feature embedding and weight normalization, calculating the angle cosine value, adding the angle margin, one-hot encoding conversion, and loss calculation.
[0104] a) Feature embedding and weight normalization. Call the Parameter function to initialize a learnable weight matrix, weight, where each row represents the center vector of a class. During the forward propagation, call the normalize function in the torch library to normalize the feature embedding E and the class center weight matrix weight so that they are both projected onto the unit sphere, allowing for calculation of the cosine similarity between them.
[0105] b) Calculate the cosine of the angle. Call the linear function in the torch library to calculate the cosine of the angle between the feature embedding E and the class center weight matrix weight, and then use trigonometric functions to calculate the sine of the angle sinθ.
[0106] c) Adding angle boundaries: Use trigonometric formulas to calculate the cosine value (cos(θ+m)) of angle θ plus angle m.
[0107] d) One-hot encoding conversion and loss calculation. Convert the label to a one-hot encoding to represent the true category corresponding to each sample. Then replace the cosine similarity corresponding to the position where the median value is 1, from cosθ to the cosine value cos(θ+m) with the added angle boundary, and keep the original cosθ unchanged. Finally, all values are multiplied by the scaling parameter s to scale, and the feature values are mapped to a hypersphere with a radius of s. The cross entropy loss function is calculated in combination with the label value to obtain the final classification loss L class .
[0108] (2) Calculating the feature distribution difference loss. To reduce the feature distribution difference between the source and target domains and achieve domain alignment, this embodiment introduces the maximum mean difference method to calculate the feature distribution difference loss. The specific process is divided into three steps: feature embedding extraction, multi-kernel Gaussian function similarity calculation, and loss aggregation calculation.
[0109] a) Feature embedding extraction: Feature embeddings of the source domain and target domain are extracted through feature extractors.
[0110] b) Multi-kernel Gaussian function similarity calculation. Gaussian kernel function is used to measure the feature similarity between source domain sample pairs, target domain sample pairs, and source and target domains. By setting different bandwidth parameters σ p Multiple kernel functions are constructed to capture similarity structures at different scales in the feature space.
[0111] c) Loss aggregation calculation. The kernel function similarity K within the source domain s , the kernel function similarity K within the target domain t , cross-domain kernel function similarity K st Perform weighted summation to obtain the final feature distribution difference loss L MMD .
[0112] (3) Calculating domain adversarial loss. In order to further improve the cross-domain generalization ability of the model, this embodiment constructs the domain adversarial loss L DANN By introducing a domain discriminator to constrain the consistency of the feature distribution of the source and target domains, domain invariance is achieved. The specific process is divided into the following two steps: domain discriminator construction and domain adversarial training.
[0113] a) Domain discriminator construction. The domain discriminator D is constructed by calling the linear function and ReLU activation function in the torch library, using a simple network structure to determine whether the input features come from the source domain or the target domain.
[0114] b) Domain adversarial training. To implement domain adversarial training, a gradient reversal layer (GRL) is introduced. During the backpropagation process, the gradient is multiplied by a negative constant -λ (λ>0), so that the feature extractor is optimized in the direction of suppressing the correctness of domain discrimination, thereby learning domain-invariant features. Then, the log method of the torch library is called to calculate the domain discrimination loss of the source domain and the target domain respectively, and the sum of the two is negatively signed as the total adversarial loss L. =ANN .
[0115] (4) Weighted loss fusion. A weighted fusion strategy is used to organically combine classification loss, feature distribution difference loss, and domain adversarial loss to construct a unified pre-training loss function. By minimizing the classification loss and feature distribution difference loss and maximizing the domain adversarial loss, a balanced improvement in discriminative ability and domain adaptability is achieved.
[0116] S14: Feature Extractor Pretraining. Pretrain the feature extractor to obtain a feature embedding representation that is both domain-discriminative and domain-invariant. This pretraining phase optimizes the composite loss function from step S13 by jointly training with labeled source domain data and unlabeled target domain data. The specific implementation process consists of four steps: random hyperparameter selection, parameter initialization, batch training and parameter update, and weight file storage.
[0117] (1) Random hyperparameter selection. This example uses a random hyperparameter selection algorithm to perform multiple rounds of hyperparameter sampling within the search range predefined in Table 1. After evaluating model performance, the optimal combination is selected for training. The optimal hyperparameter combination selected in this example is shown in Table 3.
[0118] (2) Parameter initialization: This embodiment uses the Kaiming initialization algorithm to initialize all trainable weights and bias items in step S12 and step S13.
[0119] (3) Batch training and parameter update. The number of samples B to be sent to the model training in each batch determined in step (1) is 256. All samples are sent to the model training in batches. The composite loss function is calculated through forward propagation, and backpropagation and parameter update are performed. The training process continues until the loss L of the model on the validation set stabilizes and no longer decreases. The maximum iteration batch set for training in this embodiment is 150 epochs.
[0120] (4) Save the weight file. After the feature extractor training is completed, call the torch.save(model) function to save the weight file, where model is the parameter dictionary of the trained model.
[0121] Table 3 Pre-training hyperparameter value list
[0122]
[0123]
[0124] S2: Implementing a fine-tuning strategy based on the dual-attention module. To integrate the general knowledge learned during pre-training with the specific small-sample knowledge of the target task, enabling rapid adaptation and improved discrimination in the target domain, this example uses the PyTorch deep learning framework to complete the entire fine-tuning process. The specific process consists of four steps: random small-sample task sampling, loading and freezing the backbone network parameters, fine-tuning the dual-attention module weights, and small-sample task testing.
[0125] S21: Random Small Sample Task Sampling. Random small sample task sampling is performed on the test dataset. The test dataset must belong to a different website domain than the pre-training dataset. This example uses datasets such as OSv2 and OSv3 for testing. The specific implementation process is divided into the following four steps: category sampling, sample sampling, label index reconstruction, and partitioning the support set and query set.
[0126] (1) Category sampling. To alleviate the category imbalance problem and unify the category distribution of different datasets, the RandomUnderSampler function in the imblearn library is called to perform category sampling. In this example, 50 categories are sampled from both the OSv2 and OSv3 datasets.
[0127] (2) Sample Sampling: This embodiment calls the KShots function in the learn2learn library to sample s+q samples for each category from the test dataset.
[0128] (3) Rebuilding the label index. To facilitate the model's processing of label information, the original string labels are uniformly converted into integer indices. This embodiment uses a dictionary structure to establish a mapping relationship between the original label and the integer index, and replaces the original label with the corresponding index label.
[0129] (4) Divide the support set and query set. In this example, the first s samples of each category are used as the support set, and the last q samples are used as the query set. The number of samples in the support set, s, is set to 1, 5, 10, 15, or 20 according to the task settings, while the number of samples in the query set, q, is fixed at 15.
[0130] S22: Load and freeze backbone network parameters. Transfer the knowledge learned during pre-training and freeze the backbone network weights. This process is divided into two steps: loading model weights and freezing feature extractor weights.
[0131] (1) Model weight loading. In order to load the pre-trained weights into the newly created feature extractor model instance and realize the migration and reproduction of model parameters, this embodiment calls the load function in the torch library to read the parameter dictionary saved in step S14, and uses the model.load_state_dict function to load the parameter dictionary into the new feature extractor model.
[0132] (2) Freezing the feature extractor weights. In order to freeze the model parameters except for the attention module and implement focused training of the dual attention module weights, this embodiment calls the model.named_parameters function in the torch library to traverse all parameters of the feature extractor, selects the parameters of the non-attention module by judging the parameter name, and sets its requires_grad attribute to False, retaining only the trainability of the parameters related to the dual attention module.
[0133] S23: Fine-tune the dual-attention module weights. By fine-tuning the parameters of the dual-attention mechanism module in the feature extractor, the model can quickly adapt to the target task, using only the support set data. This process involves three steps: adding a linear classifier, fine-tuning the attention module, calculating the loss, and updating the parameters.
[0134] (1) Add a linear classifier. To achieve the final classification, this embodiment calls the linear function in the torch library to build a fully connected layer as a linear classifier, and calls the eye function in the torch library to initialize the weight matrix of the linear classifier. The input dimension of the linear classifier is the dimension after feature expansion, and the output dimension is the number of categories.
[0135] (2) Fine-tune the attention module. According to step S22, freeze the parameters of the remaining modules of the feature extractor and only update the parameters of the feature map-level attention module and the channel-level attention module. While maintaining the stability of the original features, guide the model to reallocate attention to adapt to the new task.
[0136] (3) Calculating Loss and Parameter Updates. This example uses the support set samples as input to the fine-tuned model. The softmax function in the torch library outputs the predicted probability distribution, calls the CrossEntropyLoss function to calculate the cross-entropy loss between the predicted results and the true labels, and calls the SGD optimizer to update the parameters. Finally, the torch.save(model) function is used to save the weight file.
[0137] S24: Small Sample Task Test. This embodiment uses the query set from the small sample task sampled in step S21 to perform indicator testing. The specific implementation process is divided into the following three steps: model weight call, test indicator selection, and test indicator calculation.
[0138] (1) Model weight calling. The embodiment calls the load function in the library torch to read the saved parameter dictionary, and calls the model.load_state_dic function to load the parameter dictionary into a new model instance.
[0139] (2) Test index selection. The embodiment evaluates the method of the application in a closed world scenario and an open world scenario. The closed world scenario uses accuracy as an evaluation index, and the open world scenario uses the area under the ROC curve (AUC) value as an evaluation index. The AUC index is divided into AUC2 and AUC m . AUC2 represents a binary classification task, and is used to evaluate whether the model can identify whether the traffic comes from a target website. AUC m represents a multi-classification task, and is used to evaluate whether the model can identify which specific target website the traffic comes from.
[0140] (3) Test index calculation. The embodiment uses the query set sampled in step S21 to test. After testing, the index values are shown in Tables 4 and 5, which fully illustrate that the method of the application can quickly adapt to the target website domain under the condition of cross-domain small samples, and then accurately identify new website samples.
[0141] Table 4 Test index values of the embodiment in a closed world
[0142]
[0143] Table 5 Test index values of the embodiment in an open world
[0144]
[0145] The above description is only for the preferred embodiment of the method of the application, and the application is not limited to the above embodiment. It should be noted that any person skilled in the art, under the guidance of the present description, all equivalent substitutions and obvious modifications made by them fall within the scope of the present description, and should be protected by the present application.
Claims
1. A cross-domain small sample website fingerprint identification method for onion network, characterized by: The method comprises the following steps: S1: Design a pre-training strategy based on feature alignment and domain adversarial training, S2: Design a fine-tuning strategy based on dual attention modules.
2. A cross-domain small sample website fingerprint identification method for onion network according to claim 1, characterized in that: In S1, a pre-training strategy based on feature alignment and domain adversarial training is designed, which includes four steps: S11 cross-domain traffic characterization design, S12 multi-scale feature extractor design, S13 composite loss function design, S14 feature extractor pre-training; S2: Design a fine-tuning strategy based on the dual attention module. The specific process includes 4 steps: S21 random small sample task sampling, S22 loads and freezes the backbone network parameters, S23 fine-tunes the weights of the dual attention module, S24 small sample task test.
3. The method for cross-domain small sample website fingerprint recognition for onion network according to claim 2 is characterized in that: S11: Cross-domain traffic characterization design is divided into three steps: (1) Extract multi-dimensional packet information. Extract bidirectional flows from each PCAP file based on the five-tuple. Process each packet in the bidirectional flow in turn, extract the packet direction, TCP payload size, and relative arrival time, and extract the website URL corresponding to the bidirectional flow as a label. (2) Normalize the TCP payload size. The TCP payload size is much higher than the order of magnitude of the packet direction and relative arrival time, which will cause the model to offset during training. Normalize it, as shown in formula (1), using mean variance normalization, x i represents the original data point, z i Represents the standardized result, μ is the mean value of all data points, σ is the standard deviation of all data points, (3) Construct a three-channel matrix structure, and stack the above three characteristic sequences to construct a multi-channel flow matrix (Multi- Channel Traffic Matrix, MCTM), the length of each feature sequence is fixed to L, and sequences that are too long are truncated. Sequences that are too short are padded with zeros to make all samples of the same length.
4. The method for cross-domain small sample website fingerprint recognition for onion network according to claim 3 is characterized in that: S12: Multi-scale feature extractor design, the specific process is divided into three steps: (1) Design an adaptive multi-scale convolution structure. The specific process is divided into the following three steps: calculating the dynamic convolution kernel size, designing a parallel convolution structure, and constructing auxiliary channels. a) Calculate the dynamic convolution kernel size. According to the length L of the input traffic feature sequence, dynamically set multiple convolution kernels of different sizes and construct N parallel one-dimensional convolution channels. The first convolution kernel size is set to L / 10, and the rest are reduced by 1 / 2 in sequence. b) Design a parallel convolution structure, build N parallel convolution layers according to the convolution kernel size calculated in step a), set the output sequence length of all convolution layers to be constant, and output a sequence with C out The feature maps of channels, N parallel convolutional layers generate N feature maps in total, c) Construct an auxiliary channel and introduce a supplementary structure consisting of a pooling layer and a 1×1 convolution to further generate a feature map. Together with the N feature maps, it forms a multi-scale feature set to enhance the receptive field and feature diversity. (2) Design a feature map level attention enhancement mechanism. The specific process is divided into the following three steps: feature vectorization, scale attention modeling, and weighted fusion. a) Feature vectorization: Use global average pooling to vectorize the feature map set F = {f1,…,f N+1 } is transformed into a vector set V = {v1,…,v N+1 }, used for subsequent modeling of weight relationships between scales, b) Scale attention modeling: a multi-head attention mechanism is used to model the importance of feature maps at each scale, and the weights of feature maps at different scales are automatically learned through multiple parallel attention heads. c) Weighted fusion: Use the learned weights to weight the original feature maps, highlight the key feature maps, suppress redundant information, and achieve effective fusion of multi-scale features; (3) Design a channel-level attention enhancement mechanism to dynamically adjust the channel weights for the fused multi-scale feature maps to improve the model's ability to focus on key channels. The specific process is divided into the following four steps: feature splicing, global information aggregation, channel dependency modeling, and weighted reconstruction. a) Feature splicing: splicing all feature maps along the channel dimension to form a fusion feature matrix. b) Global information aggregation, compressing each channel into a single value to achieve global information aggregation for each channel, c) Channel dependency modeling: The dependency relationship between channels is modeled through a two-layer fully connected network. The dimension is first reduced and then increased to realize the activation function modeling and generate the channel attention weight vector. d) Weighted reconstruction: the attention vector channel weights are applied to the original fusion feature matrix to complete channel weighting, thereby enhancing important channels and suppressing irrelevant channels.
5. The method for cross-domain small sample website fingerprint recognition for onion network according to claim 4 is characterized in that: S13: Design of composite loss function, which is divided into 4 steps: calculating classification loss, calculating feature distribution difference loss, calculating domain adversarial loss, and weighted fusion of loss. (1) Calculate the classification loss, classification loss L class It is used to minimize the classification error of labeled samples in the source domain and ensure the discrimination ability of the model on the source domain data. As shown in formula (2), it compresses the distance between the feature embeddings of samples of the same type and expands the distance between the feature embeddings of samples of different types, where |B| represents the batch size and y i represents the true category label of the i-th sample, Represents the feature embedding vector x of the i-th sample i Its true category y i The corresponding weight vector The angle between them, s is the scaling factor, m is the penalty parameter, θ j Represents the angle between the input feature and the category center weight vector, (2) Calculate the feature distribution difference loss and construct the feature distribution difference loss L MMD , the calculation process is shown in formula (3), where p represents the number of kernel functions, ω p represents the weight of the p-th kernel function, Represent the similarity within the source domain, the similarity within the target domain, and the similarity between the source domain and the target domain, respectively. (3) Calculate domain adversarial loss and construct domain adversarial loss L DANN By introducing a domain discriminator to constrain the consistency of the source domain and target domain feature distribution, the learning of domain invariant features is achieved. The calculation process is shown in formula (4), where N s and N t denotes the number of samples in the source domain and target domain respectively, f is the feature extractor, D is the domain discriminator, represents the feature embedding vector of the i-th sample in the source domain, represents the feature embedding vector of the jth sample in the target domain, (4) Loss weighted fusion: The three losses act together on the feature extractor to achieve feature alignment between the source domain and the target domain while learning the discriminative features. The calculation process is shown in formula (5): L pretrain is the total loss function of pre-training, θ f is the feature extractor parameter, θ c is the fully connected layer classifier parameter, θ d is the domain discriminator parameter, λ1 and λ2 are the weight coefficients of feature distribution difference loss and domain adversarial loss, respectively.
6. The method for cross-domain small sample website fingerprint recognition for onion network according to claim 5 is characterized in that: S14: Feature extractor pre-training, which is divided into the following four steps: random hyperparameter selection, parameter initialization, batch training and parameter update, and weight file saving. (1) Random hyperparameter selection: Based on the search range of the hyperparameter to be determined, the hyperparameter random selection algorithm is used to determine the hyperparameter value. (2) Parameter initialization: use the Kaiming initialization algorithm to initialize all trainable weights and bias items. (3) Batch training and parameter update: According to the number of samples B sent to the model training in each batch determined in step (1), the model is trained in batches until the model loss is stable and no longer decreases. (4) Save the weight file, save the weights of all model parameters in the feature extractor to a file for subsequent use.
7. The method for cross-domain small sample website fingerprint recognition for onion network according to claim 6 is characterized in that: S21: Random small sample task sampling, specifically divided into the following four steps: category sampling, sample sampling, rebuilding label index, dividing support set and query set, (1) Category sampling: select any onion website dataset as the target dataset, and then sample N from all categories of the target dataset. Way categories, (2) Sample sampling: sample s+q samples for each category from the test data set. (3) Rebuild the label index and map the labels of the sampled samples into long integers. (4) Divide the support set and query set, shuffle the samples, and use the first s samples as the support set and the last q samples as the query set; S22: Load and freeze backbone network parameters, which is divided into the following two steps: loading model weights and freezing feature extractor weights. (1) Model weight loading: recreate a feature extractor model instance and load the pre-trained weight file saved in step S14 into the new model instance. (2) Freeze the feature extractor weights and set the feature extractor weights and bias items to be non-updatable.
8. The method for cross-domain small sample website fingerprint recognition for onion network according to claim 7 is characterized in that: S23: Fine-tune the weights of the dual attention module, which is divided into three steps: adding a linear classifier, fine-tuning the attention module, calculating the loss and updating the parameters. (1) Add a linear classifier after the feature extractor to classify the support set samples in the small sample task. The classifier weights are randomly initialized from zero and are independent of the pre-training process. They are used to adapt to the category distribution of the current fine-tuning task. (2) Fine-tune the attention module, freeze the parameters of the feature extractor module, and only fine-tune the feature map-level attention module and channel-level attention. On the basis of maintaining the stability of the original features, guide the model to reallocate attention to adapt to the new task. (3) Calculate the loss and parameter update, and use the cross entropy loss function to calculate the fine-tuning loss L using the probability vector and label data CE , and use the optimizer to backpropagate until the loss no longer decreases, and finally save the fine-tuned model, L CE The calculation process is shown in formula (6), where |B| represents the batch size, y i is the true label, q i is the predicted probability, S24: Small sample task test, specifically divided into three steps: model weight call, test index selection, test index calculation, (1) Model weight call: load the weight file fine-tuned in step S23 so that the model maintains the optimal parameter state learned during training during inference. (2) Selection of test indicators. Appropriate test indicators are selected according to the closed world scenario and the open world scenario. The closed world is the accuracy rate, and the open world is the AUC (Area Under the Curve). AUC is defined as the area under the receiver operating characteristic (ROC) curve. The false positive rate (FPR) and the true positive rate (TPR) correspond to the horizontal axis and vertical axis of the ROC curve, respectively, as shown in formula (7) and formula (8), where FP represents the total number of samples that belong to the non-target class but are incorrectly predicted as the target class, TN represents the total number of samples that belong to the non-target class and are correctly predicted as the non-target class, TP represents the number of samples that belong to the target class and are predicted as the target class, and FN represents the number of samples that belong to the target class but are incorrectly predicted as the non-target class. (3) Test indicator calculation: To verify the final effect of the model, multiple different small sample tasks are constructed in closed world scenes and open world scenes to measure the specific values of various indicators selected in step (2). Finally, the average and standard deviation of all results are calculated to evaluate the final effect.
9. An electronic device comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein: When the processor executes the program, it implements a cross-domain small sample website fingerprint recognition method for onion network as described in any one of claims 1 to 8.
10. A computer-readable storage medium having computer instructions stored thereon, characterized in that: When the computer instructions are executed by the processor, a cross-domain small sample website fingerprint identification method for an onion network is implemented as described in any one of claims 1-8.
Citation Information
Cited By
Multi-stage cross-domain adaptive feature selection method
CN121598218A
Anti-interference multi-label webpage identification method and system under encrypted traffic condition
CN121711194A
An anti-interference multi-label web page identification method and system under encrypted traffic conditions
CN121711194B
Model training loss determination method and model training method
CN122287767A
Model training loss determination method and model training method
CN122287767B