IoT Device Fingerprinting via Frequency Domain Analysis
Bibliographic record
Abstract
The rapid proliferation of heterogeneous Internet of Things (IoT) devices has introduced a wide range of operational and security challenges, particularly in the domains of device identification and behavior profiling. Traditional fingerprinting methods, which rely primarily on time domain features, often fail to capture the complex, periodic, and often bursty nature of IoT communication—especially in environments characterized by sparse, irregular, or noisy traffic patterns. To address these limitations, two novel frequency-based fingerprinting techniques have been proposed: Spectral-Only Frequency Fingerprint (SFF) and Spectro-Correlative Frequency Fingerprint (SCFF). These approaches shift the analysis from the time domain to the frequency domain, enabling the extraction of richer and more robust behavioral signatures from network traffic. While SFF focuses on capturing the core spectral features of device traffic, SCFF extends this by incorporating inter-feature correlations, offering a more nuanced and comprehensive representation of device behavior. The effectiveness of SFF and SCFF is evaluated across multiple publicly available IoT datasets using a range of machine learning classifiers. Experimental results demonstrate that both fingerprinting methods significantly outperform traditional time domain approaches in terms of accuracy, precision, recall, and F1-score—across all tested classifiers and datasets.
Fetched live from OpenAlex and de-inverted. Abstracts are not stored in this database: the inverted indexes are 8.6 GB of the frame’s 9.3 GB of text, and the host has 13 GB free.
How this classification was reachedexpand
Full frame machine prediction
Teacher imitationNot calibrated prevalence, not ground truth. Human validation pending. The Gemma side is a direct model label for every work in the frame, read from the title-only record. The Codex side is a classifier learned from the 10,348 direct Codex labels and calibrated to design-weighted sample rates; fields without enough sample support carry no Codex call. Candidate is the union of the two sides; consensus is their intersection. These outputs are machine_predicted_unvalidated and are not human labels.
Distilled classifier scores by category (both heads)
| Category | Codex | Gemma |
|---|---|---|
| Metaresearch | 0.000 | 0.002 |
| Meta-epidemiology (narrow) | 0.001 | 0.000 |
| Meta-epidemiology (broad) | 0.001 | 0.000 |
| Bibliometrics | 0.003 | 0.002 |
| Science and technology studies | 0.000 | 0.000 |
| Scholarly communication | 0.001 | 0.001 |
| Open science | 0.000 | 0.000 |
| Research integrity | 0.001 | 0.000 |
| Insufficient payload (model declined to judge) | 0.001 | 0.001 |
Machine scores (provisional)
The two teacher heads of the student model, read on this work. A score orders the frame for review; it never asserts a category, and the validation status ships verbatim with every row.
Baseline scores from an immature model (maturity gate not passed, 7 training rounds). Scores rank; they never assert a category.
score_only:v0-immature-baseline · verbatim from the scoring run: score_only means the number may rank works, and no category label ships from itClassification
machine, unvalidatedMachine predicted; a candidate call from one source (direct Gemma or distilled Codex), not a consensus.
How this classification was reached, model by model and score by score, is at the end of the page under "How this classification was reached".