Abstract
In this paper, we present a protocol for secure resolution of collision between aircraft, while their corresponding trajectories are kept private. For privacy reasons, we assume that each aircraft’s position, heading and velocity are not available to all aircraft involved in the protocol.
Our new secure protocol is based on an algorithm, which is for collision resolution of aircraft, without considering the privacy requirement. Our approach is Secure Multi-party Computation. To present our Secure Multi-party Collision Resolution Protocol, we propose a new Secure Sorting Protocol and a Modified Distributed Oblivious Transfer Protocol. We also take advantage of employing a Secure Multi-party Collision Detection Protocol, a Homomorphic Encryption, a Secure Comparison Protocol, and a Secure Maximum Finding Protocol.
To prove the security of our proposed protocol and its sub-protocols, we use the Ideal/ Real Simulation Paradigm. The communication complexity of our proposed protocol is in O (n2), and its computation complexity is in O(n). We have also done a simulation for the execution of our proposed protocol for multiple moving aircraft, to show its practicality.
Keywords
Introduction
The idea of decentralizing in Air Traffic Control is part of the Free Flight concept. In Free Flight, each aircraft could optimally choose its own trajectory without interfering of a ground control station, while collision avoidance and safe separation between aircraft are also observed [9]. Thus, collision detection and resolution emerges as a critical issue in Free Flight.
Suppose a Free Flight condition, where there are some personal aircraft, which intend to keep their trajectories private. They also require being out of the tracking of other aircraft, otherwise collision occurs between them.
As another scenario, consider a coalition of some military aircraft, which participate in a joint airborne operation. Although they have a common mission, there are some mutual distrust between them. Hence, they want to avoid collision during the mission, without disclosing their trajectories to each other.
Therefore, collision detection and resolution is required between mutually untrusted aircraft, where each aircraft may also require that its trajectory to be kept private. To conduct such private computations, one solution is that, a trusted entity know the secret trajectories of all the participants. If no commonly trusted party is available, or no entity could be trusted enough to know the secret trajectories, then privacy will become a major concern.
In this paper, our targets are three-folded, i.e., (1) keeping the trajectories private while (2) avoiding the collision of aircraft, where (3) no trusted entity is available. Our approach to achieve such targets is employing a Secure Multi-party Computation protocol.
In a Secure Multi-party Computation scenario, multiple parties with some secret input data wish to perform joint computations on their inputs, where no commonly trusted entity is available. They also wish to preserve the privacy conditions of their secret data. Westin proposed a definition for privacy [3], which has been referred by more than 5000 papers. He defined privacy as:
“The claim of individuals, groups, or institutions
to determine for themselves when, how, and to
what extent information about them is
communicated to others.”
Secure collision detection and resolution of aircraft trajectories can be considered as a privacy-preserving problem, which might be solved through Secure Multi-party Computation where no trusted entity exists. In this problem, some travelling objects wish to prevent collision, while preserving the secrecy of their trajectories.
The notion of secure multi-party computation was first introduced by Yao [2], then, extended by Goldreich, Micali, and Wigderson [24]. In Air Traffic Control, collision detection and resolution is performed using the Traffic Collision Avoidance System (TCAS) [11]. This system is suitable for onboard collision avoidance. Therefore, it cannot be developed to long-range collision detection and resolution.
In a pioneer study, the first protocol for collision detection and resolution was proposed by Hwang and Tomlin [10]. After that, Hwang and Xue-Jun presented another collision detection and resolution protocol [33]. Also, Hafner et al. designed decentralized algorithms for two-party cooperative collision resolution [21]. Russell et al., proposed Automatic Integrated Collision Avoidance System (ICAS), which combines both ground and air collision avoidance capabilities [29]. A. Alonso-Ayuso et al. [1] proposed a Variable Neighborhood Search (VNS) approach for collision resolution of aircraft by turn changes. The basic idea of VNS consists of changing neighborhood structures in search of a better solution for resolving the collision between aircraft.
E. Mueller et al. [7] proposed a collision resolution algorithm using speed adjustment of aircraft. Their algorithm is optimized by using Markov decision process model. M. Abramson et al. [15] proposed an algorithm for alerting and guidance of aircraft to resolve the collision between them. That algorithm combines flexibility, robustness, computational efficiency, and it makes no assumptions regarding temporal or spatial scales, aircraft performance, or its sensor and communication systems. M. Soler et al. [22] proposed a trajectory plan for collision resolution of multiple- aircraft. Their proposed plan is based on optimization of the fuel consumption.
N. Durand [23] proposed an algorithm, which is a modification of Optimal Reciprocal Collision Avoidance Algorithm, which does not solve collisions for small angle converging aircraft. To avoid this behavior, Durand [23] used the directions of the semi-plane to calculate the collision resolution maneuvers. Moreover, Paielli and Erzberger proposed algorithms and software to detect and resolve collision between specified trajectories in the terminal airspace. In that paper, they specified trajectories for aircraft such that the position at any time is constrained to a defined bounding space [26]. Hao et al., proposed a method for collision detection and resolution of aircraft in the context of four-dimensional trajectory- based operation. In that paper, collision detection is performed by verifying whether the Space-Time Prism of aircraft intersect or not, and collision resolution is performed by planning a collision-free spacetime trajectory avoiding intersection [27]. Moreover, Hao et al. proposed a probabilistic collision detection approach for uncertain condition and trajectory-based operation. In that paper, they developed a method for estimating the collision probability of aircraft [28]. Yang et al., proposed a scheme for collision detection and resolution of aircraft in conditions where uncertainty affecting the future positions of aircraft. They used ellipsoidal probabilistic reach sets to detect and resolve collision between aircraft [32]. In addition, Narkawicz and Hagen proposed algorithms for collision detection between a point and a moving polygon, where the point represents an aircraft. The motivation of their proposed algorithm is providing safety for aircraft, and avoiding aircraft to enter the region with bad weather [5].
W. Wang [31] proposed a distributed collision resolution approach which is based on satisficing game theory to reduce flight collisions and improve economic efficiency. That algorithm avoids collisions by adopting the speed and heading of aircraft. Zhao et al. [25] proposed a collision resolution algorithm for multiple ADS-B equipped aircraft. In that paper, they defined a risk map to describe the risk of collision, and plan a cost-minimized trajectory. They used Dijkstra’s algorithm and index method to reduce the computational complexity.
In those researches, the detection and resolution of collisions between aircraft was investigated, while privacy was not preserved. In contrast, privacy was the main security property in the protocol proposed by Boneh et al., for real-time proximity assessment of traveling objects without predefined trajectories [4].
In many applications, the delay due to running of collision detection and resolution protocol is not acceptable and hence, the protocol proposed by Boneh et al., is not suitable to use. In a previous study, the probability of satellite collisions has been appropriately computed based on garbled circuits [6]. However, the size of the garbled circuit that they have employed, is generally too large and does not exhibit an acceptable performance for collision detection.
One of the secure protocols, proposed by Atallah and Du to solve computational geometry problems [19], addresses the secure determination of intersection between polygons. Though that protocol can be utilized to detect the collision of traveling objects at a specific time point, it is not efficient to use this protocol to determine the collision points of all trajectories.
Also, we proposed secure protocols for collision detection of two or more traveling objects such as aircraft [17].
In this paper, we present a protocol for secure resolution of collision between aircraft. The aircraft are supposed to employ the secure protocols for obtaining and resolving collision points before departure.
The proposed secure protocol is designed based on the following assumptions: The communication between aircraft without the effect of a trusted third-party (here, Ground Stations) is possible. The trajectories of aircraft are not complicated. These trajectories are predefined, though they should remain secret. Although, the trajectory of an aircraft is known for itself before departure, but it should be kept secret from the other aircraft. In Free Flight, the delay due to the running of real-time collision detection and resolution protocol is not acceptable. Therefore, the aircraft desire to run the collision detection and resolution protocol before departure. Therefore, we assumed their trajectories are predefined to run the proposed protocol before the start of the flight. The computational power of aircraft and adversaries are bounded by a polynomial time. We have also addressed the problem of establishing security in the presence of passive adversaries (or semi-honest parties) that despite following the protocol, can analyze the message transcripts to obtain additional data. The distance between aircraft at a certain time t should be more than d. This constraint, should be considered for the entire time period and for the entire trajectory. So, if the distance between aircraft at a certain time t are less than or equal to d, the collision occurs.
We also consider the assumptions presented in [10]. Hwang and Tomlin assumed that aircraft travel at constant altitude with varying velocities. Also, they assumed that collisions are resolved by modifying the heading or/and velocity of aircraft in the horizontal plane. They constrained the maneuver to be two straight trajectories of equal length. Moreover, they assumed that all aircraft start collision resolution maneuvers at the same time and the velocities of them along the maneuvers are constant.
Also, for privacy reasons, we assume each aircraft’s position, heading, and velocity are not available to all aircraft involved in the collision.
In summary, the contribution of this paper is proposing a secure protocol for collision resolution of aircraft based on the algorithm proposed in [10]. Our proposed protocol is presented in two steps; first, we consider an unrealistic exact collision, in which the original trajectories of all aircraft collide at a point, and then we consider a realistic inexact collision, in which collision points of multiple aircraft do not coincide.
This paper is organized as follow:
First, we briefly describe the protocol was proposed in [17], which is for secure obtaining the collision points of two or more traveling objects. We use that protocol in our proposed secure collision resolution protocol. Then, we propose a secure protocol for resolving the collision points of aircraft. Afterward, we prove the security of our proposed protocol, and we present the complexity analysis of our proposed protocol.
Secure multi-party collision detection protocol
Suppose that some aircraft have predefined trajectories that consist of several line segments. They want to securely know if their trajectories collide. Therefore, they should participate in a secure protocol to determine if a collision occurs.
In [16], an algorithm was proposed, which is for obtaining the intersection of some line segments. However, that algorithm is not secure. So, a secure protocol was proposed in [17], which is based on the algorithm proposed in [16], and composed of four steps. In the following, we briefly describe the protocol proposed in [17]. - The first step is the secure queue generation of line segments endpoints, where the endpoints are the event points of the algorithm. In this step, the parties want to generate a queue from their line segments’ endpoints. They securely sort their line segments’ endpoints on the y-axis from up to down. The moments at which the endpoints are seen are the only moments when the algorithm does something: the status of the queue is updated and intersection tests are done. In particular, if the endpoint is the upper endpoint of a segment, then a new segment must be added to the status. This segment is tested for intersection against the adjacent segments. If the endpoint is a lower endpoint, a segment must be deleted from the status. Therefore, the segments should only be tested when they are adjacent in the horizontal ordering. This means that any new segment is only tested against two segments. Namely, the ones immediately left and right of the upper endpoint. Later, when the next endpoint in the queue is seen, a segment can become adjacent to other segments against which it will be tested. - In the second step of the protocol, the segments are sorted from left to right to detect the adjacent segments for intersection testing. In this step, by visiting each upper endpoint in the queue, the sorting operation should be done. - When the adjacent segments are found, intersection testing should be performed on them. - When an intersection occurs, the intersection point is inserted in the queue. Because the new status not only changes at endpoints of segments; it also changes at intersection points, where the order of the intersected segments changes. When this happens, the two segments that change the position against their new neighbors must be tested. This is a new type of event point of the algorithm.
One important point is that an intersection occurs when the distance between segments is less than or equal to predefined threshold d. However, when the distance is equal to 0, the status of segments changes. So, the intersection points are only inserted in the queue when the distance is equal to 0. For more clarity, some sub-protocols were proposed as building blocks of Secure Multi-party Collision Detection Protocol. These sub-protocols are Secure Queue Generation Protocol and Secure Order Finding Protocol of Line Segments. Also, the intersection of two adjacent line segments is obtained by using the protocol presented in [13]. Then, the intersection points are securely inserted by using the datastructure proposed in [30]. The details of these steps were described in [17].
Collision resolution protocol
In this section, we briefly describe the algorithms for resolving the collision of aircraft, which was proposed by Hwang and Tomlin in [10]. Hwang and Tomlin assumed that aircraft travel at constant altitude with varying velocities. Also, they assumed that collisions are resolved by modifying the heading or/and velocity of aircraft in the horizontal plane. They constrained the maneuver to be two straight trajectories of equal length. Moreover, they assumed that all aircraft start collision resolution maneuvers at the same time and the velocity of them along the maneuver are constant and are bounded between v min and v max . In [10], a collision is defined as an event, in which at all times, the distance between aircraft is less than a predefined d, which they assumed to be 5 nautical miles (5nm). In the following, we briefly describe the algorithms presented in [10]. Then, we propose our secure collision resolution protocol, which is based on the algorithms presented in [10].
Hwang and Tomlin proposed two algorithms for collision resolution in exact and inexact collisions as Algorithms 1, 2 [10]. They partitioned the space around the collision point into two circular discs of radius r
min
= v
min
. T and r
max
= v
max
. T, where T is a fixed look-ahead time. They denoted the heading change of aircraft for collision resolution as
u
i
. For a safe collision resolution, the minimum distance between aircraft during the resolution maneuver should be greater than or equal to d. Hwang and Tomlin assumed that the heading change of all aircraft to be the same and u = u
i
(for i = 1, . . . , N). Thus, the condition for safe resolution is, where it can be used to design a protocol for collision resolution of aircraft:
Then, they constructed partitions in the angular direction around the collision point and proposed a protocol for collision resolution within each partition using the value of u. In [10], they used six partitions and derived the protocol for an exact collision as below:
where δΘ min = min {|Θ i - Θ j | i, j = 1, 2, . . . , N ; i ≠ j} is the minimum relative angle between aircraft.
Also, they assumed that each aircraft has access to other aircraft position, velocity, and heading, and thus detects a collision. However, we assume that each aircraft’s position, heading, and velocity is not available to all aircraft involved in the collision, for privacy reasons. Therefore, the aircraft should use the Secure Multi-party Collision Detection Protocol proposed in [17], to securely obtain the collision points. Then, they need to securely resolve the collision. Thus, we propose a secure protocol for collision resolution of aircraft based on the algorithms proposed in [10], which are presented in two steps, namely exact and inexact collision. Fig.1 demonstrates an inexact collision. The algorithms of the exact and inexact collision resolution presented in [10], are as follow.
Hwang and Tomlin [10] proved the safety and correctness of the Algorithms 1 and 2 for multiple-aircraft collision resolution. We base our secure multi-party collision resolution protocol on only security enhancing these Algorithms. So, the safety and correctness of our proposed secure protocol can be proved based on the proof presented in [10].
1) Each aircraft chooses a partition based on the collision point and its angular position, computes its own heading change according to this partition, and broadcasts this heading change u i to all other aircraft;
2) Among all heading changes broadcast including its own each aircraft chooses the smallest (i.e.
Where u=heading change for collision resolution (rad)
For i = 1, 2,..., N:
1. Select the last collision point among possible collision points as the center of collision resolution;
2. If aircraft i is not involved in the collision at the origin, adjust its velocity such that v i = r i /T
3. Aircraft i computes its own heading change u exact from Algorithm 1, and computes w i , w max , andu;
4. Aircraft i changes its heading by u - w i .
Where r i =radial position of aircraft i, nautical miles (nm);
T=finite time horizon; v i =velocity of aircraft i, (nm/sec);
w i =heading difference between the true heading of aircraft i and the origin of reference frame; w max = max(w i ), for i = 1, 2,..., N; and
In this section, we propose a secure protocol for collision resolution of aircraft. We consider the assumptions were presented in [10], and described in section 3. Our proposed protocol for collision resolution of aircraft is based on Algorithms 1, 2.
To propose these algorithms in [10], Hwang and Tomlin have initially partitioned the airspace around the collision point into two concentric circular discs of radii r min and r max , where r min = v min . T and r max = v max . T, and the velocities of aircraft are in [v min , v max ].
All the aircraft that are in the annulus between the two radii at the initiation of the collision maneuver should participate in the collision resolution algorithm. As our Secure Multi-party Collision Resolution Protocol is based on the algorithms proposed in [10], we use this assumption to determine the specific number of aircraft, which participate in our proposed secure protocol.
Also, Hwang and Tomlin assumed that each aircraft has access to other aircraft’ position, velocity, and heading. So, the privacy issue was not considered in Algorithms 1, 2. However, we want to propose a secure protocol for resolving the collision of aircraft. Thus, we assume that each aircraft has not access to others position, velocity and heading. Our proposed protocol has four steps as below. The following protocol is for secure inexact collision resolution.
1. Secure Selection of Last Collision Point 2. Velocity Adjustment 3. Secure Computation of u exact , w i , w max , and u 4. Heading Change
As steps 1 and 3 require interaction between aircraft, we propose some protocols for them. In these protocols, we need Secure Multi-party Collision Detection and Secure Sorting Protocols. Therefore, we use the proposed protocol in [17] for secure detection of collision points. Also, we propose a secure protocol to sort private inputs of parties as below.
Party1 selects a random and secret number a1. Then he encrypts a1 with the public key of Party2. He denotes the result as x1.
x1 = Enc
Party
2
(a1)
Party1 sends x1 - i1 + 1 to Party2. Party2 cannot extract information about the secret value of Party1 from x1 - i1 + 1. Because Party1 selected a1 randomly and sent it securely to Party2
Party2 computes b
s
for s=1,...,10 as b
s
= Dec
Party
2
(x1 - i1 + s). He keeps the obtained values secret.
Party2 selects randomly a prime number p and computes c
s
= b
s
(mod p). The condition for selecting p is that the differences between all values of c
s
should be at least 2n-1, where n is the number of parties. If this condition is not satisfied, Party2 selects a new ’p’ and the above condition is evaluated again.
Party2 encrypts the values of {c1, . . . , c
i
2
, ci2+1 + 1, ci2+2 + 1, . . . , c10 + 1} with the public key of Party3. Then, he sends the obtained array and the value of p to Party3.
Party3 decrypts the received array by his private key. Then he adds the values of the received array entries with indices from i3 + 1 to n by 21 = 2.
Party3 encrypts the obtained array from the previous step with the public key of Party4. He sends the encrypted array to Party4.
Party
n
decrypts the received array from Partyn-1 by his private key. Then he adds the values of the received array entries with indices from i
n
+ 1 to n by 2n-2.
Party
n
encrypts the obtained array from the previous step with the public key of Party1 and sends it to Party1.
Party1 decrypts the received array from Party
n
by his private key. Then, he compares the values with index i1 by a1 and finds out the position of his secret value rather than other parties secret values.
In this step, all contributors need to know the results of comparison and sorting. So they should query their indices from Party1 and compare them by array received from the previous party. However, the important point is that, Party1 should not be aware of their index and they should just know their own indices values. Otherwise, there are information disclosure. Oblivious transfer protocol is a suitable solution for these conditions. However, by using 1-2 oblivious transfer protocol, the operation overhead of Party1 increases. So, we propose a distributed oblivious transfer protocol, which is a modification of protocol proposed in [20]. The parties use this protocol to securely obtain their indices as below.
Party1 arbitrarily creates the polynomial G
y
(y) of degree n-2 (n ≥ 2) with the following conditions:
Party1 selects the arbitrary polynomial G
x
(x) of degree k-2, where k is the number of servers. Then he creates the H(x,y), based on G
y
(y) and G
x
(x) where,
Party1 sets the servers indices for the value of x in H(x,y), and creates the transfer function of each server, i.e., F
i
(y). Then he sends the transfer functions to the servers.
All the contributors intend to receive their messages from Party1. So, all of them have the role of receiver in each run of this protocol. Hence, the steps 2n+7 until 2n+10 should be run by each of the contributors, independently.
The k
th
receiver (Party
k
) creates an arbitrary linear polynomial L
k
(x) with the following condition:
Then, the k
th
receiver obtains M(x) by replacing L(x) instead of y in H(x,y).
M
k
(x) = H (x, L
k
(x)) =
K
th
receiver requests for H(i, L(i)) from servers and finds M(x) after receiving the answers of the servers and doing the interpolation operations.
Each contributor declares the ordering of his secret value in the sort.
A secure sorting protocol was proposed in [18], where the first party has operation overhead. In that protocol, Party1 and other n-1 parties run
In our proposed Secure Sorting Protocol, we propose a modified distributed oblivious transfer protocol to reduce the operation overhead of Party1.
In the next section, we propose Protocols 2, 3 and 4, that are the building blocks of the Secure Multi-party Collision Resolution Protocol. The first step of our proposed protocol is Secure Selection of Last Collision Point, which is stated as below:
The aircraft select securely the last collision point based on the Secure Multi-party Collision Detection Protocol [17], which described in section 2. In each time interval [0,T], the position of the last collision point is securely obtained and announced to all aircraft.
It should be noticed thatin Secure Multi-party Collision Detection Protocol, the sweep line is in parallel with the y-axis, and moves from left to right in the direction of the x-axis.
Also, based on the Secure Multi-party Collision Detection Protocol, the last collision point and the location of traveling objects are presented in the cartesian coordinates x and y. Thus, we should convert them to polar coordinates r and Θ with r ≥ 0 and Θ in the interval (- π, π] by:
When the last collision point is securely obtained, each aircraft i which is not involved in the collision, adjusts its velocity such that v i = r i /T. As we assumed that the aircraft are semi-honest and there is not any interaction between aircraft in this step, the Velocity Adjustment is securely done. Then, in the next step (step 3), each aircraft computes its heading change u exact , w i , w max , and u; So, we propose Protocols 3 and 4 for secure computation of u exact , w max as below. Protocol 3 is for secure exact collision resolution.
Each aircraft obtains its angular position
Θ
i
based on the last collision point, as obtained in Protocol 1.
The aircraft run Secure Sorting Protocol on their angular position Θ
i
.(i.e., Secure Sorting Protocol on
The aircraft apply a homomorphic encryption system on their angular position using the public key of the first aircraft. (i.e., The aircraft securely compute the difference between their encrypted angular position
In [8], a secure protocol for comparison of encrypted values was proposed, which is a building block for secure sorting of encrypted values. So,
The aircraft securely compute max (δΘmin,i) using secure protocol proposed in [8]. Baldimtsi and Ohrimenko proposed a protocol for secure comparison and secure sorting of encrypted values [8]. Their proposed protocol relies on homomorphic properties of Paillier cryptosystem to allow parties to privately compare and swap pairs of ciphertexts, and a data independent sorting network, i.e., Batcher’s sort. They proposed a protocol for sorting just two encrypted elements and used it as a black box for general sorting. Their general sorting protocol requires O (n (log 2n))time for sorting, where n is the total number of elements to be sorted. In this phase of Protocol 3, we use the secure sorting protocol of encrypted values, which proposed in [8] to sort the values of δΘmin,i, and find the maximum value of them. Where u
exact
= max (δΘmin, i) and is public for all aircraft.
Now, the aircraft should compute w max . Therefore, they run Protocol 4 on their w i .
Each aircraft has its own w
i
as secret. So, all aircraft apply Protocol 1 to sort
Each aircraft has the values of u exact , w i , w max . Therefore, they can compute the value of u without interaction. The next step of secure inexact collision resolution protocol is heading change (step 4), where each aircraft changes its own heading by u - w i . Thus, they securely resolve the collision. Fig. 2 and 6 demonstrates the steps of our secure proposed protocol.

Inexact Collision [10]

The steps of Secure Multi-party Collision Resolution Protocol
In this section, we proposed a protocol for collision resolution of aircraft based on the exact and inexact algorithms, which proposed in [10]. In the appendix, we state an example of our proposed Secure Multi-party Collision Resolution Protocol for combination of three aircraft and only for exact collision.
The following lemma is stated that our proposed protocol guarantees the safety condition.
In the next section, we prove that our proposed Secure Multi-party Collision Resolution Protocol is secure too.
The security of the Secure Multi-party Collision Detection Protocol was proved in [17]. The interested reader is referred to [17], to study the security proof of the Secure Multi-party Collision Detection Protocol and its building blocks.
In this section, we show the proposed Secure Multi-party Collision Resolution protocol is also secure, as long as its building blocks are secure. As the Multi-party Collision Resolution Protocol is composed of some building blocks, we first prove the security of them. So, we first prove the security of Protocols 1, 2, 3 and 4 as below.
When Party 1 sends x - i1 + 1 to Party 2 , there is not any information disclosure. Because the value of a 1 is selected randomly and encrypted by the public key of Party 2 . Thus, Party 2 cannot extract information about the secret value of Party 1 .
Also, steps 3 until 2n+3 is done by Party 2 to Party n consecutively. Each party receives an encrypted array from the previous party. He decrypts it by his private key. Then, he modifies the decrypted array and encrypts the modified array by the public key of the next party. Since the modified array is transferred between parties, the next party does not learn any thing about the secret value of previous party. Also, the next party cannot obtain any information about secret values of other parties. Because in each step the receiver modifies the received array and encrypts it with the public key of the next party. So, only the next party can decrypt it. Otherwise, they can obtain more information by comparing two arrays.
Now, we prove the security of the second section of Protocol 1. We prove that these steps, preserve the privacy of the sender and receiver in the modified distributed OT protocol.
In the modified distributed OT, the receiver just learns an equation of
m
i
, for 2 ≤ i ≤ n. Also, he does not obtain any information about
m
i
by receiving information from less than n-2 servers. The receiver sends queries to servers and receives the answers as
Now, we should show that the receiver just learn a single combination of e i . In fact, the rows of the matrix A do not span the following vectors:
The matrix A has 2n-4 columns and n-2 rows. Consider a matrix A’ with 2n-4 rows which is formed by taking the first n-2 rows of A and appending to them the above vectors g1 . . . gn-2. The determinant of A’ is not zero. Therefore, the first n-2 rows of A do not span any of vectors g1 . . . gn-2. So, the receiver just learns a single equation of m i for 2 ≤ i ≤ n. Also, the information from less than n-2 servers does not reveal to the receiver any information about m i . If we consider the colluding adversaries, the Secure Sorting Protocol is secure against t < n colluding passive adversaries, if Party1 be honest and other parties collude with each other to earn the secret value of Party1. Because only Party1 has the secret value a 1 . Also, this protocol is secure against every t colluding passive adversaries, as long as, the indices of all colluding passive adversaries k are k > j (or all k < j). However, if parties earlier and after of Party j collude with each other, they can earn the secret value of Party j by comparison of their received array. Also, if Party j (2 ≤ j ≤ n) be honest and other parties collude with each other to earn the secret value of Party j , the Secure Sorting Protocol is not secure against colluding passive adversaries. It should be mentioned that in our assumptions, we considered semi-honest adversaries who follow the protocol but attempt to learn additional information. So, we assume that semi-honest adversaries do not collude with each other to learn more information.
Now, we prove the security of Protocols 2, 3 and 4 as below.
We should prove that the below expression is true, where the issue of output correctness and privacy is considered:
We are now ready to describe the simulator S, which receives the inputs and outputs of the corrupted parties. Then, it produces the view of the corrupted parties. So, S has the angular positions of the corrupted parties and the value of u exact . As S does not have the angular positions of the honest parties, it generates some random angular positions using its random tape. Then, in the second step of Protocol 3, the simulator sorts the angular positions of the corrupted parties and random values generated instead of angular positions of the honest parties. In the third step, the simulator encrypts these values using the public key of the first party. In the fourth step, the simulator computes the difference between encrypted consecutive values. Then, it compares the results of differences between encrypted consecutive values. In the last step, the simulator computes the maximum value of them, which is u exact .
Formally, we construct an algorithm H that receives as input an array of angular positions, where their number is equal to n. Algorithm H generates the view of the corrupted parties. If H receives the values that are generated randomly, then the generated view is the same as the partial view generated by S. In contrast, if H receives the values that are from honest and corrupted parties, then the generated view is the same as the partial view generated in a real execution. However, if H can distinguish the partial view generated by S from the partial view generated in a real execution, this contradicts our assumption that the points of arrays instead of angular positions of honest parties are randomly generated and the results of encryption are random values. Also, this contradicts the security assumption of comparison protocol proposed in [8].
Our proposed protocol is composed of Protocols 2, 3 and 4, where these protocols are based on three sub-functions as f (x1, x2, . . . , x n ), g (x1, x2, . . . , x n ) and h (x1, x2, . . . , x n ), respective to each protocols 2 to 4. We proposed three sub-protocols for f (x1, x2, . . . , x n ), g (x1, x2, . . . , x n ) and h (x1, x2, . . . , x n ), and denote them as π f , π g , π h , where the inputs of π g are the outputs of π f , and the inputs of π h are the outputs of π g . In Theorem 2, 3 and 4, we showed the security proof of π f , π g , π h . If we construct a GMW garbled circuit which consists of three protocols as π f , π g , π h , we can securely perform the Secure Multi-Party Collision Resolution Protocol.
In this section, we present the overall complexity of our proposed protocol, where contains the communication and computation complexities. For communication complexity, we consider the number of steps and the length of transferred messages. Also, for computation complexity, we consider the computation of parties in each step of protocol. Hence, we break the operation of parties to modular exponentiation.
Accordingly, the communication and computation complexity of Secure Multi-party Collision Detection Protocol is in order of n, as mentioned in [17], where n is the number of parties. So, the overall complexity of Protocol 2, which is only composed of Secure Multi-party Collision Detection Protocol, is in order of n.
Also, Protocol 3 is composed of Protocol 1 (Secure Sorting Protocol), homomorphic encryption, secure difference and secure comparison. The communication complexity of Protocol 1 is in order of n 2 . Moreover, Protocol 1 is composed of some encryption, decryption and OT operations. We can break these operations to some modular exponentiations. Therefore, the computation complexity of this protocol is in order of n.
Also, the overall complexity of homomorphic encryption of angular positions is in O(1). Because the homomorphic encryption is composed of some modular exponentiations. The homomorphic encryption should be done n times.
The overall complexity of secure difference is in O(1), where it should be done (n-1) times in the fourth step of Protocol 3. Moreover, the computation complexity of the secure comparison and sorting of encrypted values, which is constituted of Batcher’s Sort, is in O(1). The communication complexity of this operation is in order of (nlog2n) as stated in [8]. Thus, the overall complexity of Protocol 3 is in order of n2, where n is the number of parties.
Protocol 4 is only composed of Protocol 1, where its overall complexity is in order of n 2 . Eventually, the communication complexity of Secure Multi-party Collision Resolution Protocol is in order of n2, and its computation complexity is in order of n. Table 1 demonstrates the complexity of building blocks of our Secure Multi-party Collision Resolution Protocol.
The overall complexity of our proposed protocols
The overall complexity of our proposed protocols
In this section, we present the results for the simulated execution of our collision resolution protocol. The results demonstrate that the collision between multi aircraft are resolved by employing our protocol. As mentioned earlier, r min and r max are the radii of two concentric circular discs around the collision point. We considered r min = 130 nm and r max = 250 nm. We also set the amount of the look-ahead time as T = 20 min. Then, we simulated the execution of our protocol for the resolution of collision between n aircraft. The simulation results of inexact collision resolution for 3, 4 and 5 aircraft are illustrated as follows. In the following Fig. 3, 4 and 5, the straight lines represent the initial route of the aircraft, and the dashed broken lines represent the modified routes, which resolve the collision. Moreover, the small and colored squares represent the origin of aircraft.

Collision Resolution for three-aircraft

Collision Resolution for four-aircraft

Collision Resolution for five-aircraft
In this paper, we presented a new secure protocol to resolve a possible collision between aircraft, while keeping their trajectories private. In this paper, our targets are three-folded, i.e., (1) keeping the trajectories private while (2) avoiding the collision of aircraft, where (3) no trusted entity is available. Our approach to achieve such targets is employing a Secure Multi-party Computation protocol. To present our Secure Multi-party Collision Resolution Protocol, we proposed some new sub-protocols. We proposed a new Secure Sorting Protocol and a Modified Distributed Oblivious Transfer Protocol. We also take advantage of employing a Secure Multi-party Collision Detection Protocol, a Homomorphic Encryption, a Secure Comparison Protocol, and a Secure Maximum Finding Protocol.
We presented the security proof of our proposed protocol and the simulation results for collision resolution between three, four and five aircraft.
Validation of the collision resolution protocol with a dynamic aircraft model shows applicability of the protocol to real air traffic control problems, where a controller keeps the aircraft on the collision resolution trajectory. To control the aircraft on the resolved trajectories, applying the fuzzy controller systems, as described in [12, 14], might be useful.
As pointed out earlier, no research has been previously conducted on the secure resolution of the collision between aircraft with predefined trajectories.
In many applications, the delay due to the running of collision detection and resolution protocol is not acceptable. Therefore, we assumed the aircraft desire to run the proposed protocol before departure. Moreover, we assumed that the trajectories of aircraft are not complicated, and we can break them to some line segments. Hence, our proposed protocol is suitable and efficient for such applications. Otherwise, our proposed protocol may not be efficient, and designing a secure and efficient protocol for collision detection and resolution of moving objects with complicated and arbitrary trajectories is of interest.
Furthermore, we assumed that the computational power of adversaries is bounded by a polynomial time. Otherwise, the security of our proposed protocol could be violated. Because, the adversaries can obtain the security parameters of our proposed protocols, such as the private keys of encryption systems.
We also addressed the problem of establishing security in the presence of passive adversaries (or semi-honest parties). Utilization of GMW Compiler for such protocols can result in secure protocols against active adversaries (or malicious adversaries) [24]. However, these protocols would not be efficient for practical cases, and designing efficient collision detection and resolution protocols that are secure in the presence of malicious adversaries is still an attractive task.
Moreover, designing a secure protocol for collision detection and resolution of other moving objects, with different assumptions and requirements is of interest.
Footnotes
Appendix
The steps of our proposed Secure Multi-party Collision Resolution Protocol for inexact collision resolution of three aircraft were demonstrated in the Fig. 6. In this example, we just run the steps 1 to 4 for exact collision resolution of three aircraft.
We first set the public and private keys of Aircraft 1, Aircraft 2 and Aircraft 3. Then, we run the steps 1 to 4 (for exact collision resolution) of our proposed protocol based on the Fig. 6.
Public key of Aircraft 1: (43, 143) Private key of Aircraft 1: (7, 143)
Public key of Aircraft 2: (79, 3337) Private key of Aircraft 2: (1019, 3337)
Public key of Aircraft 3: (7, 143) Private key of Aircraft 3: (103, 143)
In our proposed Secure Sorting Protocol (Protocol 1), we use an array with the size of L, where impress on the security and performance of protocol. For simplicity, we set L=10. Thus, we set the radial position of aircraft in [1,10, 1,10].
Aircraft 1, Aircraft 2 and Aircraft 3 obtain θ1, θ2 and θ3 based on the collision point, which were detected in Secure Multi-party Collision Detection Protocol [17]. (θ1 = 6, θ2 = 5, θ3 = 7)
Aircraft 1: selects random x as 1234 and encrypts it with the public key of Aircraft 2.
k = Enc
Aircraft
2
(x) = (1234) 79 mod 3337 = 901
Aircraft 1 → Aircraft 2: 901 - 6 + 1 = 896
Aircraft 2: y
s
= Dec
Aircraft
2
(896 + 2) s = 1, 2, . . , 10[-6pt]
y
s
= (1059, 1156, 2502, 2918, 385, 1234, 269, 1596, 2804, 1311)
Aircraft 2: selects p=107 and computes z
s
≡ y
s
mod p
z
s
= (96, 86, 41, 29, 64, 57, 82, 98, 22, 27)
Aircraft 2 → Aircraft 3: Enc
Aircraft
3
(z1, z2, z3, z4, z5, z6 + 1, z7 + 1, z8 + 1, z9 + 1, z10 + 1) =
=(112, 70, 24, 94, 127, 20, 8, 44, 23, 63), p=107
Aircraft 3: Dec
Aircraft
3
(112, 70, 24, 94, 127, 20, 8, 44, 23, 63)
=(96, 86, 41, 29, 64, 58, 83, 99, 23, 28)
Aircraft 3 → Aircraft 1: Enc
Aircraft
1
(96, 86, 41, 29, 64, 58, 83,
99 + 2, 23 + 2, 28 + 2)
(112, 70, 24, 94, 103, 20, 8, 62, 64, 134)
Aircraft 1: Dec
Aircraft
1
(112, 70, 24, 94, 103, 20, 8, 62, 64, 134)
(96, 86, 41, 29, 64, 58, 83, 101, 25, 30)
Aircraft 1 compares the value with index θ1 by x.
The value with index θ1 = x + β (mod p)
58 = 57 + 1 (mod 107) while 1 =(01) and β is 2 bit
Thus, Aircraft 1 finds that his radial position is greater than the radial position of Aircraft 2 and less than the radial position of Aircraft 3. (θ2 < θ1 < θ3)
p = 11 q = 17 n = 187 n2 = 34696 g = n + 1 =188 λ = lcm (17 - 1, 11 - 1) =80
Encryption: Select a random number r and compute c = g
m
. r
n
mod n2
Decryption:
r=97
= -19947
(1882 . 97187) mod 34969 = 8353
L (-1994780 mod 34969) =1
→ u exact = 1
