Privacy-Preserving Set Intersection Protocol Based on SM2 Oblivious Transfer
Abstract
1. Introduction
- A PSI protocol fully built on Chinese national cryptographic SM2 and SM3 algorithms is presented, satisfying cryptographic compliance requirements for indepen- dent controllability.
- SM2-based oblivious transfer and multi-point OPRF constructions are developed to support an efficient PSI computation workflow.
- The protocol’s practical performance under large-scale datasets is substantially improved through a software–hardware co-design acceleration architecture, and its effectiveness is validated through experimental evaluation.
2. Related Work
3. Preliminaries
3.1. Semi-Honest Adversary Model
3.2. Oblivious Transfer
3.3. SM2 Algorithm
- Curve Equation: The algorithm operates on an elliptic curve over a prime field , defined by the equation ;
- Key Parameters: It utilizes a 256-bit prime field, offering security comparable to NIST P-256 but with independent parameter generation.
- Efficiency: Compared to RSA-2048, SM2 employs shorter 256-bit keys and requires fewer logic gates for hardware implementation, resulting in lower power consumption and higher processing speed.
3.4. SM3 Algorithm
- Input and Padding: The maximum input message length is bits. The message is padded and parsed into 512-bit message blocks;
- Compression Function: The algorithm utilizes a 32-bit word size and produces 132 message words from each block. The compression function executes 64 rounds of operations;
- Output Digest: After processing all blocks sequentially, the algorithm produces a fixed 256-bit hash value, which ensures high collision resistance and compatibility with the SM2 algorithm.
3.5. Non-Interactive Zero-Knowledge Proof (NIZK)
- Upon receiving the instruction from participant (), the system first checks whether the session identifier sid has been previously used. If it has, the message is ignored; if it has not, the system sends to . If , the system records .
- Upon receiving the instruction from , if a record of the form exists, the system sends to .
4. Design of a Private Set Intersection Protocol Based on Chinese National Cryptographic Algorithm
4.1. Computational Problem Description of Private Set Intersection
4.2. Protocol Flow of SM2-Based Non-Interactive Zero-Knowledge Proof
- Proof Generation: Sender S first sends the instruction to the functionality , then selects a random number r and computes . Subsequently, Sender S sends the instruction to again and computes the following based on the returned result:This generates the proof ciphertext . Finally, Sender S transmits the proof ciphertext c and the corresponding ciphertext set to Receiver R.
- Proof Reception and Recording: Upon receiving the ciphertext set and the proof ciphertext from Sender S, Receiver R simultaneously receives a return message from the functionality and records , where .
- Proof Verification: Receiver R verifies the ciphertext using the proof ciphertext . First, R computes as defined in Equation (2). Subsequently, Receiver R receives the message returned by the functionality . If this message is not received, the protocol is aborted; if received, the zero-knowledge proof is verified. If the verification fails, the protocol is likewise aborted.
- Result Determination: When all the aforementioned verifications pass, Receiver R further computes and checks whether the following equation holds:If the equation does not hold, the protocol is aborted. If the equation holds, the correctness of is accepted, thereby completing the verification of the discrete logarithm relationship.
4.3. Protocol Flow of SM2-Based Oblivious Transfer
- Operations of Bob
- According to the GB/T 32918-2016 standard, Bob selects a private key in the range and derives the corresponding public key using the elliptic curve base point G.
- Operations of Alice
- Alice obtains the public parameters.
- For each message, she generates a random value and computes
- Alice computes
- Alice generates the key material
- Alice encrypts each message as
- Alice computes a signature-like verification tag
- Alice transmits the ciphertext tupleto Bob.
- Operations of Bob
- Bob receives the ciphertexts and selects the ciphertext corresponding to the message he intends to obtain.
- Bob computes
- Bob recovers the message as
- Bob verifies the correctness of the message by checking whetherIf the verification equation holds, the message is deemed valid and is accepted. Otherwise, this indicates that the ciphertext has been tampered with or the sender has failed to follow the protocol. In this case, the receiver will immediately execute the abort procedure, terminate the session, and return the failure identifier ⊥ to prevent any potential information leakage.
4.4. SM2-Based Oblivious Pseudorandom Function via OT Extension
- Operations of Bob
- Bob selects (or generates) an SM2 private key and computes the corresponding public key . He transmits to Alice while retaining as confidential information.
- Operations of Alice
- Alice obtains the public parameters.
- For each message, Alice samples a random value and computes as defined in Equation (5).
- Alice computes as defined in Equation (6).
- Alice derives the key material using the key-generation function:Here, KDF is the key derivation function defined in the GB/T 32918.4-2016 standard [7], which generates one or more shared secret keys by operating on the shared secret and other parameters known to both participating parties.
- Alice encrypts each message asThis step implements the specific instantiation of the pseudorandom functionand the output serves as the final OPRF value corresponding to the input .
4.5. Protocol Flow of Private Set Intersection
4.6. Security Analysis
5. Performance Analysis
5.1. Experimental Setup
5.2. Experimental Data and Evaluation
| n | Protocol | Comm. (MB) | Total | Running Time (s) | ||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| R | S | 10 Gbps | 1 Gbps | 100 Mbps | 10 Mbps | |||||||||||||||||
| Setup | Online | Setup | Online | Single-Thread | Multi-Thread | Single-Thread | Multi-Thread | Single-Thread | Multi-Thread | Single-Thread | Multi-Thread | |||||||||||
| Setup | Online | Setup | Online | Setup | Online | Setup | Online | Setup | Online | Setup | Online | Setup | Online | Setup | Online | |||||||
| RA17 | 0 | 0.14 | 0 | 0.19 | 0.33 | 0 | 1.55 | 0 | 1.03 | 0 | 1.68 | 0 | 1.86 | 0 | 1.59 | 0 | 1.75 | 0 | 2.01 | 0 | 1.90 | |
| KKRT16 | 0.01 | 0.33 | 0.01 | 0.14 | 0.47 | 0.13 | 0.21 | 0.12 | 0.40 | 0.22 | 0.28 | 0.39 | 0.89 | 0.23 | 0.33 | 0.20 | 0.93 | 0.22 | 0.63 | 0.20 | 1.17 | |
| PRTY19-L | 0.01 | 0.23 | 0.01 | 0.05 | 0.28 | 0.03 | 24.00 | 1.24 | 15.04 | 0.03 | 24.17 | 1.30 | 15.14 | 0.03 | 24.30 | 1.19 | 15.38 | 0.03 | 24.48 | 1.23 | 15.79 | |
| PRTY19-F | 0.01 | 0.23 | 0.01 | 0.10 | 0.33 | 0.04 | 3.09 | 1.81 | 3.18 | 0.03 | 3.35 | 1.73 | 3.51 | 0.02 | 4.16 | 1.82 | 3.56 | 0.03 | 4.74 | 2.01 | 4.12 | |
| PRTY20 | 0.01 | 0.56 | 0.01 | 0.05 | 0.62 | 0.21 | 0.40 | 0.18 | 0.62 | 0.37 | 0.43 | 0.55 | 0.98 | 0.37 | 0.51 | 0.71 | 1.19 | 0.39 | 0.76 | 0.72 | 1.59 | |
| CM20 | 0.01 | 0.31 | 0.01 | 0.05 | 0.37 | 0.02 | 0.47 | 0.02 | 0.65 | 0.20 | 0.59 | 0.02 | 0.93 | 0.03 | 0.64 | 0.01 | 0.94 | 0.02 | 0.84 | 0.19 | 1.12 | |
| GMR21 | 0.02 | 2.16 | 0.02 | 1.40 | 3.60 | 0.63 | 1.21 | 0.47 | 1.19 | 1.13 | 2.10 | 0.87 | 1.32 | 1.12 | 2.20 | 0.88 | 2.38 | 0.97 | 3.95 | 0.90 | 3.85 | |
| SM-PSI (proposed) | 0 | 0.0001 | 0 | 0.13 | 0.13 | 0 | 0.03 | 0 | 0.05 | 0 | 0.25 | 0 | 0.27 | 0 | 0.25 | 0 | 0.27 | 0 | 1.52 | 0 | 0.97 | |
| RA17 | 0 | 2.29 | 0 | 3.01 | 5.31 | 0 | 22.11 | 0 | 5.91 | 0 | 22.88 | 0 | 6.95 | 0 | 22.35 | 0 | 6.94 | 0 | 24.86 | 0 | 9.68 | |
| KKRT16 | 0.01 | 5.31 | 0.01 | 2.16 | 7.48 | 0.13 | 1.63 | 0.12 | 1.98 | 0.21 | 1.61 | 0.22 | 2.82 | 0.21 | 1.85 | 0.20 | 3.27 | 0.21 | 7.08 | 0.20 | 8.12 | |
| PRTY19-F | 0.01 | 3.76 | 0.01 | 1.45 | 5.22 | 0.05 | 42.61 | 1.53 | 21.04 | 0.04 | 44.52 | 1.63 | 21.22 | 0.05 | 46.98 | 1.82 | 26.01 | 0.03 | 47.92 | 1.89 | 26.50 | |
| PRTY20 | 0.01 | 8.82 | 0.01 | 0.72 | 9.55 | 0.21 | 2.21 | 0.39 | 2.81 | 0.37 | 2.66 | 0.71 | 4.00 | 0.37 | 3.62 | 0.72 | 4.53 | 0.56 | 10.54 | 0.55 | 11.15 | |
| CM20 | 0.01 | 4.99 | 0.01 | 0.73 | 5.73 | 0.02 | 5.52 | 0.01 | 3.54 | 0.02 | 6.36 | 0.03 | 4.95 | 0.03 | 7.71 | 0.01 | 4.60 | 0.02 | 10.24 | 0.01 | 9.11 | |
| GMR21 | 0.02 | 39.65 | 0.02 | 27.39 | 67.07 | 0.54 | 10.88 | 0.57 | 8.74 | 0.94 | 13.09 | 1.05 | 11.37 | 0.95 | 16.97 | 0.87 | 13.25 | 1.15 | 62.87 | 0.90 | 60.70 | |
| SM-PSI (proposed) | 0 | 0.0001 | 0 | 2.00 | 2.00 | 0 | 0.83 | 0 | 0.28 | 0 | 0.97 | 0 | 0.60 | 0 | 1.12 | 0 | 0.71 | 0 | 2.77 | 0 | 2.97 | |
| RA17 | 0 | 36.70 | 0 | 50.33 | 87.03 | 0 | 329.4 | 0 | 75.16 | 0 | 339.3 | 0 | 78.72 | 0 | 349.3 | 0 | 79.72 | 0 | 380.1 | 0 | 118.5 | |
| KKRT16 | 0.01 | 86.51 | 0.01 | 40.89 | 127.4 | 0.13 | 20.25 | 0.15 | 18.24 | 0.22 | 23.73 | 0.21 | 22.05 | 0.21 | 27.33 | 0.20 | 26.44 | 0.21 | 84.55 | 0.19 | 82.64 | |
| PRTY19-F | 0.01 | 61.26 | 0.01 | 27.27 | 88.54 | 0.17 | 655.8 | 3.84 | 244.6 | 0.39 | 667.0 | 4.03 | 240.3 | 0.37 | 715.1 | 4.11 | 306.4 | 0.36 | 727.8 | 5.48 | 317.1 | |
| PRTY20 | 0.01 | 145.3 | 0.01 | 13.63 | 159.0 | 0.21 | 37.74 | 0.50 | 33.40 | 0.39 | 44.17 | 0.72 | 37.43 | 0.38 | 48.99 | 0.72 | 45.22 | 0.41 | 159.8 | 0.87 | 157.4 | |
| CM20 | 0.01 | 81.40 | 0.01 | 13.64 | 95.04 | 0.13 | 125.4 | 0.10 | 50.02 | 0.02 | 133.6 | 0.19 | 51.76 | 0.03 | 136.0 | 0.19 | 54.56 | 0.02 | 198.2 | 0.01 | 123.6 | |
| GMR21 | 0.02 | 717.6 | 0.02 | 521.0 | 1239 | 0.65 | 205.7 | 0.51 | 136.4 | 1.12 | 228.9 | 0.87 | 160.7 | 1.12 | 277.1 | 0.87 | 213.1 | – | 0.91 | 1073 | ||
| SM-PSI (proposed) | 0 | 0.0001 | 0 | 32.00 | 32.00 | 0 | 10.08 | 0 | 6.27 | 0 | 11.07 | 0 | 6.78 | 0 | 16.31 | 0 | 10.15 | 0 | 39.76 | 0 | 31.03 | |
| Protocol | Comm. (MB) | Total | Running Time (s) | ||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| R | S | 10 Gbps | 1 Gbps | 100 Mbps | 10 Mbps | ||||||||||||||||||
| Setup | Online | Setup | Online | Single-Thread | Multi-Thread | Single-Thread | Multi-Thread | Single-Thread | Multi-Thread | Single-Thread | Multi-Thread | ||||||||||||
| Setup | Online | Setup | Online | Setup | Online | Setup | Online | Setup | Online | Setup | Online | Setup | Online | Setup | Online | ||||||||
| RA17 | 0 | 0.04 | 0 | 12.62 | 12.65 | 0 | 7.86 | 0 | 23.77 | 0 | 8.90 | 0 | 24.44 | 0 | 10.14 | 0 | 24.16 | 0 | 34.18 | 0 | 31.92 | ||
| KKRT16 | 0.01 | 0.09 | 0.01 | 37.75 | 37.84 | 0.30 | 7.86 | 0.22 | 8.09 | 0.21 | 8.90 | 0.37 | 8.59 | 0.21 | 10.14 | 0.22 | 9.59 | 0.39 | 34.18 | 0.39 | 34.38 | ||
| PRTY19-L | 0.01 | 0.06 | 0.01 | 12.59 | 12.65 | 0.12 | 832.9 | 0.02 | 177.9 | 0.09 | 868.3 | 0.20 | 182.8 | 0.03 | 843.0 | 0.01 | 162.8 | 0.07 | 850.5 | 0.02 | 170.5 | ||
| PRTY19-F | 0.01 | 0.06 | 0.01 | 25.17 | 25.24 | 0.02 | 335.4 | 0.12 | 126.3 | 0.03 | 343.1 | 0.20 | 124.2 | 0.03 | 337.2 | 0.02 | 123.7 | 0.03 | 350.1 | 0.19 | 134.5 | ||
| PRTY20 | 0.01 | 0.15 | 0.01 | 12.58 | 12.75 | 0.35 | 5.68 | 0.39 | 4.02 | 0.38 | 5.91 | 0.71 | 4.99 | 0.37 | 6.15 | 0.72 | 5.75 | 0.49 | 17.19 | 0.72 | 14.49 | ||
| CM20 | 0.01 | 0.08 | 0.01 | 12.59 | 12.68 | 0.09 | 28.19 | 0.01 | 15.25 | 0.04 | 30.21 | 0.02 | 15.96 | 0.06 | 35.05 | 0.19 | 17.36 | 0.03 | 38.85 | 0.02 | 25.22 | ||
| GMR21 | 0.01 | 566 | 0.02 | 520.96 | 1087 | 0.09 | 129.1 | 0.47 | 103.8 | 0.94 | 151.0 | 0.90 | 126.8 | 1.12 | 193.3 | 0.88 | 163.2 | – | 0.92 | 919.8 | |||
| SM-PSI | 0 | 0.0001 | 0 | 32.00 | 32.00 | 0 | 0.74 | 0 | 0.35 | 0 | 1.42 | 0 | 1.03 | 0 | 4.00 | 0 | 3.60 | 0 | 28.29 | 0 | 27.88 | ||
| Protocol | Protocol Type | Running Time (s) | Speedup |
|---|---|---|---|
| PRTY19-F | Multi-point OPRF | 248.44 | 39.6× |
| GMR21 | mqRPMT | 136.91 | 21.8× |
| RA17 | Blinded OPRF | 75.16 | 12.0× |
| CM20 | Multi-point OPRF | 50.12 | 8.0× |
| PRTY20 | Multi-point OPRF | 33.9 | 5.4× |
| KKRT16 | Single-point OPRF | 18.39 | 2.9× |
| SM-PSI | Proposed | 6.27 | 1.0× (Baseline) |
6. Conclusions
Author Contributions
Funding
Data Availability Statement
Conflicts of Interest
References
- Zhao, C.; Zhao, S.; Zhao, M.; Chen, Z.; Gao, C.; Li, H.; Tan, Y. Secure multi-party computation: Theory, practice and applications. Inf. Sci. 2019, 476, 357–372. [Google Scholar] [CrossRef]
- He, Y.; Tan, X.; Ni, J.; Yang, L.T.; Deng, X. Differentially private set intersection for asymmetrical id alignment. IEEE Trans. Inf. Forensics Secur. 2022, 17, 3479–3494. [Google Scholar] [CrossRef]
- Gao, Y.; Xie, Y.; Deng, H.; Zhu, Z.; Zhang, Y. A Privacy-preserving Data Alignment Framework for Vertical Federated Learning. J. Electron. Inf. Technol. 2024, 46, 3419–3427. [Google Scholar] [CrossRef]
- Brickell, J.; Porter, D.E.; Shmatikov, V.; Witchel, E. Privacy-preserving remote diagnostics. In Proceedings of the 14th ACM Conference on Computer and Communications Security, Alexandria, VA, USA, 29–31 October 2007; ACM: New York, NY, USA, 2007; pp. 498–507. [Google Scholar] [CrossRef]
- He, X.; Machanavajjhala, A.; Flynn, C.; Srivastava, D. Composing differential privacy and secure computation: A case study on scaling private record linkage. In Proceedings of the 2017 ACM SIGSAC Conference on Computer and Communications Security, Dallas, TX, USA, 30 October–3 November 2017; ACM: New York, NY, USA, 2017; pp. 1389–1406. [Google Scholar] [CrossRef]
- Ion, M.; Kreuter, B.; Nergiz, E.; Patel, S.; Saxena, S.; Seth, K.; Shanahan, D.; Yung, M. Private Intersection-Sum Protocol with Applications to Attributing Aggregate ad Conversions. Cryptology ePrint Archive, Paper 2017/738. 2017. Available online: https://eprint.iacr.org/2017/738 (accessed on 17 December 2025).
- GB/T 32918.4-2016; Information Security Technology—Public Key Cryptographic Algorithm SM2 Based on Elliptic Curves—Part 4: Public Key Encryption Algorithm. China Standards Press: Beijing, China, 2016.
- GB/T 32905-2016; Information Security Techniques—SM3 Cryptographic Hash Algorithm. China Standards Press: Beijing, China, 2016.
- Kales, D.; Rechberger, C.; Schneider, T.; Senker, M.; Weinert, C. Mobile private contact discovery at scale. In Proceedings of the 28th USENIX Security Symposium (USENIX Security 19), Santa Clara, CA, USA, 14–16 August 2019; USENIX Association: Berkeley, CA, USA, 2019; pp. 1447–1464. Available online: https://www.usenix.org/conference/usenixsecurity19/presentation/kales (accessed on 17 December 2025).
- Huang, Y.; Evans, D.; Katz, J. Private set intersection: Are garbled circuits better than custom protocols? In Proceedings of the 19th Network and Distributed System Security Symposium (NDSS 2012), San Diego, CA, USA, 5–8 February 2012; Internet Society: Reston, VA, USA, 2012. [Google Scholar]
- Kiss, Á.; Liu, J.; Schneider, T.; Asokan, N.; Pinkas, B. Private set intersection for unequal set sizes with mobile applications. In Proceedings of the Privacy Enhancing Technologies Symposium (PoPETS 2017), Munich, Germany, 19–21 July 2017; De Gruyter: Berlin, Germany, 2017; pp. 177–197. [Google Scholar] [CrossRef]
- Pinkas, B.; Schneider, T.; Tkachenko, O.; Yanai, A. Efficient circuit-based PSI with linear communication. In Proceedings of the Annual International Conference on the Theory and Applications of Cryptographic Techniques (EUROCRYPT 2019), Darmstadt, Germany, 19–23 May 2019; Springer: Cham, Switzerland, 2019; pp. 122–153. [Google Scholar] [CrossRef]
- Meadows, C. A more efficient cryptographic matchmaking protocol for use in the absence of a continuously available third party. In Proceedings of the 1986 IEEE Symposium on Security and Privacy (S & P 1986), Toronto, ON, Canada, 27–29 October 1986; IEEE: Piscataway, NJ, USA, 1986; p. 134. [Google Scholar] [CrossRef]
- Wu, G.; He, Q.; Jiang, J.; Zhang, Z.X.; Zhao, Y.; Zou, Y.C.; Zhang, J.; Wei, C.Z.; Yan, Y.; Zhang, H. Topgun: An ECC accelerator for private set intersection. ACM Trans. Reconfigurable Technol. Syst. 2023, 16, 1–30. [Google Scholar] [CrossRef]
- Hazay, C.; Nissim, K. Efficient set operations in the presence of malicious adversaries. In Proceedings of the International Workshop on Public Key Cryptography (PKC 2010), Paris, France, 28–30 May 2010; Springer: Berlin, Heidelberg, 2010; pp. 312–331. [Google Scholar] [CrossRef]
- De Cristofaro, E.; Tsudik, G. Practical private set intersection protocols with linear complexity. In Proceedings of the International Conference on Financial Cryptography and Data Security (FC 2010), Bridgetown, Barbados, 22–26 February 2010; Springer: Berlin, Heidelberg, 2010; pp. 143–159. [Google Scholar] [CrossRef]
- Zhang, J.X.; Cheng, X.D.; Wang, W.; Yang, L.; Hu, J.B.; Chen, K. {FLASH}: Towards a high-performance hardware acceleration architecture for cross-silo federated learning. In Proceedings of the 20th USENIX Symposium on Networked Systems Design and Implementation (NSDI 23), Boston, MA, USA, 25–28 April 2023; USENIX Association: Berkeley, CA, USA, 2023; pp. 1057–1079. Available online: https://www.usenix.org/conference/nsdi23/presentation/zhang-junxue (accessed on 6 January 2026).
- Rabin, M.O. Transaction protection by beacons. J. Comput. Syst. Sci. 1983, 27, 256–267. [Google Scholar] [CrossRef]
- Pinkas, B.; Schneider, T.; Zohner, M. Faster private set intersection based on OT extension. In Proceedings of the 23rd USENIX Security Symposium (USENIX Security 14), San Diego, CA, USA, 20–22 August 2014; USENIX Association: Berkeley, CA, USA, 2014; pp. 797–812. Available online: https://www.usenix.org/conference/usenixsecurity14/technical-sessions/presentation/pinkas (accessed on 6 January 2026).
- Pinkas, B.; Schneider, T.; Segev, G.; Zohner, M. Phasing: Private set intersection using permutation-based hashing. In Proceedings of the 24th USENIX Security Symposium (USENIX Security 15), Washington, DC, USA, 12–14 August 2015; USENIX Association: Berkeley, CA, USA, 2015; pp. 515–530. Available online: https://www.usenix.org/conference/usenixsecurity15/technical-sessions/presentation/pinkas (accessed on 6 January 2026).
- Garimella, G.; Mohassel, P.; Rosulek, M.; Sadeghian, S.; Singh, J. Private set operations from oblivious switching. In Proceedings of the IACR International Conference on Public Key Cryptography (PKC 2021), Virtual Event, 17–20 May 2021; Springer: Cham, Switzerland, 2021; pp. 591–617. [Google Scholar] [CrossRef]
- Kolesnikov, V.; Kumaresan, R.; Rosulek, M.; Trieu, N. Efficient batched oblivious PRF with applications to private set intersection. In Proceedings of the 2016 ACM SIGSAC Conference on Computer and Communications Security (CCS 2016), Vienna, Austria, 24–28 October 2016; ACM: New York, NY, USA, 2016; pp. 818–829. [Google Scholar] [CrossRef]
- Pinkas, B.; Rosulek, M.; Trieu, N.; Yanai, A. SpOT-light: Lightweight private set intersection from sparse OT extension. In Proceedings of the Annual International Cryptology Conference (CRYPTO 2019), Santa Barbara, CA, USA, 18–22 August 2019; Springer: Cham, Switzerland, 2019; pp. 401–431. Available online: https://link.springer.com/chapter/10.1007/978-3-030-26954-8_13 (accessed on 6 January 2026).
- Pinkas, B.; Rosulek, M.; Trieu, N.; Yanai, A. PSI from PaXoS: Fast, malicious private set intersection. In Proceedings of the Annual International Conference on the Theory and Applications of Cryptographic Techniques (EUROCRYPT 2020), Zagreb, Croatia, 10–14 May 2020; Springer: Cham, Switzerland, 2020; pp. 739–767. Available online: https://link.springer.com/chapter/10.1007/978-3-030-45724-2_25 (accessed on 6 January 2026).
- Chase, M.; Miao, P. Private set intersection in the internet setting from lightweight oblivious PRF. In Proceedings of the Annual International Cryptology Conference (CRYPTO 2020), Santa Barbara, CA, USA, 17–21 August 2020; Springer: Cham, Switzerland, 2020; pp. 34–63. Available online: https://link.springer.com/chapter/10.1007/978-3-030-56877-1_2 (accessed on 6 January 2026).
- Resende, A.C.D.; Aranha, D.F. Faster unbalanced private set intersection. In Proceedings of the International Conference on Financial Cryptography and Data Security (FC 2018), Bridgetown, Barbados, 19–23 February 2018; Springer: Berlin, Heidelberg, 2018; pp. 203–221. Available online: https://link.springer.com/chapter/10.1007/978-3-662-58387-6_11 (accessed on 20 December 2025).
- Yao, A.C. Protocols for secure computations. In Proceedings of the 23rd Annual Symposium on Foundations of Computer Science (SFCS 1982), Chicago, IL, USA, 25–27 October 1982; IEEE: Piscataway, NJ, USA, 1982; pp. 160–164. [Google Scholar] [CrossRef]
- Goldreich, O.; Micali, S.; Wigderson, A. How to play any mental game, or a completeness theorem for protocols with honest majority. In Providing Sound Foundations for Cryptography: On the Work of Shafi Goldwasser and Silvio Micali; ACM: New York, NY, USA, 2019; pp. 307–328. [Google Scholar] [CrossRef]
- Yu, B.; Huang, H.; Liu, Z.W.; Zhao, S.L.; Na, N. High-performance hardware architecture design and implementation of Ed25519 algorithm. J. Electron. Inf. Technol. 2021, 43, 1821–1827. [Google Scholar] [CrossRef]
- Liu, Z.W.; Zhang, Q.; Huang, H.; Yang, X.Q.; Chen, G.B.; Zhao, S.L.; Yu, B. Design of high area efficiency elliptic curve scalar multiplier based on fast modulo reduction of bit reorganization. J. Electron. Inf. Technol. 2024, 46, 344–352. [Google Scholar] [CrossRef]
- Bay, A.; Erkin, Z.; Hoepman, J.-H.; Samardjiska, S.; Vos, J. Practical multi-party private set intersection protocols. IEEE Trans. Inf. Forensics Secur. 2021, 17, 1–15. [Google Scholar] [CrossRef]
- Zhou, I.; Tofigh, F.; Piccardi, M.; Abolhasan, M.; Franklin, D.; Lipman, J. Secure multi-party computation for machine learning: A survey. IEEE Access 2024, 12, 53881–53899. [Google Scholar] [CrossRef]
- Gao, Y.; Luo, Y.; Wang, L.; Liu, X.; Qi, L.; Wang, W.; Zhou, M. Efficient scalable multi-party private set intersection (-Variants) from bicentric zero-sharing. In Proceedings of the 2024 on ACM SIGSAC Conference on Computer and Communications Security, Salt Lake City, UT, USA, 14–18 October 2024; Association for Computing Machinery: New York, NY, USA, 2024; pp. 4137–4151. [Google Scholar] [CrossRef]
- Ishai, Y.; Kilian, J.; Nissim, K.; Petrank, E. Extending oblivious transfers efficiently. In Proceedings of the Annual International Cryptology Conference (CRYPTO 2003), Santa Barbara, CA, USA, 17–21 August 2003; Springer: Berlin, Heidelberg, 2003; pp. 145–161. [Google Scholar] [CrossRef]




| Protocol | Cryptographic Primitive | Security Model | Main Advantages | Main Limitations |
|---|---|---|---|---|
| Meadows [13] | ECDH | Semi-honest | Simple construction; early use of ECC for PSI | Requires a large number of ECC scalar multiplications; poor scalability for large datasets |
| DH-IPP [14] | ECDH + ECC optimization | Semi-honest | Highly optimized ECC operations on Intel CPUs; improved runtime over naive ECDH-PSI | Still requires (2n) ECC multiplications; limited scalability and CPU-dependent optimization |
| FLASH-RSA [17] | RSA-based homomorphic encryption | Semi-honest | Hardware–software co-design; supports large-scale federated learning scenarios | RSA operations incur high computational cost; limited speedup and large runtime for million-scale datasets |
| RA17 [26] | Blinded OPRF (ECC-based) | Semi-honest | Efficient for unbalanced datasets; avoids expensive hashing structures | Communication overhead increases significantly in balanced or large-scale settings |
| KKRT [22] | Single-point OPRF + OT extension | Semi-honest | Low sender-side computation; well-studied OT-based construction | Single-point OPRF leads to high communication overhead and bandwidth sensitivity |
| SpOT-Light [23] | Sparse OT extension + multi-point OPRF | Semi-honest | Reduced sender computation; optimized for cloud CPU environments | Computational complexity grows as (); still communication-intensive |
| PRTY19/PRTY20 [12,24] | Multi-point OPRF + OT extension | Semi-honest | Linear communication complexity; improved scalability over single-point OPRF | Complex protocol structure; communication overhead remains non-negligible |
| CM20 [25] | Lightweight OPRF + matrix construction | Semi-honest | Reduced communication compared to earlier OT-based PSI | Increased implementation complexity; relies on non-national cryptographic primitives |
| GMR21 [21] | mqRPMT + OT | Semi-honest | Strong privacy guarantees; intersection-only output | Very high communication overhead; limited practicality for large datasets |
| Proposed SM2-OT-PSI | SM2-based OT + SM3-based OPRF | Semi-honest | Fully compliant with Chinese national cryptographic standards; low communication complexity; efficient multi-point OPRF; hardware-accelerated implementation | Communication overhead higher than some lightweight OPRF schemes in very low-bandwidth networks |
| Stage | Description |
|---|---|
| Input | Alice and Bob hold private datasets and , respectively. |
| Output | The intersection set . |
| Preparation | Alice and Bob jointly select a common set of SM2 elliptic curve parameters. Specifically, a large prime p is chosen to define the finite field . An elliptic curve is constructed over , and a generator of order n is selected. For , denotes elliptic curve scalar multiplication. The cryptographic hash function SM3 is adopted. The symbol ‖ denotes concatenation of byte strings. All subsequent computations are performed without revealing any additional information. |
| Bob’s Operations | (1) Bob selects a random number as his private key. (2) Bob computes the public key and publishes . |
| Alice’s Operations | (1) Alice receives and computes .
If S is the point at infinity, the protocol aborts. (2) Alice samples a random number and computes . (3) Alice computes the obfuscated point . (4) Alice derives the symmetric key . (5) Alice computes and forms the ciphertext set . (6) Alice computes (7) Alice sends an instruction to the Non-Interactive Zero-Knowledge Proof Functionality . |
| Bob’s Operations | (1) Bob receives from the returned message . |
| Alice’s Operations | (1) Alice selects a random number r according to the zero-knowledge proof protocol and computes the commitment point . (2) Alice computes the challenge value and the response value , and obtains the proof pair . (3) Alice sends to the receiver Bob, and the sender Alice proves that via a zero-knowledge proof. |
| Bob’s Operations | (1) Bob receives the ciphertext set from Alice and uses to prove and computes the challenge value . (2) Bob receives the message returned by . If he fails to receive the message or the zero-knowledge proof relation does not hold, Bob terminates the protocol; otherwise, Bob continues the execution. Compute and verify whether the equation holds. If it does not hold, the receiver terminates the protocol; otherwise, the receiver confirms that is correct. (3) Bob computes . (4) Bob derives the symmetric key . (5) Bob computes . Obtain the ciphertext set . (6) Bob obtains the preliminary intersection . (7) Bob verifies the result by checking , where . (8) If the verification holds, the final intersection result is obtained and shared by both parties. |
| PSI Protocol | Algorithm Framework | Hardware Architecture | Communication Complexity | Computational Complexity |
|---|---|---|---|---|
| SpOT-Low | OT | Intel Xeon vCPU | ||
| SpOT-Fast | OT | Intel Xeon vCPU | ||
| DH-IPP | ECDH SHA256 | Intel Xeon Platinum 8369B CPU | ||
| FLASH-RSA | RSA SHA256 | Xilinx VU13P FPGA | ||
| Proposed | SM2 SM3 | Muchuang RSPS20 Chip |
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content. |
© 2026 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license.
Share and Cite
Guan, Z.; Huang, H.; Yao, H.; Jia, Q.; Cheng, K.; Ge, M.; Yu, B.; Ma, C. Privacy-Preserving Set Intersection Protocol Based on SM2 Oblivious Transfer. Computers 2026, 15, 44. https://doi.org/10.3390/computers15010044
Guan Z, Huang H, Yao H, Jia Q, Cheng K, Ge M, Yu B, Ma C. Privacy-Preserving Set Intersection Protocol Based on SM2 Oblivious Transfer. Computers. 2026; 15(1):44. https://doi.org/10.3390/computers15010044
Chicago/Turabian StyleGuan, Zhibo, Hai Huang, Haibo Yao, Qiong Jia, Kai Cheng, Mengmeng Ge, Bin Yu, and Chao Ma. 2026. "Privacy-Preserving Set Intersection Protocol Based on SM2 Oblivious Transfer" Computers 15, no. 1: 44. https://doi.org/10.3390/computers15010044
APA StyleGuan, Z., Huang, H., Yao, H., Jia, Q., Cheng, K., Ge, M., Yu, B., & Ma, C. (2026). Privacy-Preserving Set Intersection Protocol Based on SM2 Oblivious Transfer. Computers, 15(1), 44. https://doi.org/10.3390/computers15010044

