Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Encrypted matrix multiplication with plain vector #137

Merged
merged 3 commits into from
Aug 15, 2020

Conversation

philomath213
Copy link
Member

@philomath213 philomath213 commented Aug 13, 2020

Description

  • Introduce Encrypted matrix multiplication with plain vector.
  • The matrix should be padded with zeros (each row size need to be a power of two).
  • The matrix should be encoded into a CKKS vector with vertical scan (column major).
  • The matrix multiplication assumes that the matrix is encoded as I mentioned above, the plain vector should be also padded with zeros to the next power of two.
  • There's a helper function to pad and encode the matrix, the resulting CKKS vector can do only Encrypted matrix multiplication with plain vector operation, but the result of this operation is a regular CKKS vector.

Affected Dependencies

  • None.

How has this been tested?

  • Python tests with random values generated using numpy.

Checklist

TODO

  • find a better name for functions.

@philomath213 philomath213 added Type: New Feature ➕ Introduction of a completely new addition to the codebase API Related to the API Type: Discussion 🔈 When further discussion and debate is required labels Aug 13, 2020
@philomath213 philomath213 changed the title [WIP] Encrypted matrix multiplication with plain vector Encrypted matrix multiplication with plain vector Aug 13, 2020
@philomath213 philomath213 requested review from youben11 and bcebere and removed request for youben11 August 13, 2020 18:05
Copy link
Member

@youben11 youben11 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM!

@youben11 youben11 merged commit 13c11a7 into master Aug 15, 2020
@philomath213 philomath213 deleted the philomath213/ckks-matrix-mul branch August 15, 2020 10:48
pierreeliseeflory pushed a commit to pierreeliseeflory/TenSEAL that referenced this pull request Apr 27, 2022
* enc_matmul_encoding python binding

* python tests for enc_matmul_plain

* remove duplicated code from conv2d_im2col function
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
API Related to the API Type: Discussion 🔈 When further discussion and debate is required Type: New Feature ➕ Introduction of a completely new addition to the codebase
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants