Files
papers/lux-fhe-api/sections/07-safe-by-default-patterns.tex
zeekay 4a753bb639 papers: reorganize into per-paper dirs, add Antje Worring as co-author
Restructured from flat .tex/.pdf files into per-paper subdirectories.
Added Antje Worring as co-author on all papers.
Synced PDFs to pdfs/ for download site.
2026-04-18 21:50:07 -07:00

13 lines
890 B
TeX

\section{Safe-by-Default Patterns}
The API enforces several safety invariants:
\begin{enumerate}
\item \textbf{No key reuse across parameter sets}: Attempting to use a key generated for \texttt{PN10QP27} with \texttt{PN11QP54} parameters returns an error at construction time, not at operation time.
\item \textbf{Ciphertext type tagging}: Every ciphertext carries its FHE type. Operations between mismatched types are rejected before any computation occurs.
\item \textbf{No plaintext in evaluator}: The \texttt{Evaluator} type does not accept or produce plaintext values. The only path to plaintext is through the \texttt{Decryptor}, which requires the secret key.
\item \textbf{Deterministic randomness for testing}: The \texttt{fhe.NewDeterministicEncryptor()} variant uses a seeded PRNG for reproducible tests but is marked as unsafe for production via build tags.
\end{enumerate}