PVBRF-ID: Private, Verifiable and Byzantine-Robust Federated Intrusion Detection for Oilfield Enterprise Networks
Organizations: Daw Alfada Company, Amarah, Maysan, Iraq · University of Misan, Amarah, Maysan, Iraq · University of Southern Queensland, Toowoomba, QLD, Australia
Abstract
Federated learning allows dispersed oilfield sites to train a shared intrusion detector without pooling network traffic, yet its aggregation step forces a choice between privacy and robustness. Byzantine-robust rules must read each update in the clear, whereas secure aggregation hides updates from the checks that detect poisoning. We present PVBRF-ID, a two-server protocol in which sites secret-share their updates and the servers jointly test each update's norm and its cosine similarity to a reference computed on a small clean root set, revealing one accept bit per site. Commitments, Merkle roots and a homomorphic audit make the inclusion of accepted updates publicly verifiable. On a 15-class Edge-IIoTset task with ten sites holding differently distributed data and ten random seeds, PVBRF-ID matched FedAvg on clean data (macro-F1 0.708 vs. 0.706) and withstood sign-flip attacks (0.696 vs. 0.091). Against an adaptive attacker controlling 30% of sites, PVBRF-ID with secure clipping reached 0.641, whereas FedAvg fell to 0.046; plaintext multi-Krum remained higher by 0.052. An update-inference attacker recovered each site's class mix from plaintext updates (Spearman correlation 0.81) but not from one server's view. Backdoors passed the filter, and noise-based mitigation gave only heuristic protection. The implementation uses Python 3.13, NumPy 2.3, 30 rounds and 10 seeds.
Figures & tables
| Method | Clean | Sign-flip | Label-flip | Targeted flip | Backdoor | Backdoor | Adaptive 20% | Adaptive 30% |
|---|---|---|---|---|---|---|---|---|
| Centralized (reference) | – | – | – | – | – | – | – | |
| Local-only | – | – | – | – | – | – | – | |
| FedAvg | ||||||||
| Trimmed mean † | ||||||||
| Multi-Krum † | ||||||||
| Secure norm-only |
| Method | Clean F1 | Backdoor ASR | Backdoor ASR | Adapt. 30% F1 | |
|---|---|---|---|---|---|
| Trimmed mean † | 0.690 | 0.597 | – | ||
| Multi-Krum † | 0.690 | 0.693 | – | ||
| PVBRF-ID ( ) | 0.708 | 0.571 | – | ||
| + clip | 0.697 | 0.641 | – | ||
| + clip + noise, | 0.696 | 0.643 | 113 | ||
| + clip + noise + agg. clip, | 0.689 | – | 113 |
| View | Class-mix | Top-3 hit | Similarity | Neighbour hit | Accept-bit |
|---|---|---|---|---|---|
| FedAvg (plaintext) | – | ||||
| Trimmed mean (plaintext) | – | ||||
| Multi-Krum (plaintext) | – | ||||
| PVBRF-ID: one server’s share | |||||
| PVBRF-ID: both servers collude | – | ||||
| Chance level | 0 | 0.20 | 0 | 0.33 | 0 |
| Method | Clean F1 | Sign-flip F1 | Honest rej. (%) | Accept typ. (%) | Accept atyp. (%) | Rank |
|---|---|---|---|---|---|---|
| PVBRF-ID, | 0.688 | 0.683 | 43.5 | 82.4 | 33.7 | |
| PVBRF-ID, | 0.703 | 0.693 | 9.2 | 95.8 | 86.0 | |
| PVBRF-ID, | 0.708 | 0.696 | 0.9 | 99.2 | 99.6 | |
| PVBRF-ID, | 0.708 | 0.696 | 0.8 | 99.2 | 99.7 | |
| Multi-Krum † | 0.690 | 0.686 | 30.0 | 93.5 | 40.7 |
| Goal | Description | Evidence and status |
|---|---|---|
| G1 | Clean accuracy close to FedAvg | PVBRF-ID 0.708 vs. FedAvg 0.706 (✓) |
| G2 | Robust to five attacks and adaptive attacker | Table 1 ; multi-Krum better at 30% (✓/~) |
| G3 | One server learns one accept bit per update | Table 3 ; (✓) |
| G4 | Inclusion of accepted updates verifiable | Audit and Merkle inclusion pass; unit tests cover tamper (✓) |
| G5 | Honest atypical sites not systematically excluded | Table 4 , : (✓) |
Appendix figures & tables3 assets
Supplementary material from the paper’s appendix.
Appendix
| Parameter | Value |
|---|---|
| Dataset file | Edge-IIoTset, DNN-EdgeIIoT-dataset.csv (2,219,201 flows, 15 classes) |
| Sampling | per-flow retention probability ; (Normal), (each attack class); sampler seed 12345 |
| Sampled flows | 222,947 (Normal 100,172; attack classes 9,947–10,205 each; MITM 1,214; Fingerprinting 1,001) |
| Features | 80 highest one-vs-rest correlation (payload signature, length, special-character, one-hot and port features) |
| Split per class | 20% test; stratified root set of 1,500 flows withheld from training; split seed |
| Sites | 10, Dirichlet( ) class partition; minimum 300 flows and 5–95% attack share per site |
| Phase | Bytes | Note |
| Upload (two shares, two randomness values, two commitments per site) | 743,040 | plain upload |
| Secure tests: masked-vector openings for the norm test | 742,080 | one -vector per server per site |
| Secure tests: scalar openings for the cosine test | 640 | |
| Secure tests: ideal comparison (placeholder, elements, 8 rounds) | 243,840 | not measured, analytic estimate |
| Aggregate shares and summed randomness | 74,240 | |
| Publish (Merkle roots and bitmaps) | 68 |
| Class | Local-only | FedAvg | PVBRF-ID ( ) | Centralized |
|---|---|---|---|---|
| Normal | 1.00 | 1.00 | 1.00 | 1.00 |
| Backdoor | 0.61 | 0.77 | 0.74 | 0.85 |
| DDoS-HTTP | 0.54 | 0.72 | 0.69 | 0.68 |
| DDoS-ICMP | 0.77 | 0.99 | 0.99 | 0.99 |
| DDoS-TCP | 0.69 | 0.84 | 0.80 | 0.71 |
| DDoS-UDP | 0.82 | 1.00 | 1.00 | 1.00 |