## 4 Privacy-Preserving Incentive Mechanism
### Collaborative Routing Scheme
```  
**Algorithm 1**MPC protocol for route/incentive assignment  
The MPC protocol also generates the outputs required for the traffic manager to freeze incentives. Figure 5 shows an example of the process of freezing incentives. The route that the vehicle takes has four checkpoints \(A,\ B,\ C,\ \text{and}\ D\). The amount of incentives that the vehicle receives for this trip is divided into four parts \(a_{A},\ a_{B},\ a_{C}\), and \(a_{D}\), which correspond to the four segments of the route divided by the checkpoints. To ensure that the vehicle follows the route, the traffic manager does not send the incentives to the vehicle directly at the origin. Instead, it sends the segment incentives to a series of cascadingmulti-signature wallets, which require multiple signatures to be authorized to transfer. The wallet corresponding to the first checkpoint is a two-out-of-three wallet, which requires at least two signatures from three wallet holders: the signer at checkpoint A, \(\delta_{A}\), the vehicle, and the mediator \(\eta\). In normal operations, \(\delta_{A}\) signs on the transaction after the vehicle passes the route verification at checkpoint A, which makes the incentives associated with segment OA redeemable for the vehicle; it can sign on the transaction to meet the two-out-of-three signature requirement when it wants to redeem the incentives. \(\eta\) only plays a role when malicious behaviors are detected. Either the traffic manager or the vehicle can submit evidence to let \(\eta\) sign on the transaction to either refund the frozen incentives to the traffic manager or transmit the frozen incentives to the vehicle. The other wallets are three-out-of-four wallets, which require at least three signatures from four wallet holders: the signer at the upstream checkpoint, the signer at the current checkpoint, the vehicle, and the mediator. Notably, the secret shares of the private inputs and outputs of Algorithm 1 can be fed into Algorithm 2 to skip the step of generating secret shares of the inputs of Algorithm 2. The outputs from Algorithm 2 are a series of cascading incentive freezing transactions to be signed by the traffic manager. They are marked as public because the signed transactions will be published on-chain to freeze the incentives for each segment in the corresponding multi-signature wallets. Since the signed transactions are recorded in the blockchain, the contents of \(Add_{S_{j}}\) are open to everyone. However, the sensitive trip information is protected twofold. First, it is almost impossible to tell which transaction is generated for which segment incentives for whose trip, because the address of a multi-signature wallet does not explicitly show the wallet holders' identities. As (3) shows, it is a hash of a piece of code. The public keys of the involved vehicle, checkpoints, and the mediator only appear in the code. Recall that hash functions are hiding; it is impossible to reconstruct the code using the wallet address (which is the hash of the code). It is also hard to enumerate the combinations of the wallet holders if each RSU/checkpoint has tens of valid identities registered at \(g\). Second, each trip is divided into multiple segments, which makes identifying the entire trip of a certain vehicle exponentially harder, since it requires unhashing the wallet addresses of all involved transactions. Figure 5: Freezing and unfreezing incentives in cascading multi-signature wallets. ```
Private input: individual route choices \(\eta_{i}\in K,i=1,\ 2,\ldots,\ n_{s}\) Public input: incentives for route \(k\) denoted as \(p_{k}\), lengths \(l_{s_{i}}\), \(s_{i}\in S_{k}\) where \(S_{k}\) is the segment set of route \(k\), and \(PK_{c_{i}}\), the public key set of signer \(\delta_{c_{j}}\) at checkpoint \(c_{j}\in C_{k}\) along route \(k\in K\), where \(C_{j}\) is the checkpoint set along route \(k\). Public output: transactions \(TRANS_{s_{i}}\), \(s_{i}\in S_{k}\), \(k\in K\), which are to be signed by the traffic manager to freeze segment incentives. 1.