Phoenix

Phoenix documentation

If you want to… Read
Encrypt something in five minutes Quickstart
Click around instead of writing code Playground
Use Phoenix from a shell Command line
Look up a function API reference
Learn the algebra NTRU needs Mathematical background
Understand NTRU itself, with a worked example The NTRU algorithm
See how raw NTRU becomes safe-to-use encryption KEM and sealing
Know what Phoenix does and does not protect against Security
Parse a key or message yourself File formats

Longer, more narrative pieces live in the blog, and every snippet in these pages has a runnable twin in examples/.

Phoenix is a learning project. It is unaudited and not constant time. Read Security before using it for anything that matters.

Rendering the maths

Formulas are written as $inline$ and as display blocks fenced by $$ on their own lines. That renders as-is on GitHub, in the VS Code Markdown preview, and in any site generator with a maths plugin (MkDocs with pymdownx.arithmatex, Docusaurus with remark-math, markdown-it with KaTeX).

For a plain HTML page, load MathJax and tell it that single dollars delimit inline maths:

<script>
  MathJax = { tex: { inlineMath: [["$", "$"]], displayMath: [["$$", "$$"]] } };
</script>
<script async src="https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-chtml.js"></script>

The formulas stick to a subset of LaTeX that no Markdown parser mangles (no \,, \{, \\ and so on). python tools/check_math.py enforces it.