Skip to content

TenSEAL CKKS Rotation #515

@VictorLyl

Description

@VictorLyl

Question

Does TenSEAL support vector/ciphertext rotation? If so, how exactly can I implement it in Python?

Further Information

I want to perform cyclic shifts/rotations on ciphertext vectors encoded with CKKS (e.g., rotate [x0, x1, x2, …] left/right by a given number of positions) for convolution-like use cases. I have the following questions:

  1. Does TenSEAL natively support rotation?
  2. What prerequisites are required (e.g., generating and sharing rotation/Galois keys)?
  3. What is the exact Python API usage (function names, parameters, and the sign convention for step size)?
  4. What are the potential limitations (scheme/slots/performance, etc.)?
  5. Can you provide a minimal reproducible code example?

System Information

  • OS: Ubuntu
  • OS Version: 22.04
  • Language Version: Python 3.8.5
  • Package Manager Version: Conda 25.3.1
  • Library Version: TenSEAL 0.3.15

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type: Question ❔Question about implementation or some technical aspect

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions