Keywords

1 Introduction

Diverse problems related to road traffic have increased worldwide as a result of the population growth, ranging from big urbanized zones to dense populated areas. These traffic adverse circumstances can reduce the efficiency of transport infrastructure and increase travel time, fuel consumption and pollution. One of the consequences of the widespread of Information and Communication Technologies (ICT) is the existence of countless applications that help to drive.

Currently, decisions of drivers depend on what they see and/or hear. However, a system that includes interactive and cooperative driving and an effective traffic control would provide a third channel to receive additional data that cannot be directly seen or heard by drivers, but that might be very helpful for their decision-making.

The so-called Intelligent Transport System (ITS) is a set of technological solutions designed to optimize different modes of transport. One of its main purposes is to prevent adverse traffic circumstances, and to reach it, ITS is based on varied technologies.

Vehicular Ad-hoc NETworks (VANETs) are a key part of the ITS where information is exchanged among vehicles and/or with a communication infrastructure. Thus, every vehicle is assumed to have an information transmitter commonly known as On Board Unit (OBU). Regarding the communication infrastructure, it can be implemented in various ways. For instance, the infrastructure can be arranged along the road in the form of points of communication commonly referred as Road Side Units (RSUs).

A difficult problem in road safety is the discovery of users that fail to stop at red traffic lights. There may be several causes of traffic light violations. One of them is the duration of the traffic lights. Traffic lights with a very short duration cause that users ignore the red light, what produces a ripple effect that can cause many accidents. In order to try to overcome this problem, different solutions exist such as new traffic signal mechanisms, red-light speed cameras to detect offenders, etc., which reduce traffic jams in urban centers around the world. These solutions are effective but very expensive to be widespread.

According to the Traffic Safety Facts Report of the National Highway Traffic Safety Administration (NHTSA) [15], there were more than 2.3 million reported intersection-related crashes, resulting in more than 7,770 fatalities and approximately 733,000 injury crashes in the USA. In particular, the Fatality Analysis Reporting System (FARS) of the NHTSA reports that red-light running crashes alone caused 762 annual deaths, and that 165,000 people are injured annually by red-light runners. Besides, the Insurance Institute for Highway Safety (IIHS) reports that half of the people killed in red-light running crashes are not the signal violators, but drivers and pedestrians hit by red-light runners.

This paper is organized as follows. Section 2 briefly introduces some background of related work. Section 3 explains the theoretical solution proposed to protect the security of the scheme. Section 4 describes in detail the proposed scheme of the sensor platform. In Sect. 5, the user application of the system is presented. Section 6 provides a short explanation about the implementation of the proposal and its time performance. Finally, some conclusions and open problems close the paper in Sect. 7.

2 Related Works

The need of improving road traffic management is evident worldwide. Governments are worried about the growing number of vehicles on roads and of traffic-related deaths. For this reason, they are trying to improve traffic safety by exploring the potential of the ITS through numerous research projects funded by public entities and/or the automotive industry [1]. The current ITS state-of-the-art is based primarily on a series of initiatives from both academia and industry, addressed mainly to try to enable the future development of VANETs.

Several proposals exist to punish those users that violate traffic lights [4, 5]. One of such proposals, called red light camera, has been operating for several years in regions such as China, Hong Kong, United Kingdom and North America [2]. A red light camera is a type of traffic enforcement camera that captures an image of any vehicle that enters an intersection after jumping a red traffic light. It takes automatically a picture to the vehicle that run the red light and the photo can be used as evidence that assists authorities in their enforcement of traffic laws. Generally, the camera is triggered when a vehicle enters the intersection (passes the stop-bar) after the traffic signal has turned red.

In [8], authors present an adaptive traffic light system based on wireless communication between vehicles and fixed controller nodes deployed in intersections. Such traffic light system is based on short-range wireless communication between vehicles, which uses a controller wireless node placed in the intersection that determines optimum values for the traffic lights phases.

The work from Google [7] presents several methods for automatically mapping the three-dimensional positions of traffic lights and robustly detecting traffic light state on board equipment in cars with cameras. They used these methods to map more than four thousand traffic lights, and to perform on board traffic light detection for thousands of drivers through intersections.

The work [11] proposes the use of RFID for dynamic traffic light sequences. It avoids problems that usually arise with systems that use image processing and beam interruption techniques. RFID technology with appropriate algorithm and database were applied to a multi-vehicle, multi-lane and multi-road junction area to provide an efficient time management scheme. A dynamic time schedule was worked out for the passage of each column. The simulation showed that the dynamic sequence algorithm could adjust itself even with the presence of some extreme cases. The conclusion is that the system could emulate the judgment of a traffic police officer on duty, by considering the number of vehicles in each column and the routing properties.

A modern traffic light for six roads and four junctions has been implemented by programming in the PIC16F877A microcontroller [12]. The system works efficiently over the present traffic controlling system with respect to less waiting time, efficient operation during emergency mode and suggestions of alternate route.

To the best of our knowledge, there is no proposal to notify the vehicles in an area where there is a nearby vehicle that has jumped a traffic light. Nor is there a solution allowing a vehicle to report that it has broken the law at a traffic light, anonymously. Anonymity can encourage using this system. The authorities can benefit by analyzing data generated by the system. In this way, it can detect if a traffic light is more likely to be violated than another one. Besides, this can serve to study and adjust the timing of traffic lights.

3 Security Scheme

The proposed system should maintain user anonymity, and integrity and authenticity of information, in order to promote the application to be used. The aim is not to find the users who skip the traffic lights, but to warn above that a user has jumped a traffic light, without being able to trace his/her identity. Therefore, a reliable and secure anonymity scheme is needed to inspire confidence to all users. The proposal uses a cloud server, a sensor platform and smartphones to achieve this aim. The smartphones are used to identify the vehicles. The sensor platform is located in traffic lights and communicates with the smartphones. The cloud server is responsible to notify to the other nearby vehicles.

In order to maintain this level of security, OpenSSL was used in the implementation. OpenSSL is an open-source implementation of the SSL and TLS protocols. OpenSSL supports a number of different cryptographic algorithms. In particular, this work uses the last version 1.0.2 released in January.

For the establishment of a secure communication channel, a Certificate Authority (CA) has been implemented in the cloud server. A certificate authority is an entity that issues digital certificates to certify the ownership of a public key. This allows others to rely upon signatures or on assertions made by the private key that corresponds to the certified public key. In this model of trust relationships, a CA is a trusted third party, trusted both by the subject (owner) of the certificate and by the party relying upon the certificate.

The integrity of the message and the authenticity of the sender are protected through the use of a digital signature scheme. Thus, the vehicle uses its private key during the process of digital signature of the message sent to the server, and the server uses the user’s public key to verify the digital signature of the message. Specifically, the scheme is based on the Elliptic Curve Digital Signature Algorithm (ECDSA) [10] that offers a variant of the Digital Signature Algorithm (DSA), which uses elliptic curve cryptography.

The implementation is based on a digital signature scheme with the following parameters, where \(\times \) denotes elliptic curve point multiplication by a scalar:

  • Curve: Equation defining an elliptic curve field.

  • G: Elliptic curve base point, generator of the Curve with prime order n.

  • n: Integer order of G, so that \(n \times G = O\).

  • \(d_{A}\): Private key integer randomly selected in the interval \([1, n-1]\).

  • \(Q_{A}\): Public key curve point denoted by \(Q_{A}=d_{A} \times G\).

  • m: Message to sign.

On the one hand, n order to sign a message m, Algorithm 1 is used.

figure a

On the other hand, each signature is verified by the server with Algorithm 2.

figure b

In order to protect user anonymity, k-anonymity is used for the digital signature. The concept of k-anonymity was first formulated in [14] as an attempt to solve the problem that given person-specific field-structured data, produce a data release with scientific guarantees that the individuals who are the subjects of the data cannot be re-identified while the data remain practically useful.

In particular, a release of data is said to have the k-anonymity property if the information for each person contained in the release cannot be distinguished from at least \(k-1\) individuals whose information also appear in the release. In particular, the implemented schema guarantees k-anonymity through the application of the ideas in [3], according to vehicle every user is randomly associated to a group that share cryptographic material such as a par of privates pubic keys and a group certificate so that this data are used to sign. In this way, users do not reveal their particular identities but only their group identifier.

4 Sensor Platform

Sensing systems for ITS are based on networked system vehicles and infrastructures, i.e. on smart vehicle technologies. Infrastructure sensors are in general tough devices that are installed in the road. These sensors may be disseminated during road construction or by sensor injection machinery for rapid deployment. There are many types of sensors: vehicle counters, weather stations, cameras to detect traffic jams, radars to detect high speeds, etc. These sensors can be ranged from very simple (such as sensors to detect the number of vehicles on a road section) to highly advanced (such as cameras to detect vehicles with a special software). Usually, the more complex sensors are the most expensive. A camera with visual detection of vehicles is a very expensive system, and it is used to avoid the violations of traffic lights.

In order to add intelligence to traffic lights, the proposed system uses a light sensor that provides information in real time about the traffic light color. This, together with a Bluetooth Low Energy (BLE) module, allows transmitting the state of the traffic light to nearby vehicles, as a beacon notification.

Bluetooth road sensors are able to detect Bluetooth MAC addresses from Bluetooth devices in passing vehicles. If these sensors are interconnected, they are able to provide interesting data. Compared to other traffic measurement technologies, Bluetooth measurement has some differences:

  • High Accuracy and the devices are quick to set up easily.

  • Limited to a number of Bluetooth devices that can be broadcasting in a vehicle so counting and other applications are limited.

  • Non-intrusive measurements what can lead to lower-cost installations for both permanent and temporary sites.

The sensor platform that is used consists of several electronic modules for composing a small, fully integrated system in any type of traffic light.

In this work, RFDuino [13], which is an Arduino shrunk to the size of a fingertip and made it wireless, is used as the board, exactly the 2216 model, with a Dual AAA Battery Shield. The shield has a step-up switching regulator that allows the batteries to be drained down to low voltages while still providing a stable 3.3 V to the RFduino.

The Bluetooth Low Energy module used for the RFDuino is the RFD22102 RFduino DIP. This module has the technical specifications shown in Table 1.

Table 1. RFD22102 BLE Technical Specs

The format of a BLE message include a 1 byte preamble, 4 byte access codes correlated with the RF channel number used, a Packet Data Unit (PDU) that can be between 2 to 39 bytes and 3 bytes of CRC. Thus, the shortest packet would have 10 bytes and the longest packet would have 47 bytes. The transmission times of these packages range from 8 microseconds to the smallest package up to 300 milliseconds for the largest. The PDU for the advertising channel consists of the 16-bit PDU header, and depending on the type of advertising, the device address and up to 31 bytes of information. Also, the active scanner may request up to 31 bytes of additional information from the advertiser if the advertising mode allows such an operation. It means that a sizeable portion of data can be received from the advertising device even without establishing a connection. Advertising intervals can be set in a range of 20 ms to 10 s. It specifies the interval between consecutive advertising packets.

The sensor, which is connected to the traffic light, captures its color and state emitted by a beacon, and constantly sends this information to all vehicles near the traffic lights. To ensure the integrity of each beacon, a digital signature scheme is used.

ISO/IEC 9796-2 [9] scheme 1 based on SHA-1 hash and RSA is applied for the digital signature, because its length is only 22 bytes, so it fulfills the storage requirements of BLE beacons. ISO/IEC 9796-2 is a standard signature scheme widely used in the smart card industry for public key certificates and message authentication because it quite simple to implement.

All traffic lights have a generic certificate to sign beacons, given by the CA of the Directorate General of Traffic.

The beacon is formatted as shown in Fig. 1, where:

  • idTrafficLight: Unique identifier for the traffic light.

  • bearing: Compass direction used to describe the direction of the traffic light (represented in degrees (0–360)).

  • state: State of the traffic light (green, red, etc.)

  • signature: Digital signature of the message.

Fig. 1.
figure 1

Format of the beacon transmitted by the traffic light

This beacon is received by the smartphone, which is responsible for processing information and report anonymously if it did not respect the traffic signal.

5 User Application

A mobile application has been implemented to read the BLE beacon that the traffic light emits, and processes (See Fig. 2).

Fig. 2.
figure 2

User interface of the mobile application

In order to monitor all system users and establish communications, including the use of a server, that is responsible for the control and monitoring, is proposed. The different system technologies are shown in Fig. 3.

Fig. 3.
figure 3

Use flow and technologies used in the system

Depending on the information contained in the beacon, and the speed that the vehicle has at that time, the application detects in background if the vehicle did not respect the traffic lights. If the vehicle driver violated the traffic light, the smartphone sends a message to a server that controls and manages such events. The server is responsible for searching its database to find nearby vehicles at that time. This is possible because the server knows the position of each vehicle using the system, since all vehicles send every 5 seconds their current positions. Once it has located all vehicles near the traffic lights, a push notification that reaches all smartphones of nearby vehicles is generated. The application informs the driver via voice that there is another driver who has skipped a traffic light in its area, so it recommends driving with special caution. The application also displays on a map, the position of the traffic light.

The server is a full-stack Javascript implementation. As cross-platform runtime environment for server-side and networking applications Node.js is used. In order to connect the mobile application with the server through REST Web Services, the work uses Express.js. To store the vast amount of data on the server, a NoSQL database called MongoDB is used.

6 Implementation Analysis

The implemented system uses sensors, smartphones and cloud servers to automatically detect and anonymously report that a driver has failed to respect a traffic light. Figure 4 shows an overview of the system operation.

Fig. 4.
figure 4

Overview of the system operation

The system can also be used by road authorities to detect traffic lights that are less respected. Thus, an action plan can be established to investigate the causes for searching solutions (longer duration of light color, etc.).

The system has several processes that send various data packets. In Table 2, the size of the different data packets used in the proposed system is shown.

Table 2. Size of sent packets

Different batteries of tests were used to check the time separately for each scheme component and the total time. The simulations were done using multiple software packages to add credibility and develop a realistic simulation. Thus, the scenario that has been used for simulations comprises a real traffic situation in the city of Madrid (Spain) in 2014 [6] (See Fig. 5). In order to simulate the architecture and communications of a VANET, a tool called NS-2 was used, and for the traffic generation, we used SUMO software tool.

Fig. 5.
figure 5

Traffic simulation

Finally, the interaction between the traffic generated with SUMO and the network simulated with NS-2 was generated using MOVE, which allows users to rapidly generate realistic mobility models for VANET simulations.

As a result, the times represented by the averages of all tests, shown in Table 3, prove that efficiency has been achieved.

Table 3. Average time required to send different data

7 Conclusions

Novel methods to try to avoid traffic accidents are becoming a major technological research. Among the main causes of traffic accidents, one of the most dangerous is the violation of traffic lights. There are several proposals to detect violators of traffic lights, but all are based on complex systems using video cameras to denounce such violators. This paper proposes a new system based on self-reports of offending vehicles in order to warn nearby vehicles. For this, the system makes use of sensors, placed at traffic lights, which emit their current status as beacon data. Each vehicle is paired with a smartphone that is responsible for reading and processing these beacons to discern whether the vehicle is violating traffic lights or not. If so, the smartphone notifies anonymously to a system in the cloud that the nearby traffic light has been violated. Then the cloud system notifies all nearby vehicles that there is a vehicle with outlaw behavior. The proposed system uses different cryptographic protocols to provide security to all communications and in particular to achieve anonymity, authenticity and integrity messages. This work is part of a work in progress but the first beta implementation shows promising results.