Security to wireless sensor networks against malicious attacks using Hamming residue method
In digitale communicatie worden Hamming codes gebruikt om fouten op te sporen en te corrigeren; als gevolg daarvan zijn alle communicatiesystemen zich bewust van deze codes. WSN’s zijn autonoom en vereisen minder energieverbruik, en dergelijke codes kunnen worden gebruikt om WSN-systeem te beveiligen zonder enige extra infrastructuur. In de voorgestelde aanpak worden initiële beveiligingsbits (door de gebruikers gedefinieerd) gebruikt en wordt een reeks aanvullende beveiligingscontrolebits toegevoegd om het beveiligingscodewoord te genereren. Afhankelijk van de lengte van het veiligheidscodewoord “n” en het aantal initiële veiligheidsbits “k”, kunnen Hamming-codes (n, k) (zoals (6, 3) en (7, 4) codes) worden gebruikt of nog veel meer. Het veiligheidscodewoord “W” wordt verkregen door n – k veiligheidscontrolebits “SC” aan de aanvankelijke veiligheidsbits “S” toe te voegen (zie Eq. 1)
waar p = n – k
“Si” is de i-de bit van “S,” i = 1, 2, 3…. k
“SCj” is de j-de bit van “SC”, j = 1, 2, 3… p
“Wm” is de m-de bit van “W”, m = 1, 2, 3… n
Als het aantal initiële beveiligingsbits k is, dan wordt het mogelijke initiële beveiligingsbits matrix blok “SB” voorgesteld als
waar Sab het element van ath rij en bth kolom voorstelt, q = 2k = totaal aantal rijen, en k = totaal aantal kolommen in SB.
In deze benadering wordt een (7, 4) Hamming-code gebruikt om het beveiligingscodewoord “W” te genereren. De Hamming-code kan echter worden gekozen op basis van de gewenste aanvankelijke beveiligingsbits en de lengte van het beveiligingscodewoord. Hier zijn de initiële beveiligingsbits 4 en de mogelijke initiële beveiligingsbits matrixblok is (d.w.z, 0-15 voorgesteld in binaire bits)
Hier, in de gepresenteerde aanpak, zijn de initiële beveiligingsbits bij bron node 0 0 0 0 (d.w.z, hop 0), dus bij hop 1, zijn de beveiligingsbits 0 0 0 1 enzovoort tot hop 15, aangezien de voorgestelde aanpak slechts tot 15 hops is ontworpen. Dus, eenvoudig kan men zeggen dat de aanvankelijke veiligheidsbits binair equivalent van hopnummer zijn.
Na het verkrijgen van de initiële beveiligingsbits, worden de beveiligingscontrolebits toegevoegd. Deze controlebits worden gegenereerd door de initiële beveiligingsbits te vermenigvuldigen met de beveiligingsmatrix die in Eq. wordt voorgesteld en modulo 2 optellingen uit te voeren. 4
waar SPm een (k × p) beveiligingsmatrix is, voorgesteld als
waar “lrf” staat voor het element van de r-de rij en f-de kolom.
De beveiligingsmatrix is de pariteitsmatrix van (7, 4) Hamming code, die ofwel verkregen wordt uit de pariteitscontrolematrix ofwel uit de generatormatrix. Deze twee matrices zijn reeds gedefinieerd voor de Hamming-codes. In het voorgestelde model is de SPm gemeenschappelijk voor alle bronnodes in het netwerk en is gedefinieerd als
Bijv. bij het bronknooppunt zijn de initiële beveiligingsbits (0 0 0 0); dus de veiligheidsbits zijn
waar SChr de controlebits zijn op de rde hop
Shr de beveiligingsbits zijn op de rde hop, r = 0, 1, 2, 3 ….
Hieruit volgt dat het beveiligingscodewoord op het bronknooppunt wordt verkregen door SCℎ0 toe te voegen aan de beveiligingsbits van het bronknooppunt en kan worden voorgesteld als
waar Wℎr het beveiligingscodewoord op hop r, r = 0, 1, 2,…. is.
Na evaluatie van het veiligheidscodewoord wordt het kwadratisch residu gebruikt om extra veiligheid te bieden, aangezien alleen Hamming-codes wellicht niet efficiënt zijn om WSN’s de gewenste veiligheid te bieden. Kwadratische residuen zijn door de gebruiker te definiëren, veilig, gemakkelijk te implementeren, en gemakkelijk verkrijgbaar. In deze aanpak wordt het residu van 7 gebruikt, aangezien de lengte van het verkregen veiligheidscodewoord 7 is en het maximale aantal bits in het veiligheidscodewoord bestrijkt om de veiligheid te verbeteren. Residuen van 7 zijn 1, 2 en 4; in de voorgestelde aanpak worden deze bitposities (d.w.z. 1, 2 en 4) in het codewoord aangevuld. Het gegenereerde beveiligingscodewoord kan dus worden weergegeven als
waarbij “Rw0” het uiteindelijke beveiligingscodewoord is (na complementering van de residu-posities in Wℎ0) op de r-de hop. Afgezien van de synchronisatie van het definitieve beveiligingscodewoord, wordt de pakket-afleveringsratio (PDR) (zie Eq. 6) van de knooppunten voortdurend gecontroleerd. Als de PDR-waarde aanvaardbaar is, worden alleen die gegevens doorgegeven, en als de PDR-waarde de aanvaardbare grens overschrijdt, worden de gegevens niet verder doorgegeven. Op dezelfde manier gaat dit proces door tot het bestemmingsknooppunt.
waar R.P de ontvangen pakketten is en T.P de verzonden pakketten
Node matching process
Figuur 1 geeft een multi-hop netwerk weer waarin het bronknooppunt communiceert met het bestemmingsknooppunt via tussenliggende knooppunten. Het bronknooppunt zendt Rw0 naar al zijn naburige knooppunten die één hop verwijderd zijn van het bronknooppunt. De vereiste werking op verschillende hops wordt besproken in de paragrafen 4.1.1 en 4.1.2.
Aan hop 1
De initiële beveiligingsbits zijn 0 0 0 1; de controlebits worden gegenereerd door deze bits te vermenigvuldigen met 푆푃푚
En het codewoord op hop 1 kan als volgt geëvalueerd worden
Het complementeren van de residu (van 7) posities (d.w.z, eerste, tweede en vierde positie) in Wℎ1, wordt het uiteindelijke beveiligingscodewoord op hop 1 weergegeven als
Als het naburige knooppunt Rw1 als ontvangstbevestiging naar het bronknooppunt stuurt en zijn PDR waarde is acceptabel, dan zal het bronknooppunt de originele gegevens aan dat buurknooppunt overdragen. De bevestiging mag de voorziene time to live (TTL) niet overschrijden. Nu wordt dit naburige knooppunt het bronknooppunt voor andere knooppunten in het netwerk en zendt Rw1 naar zijn naburige knooppunten.
Aan hop 2
De beveiligingsbits zijn 0 0 1 0, en de controlebits zijn
Door de residu-posities in Wℎ2 te complementeren, kan het uiteindelijke veiligheidscodewoord in hop 2 worden berekend als
Als het bronknooppunt een bevestiging krijgt met Rw2, dan zal het de gegevens doorgeven aan het knooppunt waarvan het de bevestiging heeft ontvangen. Zo niet, dan wordt het knooppunt beschouwd als een rivaliserend knooppunt en worden de gegevens niet naar dat knooppunt verzonden. Dit proces wordt voortgezet tot de informatie of de gegevens door het bestemmingsknooppunt worden ontvangen. Dit proces kan gemakkelijk worden begrepen aan de hand van het protocoldiagram (zie Fig. 2). Aangezien het beveiligingscodewoord bij elke hop wordt gewijzigd en het voor rivaliserende knooppunten zeer moeilijk wordt om het actieve knooppunt in het netwerk te misleiden, verbetert de voorgestelde aanpak niet alleen de authenticatie van het actieve knooppunt, maar geeft het ook meer vertrouwelijkheid aan eindknooppunten door meerdere codewoorden in het netwerk te ontwerpen. Uit Fig. 2 blijkt dat de gegevens worden overgedragen naar intermediair knooppunt 1 (IN1) vanaf het bronknooppunt als het de positieve bevestiging (+ACK) geeft, d.w.z., 푅푤1, aan het bronknooppunt. Zodra de gegevens door IN1 zijn ontvangen, gedraagt het zich als het bronknooppunt voor zijn naburige knooppunten en zendt 푅푤1 naar hen. De gegevens worden niet doorgegeven aan intermediair knooppunt 2 (IN 2), aangezien dit een negatieve ontvangstbevestiging (-ACK) geeft aan IN1, dat daarom wordt beschouwd als een rivaliserend knooppunt.