Vehicle maneuver prediction for misbehavior detection

Một phần của tài liệu Collaborative detection framework for security attacks on the internet of things (Trang 114 - 121)

5.5 TrioSys for detecting location forgery attacks

5.5.3 Vehicle maneuver prediction for misbehavior detection

This part aims to find the truthful trajectory of a target vehicle (i.e., Tx) in various conditions with the help of the relative positioning, as mentioned in the previous subsection.

For the tracking task, we choose the unscented Kalman filter (UKF) [115]. Besides its excellent performance in object tracking, UKF also runs well with non-linear systems, particularly in working with real motion models, an essential factor to evaluate in this work.

As defined in [116], [117], the UKF of the vehicle state from a time step k−1to k can be represented by





xk =f(xk−1) +uk zk =h(xk) +vk,

(5.5.10)

in which xk denotes the state vector, uk denotes the process noise, zk and vk denote the measurement vector and measurement noise (from the sensors/radar and our relative positioning module), and f(.)and h(.)are the non-linear functions describing the process and measurement. The vectors uk and vk are supposed to deal with zero-mean Gaussian white noises with covariances:

E[ukuTi ] =





Qk, i=k 0 i6=k

(5.5.11)

E[vkviT] =





Rk, i=k 0 i6=k

(5.5.12)

in which Qk and Rk are the process noise covariance matrix and measurement noise covariance matrix. To solve the non-linear problem, UKF uses a deterministic sampling procedure to capture the sample points of the mean and covariance estimates (sigma points). Given the state variablexwithn dimensions, we can obtain2n+ 1sigma samples xi and their related weights wi based on the state variable and its covariance Pk|k−1. Let ˆ

x denote the mean of the state vector, i.e., x. The values of xˆk|k−1 and covariancePk|k−1

can be approximated as follows:

ˆ

xk|k−1 =

2n

X

i=0

wixi,k|k−1 (5.5.13)

Pk|k−1 =

2n

X

i=0

wi(xi−x)(xˆ i−x)ˆ T +Qk (5.5.14) in which

wi =





λ

n+λ, i= 0

λ

2(n+λ) i= 1. . .2n

(5.5.15)

and λ denote the spreading parameter.

With an initial setup of xˆand P,



 ˆ

x0 =E[x0]

P0 =E[(x0−xˆ0)(x0−xˆ0)T],

(5.5.16)

the sigma point update xˆ0 and measurement update zˆ through updating transformed sigma points can be expressed by















 ˆ

x0i = ˆxk−1 ;i= 0 ˆ

x0i = ˆxk−1+ (a√

nPk−1)i ;i= 1,2, . . . , n ˆ

x0i = ˆxk−1−(a√

nPk−1)i−n ;i=n+ 1, n+ 2, . . . ,2n ˆ

zk|k−1 =P2n

i=0wih(ˆx0i)

(5.5.17)

in which parameter a controls the range of the sigma samples around the mean value, 1e−4 ≤a≤1; (√

nPk−1)i denotes the ith column of the square root of the matrix nPk−1. The covariance between the predicted state and measurement is given by

Pxˆk|k−1zˆk|k−1 =

2n

X

i=0

wi(ˆxk−1−xˆk|k−1)(ˆxk−1−zˆk|k−1)T. (5.5.18) Based on the above process, the state estimate xˆk and associated error covariance matrix

Pk are updated as follows:



 ˆ

xk= ˆxk|k−1∗Kk(zk−zˆk|k−1) Pk =Pk|k−1−KkPzˆk|k−1 ∗KkT,

(5.5.19)

where Kk = Pxˆk|k−1zˆk|k−1 ∗Pzˆ−1

k|k−1 is the Kalman gain; the innovation covariance matrix or measurement residual can be measured as

Pzˆk|k−1 =

2n

X

i=0

wi(h(ˆx0i)−zˆk|k−1)(h(ˆx0i)−zˆk|k−1)T +Rk (5.5.20)

To enhance the prediction, we still need to define a vehicle’s motion model to track for the filter’s state vector. There are various models such as constant velocity model (CV), constant acceleration (CA), constant turn rate and acceleration (CTRA), constant steering angle and velocity (CSAV), and constant curvature and acceleration (CCA). Each model makes a different assumption and calculation about the object’s motion. The details of these models are thoroughly presented in [118]. In this work, we have tested the filter with three motion models: CV, CA, and CTRA (as illustrated in Fig. 5.5.3).

Applying to a real environment, predicting the state vector and measurement vector of a vehicle by UKF through the association data from sensors is as follows:

StateU KF =h

x y vt at h ω iT

(5.5.21)

M easure=h

x y vt h ω iT

, (5.5.22)

wherexis the longitudinal coordinatexPR,yis the lateral coordinateyPR of the monitoring vehicle,v is velocity, at is the tangential acceleration,h is heading and ω is the turn rate.

For example, applying the CTRA model to the filter, we can calculate the parameter values of the state and the measurement vector in the next stepk+ 1based on the current state k as follows:

x(k+ 1) =x(k) + [vx(k)ãsin(ωT) +vy(k)ãcos(ωT)−1]/ω +[atã(cos(h(k) +ωT)−cos(h(k))+

atãωT ãsin(h(k) +ωT)]/ω

(5.5.23)

Constant velocity (CV)

Constant acceleration (CA)

𝑃𝑥𝑅 𝑃𝑦𝑅

𝑣𝑡

𝑣𝑦 𝑣𝑥

k-1

𝑓 k

𝑢

Figure 5.5.3: Illustration of the vehicle movement behaviors: the vehicle is supposed to keep constant velocity at the straight road segment (first segment), turn at the bend and change the speed (second segment), and then accelerate after moving into the straight area (third segment). In practice, depending to the road condition, the motion model of the vehicle may vary. By applying the motion model to our prediction, we can estimate the next location of the vehicle (state k) from the state of the previous step, i.e., k−1( as the coordinate illustration at the top left of the figure).

y(k+ 1) =y(k) + [vy(k)ãsin(ωT)−vx(k)ãcos(ωT)−1]/ω +[atã(sin(h(k) +ωT)−sin(h(k))−

atãωT ãcos(h(k) +ωT)]/ω

(5.5.24)

vx(k+ 1) =vx(k)ãcos(ωT)−vy(k)ãsin(ωT)+

atãT ãcos(h(k) +ωT)

(5.5.25)

vy(k+ 1) =vy(k)ãcos(ωT) +vx(k)ãsin(ωT)+

atãT ãsin(h(k) +ωT)

(5.5.26)

h(k+ 1) =h(k) +ωT (5.5.27)

in which x(k) and y(k) are periodically updated in T interval (e.g., 0.5s) with the

values collected from the relative positioning instead of the BSM/CAM. Also, we can validatevx(k), vy(k)by using Doppler radar [97] (exact up to 0.1m/s in a LOS area) or estimating relative velocity vt through last two estimated locations, e.g., P1 and P2, by vt = d/T, d = p

(P1x−P2x)2+ (P1y −P2y)2. Similarly, we can know h(k) and u by following the direction and angle of the appearance of the next location. Note that in a NLOS area, where the camera/radar-based systems are often useless, the measurement update by relative positioning is preferable.

Besides the above motion models, in this work, we also evaluate the prediction module with interacting multiple model (IMM) [116] to verify the system for various road shapes and vehicle moving patterns. The IMM filter can deal with multiple motion models in the Bayesian framework [119] to process all of them simultaneously and switch between the proper models in a timely fashion.

For the processing capacity, if the application requires fast response time, we need to select a shorter measurement update cycle. However, based on our evaluation, too short update cycle (e.g., per 50ms) may significantly increase the computation load on the system and the verification accuracy appears almost no better. To allow the Rx to have enough time to react to dangerous situations, particularly when it is at high speed, it is better to set the time properly, e.g., 0.5 seconds, to keep the computation load moderate.

Finally, based on the reported value and the estimated data, each vehicle maintains a table containing the expected and estimated metric, e.g., location, for each neighboring vehicle, as illustrated in Table 5.5.1. Note that the messages that fail in the message authentication will not generate any entries in the table. Each vehicle keeps updating the values in Table 5.5.1, whenever a message is received. The Rx’s objective is to check the consistency between the declared location of a given message source and the estimate of the actual location by the timestamp in this table.

Consistency verification

The trajectory consistency check is the final step to verify whether a vehicle’s movement is abnormal. The prediction results are consistent if the estimated value and the corresponding reported value are matched up in range, i.e., with a minor error within the threshold α. Tweakingα until the system gains excellent performance in detection is a promising approach. To enhance the reliability, besides tweakingα, we also use the

“Normalised Innovation Error Squared” (NIES) model for the extensive consistency check as follows:

Table 5.5.1: Tracking variable values of the system used for checking the consistency between the claimed value of a given message source and the estimate of the actual state of the vehicle (illustration with location information).

Sender ID Timestamp Claimed Location Estimated Location

ID1 1.001 P(xT

1,y1) Pˆ(xT

1,y1)

ID2 1.001 P(xT

2,y2) Pˆ(xT

2,y2)

...

IDi 1.002 P(xT

i,yi) Pˆ(xT

i,yi)

...

IDn 1.002 P(xT

n,yn) Pˆ(xT

n,yn)

ε = (zk+1−zˆk+1|k)TPˆz−1

k+1|k(zk+1−zˆk+1|k) (5.5.28) Notably, the NIES test is used to assess whether Kalman filter’s noise assumptions are consistent with realistic measurements [120]. In our model, we use two degrees of freedom for comparing our prediction and the measurement value. For simplicity, we use 0.95 column and thus expect that 95% of the NIES values is lower than 5.99 (row of 4 degrees of freedom, the column of 0.05 probability in the chi-squared table). If this is the case, the filter is said to be consistent. In contrast, the Tx of the collected messages is classified as an abnormal one.

Threat zone

Verifying the received broadcast messages from all the vehicles is an unwise option unless the vehicles are likely to threaten the Rx’s safety. To limit the number of vehicles needed for verification and then reduce the system load, we propose athreat zone around the host vehicle. This area is defined as a matrix grid of distance from the front and the rear of the Rx, as illustrated in Fig. 5.5.4. According to the definition, each area S covers a broad region around the front/rear of the Rx with an adjustable radiusr,S = πr2. The objects in the area outside two chords of the circle (road edges) are unconsidered for checking.

The Rx can flexibly maintain the zone size according to the surrounding environment condition, e.g., high-density traffic. In summary, the tracking system can be set at one of the three priority levels for verification as follows:

1. Emergency: This level works in the Field of View (FOV)) area where reliable sources such as camera, radar, and LIDAR system are likely to be available to support the measurement update. For example, Doppler radar [97] can provide reliable

information about the acceleration of the target vehicles within a radius of 50m around. When the system is overloaded by tracking too many vehicles, the vehicles in this area should be prioritized to verify.

2. PotentialThreat: If the approaching vehicles are crowded in the radius of 50m to 100m around, they can be potential threats and thus set at the second priority level in verification. The measurement update cycle from the physical signals for the tracking engine can also be set longer, e.g., 1 second.

3. InNotice: We may verify the vehicles in this area, e.g., from 100m to 150m around in the communication coverage only if the traffic density in the area of the other two levels is sparse. Another case is if an accident notification is near the area, the motion behavior of the Tx vehicles in the range should be verified.

Road 1

Rx

Emergency 50m

Potential threat 100m

InNotice 150m Field of view (FOV)

Road 2

Tx Attacker (Tx)

Host vehicle (Rx) Fake vehicles (created by Tx)

Figure 5.5.4: Illustration of the threat zone in front of the Rx. Depending on the Tx’s location, the priority of the system can be at three levels: Emergency, PotentialThreat, InNotice.

According to [27], since the vehicles must keep a front/rear safe distance (e.g., 5-20m), the system may often verify no more than 20 vehicles in the range at the same time.

Also, due to the limited receiving buffer size on the OBU and the potential congestion

in the broadcast channel, a vehicle receiving the shared messages from hundreds of surrounding vehicles simultaneously is an uncommon case. The influence of the multiple- vehicle verification and traffic congestion will be addressed in detail in Section 5.6.2 and Section 5.6.2.

Một phần của tài liệu Collaborative detection framework for security attacks on the internet of things (Trang 114 - 121)

Tải bản đầy đủ (PDF)

(168 trang)