make_chebyshev_basis

Engine.make_chebyshev_basis(ciphertext, max_power, relineraization_key)
체비셰프 기저(Chebyshev basis)를 생성합니다. 주어진 암호문 x에 대해 \([T_1(x), T_2(x), \dots, T_{max\_power}(x)]\) 를 생성합니다. 이 때, \(T_n(x)\)\(n\)번째 체비셰프 다항식입니다.
  • 인풋:
    • Ciphertext
    • max_power: 멱급수의 최대 차수
    • RelinearizationKey
  • 아웃풋:
    • chebyshev_basis: Ciphertext의 어레이
from liberate import Engine

engine = Engine()
secret_key = engine.create_secret_key()
public_key = engine.create_public_key(secret_key)
relinearization_key = engine.create_relinearization_key(secret_key)

message = [1, 2, 3]
ciphertext = engine.encrypt(message, public_key)

chebyshev_basis = engine.make_chebyshev_basis(
    ciphertext, max_power=3, relinearization_key
)