$$\rightleftharpoonup{xx}$$
$$\longleftharp{xx}$$,
$$\longrightharp{xx}$$,
Alle experimenten werden uitsluitend uitgevoerd met publiek beschikbare benchmark-netwerkinbraakdatasets (UNSW-NB15, CIC-IDS-2017 en Bot-IoT), die netwerkverkeersrecords bevatten zonder identificeerbare persoonlijke of medische informatie. De datasets werden gebruikt in overeenstemming met hun respectievelijke licenties en gebruiksvoorwaarden. Omdat er geen menselijke deelnemers, patiëntmonsters of identificeerbare persoonsgegevens betrokken waren, waren institutionele ethische goedkeuring en geïnformeerde toestemming niet vereist.
Overzicht van het voorgestelde kader
Deze sectie presenteert het voorgestelde dubbellaagse intrusiedetectie- en preventiekader voor het beveiligen van IoMT-omgevingen. Het framework integreert een uitgebreid BiLSTM-netwerk voor ruimtelijk-temporele inbraakdetectie met een lichtgewicht blockchainlaag voor manipulatiebestendige logging en geautomatiseerde mitigatie. In tegenstelling tot conventionele IDS-benaderingen die zich uitsluitend richten op detectienauwkeurigheid, is de voorgestelde architectuur ontworpen om tegelijkertijd realtime detectie, forensische verantwoording en naleving van regelgeving te ondersteunen, wat essentiële vereisten zijn in zorgsystemen. De algemene workflow en architectuur van het voorgestelde Extended BiLSTM–Blockchain intrusiedetectieframework voor IoMT-netwerken worden geïllustreerd in Figuur 1.

Figuur 1. Architectuur van het voorgestelde Extended BiLSTM–Blockchain intrusiedetectieframework voor Internet of Medical Things-netwerken. Schematische weergave van het voorgestelde framework met de trainings- en implementatieworkflows. In de trainingsworkflow genereren Internet of Medical Things (IoMT)-apparaten netwerkverkeer dat datapreprocessing en feature engineering ondergaat voordat het wordt geanalyseerd door het Extended Bidirectional Long Short-Term Memory (BiLSTM)-model met temporele aandacht. Modelparameters worden geoptimaliseerd door verliesfunctieberekening en iteratieve training. In de implementatieworkflow voert het getrainde model inbraakdetectie uit volgens de beslissingsfunctie gedefinieerd in Vergelijking 13. Gedetecteerde inbraakgebeurtenissen worden doorgestuurd naar de blockchainmodule, waar onveranderlijke logging, node-isolatie en het genereren van beheerderswaarschuwingen worden uitgevoerd. BiLSTM, Bidirectioneel Langetermijngeheugen; IoMT, Internet van Medische Dingen. Klik hier om een grotere versie van deze figuur te bekijken.
IoMT-apparaten genereren heterogene datastromen bestaande uit netwerkverkeer, apparaatmetadata en patiëntgerelateerde signalen. Dergelijke ruwe input zijn vaak ruiserig, redundant en inconsistent, waardoor ze ongeschikt zijn voor directe modeltraining. Daarom wordt een preprocessing-pijplijn toegepast om de kwaliteit en structuur van de data te waarborgen voordat deze wordt ingevoerd in het Extended BiLSTM-model. De gedetailleerde preprocessing-pseudocode is beschikbaar in Algoritme 1 (Supplementair Bestand 1), dat de preprocessing-pijplijn beschrijft die is toegepast op IoMT-datastromen voorafgaand aan de Uitgebreide BiLSTM-training (pseudocode in Aanvullend Bestand 1; implementatie in Aanvullend Bestand 2). De volledige Extended BiLSTM-architectuur wordt samengevat in Algoritme 2 (Supplementair Bestand 1).
End-to-end reproductieworkflow
De volledige studie kan worden gereproduceerd met behulp van onderstaande stappen. Software en hardware worden vermeld in de Experimentele Opstelling, en de aanvullende code behandelt elke stap.
Download de datasets → Download UNSW-NB15. Gebruik de bestanden UNSW_NB15_training-set.csv en UNSW_NB15_testing-set.csv. Download CICIDS2017. Gebruik de vijf MachineLearningCSV-dagbestanden (maandag tot vrijdag). Download Bot-IoT. Gebruik de 5% subsetbestanden UNSW_2018_IoT_Botnet_Full5pc_1_to_4. Eerdere intrusiedetectiestudies vertrouwden vaak op benchmarkdatasets zoals KDD Cup 9914; deze studie gebruikt echter de recentere UNSW-NB15, CICIDS2017 en Bot-IoT datasets om het hedendaagse netwerkverkeer beter weer te geven. Verwerk elke dataset apart. De UNSW-NB15 dataset is beschikbaar bij de University of New South Wales at https://research.unsw.edu.au/projects/unsw-nb15-dataset (laatst gewijzigd: 8 februari 2024). De CICIDS2017 dataset is beschikbaar bij het Canadian Institute for Cybersecurity op https://www.unb.ca/cic/datasets/ids-2017.html (uitgebracht: juli 2017). De Bot-IoT dataset is beschikbaar bij de University of New South Wales at https://research.unsw.edu.au/projects/bot-iot-dataset (laatst gewijzigd: 5 februari 2024). Alle datasets werden in mei 2025 voor deze studie geraadpleegd.
Verwerk de gegevens vooraf → verwijder corrupte records. Vul ontbrekende waarden in met behulp van trainingsset-methoden. Pas EMA-denoising aan (α = 0,3). Normaliseer features naar [0,1] met behulp van trainingssetstatistieken. Label-encoderen categorische velden. Bouw schuiframen (T = 20, stride = 1). Deze voorverwerkingsstappen ondersteunen robuuste intrusiedetectie door ruis te verminderen en de kwaliteit van netwerkverkeersrepresentaties voor machine-learning gebaseerde IDS'en15,16 te verbeteren.
Selecteer functies (AQU-IMF-RFE) → Rangschik functies op basis van wederzijdse informatie. Verfijn met de Aquila Optimizer. Pas Random Forest RFE toe met 10-voudige kruisvalidatie. Behoud de laatste kenmerken. Deze hybride feature-selectiestrategie volgt het bredere concept van het combineren van complementaire intrusiedetectietechnieken17 en wordt geïmplementeerd met het AQU-IMF-RFE-framework dat in ons eerdere werkis ontwikkeld 18.
Train het model → Voor elke dataset werden de gegevens willekeurig gesplitst in trainingssets (80%) en testsets (20%) met een vast willekeurig zaad van 42. Twintig procent van de trainingspartitie was verder gereserveerd als validatieset. Bouw de uitgebreide BiLSTM. Train met behulp van gewogen binaire kruis-entropieverlies en de Adam optimizer (leersnelheid = 0,001, batchgrootte = 64, maximum van 50 epochs, met vroegtijdige stop). Bewaar het getrainde model. Het gebruik van temporele deep-learningmodellen is zeer geschikt voor heterogeen IoMT-verkeer19. De volledige modeltrainingsworkflow wordt samengevat in Algoritme 3 (Aanvullend Bestand 1). De uiteindelijke klassegewichten werden automatisch berekend uit de trainingsset klassenverdelingen volgens Vergelijkingen 19 en 20. De resulterende klassegewichten waren als volgt: UNSW-NB15:
,
; CICIDS2017:
,
; en Bot-IoT (5% subset):
,
. De hoge waarde van wn voor de Bot-IoT dataset weerspiegelt de ernstige ondervertegenwoordiging van goedaardige samples in de trainingspartitie van de 5%-subset.
Zet de blockchain uit → Start de Proof-of-Authority (PoA)-keten. Rol het smart contract uit en noteer het adres. Autoriseer de gateway-accounts. Voer de client zo uit dat elke gedetecteerde inbraak wordt geregistreerd en isolatie en waarschuwingen activeert. De volledige detectie-, blockchain-logging en mitigatieworkflow wordt samengevat in Algoritme 4 (Aanvullend Bestand 1). De blockchainlaag werd geïmplementeerd met behulp van de go-ethereum (Geth) client versie 1.13.15 om het geperfiseerde PoA-netwerk te bedienen, de Solidity compiler (solc) versie 0.8.19 voor smart-contract compilatie en implementatie, en de web3.py bibliotheekversie 6.15.1 voor communicatie tussen het IDS en het blockchainnetwerk.
Evalueer → Test het model op de vastgehouden testset. Bereken nauwkeurigheid, precisie, herinnering, F1-score en vals-positieve percentage. Registreer latentie en doorvoer. Controleer de integriteit van het blockchain-grootboek. De volledige evaluatieworkflow wordt samengevat in Algoritme 5 (Aanvullend Bestand 1). Detectielatentie (Td) werd gemeten vanaf direct voor de modelinferentieoproep tot het moment waarop de voorspelde kansen werden teruggegeven. End-to-end mitigatielatentie (Td +T b) werd gemeten vanaf hetzelfde startpunt tot voltooiing van de overeenkomstige blockchain-blokcreatietransactie. De doorvoersnelheid werd berekend als het totale aantal voorbewerkte testvensters dat door de volledige detectie- en loggingpijplijn werd verwerkt, gedeeld door de verstreken muurkloktijd die nodig was voor een enkele volledige doorgang van elke dataset. De werklast bestond uit de vensterversies van test, terwijl de oorspronkelijke benign-to-intrusion klassendistributie behouden bleef. Kwaadaardige vensters brachten ook de blockchain-logging overhead met zich mee, terwijl goedaardige vensters alleen de inbraakdetectiekosten opleverden.
Genereer figuren en tabellen → Plot de nauwkeurigheids- en verliescurves, verwarringsmatrix en vergelijkende evaluatiegrafieken. Bouw de vergelijkingstabellen. De volledige workflow voor het genereren van figuren en tabellen wordt samengevat in Algoritme 6 (Aanvullend Bestand 1). De complete, op maat gemaakte broncode die wordt gebruikt om alle figuren en tabellen te genereren, wordt verstrekt in Supplementair Bestand 2. In het bijzonder reproduceert het figures.py-script de manuscriptfiguren direct uit de opgeslagen experimentele outputs (bijvoorbeeld trainingsgeschiedenis en verwarringsmatrixbestanden), terwijl de overige scripts de verwerkte data en prestatie-metrics genereren die worden gebruikt om de gerapporteerde tabellen samen te stellen.
Figuur 2 toont de implementatieniveau datastroom tussen de IDS- en blockchainmodules. De uitgebreide BiLSTM levert een per-venster beslissing op (Vergelijking 13); bij een kwaadaardige classificatie construeert en ondertekent de gateway-client een transactie en stuurt deze via web3/JSON-RPC naar het PoA smart contract, dat een hash-linked block (Equation 14) toevoegt aan het onveranderlijke grootboek en gebeurtenissen (BlockCreated, NodeIsolated en AdminAlert) uitzendt die node-isolatie en beheerderswaarschuwingen veroorzaken.

Figuur 2. Implementatieniveau interactie tussen inbraakdetectie en blockchainmodules. Workflowdiagram dat de communicatie tussen het inbraakdetectiesysteem en blockchaincomponenten illustreert. Het uitgebreide BiLSTM-model classificeert elk invoervenster en past de beslissingsregel toe die is gedefinieerd in Vergelijking 13. Wanneer een inbraak wordt gedetecteerd, genereert en ondertekent de gateway-client een transactie die via Web3.py/JSON-RPC naar het Proof-of-Authority (PoA) smart contract wordt verzonden. Het contract voegt een hash-linked block toe aan het onveranderlijke grootboek volgens Equation 14 en zendt BlockCreated-, NodeIsolated- en AdminAlert-gebeurtenissen uit die containment- en notificatieacties activeren. IDS, Intrusion Detection System; BiLSTM, Bidirectioneel Langetermijngeheugen; Volmacht, bewijs van autoriteit; JSON-RPC, JavaScript Object Notatie–Remote Procedure Call. Klik hier om een grotere versie van deze figuur te bekijken.
Datarepresentatie
Laten we R beschouwen als de ruwe IoMT-verkeersstroom. Na voorverwerking wordt elk ruwe record
omgezet in een genormaliseerde d-dimensionale featurevector (Vergelijking 1):
(1)
Hier is f (⋅) de feature-transformatiefunctie die ruwe records afbeeldt naar een d-dimensionale genormaliseerde featurevector. Laat het IoMT-netwerk bestaan uit een verzameling knopen (Vergelijking 2):
N = {n1 , n2, ... , nk} (2)
Elke knoop nj ∈ R produceert een tijdreeksdatastroom (Vergelijking 3):
(3)
Hier is xt de featurevector op tijdstip t, waarbij d kenmerken (bijv. pakketgrootte, protocoltype, bron-/bestemmingsadres) vaak worden waargenomen in Internet of Things-gezondheidsnetwerkverkeer19. De overeenkomstige labelset is (Vergelijking 4):
(4)
Hier vertegenwoordigt yt=0 normaal verkeer en yt =1 een intrusie.
Gegevensvoorverwerking
De preprocessing-pijplijn omvat de volgende stappen, die veelvoorkomende uitdagingen op het gebied van datakwaliteit en beveiliging aanpakken die gepaard gaan met IoMT-verkeer20:
Gegevensopschoning en verwerking van ontbrekende waarde:
Een record werd vóór imputatie als beschadigd geïdentificeerd en verwijderd als het voldeed aan een van de volgende expliciete voorwaarden: (i) alle featurevelden in het record ontbraken (d.w.z. het hele record was nul), of (ii) het record bevatte een niet-eindige waarde (positief of negatief oneindig) in elk numeriek veld na typecoercion. De tweede regel verwijdert ongeldige vermeldingen zoals die geproduceerd door deling door nul tijdens de berekening van flow-features (bijvoorbeeld oneindige flow-rate-waarden die voortkomen uit flow-flowen met nul duur). Nadat corrupte records waren verwijderd, werden resterende ontbrekende waarden berekend door gemiddelde vervanging per feature, per dataset en alleen uit de trainingspartitie; De resulterende middelen werden toegepast op de trainings-, validatie- en testsets om informatielekkage te voorkomen. Imputatie was niet klasse-conditioneel en de middelen werden niet over datasets verdeeld.
Temporele ontknoping:
Temporele denoising werd uitgevoerd met een per-feature exponentiële voortschrijdende gemiddelde (EMA) filter die langs de tijdsas werd toegepast. De recursieve (causale) vorm yt = α·xt + (1 − α)·yt−1 werd gebruikt, met een gladmakingsfactor α = 0,3, geïmplementeerd via de pandas ewm-functie met adjust=False. Elke functie werd onafhankelijk gladgestreken. Als exponentiële (oneindige-impulsrespons) filter heeft de EMA geen vast venster of kernelgrootte; De gladmakingsfactor α is de enkele parameter die de mate van gladmaking en het effectieve geheugen van het filter bepaalt.
Min–Max-normalisatie:
Min–max normalisatie werd toegepast om elk kenmerk te schalen naar het [0,1]-bereik met behulp van de transformatie x′=(x−min)/(max−min+ε), waarbij ε = 1 × 10−8. De minimale en maximale statistieken werden per feature, per dataset en alleen vanaf de trainingspartitie berekend; Deze opgeslagen trainingsstatistieken werden vervolgens toegepast om de training, validatie en testsets te normaliseren, waardoor lekken van vastgehouden informatie werd voorkomen. Tijdens inferentie werden featurewaarden buiten het trainingsbereik geknipt naar het [0,1]-interval.
Coderen van categorische kenmerken:
Categorische kenmerken werden omgezet naar numerieke vorm met behulp van labelcodering. Dit werd toegepast op alle categorische variabelen: in UNSW-NB15 de proto-, service- en state-velden; in Bot-IoT, het proto-veld; CICIDS2017 bevat geen categorische velden onder de geselecteerde kenmerken. De codering werd geïmplementeerd met LabelEncoder aangepast per variabele.
Temporele venstervorming voor sequentieel leren:
De voorbewerkte featurestroom werd gesegmenteerd in sequenties van vaste lengte met behulp van een schuifvenster van lengte T = 20 tijdstappen met een pas van s = 1. Elk gegenereerd venster werd gevalideerd voordat het werd opgenomen. Een venster werd alleen geaccepteerd als het precies T = 20 opeenvolgende tijdsstappen bevatte en alle featurewaarden eindig waren. Streams korter dan T = 20 records leverden geen vensters op. Deze configuratie (T = 20, s = 1, 95% overlap) werd consequent toegepast op alle experimenten en datasets. De volledige preprocessingworkflow wordt samengevat in Algoritme 1 (Aanvullend Bestand 1).
Het doel van preprocessing is om een voorspellende mapping mogelijk te maken van invoersequenties naar intrusielabels (Vergelijking 5).
(5)
geparametriseerd door θ, die voorspelt of een gebeurtenis goedaardig of kwaadaardig is.
Functieselectie met AQU-IMF-RFE
Feature-selectie werd uitgevoerd met AQU-IMF-RFE, een hybride methode die Mutual Information (MI), de Aquila Optimizer (AO) en Recursive Feature Elimination (RFE) integreert, geïntroduceerd in ons eerdere werk18. De methode werkt in drie fasen. In de eerste fase wordt de wederzijdse informatie tussen elk kenmerk en het klasselabel berekend om een initiële relevantierangschikking te verkrijgen. In de tweede fase voert de Aquila Optimizer een globale zoekopdracht uit over kandidaat-feature-subsets met behulp van zijn vier optimalisatiestrategieën. In de derde fase wordt de verfijnde deelverzameling door Recursive Feature Elimination geleid met 10-voudige kruisvalidatie met behulp van een Random Forest (RF) schatter.
De Aquila Optimizer was geconfigureerd met een populatiegrootte van 100, een maximum van 10 iteraties, een exploitatiefactor van 0,1, een leersnelheid van 0,1 en een aantrekkingsfactor van 0,005. Onafhankelijk toegepast op elke dataset behield AQU-IMF-RFE 14 functies voor UNSW-NB15, 24 voor CICIDS2017 en 12 voor Bot-IoT. De volledige pseudocode wordt verstrekt in Aanvullend Bestand 1, en de geselecteerde feature-subsets worden vermeld in Tabel 4.
| Tabel 4A. Geselecteerde kenmerken behouden voor UNSW-NB15 |
| S. Nee. | Kenmerk | Type | Categorie |
| 1 | Dur. | Numeriek (float) | Basis |
| 2 | sbytes | Numeriek (geheel getal) | Basis |
| 3 | Tarief | Numeriek (float) | Basis |
| 4 | dload | Numeriek (float) | Basis |
| 5 | sinpkt | Numeriek (float) | Tijd |
| 6 | dinpkt | Numeriek (float) | Tijd |
| 7 | sjit | Numeriek (float) | Tijd |
| 8 | tcprtt | Numeriek (float) | Tijd |
| 9 | Synack | Numeriek (float) | Tijd |
| 10 | ackdat | Numeriek (float) | Tijd |
| 11 | Smean | Numeriek (geheel getal) | Inhoud |
| 12 | ct_srv_src | Numeriek (geheel getal) | Verbinding |
| 13 | ct_dst_src_ltm | Numeriek (geheel getal) | Verbinding |
| 14 | ct_srv_dst | Numeriek (geheel getal) | Verbinding |
| Tabel 4B. Geselecteerde kenmerken behouden voor CICIDS2017 |
| S. Nee. | Kenmerk | | |
| 1 | Bestemmingshaven | | |
| 2 | Stroomduur | | |
| 3 | Totale lengte van vooruitgestuurde pakketten | | |
| 4 | Totale lengte van achtergestelde pakketten | | |
| 5 | Maximale pakketlengte | | |
| 6 | Achterwaartse pakketlengte Maximum | | |
| 7 | Gemiddelde van de achterwaartse pakketlengte | | |
| 8 | Flowpakketten | | |
| 9 | Maximum van de inter-aankomsttijd van de stroom | | |
| 10 | Totaal van de voorafwaartse inter-aankomsttijd | | |
| 11 | Lengte van de kopbal naar voren | | |
| 12 | Achteruit-header lengte | | |
| 13 | Vooruitgestuurde pakketten per seconde | | |
| 14 | Maximale pakketlengte | | |
| 15 | Gemiddelde pakketlengte | | |
| 16 | Pakketlengte-standaarddeviatie | | |
| 17 | Pakketlengtevariantie | | |
| 18 | Gemiddelde pakketgrootte | | |
| 19 | Gemiddelde achterwaartse segmentgrootte | | |
| 20 | Subflow Forward Bytes | | |
| 21 | Subflow Backward Bytes | | |
| 22 | Initiële vensterbytes vooruit | | |
| 23 | Initiële vensterbytes achteruit | | |
| 24 | Gemiddelde van de voorwaartse pakketlengte | | |
| Tabel 4C. Geselecteerde functies behouden voor Bot-IoT |
| S. Nee. | Kenmerk | Type | |
| 1 | seq | Numeriek | |
| 2 | Gemiddelde | Numeriek | |
| 3 | stddev | Numeriek | |
| 4 | Min | Numeriek | |
| 5 | Max | Numeriek | |
| 6 | Srate | Numeriek (float) | |
| 7 | drate | Numeriek (float) | |
| 8 | N_IN_Conn_P_SrcIP | Numeriek (geheel getal) | |
| 9 | N_IN_Conn_P_DstIP | Numeriek (geheel getal) | |
| 10 | Proto | Categorisch (gecodeerd) | |
| 11 | state_number | Numeriek (geheel getal) | |
| 12 | Tarief | Numeriek (float) | |
Tabel 4: Kenmerken geselecteerd met de AQU-IMF-RFE-featureselectiemethode. Deze tabel geeft de laatste feature-subsets weer die door het AQU-IMF-RFE-featureselectieframework zijn geselecteerd voor de UNSW-NB15-, CICIDS2017- en Bot-IoT-datasets. Functienamen, datatypes en functionele categorieën worden waar van toepassing vermeld.
Experimentele opstelling
Alle experimenten werden uitgevoerd op een Dell PowerEdge R740-server uitgerust met een Intel Xeon Silver 4214-processor die werkte op een basisfrequentie van 2,20 GHz, met 12 fysieke cores, 24 logische threads, 16,5 MB cache en een Intel Ultra Path Interconnect (UPI)-snelheid van 9,6 GT/s. De server was geconfigureerd met 128 GB RAM, een solid-state drive (SSD) van 512 GB, en draaide op Microsoft Windows 11. De softwarestack bestond uit Python 3.12.7, TensorFlow 2.16.1, scikit-learn 1.8.0, pandas 3.0.2 en NumPy 2.4.4. De blockchainlaag werd geïmplementeerd op hetzelfde werkstation met behulp van een PoA Ethereum-netwerk. Communicatie tussen de IDS en de blockchain werd uitgevoerd via JSON-RPC met behulp van de go-ethereum (Geth) client versie 1.13.15, de Solidity compiler (solc) versie 0.8.19 voor smart-contract compilatie en implementatie, en de Web3.py bibliotheekversie 6.15.1. Gerapporteerde trainingstijd, inferentielatentie en doorvoer werden gemeten op deze hardware- en softwareconfiguratie.
Modelarchitectuur en training
Het Extended BiLSTM-model vormt het kerndetectieonderdeel van het framework, voortbouwend op eerdere leergebaseerde intrusiedetectiebenaderingen die zijn ontwikkeld voor IoMT-omgevingen21. Eerdere inbraakdetectiestudies benadrukten zowel het belang van het balanceren van detectieprestaties met false-alarm reduction15 als de unieke uitdagingen van het toepassen van machine learning-methoden op evoluerend netwerkverkeer16. Samenwerkingsgerichte neurale netwerk-intrusiedetectie-architecturen hebben verder aangetoond dat diep sequentiële feature-learning voor complex netwerkverkeer22 is. Terwijl standaard BiLSTM-modellen bidirectionele temporele afhankelijkheden vastleggen, vertoont IoMT-verkeer zowel kortetermijnburstpatronen als langeafstandsafhankelijkheden veroorzaakt door meerfasige aanvallen. Om dit aan te pakken, breidt het voorgestelde model BiLSTM uit met temporele feature-extractie, verbeterde bidirectionele temporele leer, residuele verbindingen en aandachtgebaseerde temporele prioritering. Bidirectionele LSTM's (BiLSTM) overwinnen deze beperking door voor- en achterwaartse verborgen toestanden te combineren, waardoor een rijkere temporele representatie van IoMT-verkeerspatronen mogelijk is, zoals gegeven in Algoritme 2 (Aanvullend Bestand 1).
Laat de invoerreeks X(nj) = {x1 , x2 , ... , xT } zijn, waarbij elke xt ∈ Rd een voorbewerkte kenschapsvector is.
Temporele Kenmerk Extractie:
Een lichtgewicht eendimensionale convolutie wordt toegepast over de tijdsdimensie om korte-bereik temporele anomalieën te benadrukken (Vergelijking 6):
U = φ (Conv1D(X(nj)), U = {u1, u2, ..., uT } (6)
Hier is φ(⋅) een niet-lineaire activatiefunctie en worden de geconvolveerde kenmerken ut aan de BiLSTM gevoerd.
De Conv1D-laag extraheert kortetermijnpatronen vóór bidirectionele sequentiemodellering. Volledige implementatieparameters zijn beschikbaar in Supplementair Bestand 3B.
Gestapeld Bidirectioneel LSTM-leren:
Voorwaartse en achterwaartse verborgen toestanden worden berekend als (Vergelijking 7):
(7)
De uiteindelijke BiLSTM-representatie is de samenvoeging van verborgen toestanden uit het verleden (vooruit) en het toekomstige (achteruit) (Vergelijking 8).
(8)
Twee gestapelde BiLSTM-lagen modelleren bidirectionele temporele afhankelijkheden. Gedetailleerde architecturale parameters zijn beschikbaar in Aanvullend Bestand 3B. Details over gewichtinitialisatie zijn te vinden in Aanvullend Bestand 3B.
Residuele verbinding en normalisatie
Na lineaire projectie naar passende dimensies worden residuele verbindingen en laagnormalisatie toegepast (Vergelijking 9):

Residuele projectie en laagnormalisatie brengen de convolutionele en BiLSTM-feature-representaties op één lijn voordat aandacht wordt gegeven. Gedetailleerde implementatieparameters zijn beschikbaar in Aanvullend Bestand 3B.
Aandachtsmechanisme
Hoewel BiLSTM sterke temporele modellering biedt, dragen niet alle tijdsstappen gelijk bij aan de voorspelling. Om kritieke tijdstempels te benadrukken (bijvoorbeeld plotselinge afwijkende pieken), wordt een aandachtsmechanisme geïntroduceerd. Elke verborgen toestand
krijgt een relevantiescore αt toegewezen om de detectienauwkeurigheid te verbeteren (Vergelijking 10).

Hier is Wa een trainbare parameter en voldoen de aandachtsgewichten
De contextvector c aggregeert de verborgen toestanden op basis van hun geleerde belang (Vergelijking 11):

Het aandachtsmechanisme aggregeert temporele representaties tot een contextvector. Gedetailleerde implementatieparameters zijn beschikbaar in Aanvullend Bestand 3B.
Uitvoerlaag en classificatie
De geaggregeerde contextvector wordt door een volledig verbonden laag geleid, gevolgd door een sigmoïde activatie om de uiteindelijke voorspelling te verkrijgen (Vergelijking 12):

Hier zijn Wc en bc trainbare parameters, en σ(·) is de sigmoïde activatiefunctie die de uitgang afbeeldt naar het interval [0,1]. Een drempel wordt toegepast om verkeer te classificeren als goedaardig (
) of intrusief (
).
Dropout-regularisatie en de vaste classificatiedrempel die tijdens inferentie wordt gebruikt, worden beschreven in Aanvullend Bestand 3B.
De Extended BiLSTM-architectuur is identiek over de drie datasets; alleen de invoerfunctie-dimensie verschilt, met waarden van respectievelijk UNSW-NB15, CICIDS2017 en Bot-IoT als 14, 24 en 12. Omdat de Conv1D-laag elke -dimensionale invoer afbeeldt naar een vaste 64-kanaals representatie, zijn alle volgende lagen onafhankelijk van de dataset, en variëren alleen de invoervorm en het aantal Conv1D-parameters met . De volledige laag-voor-laag architectuur wordt samengevat in Tabel 5, met parametertellingen uitgedrukt in termen van d; De resulterende totalen zijn respectievelijk 184.641, 186.561 en 184.257 afleerbare parameters voor D = 14, D = 24 en D = 12.
| S. Nee. | Laag (Type) | Uitvoervorm | Trainbare parameters | Activatiefunctie |
| 1 | Input | (20, d) | 0 | — |
| 2 | Conv1D (64 filters, kernelgrootte = 3, zelfde padding) | (20, 64) | 192d + 64 | ReLU |
| 3 | Bidirectionele LSTM-laag 1 (64 eenheden per richting) | (20, 128) | 66,048 | Tanh / Sigmoid |
| 4 | Bidirectionele LSTM-laag 2 (64 eenheden per richting) | (20, 128) | 98,816 | Tanh / Sigmoid |
| 5 | Dichte residuprojectie | (20, 128) | 8,320 | Lineair |
| 6 | Residuele toevoeging | (20, 128) | 0 | — |
| 7 | Laagnormalisatie (as = −1, ε = 1 × 10⁻³) | (20, 128) | 256 | — |
| 8 | Temporele Aandacht (Wa ∈ R¹²⁸×¹) | 128 | 128 | Softmax |
| 9 | Dichte Verborgen Laag | 64 | 8,256 | ReLU |
| 10 | Uitval (p = 0,3) | 64 | 0 | — |
| 11 | Dichte uitvoerlaag | 1 | 65 | Sigmoid |
Tabel 5: Laag-voor-laag architectuur van het Uitgebreide Bidirectionele Lange Kortetermijngeheugenmodel. Deze tabel vat de architectuur samen van het voorgestelde Extended Bidirectional Long Short-Term Memory (BiLSTM) model, inclusief laagtypes, outputdimensies, trainbare parametertellingen en activatiefuncties.
De software en de computationele omgeving die voor alle experimenten worden gebruikt, worden samengevat in Tabel 6.
| Component | Versie / Specificatie |
| Besturingssysteem | Ramen |
| Serverplatform | Dell PowerEdge |
| CPU | 64-core processor |
| RAM | 128 GB |
| Opslag | 512 GB SSD |
| Python | 3.12.7 |
| NumPy | 2.4.4 |
| Panda's | 3.0.2 |
| scikit-learn | 1.8.0 |
| TensorFlow / Keras | 2.16.1 |
| web3 (blockchain-client) | 6.15.1 |
| eth-account | 0.1 |
| Soliditeitscompiler (solc) | 0.8.19 |
| go-ethereum (Geth) | 1.13.15 |
Tabel 6: Software en computationele omgeving gebruikt voor implementatie en evaluatie van het voorgestelde raamwerk. Deze tabel geeft een overzicht van de hardwarespecificaties, softwarecomponenten, blockchaintools en versienummers die worden gebruikt voor datapreprocessing, featureselectie, modeltraining, blockchain-implementatie en prestatiebeoordeling.
Intrusiebeslissing en geautomatiseerde respons
Indringdetectie in zorgomgevingen is alleen effectief als deze wordt gevolgd door snelle respons en mitigatie. De Intrusion Detection Layer zet de voorspelde kans om in een beslissing. Formeel wordt de intrusiebeslissing op tijdstap t als volgt weergegeven (Vergelijking 13):

Hier
is de voorspelde intrusiekans op tijdstip t en
is de classificatiedrempel.
Zodra een inbraak wordt gedetecteerd, werkt de Intrusion Detection Layer direct samen met de blockchainmodule, die onveranderlijke logs, geautomatiseerde mitigatie en gesloten-lus beveiligingshandhaving uitvoert. Gebeurtenisdetails, waaronder broninformatie, bestemmingsinformatie en geselecteerde verkeersfuncties, worden vastgelegd in een nieuw blockchainblok. Smart contracts voeren realtime mitigatieacties uit zoals node-isolatie en beheerderswaarschuwingen. Deze gesloten-lus architectuur maakt het mogelijk dat inbraakdetectieresultaten direct in preventiemechanismen worden gevoed, waardoor de mitigatievertraging wordt geminimaliseerd. Zo dient de Intrusion Detection Layer als de brug tussen temporele detectie met het Extended BiLSTM-model en veilige respons met blockchaintechnologie, waarmee de end-to-end functionaliteit van het voorgestelde framework wordt voltooid.
Blockchain-gebaseerde forensische logging
Hoewel het Extended BiLSTM-model realtime inbraakdetectie mogelijk maakt, zijn veilige opslag en verifieerbare auditing van inbraakgebeurtenissen even cruciaal in IoMT-zorgomgevingen. Traditionele gecentraliseerde loggingmechanismen zijn kwetsbaar voor manipulatie en schaden de forensische traceerbaarheid. Om deze beperking aan te pakken, bevat het voorgestelde framework een lichtgewicht blockchainmodule die onveranderlijkheid, decentralisatie en geautomatiseerde respons op basis van smartcontracten waarborgt.
Elke gedetecteerde inbraakgebeurtenis genereert een blok dat aan de blockchain wordt toegevoegd. Een blok Bi wordt als volgt gedefinieerd (Vergelijking 14):

Hier is Hi de cryptografische hash van de gebeurtenisgegevens, tijdstempel en voorspellingsresultaat, Ti is de tijdstempel, Di bevat geselecteerde intrusie-gebeurteniskenmerken, Sigi is de digitale signatuur, en PrevHash koppelt het blok aan het vorige blok, wat onveranderlijkheid waarborgt.
Dit ontwerp garandeert tamperbestendigheid omdat elke wijziging van Di of Ti de blokhash verandert en de ketenintegriteit breekt. Het biedt ook controleerbaarheid omdat alle gedetecteerde afwijkingen permanent worden opgeslagen en verifieerbaar zijn. Geautomatiseerde mitigatie wordt ondersteund via smart contracts die vooraf gedefinieerde acties uitvoeren, zoals node-isolatie en beheerderswaarschuwingen. Decentralisatie wordt bereikt door meerdere IoMT-gateways die het gedistribueerde grootboek onderhouden, waardoor een enkel faalpunt wordt geëlimineerd.
Blokgeneratie gebruikt de Keccak-256 cryptografische hashfunctie, de native hash-primitieve van de Ethereum/Solidity-omgeving (aangeroepen via Solidity's keccak256). Voor elk inbraakblok wordt de blokhash als volgt berekend:

Hier is Di de gebeurtenisfeature-digest, Ti de tijdstempel en PrevHash de hash van het voorgaande blok. De velden worden samengevoegd met behulp van Solidity's strak verpakte codering (abi.encodePacked) voordat ze worden gehasht, wat resulteert in een 256-bits digest.
Dezelfde Keccak-256-berekening wordt gebruikt door de ketenverificatieroutine, die elke blokhash opnieuw berekent uit de opgeslagen velden en bevestigt dat deze overeenkomt met de geregistreerde waarde, waardoor de ketenintegriteit wordt gevalideerd. Keccak-256 werd gekozen omdat het het standaard botsingsbestendige hashing-algoritme is dat native wordt gebruikt binnen Ethereum smart contracts. Het smart contract werd ontwikkeld in Solidity en gecompileerd met de Solidity compiler (solc) versie 0.8.19. Het werd uitgerold op een privé Ethereum Proof-of-Authority (PoA) netwerk dat werd beheerd met Geth versie 1.13.15. Het blockchainnetwerk was geconfigureerd met vier validator-nodes met behulp van het Clique Proof-of-Authority consensusprotocol, een chain ID van 9848, een blokperiode van 5 s, en een block gas-limiet van 30.000.000. Communicatie tussen de Extended BiLSTM intrusiedetectie-engine en de blockchainlaag werd geïmplementeerd met behulp van de Web3.py bibliotheekversie 6.15.1 via de HTTP JSON-RPC-interface.
PoA-consensusmechanisme
Omdat IoMT-systemen in de gezondheidszorg zeer gevoelig zijn voor latentie, gebruikt het voorgestelde raamwerk een PoA-consensusmechanisme in plaats van rekenkundig kostbare Proof-of-Work (PoW)23. In PoA autoriseert een vaste set vertrouwde validator-nodes, zoals ziekenhuisgateways, transacties, wat zowel efficiëntie als veerkracht biedt.
De tijdscomplexiteit van blokvalidatie onder PoW kan als volgt worden uitgedrukt (Vergelijking 15):

Hier staat d voor de moeilijkheidsgraad van mijnbouw.
Daarentegen wordt de tijdscomplexiteit van de PoA-consensus als volgt gegeven (Vergelijking 16):

Omdat validatie alleen digitale handtekeningverificatie vereist door geautoriseerde validatornodes.
Als gevolg hiervan biedt PoA een operatie met lage latentie, geschikt voor realtime medische waarschuwingen, energie-efficiëntie door rekenintensief minen te vermijden, en veerkracht tegen een beperkt aantal kwaadaardige validators. Het PoA-netwerk was geconfigureerd met vier validatorknooppunten, en deze configuratie bleef gedurende alle experimenten vast om consistente latency metingen, reproduceerbare prestatie-evaluatie en eerlijke vergelijking over alle benchmarkdatasets te waarborgen.
Blockchain-implementatie en Smart-Contract-operatie
De blockchaincomponent werd geïmplementeerd op een geautoriseerd Ethereum-netwerk dat opereerde onder het PoA-consensusmodel24. Het netwerk werd uitgevoerd met de go-ethereum (Geth) client met het Clique PoA consensusprotocol25, waarbij een set geautoriseerde validator (sealer) knooppunten verantwoordelijk is voor het produceren en valideren van blokken. Het intrusion-logging smart contract (IoMTIntrusionLedger) is geschreven in Solidity en geïmplementeerd op dit netwerk, volgens blockchain-gebaseerde IoT-beveiligingsarchitecturen voor veilig, gedecentraliseerd event management26. Alleen gateway-accounts die on-chain geautoriseerd zijn (via de toegangscontrolefunctie van het contract) mochten inbraakrecords indienen, in overeenstemming met geautoriseerd blockchain smartcontract-architecturen voor Internet of Things-applicaties27. De blockchainlaag werd geïmplementeerd met behulp van de go-ethereum (Geth) client versie 1.13.15 voor het bedienen van het gemachtigde PoA-netwerk, de Solidity compiler (solc) versie 0.8.19 voor smart-contract compilatie en implementatie, en de Web3.py bibliotheekversie 6.15.1 voor communicatie tussen de IDS en het blockchainnetwerk.
Gedetailleerde blockchain-implementatie- en configuratieparameters worden gegeven in Supplementair Bestand 3C.
Elk inbraakrecord wordt digitaal ondertekend voordat het in het grootboek wordt vastgelegd, wat blockchain-gebaseerde gezondheidszorgauditie en veilige forensische registratieondersteunt. Procedures voor het genereren en verificeren van digitale handtekeningen, inclusief ECDSA over de secp256k1-curve29,30, worden beschreven in Supplementary File 3D. Elke gateway bevat een Ethereum-sleutelpaar bestaande uit een 256-bits (32-byte) privésleutel en de bijbehorende publieke sleutel, waaruit het accountadres is afgeleid; sleutelgeneratie volgt de standaard Ethereum-procedure, waarbij een cryptografisch veilige willekeurige 256-bits privésleutel wordt gebruikt, waarbij de publieke sleutel wordt verkregen door secp256k1 scalaire vermenigvuldiging. Om een handtekening te maken, berekent de gateway-client de gebeurtenisfeature-digest Di en ondertekent deze met zijn privésleutel met het EIP-191 message-signing formaat, waarmee een 65-byte handtekening wordt geproduceerd bestaande uit de componenten r, s en v. De handtekening wordt samen met het inbraakrecord ingediend. Verificatie wordt on-chain uitgevoerd door het smart contract: met behulp van de EVM ecrecover precompile haalt het contract het adres van de ondertekenaar terug uit de ondertekende digest en handtekening en vereist dat dit gelijk is aan het adres van de geautoriseerde gateway die de transactie indient. Als het teruggevonden adres niet overeenkomt met een geautoriseerde gateway, wordt de transactie geweigerd. Dit bindt elke grootboekvermelding aan een specifieke geautoriseerde gateway en voorkomt ongeautoriseerde of vervalste inbraakrecords.
Smart contracts worden automatisch geactiveerd bij intrusiedetectie,
waardoor realtime respons wordt gegarandeerd zonder handmatige interventie (Vergelijking 17):
(17)
De blockchainmodule werkt parallel aan de Extended BiLSTM-classifier. Zodra een anomalie wordt gedetecteerd: (i) wordt het evenement gelabeld en geclassificeerd door de BiLSTM, (ii) wordt een blok gegenereerd, ondertekend en toegevoegd aan het blockchain-grootboek, en (iii) smart contracts handhaven automatische responsbeleid.
Het intrusieloggende smart contract (IoMTIntrusionLedger) onderhoudt een alleen toegevoegde ledger van intrusieblokken en een register van geautoriseerde gatewayaccounts, en het stelt de functies bloot die in Tabel 7 zijn samengevat. Het contract handhaaft twee toegangsrollen via modifiers: onlyAdmin (de deployende administrator) en onlyGateway (accounts die gemachtigd zijn om inbraakrecords in te dienen). De status bestaat uit de gateway-autorisatiemapping, de blokledger-array en de huidige ketenkop (de hash van het meest recente blok).
| S. Nee. | Functie / Component | Type | Toegang | Logica |
| 1 | Constructeur | Constructeur | — | Stelt de deployer in als beheerder en autoriseert deze als de initiële gateway. |
| 2 | setGateway(adres, bool) | Functie | alleenAdministratie | Voegt een geautoriseerd gateway-account toe of verwijdert het; zendt GatewayUpdated. |
| 3 | recordIntrusion(nodeId, patientId, attackClass, probabilityBp, dataDigest, signature, isolate) | Functie | onlyGateway | Berekent Hi = Keccak-256(Di ∥ Ti ∥ kans ∥ PrevHash); verifieert de ECDSA-signatuur van de gateway op Di via ecrecover; voegt het blok toe aan het kasboek; de kettingkop naar voren brengt; zendt BlockCreated, optioneel NodeIsolated en AdminAlert uit. Geeft Hi terug. |
| 4 | verifyChain() | Bekijk functie | Publiek | Berekent de hash van elk blok opnieuw uit de opgeslagen velden en controleert de PrevHash-koppeling; Geeft true alleen terug als de hele keten consistent is (tamperdetectie). |
| 5 | ledgerLength() | Bekijk functie | Publiek | Geeft het aantal blokken in het grootboek terug. |
| 6 | _recoverSigner(hash, sig) | Interne functie | — | Splitst de 65-byte handtekening in (r, s, v) en herstelt het ondertekeningsadres via de ecrecover precompile. |
| 7 | BlockCreated / NodeIsolated / AdminAlert / GatewayUpdated | Evenementen | — | Uitgezonden voor off-chain luisteraars om logging, node-isolatie, beheerdersalerts en updates van het gateway-register aan te sturen. |
| 8 | onlyAdmin / onlyGateway | Modificaties | — | Beperk functies respectievelijk tot de beheerder en tot geautoriseerde gateways. |
Tabel 7: Functies, gebeurtenissen en toegangscontrolecomponenten van het IoMTIntrusionLedger smart contract. Deze tabel vat de belangrijkste functies, gebeurtenissen en toegangscontrolemodificatoren samen die zijn geïmplementeerd binnen het geautoriseerde blockchain smart contract. Deze componenten ondersteunen gateway-autorisatie, inbraakregistratie, blockchainverificatie, gebeurtenisgeneratie en geautomatiseerde mitigatie.
De onveranderlijkheidseigenschap van de blockchain volgt direct uit Vergelijking 14, waarbij elke wijziging van gebeurtenisgegevens of tijdstempels de hashketen ongeldig maakt. Blockchain biedt daardoor gegevensintegriteit, traceerbaarheid en auditie voor zorgsystemen via onveranderlijke forensische gegevens. Patiënten- en apparaatinbraakrecords blijven ongewijzigd zodra ze zijn opgeslagen, elk blok is veilig gekoppeld aan het vorige blok waardoor chronologische gebeurtenisreconstructie mogelijk wordt, en zorgbeheerders of toezichthouders kunnen inbraakincidenten verifiëren zonder risico op vervalsing.
Verliesfunctie- en modeloptimalisatie
Het voorgestelde Extended BiLSTM-model pakt het binaire classificatieprobleem aan om normaal verkeer en inbraakgebeurtenissen in IoMT-netwerken te onderscheiden. Om het trainingsproces te sturen wordt een binaire kruis-entropie (BCE) verlies toegepast, dat goed geschikt is voor probabilistische outputs van de sigmoïde activatielaag. Voor een dataset met N steekproeven wordt het verlies als volgt gedefinieerd (Vergelijking 18):
(18)
Hier
is het grondwaarheidslabel van de i-de invoerreeks (0 = goedaardig, 1 = intrusie), en
is de voorspelde intrusiekans.
Het raamwerk functioneert als een tweefasige classificatiepijplijn. De eerste fase voert binaire intrusiedetectie uit: de uitgebreide BiLSTM produceert een sigmoid-uitgang
en past de drempel τ = 0,5 toe om elk venster als goedaardig of intrusief te classificeren (Vergelijkingen 12,13), getraind met gewogen binair kruis-entropieverlies. Een tweede fase kan aanvalcategorisatie uitvoeren, waarbij vensters die als intrusies worden geïdentificeerd worden doorgegeven aan een multiclassificator die de specifieke aanvalscategorie toewijst met behulp van een softmax-uitvoerlaag getraind met categorische kruis-entropie. De huidige studie richt zich op en evalueert de binaire detectiefase. De twee stadia delen dezelfde uitgebreide BiLSTM-feature-extractie-ruggengraat (Conv1D, BiLSTM, residuele, normalisatie- en aandachtlagen); Ze verschillen alleen in hun uitvoerlaag (sigmoid voor detectie en softmax voor categorisatie) en de bijbehorende verliesfunctie. De binaire detectiefase en de multiclass-categorisatiefase werden getraind en geëvalueerd onder dezelfde hierboven beschreven datapartities, willekeurige seed en trainingscondities.
Hoewel het IoMT-verkeer vaak onevenwichtig is, wordt een gewogen binaire kruis-entropieverlies gebruikt om een verkeerde classificatie van de minderheidsklasse te bestraffen. Klassegewichten worden berekend met behulp van het aantal intrusiemonsters Np, het aantal goedaardige monsters Nn, en het totale aantal monsters N (Vergelijkingen 19,20):


De weging zorgt ervoor dat het model niet bevooroordeeld is ten gunste van de dominante goedaardige verkeersklasse en gevoelig blijft voor zeldzame maar kritieke inbraakgebeurtenissen.
Het gewogen binaire kruis-entropieverlies wordt als volgt gegeven (Vergelijking 21):
(21)
De training werd uitgevoerd met mini-batches van maat 64. Aan het begin van elk tijdperk werden de trainingsvoorbeelden willekeurig geschud voordat ze werden verdeeld in batches, zodat batchsamenstelling varieerde tussen tijdperken en het model geen voorbeelden in een vaste volgorde zag. Batches waren niet expliciet in balans of gelaagd op klasse; in plaats daarvan weerspiegelde elke batch de natuurlijke klassenverdeling van de trainingsset, en werd een klasse-onevenwicht aangepakt via het klasse-gewogen binaire kruis-entropieverlies (Vergelijkingen 19–21). De validatie-subset die was gereserveerd van de trainingspartitie bleef over de epochs heen vast en werd niet in de trainingsbatches gewisseld.
De klassegewichten in het gewogen binaire kruisentropieverlies werden niet handmatig ingesteld, maar automatisch berekend voor elke dataset uit de trainingsset klassentellingen volgens Vergelijkingen 19 en 20. Voor de UNSW-NB15 dataset waren
de resulterende klassegewichten voor de normale klasse en
voor de intrusieklasse. Voor de CICIDS2017 dataset waren
de resulterende klassegewichten voor de normale klasse en
voor de intrusieklasse. Voor de Bot-IoT dataset (5% subset) waren
de resulterende klassegewichten voor de normale klasse en
voor de intrusieklasse.
Trainingsstrategie en optimalisatie
Het Extended BiLSTM-model werd getraind met mini-batches van grootte B = 64 met gewogen binaire kruis-entropieverlies, de Adam-optimizer en vroegtijdig stoppen op basis van validatieverlies. De training werd beperkt tot 50 epochs, en vroegtijdig stoppen werd met geduld toegepast K = 5. Als validatieverlies gedurende vijf opeenvolgende epochen niet verbeterde, werd de training stopgezet en werden de modelgewichten teruggebracht naar die van het tijdperk met het laagste validatieverlies. Dus 50 tijdperken vertegenwoordigden het maximale trainingsbudget in plaats van een vaste trainingsduur. Er werd een dropout-kans van 0,3 toegepast voor regularisatie. De architectonische opzet omvatte 64 Conv1D-filters, 64 LSTM-eenheden per richting, een vensterlengte van T = 20 en een stap van s = 1. De geadopteerde trainingsstrategie wordt samengevat in Algoritme 3 (Aanvullend Bestand 1). De Adam-updatevergelijkingen die voor optimalisatie worden gebruikt, zijn beschikbaar in Supplementary File 3A.
De Adam-optimizer was geconfigureerd met een leersnelheid van
, een eerste moment vervalsnelheid (β1) van 0,9, een tweede moment vervalsnelheid (β2) van 0,999 en een numerieke stabiliteitsconstante (
) van 1 × 10-7. Er werden geen extra optimizeropties gebruikt en er werd geen gewichtsafname of gradiëntclipping toegepast.
Waarschuwingsgeneratie en geautomatiseerde mitigatie
Detectie alleen is onvoldoende in latencygevoelige IoMT-netwerken, waar snelle respons cruciaal is om patiëntveiligheid te waarborgen. De Alert Generation and Mitigation Layer operationalisert de inbraakbeslissing die wordt genomen door het Extended BiLSTM-model en het blockchain-loggingmechanisme. Als δt = 1, voegt de blockchainmodule een nieuw blok toe met de intrusiedetails
. Tegelijkertijd wordt een smart contract uitgevoerd om mitigatiemaatregelen te activeren (Vergelijking 22):
(12)
Hier zorgt BlockCreation voor onveranderlijke forensische logging van het evenement, quarantaineert NodeIsolation (nj) de gecompromitteerde IoMT-node om verdere schade te voorkomen, en levert AdminAlert realtime meldingen aan systeembeheerders. Om deze dual-layer response pipeline te exploiteren, wordt de pseudocode gepresenteerd in Algoritme 4 (Supplementary File 1).
Smart-contract event processing en off-chain responsmechanismen worden beschreven in Supplementary File 3E.
Elke invoer die aan het blockchain-grootboek wordt toegewijd, wordt opgeslagen als een IntrusionBlock-record, waarvan de velden en dataformaten in Tabel 8 zijn vermeld. Het grootboek is een append-only array van deze records, en de huidige ketenkop slaat de hash op van het meest recent toegevoegde blok.
| S. Nee. | Veld | Gegevenstype | Grootte | Beschrijving |
| 1 | hashId | bytes32 | 32 bytes | Block hash Hi = Keccak-256(Di ∥ Ti ∥ kans ∥ PrevHash) |
| 2 | Tijdstempel | uint256 | 32 bytes | Blokaanmaaktijd Ti (Unix-epocheseconden, uit de bloktijdstempel) |
| 3 | nodeId | bytes32 | 32 bytes | Identificatie van de IoMT-knoop nj |
| 4 | patiëntID | bytes32 | 32 bytes | Patiënt-/apparaatidentificatie (forensische metadata) |
| 5 | attackClass | uint16 | 2 bytes | Aanvalscategoriecode (0 = Normaal, 1 = DDoS, 2 = Spoofing, ...) |
| 6 | kansBp | uint16 | 2 bytes | Voorspelde intrusiekans ŷ in basispunten (0–10.000, d.w.z. 0,00–100,00%) |
| 7 | dataDigest | bytes32 | 32 bytes | Digest Di van de geselecteerde evenementkenmerken |
| 8 | Signatuur | bytes | Variabele (65 bytes) | ECDSA-handtekening Sigi van de event digest door de gateway (r, s, v) |
| 9 | prevHash | bytes32 | 32 bytes | Hash van het vorige blok (PrevHash), die de keten verbindt |
| 10 | Geïsoleerd | Bool | 1 byte | Of knoopisolatie voor dit record werd geactiveerd |
Tabel 8: Structuur van het IntrusionBlock-record opgeslagen in het blockchain-grootboek. Deze tabel beschrijft de velden, datatypen, opslaggroottes en doeleinden van de blockchain-grootboekrecords die worden gebruikt om inbraakgebeurtenissen op te slaan. De structuur ondersteunt cryptografische integriteitsverificatie, forensische traceerbaarheid en geautomatiseerde responsmechanismen.
De totale mitigatielatentie kan worden uitgedrukt als de som van de detectievertraging (Td) uit het Extended BiLSTM-model en de blockchain-uitvoeringsvertraging (Tb) (Vergelijking 23):
(23)
Computationele complexiteitsanalyse
De efficiëntie van het voorgestelde Extended BiLSTM–Blockchain-framework wordt bepaald door zowel de rekenkosten van het BiLSTM-model als de overhead die door de blockchainmodule wordt geïntroduceerd. Het voorgestelde framework integreert Extended BiLSTM-detectie met blockchainlogging om te voldoen aan de kernbeveiligingseisen van de Confidentiality, Integrity, and Availability (CIA) triade.
Laat de voorbewerkte inputsequentielengte T zijn, de feature-dimensie d, en de verborgen dimensie van de BiLSTM h zijn.
Voor elke tijdstap verwerkt een BiLSTM invoer van dimensie d met verborgen grootte h. Aangezien het bidirectioneel is (vooruit + achteruit) (Vergelijking 24):
) (24)
Hier is T de sequentielengte (tijdstappen), d de invoerfeature-dimensie, h de verborgen toestandsdimensie
De aandachtslaag berekent belangrijkheidsgewichten en aggregeert verborgen toestanden met complexiteit (Vergelijking 25).
(25)
die lineair is in zowel de rijlengte T als de verborgen dimensie h.
De totale detectiecomplexiteit per sequentie wordt daarom als volgt gegeven (Vergelijking 26):
(26)
waarmee wordt aangetoond dat temporele modellering de rekenkosten domineert, terwijl het aandachtsmechanisme slechts een lichte overhead introduceert.
Voor elke gedetecteerde inbraakgebeurtenis voert blockchainlogging hashing-, onderteken- en bloktoevoegingsoperaties uit (Vergelijking 27):
(27)
Voor N intrusiedetectiegebeurtenissen wordt de gecombineerde complexiteit als volgt (Vergelijking 28):
(28)
wat als volgt kan worden vereenvoudigd (Vergelijking 29):
(29)
Omdat de blockchain-overhead lineair groeit met het aantal gebeurtenissen en verwaarloosbaar blijft vergeleken met sequentieverwerkingsberekeningen.
Rekenkundige complexiteit wordt samengevat in Vergelijkingen 24–29. Gedetailleerde interpretatie wordt gegeven in Aanvullend Dossier 3F.