Efficient Privacy-Preserving Sparse Matrix-Vector Multiplication Using Homomorphic Encryption
About
Sparse matrix-vector multiplication (SpMV) is a fundamental operation in scientific computing, data analysis, and machine learning. When the data being processed are sensitive, preserving privacy becomes critical, and homomorphic encryption (HE) has emerged as a leading approach for addressing this challenge. Although HE enables privacy-preserving computation, its application to SpMV has remained largely unaddressed. To the best of our knowledge, this paper presents the first framework that efficiently integrates HE with SpMV, addressing the dual challenges of computational efficiency and data privacy. In particular, we introduce a novel compressed matrix format, named Compressed Sparse Sorted Column (CSSC), which is specifically designed to optimize encrypted sparse matrix computations. By preserving sparsity and enabling efficient ciphertext packing, CSSC significantly reduces storage and computational overhead. Our experimental results on real-world datasets demonstrate that the proposed method achieves significant gains in both processing time and memory usage. This study advances privacy-preserving SpMV and lays the groundwork for secure applications in federated learning, encrypted databases, scientific computing, and beyond.
Related benchmarks
| Task | Dataset | Result | Rank | |
|---|---|---|---|---|
| Sparse Matrix-Vector Multiplication | SuiteSparse arc130 (test) | Time (s)0.25 | 4 | |
| Sparse Matrix-Vector Multiplication | SuiteSparse stat96 v5 (test) | Time (s)17.78 | 4 | |
| Sparse Matrix-Vector Multiplication | SuiteSparse M80PI_n1 (test) | Time (s)0.82 | 4 | |
| Sparse Matrix-Vector Multiplication | SuiteSparse mycielskian13 (test) | Execution Time (s)71.76 | 4 | |
| Sparse Matrix-Vector Multiplication | SuiteSparse nemeth24 (test) | Execution Time (s)97.15 | 4 | |
| Sparse Matrix-Vector Multiplication | SuiteSparse as-caida (test) | Execution Time (s)8.77 | 4 | |
| Sparse Matrix-Vector Multiplication | ARC 130 | Memory Consumption (MB)1.33 | 4 | |
| Sparse Matrix-Vector Multiplication | stat96 v5 | Memory (MB)1.51e+3 | 4 | |
| Sparse Matrix-Vector Multiplication | M80PI n1 | Memory (MB)140.4 | 4 | |
| Sparse Matrix-Vector Multiplication | mycielskian13 | Memory (MB)390.3 | 4 |