This project demonstrates privacy-preserving analytics on VR telemetry data using the CKKS scheme from Microsoft SEAL. It includes scripts to test encryption setup and encrypt controllerSpeed values from pre-processed user motion CSV files.
testscript.py– Tests your local SEAL setup with a sample normalized CSVhe.py– Encrypts thecontrollerSpeedfield across all normalized files for all users- Outputs encrypted batches (not saved to disk, demo-level encryption)
📄 The input folder is expected to be structured like:
chunk1/
├── user1/
│ └── session1_normalized.csv
├── user2/
│ └── session2_normalized.csv
...
Each CSV must contain the column: controllerSpeed.
- Microsoft SEAL (via
sealPython wrapper) - Python 3.9+
- CKKS encryption scheme
- pandas – for CSV I/O
- pybind11 – to enable native SEAL bindings
- Install dependencies:
pip install -r requirements.txt-
Ensure Microsoft SEAL is properly installed and compiled for Python using
pybind11. -
Run environment test:
python testscript.py- Run full encryption pipeline:
python he.py- The column
saberSpeedis encrypted using CKKS with:- Polynomial modulus degree:
8192 - Coefficient modulus:
[60, 40, 40, 60] - Scale:
2^40
- Polynomial modulus degree:
Encrypted values are stored in memory as ciphertexts (not written to disk).
This script is ideal for:
- Testing Microsoft SEAL integration
- Learning how homomorphic encryption can secure real-valued telemetry
- Academic research in privacy-preserving analytics
Created by Jayasri
MIT License — use and adapt with attribution.