A privacy-protected carpooling method, device, equipment and storage medium

The location information during online car-hailing and car-sharing is encrypted through Paillier homomorphic encryption and obfuscated circuit protocol, and the optimal combination is selected in combination with the RCS algorithm, which solves the problem of privacy protection during car-sharing and achieves information security and matching accuracy Improvement.

CN114117500BActive Publication Date: 2024-12-13NAT UNIV OF DEFENSE TECH
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202111480063.8
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2021-12-06
Publication Date
2024-12-13
Estimated Expiration
2041-12-06

AI Technical Summary

Technical Problem

During the online car-hailing and carpooling process, how to achieve more privacy protection matching calculations that meet the needs while protecting user privacy, especially under the complex carpooling model, the existing technology is difficult to effectively solve the privacy leakage problem of passenger and driver position information. .

Method used

Paillier homomorphic encryption method and obfuscating circuit protocol are adopted to encrypt passenger and driver location information by randomly generating public and private keys, and combine RCS algorithm to select the optimal passenger combination to realize secure comparison and calculation under ciphertext, ensure privacy protection and Find the matching result with the least amount of circumference.

Benefits of technology

It effectively protects the privacy of passengers and drivers, ensures the safety and accuracy of information during the ride-sharing process, realizes the calculation of the optimal matching result, and avoids information leakage.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN114117500B_ABST
    Figure CN114117500B_ABST
Patent Text Reader

Abstract

The present invention relates to the field of online car-hailing, and discloses a privacy-protected carpooling method, device, equipment and storage medium. The present invention obtains current map information, divides the map information and generates a processing result; randomly generates a public-private key pair encrypted by Paillier, and broadcasts the public key in the public-private key pair; after receiving a carpooling request sent by a passenger, encrypts the passenger's current location information in combination with the public key to obtain a carpooling ciphertext; obtains the driver's current location information, and encrypts the location information by the public key to obtain a driving ciphertext; selects the optimal passenger combination by combining the carpooling ciphertext, the driving ciphertext, the private key and the RCS algorithm, thereby achieving the effect of protecting the privacy of the driver and the passenger.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of online car-hailing, and in particular to a privacy-protected carpooling method, device, equipment and storage medium. Background Art

[0002] Online ride-hailing services allow passengers to easily get real-time taxi services using mobile devices. Although the service is very convenient, privacy leakage has become an issue that cannot be ignored because passengers need to submit their locations during use. Carpooling matching is a relatively complex online ride-hailing matching scenario. In the matching process, not only the relative relationship between the passenger and driver's positions must be considered, but also the similarity of the trips between passengers must be calculated. The goal of matching is to minimize the cost of detours in the matching results. In the semi-honest security model, user privacy is also an aspect that needs to be focused on. The location information of passengers and drivers cannot be directly exposed to third parties. However, in a more complex carpooling model, how to achieve privacy-preserving matching calculations that better meet user needs is a key issue. To address this issue, this chapter proposes a privacy-preserving carpooling matching mechanism based on the shortest detour. This mechanism uses the Paillier homomorphic encryption method and the obfuscated circuit protocol to complete secure comparison and calculation under ciphertext, and finds the matching result with the least detour while protecting user privacy from leakage.

[0003] The above contents are only used to assist in understanding the technical solution of the present invention and do not constitute an admission that the above contents are prior art. Summary of the invention

[0004] The main purpose of the present invention is to provide a privacy-protected carpooling method, device, equipment and storage medium, aiming to solve the technical problem that the prior art cannot protect the privacy of passengers during carpooling.

[0005] To achieve the above object, the present invention provides a privacy-protected carpooling method, the method comprising:

[0006] Acquire current map information, perform division processing on the map information and generate processing results;

[0007] Randomly generate a public-private key pair for Paillier encryption, and broadcast the public key in the public-private key pair;

[0008] After receiving the carpooling request sent by the passenger, the carpooling ciphertext is obtained by encrypting the passenger's current location information in combination with the public key;

[0009] Obtaining the driver's current location information, wherein the location information is encrypted by the public key to obtain a driving ciphertext;

[0010] The optimal passenger combination is selected by combining the carpooling ciphertext, the driving ciphertext, the private key and the RCS algorithm.

[0011] Optionally, the step of obtaining current map information, dividing the map information and generating a processing result includes:

[0012] Acquire current map information, and divide the map information into a preset number of regions;

[0013] Setting anchor points in the area and calculating the shortest travel distance between all anchor points;

[0014] The shortest driving distance is taken as the processing result.

[0015] Optionally, randomly generating a public-private key pair for Paillier encryption and broadcasting a public key in the public-private key pair includes:

[0016] Select two large prime numbers p and q, let n = pq, calculate the least common multiple λ = lcm(p-1, q-1) and select Ensure the greatest common multiple gcd(L(g λ (mod n 2 )), n) = 1, where L(x) = (x-1) / n. In this case, the public key is pk = (n, g) and the private key is sk = λ;

[0017] The public key pk=(n, g) is broadcasted.

[0018] Optionally, after receiving the carpooling request sent by the passenger, the step of encrypting the carpooling ciphertext according to the passenger's current location information in combination with the public key includes:

[0019] After receiving the carpooling request sent by the passenger, obtain the current passenger location information and calculate the travel time t of the passenger to the anchor point s→AP(s) and t d→AP(d) , where s and d are his departure and destination respectively;

[0020] Use the public key pk to respectively s→AP(s) and t d→AP(d) Encrypted and That is, the carpooling ciphertext.

[0021] Optionally, the step of obtaining the driver's current location information and encrypting the location information with the public key to obtain a driving ciphertext includes:

[0022] Obtain the driver's current location information and calculate the time from the driver's current location information to the anchor point;

[0023] The calculation result is encrypted with the public key to obtain

[0024] Optionally, the calculation result is encrypted with the public key to obtain After the steps, it also includes:

[0025] Determine whether the driver is currently in an unloaded state;

[0026] If not, the driver's current pick-up plan is obtained, and the pick-up plan includes the request information of the current passengers and the current planned travel route.

[0027] Optionally, the step of selecting the optimal passenger combination by combining the carpooling ciphertext, the driving ciphertext, the private key and the RCS algorithm includes:

[0028] Screening and filtering passengers according to the carpooling ciphertext, the driving ciphertext and the filtering algorithm;

[0029] Calculate the shortest path for each passenger combination;

[0030] The passenger combination selection algorithm is used to compare the paths with the smallest total travel time for all passenger combinations;

[0031] The RCS algorithm is used to select the optimal passenger combination.

[0032] In addition, to achieve the above-mentioned purpose, the present invention also proposes a privacy-protected carpooling device, characterized in that the device comprises:

[0033] An initialization module, used to obtain current map information, perform division processing on the map information and generate processing results;

[0034] An encryption module randomly generates a public-private key pair for Paillier encryption and broadcasts the public key in the public-private key pair;

[0035] The passenger module is used to encrypt the carpooling ciphertext according to the passenger's current location information and the public key after receiving the carpooling request sent by the passenger;

[0036] A driver module is used to obtain the current location information of the driver, and the location information is encrypted by the public key to obtain a driving ciphertext;

[0037] The calculation module is used to select the best passenger combination by combining the carpooling ciphertext, the driving ciphertext, the private key and the RCS algorithm.

[0038] In addition, to achieve the above-mentioned purpose, the present invention also proposes a computer device, which includes: a memory, a processor, and a privacy-protected carpooling program stored in the memory and executable on the processor, wherein the privacy-protected carpooling program is configured to implement the privacy-protected carpooling method as described above.

[0039] In addition, to achieve the above objectives, the present invention also proposes a storage medium, on which a privacy-protected carpooling program is stored. When the privacy-protected carpooling program is executed by a processor, the steps of the privacy-protected carpooling method described above are implemented.

[0040] The present invention obtains current map information, divides the map information and generates a processing result; randomly generates a public-private key pair encrypted by Paillier, and broadcasts the public key in the public-private key pair; after receiving a carpooling request sent by a passenger, encrypts the current location information of the passenger in combination with the public key to obtain a carpooling ciphertext; obtains the current location information of the driver, and encrypts the location information by the public key to obtain a driving ciphertext; selects the optimal passenger combination by combining the carpooling ciphertext, the driving ciphertext, the private key and the RCS algorithm, thereby achieving the effect of protecting the privacy of the driver and the passenger. BRIEF DESCRIPTION OF THE DRAWINGS

[0041] Figure 1 It is a structural schematic diagram of a carpooling device for privacy protection of a hardware operating environment involved in an embodiment of the present invention;

[0042] Figure 2 It is a schematic diagram of a flow chart of an embodiment of the present invention. DETAILED DESCRIPTION

[0043] It should be understood that the specific embodiments described herein are only used to explain the present invention, and are not used to limit the present invention.

[0044] Reference Figure 1 , Figure 1 A schematic diagram of the structure of a carpooling device for privacy protection of a hardware operating environment according to an embodiment of the present invention.

[0045] like Figure 1As shown, the privacy-protected carpooling device may include: a processor 1001, such as a central processing unit (CPU), a communication bus 1002, a user interface 1003, a network interface 1004, and a memory 1005. Among them, the communication bus 1002 is used to realize the connection and communication between these components. The user interface 1003 may include a display screen (Display), an input unit such as a keyboard (Keyboard), and the optional user interface 1003 may also include a standard wired interface and a wireless interface. The network interface 1004 may optionally include a standard wired interface and a wireless interface (such as a wireless fidelity (Wireless-Fidelity, WI-FI) interface). The memory 1005 may be a high-speed random access memory (Random Access Memory, RAM) memory, or a stable non-volatile memory (Non-Volatile Memory, NVM), such as a disk memory. The memory 1005 may also be a storage device independent of the aforementioned processor 1001.

[0046] Those skilled in the art will understand that Figure 1 The structure shown in the figure does not constitute a limitation on the privacy protection carpooling device, and may include more or less components than shown in the figure, or combine certain components, or arrange the components differently.

[0047] like Figure 1 As shown, the memory 1005 as a storage medium may include an operating system, a data storage module, a network communication module, a user interface module, and a privacy-protected carpooling program.

[0048] exist Figure 1 In the privacy-protected carpooling device shown, the network interface 1004 is mainly used for data communication with the network server; the user interface 1003 is mainly used for data interaction with the user; the processor 1001 and the memory 1005 in the privacy-protected carpooling device of the present invention can be set in the privacy-protected carpooling device, and the privacy-protected carpooling device calls the privacy-protected carpooling program stored in the memory 1005 through the processor 1001, and executes the privacy-protected carpooling method provided by the embodiment of the present invention.

[0049] An embodiment of the present invention provides a privacy-protected carpooling method. In this embodiment, the privacy-protected carpooling method includes the following steps:

[0050] Step S10: Acquire current map information, perform division processing on the map information and generate processing results.

[0051] It should be noted that the map is divided into m×n areas For each region, an anchor point is set as a reference point for calculating the travel time between regions. All anchor points are set considering the number of adjacent edges (i.e. the number of connected roads) and the distance to the center of the region. We use To represent the anchor point of each region.

[0052] After the anchor points are set, the shortest travel time between regions can be approximated using the distance between the two region anchor points:

[0053] t z(i,j)→z(x,y) =t AP(i,j)→AP(x,y) (1≤i, x≤m; 1≤j, y≤n)

[0054] We mark any two points on the road network as s and d, and the shortest travel time between s and d can be calculated as follows:

[0055] t s→d ≈t s→AP(s) +t AP(s)→AP(d) +t AP(d)→d

[0056] Where AP(x) refers to the anchor point in the area where position x is located. All road network information and anchor point selection are open to the public, which means that anyone can access it through the Internet.

[0057] Furthermore, the steps of obtaining current map information, dividing the map information and generating processing results include: obtaining current map information, dividing the map information into a preset number of areas; setting anchor points in the areas and calculating the shortest driving distance between all anchor points; and taking the shortest driving distance as the processing result.

[0058] It should be noted that the system needs to be initialized. First, the server divides the map into multiple areas of equal size, divides the anchor points of each area according to the division method, and pre-calculates the shortest driving distance between all anchor points. Then CS generates a (pk, sk) public-private key pair and broadcasts the public key pk to other parties, including RS and users.

[0059] Step S20: randomly generate a public-private key pair for Paillier encryption, and broadcast the public key in the public-private key pair.

[0060] It should be noted that the Paillier encryption system is a public key encryption system with additive homomorphic properties based on the composite residual assumption. The Paillier encryption system can be roughly described as:

[0061] KeyGen()→(pk, sk): Select two large prime numbers p and q, and n=pq. Calculate the least common multiple λ=lcm(p-1, q-1) and select Ensure the greatest common multiple gcd(L(g λ (mod n 2 )), n) = 1, where L(x) = (x-1) / n. At this time, the public key is pk = (n, g), and the private key is sk = λ.

[0062] Encryption: E(m, pk)→c. Random Selection The ciphertext can be calculated as follows:

[0063] c=g m r n (mod n 2 )

[0064] Decryption: D(c, sk)→m. Get the ciphertext The corresponding decryption operation is as follows:

[0065]

[0066] The Paillier encryption system has been proven to be semantically secure and has the following homomorphic properties:

[0067] E(m1)E(m2)=E(m1+m2)

[0068]

[0069] The carpooling scheme designed in this paper uses the Paillier encryption system to support homomorphic computing of ciphertext information. The Paillier encryption system has higher computational efficiency than the fully homomorphic encryption and Somewhat encryption systems.

[0070] Further, randomly generating a public-private key pair encrypted by Paillier, and broadcasting the public key in the public-private key pair includes: randomly generating a public-private key pair encrypted by Paillier, selecting two large prime numbers p and q, setting n=pq, calculating the least common multiple λ=lcm(p-1,q-1) and selecting Ensure the greatest common multiple gcd(L(g λ (mod n 2 )), n) = 1, where L(x) = (x-1) / n. At this time, the public key is pk = (n, g), and the private key is sk = λ; the public key pk = (n, g) is broadcasted.

[0071] Step S30: After receiving the carpooling request sent by the passenger, the carpooling ciphertext is obtained by encrypting the passenger's current location information in combination with the public key.

[0072] In the specific implementation, when a passenger needs a carpooling service, the passenger first calculates the approximate travel time t to the anchor point through public navigation tools and map information. s→AP(s) and t d→AP(d) , where s and d are his departure and destination respectively. Then encrypt them with the public key pk to get and in represents the ciphertext encrypted by the Paillier encryption algorithm. The passenger then chooses the latest acceptable time for departure and arrival t s and t d And encrypted. Finally, the passenger submits a carpooling request to RS A carpooling request may not be matched within the allowed time. When the passenger's tolerable time is exceeded, the passenger will abandon the request.

[0073] Furthermore, after receiving the carpooling request sent by the passenger, the step of encrypting the carpooling ciphertext according to the passenger's current location information in combination with the public key includes: after receiving the carpooling request sent by the passenger, obtaining the current passenger location information and calculating the travel time t of the passenger to the anchor point s→AP(s) and t d→AP(d) , where s and d are his departure and destination respectively; use the public key pk to respectively s→AP(s) and t d→AP(d) Encrypted and That is, the carpooling ciphertext.

[0074] Step S40: obtaining the current location information of the driver, and encrypting the location information with the public key to obtain a driving ciphertext.

[0075] In the specific implementation, the driver also needs to submit his status to RS to complete the matching process. First, the driver uses his terminal device and pk to calculate And upload the status to RS: Where l is the driver’s current location and υ is the number of passengers the driver can currently carry. d >0, that is, the driver is currently carrying other passengers, and he needs to submit the current pick-up plan to RS, which includes the request information of the current passengers and the current planned travel route.

[0076] Furthermore, the step of obtaining the driver's current location information and encrypting the location information with the public key to obtain the driving ciphertext includes: obtaining the driver's current location information, calculating the time from the driver's current location information to the anchor point; encrypting the calculation result with the public key to obtain

[0077] Furthermore, the calculation result is encrypted with the public key to obtain After the step of: determining whether the driver is currently in an empty state; if not, obtaining the driver's current pick-up plan, the pick-up plan including the request information of the current passengers and the current planned travel path

[0078] Step S50: Select the best passenger combination by combining the carpooling ciphertext, the driving ciphertext, the private key and the RCS algorithm.

[0079] In the specific implementation, RS and CS perform matching calculations in two stages. In the first stage, RS and CS jointly calculate the shortest path for each passenger combination. Each passenger combination contains υ passengers, and RS usually chooses υ = CAP d -OBR d If there is no CAP that meets the requirements d -OBR d For combinations with 100 passengers, RS will try to find combinations with fewer passengers. After that, a comparison phase is used to find the passenger combination with the smallest ATT and the corresponding optimal path. The details of the two phases are as follows:

[0080] Phase 1 (Path Planning) For a passenger combination C with υ passengers, RS will find the shortest path as follows:

[0081] For any passenger r in C i , i∈[1,υ], all the position points As nodes in the graph, the shortest travel time between two points is the corresponding edge length Therefore, the path planning problem discussed here is how to find the shortest path passing through all nodes under ciphertext.

[0082] Phase 2 (Passenger Selection) In this phase, the system needs to compare all passenger combinations The ATT of each passenger combination is calculated and the combination with the smallest ATT is output, where CN is the total number of combinations and ATT is the sum of the detour times for all passengers. First, RS calculates For each passenger i , its detour time refers to the time from r in the current path i The difference between the travel time between the departure and destination and the direct travel time. So C j The ATT can be expressed as follows:

[0083]

[0084] Furthermore, the step of selecting the optimal passenger combination by combining the carpooling ciphertext, the driving ciphertext, the private key and the RCS algorithm includes: screening and filtering passengers according to the carpooling ciphertext, the driving ciphertext and the filtering algorithm; calculating the shortest path for each passenger combination; using the passenger combination selection algorithm to compare the paths with the shortest total driving time of all passenger combinations; and using the RCS algorithm to select the optimal passenger combination.

[0085] In the specific implementation, we will conduct experimental evaluation on Beijing's road network data, which is provided by OpenStreetMap. In practice, the distribution of passengers and drivers often changes dynamically. We use the tool TaxiQueryGenerator to generate and simulate the locations of passengers and drivers. The location data generated by TaxiQueryGenerator conforms to the real spatiotemporal distribution of Beijing. We implement the Paillier encryption system through the open source library jpaillier, and use the library Faster-GC to implement the obfuscated circuit. In the experiment, we set the modulus of the Paillier encryption system to 1024 bits, the bit length of the blinded value to 32 bits, the bit length of the main data to 16 bits, and the bit length of the wire label in the obfuscated circuit to 80 bits. All experiments were completed on a laptop equipped with 8GB of memory and a 1.8GHz Intel-8265U CPU.

[0086] We divide the selected rectangular area in the map into many smaller rectangular areas of the same size and set the relevant parameters of the pShare system. Then we randomly initialize the positions of passengers and drivers in the selected area, as well as the idle time of the driver and the departure and arrival time of the passenger. We default the calculation method of the corresponding departure and arrival cut-off time of the passenger as follows: s =t cur +600 seconds, t d =t s +t s→d +600 sec.

[0087] The default maximum waiting time for a passenger to wait for a response is 30 minutes, which means that if the time exceeds 30 minutes, the passenger will resort to other modes of transportation and give up the request for carpooling matching. We select the 10:00-11:00 time period in the generated carpooling request data and the 10:30-11:00 time period in the driver data as our experimental dataset. In the experiment, we read the driver data in chronological order and perform matching for each driver and all passengers within the maximum waiting response time. The result of carpooling matching may be successful or failed. If the carpooling is successful, we will record it and compare it with the experimental results of another control experiment pShare-GT. The difference between pShare-GT and pShare is that the former uses the actual road travel time instead of time estimation for calculation. In addition, we also recorded the experimental overhead during the experiment, including computational and communication overhead.

[0088] This embodiment obtains current map information, divides the map information and generates a processing result; randomly generates a public-private key pair for Paillier encryption, and broadcasts the public key in the public-private key pair; after receiving a carpooling request from a passenger, encrypts the carpooling ciphertext based on the passenger's current location information in combination with the public key; obtains the driver's current location information, and encrypts the location information with the public key to obtain a driving ciphertext; selects the optimal passenger combination by combining the carpooling ciphertext, the driving ciphertext, the private key and the RCS algorithm, thereby protecting the privacy of the driver and the passenger.

[0089] In addition, an embodiment of the present invention further proposes a storage medium, on which a privacy-protected carpooling program is stored. When the privacy-protected carpooling program is executed by a processor, the steps of the privacy-protected carpooling method described above are implemented.

[0090] Other embodiments or specific implementations of the privacy protection carpooling device of the present invention can refer to the above-mentioned method embodiments, which will not be repeated here.

[0091] It should be noted that, in this article, the terms "include", "comprises" or any other variations thereof are intended to cover non-exclusive inclusion, so that a process, method, article or system including a series of elements includes not only those elements, but also other elements not explicitly listed, or also includes elements inherent to such process, method, article or system. In the absence of further restrictions, an element defined by the sentence "comprises a ..." does not exclude the existence of other identical elements in the process, method, article or system including the element.

[0092] The serial numbers of the above embodiments of the present invention are only for description and do not represent the advantages or disadvantages of the embodiments.

[0093] Through the description of the above implementation methods, those skilled in the art can clearly understand that the above-mentioned embodiment methods can be implemented by means of software plus a necessary general hardware platform, and of course by hardware, but in many cases the former is a better implementation method. Based on such an understanding, the technical solution of the present invention is essentially or the part that contributes to the prior art can be embodied in the form of a software semi-finished vehicle, which is stored in a storage medium (such as a read-only memory / random access memory, a disk, or an optical disk), and includes a number of instructions for a terminal device (which can be a mobile phone, a computer, a server, an air conditioner, or a network device, etc.) to execute the methods described in each embodiment of the present invention. The above are only preferred embodiments of the present invention, and do not limit the patent scope of the present invention. Any equivalent structure or equivalent process transformation made by using the contents of the present invention specification and drawings, or directly or indirectly applied in other related technical fields, are also included in the patent protection scope of the present invention.

Claims

1. A privacy-protected carpooling method, characterized in that: The method comprises: Acquire current map information, perform division processing on the map information and generate processing results; Randomly generate a public-private key pair for Paillier encryption, and broadcast the public key in the public-private key pair; After receiving the carpooling request sent by the passenger, the carpooling ciphertext is obtained by encrypting the passenger's current location information in combination with the public key; Obtaining the driver's current location information, wherein the location information is encrypted by the public key to obtain a driving ciphertext; The optimal passenger combination is selected by combining the carpooling ciphertext, the driving ciphertext, the private key and the RCS algorithm.

2. The method according to claim 1, characterized in that The step of obtaining current map information, dividing the map information and generating processing results comprises: Acquire current map information, and divide the map information into a preset number of regions; Setting anchor points in the area and calculating the shortest travel distance between all anchor points; The shortest driving distance is taken as the processing result.

3. The method according to claim 1, characterized in that The step of randomly generating a public-private key pair for Paillier encryption and broadcasting the public key in the public-private key pair comprises: Randomly generate a public and private key pair for Paillier encryption, select two large prime numbers p and q, let n = pq, calculate the least common multiple λ = lcm(p-1, q-1) and select Ensure the greatest common multiple gcd(L(g λ (mod n 2 )), n) = 1, where L(x) = (x-1) / n, the public key is pk = (n, g), and the private key is sk = λ; The public key pk=(n, g) is broadcasted.

4. The method according to claim 1, characterized in that After receiving the carpooling request sent by the passenger, the step of encrypting the carpooling ciphertext according to the passenger's current location information in combination with the public key includes: After receiving the carpooling request sent by the passenger, obtain the current passenger location information and calculate the travel time t of the passenger to the anchor point s→AP(s) and t d→AP(d) , where s and d are his departure and destination respectively; Use the public key pk to respectively s→AP(s) and t d→AP(d) Encrypted and That is, the carpooling ciphertext.

5. The method according to claim 1, characterized in that The step of obtaining the current location information of the driver and encrypting the location information with the public key to obtain the driving ciphertext includes: Obtain the driver's current location information and calculate the time from the driver's current location information to the anchor point; The calculation result is encrypted with the public key to obtain 6. The method according to claim 5, characterized in that The calculation result is encrypted by combining the public key to obtain After the steps, it also includes: Determine whether the driver is currently in an unloaded state; If not, the driver's current pick-up plan is obtained, and the pick-up plan includes the request information of the current passengers and the current planned travel route.

7. The method according to claim 1, characterized in that The step of selecting the optimal passenger combination by combining the carpooling ciphertext, the driving ciphertext, the private key and the RCS algorithm includes: Screening and filtering passengers according to the carpooling ciphertext, the driving ciphertext and the filtering algorithm; Calculate the shortest path for each passenger combination; The passenger combination selection algorithm is used to compare the paths with the smallest total travel time for all passenger combinations; The RCS algorithm is used to select the optimal passenger combination.

8. A privacy-protected carpooling device, characterized in that: The device comprises: An initialization module, used to obtain current map information, perform division processing on the map information and generate processing results; An encryption module randomly generates a public-private key pair for Paillier encryption, and broadcasts the public key in the public-private key pair; The passenger module is used to encrypt the carpooling ciphertext according to the passenger's current location information and the public key after receiving the carpooling request sent by the passenger; A driver module is used to obtain the current location information of the driver, and the location information is encrypted by the public key to obtain a driving ciphertext; The calculation module is used to select the best passenger combination by combining the carpooling ciphertext, the driving ciphertext, the private key and the RCS algorithm.

9. A privacy-protected carpooling device, characterized in that: The device comprises: a memory, a processor, and a privacy-protected carpooling program stored in the memory and executable on the processor, wherein the privacy-protected carpooling program is configured to implement the steps of the privacy-protected carpooling method according to any one of claims 1 to 7.

10. A storage medium, characterized in that: The storage medium stores a privacy-protected carpooling program, which, when executed by a processor, implements the steps of the privacy-protected carpooling method according to any one of claims 1 to 7.